ほぼテク7月30日GPT-4のCode Interpreterで気象分析にチャレンジしてみた!?

ほぼテク読者の皆様、いつも大変ありがとうございます!
我妻裕太です。

本日もよろしくお願いいたします。GPTに関する連続投稿約96日目です!
本日もChatGPTの有効活用方法の検討です!

今回のテーマはChatGPTで気象予報ができるか?の記事です!
何かの参考になれば幸いです。

世界の平均気温が観測史上最も暑い月になりました。

世界の平均気温が観測史上最も暑い月になりました!みなさんいかがお過ごしでしょうか。
今年は例年に比べてなんだか夏が暑いな梅雨もこないな~なって思っていたらそんな感じでした(笑)

とにかく暑い!サウナのような毎日でとにかく暑い!暑いの大好きですが、ちょっと暑さがすごい。

そんな感じで思っていたら、なんと世界気象機関(WMO)と欧州連合(EU)の気象情報機関「コペルニクス気候変動サービス」が、2023年7月の世界平均気温が観測史上最高になると発表しました。そりゃそうだ(笑)

古気候学者らの研究により、現在の地球の平均気温は約12万年ぶりの最高気温とされています。
過去10年間の年間平均気温は毎年のように最高記録を更新し、今年6月の世界平均気温は工業化前を1.5度以上上回りました。
大気中のCO2濃度は350万年ぶりの高さで、今後も温暖化が続くと見られているようです。

きーーーーーーーー、寒いの苦手な私にとっては朗報に感じられますが、ただ、このまま上がり続けられるのも・・・

っということで最近ものすごい暑いなと感じていましたので、ここで出てくるのが大好きChatGPTです!
どんな繋ぎやねん(笑)

GPT-4のCode Interpreterで気象データを分析してみよう!の巻。

どこまで気温が上昇するのかや色々と分析できそうだなと思い、ここで登場するのがChatGPT!

ChatGPTはユーザーと自然言語で対話する能力を持つAIモデルです。
さらに言語理解や数字データの分析・解析が可能な素晴らしいAIです!

ChatGPTを活用して今後の気温がどう変化するか、気温の変化からどのような影響がでるかアドバイスが生成できるか実験してみました!

ChatGPT気象分析のレシピ

今回のレシピは以下の通りです。

・GPT4 Code Interpreterで実行する。
・気象データは気象庁で公開されているCSVファイルで実行する。
・分析対象地域は宮城県仙台市です。
・CSVファイルの列は以下のデータです。
 ・平均気温(℃)
 ・降水量の合計(mm)
 ・日照時間(時間)
 ・最深積雪(cm)
 ・平均風速(m/s)
 ・平均蒸気圧(hPa)
 ・平均雲量(10分比)

・プロンプトは以下で実行する。


【プロンプト】
あなたは優秀な天気予報士です。
世界の平均気温が観測史上最も暑い月になりました。
アップロードするデータをもとに今後の気温がどう変化するか、気温の変化からどのような影響がでるかアドバイスしてください。
アップロードするデータは宮城県仙台の1927年から2022年の気象データです。
アップロードするデータの列の説明は以下の通りです。
・平均気温(℃)
・降水量の合計(mm)
・日照時間(時間)
・最深積雪(cm)
・平均風速(m/s)
・平均蒸気圧(hPa)
・平均雲量(10分比)

アドバイスをしてほしい具体的な内容は以下のとおりです。

## アドバイス内容
1.天気情報の提供: 現在の天気状況や将来の天気予報を提供してください。これにより、外出する際の適切な服装やアクティビティの計画が立てやすくなります。
2.天災に対する警告: 気象条件による災害の可能性やリスクがあれば提供してください。台風、洪水、竜巻などの天災に対して適切な対応をするための情報を提供してください。
3.農業や農園管理の支援: 農業関連の専門家として、農作物の栽培に適した天候条件を提案し、農業や農園の管理に関するアドバイスを提供してください。
4.交通や航空の影響: 天候条件が交通や航空に与える影響を予測し、遅延や欠航などに対する情報を提供してください。これにより、旅行計画の調整が容易になります。
5.エネルギーと環境の予測: エネルギーの需要予測や再生可能エネルギーの効率的な利用に関する情報を提供することで、エネルギー産業や環境への影響を考慮した意思決定を支援してください。


結果は以下の通りです!

(※)実際のやり取りのテキストを以下に記載いたします。

【ChatGPT】
わかりました。それでは、まずはアップロードしていただくデータを見せていただけますか?そのデータを基に分析を行い、各項目についてのアドバイスを考えてみます。

【我妻】
gpt_demo_data .csv

【ChatGPT】
エラーメッセージから、データの読み込み時にエンコーディングの問題が生じていることがわかります。
日本のデータであるため、エンコーディングはおそらく 'shift_jis' かもしれません。それを試してみましょう。

