2. 人工知能の仕組み,責任ある活用
(コンピューターサイエンス)
1
金子邦彦
謝辞:この資料では「いらすとや」のイラストを使用している
今日の内容
情報工学の基本的な枠組み「対象・構造・条件」、
プログラミング基礎(条件分岐・繰り返し)AI
技術の関連
機械学習と知的ITシステムの違いを理解,AIの幅
広い応用を確認
テキストからの画像合成,その基礎となるGAN
仕組を理解
AIの誤りやデータの偏りを認識し,責任ある活用
判断力を養う
演習ではTensorFlow Playground等でAIの学習・探
索過程を確認,動作原理を体得
2
2-1 振り返り
3
情報工学の三大要素「対象・構造・条件」
情報工学の基本は「対象・構造・条件」の3つで整理
きる.
対象:扱うデータや対象物
構造:問題が展開される空間や枠組み
条件:解を求める基準や制約
日常の例:「近くのコンビニを探す
対象:コンビニ店舗リスト
構造:道路や歩道のネットワーク
条件:歩道で一番近い(直線距離)
対象・構造・条件のどれかが変われば,答えも変わる.
4
1回と第2回の内容を,「対象・構造・条件」で
整理
1回(Scratch
対象:スプライト(キャラクター)
構造:ステージ(座標空間)
条件:「もし端に着いたら跳ね返る」10歩動かす
5回繰り返す」
2回(AI
対象:画像データ,テキスト,数値データセット
構造:ニューラルネットワークの層と接続,グリッ
上の通路と壁
条件:「正しく分類する」「最短経路で到達する」
5
1回プログラミング基礎とAIの連続性
1回で学んだプログラミングの基礎は,AIとも関係がある
条件分岐「もし〜なら〜,でなければ〜」
知的なITシステムの根幹をなす.「もし体温が38度以上なら
発熱の可能性」, 「もし特定のキーワードを含むなら迷惑
メール」のように,専門家の知識を条件分岐のルールとして
記述
繰り返し
機械学習と探索の両方の基盤である.
機械学習:訓練データによる学習を何百・何千回と繰り返
す(Epoch).繰り返すたびに精度が向上
探索:隣接するセルを繰り返し調べ,最短経路を発見.
6
1回プログラミング基礎とAIの連続性
Scratchでは,入力(キーボードやマウス処理(条
件分岐と繰り返し)出力(スプライトの動き)とい
う流れがあった.
AIも同じ流れで動く.
ニューラルネットワーク:画像 各層での処理
類結果
探索:スタート地点 アルゴリズムによる探索
短経路
AutoDraw:手描き AIによる認識 清書の候補
この「入力処理出力」の流れは,プログラミングで
AIでも共通する情報工学の基本である.
7
2-2 AI の基礎
8
AIの基礎
AIの定義
人工知能(AI)は,コンピュータが人間のような知的能力を
持つことを目指す技術.
AI3要素
知能:思考や判断などの能力
知識:情報を収集し,処理する能力
学習:知的な能力が向上する能力
9
AIの利点
24時間365稼働可能
大量データの高速処理が可能
人間が見落としがちな細かいパターンを検出できる
反復作業を効率化できる
10
AIの欠点
創造性柔軟性に限界がある
予期せぬ状況への対応が苦手
倫理的判断が必要な場面では人間の介在が必要
学習時に用いられたデータの品質や偏りによって,結果の
精度が低下する場合がある
11
2-3 AI の種類
12
人工知能の種類
13
知的な IT システム
人間が書いたルールや知識を用いて,意思決定や問題
解決を行う人工知能.人間が直接プログラムするため,
説明可能性は高い
機械学習
コンピュータがデータを用いて自ら学習し,知的能力
を向上させる技術.データを与えて学習させることで,
より正確に予測や分析や合成ができるようになる.柔
軟性が高い.
人工知能は大きく2種類に分けられる.
14
情報の抽出:データの中からパ
ターンや関係性を自動で見つけ出
す能力
簡潔さ:人間が設定しなければな
らなかったルールを、自動で生成
できるようになる
限界の超越:他の方法では難し
かった課題でも、機械学習を用い
ることで解決策や視点を得られる
可能性がある
機械学習の特徴
応用事例
画像理解,自然言語処理,予測な
ど多数の分野で活用されている
訓練データと学習の仕組み
15
機械学習のプログラムが訓練
データを用いて学習を行う
プログラム
学習の結果,文字認識の能力を獲得する.
学習ののち,新たな手書き数字の画像分類
を行うことができる.
大量の訓練データを用いて
学習を行う
例:手書き数字の
画像60000
それぞれの正解
4, 1, 0, 7, 8, ...
60000
訓練データとして使用する.
機械学習の定義
訓練データ
16
学習
知的能力が向上
3種類に分類済み 3種類への分類能力を習得
訓練データを用いて学習し,その結果として知的
能力が向上する
■訓練データの追加により,さらに知的能力が向上
する可能性がある
ニューラルネットワークの基本構造
https://playground.tensorflow.org
17
機械学習の代表的な手法のひとつにニューラルネットワーク
がある.あとでデータを与えて学習させる仕組み.
TensorFlow Playground
ニューラルネットワークの構造可視化
DATA(データセットの選択)
FEATURES(入力特徴量)
HIDDEN LAYERS(隠れ層の数とニューロ
ン数)
OUTPUT(分類結果)
学習パラメータ
Learning rate(学習率)
Activation(活性化関数)
Epoch(学習回数)
分類の様子を観察できる.
知的な IT システム
人間が書いたルールや知識を用いて,意思決定
題解決を行う人工知能.
18
探索による問題解決
例:6つの小部屋があり,上下左右
に動くことができるというルール
プログラム化する.
3回動くとどこにたどり着くかを,
コンピュータが全ての組み合わせを
探索して結果を出力する
エキスパートシステム
専門家の知識をルール(「もし〜な
らば」の形式)として記述し,コ
ンピュータに判断させる仕組み.
ルールベースのフィルタリング
あらかじめ定めた条件に基づいて,
データを自動的に分類する仕組み.
例:メールの件名や本文に特定の
キーワードが含まれる場合に迷惑
メールとして分類するシステム
機械学習
知的な
ITシステム
知識の由来
データから自動で獲得
人間が明示的に記述
具体例
手書き数字認識,画像
生成
エキスパートシステム,
スパムフィルタ
強み
人間が言語化しにくい
パターンにも対応
判断根拠を人間が説明
しやすい
弱み
なぜその結果になった
か説明しにくい場合が
ある
ルールの追加・修正に
人手がかかる
19
両者は相反するものではない。実際のシステムでは両者
組み合わせて使われることもある.
2-4 AI でできること(応用分野)
20
人工知能の応用例
21
顔検知、顔識別
合成
画像のセグメンテーション
Webブラウザで翻訳を行う
Mate Translate (Web ブラウザ
Firefox のアドオン)
人工知能は私たちの生活や仕事を大きく変革する技術.
人間の言葉、声の処理:対話型AI(チャット
ボット)
文章の翻訳要約,推敲のほか,相談や自由なアイデア出
に使用できる.
ユーザーが質問や依頼を入力すると,AI回答コード
を生成.
人間の言葉、声の処理:自動翻訳サービス
23
DeepL URL: https://www.deepl.com/ja/translator
Webブラウザ上でテキストを入力すると,別の言語に自動
翻訳される.
例:DeepLMate TranslateWebブラウザ Firefox のアド
オン)
視覚情報処理:画像分類
元画像
24
画像分類の結果
Google Cloud Visionのオンラインサービス
URLhttps://cloud.google.com/vision/docs/drag-and-drop
画像を入力すると,AIがその内容を認識し,ラベル
Forehead 98%, Glasses 98%, Chin 97% 等)を付けて分類.
視覚情報処理オブジェクトの発見・検知
25
元画像 人工知能による読み取り結果
(DeepLabv3+ を使用)
画像の中のオブジェクト(人,自転車,車など)を,AI
発見・検知する.
(例)DeepLabv3+を使用した例では,街路の画像から人,
自転車,車,道路,建物等を色分けして検出.
視覚情報処理:顔検知
26
画像中の顔の位置大きさの情報を読み取る技術.
集合写真のような複数人が写る画像からも,各人の顔を矩形
で囲んで検出できる.
視覚情報処理:顔識別(顔からの人物特定)
あらかじめ登録された顔データとの距離(類似度)計算し,
最も距離が近い人物を特定する技術.
(例)入力画像に対して各人物との距離を算出し,最小距離
の人物名(younes, distance 0.309...)を出力する.
27
younes
視覚情報処理:目の動きの読み取り
28
瞳孔の位置と動きを追跡する技術.
目の動きの読み取り(Pupil Tracker を使用)
視覚情報処理:表情の自動判定
29
「驚き (Surprised)」と判定
されている
顔画像から表情を自動で判定する技術.
(例)Angry, Disgust, Fear, Happy, Neutral, Sad, Surprised
の各カテゴリの確率を算出.Surprised 52.88% と判定され
た場合,「驚き(Surprised)」と判定される.
視覚情報処理:人体の姿勢の読み取り
30
人体の姿勢を読み取り
OpenPose を使用)
人体の関節位置を検出し,骨格を線で結んで姿勢を可視化す
る技術.
(例)スキーや野球などの動きの解析にも応用される.
31
32
視覚情報処理:群衆の数のカウント
33
群衆の数のカウント
(FIDTM を使用)
元画像
群衆の画像から人数を自動で数える技術.各人の位置を矩形
で囲んで検出する.
データ分析と予測
過去のデータを基に将来予測を行う技術.
(例)過去の太陽の黒点数から将来の傾向を予測
34
自動化,最適化
作業やプロセスを人工知能で自動化最適化する技
術.
(例)工場の生産工程の最適化,スマートホーム
(家電の自動制御).
35
図は Gemini を用いて作成
知識表現
36
Prolog プログラム
human(hanako).
human(taro).
think(X) :- human(X).
コンピュータが
推論を行い,
その答えを得る
Prologプログラムにより知識ルールとして記述し,コン
ピュータが推論を行い,その答えを得る技術.
(例)human(hanako). human(taro). think(X) :-
human(X). と記述し,human(X). と問い合わせると,X
= hanako, X = taro という答えが推論により得られる.
2-5 AI による合成
37
GAN(敵対的生成ネットワーク)
AI によるデータの生成能力を示す研究のひとつ.
38
GAN の仕組み
2つのAIを使って学習を行う :①人工知能による生
成(生成器)、②人工知能による識別(識別器)
39
生成器と識別器の学習を交互に繰り返すことで,生成器
本物に近いデータを生成できるようになる
ノイズ 生成器 生成され
たデータ
実在の
データ
識別器 実在,
フェイク
生成器が生成したデータと実在
のデータの両方を受け取り,本
物かフェイク(偽物)かを判定
する.本物データを実在,生成
データをフェイクと識別するよ
うに学習する
ノイズを入力として受け取
り,データを生成する.識
別器が誤って判定するよう
なデータを生成するように
学習する
GANの応用例
さまざまな種類の画像(犬,風景,蝶,食べ物等
を,安定して高精細に生成
40
Large Scale GAN Training for High Fidelity Natural Image Synthesis
Andrew Brock, Jeff Donahue, Karen Simonyan, https://arxiv.org/abs/1809.11096v2
ANと現在のテキスト画像合成の関係
GANは「AIがリアルなデータを生成できること
を示した重要な研究である.
GANは,生成AIという分野を切り拓いた
その後,拡散モデルDiffusion Model)など新た
な手法が登場し,現在のテキスト画像合成(次
ページ)の基盤になっている
41
テキストからの画像合成
42
chip」に対してチップスの画
像を合成(DALL-Eを使用)fox」に対してキツネのイラス
トを合成(DALL-Eを使用)
テキスト(文章)の指示に基づいて,写真やイラストを人工
知能が合成する技術
OpenAI ChatGPT, Microsoft Copilot, Google Gemini など
を利用して同様の画像合成が可能
フェイクビデオ
43
写真 ビデオ 人工知能により
合成されたビデオ
写真とビデオから人工知能により合成されたビデオを生成
する技術.
(例)ある人の顔の写真と,別の人のビデオを組み合わせ
ると,写真の人がビデオの人の声,表情,語りでそっくり
に語りだす映像が合成される.
44
2-6 AIの現状と注意点
45
AI の利用での注意点
人工知能は、誤った結果を出すこともある
人工知能が行うことは限定されており、全てを任せてしま
うのは適切ではない。
人工知能は人間が設定した範囲内でしか活動できない.
れ以外のことについては判断ができない。
機械学習で用いる学習データに偏りがあるとき、結果にも
偏りが出てくる。人工知能の判断には注意が必要
人工知能は、あくまでも「人間が利用する道具」であり、
人間次第。人間の判断や考えを補完するために利用される
べき。
46
AI を責任をもって利用するために
人間が主導AIはあくまで人間を支援する道具.最終的な
判断は人間が行う
個人情報の取り扱いAIは人間が運用している.AIが危険
というよりも,AIの運営者が危険な場合がある.AIに個人
情報を与える際には注意が必要
偽情報の抑制AIの悪用により偽情報の生成が極めて容易
になった.複数の信頼できる情報源を参照する習慣が大切
47
人工知能についての考え方
高度に発達した人工知能が脅威になるかどうかは自分
で調べ、考察することが重要
人間がよりクリエイティブになるために人工知能を使
ことや、人と人工知能とロボットが協働すること
必然的に起こる可能性がある
48
演習
49
演習の前に: 学習率」とは
学習率は「1回の学習でどれだけ大きく修正する
」を決める
学習率が大きすぎる場合:修正が大きすぎて,正
解を飛び越えてしまい,学習が不安定になる可能
学習率が小さすぎる場合:少しずつしか修正しな
ため,学習に多くの時間がかかる
適切な学習率:安定して正解に近づいていく
演習1のTensorFlow Playgroundで学習率を0.001
0.031などに変えて,学習の安定性がどう変化す
るか観察してみよう. 50
1. ニューラルネットワークの学習過程の可視化
ニューラルネットワークの構造やパラメータを変えながら,
学習の過程を観察できる.
TensorFlow Playgroundを使用.
手順:データセットを選ぶ 隠れ層の数やニューロン数
を設定する 再生ボタンで学習開始 分類結果の変化
を観察する.
URL: https://playground.tensorflow.org
51
2. 探索アルゴリズムによる経路探索の可視化
探索アルゴリズムで,スタート地点からゴール地点までの
経路を見つける過程を可視化
手順:グリッド上に壁を配置する アルゴリズムを選択
する 探索を開始 探索の広がり方と最短経路を観察
る.
URL: https://qiao.github.io/PathFinding.js/visual/
52
3.畳み込みニューラルネットワークの内部構造
可視化
畳み込みニューラルネットワーク(CNN)の各層入力画
像をどのように処理しているかを,3Dで可視化.
手順:描画パッドに数字を描く 各層のニューロンの活
性化がリアルタイムに表示される ニューロンにカーソ
ルを合わせて検出内容を確認する.
URL: https://adamharley.com/nn_vis/cnn/3d.html
53
4. 人間の下書きを人工知能が清書する
54
人工知能が,元の情報を保ったまま人間のイラストを清書す
る技術
AutoDraw URL: https://www.autodraw.com/
人間がイラストを描く コンピュータが候補を出す 完成