MATLAB Answers

ssk
0

AlexNetを利用​した転移学習における​特徴抽出につきまして

Asked by ssk
on 30 May 2019
Latest activity Commented on by ssk
on 31 May 2019
機械学習初心者です。特徴抽出の概念でつまづいているところがございましてご質問いたしました。
下記リンクがAlexnetを利用した転移学習のリンクとなります。
本チュートリアルでは、まず、事前に訓練されたAlexnetを入力画像に適用し、次にCNN出力(特徴)をネットワーク層から抽出して、抽出された特徴は新しいパターン分類器を訓練するために使用されるかと思います。
Alexnetのもともとのデータセット(ImageNet)に含まれていない医用画像のデータセット(たとえば細胞や人間の臓器など)で新しいパターン分類器を作りたい場合、この方法を用いてもよろしいでしょうか。
また、仮に医用画像のデータセットが100枚だとすると、既存のImageNet 1,400万枚+100枚 = 1,400万100枚の特徴が抽出されるのでしょうか。それとも、100枚は分類にのみ使われ、特徴として抽出されるのはあくまでImageNetのみでしょうか。
あわせて、本チュートリアルではfine-tuningは行っていないという認識でよろしいでしょうか。
どうぞよろしくお願いいたします。

  0 Comments

Sign in to comment.

1 Answer

Answer by Kenta Itakura on 31 May 2019
 Accepted Answer

リンクを確認しましたが、これがfine-tuningと呼ばれるものです。英語版を見るとそのフレーズを確認できます。
Alexnetをインポートした結果、ネットワーク構造や、重みなどの条件はAlexnetのものが採用されますが、このように学習を行うと、重みやバイアスは更新されます。そのため、imagenetをベースにしたものをそちらの手元のデータで微調整する形になります。
imagenetに医用画像は含まれていないのですが、ゼロから自前で作るよりはよい精度が見込まれるかと思います。医用画像用に少しアレンジを加えるのが望ましいですが、少し作りこみが必要かもしれません。

  3 Comments

ssk
on 31 May 2019
Itakuraさま、ご回答ありがとうございます。こちらでも英語版のリンクを確認したところ、確かにfine-tuningの記載を確認できました。
Imagenetをベースにしたものを手元のデータで微調整とありますが、この場合分類されているのはあくまで医用画像で、imagenetのデータは特徴抽出に用いたのみということでしょうか?
医用画像向けのモデル構築は各論文などを参考に進めさせて頂きます。アドバイスありがとうございました!
Kenta Itakura on 31 May 2019
特徴抽出+SVMというのと、このリンクにあるように、ネットワーク構造などをインポートして、そのあとは通常通りCNNの学習を行うものがあります。おそらく、おっしゃっているのは、前者のほうで、またちがうドキュメントにあります。今回の例はAlexnetに、自分のタスク、例えば5つの分類問題用の全結合層などをくっつけて学習を行うものです。こちらは、バックプロパゲーションなどで通常のCNNのような学習を行うので、重みが更新されていきます。よって、この場合分類されているのは医用画像で、imagenetのデータでalexnetを構成した、ということと思います。
layersやそれに相当する変数をクリックしていけば、重みにアクセスできます。学習後に見てみると変わっていることがわかると思います。
ssk
on 31 May 2019
前者と後者を混同しておりました。重みの更新につきましてもご示唆を頂きありがとうございました!

Sign in to comment.