データの読み込みに成功しました。次に、このデータセットについていくつかの基本的な情報を確認しましょう。
具体的には、データセットのサイズ、各列のデータ型、欠損値の数を確認します。これにより、データの前処理が必要かどうかを判断できます。

データセットは1152行と7列から構成されています。各列のデータ型は次のとおりです:

  • 平均気温(℃): 浮動小数点数

  • 降水量の合計(mm): 浮動小数点数

  • 日照時間(時間): 文字列

  • 最深積雪(cm): 文字列

  • 平均風速(m/s): 文字列

  • 平均蒸気圧(hPa): 浮動小数点数

  • 平均雲量(10分比): 浮動小数点数

欠損値については、以下のようになっています:

  • 最深積雪(cm): 382行

  • 平均風速(m/s): 288行

  • 平均蒸気圧(hPa)と平均雲量(10分比): 各48行

また、'日照時間(時間)'列には'///'という値が含まれているようです。これも欠損値として扱うべきでしょう。
欠損値の処理方法は、欠損が発生している原因や、欠損値がどの程度の影響を及ぼすかによります。一般的なアプローチは以下のとおりです:

欠損値のある行を削除する: しかし、これはデータが失われるため、情報損失が大きくなる可能性があります。
欠損値を補完する: 平均、中央値、最頻値、前後の値で補完するなど、さまざまな方法があります。
これは一部の情報が失われる可能性がありますが、データの全体的な形状は保持されます。

データの分析とアドバイスを行う前に、これらの欠損値の処理を行う必要があります。
データの特性と目的に基づいて、適切な方法を選択しましょう。

【我妻】
補完してください。

【ChatGPT】
承知しました。データの補完を行います。まず、'日照時間(時間)'列にある '///' を NaN に置き換え、その後、各列の欠損値をその列の中央値で補完します。
中央値は外れ値の影響を受けにくいため、補完によく用いられます。ただし、この補完方法はデータの分布が正規分布に近い場合に最も効果的です。
各列の分布については、この補完作業の後に確認します。

データの補完が完了しました。しかし、'最深積雪(cm)'と'平均風速(m/s)'の列については、文字列データが含まれている可能性があります。
これらの列を数値型に変換し、欠損値を補完する作業を行います。

すべての欠損値が補完され、各列のデータ型も適切に設定されました。次に、各列の基本的な統計量を確認し、データの分布や範囲を理解します。
これは、データの特性を理解し、異常値や外れ値が存在するかどうかを確認するのに役立ちます。
また、これらの情報は後続の分析やモデリングの方向性を決定するのにも役立ちます。

データセットの基本的な統計情報は以下の通りです:

  • 平均気温(℃): 平均12.0℃、範囲は-3.0℃から27.2℃

  • 降水量の合計(mm): 平均102.8mm、範囲は1.5mmから644.5mm

  • 日照時間(時間): 平均152.3時間、範囲は31.9時間から294.0時間

  • 最深積雪(cm): 平均6.9cm、範囲は0.0cmから41.0cm

  • 平均風速(m/s): 平均3.2m/s、範囲は2.2m/sから5.0m/s

  • 平均蒸気圧(hPa): 平均12.0hPa、範囲は3.4hPaから27.9hPa

  • 平均雲量(10分比): 平均6.8(10分比)、範囲は3.9から9.7

これらの情報から、データの範囲と分布を理解することができます。
このデータセットを使用して、次に行うことは以下の通りです:

  • データの視覚化: 各変数の分布を視覚化し、時間経過とともの変化を確認します。また、異常値の存在を調査します。

  • データ分析: 変数間の相関を調べ、重要な特徴を特定します。

  • モデリングと予測: 未来の気温や他の気象条件を予測するためのモデルを構築します。

それでは、次にデータの視覚化に進みましょう。それぞれの特徴量の時間経過に伴う変化を見ることで、長期的なトレンドや季節的なパターンを把握することができます。
これは、天気の予報や気候変動の分析にとって重要なステップです。

【我妻】
続けてください。

【ChatGPT】
各変数の時間経過に伴う変化を視覚化したグラフが表示されています。これらのグラフから、以下の観察を行うことができます:

  • 平均気温(℃): 年間を通じて明確な季節性が見られます。また、最近の数十年間で全体的に上昇傾向が見られます。

  • 降水量の合計(mm): 年間を通じて高い変動があります。一部の月で特に高い降水量が記録されていますが、これは可能性としては激しい雨季や台風などが考えられます。

  • 日照時間(時間): ほとんどの期間で一定の値になっています。これは、データが欠損していたために中央値で補完された結果です。

  • 最深積雪(cm): これも一定の値を示していますが、これは欠損値が中央値で補完されたためです。一部の期間で雪深が増えていることが見て取れます。

  • 平均風速(m/s): これもほとんどの期間で一定の値を示しています。これは、データが欠損していたために中央値で補完された結果です。

  • 平均蒸気圧(hPa): 年間を通じて明確な季節性が見られ、夏季にピークを迎えています。

  • 平均雲量(10分比): 年間を通じて比較的一定で、特定の季節に特有のパターンは見られません。

