Pixiu Paper | FinBen リーダーボード
免責事項
このリポジトリとそのコンテンツは、学術的および教育的目的のみに提供されており、コンテンツの正確性、完全性、または有用性については、明示的か黙示的かを問わず、いかなる保証も提供されません。また、寄稿者は、ここに記載されている情報の使用によって生じるいかなる誤り、欠落、または結果についても責任を負いません。ユーザーは、ソフトウェアおよび情報の使用を決定する前に、自身の判断を下し、専門家に相談する必要があります。このリポジトリに含まれるのは完全にユーザー自身の責任で行ってください。
このリポジトリ内の情報を使用またはアクセスすることにより、お客様は、著者、寄稿者、および関連する組織または個人をあらゆる請求または損害から補償し、防御し、免責することに同意するものとします。
? 更新 (日付: 2023 年 9 月 22 日)
私たちの論文「PIXIU: 金融のための包括的なベンチマーク、命令データセット、大規模言語モデル」が NeurIPS 2023 Track Datasets and Benchmarks に受理されたことを発表できることを嬉しく思います。
? 更新 (日付: 2023 年 10 月 8 日)
? FinBen の拡張バージョンが中国語とスペイン語の両方をサポートしていることを誇りに思います。
? 更新 (日付: 2024 年 2 月 20 日)
? 私たちの論文「The FinBen: An Holistic Financial Benchmark for Large Language Models」が FinBen で公開されたことを嬉しく思います。
? 更新 (日付: 2024 年 5 月 2 日)
IJCAI2024 チャレンジ「大規模言語モデルにおける財務上の課題 - FinLLM」にぜひご参加ください。スターター キットはスターター キットで入手できます。
チェックポイント:
言語
論文
評価:
感情分析
分類
知識の抽出
数字の理解
テキストの要約
信用スコアリング
予測
PIXIUプロジェクトへようこそ! このプロジェクトは、金融ドメインにおける大規模言語モデル (LLM) の開発、微調整、評価をサポートするように設計されており、金融ドメインにおける LLM の力を理解して活用するための重要な一歩となります。 。
リポジトリはいくつかの主要なコンポーネントで構成されており、それぞれが財務 NLP パイプライン内で独自の目的を果たします。
FinBen : 金融言語の理解と予測の評価ベンチマーク。FinBen は、さまざまな金融コンテキストにわたる理解と予測のタスクに焦点を当てた、金融 LLM の評価スイートとして機能します。
FIT : 当社の財務指示データセット。FIT は、財務タスク向けに特別に調整されたマルチタスクおよびマルチモーダルな指示データセットであり、これらのタスクの LLM を微調整するためのトレーニングの場として機能します。
FinMA : 当社の金融大規模言語モデル (LLM)。FinMA は当社のプロジェクトの中核であり、金融タスクの学習および予測機能を提供します。
オープン リソース: PIXIU は、オープンな研究と透明性を促進するために、評価ベンチマークに含まれる財務 LLM、命令チューニング データ、およびデータセットをオープンに提供します。
マルチタスク: PIXIU の命令チューニング データとベンチマークは、4 つの財務 NLP タスクと 1 つの財務予測タスクを含む、さまざまな財務タスクのセットをカバーします。
マルチモダリティ: PIXIU の命令チューニング データとベンチマークは、株価変動予測タスクからの時系列データを含むマルチモダリティ財務データで構成されており、レポート、ニュース記事、ツイート、規制当局への提出書類など、さまざまなタイプの財務テキストをカバーしています。
多様性: 主に財務 NLP タスクに焦点を当てたこれまでのベンチマークとは異なり、PIXIU の評価ベンチマークには現実世界のシナリオに合わせた重要な財務予測タスクが含まれており、より困難になっています。
このセクションでは、ChatGPT、GPT-4、BloombergGPT などの他の主要なモデルと比較した FinMA の詳細なパフォーマンス分析を提供します。この分析では、財務のさまざまな側面にわたるさまざまなタスクと指標を選択しました。自然言語処理と財務予測 FinBen のすべてのモデル結果は、リーダーボードで確認できます。
データ | タスク | 生 | データ型 | モダリティ | ライセンス | 紙 |
---|---|---|---|---|---|---|
FPB | 感情分析 | 4,845 | ニュース | 文章 | CC BY-SA 3.0 | [1] |
FiQA-SA | 感情分析 | 1,173 | ニュースの見出し、ツイート | 文章 | 公共 | [2] |
TSA | 感情分析 | 561 | ニュースの見出し | 文章 | CC BY-NC-SA 4.0 | [3] |
FOMC | タカ派・ハト派の分類 | 496 | FOMC議事録 | 文章 | CC BY-NC 4.0 | [4] |
見出し | ニュース見出しの分類 | 11,412 | ニュースの見出し | 文章 | CC BY-SA 3.0 | [5] |
FinArg-ECC-タスク1 | 引数単位の分類 | 969 | 収益に関する電話会議 | 文章 | CC BY-NC-SA 4.0 | [6] |
FinArg-ECC-タスク2 | 引数関係の分類 | 690 | 収益に関する電話会議 | 文章 | CC BY-NC-SA 4.0 | [6] |
マルチフィンEN | マルチクラス分類 | 546 | 記事の見出し | 文章 | 公共 | [7] |
M&A | 取引完了度の分類 | 500 | ニュース記事、ツイート | 文章 | 公共 | [8] |
ムレスゲン | ESG課題の特定 | 300 | ニュース記事 | 文章 | CC BY-NC-ND | [9] |
NER | 固有表現認識 | 1,366 | 金銭的合意 | 文章 | CC BY-SA 3.0 | [10] |
ファインオード | 固有表現認識 | 1,080 | ニュース記事 | 文章 | CC BY-NC 4.0 | [11] |
フィンレッド | 関係抽出 | 1,070 | 収益コールトランザクション | 文章 | 公共 | [12] |
FinCausual 2020 タスク 1 | 因果関係の分類 | 8,630 | ニュース記事、SEC | 文章 | CC BY 4.0 | [13] |
FinCausual 2020 タスク 2 | 因果関係の検出 | 226 | ニュース記事、SEC | 文章 | CC BY 4.0 | [13] |
FinQA | 質問応答 | 8,281 | 収益レポート | テキスト、表 | MITライセンス | [14] |
tQA | 質問応答 | 1,670 | 財務報告書 | テキスト、表 | MITライセンス | [15] |
FXL | 数値ラベル付け | 318 | SEC | 文章 | 公共 | [16] |
FSRL | トークンの分類 | 97 | ニュース記事 | 文章 | MITライセンス | [17] |
エクスサム | テキストの要約 | 495 | 収益コールトランザクション | 文章 | 公共 | [18] |
エツム | テキストの要約 | 2000年 | ニュース記事 | 文章 | 公共 | [19] |
ドイツ語 | 信用スコアリング | 1000 | 信用記録 | テーブル | CC BY 4.0 | [20] |
オーストラリア人 | 信用スコアリング | 690 | 信用記録 | テーブル | CC BY 4.0 | [21] |
レンディングクラブ | 信用スコアリング | 1,3453 | 財務情報 | テーブル | CC0 1.0 | [22] |
ビッグデータ22 | 株価変動予測 | 7,164 | ツイート、過去の価格 | テキスト、時系列 | 公共 | [23] |
ACL18 | 株価変動予測 | 27,053 | ツイート、過去の価格 | テキスト、時系列 | MITライセンス | [24] |
CIKM18 | 株価変動予測 | 4,967 | ツイート、過去の価格 | テキスト、時系列 | 公共 | [25] |
ConvFinQA | マルチターン質疑応答 | 1,490 | 収益レポート | テキスト、表 | MITライセンス | [26] |
クレジットカード詐欺 | 不正行為の検出 | 11,392 | 財務情報 | テーブル | (DBCL) v1.0 | [22] |
cc詐欺 | 不正行為の検出 | 10,485 | 財務情報 | テーブル | 公共 | [22] |
研磨 | 経済的危機の特定 | 8,681 | 財務状況の特徴 | テーブル | CC BY 4.0 | [22] |
台湾経済新聞 | 経済的危機の特定 | 6,819 | 財務状況の特徴 | テーブル | CC BY 4.0 | [22] |
ポルトセグーロ | クレーム分析 | 11,904 | 請求および財務情報 | テーブル | 公共 | [22] |
旅行保険 | クレーム分析 | 12,665 | 請求および財務情報 | テーブル | (ODbL) v1.0 | [22] |
1. Pekka Malo、Ankur Sinha、Pekka Korhonen、Jyrki Wallenius、および PyryTakala、2014 年。「良い負債か悪い負債: 経済文書における意味論的方向性の検出」、Journal of the Association for Information Science and Technology、65、4 (2014)、782。 –796。
2. Macedo Maia、Siegfried Handschuh、André Freitas、Brian Davis、Ross McDermott、Manel Zarrouk、Alexandra Balahur 2018。Www'18 オープン チャレンジ: ウェブ会議のコンパニオン議事録にて。1941 年。 –1942年。
3. Keith Cortis、André Freitas、Tobias Daudert、Manuela Huerlimann、Manel Zarrouk、Siegfried Handschuh、Brian Davis 2017。SemEval-2017 タスク 5:第 11 回国際ワークショップの議事録。意味論的評価 (SemEval-2017) 、ページ519–535、カナダ、バンクーバー計算言語学協会。
4. Agam Shah、Suvan Paturi、および Sudheer Chava、2023 年。1 兆ドルの単語: 新しい財務データセット、タスクおよび市場分析。計算言語学協会の第 61 回年次総会議事録 (第 1 巻: 長編論文) 。 6664–6679、カナダ、トロント。計算言語学協会。
5. Ankur Sinha および Tanmay Khandait、2021 年、商品市場に対するニュースの影響: データセットと結果、情報と通信の進歩: 2021 年の情報と通信の将来会議 (FICC) の議事録、第 2 巻、Springer、589– 601.
6. Chen CC、Lin CY、Chiu CJ、他 NTCIR-17 FinArg-1 タスクの概要: 財務分析における詳細な議論の理解[C]//情報アクセス技術の評価に関する第 17 回 NTCIR 会議の議事録、2023年の東京。
7. Rasmus Jørgensen、Oliver Brandt、Mareike Hartmann、Xiang Dai、Christian Igel、Desmond Elliott 2023. MultiFin: A Dataset for Multilingual Financial NLP. In Findings of the Association for Computational Linguistics: EACL 2023、894 ~ 909 ページ、ドゥブロヴニク、クロアチア計算言語学協会。
8. Yang, L.、Kenny, EM、Ng, TL、Yang, Y.、Smyth, B.、および Dong, R. (2020) 金融テキスト分類に関するディープトランスフォーマーに対するもっともらしい反事実的説明の生成。言語学。
9. Chung-Chi Chen、Yu-Min Tseng、Juyeon Kang、Anaïs Lhuissier、Min-Yuh Day、Teng-Tsai Tu、Hsin-Hsi Chen 2023 年。第 5 回ワークショップの議事録にて。金融テクノロジーと自然言語処理 (FinNLP) と金融予測のための 2 番目のマルチモーダル AI (Muffin) 。
10. Julio Cesar Salinas Alvarado、Karin Verspoor、Timothy Baldwin、2015 年、信用リスク評価をサポートするための名前付きエンティティ認識のドメイン適応、2015 年のオーストラリア言語技術協会ワークショップの議事録。
11. Shah A、Vithani R、Gullapalli A、他、Finer: 金融固有エンティティ認識データセットと弱い監視モデル [J]、arXiv プレプリント arXiv:2302.11157。
12. Sharma、Soumya et al.「FinRED: 金融ドメインにおける関係抽出のためのデータセット」 Web Conference 2022 の論文集(2022): n.
13. Dominique Mariko、Hanna Abi-Akl、Estelle Labidurie、Stephane Durfort、Huges De Mazancourt、Mahmoud El-Haj 2020. 財務文書の因果関係検出の共有タスク (FinCausal 2020)。財務要約の処理とマルチリング、23 ~ 32 ページ、スペイン、バルセロナ(オンライン)。
14. Zhiyu Chen、Wenhu Chen、Charese Smiley、Sameena Shah、Iana Borova、Dylan Langdon、Reema Moussa、Matt Beane、Ting-Hao Huang、Bryan R Routledge 他 2021. FinQA: 財務データに対する数値推論のデータセット2021 年自然言語処理における経験的手法に関する会議の議事録。 3697 ~ 3711。
15. Zhu、Fengbin、Wenqiang Lei、Youcheng Huang、Chao Wang、Shuo Zhang、Jiancheng Lv、Fuli Feng、Tat-Seng Chua 「TAT-QA: 財務における表形式コンテンツとテキスト形式コンテンツのハイブリッドに関する質問応答ベンチマーク」 ArXiv abs/2105.07624 (2021): n. ページ。
16. Soumya Sharma、Subhendu Khatuya、Manjunath Hegde、Afreen Shaikh、Koustuv Dasgupta、Pawan Goyal、Niloy Ganguly 2023. 財務数値極端なラベル付け: データセットとベンチマーク、計算言語学協会の調査結果: ACL 2023、3550ページ。 –3561、カナダ、トロント計算協会。言語学。
17. Matthew Lamm、Arun Chaganty、Christopher D. Manning、Dan Jurafsky、および Percy Liang、2018 年。テキスト アナロジー解析:自然言語処理における経験的手法に関する 2018 年会議の議事録、ページ。 82 ~ 92 年、ベルギー、ブリュッセル計算言語学協会。
18. Rajdeep Mukherjee、Abhinav Bohra、Akash Banerjee、Soumya Sharma、Manjunath Hegde、Afreen Shaikh、Shivani Shrivastava、Koustuv Dasgupta、Niloy Ganguly、Saptarshi Ghosh、Pawan Goyal 2022。ECTSum: ロングの箇条書き要約のための新しいベンチマーク データセット。収益の通話記録。 2022 年自然言語処理における経験的手法に関する会議の議事録、10893 ~ 10906 ページ、アブダビ、アラブ首長国連邦計算言語学協会。
19. Zhihan Zhou、Liqian Ma、および Han Liu、2021 年。「イベントの取引: ニュースベースのイベント駆動型取引のための企業イベントの検出」 、計算言語学協会の調査結果: ACL-IJCNLP 2021、2114 ~ 2124 ページ、オンライン計算言語学協会。
20. Hofmann、Hans、Statlog (ドイツの信用データ) https://doi.org/10.24432/C5NC77。
21. Quinlan、Ross、Statlog (オーストラリア信用承認)。 https://doi.org/10.24432/C59012。
22. Duanyu Feng、Yongfu Dai、Jimin Huang、Yifang Zhang、Qianqian Xie、Weiguang Han、Alejandro Lopez-Lira、Hao Wang 2023. 多数を強化し、少数をバイアスする: ArXiv abs/2310.00566 ( 2023): n.
23. Yejun Soun、Jaemin Yoo、Minyong Cho、Jihyung Jeon、および U Kang、2022 年 IEEE ビッグデータ国際会議 (ビッグデータ)。 –1700。
24. Yumo Xu および Shay B Cohen、2018 年。計算言語学協会第 56 回年次総会議事録(第 1 巻: 1970 年~1979 年)。
25. Huizhe Wu、Wei Zhang、Weiwei Shen、Jun Wang、2018 年、情報と知識の管理に関する第 27 回 ACM 国際会議の議事録。
26. Zhiyu Chen、Shiyang Li、Charese Smiley、Zhiqiang Ma、Sameena Shah、William Yang Wang、2022 年。ConvFinQA: 自然言語の経験的手法に関する 2022 年会議議事録にて。処理、6279 ~ 6292 ページ、アブダビ、アラブ首長国連邦協会。計算言語学のため。
git clone https://github.com/The-FinAI/PIXIU.git --recursive
cd PIXIU
pip install -r requirements.txt
cd src/financial-evaluation
pip install -e .[multilingual]
sudo bash scripts/docker_run.sh
上記のコマンドは docker コンテナを起動します。環境に合わせてdocker_run.sh
を変更できます。 sudo docker pull tothemoon/pixiu:latest
実行することで、事前に構築されたイメージが提供されます。
docker run --gpus all --ipc=host --ulimit memlock=-1 --ulimit stack=67108864
--network host
--env https_proxy= $https_proxy
--env http_proxy= $http_proxy
--env all_proxy= $all_proxy
--env HF_HOME= $hf_home
-it [--rm]
--name pixiu
-v $pixiu_path : $pixiu_path
-v $hf_home : $hf_home
-v $ssh_pub_key :/root/.ssh/authorized_keys
-w $workdir
$docker_user /pixiu: $tag
[--sshd_port 2201 --cmd " echo 'Hello, world!' && /bin/bash " ]
引数は次のように説明します。
[]
無視できる引数を意味しますHF_HOME
: ハグフェイスキャッシュディレクトリsshd_port
: コンテナの sshd ポート。 ssh -i private_key -p $sshd_port root@$ip
を実行してコンテナに接続できます。デフォルトは 22001--rm
: コンテナを終了するときにコンテナを削除します (つまり、 CTRL + D
) 評価する前に、BART チェックポイントをsrc/metrics/BARTScore/bart_score.pth
にダウンロードしてください。
自動評価については、次の手順に従ってください。
ハグフェイストランスフォーマー
HuggingFace Hub でホストされているモデル (たとえば、finma-7b-full) を評価するには、次のコマンドを使用します。
python eval.py
--model " hf-causal-llama "
--model_args " use_accelerate=True,pretrained=TheFinAI/finma-7b-full,tokenizer=TheFinAI/finma-7b-full,use_fast=False "
--tasks " flare_ner,flare_sm_acl,flare_fpb "
詳細については、lm_eval ドキュメントを参照してください。
NER などのタスクの場合、自動評価は特定のパターンに基づいて行われるため、ゼロショット設定では関連情報の抽出に失敗する可能性があり、以前に人間が注釈を付けた結果と比較してパフォーマンスが相対的に低下することに注意してください。
export OPENAI_API_SECRET_KEY=YOUR_KEY_HERE
python eval.py
--model gpt-4
--tasks flare_ner,flare_sm_acl,flare_fpb
推論バックエンドを実行するには:
bash scripts/run_interface.sh
環境要件に応じて run_interface.sh を調整してください。
評価するには:
python data/ * /evaluate.py
FinBen の新しいタスクを作成するには、Huggingface データセットを作成し、Python ファイルにタスクを実装する必要があります。このガイドでは、FinBen フレームワークを使用して新しいタスクを設定する各手順を説明します。
データセットは次の形式で作成する必要があります。
{
"query" : "..." ,
"answer" : "..." ,
"text" : "..."
}
この形式では次のようになります。
query
: プロンプトとテキストの組み合わせanswer
: あなたのレーベルマルチターンタスク ( など) の場合
分類タスク (FPB (FinBen_fpb) など) の場合は、追加のキーを定義する必要があります。
choices
: ラベルのセットgold
: 選択肢内の正しいラベルのインデックス (0 から開始)順次ラベル付けタスク (Finer Ord (FinBen_finer_ord) など) の場合は、追加のキーを定義する必要があります。
label
: トークンラベルのリスト
token
: トークンのリスト
抽出要約タスク (ECTSUM (FinBen_ectsum) など) の場合は、追加のキーを定義する必要があります。
label
: 文ラベルのリスト抽象的な要約および質問応答タスク (EDTSUM (FinBen_edtsum) など) の場合、追加のキーを定義する必要はありません。
データセットの準備ができたら、タスクの実装を開始できます。タスクは、flare.py 内の新しいクラス、またはタスク ディレクトリ内にあるその他の Python ファイル内で定義する必要があります。
さまざまなタスクに対応するために、 Classification
、 SequentialLabeling
、 RelationExtraction
、 ExtractiveSummarization
、 AbstractiveSummarization
、 QA
などのいくつかの特殊な基本クラスを提供します。
たとえば、 Classification
タスクに着手する場合、このクラスを使用して効率的かつ直感的にタスクを作成できます。これをよりよく示すために、FinBen-FPB という名前のタスクを作成する例を詳しく見てみましょう。 Classification
基本クラス:
class flareFPB ( Classification ):
DATASET_PATH = "flare-fpb"
タスク クラスを作成したら、次のステップはそれをsrc/tasks/__init__.py
ファイルに登録することです。これを行うには、 "task_name": module.ClassName
形式に従って新しい行を追加します。その方法は次のとおりです。
TASK_REGISTRY = {
"flare_fpb" : flare . FPB ,
"your_new_task" : your_module . YourTask , # This is where you add your task
}
タスク | メトリック | 図 |
---|---|---|
分類 | 正確さ | このメトリクスは、正しく予測された観測値と観測値全体の比率を表し、(真陽性 + 真陰性) / 観測値合計として計算されます。 |
分類 | F1スコア | F1 スコアは適合率と再現率の調和平均を表すため、これら 2 つの要因の間に平衡が生まれ、スコアの範囲が 0 から 1 で、1 が完全な適合率を意味する場合に特に役立ちます。さらに、F1 スコアの「加重」バージョンと「マクロ」バージョンの両方を提供します。 |
分類 | 欠損率 | このメトリクスは、タスク内の指定された選択肢から選択肢が返されない応答の割合を計算します。 |
分類 | マシューズ相関係数 (MCC) | MCC はバイナリ分類の品質を評価する指標で、-1 から +1 の範囲のスコアを生成します。スコア +1 は完全な予測を意味し、0 はランダムな偶然と同等の予測を示し、-1 は完全に逆であることを示します。予測。 |
連続ラベル付け | F1スコア | Sequential Labeling タスクのコンテキストでは、堅牢なエンティティ レベルの評価メトリクスであるseqeval ライブラリによって計算された F1 スコアを利用します。このメトリクスは、エンティティの予測エンティティとグランド トゥルース エンティティの間でエンティティのスパンとタイプの両方が完全に一致することを要求します。正しい評価は、真陽性 (TP) は正しく予測されたエンティティを表し、偽陽性 (FP) は誤って予測されたエンティティまたはスパン/タイプが一致しないエンティティを示し、偽陰性 (FN) は予測から外れたエンティティを示します。次に、精度、再現率、および F1 スコアがこれらの量を使用して計算されます。F1 スコアは精度と再現率の調和平均を表します。 |
連続ラベル付け | ラベル F1 スコア | このメトリクスは、エンティティ スパンを考慮せず、予測されたラベルの正確さにのみ基づいてモデルのパフォーマンスを評価します。 |
関係抽出 | 精度 | 精度は、すべての予測された関係のうち正しく予測された関係の割合を測定し、真陽性 (TP) の数を真陽性と偽陽性 (FP) の合計で割って計算されます。 |
関係抽出 | 想起 | 再現率は、すべての実際の関係のうち正しく予測された関係の割合を測定し、真陽性 (TP) の数を真陽性と偽陰性 (FN) の合計で割って計算されます。 |
関係抽出 | F1スコア | F1 スコアは適合率と再現率の調和平均であり、これら 2 つの指標間のバランスを提供します。F1 スコアは 1 (完全な適合率と再現率) で最高となり、0 で最悪となります。 |
抽出的かつ抽象的な要約 | ルージュN | これは、システムが生成した要約と参照要約の間の N グラム (テキストの特定のサンプルからの N 個の項目の連続したシーケンス) の重複を測定します。ROUGE-1 と参照要約では、「N」は 1、2、またはそれ以上になります。 ROUGE-2 は、ユニグラムとバイグラムのオーバーラップをそれぞれ評価するために一般的に使用されます。 |
抽出的かつ抽象的な要約 | ルージュL | このメトリクスは、システムと参照要約の間の最長共通部分シーケンス (LCS) を評価します。LCS では、文レベルの構造の類似性が自然に考慮され、シーケンス内で最も長く共起する N グラムが自動的に識別されます。 |
質問への回答 | EMACC | EMACC は、モデルが生成した応答と参照応答との完全な一致を評価します。つまり、モデルが生成した応答は、参照応答と完全に一致する場合にのみ正しいと見なされます。 |
さらに、ラベルが特定のセットである検査などのタスクでは、クラス定義で
LOWER_CASE
指定することで、ラベルを小文字にするかどうかを決定できます。 「A」、「B」、「C」などの大文字の場合、これは通常、False に設定する必要があります。
私たちの命令データセットは、ドメイン固有の LLM、FinMA 向けに独自に調整されており、さまざまな金融タスクに基づいてモデルを微調整するために細心の注意を払って組み立てられています。複数の公開された財務データセット。
このデータセットは多面的であり、センチメント分析、ニュース見出し分類、固有表現認識、質問応答、株価変動予測などのタスクを備えており、テキスト データと時系列データの両方の形式をカバーしており、豊富な種類の財務データを提供します。各タスクの具体的な指示プロンプトは、分野の専門家によって慎重に設計されています。
以下の表は、さまざまなタスク、それに対応するモダリティ、テキストの種類、および各タスクで使用される指示の例をまとめたものです。
タスク | モダリティ | テキストの種類 | 手順例 |
---|---|---|---|
感情分析 | 文章 | ニュースの見出し、ツイート | 「金融ニュース記事から抽出したこの声明の感情を分析してください。否定的、肯定的、または中立のいずれかで答えてください。たとえば、「スキャンダルの後でその会社の株価は急落しました。」は否定的として分類されます。 |
ニュースの見出しの分類 | 文章 | ニュースの見出し | 「見出しが金の価格について言及しているかどうか考えてください。ニュースの見出しに示されている金商品市場に価格はありますか? はいまたはいいえで答えてください。」 |
固有表現の認識 | 文章 | 金銭的合意 | 「米国 SEC 提出書類の財務契約から抽出された文の中で、個人 ('PER')、組織 ('ORG')、または場所 ('LOC') を表す指定実体を特定してください。必須の回答形式は次のとおりです。 「エンティティ名、エンティティ タイプ」。たとえば、「SpaceX の CEO である Elon Musk がケープ カナベラルからの打ち上げを発表しました。」では、エンティティは次のようになります。「Elon Musk, PER; Cape Canaveral, LOC」 |
質問への回答 | 文章 | 収益レポート | 「相互に関連するこの一連の財務関連の質問と、企業の財務書類からの口実、表データ、投稿文によって提供される追加情報の文脈において、最後の質問への回答をお願いします。これには、財務報告書からの情報の抽出が必要になる場合があります。回答を作成する際には、前の質問とその回答で提供された情報を考慮してください。」 |
株価変動予測 | テキスト、時系列 | ツイート、株価 | 「情報とソーシャル メディアの投稿を分析して、 {tid}の終値が{point}で上昇するか下降するかを判断します。上昇または下降のいずれかで応答してください。」 |
データセットには膨大な量の指示データ サンプル (136,000) が含まれており、FinMA はさまざまな財務タスクの微妙な違いを把握できます。以下の表は、指示データセットの統計詳細を示しています。
データ | タスク | 生 | 命令 | データ型 | モダリティ | ライセンス | オリジナルペーパー |
---|---|---|---|---|---|---|---|
FPB | 感情分析 | 4,845 | 48,450 | ニュース | 文章 | CC BY-SA 3.0 | [1] |
FiQA-SA | 感情分析 | 1,173 | 11,730 | ニュースの見出し、ツイート | 文章 | 公共 | [2] |
見出し | ニュース見出しの分類 | 11,412 | 11,412 | ニュースの見出し | 文章 | CC BY-SA 3.0 | [3] |
NER | 固有表現認識 | 1,366 | 13,660 | 金銭的合意 | 文章 | CC BY-SA 3.0 | [4] |
FinQA | 質問応答 | 8,281 | 8,281 | 収益レポート | テキスト、表 | MITライセンス | [5] |
ConvFinQA | 質問応答 | 3,892 | 3,892 | 収益レポート | テキスト、表 | MITライセンス | [6] |
ビッグデータ22 | 株価変動予測 | 7,164 | 7,164 | ツイート、過去の価格 | テキスト、時系列 | 公共 | [7] |
ACL18 | 株価変動予測 | 27,053 | 27,053 | ツイート、過去の価格 | テキスト、時系列 | MITライセンス | [8] |
CIKM18 | 株価変動予測 | 4,967 | 4,967 | ツイート、過去の価格 | テキスト、時系列 | 公共 | [9] |
財務指示データセット (FIT) を使用する場合、モデルのトレーニングとテストのために規定の形式に従うことが重要です。
形式は次のようになります。
{
"id" : " unique id " ,
"conversations" : [
{
"from" : " human " ,
"value" : " Your prompt and text "
},
{
"from" : " agent " ,
"value" : " Your answer "
}
],
"text" : " Text to be classified " ,
"label" : " Your label "
}
各フィールドの意味は次のとおりです。
「会話」リストの最初のターンは常に「人間」からのものであり、プロンプトとテキストが含まれている必要があります。2 番目のターンは「エージェント」からのものであり、回答が含まれている必要があります。
FinMA の最初のバージョンをご紹介できることをうれしく思います。これには、LLaMA 7B で微調整された FinMA-7B、FinMA-7B-full、FinMA-30B の 3 つのモデルが含まれており、LLaMA-7B と FinMA-30B は でトレーニングされています。 NLP 命令データ、FinMA-7B-full は、NLP タスクと予測タスクの両方をカバーする FIT からの完全な命令データでトレーニングされます。
FinMA v0.1 は現在、Huggingface で一般公開されています。この初期バージョンが金融 NLP 分野に貴重な貢献をすることを期待しており、ユーザーがそれをさまざまな金融タスクやシナリオに適用することを奨励しています。また、フィードバックや共有も募集しています。将来のバージョンの改善に役立つ経験。
近日公開。
FinMem は、財務上の意思決定のために考案された新しい LLM ベースのエージェント フレームワークで、エージェントの特性を概説するプロファイリング、階層化された処理を備えたメモリ、エージェントが現実的な階層的な財務データと意思決定を吸収するのを支援します。 、記憶から得た洞察を投資決定に変換するため、現在、FinMem はシンプル モードのウォームアップ後に単一株を取引できます。サンプルとして TSLA を使用した Docker 化されたバージョンのフレームワークのクイック スタートを示します。入力。
ステップ 1: .env
で環境変数を設定し、必要に応じて HUGGGINGFACE TOKEN と OPENAI API KEY を追加します。
OPENAI_API_KEY = " <Your OpenAI Key> "
HF_TOKEN = " <Your HF token> "
ステップ 2: config.toml
でエンドポイント URL を設定する エンドポイント URL を使用して、選択したモデル (OPENAI、Gemini、HuggingFace のオープンソース モデルなど) に基づいてモデルをデプロイします。HuggingFace のオープンソース モデルの場合、TGI を生成するための 1 つの選択肢となります。エンドポイントは RunPod を介します。
[chat]
model = " tgi "
end_point = " <set the your endpoint address> "
tokenization_model_name = " <model name> "
...
ステップ 3: Docker イメージとコンテナーを構築する
docker build -t test-finmem .devcontainer/.
コンテナを開始します:
docker run -it --rm -v $( pwd ) :/finmem test-finmem bash
ステップ 4: シミュレーションを開始します。
Usage: run.py sim [OPTIONS]
Start Simulation
╭─ Options ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --market-data-path -mdp TEXT The environment data pickle path [default: data/06_input/subset_symbols.pkl] │
│ --start-time -st TEXT The training or test start time [default: 2022-06-30 For Ticker ' TSLA ' ] │
│ --end-time -et TEXT The training or test end time [default: 2022-10-11] │
│ --run-model -rm TEXT Run mode: train or test [default: train] │
│ --config-path -cp TEXT config file path [default: config/config.toml] │
│ --checkpoint-path -ckp TEXT The checkpoint save path [default: data/10_checkpoint_test] │
│ --result-path -rp TEXT The result save path [default: data/11_train_result] │
│ --trained-agent-path -tap TEXT Only used in test mode, the path of trained agent [default: None. Can be changed to data/05_train_model_output OR data/06_train_checkpoint] │
│ --help Show this message and exit. │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
使用例:
python run.py sim --market-data-path data/03_model_input/tsla.pkl --start-time 2022-06-30 --end-time 2022-10-11 --run-model train --config-path config/tsla_tgi_config.toml --checkpoint-path data/06_train_checkpoint --result-path data/05_train_model_output
チェックポイント機能もあります。詳細については、FinMem リポジトリに直接アクセスしてください。
仕事で PIXIU を使用する場合は、論文を引用してください。
@misc{xie2023pixiu,
title={PIXIU: A Large Language Model, Instruction Data and Evaluation Benchmark for Finance},
author={Qianqian Xie and Weiguang Han and Xiao Zhang and Yanzhao Lai and Min Peng and Alejandro Lopez-Lira and Jimin Huang},
year={2023},
eprint={2306.05443},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
@misc{xie2024FinBen,
title={The FinBen: An Holistic Financial Benchmark for Large Language Models},
author={Qianqian Xie and Weiguang Han and Zhengyu Chen and Ruoyu Xiang and Xiao Zhang and Yueru He and Mengxi Xiao and Dong Li and Yongfu Dai and Duanyu Feng and Yijing Xu and Haoqiang Kang and Ziyan Kuang and Chenhan Yuan and Kailai Yang and Zheheng Luo and Tianlin Zhang and Zhiwei Liu and Guojun Xiong and Zhiyang Deng and Yuechen Jiang and Zhiyuan Yao and Haohang Li and Yangyang Yu and Gang Hu and Jiajia Huang and Xiao-Yang Liu and Alejandro Lopez-Lira and Benyou Wang and Yanzhao Lai and Hao Wang and Min Peng and Sophia Ananiadou and Jimin Huang},
year={2024},
eprint={2402.12659},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
PIXIU は [MIT] に基づいてライセンスされています。詳細については、MIT ファイルを参照してください。