
SUNABACO AI人材育成講座Day15~Day16
もう講座は今週で終わり。いよいよ卒制に突入だ。
今まで習ったこともまだ覚束ないし、困りごとを解決できる自信もまったくない。不安でいっぱいだけれど、とにかく復習するしかないので、アーカイブを見ながらnoteにまとめていく。
子どもたちに「今日は一緒に寝られる?」と毎日のように聞かれ、後ろ髪を引かれる思いだが、夫と交代で寝かしつけをしている。
「これからしばらくは一緒に寝られないかも。もっと忙しくなっちゃうと思う」と話すと、「がんばって!」と応援してもらえた。あと少し、がんばろう。
Day15日 総合実践編
振り返りで取り上げられていた、「現実世界の情報をどうやってデータに落としていくか」という課題。
先人がすでに研究をされているらしく、参考の書籍を教えてもらう
実践のお題
なんと、勉強すべきことは全て終わったという事らしく、今日から実践編!
今まで習ったことを活かして、何かをするイメージが湧かない…
実践にあたり、お題がでる
お題
「サイクリストの街、今治。みなさんは、今治市と愛媛県警察から依頼を受け、自転車盗難に関わるデータ分析を任されました。データを活用して、パトロールのリソース分配等の意思決定を行いやすくすることがゴールです。
現在公開されているデータをもとに、価値のあるデータ分析を行ってください。
期日は2025年2月17日です。」
※このお題はフィクションです。実際の組織・団体とは一切関係ありません
まずは、カンパ先生がどんな感じでChatGPT先生を使いながらリサーチを開始するのを見学。
まずは「はじめは何を質問するのか?」という問題。
自分のバイアスをかけないように、方向性を決めたい。
自分のバイアスから逃れるために、ChatGPT先生に聞きながら方向性を定めていくけれど、ChatGPT先生には集合知としてのバイアスがかかっているので、それっぽい答えにならないように質問の仕方に気をつけなければならない。
カンパ先生が試しにお題をそのままChatGPTに入力すると、一見良さそうな、それっぽい答えが返ってきた。
どんなデータが必要なのか?どんな要因が自転車の盗難につながっているのかなどなど、自分が思いつく以外のアイディアが欲しい。アイディアを得るにはインタビューをしたり、現地に行ってみたり、地道なインプットが必要とのことだった。ChatGPT先生のありきたりな答えを鵜呑みにしてはいけない。
データサイエンティストと聞くと、数字やパソコンと向き合うイメージがあるが、実際にはフットワークの軽さが求められるクリエイティブなお仕事だった。
データの探索
まずはネット上に公開されている分析に必要そうなデータを検索してもらう。広くデータを集めて、データを眺めて傾向を掴むことから始める作戦。
愛媛県警が公表している自転車盗難に関するオープンデータがあるということで、データを見てみる。
盗難の場所や日時、被害者の年齢、施錠したかどうかなど。
施錠していないケースが多いように見え、「施錠するだけで盗難が減るのでは?」と思ったが、いずくね先生曰く「本当に施錠の有無が要因かどうかは、検証が必要」とのこと。
ここからは「自転車盗難のオープンデータ」をGoogleColaboで可視化して見るためにグラフに落とし込む。
が、私は文字化けで躓いてしまい、悔しいけれど講義中にグラフに出来なかった。
次のステップはAzureの自動MLを使う。
カンパ先生といずくね先生がChatGPTを活用しながら、どんな分析をさせるか考えていく。とりあえず今回は「自転車の盗難発生が日時と関係がある」という仮説をたてて自動MLで分析を実施。
自動MLで分析を実施。データの前処理コードをChatGPTに作成してもらい、Google Colabにコピペして処理していく。
データの処理が終わったら、自動ML に入れて分析開始。結果の正当性を気にするよりも、まず試してみて結果を見ながら判断することが重要とのこと。しかし、リソース不足でエラーが発生し、後日再試行することに。
週末にアーカイブを見ながら再挑戦。
ChatGPT先生にCSVファイルを読み込ませ、「地図に盗難があった場所を地図にプロットするのが良さそうだと思うのですがどうでしょうか?」と入れてみるとスラスラとコードを書いてくれて、数回の修正であっという間にヒートマップを作ってくれた。

