2020年6月10日 (水)

CNNへの道のり(24)

 従来、ILSVRCでの物体認識は、Bag-of-Featuresと呼ばれる物体画像の局所特徴量をベースとする手法が用いられていた。ところが、2012年、トロント大学チームがCNNで出した結果はエラー率17%と、Bag-of-Features時代のエラー率26%から飛躍的に進歩した結果だった。

 そのため、このときから画像認識研究者に一気にCNNを使い始めたのである。しかし、トロント大学のこのときの論文にもネオコグニトロンの参照はなく、ヤン・ルカンの論文を参照にあげていた。

 現在では、CNNの源流はネオコグニトロンだと研究者(少なくとも日本の)はわかっている。欧米の研究者はどう思っているか、機会があれば確認してみよう。ウィキペディアのネオコグニトロンの英語版では、「the inspiration for convolutional neural networks」と紹介されている。ネオコグニトロンはCNNそのものだと思うのだが、世界的にはCNNのヒントになったと思われているのかも知れない。ネオコグニトロンがCNNの源流と認識されないのは、発表時期や場所、タイミングが冬の時代だったためブームに乗らなかったといえる。また、ヤン・ルカンの論文が出たときにアピールが不足していたのではないかと思われる。現代は世界中で一瞬にして技術が共有できる時代である。ただし、英語で情報発信すればという前提を忘れてはならない。

 CNNへの道のりは今回で終了する。明日からは新シリーズを予定している。

 

| | コメント (0)

2020年6月 9日 (火)

CNNへの道のり(23)

 オートエンコーダ(自己符号化器)は、入力層、隠れ層、出力層の3層で入力データを出力するよう次元を圧縮した隠れ層で教師付き学習を行う。これを入力側から順に3層づつ学習して積層していく、事前学習を行ったことが画期的だった。

 全体を積層した後、シグモイド関数による出力層(ロジスティック回帰層)での重みを調整するファインチューニングを行う。この工程によって、第二次ブームで解決できなかった多層ニューラルネットの学習を可能にしたのである。

 オートエンコーダを発表した2006年、ヒントン教授はディープ・ビリーフ・ネットワークを発表した。こちらは、オートエンコーダ層にボルツマンマシンを使ったものである。ヒントン教授の提案により、多層ニューラルネットワークが再び研究対象になった。オートエンコーダやディープ・ビリーフ・ネットワークにも課題はあったものの、現在ではほぼ解決され、オートエンコーダやディープ・ビリーフ・ネットワークが必ずしもディープラーニングの必須手法にはなっていない。

 そして、本格的なディープラーニングの幕開けが2012年にやって来た。ヒントン教授率いるトロント大学チームが、CNNを使ってコンピュータによる物体認識の精度を競う国際コンテストILSVRC(ImageNet Large Scale Visual Recognition Challenge)で優勝したのである。

 

| | コメント (0)

2020年6月 8日 (月)

CNNへの道のり(22)

 そして、ディープラーニングが注目される第三次ブームが到来する。ブームのきっかけは、トロント大学のヒントン教授が、今度はネイチャーではなくサイエンスのレポートで2006年に報告した「Reducing the Dimensionality of Data with Neural Networks」という論文である。

 この論文の要約を紹介しておこう。

 高次元データは、高次元入力ベクトルを再構成する小さな中心層を持つ多層ニューラルネットワークを訓練することにより、低次元の構成に変換できる。勾配降下法は、このような 「オートエンコーダ」 ネットワークのウェイトを微調整するために使用できるものの、最初のウェイトが適切な解に近い場合しかうまく機能しない。筆者らは、データの次元性を低減するためのツールとして、主成分分析よりもはるかに良く働く低次元コードを学習するため、深いオートエンコーダ・ネットワークを可能にする重みを初期化する効果的な方法を述べる。

 これも4ページに満たないショート・ペーパーながら、バックプロパゲーションが多層ネットでうまく動かなかった問題を解決していたのである。方法としては、深いネットを全層学習するのではなく、まず3層を教師付きで学習し、次に1層づつ増やすというやり方である。これを必要なだけ繰返し、最後に全層を学習する。これによって、バックプロパゲーションが4層以上でうまく動かない問題を解決したのである。

 

| | コメント (0)

2020年6月 7日 (日)

CNNへの道のり(21)

 バックプロパゲーションと名付けられた、1980年代半ばまでのニューラルネット技術の集大成でも5層以上(パーセプトロンを2層と数えれば4層以上)の深さではうまく動かなかった。ただし、ネオコグニトロンは、初めから5層以上の深い構造だったので話は別である。

 バックプロパゲーションによって再ブームになったとき、ネオコグニトロンも見直され始めたのである。S細胞とC細胞が繰返し現れる構造を応用した認識系の研究が進み始めた。

 後にフェイスブックのAIラボの所長になるヤン・ルカンが、ディープラーニングブームの発端となったトロント大学のジェフェリー・ヒントン教授の研究室でポスドクとして勤めていた頃から、ベル研究所へと移動した頃に発表した論文は、ネオコグニトロンの学習にバックプロパゲーションを用いて好成績を示した。ところが、彼の論文は脳の構造から特徴抽出とプーリングを繰り返す構造を導き、ネオコグニトロンを参考文献に挙げていなかったのである。ネオコグニトロンを知らなかったのか、学習方式が違うので参考には挙げなかったのかはわからない。ただし、現在ではネオコグニトロンの改善と見られている。

 甘利先生の確率的勾配降下法も、バックプロパゲーションの初出論文には参考文献に挙げられていなかった。このように、ニューラルネットワークは重要な手法の再発見が繰り返しながら、ある方向を目指して行ったのである。

 

 

