ネットワークの深い理解AlexNet

オリジナル住所:https://blog.csdn.net/luoluonuoyasuolong/article/details/81750190

AlexNet
论文:「ディープ畳み込みニューラルネットワークとImageNet分類」
最初の典型的なCNN LeNet5ネットワーク構造であるが、ネットワークの注意喚起最初はAlexNetあり、ネットワーク構造記述の記事「ディープ畳み込みニューラルネットワークは、とImageNet分類」です。この記事のネットワークは、2012 ImageNet競争に掲載された記事を終えた後、チャンピオンシップのモデルを得ることです。著者は、トロント大学などのアレックスKrizhevskyです。アレックスKrizhevskyファクトヒントンの学生、チームリーダーはヒントンは、それが誰であるのですか?これは良い話だろう、と人気のあるオンラインはヒントン、LeCunとBengioはビッグスリーのニューラルネットワークの分野で、LeCunはこの男に昨日の記事で触れたLeNet5の作者(ヤン・ルカン)、であると述べました。今日の主人公、ではないがヒントンが、彼との関係を持って、この論文の筆頭著者は、アレックスはAlexNetと呼ばれるネットワーク構造ので、です。私は紙を読んだ後、出会い理解することがより困難な場所がなかったので、この論文では、顔の概念は、このようなRelu、ドロップアウトとして、前に学習され、興味深いです。私たちは今日、その真の起源を知る前に、学校Reluまでの時間は、それがどのように知っています。2012年に発表された論文は、コンテストに参加するには、モデル内の記事は、ImageNet LSVRC-2010、ImageNetデータセットは、高解像度の画像の120万枚を持って、1000年カテゴリの合計です。テストセットは、トップ1とトップ5に分割し、それぞれ37.5%、及び17%のエラー率を取得します。この結果は、その時点での処理前のレベルを超えています。AlexNet LeNetネットワーク構造が全体的に類似しており、最初の畳み込みは次に、完全に接続されています。しかし、詳細で非常に異なります。AlexNetより複雑。AlexNetパラメータ60百万個の65,000ニューロン、5つの畳み込み、3つの完全に接続されたネットワークを有していて、チャネル層の最終的な出力は、ソフトマックス1000です。AlexNet大幅運用効率を向上させる、2つのGPUを利用して計算し、15回の試験ILSVRC-2012競争のトップ5を得ました。
いくつかの背景
コンピュータビジョンの分野では、物体検出&認識が一般的に解決する方法を学習マシンを使用します。結果の認識を改善するために、我々はより多くのデータは、モデルの汎化性能が改善されていることを確認するように訓練することができます収集することができます。現時点では、マグニチュードmillions.Thisレベルデータ(単純な認識タスクと呼ばれる)は、例えば、非常に良好なパフォーマンスを得られている時:MNIST手書き数字認識タスク、最高のパフォーマンスが<0.3%の誤差に達しています。しかし、現実にはそこにオブジェクト属性にはかなりのばらつきがあるので、彼らはより多くのデータを必要と認識することを学びます。実際には、小さなイメージトレーニングデータは、多くの欠点を持っている、無根拠に基づいている私たちの直感ではなく理論を証明する問題では、理論的には、紙は、「なぜ、実世界のビジュアルオブジェクトである認識は難しい?」 研究方法を提供します。インターネット技術の開発とスマートフォンの普及によって、より簡単に画像データ収集と言うことができます。だから、物事とラベリングとセグメンテーションの現実の収集画像への組織があります。例えば:LabelMe(Labelme :.データベース画像注釈およびウェブベースのツール)、 完全分割画像の何百を含みます。ImageNet(ImageNet :. A大規模階層の画像データベースI)、 高解像度の画像は、実物の以上22,000種類を含め、150億マークが含まれています。
資料では、このネットワークの深さは、非常に重要であることをそう、必然的に私たちが思うようになります、紙で誰が神を知らない覚えているようですので、結果が良くない原因になります任意の層を除去する、このモデルは5層の畳み込みを有していると証明、ニューラルネットワークは任意の多項式限り、十分なニューロンの数をシミュレートし、少しの深さとの関係を持っていることができます。しかし、ここでの実験では、パフォーマンスは、ネットワークの深さに影響を与えるだろうと述べています。
記事はまた、彼らは訓練の5-6日間、このモデルを使用することを言及し、より良い機器と既存のハードウェアインテリジェント許さそんなにメモリは、また、より良い結果を得ることができるので、ネットワークのサイズを制限します。
ネットワークアーキテクチャ
私は醜いネットワークはハハ、ああ表さ感じる理由AlexNetネットワーク構造は、このようなものです。
このネットワークは、それは、あなたがどのように良い理解する必要があり、非常に複雑な気持ちでしょうか?画像が最初にネットワークの上下に分割され、用紙が2つの部分は、特定のネットワーク層に、それぞれ二つのGPUネットワーク二つのGPUとの対話のためにのみ必要で述べたように、この構成は完全に両者の使用であります効率を高めるために、GPUの演算ブロックが、実際には、大きな違いは、ネットワーク構造ではありません。理解を容易にするために、我々は今だけGPU又はCPUを算出していると仮定し、我々は、ポイント方向幾分簡略化領域からネットワークアーキテクチャを分析します。ネットワーク層、層5畳み込み、三層完全接続層の8層の合計。
第一層:畳み込み層、入力は、224×224×3224×224×で 3 224 \回224 \ 画像倍3224×224×3、畳み込みカーネル96の数、用紙48を計算2つのGPU核;コンボリューションカーネルのサイズは11×11×311×11×である 3 11 \回11 \回311×11×3;ストライド= 4、ストライドは、 ステップサイズを表し、パッド= 0、拡張されたエッジが示されていません。
コンボリューション後の画像サイズは、それは何ですか?
ワイド=(224 + 2 *パディング- kernel_size)/ +のストライド1 = 54である。
高さ=(224 + 2 *パディング- kernel_size)/ +のストライド1 = 54である
DIMENTION = 96
、次いで(ローカル応答正規化された)、POOL_SIZEをプール続い=(3,3)、ストライド = 2、パッド= 0 最初の層の最終的に得られた特徴マップが畳み込ま
最終出力は、第一層の畳み込みであります