以上の観察から、一部の変数(特に日照時間と平均風速)で大量のデータが欠損していたため、これらの変数の予測や解釈には注意が必要です。
しかし、平均気温と降水量のデータは完全であり、これらは予測モデルの重要な要素となります。

次に、これらの変数間の相関を分析し、それぞれがどのように関連しているかを理解します。
これにより、一部の変数が他の変数を予測するのに役立つかどうかを判断することができます。

【我妻】
続けてください。

【ChatGPT】
私の失敗です、NumPyモジュールをインポートするのを忘れていました。再度実行します。
私の失敗です、カラーマップ cmap の定義も忘れていました。もう一度試してみましょう。

ここに示されているのは、各変数間の相関係数のヒートマップです。
相関係数は、-1から1の範囲の値で、-1は完全な負の相関、0は相関なし、1は完全な正の相関を表します。

このヒートマップから、以下の観察ができます:

  • 平均気温と平均蒸気圧の間には強い正の相関があります。これは、気温が高いときに空気がより多くの水蒸気を保持できるという物理的な性質を反映しています。

  • 平均気温と日照時間の間にも比較的強い正の相関があります。これは、日照時間が長い日が通常は暖かいためです。

  • 平均気温と最深積雪の間には強い負の相関があります。これは、気温が低いときに雪が多く降るという自然のパターンを反映しています。

これらの情報は、気候予測モデルの作成や気候変動の影響の理解に役立ちます。

次に、気候モデルの作成に進みます。このモデルは、現在の天候状況や未来の予測を提供するのに役立ちます。
具体的には、時系列分析を用いて未来の気温を予測します。これは、気候変動のパターンを理解するための重要なステップです。


はい!ここまで、そして、おぉーーーーーーーーーーーー。すごい、すごいぞ、夏の暑さのせいもあるのかとてもすごく感じている。
優秀な気の利くエンジニアが目の前にいるようだ!

中身は改善の余地はありますが、ちょっと驚いたのが、自分でどんどん進めてくれたところですね。
前回までは、毎回「続けてください。」を入力していたような記憶があるのですが、今回はエラーがあると自発的に修正して進めてくれました。素晴らしいです。

少し内容を見ていきましょう!

最初に驚いたのが、各列のデータ型、欠損値の数をちゃんと確認してくれた点です。
データ分析や機械学習は前処理が8割と言われるほど中身のデータ理解とデータの修正が必要なので、これは楽ちんですね。

さらに欠損値の処理を行う必要あることについても提案してくれたので、気が利きますね。

さらにさらに驚いたのが、データセットの基本的な統計情報をあっという間に分析してくれました。
これを考えるのに結構な時間がかかっていのたですが・・・憎いなこやつ!
かなり効率化できそうです。

最後にデータの分析もちゃんとしてくれています。
「平均気温(℃)は年間を通じて明確な季節性が見られます。また、最近の数十年間で全体的に上昇傾向が見られます。」
らしいですよ。今の流れを抑えてくれていますね。

う~ん、マンダム!

まとめ

っということでいかがでしたでしょうか。

本日はChatGPTは気象分析ができるか?でした。
気象分析の前にデータを分析する際の重要な点についてフォーカスして進めてくれたので、かなり楽ちんな印象でした。
自分が手が回らないときに分析アシスタントになってくれるような気がしましたよね。

まじでまじですごいな~。
おも面白い。

人間とAIが共存する未来の分析の仕方?をご覧いただきました。改良の余地はあるかもしれませんが、普通の経験値がない人と分析をするよりもかなり効率的に進められる気がしました。
単純な作業や量が多い作業、力が必要な作業はAIに任せて、もっと創造的な仕事ができる未来がきていますね。

今回の記事がみなさまの何かの参考になりましたら幸いです。
今回も最後までお読みいただきありがとうございました。

また次回お会いしましょう。

原稿執筆

株式会社GROWTH JAPAN TECHNOLOGIES  我妻裕太

バックナンバー

ほぼテク7月29日GPT-4のCode Interpreterで身体を引き締める?ChatGPTをパーソナルトレーナーにする方法!?

ほぼテク7月26日ソフトウェア開発におけるSQL作成の課題をChatGPTが解決!?人間とAIで開発する次世代のソフトウェア開発!?

ほぼテク7月23日ChatGPTが変える業務効率化!ChatGPTを使った次世代のタスク管理!?

ほぼテク7月22日ChatGPTをあなた専用のAIにカスタマイズ!新機能「Custom Instructions」の紹介です!

