appricot’s diary

日々の勉強のメモ

投資における為替ヘッジの影響

概要

  • 昨今、円安によって、海外資産が購入しづらい。このまま円安が続けばよいが、将来的に円高に触れる可能性も考えると、為替ヘッジしたくなる。
  • では、為替ヘッジの影響がどれぐらいなのか?を調査。調査日は2023年9月30日。日米間の場合、両国の金利差が、そのままヘッジコストになるはずだが、実際、どれぐらいのパフォーマンス差がでるのかを調査。

 

日米両国の金利

 

SP500

 

金(ゴールド)

  • 為替ヘッジなし(GLD)
  • 為替ヘッジあり(ステートストリート・ゴールドファンド・為替ヘッジ有)
    • 過去1年間のリターン: +4.41% (ヘッジなしと比較して-3.81pt)
    • 過去5年間のリターン: +30.33% (ヘッジなしと比較して-20.33pt)
    • 信託報酬:0.895% / year
    • 投信・外貨建MMF|SBI証券

  • リターンに占めるヘッジコスト(信託報酬分を除く)
    • 1 year:  13.80% - 16.57% - 0.15% = 3.315pt
    • 5 years:  48.60% - 35.68% - 0.15% * 5 = 17.855pt

 

考察

  • そのときどきの金利差に影響を受けるが、ざっくり、リターンを2.6 ~ 3.3 pt / year 下げる形で、影響してくる。
  • 短期で持つ場合、それほど気にならないが(それでも大きいが・・)、長期で持つ場合には、かなりパフォーマンスへの影響が大きい。1年程度の短期・中期投資で為替ヘッジをかけるのはありだが、積立NISA・イデコなどの長期投資で為替ヘッジをかけるのは避けた方が良さそう。
  • 1年程度の短期・中期投資で為替ヘッジをかける場合であっても、ドル建てでの期待リターンが4%以上である必要がある(この数字は、その時々の金利に依存するが・・)。世界株・米国株のインデックスであれば、短期投資で為替ヘッジは問題なさそうだが*1、ゴールドなどのコモディティや債券の場合、短期投資の為替ヘッジであっても、ヘッジコスト負けしてしまう(最終的なリターンが負)可能性がある。
  • 実際の日米金利差と比較すると、為替ヘッジがパフォーマンスに与える影響は小さめに出ており、この原因が何なのかは、まだ理解できておらず。

*1:世界株等のインデックスの年平均リターンを4%と仮定

Can ChatGPT Decipher Fedspeak? ==> 読後メモ

概要

こちらの論文を要約。FOMCのアナウンス文書を、ChatGPTを用いて、鳩派と鷹派に分類する論文。

papers.ssrn.com

 

ChatGPTを用いたFOMC文書の分類

  • 2010-2020年の間に実施されたFOMCのアナウンスを利用。FOMCは年8回。
  • そこからダンラムに500文を選び、Policy stanceを人力で付与。Plicy stanceは、鳩派、ほぼ鳩派、中立、ほぼ鷹派、鷹派の5種類。
    • 鳩は緩和・利下げより。鷹は引き締め・利上げより。
  • F1-ScoreやBalanced Accuracyなどを用いて、それぞれのラベル毎に評価。Balanced Accuracyとは、PositiveケースにしめるTrue-Positiveの割合と、NegativeケースにしめるTrue-Negativeの値の平均。
  • GPT3.5, BERT, 辞書ベースの手法でのパフォーマンスを比較。GPT3.5が最も高いパフォーマンス。
    • 人間の場合、Neutralと分類する場合が3割以上を占めるが、GPT3.5, BERTの場合、Neutralと分類した場合は1割未満。GPT3.5, BERTは、若干偏りがある分類結果。
    • GPT3.5の場合、パフォーマンスは最良だが、それでも、F1-Scoreが0.5を超えたのは、5クラス中1クラスのみ。
  • ラベル付きの400文用いて、GPT3.5をFine-tunning。その結果、パフォーマンスがさらに改善。
    • 5クラス中4クラスで、F1-Scoreが0.5を超えた。
  • {GPT3.5、GPT4、人間}で、分類の理由を比較
    • 両GPTとも、人間に近い推論ロジック
    • GPT4のほうが、良い人間に近い。

 