第二層:畳み込み層2、入り組ん入力特徴マップの層は、数256の畳み込みは、2つの論文は、GPU 128畳み込みカーネルです。コンボリューションカーネルのサイズは5×5×485×5×48 5 \回5 \回×5×48 485;パッド= 2、ストライド= 1;最後にmax_pooling LRNを行い、POOL_SIZE =(3,3) 、ストライド= 2。

第三層:3畳み込み、第二の入力、出力層は、畳み込みコアの数はkernel_size =(3×3×2563×3×256 3 \回3 \倍2563×3×256)、パディング、384であります= 1、及び第3の層は、LRNプール行いません

第四層:畳み込み4は、入力が第3層目の出力である、畳み込みコアの数は384、kernel_size =(3×33×3 3 \回33×3)、パディング= 1、及び第三の層であります無LRNとプール

第五の層:5畳み込み、第4の入力層の出力は、畳み込みコアの数は256、kernel_size =(3×33×3 3 \回33×3)、パディング= 1です。次いで直接max_pooling、POOL_SIZE =(3,3)、ストライド= 2。

6,7,8層は、ゲームImageNet 1000の分類番号、上に紹介したように各層4096、1000内のニューロンの数は、最終的な出力ソフトマックスで、完全接続層です。層に完全に接続されており、RELUドロップアウトを使用。
上記の構造は単純良好又は構造の使用、理解を容易にするために、上記の二つのGPUのGPU、及び紙に差があることが前提であるが、。
ReLU非直線性(整流線形単位)
標準出力LPニューロン一般的に使用TANH又はシグモイド活性化関数として、TANH(X)= sinhxcoshx = EX-E-XEX + E-xtanh(X)= sinhxcoshx = EX-E-XEX + E-X TANH(X) = \ FRAC {sinhx} {coshx} = \ FRAC {E ^ X - E ^ { - X}} {E ^ X + E ^ { - X}} TANH(X)= coshxsinhx = EX + E-XEX-EX 、シグモイド:F(x)は11 + E-XF(X)= 11 + E-XF(X)= \ FRAC {1} = {1つの+ E ^ { - X}} F(X)= 1 + E-X1。しかしながら、これらの勾配の計算における非線形飽和関数経時非飽和電流関数f(x)= MAX(0において 、x)はF(X)= MAX(0、x)はF(X)= MAX(0 x)は、F(X)= maxの多くの (0、x)はゆっくりと、整流線形単位(ReLUs)本明細書に言及しました。はるかに高速深研究TANHで同等以上ReLUs使用。
活性化関数とデータセットCIFAR-10S実験では、0.25の収束曲線にエラーレートが収束、図ReLUsのTANHを使用する典型的な4層ネットワークは、あなたが明らかにギャップ収束速度を見ることができます。点線は実線がReLUsあり、TANHです。
ローカル応答正規化(正規化部分応答)
ニューラルネットワークでは、我々は、非線形マッピングを行うために、出力ニューロンの活性化関数を使用するが、従来の範囲のこれらTANH及びシグモイド活性化関数がある範囲であるが、ReLU得られた活性化関数の範囲はこれReLUが正規化された結果を得るために、範囲はありません。これは、ローカルレスポンス正規化です。次式のように正規化されたパーシャルレスポンスの方法
。BI(X、Y)= AI(X、Y)(K +αΣmin(1-N、N-I + / 2)J = MAX(0、I- N / 2)(AJ(X 、Y))2)βB(x、y)はiが(X、Y =)をI(K +αΣj= MAX(0、I-N / 2)分(N- 1、I + N / 2) ((x、y)のJ)2)βB ^ {I} _ {(X、Y)} = \ FRAC {^ {I} _ {(X、Y)} } {(kは+ \アルファ\和\ limits_ {J = MAX(0、I - N / 2)} ^ {分(N-1、I + N / 2)}(^ J _ {(x、y)は})^ 2)^ {\ベータ}}、B(x、y)は私は((k +αJ= MAX(0、I-N / 2)Σmin(N-1、I + N / 2)= (x、y)はJ) 2)βA(x、y)は、I
この式は、それが何を意味するのでしょうか?AI(x、y)は( x、y)のIA ^それ_ {(X、Y)}(x、y)はiが表すReLU出力(x、y)の位置i番目のカーネル、nはAl(X、Y)(表わす x、y)のIA ^ _ {(X、Y)} 私は、D近隣A(x、y)の数、Nは、カーネルの総数を表します。BI(x、y)はB( x、y)はB ^ I _ {(X、Y)}、B(x、y)はiがLRNの結果を表します。結果ReLU出力とその隣人はそれを理解する方法を、部分的正規化の範囲を作りますか?私はそれが私たちの最大値と最小値は、ベクトルX =想像正規化ドメインと少し似ていると思う[X_1、X_2を、... x_nに関する]は
、すべての数字は0-1のルール間の正常化に正規化されますです。XI = xixmax-xminxi = xixmax-XMIN X_I = \ FRAC {X_I} {X_ {最大} - X_ {分}} XI = XMAX -xmin XI。
同様の機能を有する上記の式が、負荷の一部ほとんどは、最初の計算は少し複雑になり、その後、他のパラメータα、β、Kα、β、ある K \アルファ、\ベータ、Kα、β、kは。
私たちは図の空想、矩形は、生成された各特徴マップのための畳み込みカーネルを表します。すべてのピクセルはReLU活性化機能を通過した、そして今、我々は、部分的な正規化の具体的なピクセルを持っています。カーネル全てのiに対応する最初のマップを指す緑色の矢印を想定、残りの4つは、次に、長方形の中間緑色画素位置(x、y)を想定し、その周囲の隣接マップを対応する青色の矢印カーネル層であります私は、ローカル正規化されたデータから抽出される必要がある位置(x、y)ネイバーマップに対応するカーネルピクセルの値です。すなわち、上記の式は(x、y)は(AJで X、Y)J ^ J _ {(X、Y)}(x、y)のjは。そして、正方画素の値がプラスとこれらの隣人。因子αα\alphaαプラス定数Kを乗じ、次にbetaβ電力\ββ分母がマップに対応するi番目のカーネルの分子の画素値(x、y)の位置です。私が理解した後感はそれほど複雑ではありません。
キーは、パラメータα、β、Kα、β、どのようにされている K \アルファ、\ベータ、Kα、β、kが決定され、紙は濃度は、検証のように決意の最終結果決定言った
。= 2 K、N- = 5、α= 10-4、β= 0.75K = 2、 N = 5、α= 10 -4、β= 0.75、K = 2、N = 5、\アルファ= 10 ^ { - 4}、\ベータ= 0.75K = 2、 。5 = N、α= 10-4、β= 0.75
プール(プールカバー動作)重複
一般的なプーリング層重なり、POOL_SIZEおよびストライドは、一般に、例えば、8×88 8×8 \回画像等しくされていないがあるので、 88×8 層のプールのサイズは2×22×2 2 \倍である場合、 22 ×2、次いで細胞を操作して画像が得られる4×44×4 4 \回 44×4 ストライド<POOL_SIZE、それがプールのカバーを製造する場合はサイズ、この構成は、覆われていないセル動作と呼ばれていますより正確な結果を得ることができるように、畳み込みの動作に多少似ている動作。トップ-1、およびカバードプールエラーレート操作に使用されるトップ5において、それぞれ0.4%及び0.3%減少しました。紙は、訓練モデルの過程でオーバーフィッティングになりにくいプーリング層を覆うことを言いました。
アーキテクチャ全体
カフェを搬送する描画ツールで描画train_val.prototxtネットワーク構成図(カフェ/パイソン/ draw_net.py)及びカフェ/モデル/ bvlc_alexnet /ディレクトリ以下に示すように
この図は、また、ネットワーク構造の2つのよりGPU単一GPUのネットワーク構造です。
オーバーフィット防止
ニューラルネットワークより深刻な問題は、オーバーフィッティング問題、処理されたフィッティングの問題で使用されるデータの拡大とドロップアウト紙の方法があります。
データ増強(データ拡張、元のデータでいくつかの変更を行うことがある)
データの拡張がオーバーフィッティングを防止するための最も簡単な方法です、だけ防ぐために、あなたはより多くのデータセットが異なる買ってあげる、生データを適切に変換する必要がありますオーバーフィッティング。
ドロップアウト
面白いことをたくさんの背後にドロップアウトが、私たちはあまりにも知っている必要はありませんここで、ドロップアウトを知っているだけの必要性は、オーバーフィッティングの目的を阻止するために、全ノードの接続層における神経の一部を削除することです、我々は、上記のグラフで見ることができます第6及び第7階はドロップアウトに設定されています。ドロップアウトの理解は記事の推奨
リファレンス
AlexNetオリジナルの紙
カフェAlexNet
ドロップアウトがの理解
高度なノートターを機械学習|完全に理解Alexnet
----------------
免責事項:この記事では、元の記事CSDNのブロガー豚いんちき」でありますCC 4.0 BY-SAの著作権契約書に従って、再現し、元のソースのリンクと、この文を添付してください。
オリジナルリンクします。https://blog.csdn.net/luoluonuoyasuolong/article/details/81750190

おすすめ

転載: www.cnblogs.com/lzhu/p/11853978.html