Deep learning を用いた年齢推定 - lang.sist.chukyo...

24
2015 年度 卒業論文 Deep learning を用いた年齢推定 指導教員 白井英俊 教授 中京大学 情報理工学 機械情報工学科 学籍番号 H411090 氏名 藤野 孝昭 (2016 1 )

Transcript of Deep learning を用いた年齢推定 - lang.sist.chukyo...

Page 1: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

2015 年度

卒業論文

Deep learning を用いた年齢推定

指導教員 白井英俊 教授

中京大学 情報理工学部 機械情報工学科

学籍番号 H411090

氏名 藤野 孝昭

(2016 年 1 月)

Page 2: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

1

要 旨

題目 Deep learning を用いた年齢推定

学籍番号 H411090 氏名 藤野 孝昭 指導教員 白井 英俊

本研究は Deep Learning を用いた年齢推定システム作成を主目的とし、それ

により Deep Learning の理解を深めるとともにその可能性を探ることを目的と

したものである。Deep Learning はニューラルネットワークの一種で、ニュー

ラルネットワークの課題であった多層構造での学習を可能にしたものである。

近年急速に発展し画像認識や音声認識などで成果をあげ、多くの研究に取り入

れられている。また年齢推定とは人の顔の画像から年齢を判断するものであり、

画像認識分野で研究が行われている。本研究では、Deep Learning を用いてこ

の年齢推定を行うシステムを作成し、既存の年齢推定サービスと比較すること

により、精度評価を行った。

研究は次のように行った。まず年齢推定が可能な人の画像収集を行った。そ

して収集した顔画像から目の画像を切りだし学習データとした。目だけでも十

分年齢を判定できると考えたからである。学習データは年齢ごとではなく年代

ごとにクラス分けし、機械学習により分類器を作成した。分類器の作成には

LabellioというDeep Learningによる画像分類器の作成が可能なWebサービス

を用いた。学習データによる学習結果は 75%であった。次に作成した分類器と

年齢推定が可能な Web サービスである How-Old.net との精度比較を行った。正

解率は Labellio が 28%、How-Old.net が 37%であった。t 検定を行い両者には

有意な差があることが分かった。年代ごとのクラス分類では差がみられたので、

新たにデータを見直し年齢ごとにクラス分けし再学習を行った。しかし学習結

果は 17%であり精度が低く、システムの比較には至らなかった。

Labellio では画像の枚数やクラスの数を増やすと年齢判別の性能をあげるこ

とができない。そのためアーキテクチャをいろいろ工夫できる Caffe での学習

を試みる必要があると考える。しかし現在のところ、学習させようとするとエ

ラーが表示され学習することができていない。もしも Caffe での学習を行うこ

とができれば、How-Old.net との差をなくすことができると考える。

また顔の表情や向きを考えずに画像を収集した。これらを統一することで差

をなくすことができると考える。しかし実用を考えるとこれらに対応した年齢

推定を可能にすることが課題である。

Page 3: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

i

目次

1 はじめに ....................................................................................................... 1

2 Deep Learning について .............................................................................. 3

3 年齢推定を可能にする分類器の作成 ............................................................ 5

3.1 学習データ ................................................................................................. 5

3.1.1 画像の収集方法 .............................................................................. 5

3.1.2 学習データについて ....................................................................... 5

3.2 Labellio ............................................................................................ 6

3.3 学習 ........................................................................................................ 7

4 How-old.net との比較 .................................................................................. 8

4.1 How-Old.net と本システムとの比較方法 .............................................. 8

4.2 比較に使用するデータ ......................................................................................... 8

4.3 性能比較の結果 ...................................................................................... 10

5 データ見直しによる学習 .............................................................................. 11

5.1 学習データ ............................................................................................. 11

5.2 学習結果 ................................................................................................. 11

6 考察と展望 .................................................................................................... 12

参考文献 ........................................................................................................... 13