Narrative Approachに関する実験

  • Narrative approachとは、FOMCの文書など様々な文書から、金融政策ショック(Monetary Policy Shock)があったタイミングを割り出す方法。金融政策ショックとは、インフレに伴う金利の変更など、金融政策の変曲点を指す。
  • 通常、人間が、この作業を行うが、GPT3.5, GPT4に同様の作業をさせた場合について、評価。
  • データとして、以下のものを利用。
    • FOMCのアナウンスの書き起こし。1946年 ~ 2017年。
    • 2017年 ~ 2023年のFOMCの議事録。
  • 文書と一緒に、以下のPromptをGPTに与える。
    • 金融政策の専門家として、与えられたテキストが金融政策ショックを含むかどうかを判断するのがあなたの仕事です。金融政策ショックとは、現在または将来の実際の経済活動とは関係のない金融政策の動きを指します。これらのショックは、経済が安定している場合でも、政策立案者が現在のインフレーション水準に対する懸念から、通貨供給量金利を変更するときに発生します。これらの場合、政策立案者は生産量や失業率などのネガティブな影響を受け入れる必要があります。 提供されたテキストを分析して、以下の要因に基づいて金融政策ショックの基準を満たすかどうかを判断してください。
      • 政策立案者は経済の総生産が十分な状態であると信じていましたか?
      • 政策立案者はインフレのために通貨供給量金利を変更しましたか?
      • 政策立案者は、生産量と失業に対する潜在的な不利な影響を理解し、受け入れましたか?
    • 参考の例を考慮して、提供されたテキストが類似のシナリオを示しているかどうかを評価してください。もし示している場合、なぜ金融政策ショックの基準を満たすか説明してください。もし満たしていない場合、なぜ基準を満たさないかについて簡単に説明してください。
  • このプロンプトのポイントは、以下3点。
    • 金融政策ショックの定義を明確に記載。
    • 定義にしたがって分析をお願いしている点。
  • 人間が見つけた金融政策ショックについて、GPT4も同様に発見。加えて、人間が見つけていない金融政策ショックも、GPT4は発見。

 

Impression

  • 論文に記載はなかったが、GPT4の場合に、分類タスクをやらせた場合の精度も、気になる。
  • Fine-tunningの効果は、大きいことが読み取れる。Fine-tunningなしだと、F1-Scoreが5クラス中4クラスで0.5未満。あまり良いクオリティの分類器とは思えず。Fine-tunningすることで、5クラス中4クラスでF1-Scoreは0.5以上となり、ようやく使える分類器・・といった印象。
  • GPT3.5をFine-tunningした場合のラベル付き文の数が400文だったが、これで十分な量なのか、気になる。この分量によって、どれぐらいパフォーマンスが変わってくるのかが、実用上は重要。
  • 論文に記載されているPrompt例は、他でも応用できそう。人間がやっていたタスクをGPTで置き換える場合、いかにプロンプトで、人間の判断基準を明文化するかが、重要そう。

Can ChatGPT Forecast Stock Price Movements? ==> 読後メモ

概要

  • 以下の論文を要約。
  • ChatGPTで、株価を予測。
  • 各News headlineに対して、企業の株価の観点でPositive, Negative, Neutralというラベルを付与。この結果と、株価のDaily Returnに相関があることを確認。
  • ChatGPTによる結果は、既存のSentiment Analysis手法、GPT1,2やBERTに勝る結果。
  • 特に小型株での予測性能、Negative newsでの予測性能が高い傾向。

 

Data

  • 米国上場企業のDaily returnとNews headline
    • Oct., 2021 - Dec., 2022
    • 4,138社
  • Webからクロールした上記企業に関連するNews
    • 単純に、各企業の名前やTickerが含まれる記事を収集
    • 期間は、Oct., 2021 - Dec., 2022
    • うち7割は、プレスリリースに対応
    • 67,586 headlines
  • ChatGPTが学習に利用しているデータ
    • 2021年9月まで。
    • モデルの評価に利用するHeadlineや株価データは、ChatGPTの学習期間より後(2021/10~)のもの。

 

