これまでにブログkinomiyaでは、ビットコインの自動売買に挑戦してきました
今流行りの「人工知能」「機械学習」「ディープラーニング」などを取り入れたら、もっと勝てるのではないかと思いAIの勉強を始めました
このページに、AIに特化した記事をまとめていきます
Contents
AI自動売買
AI自動売買では、AIにビットコインの「売り」「買い」の判断をさせたいです
下の図は僕が考えたビットコイン取引の自動化レベルです
これまでは、僕(人間)が考えたアルゴリズムで自動売買する、「自動化レベル1」でした
ここでは、人間が考えた特徴量(判断指標)を用いてAIが自動でアルゴリズムを考える「自動化レベル2」と、
完全にAIがアルゴリズムを考える「自動化レベル3」を達成したいと思います
AIでできること
AI(機械学習)で、何ができるかというと、
「回帰」と「分類」2つのことをすることができます
回帰(値を予想するとき)
過去のデータから、未来の値を予測することができます
これが、「回帰」です
例えばこんな時に使います
・これまでの気温から明日の気温を予想
・緯度と軽度から降水量を予想
・来期の売り上げ予想
・株価予想
分類(クラス分類するとき)
過去のデータから、似たもの同士を分けることができます
それが、「分類」です
例えばこんな時に使います
・画像が犬なのか猫なのか分類
・試合に勝つのか負けるのか分類
今回は、機械学習でできること2つのうち「分類」を使いました
具体的に、チャートからビットコイン価格が上がるパターンなのか下がるパターンなのかを分類します
実際にやること
次の1時間でビットコイン価格は「上がる」のか「下がる」のかをAI予想します(=分類)
本当は、1時間後もしくは1日後に「ビットコインは〇〇円になる」と予想したい(=回帰)ところですが、
価格予想をする難易度が高いことがわかりました
そこで、「上がる」のか「下がる」のか2択なら比較的簡単なのではないかと思い、挑戦します
機械学習
機械学習モデルの検討をします
機械学習とは
機械学習とは、プログラムに学習をさせて、その学習をもとに予想させることです
どうやって学習させるかというと、人間の脳みたいなものを真似してプログラムで作ります
機械学習でやりたいこと
上に述べたように、チャートを学習させビットコイン価格が上がるパターンなのか下がるパターンなのかを分類します
やったことはこの2つです
(1)ビットコインチャートを学習させる
(2)テストする
機械学習(1)ビットコインチャートを学習させる
ビットコインチャートのパターンを学習させます
どうやって学習させるかと言うと、問題と答えをプログラムに与えます
これが教師データになります
問題(次は上がる?下がる?)
答え(下がる)
このような「問題」と「答え」のデータを、機械学習モデルに与えて、学習させます
今回は、上の図のような「問題」と「答え」をたくさん用意し、学習させます
学習させるデータは、過去のビットコインチャートから持ってきます
機械学習(2)テストする
(1)で使ったデータとは別のデータを使って、テストしました
これがテストデータです
すなわち、学習をもとに別の日のデータを新しく予想させ、的中率を確かめます
テスト(次は上がる?下がる?)
機械学習モデル
決定木
SVM(サポートベクトルマシン)
AI価格予報
上で作ったモデルを使って、AI価格予報のページを作りました