付録 .................................................................................................................. 14

Page 4: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

1

1 はじめに

本研究は Deep Learning を用いた年齢推定システム作成を主目的とし、それ

により Deep Learning の理解を深めるとともにその可能性を探ることを目的と

したものである。Deep Learning はニューラルネットワークの一種で、ニュー

ラルネットワークの課題であった多層構造での学習を可能にしたものである。

近年急速に発展し画像認識や音声認識などで成果をあげ、多くの研究に取り入

れられている。また年齢推定とは人の顔の画像から年齢を判断するものであり、

画像認識分野で研究が行われている。本研究では、Deep Learning を用いてこ

の年齢推定を行うシステムを作成し、既存の年齢推定サービスと比較すること

により、精度評価を行った。

研究は次のように行った。まず年齢推定が可能な人の画像収集を行った。そ

して収集した顔画像から目の画像を切りだし学習データとした。目だけでも十

分年齢を判定できると考えたからである。学習データは年齢ごとではなく年代

ごとにクラス分けし、機械学習により分類器を作成した。分類器の作成には

LabellioというDeep Learningによる画像分類器の作成が可能なWebサービス

を用いた。学習データによる学習結果は 75%であった。次に作成した分類器と

年齢推定が可能な Web サービスである How-Old.net との精度比較を行った。正

解率は Labellio が 28%、How-Old.net が 37%であった。t 検定を行い両者には

有意な差があることが分かった。年代ごとのクラス分類では差がみられたので、

新たにデータを見直し年齢ごとにクラス分けし再学習を行った。しかし学習結

果は 17%であり精度が低く、システムの比較には至らなかった。

Labellio では画像の枚数やクラスの数を増やすと年齢判別の性能をあげるこ

とができない。そのためアーキテクチャをいろいろ工夫できる Caffe での学習

を試みる必要があると考える。しかし現在のところ、学習させようとするとエ

ラーが表示され学習することができていない。もしも Caffe での学習を行うこ

とができれば、How-Old.net との差をなくすことができると考える。

また顔の表情や向きを考えずに画像を収集した。これらを統一することで差

をなくすことができると考える。しかし実用を考えるとこれらに対応した年齢

推定を可能にすることが課題である。

本論文の構成は以下のとおりである。2 章では本研究で用いた Deep Learning

がどのようなものか、またニューラルネットワークの課題であった多層構造の

学習どのようにして可能にしたかを説明する。3 章では年齢推定を行うにあたっ

て学習データの収集方法と学習データの特徴を説明する。また画像分類器の作

成にあたって Deep Learning を用いて画像分類器の作成が可能な Labellio につ

いてと学習結果について説明する。4 章では作成した分類器と年齢推定が可能な

Page 5: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

2

Web サービスとの精度比較の方法と結果について説明する。5 章では 4 章で行

った精度比較をもとに新たにデータを用意し再学習行ったことについて説明す

る。6 章では本研究の結果と今後の展望について述べる。また付録として実際に

使用した学習データと Labellio に使用されている、Deep Learning の学習方法

の1つである畳込ニューラルネットのプログラムを載せた。

Page 6: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

3

2 Deep Learning について

本章は岡谷(2015)に基づき記述する。

高度な情報処理の実現を目指し、1940 年代に生物の神経回路網を模範したニ

ューラルネットワークの研究が開始されブームと衰退を繰り返してきた。80 年

代から90年代前半にかけて多層ニューラルネットワークの学習法である誤差逆

伝播法の発明をきっかけに、研究は大きく広がった。しかし 90 年代後半にはこ

のブームも 2 つの理由から衰退した。

理由の 1 つ目は 2 層程度のニューラルネットワークではうまく学習すること

ができるが、それ以上の多層になると期待された結果を得ることができなかっ

たからである。各層の重みを計算する際、深い層に進むにつれて、勾配が急速

に小さくなる、または急速に大きくなり発散してしまう問題がおこる。

