Upgrade to Pro — share decks privately, control downloads, hide ads and more …

理論と実務のギャップを超える

Avatar for kmuto kmuto
October 11, 2025

 理論と実務のギャップを超える

理論と実務のギャップを超える
〜機械学習(・生成AI)導入の実践知〜

第58回 情報科学若手の会での発表資料です。
機械学習や生成AIを導入する上で直面する、「理論と実務のギャップ」について、共著書『先輩データサイエンティストからの指南書』(技術評論社)の執筆過程で整理した知見をもとに、具体的な4つの落とし穴の例を用いて紹介します。

# スライド内のURL
ハンズオン(colab):https://colab.research.google.com/drive/1mxAt1X4-otAP7nZlF2CLq0L_3aUDXtwI?usp=sharing
先輩データサイエンティストからの指南書:https://gihyo.jp/book/2025/978-4-297-15100-3

Avatar for kmuto

kmuto

October 11, 2025
Tweet

More Decks by kmuto

Other Decks in Programming

Transcript

  1. これまでの乗り越え方と課題 従来の方法 実務で試行錯誤しながら習得 2~3 年かけて徐々に身につける 実PJ での「ぶつかり稽古」 課題 非効率的な学習プロセス 体系的な知識が得られない

    同じ失敗を繰り返す 本発表のアプローチ 実務でよくある「落とし穴」を事前に知り、効率的に学ぶ → 今日は具体例を通じて、その一端を体験してもらいます 5 / 19
  2. 機械学習プロジェクトのフロー 1. 要件定義 → 2. PoC (モデル開発) → 3. 本番運用

    1. 要件定義 ビジネス課題を整理し、機械学習で解決できるか検討 2. PoC (モデル開発) モデルを開発し、課題を解決できるか、精度の検証を行う 3. 本番運用 開発したモデルを実際のシステムに組み込み運用 6 / 19
  3. まずはデータを読み込んでみよう 教科書的なコード import pandas as pd # CSVファイルを読み込む df =

    pd.read_csv("sales_data.csv") print(df.head()) これで問題なく動くはず... ? 9 / 19
  4. 実務における落とし穴1 :文字コードの違い エラーが発生 UnicodeDecodeError: 'utf-8' codec can't decode byte 0x93

    in position 0: invalid start byte 原因 Windows(Excel) で作成されたCSV は CP932 (Shift_JIS の拡張) で エンコード Pandas のデフォルトは UTF-8 解決策 df = pd.read_csv("sales_data.csv", encoding="cp932") 10 / 19
  5. 実務における落とし穴2 :データ型の自動推論 問題:店舗ID の先頭の0 が消える 原因 Pandas が店舗ID 「001 」

    「002 」を 整数型と自動推論 解決策:明示的にデータ型を指定 df = pd.read_csv("sales_data.csv", dtype={"店舗ID": str}, encoding="cp932") 11 / 19
  6. 機械学習モデルを作ってみよう 多項式回帰モデルを採用 気温と販売数の関係を多項式でモデル化 y = a ​ T + N

    N a ​ T + N −1 N −1 ... + a ​ T + 1 a ​ 0 : 販売数(予測したい値) : 気温(説明変数) : 多項式の次数(ハイパーパラメータ) : 回帰係数(学習で求める) やること 複数の次数 で学習し、最も性能が良いモデルを選ぶ y T N a ​ , a ​ , ..., a ​ 0 1 N N 12 / 19
  7. 実務における落とし穴4 :Notebook の限界 Notebook の利点と課題 利点 試行錯誤しやすい 可視化が簡単 学習・実験に最適 本番運用での課題

    セルの実行順序に依存する ライブラリのバージョンが不明 実験コードと本番コードが混在 解決策 本番運用を見据えた開発では .py スクリプトを使う 17 / 19