FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

「機械学習と深層学習」をやってみる(2. 帰納学習)

機械学習と深層学習の書籍を読んでソースコードの実験をしてみる。第2章「機械学習の基礎」、2.1「帰納学習」について、ソースコードを見ながらトライした。

今回から、理解したことスライドにまとめてアップロードしていくことにした。

今回は帰納学習ということで、複数のデータの特徴を抽出する。書籍の内容なのであまり詳細は触れないが、100個の過去のデータからその特徴を抽出する。 具体的には、10000種類のテストパタンを生成して、そのパタンを、過去のパタンと比較する。

過去のパタンと類似度が高ければスコアが高く、類似度が引くければスコアが低い。 これで最大のスコアになるものを見つけ出す。

github.com

写経してみた。これを実行してみると、以下のようになった。

横軸に10種類のデータ(本書の場合は会社A→Iまで)、0が株価の下降、1が株価の上昇、2がどちらでもない、ということで判定している。

$ ./leanstock < ../book/ch2/ldata.txt
0 2 1 1 0 0 0 0 2 1 :score=74
1 0 0 0 1 1 1 1 0 2 :score=76
0 2 0 0 0 0 2 0 2 0 :score=77
0 2 0 2 2 1 1 1 2 2 :score=78
2 2 0 1 2 1 2 2 0 2 :score=84
2 2 0 1 2 2 2 2 0 2 :score=88

Best Answer
2 2 0 1 2 2 2 2 0 2 :score=88

f:id:msyksphinz:20170611013749p:plain