Prompt

  • 以下のようなPromptをChatGPTに与える。
    • Forget all your previous instructions. Pretend you are a financial expert. You are a financial expert with stock recommendation experience. Answer “YES” if good news, “NO” if bad news, or “UNKNOWN” if uncertain in the first line. Then elaborate with one short and concise sentence on the next line. Is this headline good or bad for the stock price of **company name** in the term **term**? Headline: **headline**
  • ChatGPTによる日本語訳は、以下の通り。
    • 以前の指示をすべて忘れてください。あたなは財務の専門家のふりをしてください。株式の推奨銘柄の経験を持つ財務の専門家です。最初の行で「YES」は良いニュース、「NO」は悪いニュース、「UNKNOWN」は不確かな場合に回答してください。次の行で、簡潔かつ短い文で説明してください。
      • このHeadlineは、term期間中のXX社の株価にとって良いですか、悪いですか? 

 

手法

  • 特定の日の、特定の企業について、ChatGPTにNews headlineを与えて、判定結果がPositiveなら1, Unknownなら0, Negativeなら-1とする。該当するNews headlineが複数ある場合には、平均をとる。
  • 売買タイミングとポジション保持期間
    • 朝6時前のNews headlineを用いた場合、当日の始値でポジションをとり、終値で精算。
    • 朝6時〜Market CloseまでのNews headlineを用いた場合、当日の終値でポジションをとり、翌日の終値で精算。
    • Market Close以降のNews headlineを用いた場合、翌日の始値でポジションをとり、終値で精算。
  • ChatGPT-3.5のスコアがPositiveならLong。NegativeならShort。

 

評価

  • 評価期間は、2021/10 - 2022/12の間
  • ChatGPT-3.5を用いた場合、550%のリターン。
    • 買いから入るパターン、売りから入るパターン、どちらでも高いリターンを記録。Longで儲けた分が+200%。Shortで儲けた分が+250%。
    • 特にBad newsが起きた場合の予測性能が良好。
    • Sharp ratio = 3.1
    • Maximum draw down = -22.8%
  • ChatGPT-4の場合、330%のリターン。
    • Sharp Ratio = 3.8
    • Maximum draw down = -10.4%
  • 同時期に、全ての株を同じ分量で保持していた場合、累積リターンはマイナス。

 

他のLLMとの比較

  • 以下の回帰モデルを構築。
    • 1期先の特定企業の株価リターン=γ * 今期の特定企業のSentiment Score+ a + b
      • Sentiment Scoreは、ChatGPTの出力。
      • γはChatGPTの出力結果(News headlineのSentiment)の影響を示す係数。
      • aは特定企業の影響を示す係数。
      • bは特定日の影響を示す係数。
  • GPT-3.5, GPT-4は、BERTや以前のGPTに比べて、パフォーマンス良好であり、株価リターンを予測能力が、高いことを確認。
    • ChatGPT-3.5: γは、0.259 (t-testの値は5.259)
      • ChatGPTのスコアが-1から+1に変わった場合、+0.518%株価上昇
    • GPT-4: γは、0.176 (t-testの値は5.382) 
    • GPT2-Large: γは、0.035 (t-testの値は1.051)
    • BERT-Large: γは、0.001 (t-testの値は0.02)
  • ChatGPTによる予測性能は、大型株・小型株の両方で良好。特に、小型株では、良好。

 

Impression

  • インデックスファンドの結果が悪かった2021/10 --> 2022/12の期間に+550%のリターンというのは、驚き。
    • 全ての取引のうち、数回の取引で大きく利益を出しただけでは・・と思い、時系列での累積リターンのグラフを確認したところ、評価期間中、累積リターンはコンスタントに上昇していることを確認。つまり、予測を当てる頻度も高く、コンスタントに利益を出していったことが読み取れる。
  • とはいえ、モデルの評価期間が1年程度というのは短い気もする。せめて5年は欲しい。
  • 株価予測の実現方法は、至ってシンプルな印象。ChatGPTについて、Fine-tunningせず、Promptのみ株価予測に特化。Promptの設計は、単に「XX株が上がるかどうか」を聞くのではなく、ニュース記事を与えた上で、「金融の専門家を真似つつ、そのNewsがGood newsかBad newsか」を聞くようにしている点がポイント。
  • Promptの工夫でどれだけパフォーマンスが変わってくるか、個別株のみならず、他の金融商品(債券、為替、コモディティ)にも活用できるか、気になる。
  • 今回のChatGPTベースの株価予測で、うまくいかなかったケースは、どんなケースなのか?
    • 株価の変動要因は、個別企業の要因以外に、金利などマクロ経済要因もあるはず。マクロ経済要因に起因する個別株価の上下は、今回の手法では、はずしているのでは?
  • Newsの本文ではなく、あくまでもHeadline(見出し)だけを利用して、センティメントを判断している点も、気になる点。ポジネガ判断だけなら、本文は不要ということか。
  • Bloomgergにも、この論文の解説記事あり。

