yoppa.org


芸大 – 人工知能と創作 2025

人工知能、機械学習、深層学習、生成AI / Teachable Machineで機械学習体験

スライド資料

本日の講義では、まず人工知能(AI)、機械学習(ML)、深層学習(DL)、および生成AI(GenAI)の定義とそれぞれの特徴について解説します。その後、Teachable Machineを使った機械学習の基本的な体験を通じて、実際にモデルを訓練し、画像分類を行う流れを体感してもらいます。特に転移学習の仕組みと少数のデータで高精度な判別が可能となる理由についても触れます。最後に、生成AIの本質であるTransformerモデルに焦点を当て、次回へとつなげます。

本日の内容

  1. 前回の課題の解説
    • 人工知能、機械学習、深層学習、生成AI、それぞれの定義と意味
    • GPTとは?
  2. 機械学習について理解する
    • Teachable Machineで機械学習体験!
  3. 生成AIの本質に迫る: Transformerについて
    • ニューラルコンピューティングからGPTへと至る30年の歴史

生成AIの基本用語を理解する

  • 4つの用語の定義
  • 人工知能 (Artificial Intelligence, AI)
  • 機械学習 (Machine Learnig, ML)
  • 深層学習 (Deep Learning, DL)
  • 生成AI (Generative AI, GenAI)
  • GPTについて
  • GPTとは?
  • 「G」「T」「P」の意味

「人工知能」「機械学習」「深層学習」「生成AI」それぞれの定義と意味

映像を視聴
Introduction to Generative AI

height:480

ポイント:

  • AI、ML、DL、Gen AIの定義
  • 学習について (教師あり学習、教師なし学習)
  • 深層学習、ディープニューラルネットワークについて
  • 生成AIは深層学習の一部
  • 生成モデルと識別モデル
  • 大規模言語モデル: PaLM、LaMDAなど
  • Transformerモデルの重要性
  • Text-to-Text、Text-to-Image、Text-to-Videoなどの様々な生成AIモデル

Teachable Machineで機械学習体験

height:460
Teachable Machine

  • 本格的な生成AIについて考えていく前段階として、機械学習の基本を学ぶ
  • 教師あり学習 (転移学習) の基本の流れを体験
  • 画像読み込み → ラベル付け → 学習 → クラス分け (判別)
  • 様々な画像で試しながら実感してみる!

実習: Teachable Machineで機械学習

まずは学習を試してみる

  • Teachable Machineで新規のImageプロジェクトを作成
  • 数種類 (クラス) の画像セットをWebカメラで撮影
  • 「Train Model」ボタンで学習開始
  • Previewで確認、いまいちな場合は画像の撮影からやり直し

最初は「Image Project」が簡単なのでおすすめです。どのような画像のセットを学習させると面白いか考えながらいろいろ試してみましょう!

学習モデルを書き出す

Teachable Machineでは学習させたモデルを書き出してプログラムで利用することが可能です。様々な開発環境に対応して、サンプルのソースコードの生成まで簡単に行うことが可能です。

対応している環境

  • Tensorflow
  • Tensorflow Lite
  • Tensorflow.js
  • p5.js + ml5.js ← 今回はこちらを使用

学習モデルの書き出し手順

  • Teachable Machineで新規のImageプロジェクトを作成
  • 数種類 (クラス) の画像セットをWebカメラで撮影
  • 「Train Model」ボタンで学習開始
  • Previewで確認、いまいちな場合は画像の撮影からやり直し
  • 問題無ければ「Export Model」ボタンを押す
  • Tensorflow.js > Upload (shareable linke) > p5.jsを選択して「Upload my model」ボタンを押す

書き出し設定

height:500

学習させたモデルをp5.jsに読み込む

学習してアップロードしたモデルのURLを適用

... (前略) ...

// 学習してアップロードしたモデルのURL
// !!ここに自分のモデルのURLを入力!!
let imageModelURL = 'https://teachablemachine.withgoogle.com/models/8dyZwOgL4/';

... (後略)...

実行結果

height:500

ポイント! サンプルコードのどこで分類を行っているのかを読み解く

