こんにちは、Heywaです。
PyCaret × Claude Codeの自動化シリーズ第5弾となる今回は、ビジネスや投資で最も需要が高い「時系列予測(Time Series Forecasting)」のユースケースについて解説します。
「来月の売上はどうなるか?」「明日の株価は上がるか下がるか?」
こうした「時間」を軸にした予測は、従来の機械学習(分類や回帰)とは少し異なるアプローチが必要です。しかし、PyCaretの time_series モジュールとClaude Codeを組み合わせれば、専門知識がなくても数行の指示で高度な予測モデルを構築できます。
時系列予測の難しさとPyCaretの解決策
時系列データには、「トレンド(長期的な傾向)」や「季節性(夏に売上が上がるなど)」といった特有の性質があります。そのため、ARIMA、ETS、Prophetなど、時系列専用のアルゴリズムを使うのが一般的です。
しかし、これらをPythonでゼロから実装しようとすると、データの定常性の確認やパラメータ(p, d, qなど)の調整など、非常に面倒な作業が発生します。
PyCaretの time_series モジュールは、この面倒な作業をすべて setup() 関数の中に隠蔽してくれます。欠損値の補完から特徴量エンジニアリング(移動平均の作成など)まで、全自動で行ってくれるのです。
実践ユースケース:仮想通貨(ビットコイン)の価格予測
今回は、私が実際にDeFi運用で活用している「ビットコインの価格予測」を例に、Claude Codeへの指示の出し方を見ていきましょう。
Claude Codeへの指示(プロンプト例)
ターミナルでClaude Codeを起動し、以下のように指示を出します。
【プロンプト例】
カレントディレクトリにあるビットコインの過去2年分の日足データ(btc_daily.csv)を使って、今後30日間の価格を予測する時系列モデルを作って。条件:
1. PyCaretのtime_seriesモジュールを使用する。
2.setup()でfh=30(予測期間30日)を指定する。
3.compare_models()でMASE(Mean Absolute Scaled Error)が最も低いモデルを選ぶ。
4. 選んだモデルをチューニングし、predict_model()で将来30日分の予測値を出力する。
5.plot_model(plot='forecast')で予測結果のグラフ(forecast.png)を保存するスクリプトを書いて実行して。
自動生成されるコードのイメージ
Claude Codeは、上記のような指示から以下のような美しいPyCaretスクリプトを生成し、実行してくれます。
import pandas as pd
from pycaret.time_series import setup, compare_models, tune_model, predict_model, plot_model
# データの読み込み(日付列をインデックスに設定)
data = pd.read_csv('btc_daily.csv', index_col='Date', parse_dates=True)
# PyCaretの環境初期化(fh=30で30日先まで予測)
ts_setup = setup(data=data, target='Close', fh=30, session_id=123)
# モデルの比較(MASEで評価)
best_model = compare_models(sort='MASE')
# ベストモデルのチューニング
tuned_model = tune_model(best_model)
# 将来30日間の予測
future_forecast = predict_model(tuned_model)
print(future_forecast)
# 予測結果の可視化と保存
plot_model(tuned_model, plot='forecast', save=True)
ここがAwesome!時系列予測の自動化メリット
1. 複数アルゴリズムの瞬時比較
compare_models() を実行するだけで、ARIMA、ETS、Prophet、さらにはXGBoostなどの機械学習ベースのモデルまで、数十種類のアルゴリズムを一気に比較してくれます。「このデータにはどのアルゴリズムが合うか」を人間が悩む必要はありません。
2. 視覚的なフィードバック
plot_model(plot='forecast') を使うことで、過去の実際のデータと、将来の予測データ(信頼区間を含む)が1つのグラフに美しく描画されます。投資判断やビジネスの意思決定において、この「視覚的な説得力」は非常に重要です。
まとめ:未来を「システム」で予測する
時系列予測は、ビジネスの売上予測から個人の投資、さらには「来月の電気代はいくらになるか?」といった日常の疑問まで、幅広く応用できる強力なツールです。
PyCaretとClaude Codeを使えば、複雑な数式やコーディングに悩まされることなく、純粋に「予測結果をどう活かすか」というシステム思考的なアプローチに集中できます。
ぜひ、あなたのお手元にある「時間軸を持ったデータ」を使って、未来を予測するAwesomeな体験を味わってみてください。
