質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

CNN (Convolutional Neural Network)

CNN (Convolutional Neural Network)は、全結合層のみではなく畳み込み層とプーリング層で構成されるニューラルネットワークです。画像認識において優れた性能を持ち、畳み込みニューラルネットワークとも呼ばれています。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Q&A

0回答

1479閲覧

ResNetが劣化問題を解決する仕組みについて

L.K

総合スコア0

Keras

Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

CNN (Convolutional Neural Network)

CNN (Convolutional Neural Network)は、全結合層のみではなく畳み込み層とプーリング層で構成されるニューラルネットワークです。画像認識において優れた性能を持ち、畳み込みニューラルネットワークとも呼ばれています。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

0グッド

0クリップ

投稿2021/02/02 16:35

編集2021/02/02 17:03

ResNetが劣化問題を解決する仕組みについて伺いたいです。
論文や、解説のサイトを見て自分なりに解釈したのですが、それが正しいか不安なので間違い等ありましたらご指摘をお願い致します。

ある程度深い層ではそれなりの精度がすでに得られているため、入力と出力はほとんど恒等関数の状態
→その恒等関数の状態を保ちつつ、更に学習を行って精度を向上させるのは困難(これが劣化問題の原因)
→ショートカットを与えることによって、恒等関数を保つこと専用のルートをつくる。それにより本ルートは学習に専念できる。
→最後に学習した分と、恒等関数分を足し合わせる

抽象的な表現になってしまいましたが、このような解釈でよろしいでしょうか。

また、機械学習を学ぶ上で参考にした書籍に、ResNetは勾配消失問題を解決すると書かれてありました。しかし、論文には勾配消失問題はBatch Normalization等で殆ど解決済みであるとされており、他の質問者様も同じ解答を得られていました。
書籍には、ショートカット構造をとることで、逆伝播時に勾配をそのまま流すことができるので意味ある情報を届けることができると書かれております。
実際は層を深くするとBatch Normalizationでは勾配消失問題を解決しきれていないのでしょうか。そして、ResNetがそれを解決しているのでしょうか。

長文で申し訳ありませんが、どなたかご教授下さい。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

L.K

2021/02/03 14:37

ご助言ありがとうございます。 両記事拝見致しました。 拝見するに、スキップ構造は恒等関数の働きをするということでよろしいのでしょうか。 また、アンサンブル的な動きをするということは理解できました。層が増えるにつれてパスの種類が増え、恒等関数分の処理を行うパス、畳込みを行うパス、勾配をそのまま流すパス…など様々な特徴をもつ?パスがあるために精度が向上するということでしょうか。
toast-uz

2021/02/03 22:25

私も詳しいわけではありませんが、そのような理解でよいと思います。 1点追記すると、ResNetの名前Residualに由来するように「残差」という概念があります。すなわち、恒等関数の効果により畳み込みは通常の位置づけではなく、差分のみを処理する動きになるということです。 なお、残差の説明はググればたくさんでてきますが、それを勾配消失問題対策として説明している記述が多く、最近の理解とやや違っていますので、ご注意ください。
L.K

2021/02/04 14:11

詳しいご説明ありがとうございます。 残差学習について整理できました。 ひとつ質問なのですが、実際にResNetを用いて、CNN3層でも十分な精度を得ることができている画像に対して学習を行ってみました。ResNet18,34,50,101,152それぞれで検証すると、少しではありますが精度が低下していってしまいます。これは、ResNetにおいても劣化問題が起こってしまうほどに浅い学習で良いデータだったという解釈でよろしいのでしょうか。
toast-uz

2021/02/06 11:11

万能なアルゴリズムは無く、与えられた問題に依ります。「ResNetにおいても劣化問題が起こってしまうほどに浅い学習で良いデータだった」といった一般論ではなく、たまたまその問題がそうだった、以上のことは言えません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問