ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

2018-01-01から1年間の記事一覧

Writing Compilers and Interpreters: その6

シンボルテーブルを作りました。 この本にでてくるのは、スタック型のデータ構造でシンボルを管理しています。ツリーで全部作りきった方が良さそうな気がするのですが、パースしながらネストに沿ってスタックを伸ばしたり縮めたりするようです。ネストの処理…

Writing Compilers and Interpreters: その5

とりあえず3章まで終了してトーカナイザーができた。正直この辺までは僕の人生で10回くらいやってる。 パーサーを突破したのが2回くらい。4章はシンボルテーブル。Cで書くと辛い奴だが、今時の言語なら余裕だと思う。順調だけど油断せずに行こう。

Writing Compilers and Interpreters: A Software Engineering Approach 3rd Edition その4

2章まで終了。 この本の面白いところは、まずはソースコードを入力して、トーカナイザーとパーサーとコードジェネレータを通すフレームワークを先に作る所です。2章が終わった時点でできるのは、このようなPascalのコードを読み込んで、行番号つけて表示する…

Writing Compilers and Interpreters: A Software Engineering Approach 3rd Edition その3

いくつかデザインパターンが出てきました。今まで本を読んでもさっぱり分からなかったのに、コキュートスでやった経験が生きていてなるほどと関心しています。こういうのは実際に苦労しないと身につかないですね。 ファクトリーパターン 起動時のオプション…

Writing Compilers and Interpreters: A Software Engineering Approach 3rd Edition その2

Writing Compilers and Interpretersを読んでる。 Tokenにソース上の位置情報を持たせてあって、あーなるほどーと関心した。 パーサーやスキャナーは抽象クラスを作って、それらを継承して言語固有のパーサーにするという設計が面白い。オブザーバーパターン…

Writing Compilers and Interpreters: A Software Engineering Approach 3rd Edition

手持ちになんちゃってでも良いので、そこそこ動くコンパイラが欲しいので、Writing Compilers and Interpreters: A Software Engineering Approach 3rd Editionを購入して勉強を始めた。ATOMとPlanUMLでUML図を書いている。なかなか思った通りに配置されず、…

courseraのDeep Learning Specialization

全リソースをつっこむくらいの勢いで、Deep Learning Specializationコースを受講中。 https://www.coursera.org/specializations/deep-learning1/3くらいを終えたところ。 一回、ちゃんと授業として受けておくのは良いことだと思う。

CourseraのPractical Time Series Analysis

CourseraのPractical Time Series Analysisを完了しました。修了証 https://www.coursera.org/account/accomplishments/certificate/364U9TKUZXYD 内容 時系列データを扱うときに使うモデル、MA、AR、ARMA、ARIMAについて、基本から順番に説明していきます。…

差分方程式

courseraでPractical Time Series Analysisという時系列データを分析する講義を受けています。時系列のデータが、過去のデータから導かれるとき、順番に計算せずに一般解を求めるやり方があります。この計算方法を知らず、授業を聞いていてびっくりしたので…

coursera の Machine Learning講義を終えた

最近出張が多く、出張時は早めにホテルに戻って時間をつぎ込んでなんとか終えることができました。修了証 https://www.coursera.org/account/accomplishments/certificate/2MA52ABXEDVD 内容 他の所でもいくつも記事が見つかるのでざっくりですが、機械学習…

nnvmでSegmentation fault

Ubuntuにnnvmをインストールしようとしたら意外にはまったので動くまでのメモ 症状 とりあえず、ドキュメントの通りにインストールしたがインタープリタを立ち上げてimport nnvmするとSegmentation faultが発生する。 natu@www3370uf:~$ python3 Python 3.5.…

Learning F# Functional Data Structures and Algorithms

Learning F# Functional Data Structures and Algorithmsを読みました。よく使われるデータ構造とアルゴリズムをF#で実装する本です。 最初にF#の基礎から入って、スタック型を使ってテスト環境を構築した後、アルゴリズムの説明に入ります。説明されている…

F# for Machine Learning Essentials

F# for Machine Learning Essentialsを軽く読みました。 内容 F#を使いながら、機械学習の基本的なアルゴリズムを説明します。アルゴリズムは自力で書いたアルゴリズムとライブラリを使った結果が同じになることを確認する形で、そういうのが好きな人には良…

F#で重み付き回帰

F# for Machine Learning Essentialsから。 この本は、各種アルゴリズムを最低限の行列ライブラリで書いた後、機械学習ライブラリを使って結果が同じになるよねって構成の本です。かなり好きなタイプの構成なのですが、肝心の数式の説明はほとんどないので、…

F#で多重線形回帰

F#

F# for Machine Learning Essentialsから。Multiple linear regressionについて、本のコードが断片なので単体で動くように整理しました。 筆者のWebから落とせるMPGのデータは、中に"?"が入っていてそのままでは実行時にエラーになります。自力で"?"がある行…

F#で線形回帰

F#

F# for Machine Learning Essentialsから。簡単な物であれば、SimpleRegression.Fitが使える。 open System open FSharp.Data open MathNet.Numerics.LinearRegression open MathNet.Numerics.Fit let xV = [|14.;16.;27.;42.;39.;50.;83.|] let yV = [|02.;…

F#でグラフかけた

F#

やってみた 何年かに一度Lispブームと型付きブームがあって、今はF#ブームです。F# for Machine Learning Essentialsで機械学習を勉強しようとしていたのですが、なかなかグラフが書けずに苦労しました。とりあえず上手くいったので記録を残しておきます。 #…

Darknet YOLOが少し変わっていた件

久しぶりにDarknetを触ってみたら、昨年のGWの頃から少し変わっていたのでまとめました。 ついでにDarknetからKerasへの変換プログラムYAD2Kも修正して動くようにしました。 重みのフォーマット https://github.com/pjreddie/darknet/blob/master/src/parser…

Language Implementation Patterns

https://www.amazon.co.jp/Language-Implementation-Patterns-Domain-Specific-Programming/dp/193435645X Deep Learningの勉強を止めて、昨年末から読んでました。ようやく読み終えたので感想を。 どんな本 ANTLRの作者が作った、コンパイラのテクニックが…

MAPTで本を買おう

https://www.packtpub.com/mapt/ まだベータっぽいのですが、本を買ってスキルアップしていくためのサービス?があります。 サービス自体はよく分かってないのですが、最近は$5キャンペーンを連発しているのでいろいろ買ってしまいました。 DRMフリー 購入し…

k近傍法(kNN)で、アヤメデータの分類

Python 機械学習プログラミング https://www.amazon.co.jp/dp/B01HGIPIAK/ を見ながらコードを動かしてみた。アルゴリズムの説明は、ここがわかりやすかったです。ちなみにkNNは学習のフェーズがないんですね。 https://qiita.com/NoriakiOshita/items/69805…

ココログをやめてここに日記書くか。 コンパイラの勉強をこんどこそ。 NNのFPGA化がモチベーション維持が辛くなってきてる。頑張ろう。

白と黒のとびら

https://www.amazon.co.jp/dp/4130633570/ お正月休みパワーでようやく読みました。内容についてはAmazonのレビューなどを読んでもらうとして、簡単に感想を。一度読んで途中で挫折して、再度読んでみてようやく面白さが分かった気がします。自分が理解して…

Pythonで体験するベイズ推論

https://www.amazon.co.jp/dp/4627077912原書は Bayesian Methods for Hackers でプログラマ向けのベイズ推論の本です。英語が分かるならここを読めば十分な気がします。このグラフを見て、おっと思った人は買って体験してみましょう。 https://github.com/C…