ほぼテク7月19日GPTのライバルになるか?満を持して登場のMetaのLlama2が先ほど公開されました!

ほぼテク7月17日海の日にちなんで?多様化するDBの波を乗り越えられるかをChatGPTで試してみました。

ほぼテク7月16日GPT-3.5、GoogleBardでシフト管理を考えてみました!

ほぼテク7月15日GPT-4 Code InterpreterでG20の人口成長率を分析してみたら新しい気づきをくれました!

ほぼテク7月12日最新情報アップデート!GPT-4一般公開されたけど、APIで支払い履歴がないと使えないことが分かりましたの件(涙)

ほぼテク7月9日最新機能ChatGPTの「Code Interpreter(コードインタープリター)」を使ってみました!

ほぼテク7月7日SaaSサービスの利用規約のひな型をGPT、Bardで作ってみました!

ほぼテク7月5日BingのGPTの画像認識を解剖?ChatGPTとの違いと画像解析の可能性を探る!

ほぼテク7月2日ChatGPT・GoogleBardを活用したコンテンツモデレーション(投稿監視)!コミュニティの健全性と品質をChatGPT、GoogleBardで保てるか?

ほぼテク7月1日ChatGPTを活用してオンラインショッピングサイトのカスタマーサポートを効率化しよう?

ほぼテク6月28日AIと一緒にダイエット?ChatGPT、GoogleBardに体重データを分析してもらった!なかなか面白いよ(笑)

ほぼテク6月25日GPTの最新機能!「Azure OpenAI Service on your data」を試してみました!

ほぼテク6月24日GPTの活用事例!チャットボット用のQAデータをGPTで作成してみた!

ほぼテク6月21日GPT4の活用事例!生成AI達でAIの教師データを生成してみよう。

ほぼテク6月17日ChatGPTの活用ガイド!AIをあなたのプロジェクトに取り入れる方法徹底解説?

ほぼテク6月14日!ChatGPTを活用するために重要な留意事項13選! AIとのスムーズな対話を実現!

ほぼテク6月11日!ChatGPTでSNSマーケティングを攻略しよう!

ほぼテク6月10日!ChatGPTで情報の抽出をマスターしよう!

ほぼテク6月7日!ChatGPTを使って業務効率化! - データ解析とレポート作成の新たな方法?

ほぼテク6月4日!ChatGPTでマスタ情報を活用した間違い探し!

ほぼテク6月3日!ChatGPTで文法・スペルチェック!

ほぼテク5月31日!ChatGPTでファンタジーは創造できるか?

ほぼテク5月28日!ChatGPTで地元仙台市を分析してみました!

ほぼテク5月27日!ChatGPTでWebサイトから重要な情報を取得できるか試してみました!

ほぼテク5月24日!ChatGPTプラグイン実践編!画像生成のためのプロンプト生成プラグイン!

ほぼテク5月21日!ChatGPTプラグイン実践編!食べログプラグイン!

ほぼテク5月20日!とても面白いChatGPTのプラグイン使ってみました!

ほぼテク5月17日!GPTとの冒険!ファインチューニングで試行錯誤、そして成功へ!

ほぼテク5月14日!ChatGPT Webブラウジング機能がリリースされました!

ほぼテク5月13日!ChatGPTを活用した創作活動の一例!物語のプロットを創ってみた。

ほぼテク5月12日!Bard – Googleの新しい会話型AIが世界デビュー!

ほぼテク5月10日!今、私たちは新たなフロンティア、つまり宇宙へと視野を広げています!

ほぼテク5月7日!Chat GPTの正しい使い方基本プロンプトで会話してみました④

ほぼテク5月6日!Chat GPTの正しい使い方基本プロンプトで会話してみました

ほぼテク5月5日!Chat GPTの正しい使い方基本プロンプトで会話してみました②

ほぼテク5月4日!Chat GPTの正しい使い方基本プロンプトで会話してみました①

ほぼテク5月3日ImageCreatorで生成した画像で展示会?

今更聞ける!ほぼ毎日テック日報(おとなの週末) 4月30日(マイクロソフト画像生成AI「Bing Image Crator」とは?) – テクノロジーが日常にもたらすイノベーション?

今更聞ける!ほぼ毎日テック日報(おとなの週末) 4月29日(完全自動実行AI AutoGPTとは?) – テクノロジーが日常にもたらすイノベーション?

新企画!?「今更聞ける!ほぼ毎日テック日報 - テクノロジーが日常にもたらすイノベーション?」

前へ
前へ

ほぼテク8月2日GPTのライバルになるか?満を持して登場のIBMのwatsonxで日本語が得意か実験してみました!

次へ
次へ

ほぼテク7月29日GPT-4のCode Interpreterで身体を引き締める?ChatGPTをパーソナルトレーナーにする方法!?