理由の 2 つ目は、ニューラルネットワークには層数やユニット数、その他に

学習に結びつくパラメータがあるが、それらが最終的な性能とどのように結び

つくかが分からないことである。

90 年代後半から 2000 年代前半にかけて、Hinton らのディープビリーフネッ

トワークの研究が新たなブームとなったが多層になると学習は以前と同じよう

に困難だった。これに対し Hinton らはディープビリーフネットワークを、層ご

とに制約ボルツマンマシンと呼ばれる単層ネットワークに分解したうえで、貧

欲法の考えに従い、制約ボルツマンマシンを入力層に近い順番に教師なし学習

する方法を提案した。この方法でディープビリーフネットワークは一般的な順

伝播型のニューラルネットワークに転換することが可能で多層であっても学習

を可能にした。またより単純な自己符号化器を使っても多層ネットワークの事

前学習が可能であることが分かった。多層ニューラルネットワークはランダム

に初期化すると学習がうまく行うことができないが、層ごとに教師なし学習を

行う事前学習によって得たパラメータを初期値に使えば、学習が可能である。

画像や音声などのデータは一般に高次元空間に強い偏りは持ちながら複雑に

広がっている。研修者たちは、多層ネットワークがこのようなデータを学習し

たときデータの持つ構造がどのようにネットワークに捉えられ、表現されるか

に関心が向けられた。Le らは大規模なネットワークで自己符号化器を構成し、

You Tube 上の動画から無作為にとりだした 100 万枚の画像を学習させると、特

定の物体に選択的に反応するユニットが自然に生成されることを示した。

その後、音声認識や画像認識の分野で多層ニューラルネットワークの有効性

が確かめられ、過去の記録を次々にぬりかえた。こうして、Deep Learning の

有効性が広く認知されるようになった。

Deep Learning にはいくつかの方法論があり、問題に応じて使い分けされて

Page 7: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

4

いる。たとえば音声認識では層間ユニットが全結合したネットワークが使われ、

自然言語処理や音声認識の特定のタスクでは再帰型ニューラルネットが使われ

ている、また本研究では画像を対象としているため、畳込みニューラルネット1を

使用している。

1 畳込み層とプーリング層の特別な 2 層を含むニューラルネットワーク

Page 8: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

5

3 年齢推定を可能にする分類器の作成

本章では 2.章で述べた Deep Learning をつかい年齢推定を可能にする分類器

の作成を行う。学習データの収集方法と年齢推定を行うにあたってどのような

データをつかったかを説明し、分類器の作成のために使用した Labellio2という

Web サービスと、その学習結果について述べる。

3.1 学習データ

分類器の作成に必要な学習データについて述べる。本研究では年齢推定を目

的とするため、正しく年齢別に画像を収集する必要がある。そのための画像の

収集方法と年齢推定のためにどのような学習データを用いたかを述べる。

3.1.1 画像の収集方法

画像収集には一般に Google などの画像検索サイトが用いられるが、それでは

いつ撮影されたものなのか判断しにくく、年齢の判別が難しいという問題点が

ある。本研究では、年齢情報が重要であるため、生年月日が公開されていて年

齢を判別することができる俳優やスポーツ選手などを対象として画像を収集し

た。具体的には You Tube 上にあげられている動画から顔画像を収集した。You

Tube 上の動画には撮影された年と日付が記載されているか、そうでなくとも撮

影された年の判別が容易だからである。たとえば俳優の場合、映画公開の年の

インタビュー動画がそうである。このようにして対象人物の生年月日と動画の

年と日付から対象人物の年齢を判断した。

動画から顔画像を取り出すには、PC 画面に表示される内容なら何でもキャプ

チャーできる Bandicam3を使用し、対象人物の顔が表示されているフレームで

0.2 秒間隔でキャプチャーし画像を保存した。

このようにして、20 歳から 59 歳の画像を各年齢 3、4 人分で計 100 枚程度、

