【第16回】MacBookProで始めようデータサイエンス ~画像解析のアルゴリズムと評価方法~

ツール・手法

今日はMacBookProでデータサイエンスを進めて行くシリーズの16回目となります。マーケティング領域で使えるデータサイエンス手法をテーマに記事を書いて行きます。今回は特別編として”画像解析のアルゴリズム”をご紹介していきます。

  • 画像解析の概要
  • VGG16
  • NNの基礎
  • CNNの基礎(畳み込み概念、プーリング)
  • 過学習
  • 画像解析の評価指標
  • 注意点

1.画像解析の概要
クラスタ分析は別名 クラスタリングとも言われておりどちらも同じ意味で使われています。クラスタリング(clustering)とは、統計解析手法や機械学習の1種でデータの類似性(=距離計算が一般的)に基づいてデータをグループ分けする手法です。


2.VGG16
VGG16は,”ImageNet”と呼ばれる大規模画像データセットで学習された,16層からなるCNNモデルのことです。有名な学習済みモデルの1つで2014年に発表されました。”ImageNet”で学習されたモデルには他にGoogLeNet,AlexNetなどがあります。Pythonで使用する際には”Keras”でVGG16を使用して行きます。

【補足】
 構造ですが、畳み込み層(Convolution2dの部分)が13層、全結合層(fc1, fc2, predictions)が3層で全部で16層となります。畳み込み層やそれを集約するプーリング層で画像の特徴として、それを全結合層で分類するという構造をしています。

【推奨URL】
https://newtechnologylifestyle.net/vgg16originalpicture/

3.NNの基礎
 NN(=ニューラルネットワーク)の略です。脳内の神経細胞(ニューロン)のネットワーク構造を模した数理モデルです。相互に接続する複数ノードからなる多層で構築されています。ニューラルネットワークはデータから学習できるという特徴から、パターン認識、データ分類、データサイエンスでは予測モデル構築で良く使われています。
 

4.CNNの基礎(畳み込み概念、プーリング)
 CNNと(=Convolutional Neural Network)の略です。日本語では”畳み込みニューラルネットワーク”とも呼ばれています。いくつもの深い層を持ったニューラルネットワークであり、主に画像認識の分野において頻繁に利用されています。 CNNは、”畳み込み”や”プーリング層”といったいくつかの特徴的な機能を備えた層を積み上げることで構成されています。画像解析の中でも特に”一般物体認識”の分野で優れた性能を備えるアルゴリズムとして活用されています。

5.過学習
 ”過学習”とは、別名過適合とも言われています。画像解析などの機械学習・AIを行う際に学習データと検証データが余りにも当たり=(適合)別のデータ(未知データ)では当たらない(=正解率低くなる)ことを言います。汎用性がないとも言います。

【過学習が起こる代表的なパターン】
・学習用のデータが少ない
・データに偏りがある
・モデルやアルゴリズムが合っていない

6.画像解析の評価指標
画像解析は分類問題となりますので基本は以下の3つがメイン指標です。
・正解率(Accuracy)は、実測値と予測値がどらだけ一致しているかの指標です。
・適合率(Precision)は、画像解析の場合は誤検知にどれだけ強いかを測定する指標です。
・再現率(Recall)は、見逃しにどれだけ強いかを測定する指標です。

更に目的に応じて以下の2つのサブ指標を使い分けます。
・F値(F-measure)は、適合率と再現率を組み合わせ作られた指標です。難しくいうと”適合率と再現率の調和平均”をとります。
・IoU(Jaccard係数)は、どれだけ正確に穴あきを描画できているかを測る指標です。

【サブ指標の使い分けイメージ】
・F値:検知したいものが検知されているかどうか評価したい場合
・IoU:輪郭(りんかく)の漏れや若干のはみ出しを厳密に評価したい場合

7.注意点
ある程度の精度を担保するためには、学習の画像枚数が出来るだけ多く取得していって下さい。そうしないと”過学習”となってしまい実務で利用できる十分なモデルが出来ないという残念な結果になってしまいます。

今回は以上となります。最後まで読んで下さりありがとうございました。

コメント

タイトルとURLをコピーしました