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

AI研修(Day2)【MIXI 26新卒技術研修】

AI研修(Day2)【MIXI 26新卒技術研修】

本スライドは、MIXIの2026年度新卒向け技術研修で使用された資料です。
 
MIXI 2026新卒技術研修
『AI研修(Day2)』
 
───────────────────────────────
※皆様へのお願い※ 資料・動画・リポジトリのご利用について
───────────────────────────────
公開している資料や動画は、是非、勉強会や社内の研修などにご自由にお使いいただければと思いますが、以下のような場でのご利用はご遠慮ください。
- 受講者から参加費や授業料など金銭を集めるような場での利用
(会場費や飲食費など勉強会の運営に必要な実費を集める場合は問題ありません)
- 出典を削除または改変しての利用

Avatar for MIXI ENGINEERS

MIXI ENGINEERS PRO

July 23, 2026

More Decks by MIXI ENGINEERS

Other Decks in Technology

Transcript

  1. 講師紹介:牧野 舜 牧野 舜 / まきの しゅん 職種:MLエンジニア 開発本部 たんぽぽ室

    AIモデリンググループ 学生時代 - 大学・大学院では理論物理の研究室に所属 超伝導体における量子渦の微視的理論に関する研究 経歴 - ©MIXI 企業で数理最適化、MLに関する研究開発に従事 2025年4月 MIXI 入社 事業の横断的な支援やスポーツ分析に関する研究開発に従事 2
  2. 講師紹介:⽊内 貴浩 木内 貴浩 / きのうち たかひろ / kittchy 職種:MLエンジニア

    みてね事業本部 みてねプロダクト開発部 Data Engineeringグループ 学生時代 - 大学院で音声認識の研究でML技術に触れる インターンシップなどで音声処理のML技術の研究開発 経歴 - ©MIXI 2024年4月 MIXI 新卒入社 MLOps に関する業務を経験したくて、「家族アルバム みてね」の事業部にジョイン メディアの自然言語検索基盤やMLレコメンド検索基盤の構築・運用を行う 3
  3. 講師紹介:⽥中 亮太朗 田中 亮太朗 / たなか りょうたろう 職種:MLエンジニア 開発本部 たんぽぽ室

    AIモデリンググループ 学生時代 - 大学・大学院でAIを使った読心術の研究 インターンシップなどで自然言語や画像のマルチモーダルモデルの開発 経歴 - ©MIXI 2025年4月 MIXI 新卒入社 モンストにてAIを用いた効率化ツールの開発を行う 4
  4. AI/ML/DeepLearningの分類 ⼈⼯知能 (Artificial Intelligence; AI) ⼈間のように「考える‧判断する」コンピュータの技術全般 例:チェスAI、⾳声アシスタント、⾃動運転など 機械学習 (Machine Learning;

    ML) データから⾃動で学習して予測‧判断する仕組み AIを実現する中核技術 深層学習 (Deep Learning) ⼤量のデータから複雑なパターンを学習できるML⼿法 画像認識、⾳声認識、⾃然⾔語処理で⾼精度を実現 ©MIXI 7
  5. この研修の前提 必要な前提知識 • Pythonの基本⽂法が分かればOK(数学の知識は不要) • 数式が出てきますが、直感的に理解できるレベルで説明します • ⼤学で習うような理論ではなく、実践‧エンジニアリング寄り で進めます 気軽に質問してください

    • 分からないことはその場で聞いてOK • 「そもそもこれ何?」レベルの質問も⼤歓迎 AI Coding Agentはバンバン使ってください • ©MIXI ハンズオンは AIに編集させやすい状態にしています ◦ marimo notebook を使って逐次実⾏していくのでもOK ◦ README.mdを読みながらClaude Codeに実⾏させるのでもOK 9
  6. 1日目で学んだこと 1. MLの基本構造 • 推論: 学習済みモデルを使って予測を行う • 学習: データからモデルのパラメータを最適化(loss最小化) •

    評価: metric(Accuracy、F1、mAPなど)で性能を測定 2. MLモデルの運用 • モデルのAPI化とデプロイ • 監視と継続的な改善 今日はこれをLLMに拡張します • LLMも基本的には同じ「機械学習」の枠組み • ではあるが、応用する際には異なる点も多くある ©MIXI 12
  7. 1日目の復習: 機械学習とは 「過去のデータから知⾒を得て、それを次の決定に利⽤すること」 • 過去のデータ:過去の状態‧情報 ◦ • 数値、画像、⾳声、テキスト... 知⾒:ブラックボックスな関数 f(x)

    ◦ 過去のデータには統計的なルールがあり、 それを表すf(x)を学習によりモデル化する • 決定:現在の状態 (x) から未来 (y) を予測する ◦ ©MIXI 学習した知⾒を元に、未来の結果を予測する 13
  8. LLMとは Large Language Model (LLM、大規模言語モデル) 膨大なテキストデータと計算資源を用いて構築された巨大な言語モデル どれくらい「大きい」か? • パラメータ数: GPT-3で175B(1,750億個)のパラメータ

    ◦ • 開発コスト: GPT-3クラスで数億円と呼ばれる計算費 ◦ • ©MIXI GPT-4以降はさらに多くなっているとされる 最新モデルはさらに桁違いの投資といわれている 学習データ: テラバイト以上のオーダー 16
  9. Language Model (言語モデル) とは 例:簡単な文章の続きを予測 入力: 「心も繋がる場と機会の」 予測確率: • 「創造」:

    0.8 • 「提供」: 0.1 • 「作成」: 0.1 → 文脈に合った単語ほど高い確率を持つ ©MIXI 19
  10. 言語モデルの変遷 統計的な古典モデルの例 • N-gram: 直前のN個の単語から次を予測 ◦ シンプルだが、(N+1以上の)長い文脈を考慮できない ニューラルネットワークを用いたモデル • RNN/LSTM

    (2010年代): 系列を順番に処理 ◦ 長距離依存が難しい、並列化できない (シーケンシャルな処理) ▪ • ©MIXI 長距離依存:離れた単語同士の相関くらいのイメージでOK! Transformer (2017年〜): Attentionのみで構成 ◦ 並列化可能、長距離依存に強い ◦ 現在のLLMの基盤技術 20
  11. 特徴量について コンピュータビジョン (CV) の場合 • RGB値: 数値そのものが意味を持っており、特徴量として採用できる ◦ R=255, G=0,

    B=0 → 赤色 ◦ 数値の大小が色の近さと連動して変化する ▪ ◦ 適切にスケーリングすることで連続になる ▪ ©MIXI 定量的に望ましい性質がある 例えば[0, 1]の範囲に収まるように正規化する 23
  12. 特徴量について 自然言語の場合 • Unicodeなどの文字コード: 数値の大小が意味の近さと連動していない ◦ 「犬」(U+72AC) と 「猫」(U+732B) のコード値は近いが、意味的な類似性

    とは無関係 ◦ 文字コードをそのまま特徴量として使うのは不適切 単語を「意味を持つベクトル」に変換する必要がある ©MIXI 25
  13. 分布仮説 分布仮説 (Distributional Hypothesis) 単語の意味は、その周辺に現れる単語によって決まる • 分散表現の前提となる支柱 • 人間も知らない単語が出てきたときに文脈から意味を推定する 例

    • 「犬」の周辺に現れる単語: 「散歩」「飼う」「吠える」「ペット」 • 「猫」の周辺に現れる単語: 「飼う」「なでる」「鳴く」「ペット」 • → 「犬」と「猫」は似た文脈で使われる = 似た意味を持つ 周辺単語のパターンから単語の意味をベクトルで表現して学習できそう ©MIXI 26
  14. Tokenについて Tokenとは: モデルが扱う文章の最小単位 例: 「今日は良い天気です」→ ["今日", "は", "良い", "天気", "です"]

    Subword分割 • • ©MIXI 単語単位でも文字単位でもない、効率的な分割 ◦ この研修ではモデルが入出力で扱う最小単位という理解で大丈夫 ◦ 最小単位は必ずしも単語と一致しない BPE (Byte Pair Encoding) ◦ 代表的なtoken化のアルゴリズムの一つ ◦ 多言語や未知語にも対応ができるメリット ◦ 興味のある方は調べてみてください 29
  15. Tokenについて 具体的なtokenizer • tiktoken: OpenAIが採用するtokenizer • SentencePiece: Googleが開発、多言語対応 Tokenの重要性 ©MIXI

    • LLM APIの料金は「トークン数」で計算される • Context Windowの制限もトークン数 • 後ほど説明するように生成AIではimageやaudioもtokenとして扱われる 30
  16. 温度 (Temperature) 確率分布の裾を調整するパラメータ • T : 温度パラメータ • zi: モデルの出力(logit)

    温度の効果 • 低温 (T < 1): 確率分布が尖る → 決定的に近い出力 ◦ • 高温 (T > 1): 確率分布が平坦 → 多様な出力 ◦ ©MIXI T=0.1: 「今日の天気は晴れです。」 T=2.0: 「今日の天気は春の陽気が感じられるような晴天です!」 32
  17. RNNによる系列処理 翻訳を例にした逐次処理 入力(英語): "I love cats" 出力(日本語): "私は猫が好きです" RNNの処理 1.

    "I" を処理 → 隠れ状態 h1 2. "love" を処理 → 隠れ状態 h2 (前の h1 を考慮) 3. "cats" を処理 → 隠れ状態 h3 (前の h2 を考慮) 4. h3から「私は猫が好きです」を自己回帰で生成 1番目と3番目の単語の相関を計算するには2回の処理が必要 ©MIXI 40
  18. RNNの課題 1. 長距離依存性の問題 • 文頭の情報が文末まで伝わりにくい • 長い文章になると忘却する 例: "The cat,

    which we adopted from the shelter last year, is very cute." • 主語 "cat" から離れた位置の動詞 "is" の単数形を正しく選ぶのが難しい 2. 動的に特定の情報へ注目するのが難しい • 翻訳時に「どの単語に注目すべきか」を動的に変えられない ◦ どんなdecoderの状態でも h を使用しなければならない 3. 並列化できない • 1単語ずつ順番に処理する必要がある • GPUの並列計算能力を活かせない ©MIXI 42
  19. seq2seq with attention Cross Attention: 翻訳時にEncoderの特定の表現に「重み付け」して注目 入力(英語): "I love cats"

    出力(日本語): "私は猫が好きです" 1. Encoderが全単語を処理 → h1, h2, h3 2. Decoderが「猫」を生成する時、h1, h2, h3 のどれに注目すべきか? 3. Attention: "cats" の h3 に高い重みを付けて注目 4. 重み付き平均を計算して”猫”を重視した状態 c3 を生成して利用する alphaは h3が多く考慮されるように重み付けされる ©MIXI 43
  20. seq2seq with attention メリット • 長距離依存を解消 • 翻訳時にどの単語に注目しているか可視化可能 課題 •

    依然としてRNNベースなので、並列化できない この研修では、単語同士の相関を動的に考慮する仕組み を導入したくらいの理解でOK!! ©MIXI 45
  21. seq2seq with attentionの課題 RNNの構造上の限界 • シーケンシャルな処理: 前の時刻の計算が終わらないと次に進めない • 学習の並列化ができない: GPUを活かせない

    • 学習時間が長い: 大規模データでの学習が困難 Attentionはgoodだが、RNNの構造的制約がボトルネック → TransformerがAttentionのみでアプローチ、上手くいく ©MIXI 46
  22. Transformerの提案 "Attention Is All You Need" (2017) Attentionの概念を中心に構成したアーキテクチャ メリット 1.

    大規模な並列化が可能: 全トークンを同時に処理 2. 長距離依存に強い: 全トークン間の関係を直接計算 3. 学習が高速: GPUを最大限活用 Vaswani et al., “Attention Is All You Need”, 2017 ©MIXI 48
  23. 位置エンコーディング Transformerはそのままでは入力系列の位置を考慮することができない 例: “I” “love” “cats” と “love” “I” “cats”

    ※ Graphを扱う場合はむしろ都合がよかったりする (牧野が昔やっていた) 位置エンコーディングを加えることで系列内での位置を考慮 Vaswani et al., “Attention Is All You Need”, 2017 ©MIXI 49
  24. Scaled Dot-Product Attention Scaled Dot-Product Attention • Q: Query行列 •

    K: Key行列 Q, K, V の具体的な表式はモデルの中での使用の され方に依ります。 • V: Value行列 余裕がある方はQ, K, V に適当な行列を仮定して みて実際に計算をしてみましょう (行列に対するsoftmaxは各行に関して適用) • dk: スケーリング係数 ©MIXI 50
  25. Attentionの計算式 直感的説明 ©MIXI 1. QとKの類似度を計算: どのKeyに注目すべきかの重みの計算 2. Softmaxで確率分布に変換: 重要度を0〜1の範囲に正規化 3.

    Valueを重み付け合計: 計算した重みに応じて重要な情報を取り出す Scaled Dot-Product Attentionの計算の様子. ChatGPTの画像生成機能で作成 51
  26. Cross -Attention と Self-Attention Cross-Attentionの処理 翻訳の場合のように、decoder側からencoder側の状態を参照する 入力と出力の相関に注目 Qはdecoderから作られ、K, Vはencoderから作られる Self-Attentionの処理

    入力系列内の単語同士の関係を学習 1. 各単語をQuery、Key、Valueに変換 2. 各単語が他の全単語との相関を計算 3. 重要な単語に注目して新しい表現を生成 文脈を考慮した動的な表現が得られる ©MIXI 52
  27. Multi-Head Attention 複数のAttentionを並列実行 • 異なる視点(head)で同時に情報を抽出 • 例:8 heads → 8種類の注目パターンを学習

    • 多様な関係性を捉えられる • ◦ Head1: 主語と述語の関係 ◦ Head2: 修飾語と被修飾語の関係 ◦ Head3: 文脈的な依存関係 性能向上につながるとされる Vaswani et al. “Attention Is All You Need”, 2017 ©MIXI 54
  28. Transformerの詳細 Transformer Block の構成 1. Multi-Head Self-Attention: 入力同士の関係を学習 2. Residual

    Connection (残差接続): 3. Layer Normalization: 学習を安定化 4. Feed Forward Network: 各トークンを独立に変換 5. 再びResidual Connection と Layer Normalization Vaswani et al. “Attention Is All You Need”, 2017 ©MIXI 55
  29. Transformerの自己回帰の仕組み 基本的にRNN時代と同じ 1. 開始トークン <BOS> から生成開始 2. 1トークン目を予測 3. 予測した1トークン目をdecoderの入力に追加

    4. 2トークン目を予測 5. 繰り返し... • 生成は逐次的に自己回帰していく • 学習はmaskを利用することで並列化可能! ©MIXI 57
  30. GPT TransformerのDecoderベース • GPT-1 (2018): Transformer Decoder + 事前学習 •

    GPT-2 (2019): スケールアップ(15億パラメータ) • GPT-3 (2020): さらにスケールアップ(175億パラメータ) • ©MIXI ◦ In-context Learning (Zero/Few-shot) ◦ 重みを更新することなくtaskに適応させることができる ◦ 数億円と呼ばれる学習費、175Bパラメータ GPT-4 (2023): マルチモーダル、高精度 ◦ パラメータや費用はさらに大きくなっていると考えられる ◦ 強化学習 (RLHF)の活用 58
  31. BERT TransformerのEncoderベース、文章理解・分類に強み Bidirectional Encoder: 前後両方向から文脈を理解 • 用途 • 文章分類(スパム判定、感情分析) •

    固有表現抽出(人名、地名) • 質問応答 GPTとの比較 • BERT: 理解に特化(Encoder) • GPT: 生成に特化(Decoder) ©MIXI 59
  32. ハンズオン:Attentionの可視化 https://github.com/mixigroup/2026BeginnerTrainingAI/tree/main/day2/01-attention タスク:Attemtionの可視化 やること • Attentionの計算式を実装して重みを⾒てみる • Transformer encoder (BERT)

    によるself-attentionのattention mapを可視化する 確認ポイント • クエリに対して重みがどのように分布するか • Attention mapで相関が強そうなグリッドと何を表しているかの考察 ©MIXI 60
  33. 発展: Attentionの計算量と最適化 計算量の問題 Attentionの計算量: 1層あたり、トークン長 n に対して • メモリも 必要

    (attention mapの保持) Sparse Transformer • 注意先を”上手く”間引いて計算量を削減 • 全トークンではなく、近傍や特定パターンのみに注目 Flash Attention • GPUメモリへのアクセスを最適化して活用 • Attention自体は同じ • 興味のある方は調べてみてください ©MIXI 61
  34. 発展: 推論向きGPUの性質 演算速度より「帯域」が重要 • LLMの推論は メモリバウンド • パラメータをメモリから読み出す速度がボトルネック 具体例 •

    H100 GPU: メモリ帯域 3TB/s • A100 GPU: メモリ帯域 2TB/s • → H100の方が推論が速い(FLOPSだけで決まらない) 量子化の重要性 • FP16 → INT8 に変換すると、メモリ転送量が半分 • 推論速度が理論上は2倍に ©MIXI 62
  35. 発展: KVキャッシュ 過去の計算結果を再利用して高速化 問題: 毎回全トークンのAttentionを計算するのは無駄 解決: Key と Value を保存(キャッシュ)して再利用

    仕組み 1. 1トークン目生成: K、V を計算してキャッシュ 2. 2トークン目生成: 過去のK、Vを再利用、新しいトークンのK、Vだけ計算 3. 3トークン目以降も同様 効果 • 2文字目以降が速くなる • 興味がある方は調べてみてください! ©MIXI 63
  36. 事前学習 事前学習 (Pre-training) 大規模な「穴埋め問題」による学習 (Pretext task) • 次単語予測(GPT)やMasked LM(BERT) •

    ラベルなしデータで学習可能 • 数兆トークン規模のデータ(Web、書籍、論文、コードなど) • 基盤モデルとしての能力を学習する ©MIXI 66
  37. Perplexity Perplexity (PPL): モデルが次の単語をどれだけ正確に予測できているか 評価用のデータ[y0, y1, …, yN]が与えられたとき • 低い:

    候補の単語を絞れている • 高い: 候補の単語を絞れてない 直感的な理解 • PPL = 2 → 次の単語の候補が幾何平均2個、絞れている • PPL = 100 → 次の単語の候補が幾何平均100個、絞れていない ©MIXI 67
  38. スケーリング則 スケーリング則 (Scaling Laws) 計算量、データ、パラメタを増やすとロスがべき乗で下がる • L: Loss • C:

    計算量 • alpha: べき指数 大きくすればするほど賢くなることが示唆される ©MIXI 68
  39. 事後学習 アライメントと呼ばれる分野 1. SFT (Supervised Fine-tuning) • 「問い」と「模範解答」のペアで学習 • QA形式でのタスクが行えるようにする

    2. Preference Optimization 人間の好みを反映させる (A/Bどちらがよいかの選好) • PPO (Proximal Policy Optimization): Actor Critic型のRLアルゴリズム • DPO (Direct Preference Optimization): 選好データから直接、最適化する • GRPO (Group Relative Policy Optimization): グループ内の相対評価を使用したRL ◦ ©MIXI PPOと比べて安定しやすく、計算コストも低い (Critic networkが不要) 70
  40. 発展: 選好データから報酬モデルを作成する 人間の選好データ: prompt x を固定したときに、出力Aと出力Bのどちらが良いか? 好まれる回答をyw, そうでない回答をylとする 報酬モデル: 入力x

    に対する出力yの報酬値 (好ましさ)を返す lossを最小化して報酬モデルを学習 (Bradley-Terryモデル) ywがylよりも好まれる事象に関する対数尤度 この報酬モデルを利用して強化学習 ©MIXI 71
  41. MoE (Mixture of Experts) 複数の専門家ネットーワークを持ち、入力に応じて一部のexpertを使用 1. 複数の専門家ネットワーク(Expert)を用意 2. ゲートネットワークが入力を見て、どのExpertを使うか選択 3.

    選ばれたExpertだけが計算を行う パラメータ数は大きいままだが、計算量を少なくすることができる ©MIXI DeepSeek-AI et al., “DeepSeek-V3 Technical Report”, 2024 72
  42. CoT (Chain of Thought) 「思考過程」を出力させることで、論理的推論を可能にする Wei et al. “Chain-of-Thought Prompting

    Elicits Reasoning in Large Language Models”, 2022 の例を日本語にしたもの. ChatGPTの画像生成で作成 ©MIXI 73
  43. CoT (Chain of Thought) Few-shot CoT 実際にお手本の思考過程をいくつか提示する 前slideの例 Zero-shot CoT

    promptにstep by stepで考えてくださいとだけ書いておく Step by stepで考えてください。 Q: 学食にはリンゴが23個ありました。 もし彼らが昼食を作るのに20個使い、さらに6個買ったと したらリンゴは全部で何個になりますか?? ©MIXI 74
  44. CoT (Chain of Thought) CoTのメリット • 数学的な問題などで効果を発揮 • 思考過程が出力されることでdebugがしやすくなる •

    In-context learningのため手軽 CoTのデメリット • 消費するtokenが増える、応答に時間がかかる • (当時は) promptの書き方への依存性が高い • 簡単な問題に対しては冗長になることがある ©MIXI 75
  45. 推論モデル In-context learningによるCoTでは限界がある 強化学習により推論プロセスを最適化したモデル: 推論モデル Process Reward Model (PRM) 結果だけでなく、推論プロセスの各stepに対して報酬を返す

    ※ PRMの作り方に興味がある人向け: Lightman et al. “Let’s Verify Step by Step” など DeepSeek-R1 DeepSeek-V3をベースにGRPOとルールベースの簡単な報酬を使って強化学習 明示的なPRMがなくても推論プロセスが最適化される ※ 常に推論モデルが良いとは限らない: tokenの消費増やresponseが遅いなどのデメリットも ある。(でも最近は早い推論モデルも出てきてる、、、) ©MIXI 76
  46. 発展: 推論時スケーリング 推論時に計算量を増やすことでタスク性能が向上する ※ 興味のある方は調べてみてください 1つの推論を強化 長いCoTを使う (思考stepを増やす) Self-Refine(自己フィードバックで反復改善)Madaan et

    al., 2023 複数試行する Self-Consistency(複数サンプル + 多数決)Wang et al., 2022 LLM Monkeys(大量サンプリング + 選択)Brown et al., 2024 探索する Tree of Thoughts(思考を木構造で探索)Yao et al., 2023 ©MIXI 77
  47. 発展: 推論時スケーリング ©MIXI DeepSeek AI et al., “DeepSeek-R1 incentivizes reasoning

    in LLMs through reinforcement learning”, 2025 より引用。強化学習のstepが進むにつれて scoreとresponseの平均長(CoT由来)が上がっていく様子が観察できる 78
  48. LLMの評価 ベンチマークが利用される • MMLU: 57科目の知識理解タスク • HumanEval: コード生成精度 • GSM8K:

    数学的推論 • その他多数 Chatbot Arena (人間が評価) • 人間がブラインドで2つのモデルを比較 • Elo レーティングでランキング • 人間によるリアルな使用感を反映 ©MIXI 79
  49. 画像生成の基本 データの分布からサンプリング • P(x): 画像の確率分布 ◦ • ※ textやclass labelによる条件付き分布も考えられる

    x: 生成される画像 基本的な流れ • 分布 P(x) を近似するような分布を学習する • 学習した分布から新しい画像をサンプリング ©MIXI 82
  50. ViT (Vision Transformer) 画像をパッチに分解してトークン化 仕組み: 1. 画像を16×16ピクセルのパッチに分割 2. 各パッチを線形変換してembedding 3.

    位置エンコーディング追加 4. Transformer Encoderで処理 メリット Dosovitskiy et al. “An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale”, 2020 • 長距離依存を捉えやすい: 離れたパッチ間の関係も学習 • スケーラビリティが高い: データとパラメータを増やすと性能向上 ©MIXI 84
  51. 具体的な画像生成モデル GAN (Generative Adversarial Network) • Generator(生成器)とDiscriminator(識別器)の対立学習 • かつては主流だったが、学習が不安定 (だけど理論的にはすごく面白い!)

    拡散モデル (Diffusion Model) • 現在の主流 • 画像にノイズを加える過程と、ノイズを除去するdenoise過程を学習 • 高品質で安定した生成 拡散モデルは枠組み • 具体的なdenoise器(U-NetやViT)を使用 • DiT (Diffusion Transformer): ViTをdenoiserに採用したもの ©MIXI ※ U-NetはCNNベース 85
  52. 拡散モデルの学習 DDPM (Denoising Diffusion Probabilistic Models) がベース 学習の流れ: 1. 訓練画像にノイズを段階的に加える(拡散過程)

    2. 各段階で「どんなノイズが加わったか」を予測するモデルを学習 3. 学習したモデルで、ノイズから画像を復元(逆拡散過程) 損失関数: : 実際に加えたノイズ • • ©MIXI : : モデルが予測したノイズ 86
  53. 発展: LDM (Latent Diffusion Model) 潜在空間での効率的な処理 問題: 高解像度画像(512×512など)での拡散は計算コストが大きい 解決: 画像を低次元の潜在表現に圧縮してから拡散

    仕組み: 1. VAE Encoder: 画像 → 潜在表現 (元よりもコンパクトな特徴表現) 2. 拡散過程: 潜在空間で実行 3. VAE Decoder: 潜在表現 → 画像 代表例 • ©MIXI Stable Diffusion: LDMの最も有名な実装の1つ 88
  54. 発展: LoRA (Low-Rank Adaptation) 小さな追加重みで特定のスタイルを学習 問題: 特定のスタイル(例: アニメ風)やタスクに対応させたい LoRA: 小さな追加重み(低ランク行列)だけを学習

    • PEFT (Parameter Efficient Fine Tuningのアルゴリズムの1つ) • W: 元の重み(固定) • B, A: 低ランク行列(学習) • 学習データ・時間・メモリが少なくて済む • ※ 拡散モデル専用というわけではなく、汎用的なFT手法 ©MIXI 89
  55. モーダルとは データの形式・種類 • テキスト: 文字列 • 画像: ピクセル • 音声:

    波形 • 動画: 画像+音声の時系列 📢りんご♪ マルチモーダルモデル 異なるモーダルを同時に扱うモデル • 各モーダルをトークン列に変換して処理 • 異なるモダリティ間でもattentionを計算 りんご ChatGPTの画像生成機能で作成 テキスト・画像・音声を統合的に理解 (余談: 人間はりんごをどのように理解してるでしょうか?) ©MIXI 91
  56. マルチモーダルモデルの構成 基本的な構成 1. 各モーダルのEncoder: a. テキスト: Transformer b. 画像: ViT

    (Vision Transformer) c. 音声: Whisper 2. 共通の特徴空間に射影: Embedding 3. 統合モデル: Transformer Decoder 異なるmodality間でのattention • テキストトークンが画像パッチに注目 • 画像パッチがテキストトークンに注目 「この画像の中の猫の部分を抜き出して」のようなタスクができるようになる ©MIXI 92
  57. CLIP (Contrastive Language-Image Pre-training) 画像とテキストを同一の特徴空間に埋め込む 学習方法: 1. 大量の(画像、テキスト)ペア 2. Contrastive

    Learning: • 対応ペアは近く、非対応は遠くなるように学習 構造: • Image Encoder: ResNet, ViT • Text Encoder: Transformer • 共通埋め込み空間: 両方を同じ次元に射影 応用 • Zero-shot画像分類: 未知クラスも分類可能 • 画像検索などにも応用可能 ©MIXI Vaswani et al. “Learning Transferable Visual Models From Natural Language Supervision”, 2021 93
  58. 余談: 家族アルバム みてね での活用事例 億単位のメディアを検索できる CLIPで画像解析したメディアをS3 Vectors というVectorDBに保存して、低コストで ユーザがメディアを自然言語で検索できる ようにしています

    LINEヤフー株式会社が開発したclip-japanese-base を利用しており、日本語特化の検索が可能 ※ 関連ブログ等 • 億超えの写真・動画データを支える自然言語検索基盤とS3 Vectors導入の道のり • みてねの大規模なメディアを自然言語検索できるようにしました • LINE ヤフー Tech Blog 高性能な日本語マルチモーダル基盤モデル「clip-japanese-base」を公開しました ©MIXI 95
  59. Whisper: 音声をトークン化 OpenAIの音声認識モデル 構造: 1. Audio Encoder: 音声波形 → 特徴量

    2. Transformer Encoder: 特徴量 → 埋め込み 3. Transformer Decoder: テキスト生成 多言語対応 • 99言語の音声を認識 • 音声翻訳も可能(英語以外 → 英語) → 音声もTransformerで扱える ©MIXI 96
  60. 発展: unCLIP (DALL-E 2) CLIPと拡散モデルを組み合わせた text-to-image (DALL-E 2 のアプローチ) 仕組み:

    1. テキストをCLIPで埋め込み 2. CLIP埋め込みから画像埋め込みを生成(Prior) 3. 画像埋め込みを条件に、拡散モデルで画像生成(Decoder) ◦ 拡散モデルでは条件付けができることを思い出そう unCLIPのアーキテクチャ Ramesh et al. “Hierarchical Text-Conditional Image Generation with CLIP Latents”, 2022 ©MIXI 97
  61. LLMのAPI 2026年4月現在の主要なLLM API 各社が学習したLLMをREST APIの形で提供している プロプライエタリ • OpenAI API ◦

    • Anthropic API ◦ • GPT-4o / GPT-5系 / o-series(推論特化)など Claude 4系(Opus / Sonnet など) Google Gemini API ◦ Gemini 2.5 / 3系(Pro / Flash など) オープンウェイトモデル (APIも提供している) ©MIXI • DeepSeek • Qwen 99
  62. APIの性質 料金体系 「トークン」ベースでの従量課金 • 入力トークン • 出力トークン • 思考トークン (推論モデルの場合に発生する。見えにくいので注意)

    トークンあたりの値段や消費量はモデルによって異なる Stateless API • LLM APIは各リクエストを独立して処理 • 履歴、コンテキスト管理はアプリ・ユーザー側の責務 ©MIXI ◦ LLMを賢く使うにはcontextの管理のウエイトが大部分を占める ◦ そのための方法論が色々と議論されている 100
  63. ハンズオン: LLM APIに触れてみよう https://github.com/mixigroup/2026BeginnerTrainingAI/tree/main/day2/03-llm-api やること • genai sdk を使用 •

    基本的なチャット機能を実装 • APIの性質を確認する 確認ポイント • messagesに履歴を含めないと会話が続かない • その他の属性などの観察 ©MIXI ◦ Temperature, thinking effort, その他のパラメタについて観察 ◦ 余裕があれば構造化出力も 101
  64. 推論エンジン セルフホスト型のLLM推論環境: 自分でAPIを立てたいときに利用可能 • vLLM: ◦ KVキャッシュなどで最適化された高速推論サーバー ◦ OpenAI互換APIとして利用可能 •

    その他に、ollama, LM Studioなど、、、 ◦ ローカルで手軽にLLMを実行可能 (メモリが足りれば) ◦ 興味のある方は調べてみてください! ©MIXI 102
  65. Context (Context Window) 扱える情報量には限界がある Context Window: モデルが一度に処理できるトークン数 だいたい ~1M tokens

    程度までサポートされている印象 • ◦ ※ 最新の情報を調べて参照してください 課題 • 長い会話や文書を扱うと上限に達する • 長くなるほど性能・応答速度・コストが悪化する 対策 • 古い情報を削除・要約する • 外部記憶にしておいて必要な際に参照する ©MIXI 103
  66. 短期記憶と長期記憶 短期記憶: 履歴 (messages) への追加 • Context Windowの範囲内で保持 • 直近の会話やtoolの実行履歴

    長期記憶: 外部知識 からの注入 • DBなどに知識を保存 ◦ 最近はmdに書いておくとかも、、、 • 必要な場面で必要な情報を参照してcontextに注入 ©MIXI 104
  67. LLMの知識の壁 LLMが持っていない知識 1. 学習時点以降の最新情報 a. それ以降のニュースや出来事は知らない 2. 秘匿性の高い社内文書 a. 当然、学習データに含まれていない

    これらをcontextに入れるにはアプリケーション側で情報や文書を取得 したうえでcontextに注入する必要がある ©MIXI 105
  68. Function calling LLMが「ツール実行の指示」を出し、結果を受け取る連携 仕組み: 1. tool定義をLLMに渡す 2. LLMが必要に応じて適切なtoolとパラメータを選択 3. アプリ側でtoolを実行する

    4. Toolの実行結果をLLMに返す 5. LLMがtool実行の結果を踏まえて回答を作成 Function Callingのシーケンス図 引用元:OpenAI Document - Function calling ©MIXI 106
  69. RAG (Retrieval-Augmented Generation) 外部知識を検索して補完 1. 文書を検索可能な形で保存 (Vector DB/ RDB /

    その他の検索基盤など) 2. 質問から検索クエリを生成 3. クエリから関連文書を検索 4. 検索結果を踏まえてプロンプト構築 5. LLMが回答生成 ※ 検索はVector検索に限らない • Sparse検索などの古典的なアルゴリズムも利用可能 • RDBにクエリを投げるなども考えられる 重要なのは、contextとして有用な情報を補完すること ©MIXI 107
  70. 構造化出力 JSON Schemaなどによる出力形式の強制 問題: LLMの出力は確率的なので、パースが失敗する可能性がある 従来: • プロンプトでJSON形式を指定 • 出力から正規表現で抽出

    • 失敗時にリトライやfallback 代表的なAPIでは、スキーマを指定して出力形式を制御できる • 確率的な挙動を制御 • パース可能な出力を高い確率で得られる ©MIXI 108
  71. ハンズオン: function calling, tool use https://github.com/mixigroup/2026BeginnerTrainingAI/tree/main/day2/04-llm-tool やること • 天気取得、計算機などの関数を定義 •

    LLMが適切な関数を選択して実行 • 結果を元に回答生成 確認ポイント • ©MIXI tool実行の流れ 109
  72. LLMを応用したAgent LLMを使用したagentの主要な要素 (LLM Powered Autonomous Agents より引用) • Planning ◦

    Taskを小問題に分割して複雑なtaskを解く計画をたてる ◦ 過去の行動と観測結果を元に計画の改善しながら目標達成へ ▪ • Memory ◦ • 短期記憶と長期記憶 Tool use ◦ ©MIXI LLMの高度な推論能力を活用 model自体にはない知識や能力(学習後の情報、外部APIの実行など) 112
  73. Workflow と Agent Workflow • 事前に決められたステップを順番に実行 ◦ • 例: ユーザーが食べたいものを入力

    -> LLMでレシピ生成 予測可能で制御が効くが、自律的ではない Agent • LLMが実行プロセスを自律的に判断する • 自律的で柔軟だが、制御が難しい場合もある ※ そんなにきっちり定義として区別する必要もないと思いますが、 workflowのように制御して使う考え方は重要なので紹介。デバッグがしやすい などのメリットもある。適材適所で使うのが良いと思っています ©MIXI 114
  74. ReAct (Reasoning + Acting) Thought → Action → Observation の繰り返し

    1. Thought: 「次に何をすべきか考える」 2. Action: ツールを実行 3. Observation: 結果を観察 4. 1に戻って終了まで繰り返し 現代のAgentの基本的なideaの1つ • • ©MIXI 当時はThought, Action, Observationを全て出力に書かせていた ◦ 当時は推論モデルがなかったのでCoTの側面もあると思う ◦ デバッグがしやすいというメリットもある Ideaとして重要なので紹介 116
  75. Plan and solve タスクを分担し、制御性とモデルの使い分けを向上 1. Planning: タスクを細かいステップに分解 2. Solving: 各ステップを実行

    3. Verification: 各ステップの結果を検証 タスクを分担することで • workflowのように制御がしやすくなる • それぞれのtaskに特化した処理が行える ◦ • ©MIXI モデルの切り替えなど デバッグ、開発がしやすい 118
  76. LLMアプリケーションの評価 LLMアプリケーションの評価には2つの方向性がある 出力の評価 • 想定回答と実際の回答を比較してscore化する ◦ • 例えば llm as

    a judgeやレーベンシュタイン距離、類似度で評価する 比較的、取り組みやすい 出力までの過程の評価 • 思考過程やtool呼び出しが上手くいっているか • tool呼び出しの結果、有効なcontextを追加することができているか ◦ • ©MIXI 例えばRAGにおける検索精度の評価など こちらも実施したい場合は設計段階から念頭に置いておくと良い 120
  77. オフライン評価とオンライン評価 オフライン評価 • テストデータセットで事前に評価 ◦ • ragasなどを使用すると良い デプロイ前に性能を確認 オンライン評価 •

    本番環境でのユーザーフィードバック ◦ • ©MIXI フィードバックを蓄積する仕組みが必要になる 実際のユーザー評価の反映と改善 121
  78. LLMアプリのライフサイクル 基本的なライフサイクル 1. オフライン評価でbaselineを確立 2. デプロイ 3. オンライン評価で継続的に監視 4. フィードバックを元に改善

    ※ langsmith, langfuseなどのライフサイクルの管理ができるライブラリもある 実際の開発ではまずはbaselineの作成までを済ませて改善していくのが大事 従来のMLシステムと比べればbaselineの作成は手軽にできる印象 ©MIXI 122
  79. 今日学んだこと 1. LLMの内部構造 • 言語モデル、分散表現、トークン化 • Attention機構とTransformer • GPT、BERT、最新トレンド(MoE、CoT、推論モデル) 2.

    画像生成とマルチモーダル • 拡散モデルの仕組み • ViT、CLIP • テキスト・画像・音声の統合 ©MIXI 125
  80. 今日学んだこと(続き) 3. LLMアプリケーション • API、Context、RAG • function calling、構造化出力 4. AI

    Agent • workflow, agentic loop • ReAct、Plan and solve • LLM-as-a-judge、Human-in-the-loop ©MIXI 126