総計約 4000 枚画像を用意した。

3.1.2 学習データについて

人物の顔画像によってその人の年齢推定を行うにあたり、まず年齢によって

2 Alpaca 社が 2015 年 6 月から提供 (The Bridge 2015) 3 Bandisoft 社 http://www.bandicam.com/jp/

Page 9: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

6

差がでる顔の部位はどこかを考えた。例えば、目のしわやほうれい線などがそ

うであろう。そこでまず、顔全体、口、目の三か所の特徴を抽出することを考

えた。しかし、顔全体および口はひげの長さや濃さにより、年齢によって差が

でるはずの部位が隠れてしまう可能性がある。そこで、データとして目を使用

することにした。なお、顔全体、口、目それぞれ老け方に個人差はあるが、三

か所をそれぞれ学習データに用いたとき(3.2 節参照)、目が一番学習率が高か

ったこともその一つの理由である。4 節で述べる Web 上の年齢判別サービスと

本研究で作成した年齢推定システムの比較には目を学習データとして使用する。

You Tube から集めた画像を Picasa4を使用して手作業できりとった例を以下

に示す。

図 3.1 学習データ(上段から 20 代、30 代、40 代、50 代)

3.2 Labellio 分類器の作成に、Labellio という Web ページ上のサービスを使用した。

Labellio は Deep Learning のフレームワークの一つである Caffe をもとにつ

くられ、画像分類器の作成が容易である(Labellio 2015)。Caffe は畳込ニュー

ラルネットを使用しており、畳込み層とプーリング層が5層、全結合層とDrop

out 層が 2 層、ソフトマックス関数が 1 層となっている。Labellio は GitHub

4 Google 社が提供。画像の管理、編集が可能 https://www.google.com/intl/ja/picasa/

Page 10: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

7

か Google のアカウントを使ってログインが可能。ユーザは、自らが持つ画像

ファイルやインターネット上に公開された画像をキーワードサーチし、複数

の画像群に対してラベル付け、学習、クラス分類が可能である。

3.3 学習

本研究では、年齢別に学習を行う前に年代別に学習を行った。20 歳から 59

歳までの画像を 20 歳から 29 歳を 20 代、30 歳から 39 歳を 30 代、40 歳から

49 歳を 40 代、50 歳から 59 歳を 50 代というように、各 100 枚程度、合計約

400 枚、各年代に対して 5、6 人の画像をクラス分けし、学習を行った。図が学

習結果である。緑色の線が学習率であり、学習率は 75%であった。

図 3.2 Labellio による学習結果

Page 11: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

8

4 How-Old.net との比較

How-Old.net はネット上の画像かアップロードした画像から顔を検出し年齢

を推定するサービスである。本章では、この Web サービスと Labellio でつくっ

た分類器の正解率と対象人物の実年齢と出力結果の平均誤差を比較する。

図 4.1 How-Old.net の実行結果

4.1 How-Old.net と本システムとの比較方法

How-Old.net は年齢ごとにクラス分けされている。そのため 3 章で述べた

年齢判別システムに合わせて、How-Old.net の出力結果が 20 歳から 29 歳を 20

代、30 歳から 39 歳を 30 代、40 歳から 49 歳を 40 代、50 歳から 59 歳を 50 代

として比較を行った。たとえば実年齢が 24 歳 How-Old.net の出力結果が 44 歳

だった場合、実年齢が 20 代、出力結果が 40 代となり差が 2 となる。

このようにして、How-Old.net の出力結果を年代に変換し比較を行う。

4.2 性能比較に使用したデータ

How-old.net は画像から顔認識を行っているため、テストデータには図のよ

Page 12: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

9

うな画像を用いる。これに対して Labellio の学習データは図のように目の画像

を使用していためテストデータには、図のような目の画像を用いて比較を行う。

テストデータは各年代 25 枚合計 100 枚を用意した。

