Nn

提供: PXDOG
2019年2月3日 (日) 02:21時点におけるMediawikiadmin2018 (トーク | 投稿記録)による版
Jump to navigation Jump to search

# 久しぶりにニューラルネットワーク

ニューラルネットワークで遊んだ。

久しぶりのPython、久しぶりのKeras(TensorFlow)。

昨日はパソコン開いても電源が押せずにぼーっとしてた。

身体的にじゃなくて精神的に押せなかった。

昨日だけじゃなくて、ここ1週間くらいそうだった。

で、久しぶりなことやってみようと思い立った。

# データ

データはずっと前から断片的に集めている。

自分のサーバに放置してあったJPY-BTCFXの、2週間半15万件のWebSocket加工データを使った。

データを取得するコードはNode.jsで適当に書いてあった。

また動かすことにした。

ニューラルネットワークのコードはPythonで書いた。

サンプルコードをまずコピペして動かし、

ずーっと前に書いた(書いた記憶がほぼ無い)Pythonのコードを断片的にコピペしながら、

それっぽいニューラルネットワークをKeras(TensorFlow)で作成。

ここまで2時間(半年ぶり3回目のPythonにしては思ったより早く読めたと思う)。

それからデータのラベル化方法やら学習率やら中間層やらドロップアウトやらのハイパーパラメータ?等をいじること4時間。

テストデータで5.5割超えてなんとか儲かりそうなんじゃない?っていうレベルになった。

次はこれまたずっと前に書いたbbot.pwのコードをまず解読して、改変して、

この学習済みモデルを使って売買するものにする。

機械学習・深層学習は完全に独学だからいじめないで欲しい。

# 結果

画像だけ適当に。

いろいろとだんだん良くなっていった。

勝率3割のbotて。

Bad Result

チャート君、落ち着いて。

OK Result

ほう、なんだかそれっぽくなってきた?

Good Result

まぁなんだかよさそうじゃん。

勝率低いけどね。

Better Result

夜中から朝までずっとやってた。

この辺でよしとして、次はこれをトレードに使う。

その前にやることやる。

2019/02/02 追記

混同行列も悪くないんじゃないの。

混同行列

でもモデルはもう過学習してる。

絶対この0.55〜0.60に何かある。

過学習してる

データの間違いかな、わからない。

2019/02/03 追記

外れ値があった。

MinMaxScalerで標準化してた。

プロットするまで気づかなかった。

半年前ここらへんでやめたような気がする。

プロットして直し方わからなかった、もしくは標準化してなかったかな。

外れ値

Scalerを変えて、外れ値が見えないようになった。

Quantileで一様にした。

Scaler変更

全部じゃなくて、外れ値があるようなデータのみQuantileで一様になるように変換して、それ以外はMinMaxでいいかもしれない。

bullシグナルは70%当たりっぽい。

だけどbullシグナル多すぎない?

70%超えた

逆にbearの54%が信頼できそう。

今ここで、0.XXX%という表記のおかしさに気づいた。