【E資格不合格から学ぶ】AlexNet(画像認識)のポイントを解説!

  • 「AlexNet」について学びたいけど理解できるか不安・・・
  • 「AlexNet」についてどこから学んでいいか分からない?
  • 「AlexNet」のポイントを教えて!

 「AlexNet」は深いCNN(畳み込みニューラルネットワーク)を用いて画像認識を行う深層学習モデルであり、2012年にILSVRC(物体検出コンペティション)においてSVM(サポートベクターマシン)を用いた従来の機械学習手法に対して圧勝したものですが、興味があっても難しそうで何から学んだらよいか分からず勉強のやる気を失うケースは非常に多いです。

 私は過去に基本情報技術者試験(旧:第二種情報処理技術者試験)に合格し、また2年程前に「一般社団法人 日本ディープラーニング協会」が主催の「G検定試験」に合格しました。現在、「E資格」にチャレンジ中ですが3回不合格になり、この経験から学習の要点について学ぶ機会がありました。

 そこでこの記事では、「AlexNet」のポイントについて解説します。

 この記事を参考にして「AlexNet」が理解できれば、E資格に合格できるはずです。

<<「AlexNet」のポイントについて今すぐ見たい方はこちら

目次

1.AlexNetの概要

AlexNetの概要

2.AlexNetの構造

Alex Net のモデル構造
Alex Net のモデル構造
過学習を防ぐ施策

・サイズ4096の全結合層の出力にドロップアウトを使用している。

AlexNetにおける畳み込み層から全結合層への演算処理のイメージ
AlexNetにおける畳み込み層から全結合層への演算処理のイメージ

3.Pythonコード

パラメータ名概要
axis0または’index’
1または’columns’
「0または’index’」(列データ)の中での最大値を取得するor
「1または’columns’」(行データ)の中での最大値を取得するかを指定
max(axis=0)1番目はaxis=0で指定最大値を取得できる
shape各次元毎の要素数を示す
reshape第1引数:変更したい配列を指定
第2引数:タプルまたはリストで変更後の形状を指定
配列の形状を変換
T〇○○.TT属性で元の二次元配列(行列)の転置行列を取得できる
プーリング演算で用いられるPythonコード

4.AlexNetの改善モデル

ZFNetとは
  • AlexNetの問題を指摘
  • カーネルサイズとストライドを小さく設定
  • 2013 ILSVRCの優勝モデル

5.まとめ

【AlexNetの特徴】
  • 畳み込み演算を行う層+最大プーリングを複数用いる手法
  • 過学習対策→ドロップアウトを使用
  • 2012年にILSVRCにおいてSVMを用いた従来の機械学習手法に対して圧勝

最後まで読んで頂きありがとうございます。
皆様のキャリアアップを応援しています
!!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次