| | コメント (0)

2020年6月 6日 (土)

CNNへの道のり(20)

 バックプロパゲーションは、パーセプトロンではなくニューラルネットワークという名称で、爆発的第二次ブームを起こした。当時、ソフトコンピューティングの世界では、何でもニューラルネットワークを適用しようという風潮だった。

 学会だけでなく、産業界でもニューラルネットワークを応用した商品も多数検討された。しかし、十分な成果をあげないまま、1990年代に入るとブームは去ってまた冬の時代が訪れたのである。

 バックプロパゲーション発表当時は、研究者はこれを使えばできそうだという思いが芽生え、再びニューラルネットワークに飛びついた。これを使えば非線形問題にも適用できそうだとか、複雑な画像認識ができるのではないかと思ったのである。ところが、次第にバックプロパゲーションだけでは何事も難しいということがわかってきたのだった。5層以上の深いネットになると、バックプロパゲーションでは収束せずうまく働かなかったのである。実は、バックプロパゲーションで提案された各種手法は、それまでに発表年を変え、研究者を変え何回か発表されたことであり、バックプロパゲーションが偉大な再発見といえるものだったからである。バックプロパゲーションが良かった点は、それまでに発表された手法がすべてバックプロパゲーションにまとめられ定着し、以降はバックプロパゲーションという名称に統一できたことだろう。

 僕が思うのは、ネイチャーに掲載されたからブームに火が付いたのだろうと思われる。改めてネイチャーの論文をみてみると、フルペーパーではなく参考文献が4件だけの4ページにも満たないレターである。当時の研究者はこの論文をみて、そういえばこうするとうまく行きそうだと思ったのだろうか。

 

| | コメント (0)

2020年6月 5日 (金)

CNNへの道のり(19)

 この論文で提案されたのは、活性化関数にシグモイド関数を使うこと、最急降下法で学習するとき合成関数の偏微分のチェインルールを使うこと、そして、この合成関数の偏微分で重みを計算するとき出力側から入力側に向かって計算する逆伝搬を使うことであった。学習方法としては、教師あり学習である。

 ニューロンが発火する条件を決めるものが活性化関数であり、パーセプトロンではステップ状の単純な関数が用いられていた。ところが、ステップ関数では微分できないため、微分によって重みを計算する手法ではシグモイド関数のように何度でも微分できる関数が必要になるのである。

 シグモイド関数は、

y = 1/(1+e^(-x))

と表され、微分すると、

y'=(1-y)/y

と自分自身が出現し、無限回微分可能となる。ニューロンjの入力xj、出力yi、重みwjiとすると、

xi=Σyi・wji

である。実際の出力と所望の出力の差Eを入力xjで微分するときにチェインルールを使うと、

∂E/∂xj=∂E/∂yj・dyj/dxj

となるため、シグモイド関数を反映させ、

∂E/∂xj=∂E/∂yj・(1-yj)/yj

となる。重みについても、

∂E/∂wji=∂E/∂xj・∂xj/∂wji=∂E/∂xj・yi

となるため、∂E/∂xj・∂xj/∂yi=∂E/∂xj・wjiから、

∂E/∂yi=Σ∂E/∂xj・wji

となり、誤差Eを出力で微分計算可能となる。この計算は出力側から入力側に向かって計算することになり、バックプロパゲーションという名称が付けられた理由になる。

| | コメント (0)

2020年6月 4日 (木)

CNNへの道のり(18)

 1986年、世界的な物理科学誌のネイチャーに「Learning representations by back-propagating errors」という論文が掲載された。著者はカリフォルニア大学サンディエゴ校の教員デビッド・ラメルハートら3人である。

 ラメルハートは、back-propagating errors をバックプロパゲーションと呼びやすい名称に命名し、世間ではバックプロパゲーション(誤差逆伝播法)として広まった。バックプロパゲーションが、長らく冬の時代だったパーセプトロンを第二次ブームとして蘇らせたのである。

 ネイチャーに掲載されたオリジナル論文の要約を以下に紹介しよう。

 ニューラルのようなネットワークのための新しい学習手順として、バックプロパゲーションについて述べる。これは、ネットワークの実際の出力ベクトルと所望の出力ベクトル間の誤差を最小にするように、ネットワーク内の接続の重みを繰り返し調整する計算手順を取るものである。重み調整の結果、入力または出力の一部ではない内部の隠れユニットが、タスク領域の重要な特徴を表すようになり、タスクにおける規則性がこれらのユニットの相互作用によって捕捉される。バックプロパゲーションは、パーセプトロンのような初期の簡単な手法とは、全く異なる有用な新機能を有する。

 

| | コメント (0)

2020年6月 3日 (水)

CNNへの道のり(17)

 ネオコグニトロンが提案したS細胞とC細胞が繰り返される構造は、現在でも馴染みがあるものである。なぜなら、これがコンボリューションニューラルネットワーク(CNN:Convolution Neueral Network)の畳み込み層とプーリング層だからである。

 CNNは学習方法にバックプロパゲーションを使っているため、ネオコグニトロンそのままではない。しかし、畳み込み層とプーリング層が繰り返される構造はネオコグニトロンそのものである。

 ネオコグニトロンが英語で発表された1980年から、CNNがディープラーニングによって画像認識の主流となった2012年までの32年間に、ネオコグニトロンは多くの研究者が育て、名前を変えていったのである。ネオコグニトロンが発表された時代は、第一次パーセプトロンが過ぎ去ってニューラルネットワークが注目されなくなった冬の時代だった。次にニューラルネットワークが注目され第二次ブームが起こるのが1986年である。CNNは第二次ブームのニューラルネットワークを起点に発達したようになっており、世界的にはネオコグニトロンの名前が定着しなかったのが残念である。

 現在のディープラーニングは、ニューラルネットワークの第三次ブームといえる。ディープラーニングは、第二次ブームが終わる原因を改善したといえる。

 

| | コメント (0)

2020年6月 2日 (火)

CNNへの道のり(16)

 ネオコグニトロンの挙動は、まず、入力パターンが与えられるごとにS細胞間に競合が起こる。競り勝ったS細胞だけがシナプス結合を変化させ、与えられた特徴に選択的に反応するようになる。

 この競合が層内の各所で同時に起こり、入力パターンの局所的な特徴を抽出する細胞が並列的に作られる。次の段のS細胞では、前の段のS細胞に比べて少し大きい受容野を持ち大局的な特徴を抽出する。

 一方、C細胞は複数個のS細胞から固定した結合を受け取り、そのうちのどれか一つのS細胞が出力を出せばC細胞も出力を出す。これらS細胞はいずれも同じ形の特徴を抽出するが、受容野の位置はS細胞ごとに少しだけ異なる。すなわち、C細胞は少しの違った場所から同じ特徴を抽出するS細胞の組の出力を受け取るのである。したがって、C細胞は、S細胞が抽出した特徴の位置ずれの影響を、吸収する性質を持っているといえる。S細胞とC細胞は交互に繰り返して階層的に結合されので、入力パターンの情報は、ネオコグニトロンの各段でS細胞による特徴抽出とC細胞による位置ずれの許容を繰り返しながら上位層へと送られていく。よって、下位層で抽出された局所的特徴が,次第に大局的特徴として伝達され、かつ、入力パターンの拡大縮小や位置ずれの影響をC細胞が吸収するため、最終的に入力パターンの変形に対しロバストな認識ができるのである。

 ネオコグニトロンの認識率を調べるため、手書き数字の大規模データベースETL-1を使って、3000個の手書き数字を学習した認識実験を行うと98.6%の認識率を示した。1980年頃では画期的な認識率であり、1982年、電子情報通信学会は福島 先生に業績賞を贈っている。

 

| | コメント (0)

2020年6月 1日 (月)

CNNへの道のり(15)

 コグニトロンの自己組織化は、教師なし学習でうまく働いた。ところが、入力パターンの呈示位置や大きさを変えると、別のパターンとして処理する改善点があった。

 そこで、福島先生はヒューベルとウィーゼルの仮説をベースに、呈示位置や大きさには影響されない多層ニューラルネットを提案された。そして、コグニトロンを改善したものということで、そのニューラルネットをネオコグニトロンと名付けられた。

 ヒューベルとウィーゼルの大脳視覚野の階層仮説は、網膜から外側膝状態を経て、単純形細胞→複雑形細胞→低次超複雑形細胞→高次超複雑形細胞という順で繋がるというものである。ここで、単純形細胞と複雑形細胞間の構造と、低次超複雑形細胞と高次複雑形細胞の構造には類似性があるとしていた。また、階層が上位になるほど特定のパターンを選択的に反応し、パターン呈示の位置と大きさにロバストになる。これらのことから、福島先生は単純と複雑を組とした構造が繰り返され最終層に到達すると仮定されたのである。

 福島先生は、単純細胞をS(simpleから)細胞、複雑細胞をC(complexから)細胞と名付け、S細胞とC細胞の2層を基本単位とし、これらが何段もカスケードに接続した構造をネオコグニトロンとされた。シナプス結合の重み変化については、S細胞の入力で行われると仮定された。

 

| | コメント (0)

より以前の記事一覧