「FinBERTとSOLID原則を活用して感情スコアの正確性を向上させる」
「感情スコアの正確性を向上するためのFinBERTとSOLID原則の活用方法」
以前の実験室のタイトルは「Pythonを使用したニュース感情と株価のパフォーマンス分析NLPアプリケーションの構築」というもので、自動化市場ニュースの感情分析と株価のパフォーマンスとの関連性について触れました。市場の動きは、特に短期間のものは投資家の感情によってよく影響を受けます。感情分析トレーディング戦略の主要な要素の1つは、生のテキストから感情スコアをアルゴリズム的に計算し、それをトレーディング戦略に組み込むことです。感情スコアが正確であれば、アルゴリズムトレーディングによる株価の動向を予測する可能性も高まります。
以前の実験室では、vaderSentimentライブラリを使用しました。今回は、別のNLP候補であるFinBERT NLPアルゴリズムを探求し、Vaderの感情スコアの正確さと比較して、トレーディング戦略のリターンを向上させる意図でそれを評価してみることにしました。
主なデータソースは変わりません。RapidAPI Hubで利用できるYahoo Finance APIを活用して、感情分析のためのニュースデータを取得しました。
この実験ではPythonのJupyter Notebookを開発のプレイグラウンドとして使用しました。Jupyter NotebookではまずYahooから市場データを取得し、JSONのレスポンスをPandasのデータフレームに変換するAPIクラスを呼び出します。このコードは以前の実験室またはGitHubのリポジトリで見つけることができます。次に、データフレームの「Headline」列に対してVaderとFinBERTのMLアルゴリズムを適用し、対応する感情スコアを計算し、各NLP MLアルゴリズムの新しい感情スコア列に追加します。
- 「AWS Step Functionsで機械学習パイプラインをオーケストレーションする」
- In this translation, Notes is translated to メモ (memo), CLIP remains as CLIP, Connecting is translated to 連結 (renketsu), Text is translated to テキスト (tekisuto), and Images is translated to 画像 (gazo).
- 「ゲームを一段と盛り上げる:スタートアップのスポーツビジョンAIが世界中にアスレチックを放送」
これらのスコアの手動比較では、FinBERTのMLアルゴリズムの方が正確であることがわかります。
また、次のSOLID原則を取り入れて、重要なコードの再構築も行いました。
- 単一責任の原則:市場のニュースの準備ロジックはAPIクラスに統合されました
- 開放閉鎖の原則:VaderとFinBERT固有のロジックはSentimentAnalysisBaseのサブクラスにあります。
この記事があなたのお時間の価値があったことを願っています。コードはこのGitHubリポジトリで見つけることができます。
Happy coding!!!
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles