(57)【要約】  学習対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、ニューラルネットワーク部の学習を行う学習部と、を有し、ニューラルネットワーク部は、複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、学習部は、学習セルの出力値に応じて、学習セルの複数の入力ノードの重み付け係数を更新し、又は、ニューラルネットワーク部に新たな学習セルを追加する。
2019102984.tif 000002
【特許請求の範囲】
【請求項１】
学習対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、
前記ニューラルネットワーク部の学習を行う学習部と、を有し、
前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、
前記学習部は、前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する
ことを特徴とする学習装置。
【請求項２】
前記学習部は、前記複数の要素値と前記学習セルの出力値との間の相関値が所定の閾値未満の場合に、前記新たな学習セルを追加する
ことを特徴とする請求項１記載の学習装置。
【請求項３】
前記学習部は、前記複数の要素値の各々を、前記新たな学習セルの複数の入力ノードの各々の重み付け係数の初期値として設定する
ことを特徴とする請求項２記載の学習装置。
【請求項４】
前記学習部は、前記複数の要素値と前記学習セルの出力値との間の相関値が所定の閾値以上の場合に、前記学習セルの前記複数の入力ノードの前記重み付け係数を更新する
ことを特徴とする請求項１記載の学習装置。
【請求項５】
前記学習部は、前記相関値が前記閾値以上である前記学習セルが複数存在する場合に、前記相関値が最も大きい前記学習セルの前記複数の入力ノードの前記重み付け係数を更新する
ことを特徴とする請求項４記載の学習装置。
【請求項６】
前記複数の学習セルの各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられており、
前記学習部は、入力された前記学習対象データが属するカテゴリに紐付けられた前記学習セルの前記重み付け係数を更新する
ことを特徴とする請求項４又は５記載の学習装置。
【請求項７】
前記学習部は、前記学習セルの前記複数の入力ノードの各々の前記重み付け係数を、対応する前記入力ノードから入力された前記要素値に基づいて更新する
ことを特徴とする請求項４乃至６のいずれか１項に記載の学習装置。
【請求項８】
前記相関値は、前記学習セルの前記出力値に関する尤度である
ことを特徴とする請求項２乃至７のいずれか１項に記載の学習装置。
【請求項９】
前記尤度は、前記複数の入力ノードの各々に設定されている重み付け係数に応じた前記学習セルの出力の最大値に対する前記複数の要素値を入力したときの前記学習セルの前記出力値の比率である
ことを特徴とする請求項８記載の学習装置。
【請求項１０】
所定の前処理を行った後の前記学習対象データから前記複数の要素値を抽出する抽出部を更に有する
ことを特徴とする請求項１乃至９のいずれか１項に記載の学習装置。
【請求項１１】
前記前処理は、正規化処理、プーリング処理又は特徴抽出処理である
ことを特徴とする請求項１０記載の学習装置。
【請求項１２】
前記複数の学習セルを含む前記ニューラルネットワーク部を構築し演算を実行するための作業領域となる記憶部と、前記ニューラルネットワーク部における演算処理を制御する制御部と、を更に有し、
前記制御部は、前記記憶部に構築した前記ニューラルネットワーク部における前記複数の要素値に対する前記複数の学習セルにおける演算処理を並列して実行する
ことを特徴とする請求項１乃至１１のいずれか１項に記載の学習装置。
【請求項１３】
識別対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、
前記ニューラルネットワーク部の出力に基づき前記識別対象データを識別する識別部と、を有し、
前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、
前記複数の学習セルの各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられており、
前記学習セルの前記複数の入力ノードは、前記複数の要素値の各々が対応するカテゴリに応じた所定の重みで入力されるように構成されており、
前記識別部は、前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する
ことを特徴とする識別装置。
【請求項１４】
前記識別部は、前記複数の要素値と前記学習セルの出力値との間の相関値が最も大きい前記学習セルに紐付けられたカテゴリを、前記識別対象データの属するカテゴリを識別する
ことを特徴とする請求項１３記載の識別装置。
【請求項１５】
前記識別部は、前記複数の学習セルの中から、前記複数の要素値の値と前記学習セルの出力値との間の相関値が大きい順に所定の数の前記学習セルを抽出し、抽出した前記学習セルに対して最も多く紐付けられたカテゴリを、前記識別対象データの属するカテゴリを識別する
ことを特徴とする請求項１３記載の識別装置。
【請求項１６】
前記複数の要素値を用いて前記学習セルの前記複数の入力ノードの各々の重み付け係数を更新する学習部を更に有する
ことを特徴とする請求項１３乃至１５のいずれか１項に記載の識別装置。
【請求項１７】
学習対象データに基づく複数の要素値が入力される複数の入力ノードと、前記複数の要素値の各々に対して所定の重みで加算して出力する出力ノードと、を各々が含む複数の学習セルを有するニューラルネットワーク部を有する学習装置の学習方法であって、
学習対象データに基づく複数の要素値を、前記学習セルの前記複数の入力ノードに入力し、
前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加することにより、前記ニューラルネットワーク部を学習する
ことを特徴とする学習方法。
【請求項１８】
識別対象データに基づく複数の要素値が入力される複数の入力ノードと、前記複数の要素値に対して所定の重み付けをして加算して出力する出力ノードと、を各々が含み、各々が教師情報を示す複数のカテゴリのうちのいずれかに紐付けられた複数の学習セルを有するニューラルネットワーク部を有する識別装置を用いた識別方法であって、
識別対象データに基づく複数の要素値を、前記複数の学習セルの前記複数の入力ノードに入力し、
前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する
ことを特徴とする識別方法。
【請求項１９】
学習対象データに基づいて学習を行う学習装置において実行されるプログラムであって、コンピュータを、
学習対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有するニューラルネットワーク部、
前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する手段、
として機能させるプログラム。
【請求項２０】
識別対象データに基づいて識別を行う識別装置において実行されるプログラムであって、コンピュータを、
識別対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含み、各々が教師情報を示す複数のカテゴリのうちのいずれかに紐付けられた複数の学習セルを有するニューラルネットワーク部、
前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する手段、
として機能させるプログラム。
【請求項２１】
請求項１９又は２０に記載のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習装置及び学習方法、識別装置及び識別方法、プログラム並びに記録媒体に関する。
【背景技術】
【０００２】
近年、機械学習手法として、多層ニューラルネットワークを用いた深層学習（ディープラーニング）が注目されている。深層学習は、バックプロパゲーションと呼ばれる計算手法を用い、大量の教師データを多層ニューラルネットワークへ入力した際の出力誤差を計算し、誤差が最小となるように学習を行うものである。【０００３】
特許文献１乃至３には、大規模なニューラルネットワークを複数のサブネットワークの組み合わせとして規定することにより、少ない労力及び演算処理量でニューラルネットワークを構築することを可能にしたニューラルネットワーク処理装置が開示されている。また、特許文献４には、ニューラルネットワークの最適化を行う構造最適化装置が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−０５１９６８号公報
【特許文献２】特開２００２−２５１６０１号公報
【特許文献３】特開２００３−３１７０７３号公報
【特許文献４】特開平０９−０９１２６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、深層学習では、教師データとして良質な大量のデータが必要であり、また、学習に長時間を要していた。特許文献１乃至４にはニューラルネットワークの構築のための労力や演算処理量を低減する手法が提案されているが、システム負荷等の更なる軽減のために、より簡単なアルゴリズムにより学習が可能なニューラルネットワークを備えた学習装置が望まれていた。【０００６】
本発明の目的は、より簡単なアルゴリズムにより学習が可能なニューラルネットワークを備えた学習装置及び学習方法、プログラム及び記録媒体を提供することにある。また、本発明の他の目的は、このようなニューラルネットワークを用いて構成した認識率の高い識別装置及び識別方法、プログラム及び記録媒体を提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一観点によれば、学習対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、前記ニューラルネットワーク部の学習を行う学習部と、を有し、前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、前記学習部は、前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する学習装置が提供される。【０００８】
また、本発明の他の一観点によれば、識別対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、前記ニューラルネットワーク部の出力に基づき前記識別対象データを識別する識別部と、を有し、前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、前記複数の学習セルの各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられており、前記学習セルの前記複数の入力ノードは、前記複数の要素値の各々が対応するカテゴリに応じた所定の重みで入力されるように構成されており、前記識別部は、前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する識別装置が提供される。【０００９】
また、本発明の更に他の一観点によれば、学習対象データに基づく複数の要素値が入力される複数の入力ノードと、前記複数の要素値の各々に対して所定の重みで加算して出力する出力ノードと、を各々が含む複数の学習セルを有するニューラルネットワーク部を有する学習装置の学習方法であって、学習対象データに基づく複数の要素値を、前記学習セルの前記複数の入力ノードに入力し、前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加することにより、前記ニューラルネットワーク部を学習する学習方法が提供される。【００１０】
また、本発明の更に他の一観点によれば、識別対象データに基づく複数の要素値が入力される複数の入力ノードと、前記複数の要素値に対して所定の重み付けをして加算して出力する出力ノードと、を各々が含み、各々が教師情報を示す複数のカテゴリのうちのいずれかに紐付けられた複数の学習セルを有するニューラルネットワーク部を有する識別装置を用いた識別方法であって、識別対象データに基づく複数の要素値を、前記複数の学習セルの前記複数の入力ノードに入力し、前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する識別方法が提供される。【００１１】
また、本発明の更に他の一観点によれば、学習対象データに基づいて学習を行う学習装置において実行されるプログラムであって、コンピュータを、学習対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有するニューラルネットワーク部、前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する手段、として機能させるプログラムが提供される。【００１２】
また、本発明の更に他の一観点によれば、識別対象データに基づいて識別を行う識別装置において実行されるプログラムであって、コンピュータを、識別対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含み、各々が教師情報を示す複数のカテゴリのうちのいずれかに紐付けられた複数の学習セルを有するニューラルネットワーク部、前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する手段、として機能させるプログラムが提供される。
【発明の効果】
【００１３】
本発明によれば、より簡単なアルゴリズムにより学習が可能で認識率の高いニューラルネットワークを構築することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の第１実施形態による学習・識別装置の構成例を示す概略図である。
【図２】図２は、本発明の第１実施形態による学習・識別装置におけるニューラルネットワーク部の構成例を示す概略図である。
【図３】図３は、本発明の第１実施形態による学習・識別装置における学習セルの構成例を示す概略図である。
【図４】図４は、本発明の第１実施形態による学習・識別装置における学習方法を示すフローチャートである。
【図５】図５は、学習対象データ及びその要素値の一例を示す図である。
【図６】図６は、本発明の第１実施形態による学習・識別装置における識別方法を示すフローチャートである。
【図７】図７は、本発明の第１実施形態による学習・識別装置のハードウェア構成例を示す概略図である。
【図８】図８は、本発明の第２実施形態による学習・識別装置の構成例を示す概略図である。
【図９】図９は、学習対象データ及び識別対象データに対して行う前処理の一例を示す図である。
【図１０】図１０は、本発明の第３実施形態による学習装置の構成例を示す概略図である。
【図１１】図１１は、本発明の第４実施形態による識別装置の構成例を示す概略図である。
【発明を実施するための形態】
【００１５】
［第１実施形態］
本発明の第１実施形態による学習・識別装置について、図１乃至図７を用いて説明する。図１は、本実施形態による学習・識別装置の構成例を示す概略図である。図２は、本実施形態による学習・識別装置におけるニューラルネットワーク部の構成例を示す概略図である。図３は、本実施形態による学習・識別装置における学習セルの構成例を示す概略図である。図４は、本実施形態による学習・識別装置における学習方法を示すフローチャートである。図５は、学習対象データ及びその要素値の一例を示す図である。図６は、本実施形態による学習・識別装置における識別方法を示すフローチャートである。図７は、本実施形態による学習・識別装置のハードウェア構成例を示す概略図である。
【００１６】
はじめに、本実施形態による学習・識別装置の概略構成について、図１乃至図３を用いて説明する。本実施形態による学習・識別装置１００は、図１に示すように、抽出部１０と、ニューラルネットワーク部２０と、判定部３０と、学習部４０と、識別部５０と、出力部６０と、を有している。学習部４０は、重み修正部４２と、学習セル生成部４４と、を有している。
【００１７】
抽出部１０は、外部から入力される学習対象データ又は識別対象データから、これらデータの形態に応じた所定の数の所定の要素値（パターンデータ）を抽出する。
【００１８】
ニューラルネットワーク部２０は、例えば図２に示すように、入力層と出力層とを含む２層の人工ニューラルネットワークにより構成され得る。入力層は、１つの学習対象データ又は識別対象データから抽出される要素値の数に対応する数のセル（ニューロン）２２を備える。例えば、１つの学習対象データ又は識別対象データから生成される要素値の数がＭ個であるとすると、入力層は、少なくともＭ個のセル２２１，２２２，…，２２ｉ，…，２２Ｍを含む。出力層は、少なくとも学習対象データに紐付けられた教師情報のカテゴリの数に対応する数のセル（ニューロン）２４、例えばＮ個のセル２４１，２４２，…，２４ｊ，…，２４Ｎを含む。
【００１９】
入力層のセル２２１，２２２，…，２２ｉ，…，２２Ｍには、抽出部１０から供給されるＭ個の要素値Ｉ１，Ｉ２，…，Ｉｉ，…，ＩＭが、それぞれ入力される。セル２２１，２２２，…，２２ｉ，…，２２Ｍの各々は、入力された要素値Ｉをセル２４１，２４２，…，２４ｊ，…，２４Ｎのそれぞれに出力する。
【００２０】
セル２２とセル２４とを繋ぐ枝（軸索）の各々には、要素値Ｉに対して所定の重み付けをするための重み付け係数ωが設定されている。例えば、セル２２１，２２２，…，２２ｉ，…，２２Ｍとセル２４ｊとを繋ぐ枝には、図３に示すように、重み付け係数ω１ｊ，ω２ｊ，…，ωｉｊ，…，ωＭｊが設定されている。これによりセル２４ｊは、以下の式（１）に示す演算を行い、出力値Ｏｊを出力する。
【数１】
2019102984.tif 000003
【００２１】
なお、本明細書では、１つのセル２４と、そのセル２４に要素値Ｉ１〜ＩＭを入力する枝（入力ノード）と、そのセル２４から出力値Ｏを出力する枝（出力ノード）とを総称して学習セル２６と表記することがある。
【００２２】
判定部３０は、学習対象データから抽出した複数の要素値と学習セルの出力値との間の相関値と所定の閾値とを比較し、当該相関値が閾値以上であるか閾値未満であるかを判定する。相関値の一例は、学習セルの出力値に対する尤度である。なお、判定部３０の機能は、学習セル２６の各々が備えていると考えることもできる。
【００２３】
学習部４０は、判定部３０の判定結果に応じてニューラルネットワーク部２０の学習を行う機能ブロックである。重み修正部４２は、上記相関値が所定の閾値以上である場合に、学習セル２６の入力ノードに設定された重み付け係数ωを更新する。また、学習セル生成部４４は、上記相関値が所定の閾値未満である場合に、ニューラルネットワーク部２０に新たな学習セル２６を追加する。
【００２４】
識別部５０は、学習対象データから抽出した複数の要素値と学習セルの出力値との間の相関値に基づき、当該識別対象データのカテゴリを識別する。出力部６０は、識別部５０による識別結果を出力する。
【００２５】
なお、本実施形態による学習・識別装置１００は、学習機能を備えた学習装置と、識別機能を備えた識別装置とにより構成することもできる。この場合、学習装置は、少なくとも、抽出部１０と、ニューラルネットワーク部２０と、判定部３０と、学習部４０と、を備えていればよい。また、識別装置は、少なくとも、抽出部１０と、ニューラルネットワーク部２０と、識別部５０と、を備えていればよい。なお、学習・識別装置１００、学習装置及び識別装置は、必ずしも抽出部１０を備えている必要はなく、他の装置などにおいて学習対象データや識別対象データから抽出した要素値をニューラルネットワーク部２０に直に入力する構成としてもよい。
【００２６】
次に、本実施形態による学習・識別装置１００を用いた学習方法について、図４及び図５を用いて説明する。なお、ここでは理解を容易にするために、学習対象データが０〜９の１０種類の手書き文字を含む白黒の２次元画像である場合を想定して説明を行うが、学習対象データの種類は特に限定されるものではない。学習対象データとしては、例えば、画像データ、音声データ等が挙げられる。
【００２７】
まず、初期状態として、ニューラルネットワーク部２０に、学習対象データに紐付けられた教師情報のカテゴリの数に相当する数の学習セル２６を設定する。例えば、ニューラルネットワーク部２０に０〜９の手書き文字を学習させる場合、教師情報のカテゴリは０〜９の１０種類であり、カテゴリの数に相当する１０個の学習セル２６を設定する。各々の学習セル２６は、教師情報のカテゴリと紐付けておく。
【００２８】
次いで、抽出部１０に、学習対象データを取り込む（ステップＳ１０１）。ここでは、学習対象データの一例として、図５の左側に示すような、手書きの「２」の文字を含む白黒の二次元画像を想定する。
【００２９】
次いで、抽出部１０において、取り込んだ学習対象データから、学習対象データの特徴を示す要素値を抽出する（ステップＳ１０２）。要素値は、取り込んだ学習対象データの種類等に応じて適宜選択することができる。例えば、図５に示す学習対象データに対しては、右側の拡大図に示すように、取り込んだ画像を画素単位で分割し、１つの画素を１つの要素値に対応づけることができる。そして、白の画素に対応する要素値を０、黒の画素に対応する要素値を１と定義することができる。例えば、図５の例では、ｐ番目の画素に対応する要素値Ｉｐは１となり、ｑ番目の画素に対応する要素値Ｉｑは０となる。１つの学習対象データに対応する要素値が、要素値Ｉ１〜ＩＭである。
【００３０】
次いで、抽出部１０で抽出した要素値Ｉ１〜ＩＭを、ニューラルネットワーク部２０に入力する。ニューラルネットワーク部２０に入力された要素値Ｉ１〜ＩＭは、セル２２１〜２２Ｍを介して、取り込んだ学習対象データの教師情報のカテゴリに紐付けられた学習セル２６に入力される。例えば、図５に示す学習対象データから抽出した要素値Ｉ１〜ＩＭは、カテゴリ「２」に紐付けられた学習セル２６に入力される。
【００３１】
次いで、要素値Ｉ１〜ＩＭが入力された学習セル２６が、各入力ノードに重み付け係数ωが設定されていない状態、すなわち一度も学習を行っていない初期状態であるかどうかを判定する（ステップＳ１０３）。
【００３２】
学習セル２６が初期状態である場合（ステップＳ１０３の「Ｙｅｓ」）には、ニューラルネットワーク部２０に入力された要素値Ｉ１〜ＩＭの値を、当該学習セル２６の入力ノードの重み付け係数ωの初期値として設定する（ステップＳ１０４）。例えば、図５に示すように、カテゴリ「２」に紐付けられた学習対象データを取り込む場合、カテゴリ「２」に紐付けられた学習セル２６の入力ノードの各々に、要素値Ｉ１〜ＩＭに対応する重み付け係数ωを設定する。例えば、図５の例では、学習セル２６ｊのｐ番目の画素に対応する入力ノードの重み付け係数ωｐｊは１となり、学習セル２６ｊのｑ番目の画素に対応する入力ノードの重み付け係数ωｑｊは０となる。
【００３３】
一方、学習セル２６が初期状態ではない場合（ステップＳ１０３の「Ｎｏ」）には、要素値Ｉ１〜ＩＭを当該学習セル２６に入力し、出力値Ｏを得る。この際、当該学習セル２６の入力ノードには重み付け係数ωが既に設定されているため、出力値Ｏは式（１）に基づいて算出される。
【００３４】
次いで、当該学習セル２６の出力値Ｏに基づき、判定部３０において、要素値Ｉ１〜ＩＭと学習セル２６の出力値Ｏとの間の相関値（ここでは、学習セルの出力値に関する尤度Ｐとする）を算出する（ステップＳ１０５）。尤度Ｐの算出方法は、特に限定されるものではない。例えば、学習セル２６ｊの尤度Ｐｊは、以下の式（２）に基づいて算出することができる。
【数２】
2019102984.tif 000004
【００３５】
式（２）は、尤度Ｐｊが、学習セル２６ｊの複数の入力ノードの重み付け係数ωｉｊの累積値に対する学習セル２６ｊの出力値Ｏｊの比率で表されることを示している。或いは、尤度Ｐｊが、複数の入力ノードの重み付け係数ωｉｊに基づく学習セル２６ｊの出力の最大値に対する、複数の要素値を入力したときの学習セル２６ｊの出力値の比率で表されることを示している。
【００３６】
次いで、判定部３０において、算出した尤度Ｐの値と所定の閾値とを比較し、尤度Ｐの値が閾値以上であるか否かを判定する（ステップＳ１０６）。
【００３７】
取り込んだ学習対象データの教師情報のカテゴリに紐付けられた学習セル２６のうち、尤度Ｐの値が閾値以上である学習セル２６が１つ以上存在した場合（ステップＳ１０６の「Ｙｅｓ」）には、ステップＳ１０７へと移行する。ステップＳ１０７では、当該カテゴリに紐付けられた学習セル２６のうち尤度Ｐの値が最も大きい学習セル２６の入力ノードの重み付け係数ωを更新する。学習セル２６ｊの入力ノードの重み付け係数ωｉｊは、例えば以下の式（３）に基づいて修正することができる。
ωｉｊ＝（ｉ番目の画素における黒の出現回数）／（学習回数）    …（３）
【００３８】
式（３）は、学習セル２６の複数の入力ノードの各々の重み付け係数ωが、対応する入力ノードから入力された要素値Ｉの累積平均値により決定されることを示している。このようにして、尤度Ｐの値が所定の閾値以上の学習対象データの情報を各入力ノードの重み付け係数ωに累積していくことにより、黒（１）の出現回数の多い画素に対応する入力ノードほど、重み付け係数ωの値が大きくなる。このような学習セル２６の学習アルゴリズムは、人の脳の学習原理として知られるヘブ則に近似したものである。
【００３９】
一方、取り込んだ学習対象データの教師情報のカテゴリに紐付けられた学習セル２６のうち、尤度Ｐの値が閾値以上である学習セル２６が１つも存在しない場合（ステップＳ１０６の「Ｎｏ」）には、ステップＳ１０８へと移行する。ステップＳ１０８では、当該カテゴリに紐付けられた新たな学習セル２６を生成する。新たに生成した学習セル２６の各入力ノードには、学習セル２６が初期状態であった場合と同様、要素値Ｉ１〜ＩＭの値を重み付け係数ωの初期値として設定する。
【００４０】
例えば、学習対象データが手書き文字である場合、文字の傾きが異なるときなどに、教師情報のカテゴリが同じであるにもかかわらず尤度の値が閾値未満になることが想定される。同じカテゴリに紐付けられた学習セル２６を追加することにより、同じカテゴリに属する様々な態様の学習対象データを学習することが可能となり、認識率を高めることができる。
【００４１】
尤度Ｐの判定に用いる閾値は、その値が大きいほど、認識率は高くなるが、学習セル２６の数も多くなり学習に時間を要する。逆に、閾値は、その値が小さいほど、認識率は低くなるが、学習セル２６の数は少なくなり学習に要する時間は短くなる。閾値の設定値は、学習対象データ及び識別対象データの種類や形態等に応じて、所望の認識率や学習時間が得られるように、適宜設定することが望ましい。
【００４２】
このようにすることで、取り込んだ学習対象データに基づいて、ニューラルネットワーク部２０を学習することができる。
【００４３】
次いで、上述したステップＳ１０１からステップＳ１０８までの処理を、総ての学習対象データに対して行い（ステップＳ１０９，Ｓ１１０）、ニューラルネットワーク部２０を繰り返し学習する。
【００４４】
本実施形態による学習・識別装置１００を用いた学習方法は、深層学習などにおいて用いられている誤差逆伝播法（バック・プロパゲーション）を適用するものではなく、１パスでの学習が可能である。このため、ニューラルネットワーク部２０の学習処理を簡略化することができる。また、各々の学習セル２６は独立しているため、学習データの追加、削除、更新が容易である。
【００４５】
次に、本実施形態による学習・識別装置１００を用いた識別対象データの識別方法について、図６を用いて説明する。
【００４６】
まず、抽出部１０に、識別対象データを取り込む（ステップＳ２０１）。
【００４７】
次いで、抽出部１０において、取り込んだ識別対象データから、識別対象データの特徴を示す要素値Ｉ１〜ＩＭを抽出する（ステップＳ２０２）。要素値Ｉは、学習対象データと同様、取り込んだ識別対象データの種類等に応じて適宜選択することができる。
【００４８】
次いで、抽出部１０で抽出した要素値Ｉ１〜ＩＭを、上述のようにして学習を行ったニューラルネットワーク部２０に入力する。ニューラルネットワーク部２０に入力された要素値Ｉ１〜ＩＭは、セル２２１〜２２Ｍを介して、各学習セル２６に入力される。これにより、総ての学習セル２６から、要素値Ｉ１〜ＩＭに応じた出力値Ｏを得る。
【００４９】
次いで、学習セル２６から出力された出力値Ｏに基づき、識別部５０において、要素値Ｉ１〜ＩＭと学習セル２６の出力値Ｏとの間の相関値（ここでは、学習セルの出力値に関する尤度Ｐとする）を算出する（ステップＳ２０３）。尤度Ｐの算出方法は、特に限定されるものではない。例えば、学習セル２６ｊの尤度Ｐｊは、前述の式（２）に基づいて算出することができる。なお、尤度Ｐを算出する機能は、学習セル２６の各々が備えていると考えることもできる。
【００５０】
次いで、算出した総ての学習セル２６の尤度Ｐに基づいて、識別対象データの属するカテゴリを識別する（ステップＳ２０４）。識別対象データの属するカテゴリを識別する方法は、特に限定されるものではない。例えば、総ての学習セル２６のうち、最も尤度Ｐの大きい学習セル２６に紐付けられたカテゴリを、識別対象データの属するカテゴリと識別することができる。或いは、総ての学習セル２６の中から尤度Ｐの大きい順に所定の数の学習セル２６を抽出し、抽出した学習セル２６に対して最も多く紐付けられたカテゴリを、識別対象データの属するカテゴリと識別することができる。
【００５１】
なお、識別対象データの属するカテゴリを識別した後、この識別対象データから抽出した要素値Ｉ１〜ＩＭを用いて、ニューラルネットワーク部２０を学習するようにしてもよい。例えば、識別したカテゴリに紐付けられた学習セル２６のうち、最も尤度が大きかった学習セル２６の入力ノードの重み付け係数ωを、当該識別対象データから抽出した要素値Ｉ１〜ＩＭを用いて更新することができる。すなわち、本実施形態による学習・識別装置１００は、いわゆるダイナミック学習を行うことが可能であり、識別対象データを用いた追加の学習処理を容易に行うことができる。
【００５２】
次に、本実施形態による学習・識別装置１００のハードウェア構成例について、図７を用いて説明する。図７は、本実施形態による学習・識別装置のハードウェア構成例を示す概略図である。
【００５３】
学習・識別装置１００は、図７に示すように、一般的な情報処理装置と同様のハードウェア構成によって実現することが可能である。例えば、学習・識別装置１００は、ＣＰＵ（Central  Processing  Unit）２００、主記憶部２０２、通信部２０４、入出力インターフェース部２０６を備える。
【００５４】
ＣＰＵ２００は、学習・識別装置１００の全体的な制御や演算処理を司る制御・演算装置である。主記憶部２０２は、データの作業領域やデータの一時退避領域に用いられる記憶部であり、ＲＡＭ（Random  Access  Memory）等のメモリにより構成される。通信部２０４は、ネットワークを介してデータの送受信を行うためのインターフェースである。入出力インターフェース部２０６は、外部の出力装置２１０、入力装置２１２、記憶装置２１４等と接続してデータの送受信を行うためのインターフェースである。ＣＰＵ２００、主記憶部２０２、通信部２０４及び入出力インターフェース部２０６は、システムバス２０８によって相互に接続されている。記憶装置２１４は、例えばＲＯＭ（Read  Only  Memory）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で構成することができる。
【００５５】
主記憶部２０２は、複数の学習セル２６を含むニューラルネットワーク部２０を構築し演算を実行するための作業領域として用いることができる。ＣＰＵは、主記憶部２０２に構築したニューラルネットワーク部２０における演算処理を制御する制御部として機能する。記憶装置２１４には、学習済みの学習セル２６に関する情報を含む学習セル情報を保存することができる。また、記憶装置２１４に記憶された学習セル情報を読み出し、主記憶部２０２においてニューラルネットワーク部を構築するように構成することで、様々な識別対象データの識別に利用することができる。ＣＰＵ２００は、主記憶部２０２に構築したニューラルネットワーク部における複数の学習セルにおける演算処理を並列して実行するように構成されていることが望ましい。
【００５６】
通信部２０４は、イーサネット（登録商標）、Ｗｉ−Ｆｉ（登録商標）等の規格に基づく通信インターフェースであり、他の装置との通信を行うためのモジュールである。学習セル情報は、通信部２０４を介して他の装置から受信するようにしてもよい。例えば、頻繁に使用する学習セル情報は記憶装置２１４に記憶しておき、使用頻度の低い学習セル情報は他の装置から読み込むように構成することができる。
【００５７】
入力装置２１２は、キーボード、マウス、タッチパネル等であって、ユーザが学習・識別装置１００に所定の情報を入力するために用いられる。また、入力装置２１２は、学習対象データや識別対象データを入力するための手段として用いることもできる。例えば、学習対象データや識別対象データが２次元画像の場合にあっては、入力装置２１２として画像読取装置を適用することができる。
【００５８】
学習対象データや識別対象データは、記憶装置２１４から、或いは、通信部２０４を介して他の装置から読み込むように構成することもできる。出力装置２１０は、例えば液晶表示装置等のディスプレイを含む。学習結果や識別結果の通知は、出力装置２１０を介して行うことができる。
【００５９】
本実施形態による学習・識別装置１００の各部の機能は、プログラムを組み込んだＬＳＩ（Large  Scale  Integration）等のハードウェア部品である回路部品を実装することにより、ハードウェア的に実現することができる。或いは、その機能を提供するプログラムを、記憶装置２１４に格納し、そのプログラムを主記憶部２０２にロードしてＣＰＵ２００で実行することにより、ソフトウェア的に実現することも可能である。
【００６０】
このように、本実施形態によれば、より簡単なアルゴリズムにより学習が可能で認識率の高いニューラルネットワークを備えた学習・識別装置を実現することができる。
【００６１】
［第２実施形態］
本発明の第２実施形態による学習・識別装置について、図８及び図９を用いて説明する。第１実施形態による学習・識別装置と同様の構成要素には同一の符号を付し、説明を省略し或いは簡潔にする。図８は、本実施形態による学習・識別装置の構成例を示す概略図である。図９は、学習対象データ及び識別対象データに対して行う前処理の一例を示す図である。
【００６２】
本実施形態による学習・識別装置は、図８に示すように、抽出部１０が前処理部１２を更に有するほかは、第１実施形態による学習・識別装置１００と同様である。前処理部１２は、抽出部１０に入力された学習対象データ及び識別対象データに対して前処理を行う機能ブロックである。
【００６３】
学習対象データ及び識別対象データに対して行う前処理は、学習対象データ及び識別対象データに対する識別率を向上するための処理であるが、その内容は特に限定されるものではない。このような前処理としては、例えば、正規化処理、プーリング処理、特徴抽出処理等が挙げられる。
【００６４】
図９は、学習対象データ又は識別対象データが手書き文字を含む白黒の２次元画像である場合における正規化処理及びプーリング処理の例を示す概略図である。図９（ａ）は、前処理を行う前の学習対象データ又は識別対象データの一例を示している。図９（ｂ）及び図９（ｃ）は、図９（ａ）のデータに対して正規化処理を行った例である。ここで言う正規化処理とは、データの文字部分をデータエリアの全体に広げる処理である。図９（ｂ）は、文字のアスペクトを保持しつつ縦横同じ比率で文字部分を拡大した例である。図９（ｃ）は、文字のアスペクトを無視して縦横異なる比率で文字部分を拡大した例である。図９（ｄ）、図９（ｅ）及び図９（ｆ）は、図９（ｃ）のデータに対してプーリング処理を行った例である。ここで言うプーリング処理とは、複数の画素からなるブロックを１つの画素としてリサンプリングする処理である。図９（ｄ）は、２×２の画素ブロックを１つの画素に変換した例である。図９（ｅ）は、４×４の画素ブロックを１つの画素に変換した例である。図９（ｆ）は、７×７の画素ブロックを１つの画素に変換した例である。
【００６５】
発明者が使用したシステムにおける検討結果では、６００００個のデータに対して、前処理を行わない場合（図９（ａ）に相当）の認識率は８９．４％であり、学習時間は３８３秒であった。これに対し、文字のアスペクトを保持して正規化を行った場合（図９（ｂ）に相当）の認識率は９５．１％であり、学習時間は４９５秒であった。また、文字のアスペクトを無視して正規化を行った場合（図９（ｃ）に相当）の認識率は９７．１％であり、学習時間は５６６秒であった。このように、データの正規化処理を行うと、学習時間は増加する傾向にあるが、認識率を大幅に向上することができる。
【００６６】
一方、２×２の画素ブロックでプーリング処理を行った場合（図９（ｄ）に相当）の認識率は９６．５％、学習時間は１３５秒であった。４×４の画素ブロックでプーリング処理を行った場合（図９（ｅ）に相当）の認識率は８５．４％、学習時間は２１秒であった。また、７×７の画素ブロックでプーリング処理を行った場合（図９（ｆ）に相当）の認識率は３０．５％、学習時間は２秒であった。プーリング処理では、その度合いによって認識率は大幅に悪化するが、適切な度合いを選択することにより、認識率の向上と学習時間の短縮との双方を実現することができる。
【００６７】
前処理部１２において行う処理は、正規化処理やプーリング処理のように、学習対象データや識別対象データに対して直接的に処理を施すものでなくてもよい。例えば、前処理部１２として、学習済みのディープラーニングモデルの特徴抽出部を利用することもできる。すなわち、学習済みのディープラーニングモデルから抽出した特徴量を、ニューラルネットワーク部２０に入力する要素値として用いることができる。
【００６８】
前処理部１２において行う処理は、必ずしも１種類である必要はなく、２つ以上の処理を組み合わせて行うようにしてもよい。
【００６９】
このように、本実施形態によれば、より簡単なアルゴリズムにより学習が可能で認識率の高いニューラルネットワークを備えた学習・識別装置を実現することができる。
【００７０】
［第３実施形態］
本発明の第３実施形態による学習装置について、図１０を用いて説明する。第１及び第２実施形態による学習・識別装置と同様の構成要素には同一の符号を付し、説明を省略し或いは簡潔にする。図１０は、本実施形態による学習装置の構成例を示す概略図である。
【００７１】
本実施形態による学習装置３００は、図１０に示すように、ニューラルネットワーク部２０と、学習部４０とを有している。
【００７２】
ニューラルネットワーク部２０には、学習対象データに基づく複数の要素値が入力される。ニューラルネットワーク部２０は、複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有する。
【００７３】
学習部４０は、ニューラルネットワーク部２０の学習を行う。学習部は、学習セル２６の出力値に応じて、学習セル２６の複数の入力ノードの重み付け係数ωを更新し、又は、ニューラルネットワーク部２０に新たな学習セル２６を追加する。
【００７４】
このように構成することで、より簡単なアルゴリズムにより学習が可能で認識率の高いニューラルネットワークを備えた学習装置を実現することができる。
【００７５】
［第４実施形態］
本発明の第４実施形態による識別装置について、図１１を用いて説明する。第１及び第２実施形態による学習・識別装置と同様の構成要素には同一の符号を付し、説明を省略し或いは簡潔にする。図１１は、本実施形態による識別装置の構成例を示す概略図である。
【００７６】
本実施形態による識別装置４００は、図１１に示すように、ニューラルネットワーク部２０と、識別部５０とを有している。
【００７７】
ニューラルネットワーク部２０には、識別対象データに基づく複数の要素値が入力される。ニューラルネットワーク部２０は、複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セル２６を有する。複数の学習セル２６の各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられている。学習セル２６の複数の入力ノードは、複数の要素値の各々が対応するカテゴリに応じた所定の重みで入力されるように構成されている。
【００７８】
識別部５０は、ニューラルネットワーク部２０の出力に基づき識別対象データを識別する。識別部５０は、学習セル２６の出力値と学習セルに紐付けられたカテゴリとに基づいて、識別対象データの属するカテゴリを識別する。
【００７９】
このように構成することで、より簡単なアルゴリズムにより認識率の高いニューラルネットワークを備えた識別装置を実現することができる。
【００８０】
［変形実施形態］
本発明は、上記実施形態に限らず種々の変形が可能である。
【００８１】
例えば、いずれかの実施形態の一部の構成を他の実施形態に追加した例や、他の実施形態の一部の構成と置換した例も、本発明の実施形態である。
【００８２】
また、上記実施形態では、学習対象データ及び識別対象データとして黒色の手書き文字を含む白黒の２次元画像を例示した。しかしながら、上述の構成では、例えば黒地に白色の文字が描かれた画像データの場合に適切に識別できない虞がある。このような場合には、１種類のカテゴリに対して複数種類の学習セル２６を設けるようにしてもよい。例えば、上述の例では、白の画素に対応する要素値を０、黒の画素に対応する要素値を１として学習を行う学習セル２６と、白の画素に対応する要素値を１、黒の画素に対応する要素値を０として学習を行う学習セル２６とを設定することができる。このように構成することにより、認識率を更に高めることができる。
【００８３】
また、上記実施形態では、学習対象データから抽出した要素値を、当該学習対象データの教師情報のカテゴリに紐付けられた学習セル２６だけに入力する例を示したが、総ての学習セル２６に入力するように構成してもよい。この場合には、例えば、学習セル２６の入力ノードの重み付け係数ωに初期値を設定する際及び重み付け係数ωを更新する際に、取り込んだ学習対象データの教師情報のカテゴリに紐付けられた学習セル２６であることを条件とすればよい。
【００８４】
また、上記実施形態では、教師情報を含む学習対象データを用いてニューラルネットワーク部２０の学習を行ったが、学習対象データは、必ずしも教師情報を含む必要はない。例えば、学習対象データから抽出した複数の要素値を総ての学習セル２６に入力し、尤度Ｐが最も大きくなる学習セル２６を学習するとともに、入力した学習対象データと尤度Ｐが最も大きくなる学習セル２６とを関連付ける。これにより、学習対象データが備える特徴に基づいてニューラルネットワーク部２０を学習するとともに、学習対象データを分類することができる。学習セル２６には、このようにして学習対象データを分類した後に、分類された学習対象データに応じたラベルを付するようにすればよい。
【００８５】
また、上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラムを記録媒体に記録させ、該記録媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記録媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記録媒体はもちろん、そのプログラム自体も各実施形態に含まれる。
【００８６】
該記録媒体としては例えばフロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性メモリカード、ＲＯＭを用いることができる。また該記録媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、ＯＳ上で動作して処理を実行するものも各実施形態の範疇に含まれる。
【００８７】
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００８８】
上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００８９】
（付記１）
学習対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、
前記ニューラルネットワーク部の学習を行う学習部と、を有し、
前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、
前記学習部は、前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する
ことを特徴とする学習装置。
【００９０】
（付記２）
前記学習部は、前記複数の要素値と前記学習セルの出力値との間の相関値が所定の閾値未満の場合に、前記新たな学習セルを追加する
ことを特徴とする付記１記載の学習装置。
【００９１】
（付記３）
前記学習部は、前記複数の要素値の各々を、前記新たな学習セルの複数の入力ノードの各々の重み付け係数の初期値として設定する
ことを特徴とする付記２記載の学習装置。
【００９２】
（付記４）
前記学習部は、前記複数の要素値と前記学習セルの出力値との間の相関値が所定の閾値以上の場合に、前記学習セルの前記複数の入力ノードの前記重み付け係数を更新する
ことを特徴とする付記１記載の学習装置。
【００９３】
（付記５）
前記学習部は、前記相関値が前記閾値以上である前記学習セルが複数存在する場合に、前記相関値が最も大きい前記学習セルの前記複数の入力ノードの前記重み付け係数を更新する
ことを特徴とする付記４記載の学習装置。
【００９４】
（付記６）
前記複数の学習セルの各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられており、
前記学習部は、入力された前記学習対象データが属するカテゴリに紐付けられた前記学習セルの前記重み付け係数を更新する
ことを特徴とする付記４又は５記載の学習装置。
【００９５】
（付記７）
前記学習部は、前記学習セルの前記複数の入力ノードの各々の前記重み付け係数を、対応する前記入力ノードから入力された前記要素値に基づいて更新する
ことを特徴とする付記４乃至６のいずれか１項に記載の学習装置。
【００９６】
（付記８）
前記相関値は、前記学習セルの前記出力値に関する尤度である
ことを特徴とする付記２乃至７のいずれか１項に記載の学習装置。
【００９７】
（付記９）
前記尤度は、前記複数の入力ノードの各々に設定されている重み付け係数に応じた前記学習セルの出力の最大値に対する前記複数の要素値を入力したときの前記学習セルの前記出力値の比率である
ことを特徴とする付記８記載の学習装置。
【００９８】
（付記１０）
所定の前処理を行った後の前記学習対象データから前記複数の要素値を抽出する抽出部を更に有する
ことを特徴とする付記１乃至９のいずれか１項に記載の学習装置。
【００９９】
（付記１１）
前記前処理は、正規化処理、プーリング処理又は特徴抽出処理である
ことを特徴とする付記１０記載の学習装置。
【０１００】
（付記１２）
前記複数の学習セルを含む前記ニューラルネットワーク部を構築し演算を実行するための作業領域となる記憶部と、前記ニューラルネットワーク部における演算処理を制御する制御部と、を更に有し、
前記制御部は、前記記憶部に構築した前記ニューラルネットワーク部における前記複数の要素値に対する前記複数の学習セルにおける演算処理を並列して実行する
ことを特徴とする付記１乃至１１のいずれか１項に記載の学習装置。
【０１０１】
（付記１３）
識別対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、
前記ニューラルネットワーク部の出力に基づき前記識別対象データを識別する識別部と、を有し、
前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、
前記複数の学習セルの各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられており、
前記学習セルの前記複数の入力ノードは、前記複数の要素値の各々が対応するカテゴリに応じた所定の重みで入力されるように構成されており、
前記識別部は、前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する
ことを特徴とする識別装置。
【０１０２】
（付記１４）
前記識別部は、前記複数の要素値と前記学習セルの出力値との間の相関値が最も大きい前記学習セルに紐付けられたカテゴリを、前記識別対象データの属するカテゴリを識別する
ことを特徴とする付記１３記載の識別装置。
【０１０３】
（付記１５）
前記識別部は、前記複数の学習セルの中から、前記複数の要素値の値と前記学習セルの出力値との間の相関値が大きい順に所定の数の前記学習セルを抽出し、抽出した前記学習セルに対して最も多く紐付けられたカテゴリを、前記識別対象データの属するカテゴリを識別する
ことを特徴とする付記１３記載の識別装置。
【０１０４】
（付記１６）
前記複数の要素値を用いて前記学習セルの前記複数の入力ノードの各々の重み付け係数を更新する学習部を更に有する
ことを特徴とする付記１３乃至１５のいずれか１項に記載の識別装置。
【０１０５】
（付記１７）
学習対象データに基づく複数の要素値が入力される複数の入力ノードと、前記複数の要素値の各々に対して所定の重みで加算して出力する出力ノードと、を各々が含む複数の学習セルを有するニューラルネットワーク部を有する学習装置の学習方法であって、
学習対象データに基づく複数の要素値を、前記学習セルの前記複数の入力ノードに入力し、
前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加することにより、前記ニューラルネットワーク部を学習する
ことを特徴とする学習方法。
【０１０６】
（付記１８）
識別対象データに基づく複数の要素値が入力される複数の入力ノードと、前記複数の要素値に対して所定の重み付けをして加算して出力する出力ノードと、を各々が含み、各々が教師情報を示す複数のカテゴリのうちのいずれかに紐付けられた複数の学習セルを有するニューラルネットワーク部を有する識別装置を用いた識別方法であって、
識別対象データに基づく複数の要素値を、前記複数の学習セルの前記複数の入力ノードに入力し、
前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する
ことを特徴とする識別方法。
【０１０７】
（付記１９）
学習対象データに基づいて学習を行う学習装置において実行されるプログラムであって、コンピュータを、
学習対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有するニューラルネットワーク部、
前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する手段、
として機能させるプログラム。
【０１０８】
（付記２０）
識別対象データに基づいて識別を行う識別装置において実行されるプログラムであって、コンピュータを、
識別対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含み、各々が教師情報を示す複数のカテゴリのうちのいずれかに紐付けられた複数の学習セルを有するニューラルネットワーク部、
前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する手段、
として機能させるプログラム。
【０１０９】
（付記２１）
付記１９又は２０に記載のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【０１１０】
この出願は、２０１７年１１月２２日に出願された日本出願特願２０１７−２２４３２９を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０１１１】
１０…抽出部
１２…前処理部
２０…ニューラルネットワーク部
２２，２４…セル
２６…学習セル
３０…判定部
４０…学習部
４２…重み修正部
４４…学習セル生成部
５０…識別部
６０…出力部
１００…学習・識別装置
２００…ＣＰＵ
２０２…主記憶部
２０４…通信部
２０６…入出力インターフェース部
２０８…システムバス
２１０…出力装置
２１２…入力装置
２１４…記憶装置
３００…学習装置
４００…識別装置
【図１】
2019102984.tif 000005
【図２】
2019102984.tif 000006
【図３】
2019102984.tif 000007
【図４】
2019102984.tif 000008
【図５】
2019102984.tif 000009
【図６】
2019102984.tif 000010
【図７】
2019102984.tif 000011
【図８】
2019102984.tif 000012
【図９】
2019102984.tif 000013
【図１０】
2019102984.tif 000014
【図１１】
2019102984.tif 000015
【手続補正書】
【提出日】令和2年1月9日(2020.1.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
学習対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、
前記ニューラルネットワーク部の学習を行う学習部と、を有し、
前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、
前記学習部は、前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する
ことを特徴とする学習装置。
【請求項２】
前記学習部は、前記複数の要素値と前記学習セルの出力値との間の相関値が所定の閾値未満の場合に、前記新たな学習セルを追加する
ことを特徴とする請求項１記載の学習装置。
【請求項３】
前記学習部は、前記複数の要素値と前記学習セルの出力値との間の相関値が所定の閾値以上の場合に、前記学習セルの前記複数の入力ノードの前記重み付け係数を更新する
ことを特徴とする請求項１記載の学習装置。
【請求項４】
前記学習部は、前記相関値が前記閾値以上である前記学習セルが複数存在する場合に、前記相関値が最も大きい前記学習セルの前記複数の入力ノードの前記重み付け係数を更新する
ことを特徴とする請求項３記載の学習装置。
【請求項５】
前記複数の学習セルの各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられており、
前記学習部は、入力された前記学習対象データが属するカテゴリに紐付けられた前記学習セルの前記重み付け係数を更新する
ことを特徴とする請求項３又は４記載の学習装置。
【請求項６】
前記学習部は、前記学習セルの前記複数の入力ノードの各々の前記重み付け係数を、対応する前記入力ノードから入力された前記要素値に基づいて更新する
ことを特徴とする請求項３乃至５のいずれか１項に記載の学習装置。
【請求項７】
識別対象データに基づく複数の要素値が入力されるニューラルネットワーク部と、
前記ニューラルネットワーク部の出力に基づき前記識別対象データを識別する識別部と、を有し、
前記ニューラルネットワーク部は、前記複数の要素値の各々に所定の重み付けをする複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有し、
前記複数の学習セルの各々は、教師情報を示す複数のカテゴリのうちのいずれかに紐付けられており、
前記学習セルの前記複数の入力ノードは、前記複数の要素値の各々が対応するカテゴリに応じた所定の重みで入力されるように構成されており、
前記識別部は、前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する
ことを特徴とする識別装置。
【請求項８】
前記識別部は、前記複数の要素値と前記学習セルの出力値との間の相関値が最も大きい前記学習セルに紐付けられたカテゴリを、前記識別対象データの属するカテゴリと識別する
ことを特徴とする請求項７記載の識別装置。
【請求項９】
学習対象データに基づいて学習を行う学習装置において実行されるプログラムであって、コンピュータを、
学習対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含む複数の学習セルを有するニューラルネットワーク部、
前記学習セルの出力値に応じて、前記学習セルの前記複数の入力ノードの重み付け係数を更新し、又は、前記ニューラルネットワーク部に新たな学習セルを追加する手段、
として機能させるプログラム。
【請求項１０】
識別対象データに基づいて識別を行う識別装置において実行されるプログラムであって、コンピュータを、
識別対象データに基づく複数の要素値が入力される複数の入力ノードと、重み付けをした前記複数の要素値を加算して出力する出力ノードと、を各々が含み、各々が教師情報を示す複数のカテゴリのうちのいずれかに紐付けられた複数の学習セルを有するニューラルネットワーク部、
前記学習セルの出力値と前記学習セルに紐付けられたカテゴリとに基づいて、前記識別対象データの属するカテゴリを識別する手段、
として機能させるプログラム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１０２
【補正方法】変更
【補正の内容】
【０１０２】
（付記１４）
前記識別部は、前記複数の要素値と前記学習セルの出力値との間の相関値が最も大きい前記学習セルに紐付けられたカテゴリを、前記識別対象データの属するカテゴリと識別する
ことを特徴とする付記１３記載の識別装置。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０１０３
【補正方法】変更
【補正の内容】
【０１０３】
（付記１５）
前記識別部は、前記複数の学習セルの中から、前記複数の要素値の値と前記学習セルの出力値との間の相関値が大きい順に所定の数の前記学習セルを抽出し、抽出した前記学習セルに対して最も多く紐付けられたカテゴリを、前記識別対象データの属するカテゴリと識別する
ことを特徴とする付記１３記載の識別装置。
【国際調査報告】
2019102984.tif 000016
2019102984.tif 000017