宇宙天気分野の課題
「太陽観測データからの太陽フレア発生予測」
1. はじめに
太陽フレアは太陽大気で起こる爆発現象です。太陽フレアはX線・紫外線などの電磁波の増光を伴い、また高エネルギー粒子の宇宙空間への放出を伴うことがあります。それらが地球圏に到達することで大きな擾乱を引き起こし、GPS、通信、人工衛星などに多大な影響を与えるため、その予測は宇宙利用を行う現代では重要な課題となっています。
太陽フレアは主に黒点やその周辺の磁場エネルギー解放により発生することが分かっています。現在の研究では、エネルギー源となる磁場データや紫外線データなどを用いた予測モデルの構築が行われています。本コンペでは太陽フレアのエネルギー源と考えられる太陽磁場画像の観測データのみを用いて、その日(〜24時間以内)の太陽面上での太陽フレア発生有無を分類予測する機械学習モデルの予測スコアを競います。
2. 使用データ
モデルの入力データには、太陽観測衛星 Solar Dynamics Observatory (SDO)が取得する太陽全球の視線方向磁場データを用います。SDOは地球上空を周回しながら太陽を撮影しており、"視線"方向とは太陽から地球に向かう方向を指します。オリジナルの磁場データは、4,096x4,096の画素数をですが、データ容量等を考慮して本コンペティションでは512x512の画素数に平均リサイズしたものを用います。
注)モデル作成時、画像データのさらなるリサイズなどの画像データ自体の加工を行っていただいても構いません。
フレア発生は、GOES衛星による観測から報告されたGOES Flare Listを元に作成されたデータを用います。太陽フレアは、それが放出するX線フラックスの最大値によって大きい方からX、M、C、B、Aクラスと定義されています。本コンペティションでは、Mクラス以上のフレア発生予測精度を行います。まとめると、本コンペティションではGOES Flare ListでMクラス以上のフレアが1回以上起きたと登録されている日を、フレアが発生した日と定義します。
また、2011年1月1日〜2014年12月31日の00:00UTに観測されたデータを1日おきに学習データとして用います。この時期は、現在から1つ前の太陽周期において活動が活発化していった時期にあたります。
上記データを以下のnpyファイルで準備しています.
太陽全球磁場データ: train_mag.npy => 3次元配列.[空間, 空間, 日].値は磁場の強さ[Gauss].ただしデータ欠損日があり,1,414日分.
フレア発生有無 : train_label.npy => 1次元配列.[日]. 1がフレア発生,0がフレア非発生.全球磁場データに対応して1,414日分.
これらの訓練データは、こちらから取得ください。データ容量は解凍後で約3GBです。
参考のために、各データが観測された日付(train_date.csv)も提供しています。
観測された日付がわかると、例えばSolar MonitorなどのWebサイトにて、同日の磁場データをみると多少の時間差はありますが、黒点などの大きな磁場構造は同じであることも確認できます。また、Solar Monitorでは、他波長で観測した太陽も確認いただけます。
注)日付データや提供されていないデータはモデル作成には用いないようお願いします。
上記の太陽全球磁場データを読み込んで描画するjupyter notebook (Google Colaboratory, Kerasの使用を想定) を、参考としてこちらに準備しました。実行いただくと、例えば1枚目(2011/1/1)は以下のような画像データが描画できます。
3. 評価指標
太陽フレアの発生頻度はそれほど大きくないため、対象とするデータにおいて発生データ(ポジティブデータ)と非発生データ(ネガティブデータ)のデータ数が大きく異なる場合が多いです。そのため、フレア発生有無の分類モデルでは、データ数の差に数値の大きさが影響を受けるAccuracyではなく、True Skill Statistics(TSS)などが用いられます。TSSの定義は以下のようになります。
モデル評価データは、コンペション登録者に送付されるリンクもしくは登録フォーム上のリンクから評価データ(test_mag.npy, test_label.npy)をダウンロードして用いてください。
今回、Positiveをフレア発生とするため、各略語の意味は以下のようになります。
TP : True Positive (フレア発生データを予測できたデータ数)
FP : False Positive (フレア発生データを予測できなかったデータ数)
TN : True Negative (フレア非発生データを予測できたデータ数)
FN : False Negative (フレア非発生データを予測できなかったデータ数)
TSSは−1から1の値をとり、値が大きいほど良い分類性能を表します。
4. サンプルコード
モデル作成の例として、簡単なCNNモデルで学習するjupyter notebook (Google Colaboratory, Kerasの使用を想定)をこちらからダウンロードいただけます。このモデルでは、TSS=0.119...でまだまだ予測できないようです.様々なモデルでのご応募をお待ちしています!
#予定からの大幅な遅延,大変申し訳ありませんでした。本課題の提出期限を5/17まで延長しています。