機械学習は暗号通貨の価格を予測できるか?断片補間法の例で解析
この記事は暗号谷Liveに掲載され、著者:Michel Kana、翻訳:Jeremy。
この実用ガイドは、暗号通貨の価格が急上昇することを予測するために必要な基礎知識を提供します。
十五年前、私はデジタル通貨の世界を探求し、SMSのみを使用するピアツーピアのモバイル通貨プラットフォームのプロトタイプを作成しました。
最近、私の共同作業者が私に尋ねました、人工知能は暗号通貨の価格を予測できるのか。彼女はブロックチェーンの誇大広告に興味を持っていました。
研究の結果、暗号通貨の価格を予測することは解決可能な問題であることがわかりましたが、すべての市場条件に適しているわけではありません。
暗号資産の典型的な予測モデルは、時系列予測(ARIMA、Facebook Prophetなど)、機械学習(ランダムフォレストアルゴリズム、線形回帰など)、または深層学習手法(LSTMなど)を利用します。
この記事では、特定の日付のLitecoinの平均価格を予測する際の分片補間のパフォーマンスについて考察します。
データ
私たちは2013年4月から2021年2月までのLitecoinの歴史的価格に注目します。これらのデータはcoinmarketcapから取得され、無料で使用できます。データは80%のトレーニングデータセットと20%のテストデータセットに分割しました。後者は、私たちの予測した終値の正確性を評価するために使用されます。
暗号通貨Litecoinの価格履歴 (出典: Kaggle)
短期間の探索的データ分析では、平均終値が年初と年末に最も高く、10月に最も低いことが示されました。
多項式回帰
多項式回帰について聞いたことがあるかもしれません。これは、階数dの基底を作成して非線形関数(私たちの例では、暗号通貨の価格変動)を近似する最も単純な例です。
私はLitecoinの歴史的価格に対して単純な多項式回帰を行い、階数5、25、80を使用しました。各場合において、R2値はテストデータセットにおけるモデルのフィットの良さについての情報を提供します。
以下の青い線とトレーニングデータのフィット度から、私たちは多項式の階数が増えるにつれて曲線が急峻になることを観察できます。これはモデルの複雑さが増すためであり、高次多項式がトレーニングセット内の各データポイントを追いかけようとするからです。
第0日目は2013年4月30日を表し、第2800日目は2021年2月28日を表します。
特に外れ値のある領域(図の中央部分)では、高次多項式はしばしばこれらの外れ値の方向に向かいます。したがって、80次多項式のモデルは最も高い分散を持っています。
トレーニングデータに対するバイアスも最も低く、これは最高のR2値に反映されています。対照的に、低次多項式のR2は低く、より高いバイアスを意味しますが、分散は低くなります。低次多項式はトレーニングデータに対する感度が低いです。
分片補間
私は、暗号通貨の価格を予測するために分片多項式を使用することがより柔軟な方法であることを発見しました。
分片補間は、低次多項式を使用して多数のデータポイントをフィットさせます。低次多項式のみを使用するため、過度の振動と非収束性を排除しました。
データポイントのセットが与えられた場合、分片補間は各データ部分で異なる多項式を使用します。
特に、接続された分片多項式、すなわちスプラインを使用します。
スプラインの一例は、以下の切断線形関数です。これは4の左側で平坦であり、関数の結び目と呼ばれます。
いくつかの結び目が与えられた場合、複数の線形基底関数を組み合わせて非線形データにフィットさせることができます。
暗号通貨の価格に存在する高度な曲線関係を検出するために、私は切断された三次関数、すなわち三次スプラインを使用しました。
三次スプラインを使用して、データをブロックに分割し、各ブロックに三次スプラインをフィットさせます。各スプライン関数は、結び目で次の関数に接続されます。
三次スプラインは、暗号通貨の価格変動に非常に適した選択です。なぜなら、接続が滑らかだからです。三次スプラインの傾きとその一次および二次導関数はすべて一致します。三次スプラインは3次の多項式関数であり、依然として十分に小さく、変動性を回避します。
三次Bスプラインは、三次スプラインのより簡単な変種であり、効率的な計算に使用されます。なぜなら、最大で5つの基底関数が補間に寄与するからです。以下に、Litecoinの価格における三次Bスプラインのパフォーマンスを示します。四分位数に結び目を置いた後です。
結び目を手動で選択することで、データポイントのセットがある場合、四分位数に基づいて結び目を配置した場合の値と比較して、テストデータセットでより良いR2を達成しました。
境界近くの三次スプラインは奇妙に振る舞うことがあります。上の赤い図でそれに気づくことができます。いわゆる自然三次スプラインは、各極限で三次多項式を線形に変更することによって、関数が極限の結び目の外で線形であることを強制します。
自然三次スプラインは自由度を選択する必要があります。Litecoinの価格については、交差検証を通じて最適な自由度を見つけました:予測器の日付として適切な174の結び目の量子を選びました。結果は三次Bスプラインと比較して、エッジの変動性が小さく、テストデータセットのR2はわずかに劣ります。
最後に、私はスムーズなスプラインを実現し、価格変動にペナルティを与えながら、平均二乗誤差を最小化しました。
スムーズなスプラインはLitecoinの価格に最も適した分片補間のようです。このモデルはテストデータセットでこれまでに得られた最高のR2値を達成しました。
三次スプラインモデルの興味深い部分は、トレーニングモデルのデータ範囲を超えて推論を行う方法です。
予測と時系列作業で有名な統計学者Rob Jhyndmanによれば、三次スムーズスプラインモデルはARIMAモデルと同等のモデルとして機能することができ、そのパラメータ空間は制限されています。Robは、スプラインモデルが滑らかな歴史的トレンドと線形予測関数を提供すると主張しています。
私はあなたにこのアイデアをさらに試すことを招待します。私のコンピュータコードは、オンラインでJupyter Python/R Notebook形式で見ることができます。
この記事で使用されたGoogle Colab Notebook
デジタル通貨や暗号通貨、例えばLitecoinは、現代のグローバル経済において最も議論の余地があり、最も複雑な技術革新です。この記事は、あまり一般的でない方法を使用して、三次スプラインを用いてLitecoinの価格変動を予測することを目的としています。