気象予測子

概要

このモデルは 1 時間ごとの気象データ (各種の気象特徴からなる Numpy 配列を含むテキスト・ファイル) を入力として取り、特定のターゲット変数 (気温や風速など) に対する 1 時間ごとの気象予測を返します。

このモデルで使用されている 3 つの事前トレーニングされたモデルは、いずれも CODAIT チームにより、米国海洋大気庁の局所的気候学データでトレーニングされています。このデータは、当初 JFK 空港で収集されたものです。3 つのモデルにはすべて、LSTM 再帰型ニューラル・ネットワーク・アーキテクチャーが使用されています。

モデルのトレーニングに使用された気象変数の説明は、以下のように設定されています。

変数 説明
HOURLYVISIBILITY オブジェクトを観測可能な距離。
HOURLYDRYBULBTEMPF 乾球温度 (華氏)。最も一般的に報告される標準の温度です。
HOURLYWETBULBTEMPF 湿球温度 (華氏)。
HOURLYDewPointTempF 露点温度 (華氏)。
HOURLYRelativeHumidity 相対湿度 (パーセント)。
HOURLYWindSpeed 風速 (マイル/時)。
HOURLYWindDirection コンパス方位による真北を基準とした風向。
HOURLYStationPressure 気圧 (水銀柱インチ、つまり Hg 単位)。
HOURLYPressureTendency 直近 3 時間の気圧の変化を示す気圧傾向。
HOURLYSeaLevelPressure 海面気圧 (Hg 単位)。
HOURLYPrecip 直近 1 時間の全降水量 (インチ単位)。
HOURLYAltimeterSetting 「標準」の気圧の温度プロフィールを使用して海面まで下げられた気圧 (Hg 単位)。

気象変数についての詳細は、「US Local Climatological Data Documentation」を参照してください。

以下のように、モデルごとに異なる形式の予測が返されます。

  • 単変量モデル: 入力データ・ポイントごとに、次の 1 時間の乾球温度 (HOURLYDRYBULBTEMPF) の予測を返します。
  • 多変量モデル: 入力データ・ポイントごとに、次の 1 時間の 12 の気象変数すべての予測を返します。
  • 多段階モデル: 入力データ・ポイントごとに、次の 48 時間の乾球温度 (HOURLYDRYBULBTEMPF) の予測を返します。

モデルのメタデータ

ドメイン アプリケーション 業種 フレームワーク トレーニング・データ 入力データ形式
気象 時系列予測 一般 TensorFlow / Keras JFK 空港の気象データ (NOAA) CSV

参考資料

文献およびドキュメント

関連リポジトリー

ライセンス

コンポーネント ライセンス リンク
モデルの GitHub リポジトリー Apache 2.0 LICENSE
モデルの重み Apache 2.0 LICENSE
テスト・アセット 制限なし アセットの README

このモデルのデプロイ方法

このモデルは、以下のメカニズムを使用してデプロイできます。

  • Dockerhub からデプロイする場合:
    docker run -it -p 5000:5000 codait/max-weather-forecaster
    
  • Kubernetes 上にデプロイする場合:
    kubectl apply -f https://raw.githubusercontent.com/IBM/MAX-Weather-Forecaster/master/max-weather-forecaster.yaml
    
  • ローカルにデプロイする場合: GitHub 上のモデルの README に記載されている手順に従います。

使用例

モデルをデプロイしたら、コマンド・ラインからモデルをテストできます。例えば、ローカルで実行中の多変量モデルをテストするには、次のコマンドを使用します。

curl -F "file=@assets/lstm_weather_test_data/multistep_model_test_data.txt" -XPOST http://localhost:5000/model/predict?model=multistep

以下のような multistep データセットに対する JSON レスポンスが表示されるはずです。ここで、predictions には入力データ・ポイントごとに予測される次の 48 時間の乾球温度 (F 単位) が格納されます。

{
  "status": "ok",
  "predictions": [
    [
      77.51201432943344,
      76.51381462812424,
      75.0168582201004,
      73.84445126354694,
      72.79087746143341,
      71.71804094314575,
      70.97693882882595,
      70.44060184061527,
      69.89843893051147,
      69.35454525053501,
      69.04163710772991,
      68.70432360470295,
      68.37075608968735,
      68.20421539247036,
      68.01852786540985,
      67.6653740555048,
      67.27566187083721,
      67.0398361980915,
      66.69407051801682,
      66.9289058893919,
      67.19844545423985,
      67.65162572264671,
      68.30480472743511,
      69.37090930342674,
      70.37226051092148,
      71.57235226035118,
      72.68855434656143,
      73.91224025189877,
      74.65138283371925,
      75.09161844849586,
      75.30447003245354,
      75.04770956933498,
      74.93723678588867,
      74.27759975194931,
      73.82458955049515,
      73.32358133792877,
      72.66812674701214,
      71.75925283133984,
      71.28871068358421,
      70.66486597061157,
      70.06835387647152,
      69.74887031316757,
      69.49707941710949,
      69.26406812667847,
      68.87126012146473,
      68.60496838390827,
      68.39429907500744,
      68.03596951067448
    ],
    ...
}