Weitere ähnliche Inhalte Ähnlich wie ae-10. 中間まとめ(ディープラーニング) (20) Mehr von kunihikokaneko1 (20) ae-10. 中間まとめ(ディープラーニング)4. アウトライン
4
番号 項目
10-1 機械学習
10-2 ディープラーニングの種類,用途
10-3 ディープラーニングの仕組み
10-4 画像理解
10-5 畳み込みニューラルネットワーク
10-6 ディープラーニングによる画像理解
10-7 顔情報処理
10-8 姿勢推定
10-9 自然言語処理
各自、資料を読み返したり、課題に取り組んだりも行う
10. 機械学習での汎化
10
入力 正解
9 500
11 500
12 1000
14 1000
訓練データ
訓練データの汎化
入力 予測結果
7 500
8 500
9 500
10 500
11 500
12 1000
13 1000
14 1000
15 1000
16 1000
• 汎化は100%成功するわけでない.
• 訓練データとは別のデータ(検証データ)を
用いて検証する
汎化により,未知のデータ
についても予測ができるよ
うになる
25. ニューラルネットワークのユニット
ニューラルネットワークのユニットは,数理により
動く
① 入力は複数
② 入力を重みづけし合計をとる
③ その合計から出力値を得る
25
入力
1 2 3
4 5 6
7 8 9
1 1
2 1
3 1
4 0
5 1
6 1
7 0
8 0
9 1
白黒の画像
(画素は 0 または 1)
重み w1 ~ w9
ユニット
w1
w2
w3
w4
w5
w6
w7
w8
w9
合計
・合計に,バイアスという値を
足し引きしたあと,活性化関数
が適用され出力値が得られる.
・活性化関数はさまざまな種類
シグモイド
ReLU
(2011年発表)
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
-2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 2.0
合計は,
1 × w1 + 1 × w2 + 1 × w3 +
0 × w4 + 1 × w5 + 1 × w6 +
0 × w7 + 0 × w8 + 1 × w9
26. 26
入力 正解
1, 1 1
0, 1 0
1, 0 0
0, 0 1
訓練データ
ユニット
1
1
重み
ユニット
1
1
重み
活性化関数
ReLU
2.0
1.0
0
-2.0 -1.0 0.0 1.0 2.0
重み
-1
2
ReLU
+ バイアス
(バイアス
は +1)
2.0
1.0
0
-2.0 -1.0 0.0 1.0 2.0
ReLU
+ バイアス
(バイアス
は -1)
2.0
1.0
0
-2.0 -1.0 0.0 1.0 2.0
1 2
27. 27
1, 1 1
0, 1 0
1, 0 0
0, 0 1
1
1
1
1
ReLU
2.0
1.0
0
-2.0 -1.0 0.0 1.0 2.0
2.0
1.0
0
-2.0 -1.0 0.0 1.0 2.0
-1
2
2.0
1.0
0
-2.0 -1.0 0.0 1.0 2.0
それぞれのユニットが「特定のパターンを識別して
いる」と考えることもできる
ユニットが
識別する
パターン
ユニットが
識別する
パターン
ユニットが
識別する
パターン
1 2
ReLU
+ バイアス
(バイアス
は +1)
ReLU
+ バイアス
(バイアス
は -1)
34. セグメンテーションを試すことができるオンライ
ンのサイト
• OneFormer のデモサイト
• URL: https://huggingface.co/spaces/shi-
labs/OneFormer
• セグメンテーションの種類:パノプティック,インスタン
ス,セマンティック
• データセット:COCO(133 クラス),Cityscapes(19
クラス),ADE20K (150クラス)
34
文献: Jitesh Jain, Jiachen Li, MangTik Chiu, Ali Hassani,
Nikita Orlov, Humphrey Shi, OneFormer: One Transformer
to Rule Universal Image Segmentation, arXiv:2211.06220,
2022.
36. ADE20K
• アノテーション済みの画像データ
• オブジェクト(car や person など) も,背景領域も
(grass, sky など) ,画素単位でアノテーションさ
れている
• 画像数: 30,574
• クラス数: 3,688
36
ADE20K データセットの URL:
http://groups.csail.mit.edu/vision/datasets/ADE20K/
文献: Bolei Zhou, Hang Zhao, Xavier Puig, Sanja Fidler, Adela Barriuso,
Antonio Torralba,
Scene Parsing Through ADE20K Dataset,
CVPR 2017, also CoRR, abs/1608.05442, 2017.
37. CityScapes
• アノテーション済みの画像データ
• 50都市の数ヶ月間(春,夏,秋)の日中,良好な/
中程度の天候のもとで撮影,計測
• 画像数: 24,998
• クラス数: 30
road, sidewalk, parking, rail track, person, rider, car, truck, bus, on rails, motorcycle, bicycle, caravan,
trailer, building, wall, fence, guard rail, bridge, tunnel, pole, pole group, traffic sign, traffic light, vegetation,
terrain, sky, ground, dynamic, static
37
CityScapes データセットの URL:
https://www.cityscapes-dataset.com/
文献: Marius Cordts, Mohamed Omran, Sebastian Ramos, Timo Rehfeld,
Markus Enzweiler, Rodrigo Benenson, Uwe Frank
e, Stefan Roth, Bernt Schiele,
The Cityscapes Dataset for Semantic Urban Scene Understanding,
CVPR 2016, also CoRR, abs/1604.01685, 2016.
38. COCO
• 画像データ,人体のランドマーク,人体姿勢の
データ
• ラベル付け済みの画像数: 200,000以上
• オブジェクトのクラス数: 80
• ランドマーク:左目、鼻、右腰、右足首などの 17
のキーポイント
38
COCO データセットのURL: https://cocodataset.org/
文献: Tsung-Yi Lin, Michael Maire, Serge Belongie, Lubomir Bourdev, Ross
Girshick, James Hays, Pietro Perona, Deva Ramanan, C. Lawrence Zitnick,
Piotr Dollr,
Microsoft COCO: Common Objects in Context,
CoRR, abs/1405.0312, 2014.
41. 畳み込みの例
41
0 1 0 1 0 0 1 1 1 0
0
1 0 1
0×1 1×0 0×1
この部分を切り出す
重ね合わせの結果: 0×1 + 1×0 + 0×1 = 0
データ
カーネル
42. 畳み込みの例
42
0
1 0 1
0×1 1×0 0×1
1 0 1
1×1 0×0 1×1
1 0 1
0×1 1×0 0×1
2 0
0 1 0 1 0 0 1 1 1 0
1 0 1
1×1 0×0 0×1
1 0 1
0×1 0×0 0×1
1 0 1
0×1 1×0 1×1
1 0 1
1×1 1×0 1×1
1 0 1
1×1 1×0 0×1
1 1 1 2 1
移動
49. 畳み込み層
• 畳み込み層は,一度に複数の畳み込み(数十以
上)を行うように作る のがふつうである.
• それぞれの畳み込みについて,全ユニットで,重
みとバイアスが同じ
49
前の層 1つの畳み込み層
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
〇
複数のカーネル
51. プーリングを行う Max Pooling 層
• 2次元のデータの縮小
(例)サイズ 100 × 100 ⇒ 50 × 50 のように
• 一定領域内の結果を,1つにまとめる.
• 定まった計算を行う(学習の対象ではない)
• Max Pooling は,縮小後に,最大値が残る
範囲内のユニットの活性度の最大を得る
51
・4, 8, 7, 1 の最大値は 4
・「4, 8, 7, 1」の 4マス
から,最大値の 8 を選ぶ.
出典: https://github.com/jeffheaton/t81_558_deep_learning/blob/084023876b6cf09c931b452584dbd44c56314a03/t81_558_class_06_2_cnn.ipynb
54. 画像分類 AlexNet (2012年)
• 画像分類,教師有り学習,ディープニューラルネットワーク
• 特徴:CNN(畳み込みニューラルネットワーク)の導入
畳み込み, max pooling, 正規化(LCN), softmax, ReLU, ドロップアウト
• 画像分類結果が報告された
訓練データ: 画像約 100万枚以上(ImageNet データセット,22000種類に分
類済み),ILSVRCコンペティション: 画像を 1000 種類に分類
54
文献: ImageNet classification with deep convolutional neural networks,
Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton, NIPS'12, 2012.
全
結
合
全
結
合
全
結
合
畳
み
込
み
畳
み
込
み
畳
み
込
み
畳
み
込
み
max
pooling
max
pooling
max
pooling
畳
み
込
み
L
C
N
L
C
N
55. ディープラーニングによる画像分類の進展 (1/2)
CNN(畳み込みニューラルネットワーク)
• AlexNet(2012年)
CNN(畳み込みニューラルネットワーク)の導入
• VGG-16,VGG-19(2014年)
プーリングカーネルのサイズ縮小.サイズ縮小の結果,従来より深い
CNN を可能に
• ResNet (2015 年)
残差結合 (Residual Connection),Bottleneck Residual Block の導入.
30層以上の深い CNN を可能に.ResNet34, ResNet50, ResNet101,
ResNet 152 などの種類
• Xception(2016年)
ResNet の畳み込み層を Depthwise Separable Convolution に置き換え
• EfficientNet(2019年)
CNN の深さとチャンネル数と解像度の配分を探索
55
(私見)CNNの深さ(層の数)を増やすという方向では完成の域にある.
いまは,チャンネル数,解像度も含む総合的な分析が行われている
56. ディープラーニングによる画像分類の進展 (2/2)
Transformer
• Transformer(2017年)
自然言語処理のために Transformer が考案された.Attention を特色
とする.
• vision Transformer (2020年)
Transformer を画像理解に使用.CNNと違うもので,畳み込み演算
を用いない
• Swin Transformer (2021年)
vision Transformer に Sifted Windows を導入
• DiNAT(2022年)
vision Transormer で用いられる NA (Neighborhood Attention) の
改良.
56
(私見)精度向上の途上である.CNNによる方法を性能で上回る可能性も
あるし,そうでない可能性もある
57. Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun,
Deep Residual Learning for Image Recognition, IEEE Conference on Computer Vision and Pattern Recognition,
2016.
CNN 層 (weight layer)
CNN 層 (weight layer)
x
+
残余関数
(residual mapping)
残余接続
Residual Block
ReLU
63. セグメンテーションのための FCN (2015年発表)
• 画素ごとに分類結果の正解を与えての学習を可能にする技術
• 最終層を畳み込み層にする = FCN と呼ぶ
63
Jonathan Long, Evan Shelhamer, Trevor Darrell,
Fully Convolutional Networks for Semantic Segmentation, arXiv:1411.4038, 2015.
畳み込みニューラルネット
ワークによる画像分類
元画像 結果
元画像 結果
最終層は
全結合層
最終層は
FCN
畳み込みニューラルネットワー
クと FCN によるセマンティッ
ク・セグメンテーション
79. ランドマークとボーン
79
ボーン = 骨格,ランドマーク = 点
OpenPose では,25個のランドマークが定
まっている
(OpenPose は,人体の姿勢推定の一手法)
0:鼻 1:首 2:右肩 3:右ひじ 4:右手首
5:左肩6:左ひじ 7:左手首 8:真ん中腰
9:右腰 10:右ひざ 11:右足首 12:左腰
13:左ひざ 14:左足首 15:右目16:左目
17:右耳 18:左耳 19:左足親指 20:左足小指
21:左かかと 22:右足親指 23:右足小指
24:右かかと
OpenPoseのランドマークとボーン
80. ランドマークの位置推定
80
①元画像 ②ランドマークの ③ランドマークと
位置推定 ボーン
Qi Dang, Jianqin Yin, Bin Wang, Wenqing Zheng,
Deep Learning Based 2D Human Pose Estimation: A SurveyDeep Learning Based 2D Human Pose Estimation: A Survey,
Tsinghua Science and TechnologyTsinghua Science and Technology,
Volume 24 Issue 6 Article 5, 2019.
②ランドマークの位置推定:Body Part Detection 法では,元画像の中から,顔,
首,肩,手などの部位を検出する
③ランドマークとボーン:②の結果と体全体の情報から,ランドマークの位置
の特定,ボーンの生成を行う
81. ランドマークの位置推定
81
Alejandro Newell, Kaiyu Yang, and Jia Deng,
Stacked Hourglass Networks for Human Pose Estimation,
arXiv:1603.06937v2, 2016.
https://arxiv.org/pdf/1603.06937v2.pdf
画像の縮小 画像の拡大
各レベルでの推定結果を
後段へ
ランドマークの位置推定
部位の大きさはさまざま ⇒ マルチスケールの画像を使う
• 画像を複数レベルに縮小し,各レベルで部位を検出
• 元の大きさに戻しながら,検出結果を重ね合わせ
86. 自然言語の処理の例
• 問答
• 要約
• テキスト生成
• 分類
• 翻訳
• 欠損の補充
• 文章の類似度
• 人間の言葉として正しいか正しくないかの判定
• 文法に関するもの(品詞,係り受け) など
86
96. 全体まとめ 2/2
④ セグメンテーション
→ 最終層を畳み込み層にする(FCN)
⑤ 顔情報処理
→ 顔のコード化,顔のランドマーク
⑥ 姿勢推定
→ ランドマークとボーン
⑦ 自然言語処理
→ 単語の特徴ベクトル,Transformer
96
Hinweis der Redaktion 良好な学習能力をもち,機械学習が脚光をあびるきっかけにも
機械学習を勉強するとき,ニューラルネットワークは良い手段と考える
機械学習では,ニューラルネットワークを使う場合もあれば,ニューラルネットワークではない他のものもある(あとで詳しく)
画像分類は,画像に対して,ラベルとその確率を得ることです.
ラベルというのは,画像分類した結果の,画像の種類を表すキーワードのことです.
このラベルと確率を精度よく自動で求めるために,人工知能を使うことができます. 画像分類の例
画像に対して,いくつかのラベル,
それぞれのラベルに対しての確率が得られています.
例えば,この結果を見ると,この画像,ラベルが lab_coat である確率が,約 0.98 のように結果が得られています.
このように,1枚の画像に対して,複数のラベルとそれぞれの確率を得ること.
それが画像分類です.
画像分類は,画像を扱う他の人工知能,例えば,物体検出などの基礎になっています.
画像分類の説明は以上です.
視聴ありがとうございました.