記事「Python、ONNX、MetaTrader 5:RobustScalerとPolynomialFeaturesデータ前処理を使用したRandomForestモデルの作成」についてのディスカッション
future_pr = dataset['<CLOSE>'].iloc[i + rand] であるべきです: でないとエラーになる:
labelling_relabeling_regression関数のカラム参照が正しくありません。データセット内のカラム '<CLOSE>' にアクセスしようとしても、正しいカラム名は '<CLOSE>' ではなく 'close' であるため、pandas がそのカラムを見つけることができず、エラーが発生し続けています。大文字小文字が区別され、角括弧が追加されているため、pandasはKeyErrorを投げてしまいます。
非常に単純なエラーですが、後続の誰かが混乱して諦めてしまうかもしれません。
あなたのコードの残りの部分は <CLOSE> を使用しているので、おそらく次のような行を追加した方が良いでしょう:
dataset = dataset.rename(columns={'close': '<CLOSE>'})
私が見つけたコードのバグがひとつある。 は次のようになるはずだ:
そうしないとエラーになる:
labelling_relabelling_regression関数のカラム参照が正しくありません。データセット内の'<CLOSE>'カラムにアクセスしようとしているのに、正しいカラム名は'<CLOSE>'ではなく'close'であるため、pandasがそれを見つけられないため、エラーが出続けています。大文字小文字の区別と余分な角括弧のために、pandasはKeyErrorを投げます。
非常に単純なエラーですが、通りすがりの誰かが混乱して諦めてしまうかもしれません。
あなたのコードの残りは <CLOSE> を使っているので ...のような行を追加するのがベストでしょう:
dataset = dataset.rename(columns={'close': '<CLOSE>'})
コードを編集するときに見落としていたかもしれません。
問題ありません。google colabを使わず、自分のマシンかAWSか何かで作業している人には、gdownをインポートする必要はありません。
をインポートする必要はありません:
まず
の代わりにimportエリアに追加してください。
2つ目:
以下のセクションを
# Save the pipeline
joblib.dump(pipeline, 'rf_pipeline.joblib')
# Convert pipeline to ONNX
onnx_model = convert_sklearn(pipeline, initial_types=initial_type)
# Save the model in ONNX format
model_onnx_path = "rf_pipeline.onnx"
onnx.save_model(onnx_model, model_onnx_path)
# Save the model in ONNX format
model_onnx_path = "rf_pipeline.onnx"
onnx.save_model(onnx_model, model_onnx_path)
# Connect Google Drive (if you work in Colab and this is necessary)
from google.colab import drive
drive.mount('/content/drive')
# Specify the path to Google Drive where you want to move the model
drive_path = '/content/drive/My Drive/' # Make sure the path is correct
rf_pipeline_onnx_drive_path = os.path.join(drive_path, 'rf_pipeline.onnx')
# Move ONNX model to Google Drive
shutil.move(model_onnx_path, rf_pipeline_onnx_drive_path)
print('The rf_pipeline model is saved in the ONNX format on Google Drive:', rf_pipeline_onnx_drive_path) で置き換えてください:
print(f'The rf_pipeline model in ONNX format is saved locally at {local_onnx_path}': {local_onnx_path}')
モデルは/modelサブディレクトリというサブフォルダに保存されます。これは、実行時に必要な場合に備えて、モデルをjplotlibファイルとしても保存します。また、どちらのモデルもpythonから直接実行して予測を得ることができます。
問題ありません。もう一つのお勧めは、googleのcolabを使わず、自分のマシンやAWS上で実行する場合、gdownをインポートする必要はないということです。
代わりに以下のものを使ってください:
まず
.
2つ目:
次のセクションを置き換える
を
print(f'The rf_pipeline model in ONNX format is saved locally at address: {local_onnx_path}': {local_onnx_path}')
モデルは/modelサブディレクトリに保存されます。これは、実行時に必要なjplotlibファイルとしても保存されます。さらに、どちらのモデルもpythonから直接実行して予測を得ることができます。
修正しました。チュートリアルファイルのバージョンを承認のためにモデレーターに投げました。
そうですね、まだ強化学習には至っていませんが))))))
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事「Python、ONNX、MetaTrader 5:RobustScalerとPolynomialFeaturesデータ前処理を使用したRandomForestモデルの作成」はパブリッシュされました:
この記事では、Pythonでランダムフォレストモデルを作成し、モデルを訓練して、データ前処理をおこなったONNXパイプラインとして保存します。その後、MetaTrader 5ターミナルでモデルを使用します。
ランダムフォレストは、機械学習ツールキットの強力なツールです。ランダムフォレストがどのように機能するかをよりよく理解するために、大勢の人が集まり、集団で意思決定をおこなう様子をイメージしてみましょう。ただし、このグループの各メンバーは実際の人間ではなく、現在の状況を独立して分類または予測する者です。このグループ内では、人は特定の属性に基づいて意思決定をおこなうことができる意思決定木です。ランダムフォレストが決定を下すときは、民主主義と投票が使用されます。つまり、それぞれの木が意見を表明し、複数の投票に基づいて決定が下されます。
ランダムフォレストはさまざまな分野で広く使用されており、その柔軟性により分類問題と回帰問題の両方に適しています。分類タスクでは、モデルは現在の状態がどの定義済みクラスに属するかを決定します。たとえば、金融市場では、さまざまな指標に基づいて資産を買う(クラス1)か売る(クラス0)かを決定することを意味します。
ただし、この記事では回帰問題に焦点を当てます。機械学習における回帰は、時系列の過去の値に基づいて将来の数値を予測する試みです。オブジェクトを特定のクラスに割り当てる分類の代わりに、回帰では特定の数値を予測することを目的とします。たとえば、株価の予測、気温の予測、その他の数値変数の予測などがこれに該当します。
作者: Yevgeniy Koshtenko