www.bloomberg.co.jp

Model Cards for Model Reporting

論文

arxiv.org

Machine Learningモデルについて、どのようなドキュメントを残すべきか?を扱った論文。論文を執筆したのはGoogle所属のひとたち。

 

概要

  • MLモデルについて、そのパフォーマンス等を共有するための共通のドキュメンテーションフォーマットがない。
  • そこで、1-2 pageから成る、モデルの概要を記したドキュメント「モデルカード」を提案。モデルカードは、以下の内容を含む。
    • モデル概要
      • 誰がモデルを作ったか
      • モデル作成日
      • モデルのバージョン
      • モデルの訓練に利用したアルゴリズム、パラメータ、入力変数、倫理的な制約 
      • より詳しい情報へのリンク
      • ライセンス
      • 質問の問い合わせ先
    • 想定される利用法
      • 想定される利用法
      • 想定される利用者
      • スコープ外の利用法
    • Factors
      • モデルが、どのような観点で、評価されるべきか?
        • Groups:例えば人を対象としたモデルであれば、人種、性別など様々な属性のグループで、モデルのパフォーマンスが、どのように変わるか?
        • Instrumentation:顔認識のモデルであれば、顔認識に利用されるカメラによって、どのような、モデルのパフォーマンスが変わるか?
        • Environments:顔認識のモデルであれば、それが暗い場所でDeployされた場合、どのようなパフォーマンスになるか?
    • 指標
      • モデルのパフォーマンスを計測するための評価指標
    • 評価に利用されたデータ
      • なぜ、そのデータが評価用データとして選択されたか?
      • どのようにデータが前処理されているか?
    • モデル訓練に利用されたデータ
    • モデルの定量的な評価結果
      • 各Factorに対する評価指標の値
      • 各Factorの組み合わせに対する評価指標の値
    • 倫理的な検討
      • Sensitiveなデータが利用されているか?
      • モデルが人の人生に大きく影響を与えるようなことに利用されるか?
      • モデルを利用する上でのリスク
      • そのリスクを、どのように軽減しようとしているか?
    • モデル利用にあたっての注意事項等
  • 上記の内容は、あくまでも例で、利用方法によってカスタマイズされるべき。
  •  モデルカードを作る目的は、以下の通り。
    • Stake-holdersがモデルの定量的評価結果や倫理的な観点からDeployするモデルを比較するのを助ける

 

Impression

  • 「倫理的な検討」であったり、各Factor・Factorの組み合わせに対するモデルパフォーマンスを示すべき・・という点は、なるほどと思った。
  • Criticalで耐用年数が長いモデル、人間の重要な意思決定に影響を与えるようなモデルの場合には、このようなドキュメントが特に重要になりそう。
  • モデルに関係する人が多い場合(ビジネス側、データサイエンティスト、エンジニア、・・・)に、それぞれの立場で、求める情報の粒度が異なりそう。全ての関係者にとって役立つ粒度の情報を、1つのドキュメントにまとめる・・というのは、現実には難しいこともありそう。
    • 現実的には、1つのモデルであっても、データサイエンティスト向けの内容・ビジネス側向けの内容・・と複数のドキュメントができてしまう・・というのが、ありえそうな展開。
  • 提案されたモデルカードのフォーマットは、エンジニアリング観点の内容が薄いように感じた。例えば、モデルの実行速度や、想定される実行環境など。

Offline Evaluation to Make Decision About Playlist Recommendations Algorithms ==> 読後メモ

論文

https://pchandar.github.io/files/papers/Gruson2019.pdf

Spotifyの中の人による、オフラインでのレコメンドエンジン評価方法に関する論文。

Off-policy Evaluationの実例を勉強したいな・・と思い、選択。

 