重要なのは、下記の関数

// 現在のビデオフレームを分類する
function classifyVideo() {
  classifier.classify(flippedVideo, gotResult);
}

// 結果が得られたとき
function gotResult(results) {
  // 結果は信頼度順に配列に格納される
  // console.log(results[0]);
  label = results[0].label;
}

重要なのは、results[] 配列

  • 画像を解析してその確度 (そのクラスである確率) が高い順番に配列に格納されている
  • ラベル名 (label) と確度 (confidence) が取得できる
  • 例えば一番確度の高い結果のラベルとその確度を取得するには
let label = result[0].label; //ラベル
let confidence = result[0].confidence; //確度

分類結果のラベル (文字列) と信頼度 (0.0 – 1.0 の値)の一覧を表示

分類結果のラベル (文字列) と信頼度 (0.0 – 1.0 の値)の一覧を表示するサンプル

実行結果

height:500

Emoji Cam

ちょっと工夫してみる。表情によって絵文字を表示するカメラのサンプル。この例では、普通の顔 (normal)、笑顔 (smile) 、悲しい顔 (sad) の3種類を学習してみました。

実行結果

height:400
height:400

なぜ少数の画像で判別できるのか?

  • 画像のクラス分け (Image classification)
  • 本来であれば膨大な学習データが必要
  • 画像 + ラベルのセット

大規模な画像データベースの例: ImageNet

ImageNet

height:400
  • 物体認識の研究で用いるために設計された大規模な画像データベース
  • 2024年10月現在、14,197,122個の画像を学習

転移学習 Transfer Learning

  • Teachable Machineが少数の画像で学習できる原理
  • あるタスクで学習したモデルを、関連する新しいタスクに適用させる手法
  • ゼロからネットワークを学習させるよりも高速で簡単
  • 学習にかかる時間を短縮できる
  • 学習対象となるサンプルデータの不足を補うことができる

転移学習はどのように動作しているのか

height:480

実習: Image Projectで遊んでみる!

  • Teachable MachineのImage Projectで遊んでみましょう
  • どのような判別をさせてみたら面白いことができそうか?
  • 画像を学習させてみる
  • イラストを描いて判別させてみる
  • ジェスチャーを学習させてみる
    ..etc.

転移学習と大規模言語モデル(LLM)

大規模言語モデル(LLM)とは?

  • 大量のテキストデータで事前学習された言語モデル (GPT、Geminiなど)
  • とてつもない量のデータが事前学習されている
height:400

LLM: 人間が一生で読むテキスト量を遥かに超える

  • GPT-5(推計): 約114兆トークン
  • 1トークン = 約4文字とすると、約456兆文字
  • 人間: 一生に平均2,000冊の本を読むという推計があり
  • 1冊の本を平均300ページ、1ページを平均500文字とすると
  • 1冊あたり15万文字
  • 一生の読書量 = 2,000冊 × 15万文字/冊 = 3億文字
  • 456兆文字 ÷ 3億文字 = 約152万倍!!

転移学習とファインチューニング

  • なぜ大規模言語モデル(LLM)は少数のプロンプトで高精度な応答が可能なのか?
  • LLMの巨大な事前学習モデル
  • この巨大な事前学習モデルをベースにして、特定のタスクに合わせて微調整
  • つまり、転移学習の仕組みの応用 → ファインチューニング (Fine-tuning)

転移学習(左)とファインチューニング(右)

事前学習 (Pre-training) と微調整 (Fine-tuning)

  • 事前学習: 大量のテキストデータで一般的な言語パターンを学習
  • 微調整: 特定のタスクやドメインに合わせてモデルを調整
  • 転移学習 (Transfer Learning)
  • 事前学習で得た知識を新しいタスクに適用
  • 少数のプロンプトで高精度な応答が可能に

次回予告 – 生成AIの本質に迫る

GPTとは? GPTに至る歴史

次回はいよいよGPTについて迫っていきます! 事前に予習したい方は以下のビデオを視聴してみてください。

ChatGPT: 30 Year History | How AI Learned to Talk

height:460