SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
⾼1から始める⼈⼯知能(AI)
東北⼤学⼤学院情報科学研究科 助教
理化学研究所AIP 特別研究員
菅沼 雅徳
wkpeco
本発表では,「⼈⼯知能」≒「機械学習(深層学習)」として,深層学習について
簡単に解説します
2
⼈⼯知能(AI)と機械学習
⼈⼯知能
強い⼈⼯知能 弱い⼈⼯知能
• ⾃分で問題設定・解決ができる
⼈間のような知能
• 汎⽤⼈⼯知能
• 限られた⼀部の問題解決は可能
機械学習
深層学習
多層ニューラルネットワーク
を利⽤した機械学習の⽅法論
将棋,囲碁,StarCraftなどのゲームで⼈間に圧勝
• 深層学習+強化学習+⼤量の⾃⼰学習 でゲームを学習
• 現状の盤⾯から最も勝利に繋がる次の⼀⼿を⼤量のデータをもとに推測
3
有名な深層学習の適⽤例
https://www.sankei.com/photo/story/news/170520/sty1705200007-n1.html
Silver+, Mastering the game of Go with deep neural networks and tree search, Nature, 529, pp.484-489, 2016
• パックマンをゲームエンジンなしで再現(GameGAN)
• 多種多様な画像を⾼精細に⾃動⽣成(BigGAN)
4
最近の研究例 コンテンツ⽣成
GameGAN
(https://nv-tlabs.github.io/gameGAN/)
BigGAN
(https://arxiv.org/abs/1809.11096)
静⽌画と任意のカメラ位置情報から画像を⽣成
5
最近の研究例 3D画像⽣成
NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis [B.Mildenhall+, ECCVʼ20]
NeRF in the Wild: Neural Radiance Fields for Unconstrained Photo Collections [R.Martin-Brualla+, arXiv2008.02268]
⼊⼒画像を説明する説明⽂を⾃動⽣成
6
最近の研究例 Image captioning
A black and white photo of
a train on a train track
A cat riding a skateboard
AI
System
• 画像とそれに関する質問⽂を⼊⼒し,質問に答えるタスク
• ユーザインタフェースとして利⽤可能
7
最近の研究例 Visual Question Answering
AI
System
What is the mustache
made of ?
Bananas
• 画像,過去の対話,質問⽂を⼊⼒し,質問に答えるタスク
• VQAより⾼度なタスクになっている(⽂章間の関係性も捉える必要ある)
8
最近の研究例 Visual Dialog
The young boy is playing
tennis at the court.
Q: Is the young boy a toddler?
A: No
Q: What color is his hair?
AI
System
Itʼs block
過去の対話
質問
ルールがある程度決まっていて⼤量にデータ(過去の事例)がある領域
• コンテンツ⽣成
• 翻訳
• ⾃動運転,⼯場業務の⾃動化
• 医師,弁護⼠,税理⼠などの業務補助
• 創薬 など...
9
深層学習が活躍しそうな領域(※あくまで私⾒)
https://www.deepl.com/ja/home
翻訳 放射線科医より⾼精度な乳がん診断
McKinney+, International evaluation of an AI
system for breast cancer screening, Nature,
577, 89-94, 2020
⾃動運転
https://blogs.nvidia.com/blog/2020/04/07/gtc-
digital-self-driving-ai-infrastructure/
画像⽣成
http://www.whichfaceisreal.com
• データ数の爆発的増加
• 深層学習の成功には膨⼤なデータが必要
• Youtubeにアップロードされる動画は1分間に約400時間分(2019年)
• Instagramには1分間で約28万のストーリーが投稿(2019年)
10
深層学習の躍進のワケ
• コンピュータの発展
• 深層学習では膨⼤な計算量を必要とする
https://www.domo.com/learn/data-never-sleeps-7https://blogs.nvidia.co.jp/2019/11/26/record-gpu-accelerated-supercomputers-top500/
• リンゴの認識を例にとっても,リンゴによって形が違う,⾊が違う,照明の
当たり⽅で⾒え⽅が変わる...など考慮すべき条件が多すぎる
• ⼈⼿であらゆる物体に対して正確にプログラムするのは無理がある
11
物体の認識はコンピュータにとっては難しい問題
• リンゴの認識の仕⽅ではなく,学習の仕⽅をプログラムする
• 機械学習というのはデータからパターン(規則性)を学習する⽅法
12
機械学習(深層学習)の考え⽅
⼤量のデータ
リンゴの画像
リンゴでない画像
学習
リンゴとそれ以外
の果物を⾒分ける
規則性をみつける
判別
深層学習の基礎
⼊⼒に対して適切な出⼒を出す関数
14
深層学習の基本概念
深層学習
深層学習
次の1⼿深層学習
画像
物体の名称(リンゴ)
盤⾯情報
⽂章
(A cat riding a skateboard)
15
深層学習とは多層ニューラルネットワークを⽤いた⽅法論
…
リンゴの確率
ミカンの確率
深層学習 物体の名称(リンゴ)
多層ニューラルネットワーク(以下の例では,画像→物体の確率に変換する関数)
16
画像とは?
画素(pixel)
RGBの3原⾊で1画素の⾊を表現する.
• 例えば,RGB=(200,40,90)のように
1画素を表現する
• それぞれ⾚⾊,緑⾊,⻘⾊の強さを
⽰す
画像は画素(pixel)の集合で表現される
• ⾊の濃淡値を表す数値(画素)が規則的に並んでいるだけ
• iPhone8で撮影した画像は,36578304 = 4032×3024×3 個の数値が並んでいる
• ニューラルネットワークは主に3つの要素で構成
• ⼊⼒層(全ての画素情報を保持)
• 中間層(各層で変換された情報を保持)
• 出⼒層(最終的な出⼒を確率表現に変換)
17
基本的な多層ニューラルネットワークの構造
…
…
…
! = 255,39, … , 42 *
… ⼊⼒層 中間層 出⼒層
リンゴの確率
ミカンの確率
⼊⼒に対して重み付きで⾜した
後に活性化関数!を適⽤
• "#がニューラルネットワークの
パラメータであり重みと呼ばれる
• 最初はランダムに"#の値を決める
18
中間層での基本計算
…
…
…
$ = 255,39, … , 42 -
…
リンゴの確率
ミカンの確率
ℎ = / 0
#12
3
4#"#
= /(42"2 + ⋯ + 43"3)
"2
"9
"3
42
43
49
ℎ
※ ReLU: / 4 = max(0, 4)
…
…
19
中間層での基本計算
…
…
! = 255,39, … , 42 *
…
リンゴの確率
ミカンの確率
ℎ = , -
./0
12222
3.4.
= ,(3040 + ⋯ + 312222412222)
40
49
412222
30
312222
39
ℎ
…
…
ℎ = , -
./0
1
3.4.
= ,(3040 + 3949 + 3141)
40
49
41
30
31
39
ℎ
⼊⼒画像サイズが100×100のカラー画像の場合 中間層のノード数が3の場合
20
中間層での基本計算
…
…
…
…
リンゴの確率
ミカンの確率
この基本計算を⼊⼒層から出⼒層にむかって繰り返し実⾏する
• 深い層にいくにつれて抽象的な情報の抽出?
21
出⼒層での計算
…
…
…
…
リンゴの確率
ミカンの確率
中間層の最終出⼒を確率表現に変換する(※タスクに依ります)
• 各カテゴリらしさを0.0~1.0の数値で表現
• Softmax関数で変換
%&'()*+(+-) =
e12
∑4 e15
3
1
789
78:
789 =
;1<
∑4=9
:
;15
=
;1<
;1< + ;1?
=
;@
;@ + ;9 = 0.8808
78: =
;1?
∑4=9
:
;15
=
;1?
;1< + ;1?
=
;9
;@ + ;9
= 0.1192
例
• 最終的な出⼒結果はニューラルネットワークがもつ重み!"に依存する
• 最初はランダムに!"の値を決めるため,でたらめな出⼒結果が得られる
22
多層ニューラルネットワークの学習
…
…
…
…
リンゴの確率
ミカンの確率
0.1
0.9
• ⼈が与えた正解ラベルと⼀致するように重み!"の値を調整する
• 具体的には,現在のNNの出⼒#$と正解ラベル$との誤差を計算し,その誤差が
⼩さくなるように %&を調整する(=学習)
23
多層ニューラルネットワークの学習
…
…
…
…
リンゴ
ミカン
0.1
0.9
NNの出⼒ 正解ラベル
1.0
0.0
+,-.. /01,-23 43, 3 = − 8
"9:
;
43log3" = − 1.0×log0.1 + 0.0×log0.9 = 2.3
43" 3"
• 微分を使います(⾼2で習います)
• 微分を使うと,!"を変化させた時に,誤差#がどのように変化するのかがわかる
24
どうやって重みの値を調整するのか?
誤差#が減少するように!"の調整が可能→
…
…
…
…
リンゴ
ミカン
0.1
0.9
NNの出⼒ 正解ラベル
1.0
0.0
()" )"
誤差#この重みを少しだけ変化させた時,誤差#が
どのように変化するのかが微分でわかる!
• 誤差!は,! = #$で表され,! = 0となる#の値を求めたいと仮定
• 誤差!の#に関する微分は,
&'
&(
= 2# となる
25
直感的な理解
!
#
0 3
• #を少しだけ変えたときに,!の値がどのように
変化するのかを表している
• もう少し具体的に⾔うと, + の値を増加させた時に,
,の値が増加する⽅向を⽰している
今は誤差!を⼩さくしたいので,逆⽅向に#を変化
させたい.つまり,
+ ← + −
/,
/+
のように#の値を変更すれば良い!
0!
0#
= 6
0!
0#
= −4
−2
微分値が負のため
正の⽅向に動かす
微分値が正のため
負の⽅向に動かす
! = #$
26
!"の調整⽅法(簡易版ニューラルネットワークで説明)
#$ %
$
& '()
*%
*()
=
*%
* #$
* #$
*'
*'
*()
,%
, #$
= #$ − $
, #$
,'
= (.
*'
*()
= &
(.
求めたいもの:() ← () −
01
023
01
023
∶ ()を増加させたときに誤差%が増加する⽅向を
⽰している
' = ()& #$ = (.' % = 56('89:;<= #$ , $)
※実際は活性化関数なども含まれるため,もう少し複雑になります
合成関数の微分を⽤いることで計算可能(⾼2で習います)
• すべての重み!"に対して上述の⽅法で重みの値を調整する
• 適切な重みの調整には⼤量のデータおよび計算を必要とする
27
多層ニューラルネットワークの学習
…
…
…
#$%
#$&
⼤量のデータ
リンゴの画像
リンゴでない画像
$%
$&
出⼒ ラベル
• 学習には⼤量のデータとラベルのペアが基本的には必要
• ラベル付けは想像以上に⼤変な作業(数万〜数百万データ)
• そもそもデータ⾃体が⼿に⼊りづらいタスクも多数存在
• 学習にはGPU搭載の計算機を必要とする
• 数⼗万〜数千万円
• ある程度の資⾦がないとそもそも実⾏できない
28
解決すべき課題 学習データ構築および計算のコストが⾼い
https://blogs.nvidia.co.jp/2019/11/26/record-gpu-accelerated-supercomputers-top500/https://ai.googleblog.com/2018/10/fluid-annotation-exploratory-machine.html
Adversarial example [Goodfellow+, ICLRʼ15]
• 少しのノイズを加えただけで,パンダをテナガザルと誤認識する
• こういったノイズを⽣成することは簡単
29
解決すべき課題 深層学習は万能ではない
DNNの予測:
パンダ
DNNの予測:
テナガザル
もとの画像 ノイズ ノイズ加算後の画像
⼈間にとっては同じカテゴリでも,深層学習モデルに
とっては違うカテゴリと認識する例
30
解決すべき課題 ⼈間の知能との間には⼤きなギャップ
https://arxiv.org/abs/2004.07780
深層学習モデルにとっては
同じカテゴリに認識する例
• 基本的には問題ごとにモデルを構築する必要がある
• 例えば,将棋⽤のAIを⾃動運転⽤に利⽤することは難しい(どちらかの
タスクを忘れてしまう)
• ⼈間のように,ある程度のことならなんでもできてしまう知能を
代替するには遠い
• 論理による演繹的な推論が苦⼿
31
解決すべき課題 汎化性能
• 機械学習はデータから規則性を学習する⽅法
• 深層学習は多層ニューラルネットワークを⽤いた機械学習の1⼿法
• 物体認識,⾃然⾔語処理,⾳声認識などで圧倒的な性能を⽰している
• 深層学習は問題によっては⼈間よりも優れた性能を⽰しつつも,
まだ⼈間の知能の代替するには程遠い
• まだまだ研究すべきことはたくさんある⾯⽩い分野
32
まとめ
Appendix
34
畳み込みニューラルネットワーク(CNN)
Conv Pooling Conv Pooling Conv Fully connected
リンゴである確率
ミカンである確率
バナナである確率
イチゴである確率
畳み込み層
• フィルタによって画像を変換する操作
プーリング層
• 情報を集約する操作(結果として画像のサイズが半分になることが多い)
• 畳み込み層とプーリング層が積み重なった構造の多層ニューラルネットワーク
• 画像認識分野で最もよく使⽤されているモデル
35
畳み込み処理
RGBそれぞれの
成分に分解
36
畳み込み処理
37
プーリング処理
• ⼊⼒の平⾏移動に対する
不変性を獲得
• パラメータ削減
38
CNNによる画像認識例
Conv Pooling Conv Pooling Conv Fully connected
顔である確率
CNNは画像(画素の集合)→ 物体の確率に変換する関数
• 例)iPhone 8で撮影した画像で顔認識をする場合
• 36578304(= 4032 ×3024×3)つの数値 → 1つの数値 (顔である確率) に変換

Más contenido relacionado

Más de MasanoriSuganuma

0から理解するニューラルネットアーキテクチャサーチ(NAS)
0から理解するニューラルネットアーキテクチャサーチ(NAS)0から理解するニューラルネットアーキテクチャサーチ(NAS)
0から理解するニューラルネットアーキテクチャサーチ(NAS)
MasanoriSuganuma
 

Más de MasanoriSuganuma (7)

0から理解するニューラルネットアーキテクチャサーチ(NAS)
0から理解するニューラルネットアーキテクチャサーチ(NAS)0から理解するニューラルネットアーキテクチャサーチ(NAS)
0から理解するニューラルネットアーキテクチャサーチ(NAS)
 
RAFT: Recurrent All-Pairs Field Transforms for Optical Flow
RAFT: Recurrent All-Pairs Field Transforms for Optical FlowRAFT: Recurrent All-Pairs Field Transforms for Optical Flow
RAFT: Recurrent All-Pairs Field Transforms for Optical Flow
 
When NAS Meets Robustness: In Search of Robust Architectures against Adversar...
When NAS Meets Robustness:In Search of Robust Architectures againstAdversar...When NAS Meets Robustness:In Search of Robust Architectures againstAdversar...
When NAS Meets Robustness: In Search of Robust Architectures against Adversar...
 
When NAS Meets Robustness: In Search of Robust Architectures against Adversar...
When NAS Meets Robustness:In Search of Robust Architectures againstAdversar...When NAS Meets Robustness:In Search of Robust Architectures againstAdversar...
When NAS Meets Robustness: In Search of Robust Architectures against Adversar...
 
Attention-Based Adaptive Selection of Operations for Image Restoration in the...
Attention-Based Adaptive Selection of Operations for Image Restoration in the...Attention-Based Adaptive Selection of Operations for Image Restoration in the...
Attention-Based Adaptive Selection of Operations for Image Restoration in the...
 
CNNの構造最適化手法について
CNNの構造最適化手法についてCNNの構造最適化手法について
CNNの構造最適化手法について
 
CNNの構造最適化手法(第3回3D勉強会)
CNNの構造最適化手法(第3回3D勉強会)CNNの構造最適化手法(第3回3D勉強会)
CNNの構造最適化手法(第3回3D勉強会)
 

Último

Último (12)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 

高1から始める人工知能(AI)