背景

  • オフライン評価の問題点は、オンライン評価(ABテスト等)と、結果が異なる場合があること。
  • なぜなら、過去データには、様々なバイアスが含まれているため。
    • Position Bias、Popularity Bias、Selection Biasなど
    • 既存のレコメンドエンジンの影響
  • この論文では、オンラインでのABテスト結果を予測できるようなオフライン評価方法を提案・検証。

 

問題設定

  • X: Context
    • レコメンドにアクセスしたユーザのデモグラ、アクセスタイミング、そのユーザの過去の閲覧作品など
  • C: レコメンドされる作品
  • f(c, x): Reward
    • Impression-to-stream
    • レコメンド結果をユーザが見て、かつ、レコメンドされた作品をユーザが30秒以上再生したら1。さくなくば0。
    • 論文内では、rとも表記。
  • π(c, x): Policy
    • ユーザXに、作品Cをレコメンドする確率。
    • Xに対して、πが最大であるような作品Cをレコメンドすることが、Action。
  • Total reward V = Σ_i f(c_i, x_i) π(c_i | x_i) を最大化するようなPolicy πを決定したい。

 

提案手法

  • 過去n期間のログを用いて、Total reward Vを求めたい。この過去ログは、既存のPolicy μ(c, x)を回すことで、得られたもの。その上で、既存Policy μに代わり、Total reward Vを最大化するような新たなPolicy πを決定したい。
  • しかし、過去ログは、既存のPolicy μによるBiasがかかっているので、このBiasを除いたVを計算する方法として、3つの方法を提案。
  • IS: The inverse propensity score estimate / Importance sampling estimate
    • V = (1/n) Σ_i r_i * π (c_i | x_i) / μ (c_i | x_i)
    • π (c_i | x_i) / μ (c_i | x_i)は、Propensity weight。
    •  推定されたVは、既存Policy-μでのレコメンド確率と新Policy-πでのレコメンド確率の比を、Rewardにかけたもの。
    • 既存エンジンがレコメンドする可能性が高い作品では、Rewardを低く評価。これにより、既存エンジンが過去データに与えている影響を除く。逆に、新エンジンがレコメンドする可能性が高い作品では、Rewardを高く評価。
    • Varianceが高い。
  • CIS: Capped importance sampling estimate
    • Propensity weightを、最大値でキャップする。
    • 例えば、あるユーザに、ある作品をレコメンドする確率が、既存エンジンで0.001で、新エンジンで0.5の場合、Propensity weightは500と、とても大きな値になってしまう。そうなると、Dataがスパースな場合に、Propensity weightがかなり低い作品が、想定以上に、Vに影響を与えてしまう可能性がある。これを防ぐのが目的。
    • Varianceを低く抑える効果。
  • NCIS: Normalized and capped importance sampling estimate
    • CISで計算したReward-Vを、Propensity weightの平均値で割る。これはNormalizationに相当。
    • Varianceを低く抑える効果。

 

評価実験の方法

  • 12個のレコメンドエンジンπを用意。その上で、以下3種類のデータを用意。
    • これら12個のエンジンを、オンラインで走らせた結果を用意。
    • 既存のレコメンドエンジンμを、オンラインで走らせた結果。
    • (Shuffled Data) ランダムに作品をユーザに提示した場合の結果。
  • オンライン実験の結果
    • 12個のエンジンを、Impression-to-stream rate (CTRのようなもの。レコメンドエンジンを見た人に占める、レコメンドされた作品を再生した人の割合)の優劣で、ランク付け。
  • オフライン実験の結果
    • 12個のエンジンを、Total reward Vで、ランク付け。

 

評価実験の結果

  • オフライン実験で、Total reward Vを、CISとした場合。かつ、オフライン評価に用いる過去データを、既存のエンジンをまわした場合とした場合。
    • Propensity weightのキャップ値が100万の場合
      • オンライン評価とオフライン評価の相関は、0.424
    • Propensity weightのキャップ値が100の場合
      • オンライン評価とオフライン評価の相関は、0.33
  • オフライン実験で、Total reward Vを、NCISとした場合。かつ、オフライン評価に用いる過去データを、既存のエンジンをまわした場合とした場合。
    • Propensity weightのキャップ値は10万の場合 
      • オンライン評価とオフライン評価の相関は、0.636
  • オフライン実験で、Total reward Vを、ISとした場合。かつ、オフライン評価に用いる過去データを、Shuffled Data とした場合。
    • オンライン評価とオフライン評価の相関は、0.394
  • NCISが最良。つまりNormalizationが大事。また、Propensity weightのキャップは小さくしすぎると、オフライン評価の精度を下げてしまうので、ある程度、大きく保つ必要がある。

 

