深層学習の基礎と 導入 向けて
モ ラ ド ー 2018 年 3 月 20 日 火 早稲田大学
自己紹介
• 2015
年7
月BarcelonaTech
博士号 取得• 2015
年8
月2017
年3
月 早稲田大学 研究院助教• 2017
年4
月 同大学 研究院講師• 2018
年4
月 科学技術振興機構 さ 専任研究者 1目次
1.
深層学習 歴史2.
深層学習 基礎 • モデル • デー • 学習3.
必要 環境 • ハッ ド • フ レ ームワ ー4.
例 : ラ フ ッ 線画化5.
例 : 白黒写真 色付 ε !深層学習の歴史
•
1957 Perceptron
• 1980 Neocognitron
• 1986 Backpropagation
• 1998 LeNet
• 2012 AlexNet
• 2014 GoogleNet / VGG
• 2016 AlphaGo
• …
Mark I Perceptron機深層学習の歴史
• 1957 Perceptron
•
1980 Neocognitron
• 1986 Backpropagation
• 1998 LeNet
• 2012 AlexNet
• 2014 GoogleNet / VGG
• 2016 AlphaGo
• …
Fukushima, K. Neocognitron: a self organizing neural network model for a
mechanism of pattern recognition unafected by shift in position. Biological cybernetics, 1980.
深層学習の歴史
• 1957 Perceptron
• 1980 Neocognitron
•
1986 Backpropagation
• 1998 LeNet
• 2012 AlexNet
• 2014 GoogleNet / VGG
• 2016 AlphaGo
• …
Rumelhart et al. Learning Representations by Back-Propagating
深層学習の歴史
• 1957 Perceptron
• 1980 Neocognitron
• 1986 Backpropagation
•
1998 LeNet
• 2012 AlexNet
• 2014 GoogleNet / VGG
• 2016 AlphaGo
• …
LeCun et al. Gradient-based learning applied to document recognition. Proceedings of the IEEE, 1998.
深層学習の歴史
• 1957 Perceptron
• 1980 Neocognitron
• 1986 Backpropagation
• 1998 LeNet
•
2012 AlexNet
•
2014 GoogleNet / VGG
• 2016 AlphaGo
• …
Krizhevsky et al. Imagenet classiication with deep convolutional neural networks. Advances in neural information processing systems, 2012.
深層学習の歴史
• 1957 Perceptron
• 1980 Neocognitron
• 1986 Backpropagation
• 1998 LeNet
• 2012 AlexNet
• 2014 GoogleNet / VGG
•
2016 AlphaGo
• …
Silver et al. Mastering the game of Go with deep neural networks and tree
search. Nature, 2016.
深層学習の歴史
•
深層学習 現代 人工ニュ ーラ ルネ ッ ト ワ ー•
深層学習? • 様々 問題 対応 • 圧倒的 性能•
今色々 使え ? • GPU 計算効率 • 大規模 デー ッ ト深層学習の歴史
•
深層学習 現代 人工ニュ ーラ ルネ ッ ト ワ ー•
深層学習? • 様々 問題 対応 • 圧倒的 性能•
今色々 使え ? • GPU 計算効率 • 大規模 デー ッ ト教師あ 学習
顔
顔ではない
訓練データ
"顔"
または
"顔ではない"
4深層学習
• f (x) = σ(Wx)
層 重 構造•
パラ メ ー 学習従来の機械学習
•
手動 決 特徴 入力•
機械学習モデル 特徴 出力 変換 学習•
特徴 精度 制限 特徴抽出 機械学習 入力 出力•
深層学習 特徴抽出 機械学習モデル 一緒 学習•
ヒ ュ ーリ テ ッ 避 、 デー 依存 深層学習 入力 出力 6従来の機械学習
•
手動 決 特徴 入力•
機械学習モデル 特徴 出力 変換 学習•
特徴 精度 制限 特徴抽出 機械学習 入力 出力•
深層学習 特徴抽出 機械学習モデル 一緒 学習•
ヒ ュ ーリ テ ッ 避 、 デー 依存 深層学習 入力 出力深層学習のよ く あ 問題
•
デー 集 • 量、 室、 ノ テー ョ ン …•
モデル構造 決 • CNN、 深さ 、 レ ヤ 種類…•
モデル 学習 • 学習週報、 学習率、 バッ …入
正
7深層学習のよ く あ 問題
•
デー 集 • 量、 室、 ノ テー ョ ン …•
モデル構造 決 • CNN、 深さ 、 レ ヤ 種類…•
モデル 学習 • 学習週報、 学習率、 バッ …入
CNN
出
正
深層学習のよ く あ 問題
•
デー 集 • 量、 室、 ノ テー ョ ン …•
モデル構造 決 • CNN、 深さ 、 レ ヤ 種類…•
モデル 学習 • 学習週報、 学習率、 バッ …ロス
逆
習
入
CNN
出
正
7深層学習のよ く あ 問題
•
デー 集 • 量、 室、 ノ テー ョ ン …•
モデル構造 決 • CNN、 深さ 、 レ ヤ 種類…•
モデル 学習 • 学習週報、 学習率、 バッ … ハ パーパラ メ ー さ 決 い い い!深層学習の例 ・ 分類
•
順伝播 推定 • 入力 対 推定•
逆伝播 学習 • 誤差関数 モデル 出力 正解デー 比較 • 誤差関数 最終化 う モデル パラ メ ー 更新 ニューラル ネットワーク 23.8% Music Store 15.3% Basement 7.9% Cathedral 2.1% Airport ... 推定 順伝播 8深層学習の例 ・ 分類
•
順伝播 推定 • 入力 対 推定•
逆伝播 学習 • 誤差関数 モデル 出力 正解デー 比較 • 誤差関数 最終化 う モデル パラ メ ー 更新 ニューラル ネットワーク 23.8% Music Store 15.3% Basement 7.9% Cathedral 2.1% Airport ... 推定 順伝播 0.0% Music Store 100% Basement 0.0% Cathedral 0.0% Airport ... 誤差 正解 逆伝播人工ニュ ーラ ルネッ ト ワ ー
•
レ ヤ 重 構造•
レ ヤ 線形変換 非線形活性化関数•
行列書 ベ ト ル計算 表現 ... ビアス 前層 ニューロン 重み(学習するもの) 非線形活性化関数人工ニュ ーラ ルネッ ト ワ ー
•
レ ヤ 重 構造•
レ ヤ 線形変換 非線形活性化関数•
行列書 ベ ト ル計算 表現 ... ... 行列 ベクトル 9非線形活性化関数
•
非線形関数 近似 性能•
色々 種類、ReLU
メ ンSigmoid
Tanh
ReLU
モ ド 関数 双曲線正接関数 ラ ン プ関数
σ
Sigmoid(
x) =
1
1 + e
−xσ
tanh(
x) = e
x−
e
−xe
x+
e
−xσ
ReLU(
x) = max(0, x)
https://github.com/torch/nn/blob/master/doc/transfer.mdソ フ ト マッ
ス関数
•
出力 確率分布 変換 • 要素 和 • 全要素 正 数•
分類問題等 適切σ
softmax(
x) =
P
n1
i=1e
xi[
e
x1,
e
x2, . . . ,
e
xn]
⊺ 11畳 込 ニュ ーラ ルネッ ト ワ ー
•
視覚野 対応 う 形 配置•
空間的 フ ル 共有 モデル パラ メ ー 減少•
プーリ ン 畳 込 層 計算効率 INPUT 32x32 Convolutions Subsampling Convolutions C1: feature maps 6@28x28 Subsampling S2: f. maps 6@14x14 S4: f. maps 16@5x5 C5: layer 120 C3: f. maps 16@10x10 F6: layer 84 Full connection Full connection Gaussian connections OUTPUT 10 LeNet-5 [LeCun+ 1998]プーリ ン 層
•
解像度 圧縮•
小さ い移動 不変性 マ ッ 平均Lp
y = max
x∈Px
y = 1
|
P|
X
x∈Px
y =
1
|
P|
X
x∈Px
p!
1p 13畳 込 層
•
レ ヤ い フ ル 使用•
ハ パーパラ メ ー : ーネ ル、 パッ デ ン 、 ト ラ ド • 重 ーネ ル 表現 • パッ デ ン 解像度 不変化 • ト ラ ド 解像度 変化畳 込 層
•
レ ヤ い フ ル 使用•
ハ パーパラ メ ー : ーネ ル、 パッ デ ン 、 ト ラ ド • 重 ーネ ル 表現 • パッ デ ン 解像度 不変化 • ト ラ ド 解像度 変化 出力 入力 14畳 込 層
•
レ ヤ い フ ル 使用•
ハ パーパラ メ ー : ーネ ル、 パッ デ ン 、 ト ラ ド • 重 ーネ ル 表現 • パッ デ ン 解像度 不変化 • ト ラ ド 解像度 変化 出力 入力畳 込 層 ・ 解像度変換
ト ラ ド 数 三種類 畳 込 レ ヤ ー1. Convolution
• ーネ ル3 × 3, パデ ン 1 × 1, ト ラ ド2. Downsampling Convolution
• ーネ ル3 × 3, パデ ン 1 × 1, ト ラ ド3. Upsampling Convolution
• ーネ ル3 × 3, パデ ン 1 × 1, ト ラ ド1/2 Down-convolution Flat-convolution Up-convolution stride stride stride 15CNN レ ヤ ついて
•
畳 込 層 • 空間配置 保護 • パラ メ ー 少 い • 解像度変換可•
プーリ ン レ ヤ • 小さ い移動 不変性 • ト ラ ド あ 畳 込 層 う いい•
全結合層 • 入力 固定 • パラ メ ー 多い • 画像 出力 不必要残差の学習
•
関数f (x)
代わ 残差関数∆
f (x)
学習∆
f (x) = f (x) − x
•
仮定 : 出力 入力 類似•
重0
恒等写像• ILSVRC2015
画像分類コ ン ペテ ョ ン 優勝 Neural NetworkInput
Output
17残差の学習
•
関数f (x)
代わ 残差関数∆
f (x)
学習∆
f (x) = f (x) − x
•
仮定 : 出力 入力 類似•
重0
恒等写像• ILSVRC2015
画像分類コ ン ペテ ョ ン 優勝 Neural NetworkInput
Output
残差の学習
•
関数f (x)
代わ 残差関数∆
f (x)
学習∆
f (x) = f (x) − x
•
仮定 : 出力 入力 類似•
重0
恒等写像• ILSVRC2015
画像分類コ ン ペテ ョ ン 優勝He et al. Deep Residual Learning for Image Recognition. CVPR, 2016.
全層畳 込 ニュ ーラ ルネッ ト ワ ー
•
畳 込 層 使用•
任意 解像度 処理可•
ン コ ー デ ーコ ー 型 • メ モリ ー 減 • 空間解像度 上 Flat-convolution Up-convolution 2×2 4×4 8×8 4×4 2×2 × × Down-convolution空間解像度
•
出力 一個 画素 計算 入力範囲•
レ ヤ 、 ーネ ルや解像度 決定•
画像処理問題 重要 Object Ω Ω Spatial Support Ω Ω 19モデルの容量 ついて
•
覚え 能力•
モデル パラ メ ー 決定 • 普段 100 万以上•
学習難度 関係•
使用メ モリ や計算時間 増加 少モデル(
少 いレ ヤ や ャ ン ネ ル)
•
小容量•
学習 簡単•
訓練デー 少 いい 大モデル(
多いレ ヤ や ャ ン ネ ル)
•
大容量•
学習 困難•
大規模デー 必要モデルの容量 ついて
•
覚え 能力•
モデル パラ メ ー 決定 • 普段 100 万以上•
学習難度 関係•
使用メ モリ や計算時間 増加 少モデル(
少 いレ ヤ や ャ ン ネ ル)
•
小容量•
学習 簡単•
訓練デー 少 いい 大モデル(
多いレ ヤ や ャ ン ネ ル)
•
大容量•
学習 困難•
大規模デー 必要 20デ ープラ ーニン
向いて い 問題 ついて
•
デー 重要•
デ ープラ ーニン 万能 い•
問題 選ぶ 大事•
適切 問題 い • 入力 出力 決 い 、 情報処理 問題 • 正解 一 問題 人間 • デー 集 21デ ープラ ーニン
向いて い 問題 ついて
•
デー 重要•
デ ープラ ーニン 万能 い•
問題 選ぶ 大事•
適切 問題 い • 入力 出力 決 い 、 情報処理 問題 • 正解 一 問題 人間 • デー 集向いて い 問題 ・ 画像分類
•
画像分類 • 入力 : 画像 • 出力 : ラ 確率•
デ ープラ ーニン 代表的 問題•
入力 出力 決 い•
大規模 デー あImageNet
Krizhevsky et al. ImageNet Classiication with Deep Convolutional Neural Networks. NIPS, 2012.
向いて い 問題 ・ 画像分類
•
画像分類 • 入力 : 画像 • 出力 : ラ 確率•
デ ープラ ーニン 代表的 問題•
入力 出力 決 い•
大規模 デー あImageNet
向いて い 問題 ・ 領域分割
•
領域分割 • 入力 : 画像 • 出力 : 画像 各領域 ラ 確率•
デー 作成 難 い•
ラ 数 少 い• ImageNet
学習済 モデル 利用可Chen et al. The Role of Context for Object Detection and Semantic Segmentation in the Wild. CVPR, 2014.
向いて い 問題 ・ 領域分割
•
領域分割 • 入力 : 画像 • 出力 : 画像 各領域 ラ 確率•
デー 作成 難 い•
ラ 数 少 い• ImageNet
学習済 モデル 利用可向いて い 問題 ・ 超解像度
•
超解像度 • 入力 : 画像 • 出力 : 高解像度 画像•
デー 集 や い•
解決 問題•
画像処理問題 扱いKim et al. Accurate Image Super-Resolution Using Very Deep Convolutional Networks. CVPR, 2016
向いて い い問題 ・ 画像補完
•
画像補完 • 入力 : 画像+ マ • 出力 : 画像•
画像 作 出 苦手•
高解像度 苦手•
決 形 出力 苦手N. Komodakis and G. Tziritas. Image completion using eicient belief propagation via priority scheduling and
向いて い い問題 ・ 画像補完
•
画像補完 • 入力 : 画像+ マ • 出力 : 画像•
画像 作 出 苦手•
高解像度 苦手•
決 形 出力 苦手Pathak et al. Context Encoders: Feature Learning by Inpainting. CVPR, 2016.
向いて い い問題 ・ 画像補完
•
画像補完 • 入力 : 画像+ マ • 出力 : 画像•
画像 作 出 苦手•
高解像度 苦手•
決 形 出力 苦手向いて い い問題 ・ 画像生成
•
画像生成 • 入力 : ラ ン ムノ • 出力 : 画像•
教師 学習 苦手•
出力 固定•
解像度 低い向いて い い問題 ・ 画像生成
•
画像生成 • 入力 : ラ ン ムノ • 出力 : 画像•
教師 学習 苦手•
出力 固定•
解像度 低いデ ープラ ーニン
向いて い 問題の と め
向い い 問題•
デー 多い•
正解デー 決 い•
入力 出力 固定 さ い•
学習済 モデル 利用 向い い い問題•
デー 少 い•
教師 学習•
入力 出力 固定さ い い•
ユー ー 編集•
高解像度 27データ ついて
•
必要? • 情報 流 い 考え い • ラ ラ ベル 情報 少 い → 100 万枚以上使用 • 領域分割ラ ベル 情報 多い → 1 万枚未満•
品質 大事•
デー 増加 • 反転、 回転、 明度、 コ ント ラ ト 、 ーリ ン …vs
データ ついて
•
必要? • 情報 流 い 考え い • ラ ラ ベル 情報 少 い → 100 万枚以上使用 • 領域分割ラ ベル 情報 多い → 1 万枚未満•
品質 大事•
デー 増加 • 反転、 回転、 明度、 コ ント ラ ト 、 ーリ ン … Cat CatLin et al. Microsoft COCO: Common Objects in Context. arXiv, 2014.
データ ついて
•
必要? • 情報 流 い 考え い • ラ ラ ベル 情報 少 い → 100 万枚以上使用 • 領域分割ラ ベル 情報 多い → 1 万枚未満•
品質 大事•
デー 増加 • 反転、 回転、 明度、 コ ント ラ ト 、 ーリ ン …データ 収集 ついて
•
公開デー ッ ト(ImageNet, Places2, …)
• 著作権問題 • 相応 いデー ッ ト 存在•
公開デー(Flickr, Twitter, …)
• 著作権問題 • ラ ベル い•
自分 デー 集 • 時間 金 • 正確 ラ ベル 難 い • 多量 デー 必要デー 自体 価値 あ ! ! !
29データ 収集 ついて
•
公開デー ッ ト(ImageNet, Places2, …)
• 著作権問題 • 相応 いデー ッ ト 存在•
公開デー(Flickr, Twitter, …)
• 著作権問題 • ラ ベル い•
自分 デー 集 • 時間 金 • 正確 ラ ベル 難 い • 多量 デー 必要デー 自体 価値 あ ! ! !
学習の基礎
1.
デー ッ ト 訓練用 検証用 テ ト 用 分 1.1 訓練用デー モデル 重 学習さ 1.2 検証用デー ハ パパラ メ ー 決 1.3 テ ト 用デー 最後 評価 !2.
デー ッ ト ラ ン ム 順番3.
バッ 学習さ 3.1 小さ 不安定 3.2 大 遅 さ 精度 さ 3.3 問題 違う 分類〜128、 領域分割〜84.
誤差逆伝播法 ロ 関数 最小化5.
二点 問題点 5.1 ン ーフ ッ テ ン 5.2 ーバーフ ッ テ ン 過学習学習の基礎
1.
デー ッ ト 訓練用 検証用 テ ト 用 分 1.1 訓練用デー モデル 重 学習さ 1.2 検証用デー ハ パパラ メ ー 決 1.3 テ ト 用デー 最後 評価 !2.
デー ッ ト ラ ン ム 順番3.
バッ 学習さ 3.1 小さ 不安定 3.2 大 遅 さ 精度 さ 3.3 問題 違う 分類〜128、 領域分割〜84.
誤差逆伝播法 ロ 関数 最小化5.
二点 問題点 5.1 ン ーフ ッ テ ン 5.2 ーバーフ ッ テ ン 過学習 30学習の基礎
1.
デー ッ ト 訓練用 検証用 テ ト 用 分 1.1 訓練用デー モデル 重 学習さ 1.2 検証用デー ハ パパラ メ ー 決 1.3 テ ト 用デー 最後 評価 !2.
デー ッ ト ラ ン ム 順番3.
バッ 学習さ 3.1 小さ 不安定 3.2 大 遅 さ 精度 さ 3.3 問題 違う 分類〜128、 領域分割〜84.
誤差逆伝播法 ロ 関数 最小化5.
二点 問題点 5.1 ン ーフ ッ テ ン 5.2 ーバーフ ッ テ ン 過学習誤差逆伝播法
•
パラ メ ー 更新 :w
ji←
w
ji− λ
∂L ∂wji•
誤差 出力 入力 逆伝播さ∂
L
∂
w
ji=
∂
L
∂
x
n∂
x
n∂
x
n−1. . .
∂
x
i∂
w
ji ニューラル ネットワーク 23.8% Music Store 15.3% Basement 7.9% Cathedral 2.1% Airport ... 推定 順伝播 0.0% Music Store 100% Basement 0.0% Cathedral 0.0% Airport ... 誤差 正解 逆伝播 31誤差関数
•
平均二乗誤差(Mean Squared Error
MSE)
• y: モデル 出力 • y∗: 正解
L(y, y
∗) =
1
n
nX
i=1(
y
i−
y
i∗)
2•
負 対数尤度(Negative Log-Likelihood
NLL)
• y: モデル 出力 対数尤度 • l: 正解ラ ベルL(y, l) = −y
lモデルパラ メ ータ の更新
•
確率的勾配降下法(Stochastic Gradient Descent
SGD)
• 一 ハ パーパラ メ ー 重 更新: wi j ←wji− λ∂∂wLji
•
慣性(Momentum)
• wi j wji vt vt vt 1 wLi j•
Adagrad
• 重 更新率 異•
RMSprop
• Adagrad 最新版•
Adam
• 慣性やバ 調整•
Adadelta
• ラ ーニン レ ート 自動設定 33モデルパラ メ ータ の更新
•
確率的勾配降下法(Stochastic Gradient Descent
SGD)
• 一 ハ パーパラ メ ー 重 更新: wi j ←wji− λ∂∂wLji
•
慣性(Momentum)
• wi j ←wji−vt vt = γvt−1+ λ∂∂wLji•
Adagrad
• 重 更新率 異•
RMSprop
• Adagrad 最新版•
Adam
• 慣性やバ 調整•
Adadelta
• ラ ーニン レ ート 自動設定モデルパラ メ ータ の更新
Alec Radford さ ニメ ー ョ ン
モデルパラ メ ータ の更新 ・ 一番いい?
•
大概、 精度 高い•
ラ ーニン レ ート 重要•
個人的 、Adadelta
使用SGD
慣性Adadelta
Adam
超解像度 領域分割 色付 画像生成[Dong+ 2014] [Nor+ 2015] [Iizuka+ 2016] [Radford+ 2016]
汎化能力
Generalizing Training
•
Dropout
[Srivastava et al. 2014]
• 学習 間 ノ ード ラ ン ム ロ • モデル 特定 ノ ード 依存 い
•
バッ 正規化(Batch Normalization)
[Iofe and Szegedy 2015]• 各層 出力 N (0, 1) 正規化 • モデル中 使用
•
デー 増加 • 反転 • 小さ い回転 • ロ ッ プ学習の問題点
•
学習 間 ロ 監視 • 低いロ 必 一番いいモデル い! ! ! • 検証用デー 精度 使 う•
ン ーフ ッ テ ン • モデル 重 足 い • 解決方法 : 重 増や•
ーバーフ ッ テ ン • デー 足 汎化性能 さ • 解決方法 : dropout、 デー 増加… イテレーション モデル1 訓練用データのロス 36学習の問題点
•
学習 間 ロ 監視 • 低いロ 必 一番いいモデル い! ! ! • 検証用デー 精度 使 う•
ン ーフ ッ テ ン • モデル 重 足 い • 解決方法 : 重 増や•
ーバーフ ッ テ ン • デー 足 汎化性能 さ • 解決方法 : dropout、 デー 増加… モデル1 訓練用データのロス 訓練用データのロス モデル2学習の問題点
•
学習 間 ロ 監視 • 低いロ 必 一番いいモデル い! ! ! • 検証用デー 精度 使 う•
ン ーフ ッ テ ン • モデル 重 足 い • 解決方法 : 重 増や•
ーバーフ ッ テ ン • デー 足 汎化性能 さ • 解決方法 : dropout、 デー 増加… イテレーション モデル1 訓練用データのロス モデル1 検証用データの精度 訓練用データのロス モデル2 検証用データの精度 モデル2 36学習の問題点
•
学習 間 ロ 監視 • 低いロ 必 一番いいモデル い! ! ! • 検証用デー 精度 使 う•
ン ーフ ッ テ ン • モデル 重 足 い • 解決方法 : 重 増や•
ーバーフ ッ テ ン • デー 足 汎化性能 さ • 解決方法 : dropout、 デー 増加… 訓練用データのロス ロスが高い 検証用データの精度 訓練用データの精度精度が同じ学習の問題点
•
学習 間 ロ 監視 • 低いロ 必 一番いいモデル い! ! ! • 検証用デー 精度 使 う•
ン ーフ ッ テ ン • モデル 重 足 い • 解決方法 : 重 増や•
ーバーフ ッ テ ン • デー 足 汎化性能 さ • 解決方法 : dropout、 デー 増加… イテレーション 訓練用データのロス ロスが低い イテレーション 検証用データの精度 訓練用データの精度精度が大分違う 36学習済 のフ ルタ
•
低レ ベル : 角、 縁、 色…•
中レ ベル : テ ャ …•
高レ ベル : 犬 顔、 鳥 足…Layer 1 Layer 2 Layer 3 Layer 4
Low-Level Mid-Level High-Level
フ
ン チュ ーニン
•
大規模デー モデル 学習•
最終層 新 い層 入 替え•
新 いデー 学習 続•
小さ いデー ッ ト 性能向上•
覚え 忘 さ い う 小さ い学習率•
最終層 学習率 大 い ... ... ... Input Output Training 38フ
ン チュ ーニン
•
大規模デー モデル 学習•
最終層 新 い層 入 替え•
新 いデー 学習 続•
小さ いデー ッ ト 性能向上•
覚え 忘 さ い う 小さ い学習率•
最終層 学習率 大 い ... ... Input Output New!フ
ン チュ ーニン
•
大規模デー モデル 学習•
最終層 新 い層 入 替え•
新 いデー 学習 続•
小さ いデー ッ ト 性能向上•
覚え 忘 さ い う 小さ い学習率•
最終層 学習率 大 い ... ... ... Input Output Small Dataset Training 38と め
•
デー • 学習始 前 解析 • デー 増加•
モデル • バッ 正規化 • 最初 解像度減•
学習 • 過学習 気 • 検証用デー 使用 • 解像度 下 い•
学習 • ーバーフ ッ テ ン 気 • 学習中ロ や検証用デー 精度 監視 39ハッ ド
ついて
•
基本的Nvidia
GPU
マ ン• GPU
あ あ いい • 分散コ ンピュ ーテ ン • ハ パーパラ メ ー ・ ュ ーニン• GPU
選択肢 1. ラ ド コ ン ピ ュ ーテ ン 2. Nvidia Tesla ーバー用 3. Nvidia GeForce 民生用•
現在値段 不安 40ラ ド コ ン ピュ ーテ ン
•
長所 • 使う 分 払う • ーバー室不必要•
短所 • 値段 不安定 • デー ッ ト 移動 大変 NIPS @Reza_Zadehサーバー設置
•
電源工事 必要 ーバー一台200V/30A
•
ーバー室 重要点 • ラ ッ 型 • 無停電電源装置 • 温度管理 • ネッ ト 速度 NAS 等•
ーバー 重要点 • デー ッ ト 読 込 専用SSD • デー 増加等 CPU • RAM 速度 42サーバー設置
•
電源工事 必要 ーバー一台200V/30A
•
ーバー室 重要点 • ラ ッ 型 • 無停電電源装置 • 温度管理 • ネッ ト 速度 NAS 等•
ーバー 重要点 • デー ッ ト 読 込 専用SSD • デー 増加等 CPU • RAM 速度サーバー設置
Tesla 対 GeForce
注意 :Nvidia
ラ ン デー ン ーTesla
使 用可• Tesla
• V100、 P100、 K80、 … + 高性能 + 低発熱量 - 値段 高い - 不必要機能 FP64• GeForce
• 1080、 Titan X、 … + 安い 約 割 - 高発熱量 - 壊 や い基本環境
•
基本的全部Linux Ubuntu
LTS
等•
線型代数学ラ ブラ リ :OpenBlas / Intel MKL
• Nvidia
深層学習ラ ブラ リCUDNN
• Python
環境 :Anaconda
、Docker
、 …深層学習フ レ ームワ ー
そ の
•
Cafe
• C 言語 python 可 • 硬い 、 速 効率的 • Cafe2 置 換え• PyTorch / Chainer
• Python 言語 • 動的 ラ フ 定義 • 研究 焦点 当• Tensorlow
• Python 言語 • 静的 動的 ラ フ • 生産 焦点 当 45深層学習フ レ ームワ ー
そ の
• Cafe
• C 言語 python 可 • 硬い 、 速 効率的 • Cafe2 置 換え•
PyTorch / Chainer
• Python 言語 • 動的 ラ フ 定義 • 研究 焦点 当• Tensorlow
• Python 言語 • 静的 動的 ラ フ • 生産 焦点 当深層学習フ レ ームワ ー
そ の
• Cafe
• C 言語 python 可 • 硬い 、 速 効率的 • Cafe2 置 換え• PyTorch / Chainer
• Python 言語 • 動的 ラ フ 定義 • 研究 焦点 当•
Tensorlow
• Python 言語 • 静的 動的 ラ フ • 生産 焦点 当 45深層学習フ レ ームワ ー
そ の
•
Cafe2
• C++言語 • PyTorch 補足• Torch
• Lua 言語 • ラ ブラ リ 少 い • PyTorch 置 換え•
さ あ !深層学習フ レ ームワ ー
そ の
• Cafe2
• C++言語 • PyTorch 補足•
Torch
• Lua 言語 • ラ ブラ リ 少 い • PyTorch 置 換え•
さ あ ! 46深層学習フ レ ームワ ー
そ の
• Cafe2
• C++言語 • PyTorch 補足• Torch
• Lua 言語 • ラ ブラ リ 少 い • PyTorch 置 換え•
さ あ !ONNX: Open Neural Network Exchange
•
モデル フ ーマ ッ ト•
複数 フ レ ーム ワ ー 対応• python
モデル 学習 、C++
ン ド ロ ド 等 デプロ•
全部 レ ヤ 対応 い い学習
モデル モデルデプロイ
47ラ フ ス ッ チの線画化
ラ フ ス ッ チの線画化
ラ フ ス ッ チの線画化
ラ フ ッ 線画 ラ フ ッ 線画
最初の結果
•
簡単 モデル 定義•
デー 揃え 学習さ最初の結果
•
簡単 モデル 定義•
デー 揃え 学習さ•
ラ フ ッ 正解デー 合わ逆方向データ 制作
•
デー 品質 重要•
ラ フ 線画化 合わ い 通常 デー 作成•
線画 ラ フ 化 ぴ 逆方向デー 作成ラ フ ス ッ チデータ セッ ト
• 68
枚 ラ フ ッ 線画 ペ• 5
人 ラ ト レ ー ー• 424 × 424
画素 画像パッ 使用 ・・・ Extracted patches Sketch dataset ・・・ 53データ 拡大
• 68
枚 デー ッ ト 足 い•
訓練デー 画像 ーリ ン•
学習 間 ラ ン ム 回転 反転•
入力画像 さ 加工 : ト ーン 調整、 ぶ 、 ノ 入力 ト ーン 調整 ぶ ノ全層畳 込 ニュ ーラ ルネッ ト ワ ー
ト ラ ド 数 三種類 畳 込 レ ヤ ー1. Flat-convolution
1.1 ーネ ル3 × 3, パデ ン 1 × 1, ト ラ ド2. Down-convolution
2.1 ーネ ル3 × 3, パデ ン 1 × 1, ト ラ ド3. Up-convolution
3.1 ーネ ル4 × 4, パデ ン 1 × 1, ト ラ ド1/2 Down-convolution Flat-convolution Up-convolution stride stride stride 55モデル
• 23
層•
出力 解像度 入力 同•
ン コ ー ー ・ デ ーコ ー ー型 • メ モリ ー 減 • 空間解像度 上 Flat-convolution Up-convolution 2×2 4×4 8×8 4×4 2×2 × × Down-convolution学習
•
全層ラ ン ム 重 学習•
損失関数 重 平均二乗誤差 使用•
バッ 正規化[Iofe and Szegedy 2015]
必要• ADADELTA [Zeiler 2012]
最小化入力 出力 正解
実験環境
• Intel Core i7-5960X CPU (3.00GHz)
• NVIDIA GeForce TITAN X GPU
•
学習時間 約3
週間• GPU
使う 一秒以内 処理可能 解像度 画素数CPU (
秒) GPU (
秒)
加速320 × 320
102,400
2.014
0.047
42.9×
640 × 640
409,600
7.533
0.159
47.4×
1024 × 1024 1,048,576
19.463
0.397
49.0×
比較
入
力
Potrace
Adobe Live Trace
提
案
手
法
比較
入
力
Potrace
Adobe Live Trace
提
案
手
結果
自動色付け
データ ついて
•
簡単 作•
現代 ラ ー写真 白黒• MIT
Places
デー ッ ト 使用[Zhou et al. 2014]
Abbey Airport terminal Aquarium Baseball field
Dining room Forest road Gas station Gift shop
⋯
⋯
問題の難度
•
パッ 見 空 天井 区別 い•
モデル 改良 必要問題の難度
•
パッ 見 空 天井 区別 い•
モデル 改良 必要?
正解デー 普通CNN
63問題の難度
•
パッ 見 空 天井 区別 い•
モデル 改良 必要モデルの改造
•
モデル 色 予想 、 白黒写真 加え•
問題 パッ 情報 足 い•
解決方法 : 大域特徴 利用•
提案 統合レ ヤ パッ 大域特徴 結合 彩度マップ 中レベル特徴抽出 ネットワーク 色付け ネットワーク 輝度マップ (入力画像) 低レベル特徴抽出 ネットワーク 64モデルの改造
•
モデル 色 予想 、 白黒写真 加え•
問題 パッ 情報 足 い•
解決方法 : 大域特徴 利用•
提案 統合レ ヤ パッ 大域特徴 結合 彩度マップ 中レベル特徴抽出 ネットワーク 色付け ネットワーク 輝度マップ (入力画像) 低レベル特徴抽出 ネットワーク 大域特徴抽出ネットワーク 統合レイヤ統合レ ヤ
•
大域特徴 局所特徴 統合 層• W
、b
学習さ•
大域特徴 局所特徴 練 込•
解像度 対応 大域特徴抽出ネットワーク 統合レイヤ...
...
...
色付け ネットワーク 中レベル特徴抽出 ネットワーク 統合レイヤ 65モデルと 学習
•
全層 ラ ン ム 学習• ADADELTA
使用•
ロ 使用 • MSE ロ 色付 学習さ • 分類誤差 大域特徴 学習 支援 彩度マップ 中レベル特徴抽出 ネットワーク 色付け ネットワーク 輝度マップ (入力画像) 低レベル特徴抽出 ネットワーク 大域特徴抽出ネットワーク 統合レイヤモデルと 学習
•
全層 ラ ン ム 学習• ADADELTA
使用•
ロ 使用 • MSE ロ 色付 学習さ • 分類誤差 大域特徴 学習 支援 彩度マップ 中レベル特徴抽出 ネットワーク 色付け ネットワーク 輝度マップ (入力画像) 低レベル特徴抽出 ネットワーク 大域特徴抽出ネットワーク 統合レイヤ 20.60% 庭園 16.13% アーチ 13.50% 修道院 7.07% 植物園 6.53% ゴルフ場 推定シーン 分類 ネットワーク 66比較
入力画像 [Larsson+ ’16] [Zhang+ ’16] [Iizuka+ ’16]
比較
比較
入力画像 [Larsson+ ’16]
[Zhang+ ’16] [Iizuka+ ’16]