図 4.2 How-old.net に用いたデータ(上段から 20 代、30 代、40 代、50 代)

Page 13: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

10

図 4.3 Labeliio に用いたデータ(上段から 20 代、30 代、40 代、50 代)

4.3 性能比較の結果

4.2節で述べたデータを用いて比較実験したところLabellioの正解率は 28%、

How-Old.net の正解率は 37%となった。また 2 つのシステムの正解率の平均に

差がないという帰無仮説をたて有意水準 5%両側検定で t 検定を行った。棄却域

-1.972462<t t<1.972462 検定統計量 3.8762 、p 値 0.000154 となり、差がない

という帰無仮説が棄却され、本研究で作成した年齢推定器と How-Old.net には

有意な差があることがわかった。

Page 14: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

11

5 データの見直しによる学習

4.章の結果をふまえて、新しくデータを用意し年代ごとではなく How-Old.net

と同じように年齢ごとにクラス分けをして再学習を行った。本章では再学習を

行うにあたっての学習データと学習結果について述べる。

5.1 学習データ

学習データは 3.節で収集したデータを使う。図のように Picasa で目の部分を

くりぬいた画像を各年齢 100 枚程度、合計 4000 枚、各年齢に対して 3、4人の

画像である。これらの画像を再び Labellio で学習を行う。

5.2 学習結果

学習率は 17%であり精度が低く比較するにはいたらなかった。

図 5.1 再学習の学習結果

Page 15: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

12

6 考察と展望

本研究では、Labellio を使い学習と比較をおこなったが、5 章で述べた年齢ご

との学習結果が示すように、画像の枚数やクラスの数を増やすと年齢判別の性

能をあげることができない。そのためアーキテクチャをいろいろ工夫できる

Caffe での学習を試みる必要があると考える。しかし現在のところ、学習させよ

うとするとエラーが表示され学習することができていない。もしも Caffe での

学習を行うことができれば、How-Old.net との差をなくすことができると考え

る。

画像収集についても工夫が必要である。本研究では顔の表情や向きに統一性

を考えずに収集した。これらを統一することで結果に違いがでると考える。し

かし実用性を考えると顔の表情や向きに対応することが必要である。これは年

齢推定や表情認識などの課題のひとつである。How-Old.net でも正面の画像と

比べると他の向きの出力結果は正しくないことが多く、正面の画像でも笑顔な

どの表情になると実年齢よりも、高く結果が表示された。

現在年齢推定が可能な監視カメラがある。これは画像から自動で人物・顔を

検出し、年齢性別などを推定する画像認識技術を活用したものである。今まで

人の手で実施していた調査や分析をシステムで実現することができる。本研究

の展望として顔の向きや表情に対応を実現できれば、このようなシステムの精

度向上につながると考える。

Page 16: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

13

参考文献

岡谷貴之. (2015) 『深層学習』. 講談社.

Labellio (2015) User Manual. https://www.labell.io/static/manual/ja/

2015 年 10 月参照

Gigazine (2015) 2015 年 5 月 1 日記事

http://gigazine.net/news/20150501-how-old-do-i-look/

2015 年 10 月参照

The Bridge (2015) 人工知能技術の Alpaca、深層学習で画像の意味を認識させ

られるプラットフォーム「Labellio」をローンチ

http://thebridge.jp/2015/06/alpaca-launches-labellio-deep-learning-platform

2015 年 10 月参照

FieldAnalyst (2015) 性別、年齢自動推定サービス

http://www.nec-solutioninnovators.co.jp/sl/fieldanalyst/

2015 年 10 月参照

Page 17: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

14

付録 1 学習に用いた画像:

(1) 20 歳代

(2) 30 歳代

(3)40 歳代

Page 18: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

15

(4) 50 歳代

Page 19: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

16

付録 2. Labellio の畳込ニューラルネット

name: "CaffeNet"

input: "data"

input_dim: 10