レコメンドエンジンπの作り方に関する考察

  • πをつくる際、(1)のパフォーマンス (Impression-to-stream ratio)が最良。
    • (1) 過去データからNCISを用いてBiasを除去したデータで訓練
    • (2) Shuffle Dataを用いて訓練
    • (3) 過去データをBias除去しないままのデータで訓練

 

Impression

  • 「過去のエンジンなり施策の影響がある過去データしか手元にない状況で、新エンジン・施策のオフライン評価をしないといけない・・」というのは、現実的に、よくある状況。その場合の対応策が具体的にまとめられていて、勉強になった。
  • 単にPropensity Weightを考慮したのみ(IS)で、かつ、既存エンジンのログデータを用いた場合の結果(最も単純なケース)がどうなるのか、論文内で見つけられず。その場合のオフライン評価の精度がどうなるのか、気になる。
  • CISやNCISにおいて、キャップとなる値をいくつに設定すべきか・・は疑問が残る。おそらく実用上、悩むことになりそう。
  • Shuffled Dataでオフライン評価をしたり、レコメンドエンジンを訓練した場合の結果があまりよくなかったのは、意外。これは、Shuffled Dataのサンプル数が小さいことが、関係しているか・・

 

Causal Effect Estimation: Recent advances, Challenges, and Opportunities ==> 読後メモ

論文

2023年にPublishされたCausal effect estimationにおけるサーベイ論文を、以下要約。主に、今現在、研究課題となっている部分を中心にPick-up。

arxiv.org

 

用語の整理

  • Confounder (交絡因子):
    • TreatmentとOutcomeの両方に影響を与える変数
  • Counterfactual Outcomes:
    • Treatmentに対する効果で、観測されていないほうの効果。
    • Aさんに薬を投与した場合、Counterfactual Outcomeは、Aさんに薬を投与していない場合の効果
  • Selection Bias:
    • Treatmentがランダムに実施されていない場合
    • Treatment optionに対して、Covariatesが偏る。
    • 例えば、「メールする」というTreatmentを受けた集団には男性が8割含まれ、「メールしない」というTreatmentを受けた集団には女性が8割含まれるなど。

 

Treatmentに関する研究課題

  • Binary treatments
    • 例: 薬あり、なし
  • Multiple treatments
    • 例: 点滴、経口薬、薬なし
    • Binaryを拡張する形で、対応可能
  • Continous scalar treatments
    • 例: 薬の投与量の多寡
    • Binaryの拡張での対応は困難。特にSelection Biasの調整では、要工夫。
  • Sequential treatments
    • Treatmentが木構造。各葉がOutcome。
      • オンライン需要で、ライブVideoを選んでカメラONの場合のテスト結果
      • オンライン授業で、ライブVideoを選んでカメラOFFの場合のテスト結果
      • オンライン授業で、Recorded videoを選んだ場合のテスト結果
      • 対面授業の場合のテスト結果
    • このような場合、Selection Biasがより発生しやすい。
    • DAGなど、グラフベースの学習が有効。
  • Structured treatments
    • グラフ、画像、テキストなどが入力の場合

 

Covariateに関する研究課題

  • Selection Biasを解決する方法は、Covariate-adjustmentとも呼ばれる。Covariatesに関する最大のチャレンジは、このSelection Biasの解消。
  • Covariate-adjustmentの際、最も有効な方法は、Propensity Scoreを計算すること。
    • ある個体に、特定のTreatmentが実施される確率。
  • Covariatesは、以下の種類の変数に分けられる。
    • Confounder: TreatmentとOutcomeの両方に関係する変数
    • Instrumental Variables: Treamentには関係するが、Outcomeには関係せず
    • Adjustment Variables: Treatmentには関係しないが、Outcomeには関係
    • Spurious Variables: TreatmentにもOutcomeにも関係しない
  • Causal effectの推定では、Covariatesを使えるだけ沢山使えば精度が高いモデルができるわけではない。
    • Adjustment Variablesは、モデルに入れることで、精度改善に寄与。
    • Instrumental Variablesは、モデルの精度改善に寄与せず。
  • Covariatesを、Confounder, Instrumental, Adjustment,..と切り分ける方法が、提案されている。
    • 例: D2VD (Data-Driven Variable Decomposition) ==> AdjustmentとConfounderを自動で切り分け。
  • Confoundersが観測されていなかったり、Hiddenとなっている場合が、多々ある。
    • その場合、各変数間の関係をみることで、ConfoundersのProxyとなるような要素を見つける。
    • 具体的な方法として、VAEを用いた方法、グラフNNを用いた方法が提案されている。

 