あんなに苦労させられた文字化けもなく、前回との違いはなんだったのか全くわからない…
ここから、人口データと合わせて人口あたりの自転車盗難件数を表示させたかったのだけれど、人口データを上手く読み込んでくれず断念。
Day16 総合実践編の続き
前回の講義ではデータを集めて、Google Colaboでなんとなく傾向を掴んだ。これは探索的データ分析(eda)というらしい。
まずはどんなデータがあって、どんな傾向があるのか、どういう対策が良さそうかを考える。
まずは前回の講座で自動MLに分析させた結果を確認。
とりあえず加重AUCの数値をみてみる。ChatGPT先生の子どもにもわかる解説によると「あるものがどれくらい上手に当てられるか?」を表す数字で、0から1の間 の数で、1に近いほど「とても上手に当てられた!」という意味になるとのこと。
今回の加重AUCは0.91426。とても良い数字だ。
精度の数値も0.98244とかなり良い。
カンパ先生がメトリックに表示されている数値をChatGPTに見てもらって、どういうことか聞いてみる。
自転車盗難があるときが1。盗難がないときが0。0のほうが1よりも多いので、AIが「とりあえず全部0って答えておけば大体は正解じゃない?」ということにしているらしい。
ChatGPT先生はこういうウソの精度が出たときの対策も教えてくれるので、とてもありがたいと思った。
つまり、この分析は失敗だったけれど、ここから次をどうするかを考えていく。
今度は天気情報も入れて、タスクを時系列予測に設定。カンパ先生が必要な要素のみのデータに加工してくれたCSVファイルを読み込ませる。

自動MLが機械学習モデルを作ってくれたので、結果をChatGPTに入れて、この結果はどうなのかを聞いてみる。
が、よく見たら、先生のお手本と私の結果違う。。。

タスクの設定か、どこかで間違ったんだろうな…やり直したいけれど我慢して先生のやり方を見学することに。やり直しは復習しながらすることにした。
次のステップはChatGPTに機械学習モデルを使って、翌日のエリアごとの自転車盗難の発生数を予測することをGoogleColaboにて出来るようにコードを書いてもらっていた。コツはよくわからないけれど、ダッシュボードに表示されている結果を全部ChatGPTにいれる!
ChatGPT先生はコードも書いてくれるけれど、その内容について「単純な平均予測よりも劣っている可能性があります」などの解釈もいれてくれて、頼もしい。
機械学習モデルの良し悪しなんて判断できないから、本当に助かるのだ。
先生がたは、自動MLのグラフ線などを目視でチェックし、ChatGPTと会話しながらデータとデータの結びつきをみながら精度をあげていく。
いずくね先生によると、新しいことをするのではなくて、この流れで何度も試行錯誤を重ねて精度を上げるだけとのこと。
この試行錯誤と改善を、先生方の倍の時間をかけたとして「本当にできんの?」と疑っている…
とはいえ以上で講義は、ほぼ終了。
後は卒制についての説明回とMicrosoftの畠山さんの講義を残すのみ。畠山さんの講義は楽しみすぎるけれど、卒制が不安すぎる。
なかしゃおとして、しゃおり先生とWEB制作のお仕事をしています。
北海道ジェイ・アール都市開発さんの新事業「TOCAR(トゥカール)」のサイトが公開されました!
しゃおり先生のnoteはこちらから!しゃおり先生の新しい講座がスタートします。クリエイターの方におすすめです!
大変お世話になっている猫山課長のnoteはこちら!
お仕事させていただいたイラストレーターの片倉さくらさんのWEBサイトはこちら。