input_dim: 3

input_dim: 227

input_dim: 227

layer {

name: "conv1"

type: "Convolution"

bottom: "data"

top: "conv1"

convolution_param {

num_output: 96

kernel_size: 11

stride: 4

}

}

layer {

name: "relu1"

type: "ReLU"

bottom: "conv1"

top: "conv1"

}

layer {

name: "pool1"

type: "Pooling"

bottom: "conv1"

top: "pool1"

pooling_param {

pool: MAX

kernel_size: 3

stride: 2

}

}

Page 20: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

17

layer {

name: "norm1"

type: "LRN"

bottom: "pool1"

top: "norm1"

lrn_param {

local_size: 5

alpha: 0.0001

beta: 0.75

}

}

layer {

name: "conv2"

type: "Convolution"

bottom: "norm1"

top: "conv2"

convolution_param {

num_output: 256

pad: 2

kernel_size: 5

group: 2

}

}

layer {

name: "relu2"

type: "ReLU"

bottom: "conv2"

top: "conv2"

}

layer {

name: "pool2"

type: "Pooling"

bottom: "conv2"

top: "pool2"

pooling_param {

pool: MAX

Page 21: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

18

kernel_size: 3

stride: 2

}

}

layer {

name: "norm2"

type: "LRN"

bottom: "pool2"

top: "norm2"

lrn_param {

local_size: 5

alpha: 0.0001

beta: 0.75

}

}

layer {

name: "conv3"

type: "Convolution"

bottom: "norm2"

top: "conv3"

convolution_param {

num_output: 384

pad: 1

kernel_size: 3

}

}

layer {

name: "relu3"

type: "ReLU"

bottom: "conv3"

top: "conv3"

}

layer {

name: "conv4"

type: "Convolution"

bottom: "conv3"

Page 22: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

19

top: "conv4"

convolution_param {

num_output: 384

pad: 1

kernel_size: 3

group: 2

}

}

layer {

name: "relu4"

type: "ReLU"

bottom: "conv4"

top: "conv4"

}

layer {

name: "conv5"

type: "Convolution"

bottom: "conv4"

top: "conv5"

convolution_param {

num_output: 256

pad: 1

kernel_size: 3

group: 2

}

}

layer {

name: "relu5"

type: "ReLU"

bottom: "conv5"

top: "conv5"

}

layer {

name: "pool5"

type: "Pooling"

bottom: "conv5"

Page 23: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

20

top: "pool5"

pooling_param {

pool: MAX

kernel_size: 3

stride: 2

}

}

layer {

name: "fc6"

type: "InnerProduct"

bottom: "pool5"

top: "fc6"

inner_product_param {

num_output: 4096

}

}

layer {

name: "relu6"

type: "ReLU"

bottom: "fc6"

top: "fc6"

}

layer {

name: "drop6"

type: "Dropout"

bottom: "fc6"

top: "fc6"

dropout_param {

dropout_ratio: 0.5

}

}

layer {

name: "fc7"

type: "InnerProduct"

bottom: "fc6"

top: "fc7"

Page 24: Deep learning を用いた年齢推定 - lang.sist.chukyo ...lang.sist.chukyo-u.ac.jp/classes/seminar/Papers/2015/Fujino-2016.pdf · 題目 Deep learningを用いた年齢推定 学籍番号

21

inner_product_param {

num_output: 4096

}

}

layer {

name: "relu7"

type: "ReLU"

bottom: "fc7"

top: "fc7"

}

layer {

name: "drop7"

type: "Dropout"

bottom: "fc7"

top: "fc7"

dropout_param {

dropout_ratio: 0.5

}

}

layer {

name: "fc8_ft"

type: "InnerProduct"

bottom: "fc7"

top: "fc8_ft"

inner_product_param {

num_output: 4

}

}

layer {

name: "prob"

type: "Softmax"

bottom: "fc8_ft"

top: "prob"

}