Outcomeに関する研究課題

  • Selection biasに対する解決策として、以下のような方法が提案されている。
    • Treatmentありグループ (Domain-A) と、Treatmentなしグループ (Domain-B)で、Covariatesの分布が異なっている。
    • Domain-AとDomain-Bの分布を近づけたいので、Domain Adaptation関連の方法が模索されている。
    • 例えば、両グループのCovariatesを、分布が同じになるようなRepresentation空間に移す。

 

Impression

  • Continuous treatmentsは、現実にもありそうなケースで、どのようにモデル構築をするのか、具体的な方法が気になる。
  • Selection biasへの対応について、Propensity Score, IPW,...といったあたりは想像がつくが、この論文では、Domain adaptationを用いた方法が紹介されている。どれぐらい、その方法が現実的か分からないが、もう少し調査したいところ。

Generating synthetic data in finance: opportunities, challenges and pitfalls ==> 読後メモ

論文

https://www.jpmorgan.com/content/dam/jpm/cib/complex/content/technology/ai-research-publications/pdf-8.pdf

J. P. Morganから2020年に出ている論文を、以下、要約。プライバシー問題を回避するためのデータ生成技術についてサーベイした論文。

 

問題

以下のような場合に、生成データ (Synthetic Data)を利用できないか?

  • リアルデータの獲得・共有が困難な場合
  • Histrical dataが不足している場合
  • Imbalance dataの場合
  • Deep Learning等で、大規模な訓練データが必要な場合

 

データ生成の方法(テーブル型データの場合)

  • k匿名化 (k-anoymity)
    • 同じ属性のレコードがk件以上になるようにデータを変換。
    • 結果として、個人が特定される確率をk/1以下に低減。
  • 差分プライバシー法 (Differential Privacy)
    • データセットに対し、ノイズを付与し、個々人の値をわからないようにする技術。
    • ノイズを大きくすれば匿名化度合いは高まるが、データの有用性は下がる。この2点のトレードオフ
  • Agent-based approach
    • 補足: コンピュータ内にAgent(例えば投資家)を再現し、それらを相互作用させることで、マクロな変数(例えば株価)を生成。

 

データ生成の技法(時系列データの場合)

  • 伝統的なアプローチ: GARCH (Generalized AutoRegressive Conditional Heteroskedasticity)
    • ARモデルでは、時系列データの分散は、常に一定を仮定。
    • GARCHモデルでは、 時系列データにおける分散が、タイミングによって変わることを仮定。
    • 具体的には、ARモデルで、誤差項がホワイトノイズではなく、時期によって可変となったモデルが、GARCHモデル。
  • 最近のアプローチ: QuantGAN

 

Impression

  • 差分プライバシー法もk匿名化も、データを生成するというより、元データを加工してプライバシーを保つイメージか。
  • GARCHやQuantGANはデータを生成するイメージだが、適用対象は株価などで、個々人のデータのプライバシーを保つデータ生成とは異なるイメージか。。
  • この論文は2020年時点でのサーベイだが、昨今の生成AIブームの中で、プライバシー問題回避のためのデータ生成技術にも、何か新しい手法が出てきているのか、気になるところ。

 

分かりやすい日本語文献へのリンク

    • k匿名化: こちらのNECさんの記事が分かりやすい。
    • 差分プライバシー法: こちらの日経XTECHさんの記事が分かりやすい。
    • 差分プライバシー法: こちらのプライバシーテック研究所さんの記事も、分かりやすい。
    • GARCH: こちらのGMO・グループ研究開発本部さんのブログ記事が、分かりやすい。