JP2018128942A - Analyzing apparatus, analyzing method, and program - Google Patents
Analyzing apparatus, analyzing method, and program Download PDFInfo
- Publication number
- JP2018128942A JP2018128942A JP2017022775A JP2017022775A JP2018128942A JP 2018128942 A JP2018128942 A JP 2018128942A JP 2017022775 A JP2017022775 A JP 2017022775A JP 2017022775 A JP2017022775 A JP 2017022775A JP 2018128942 A JP2018128942 A JP 2018128942A
- Authority
- JP
- Japan
- Prior art keywords
- data
- layer
- learning
- classification system
- teacher
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000012545 processing Methods 0.000 claims abstract description 110
- 238000004458 analytical method Methods 0.000 claims description 75
- 230000008569 process Effects 0.000 claims description 27
- 230000006399 behavior Effects 0.000 claims description 17
- 238000013459 approach Methods 0.000 claims description 10
- 238000013528 artificial neural network Methods 0.000 description 64
- 230000009471 action Effects 0.000 description 32
- 230000006870 function Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 230000000052 comparative effect Effects 0.000 description 8
- 238000000556 factor analysis Methods 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000000491 multivariate analysis Methods 0.000 description 4
- 101000934489 Homo sapiens Nucleosome-remodeling factor subunit BPTF Proteins 0.000 description 3
- 102100025062 Nucleosome-remodeling factor subunit BPTF Human genes 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 241000282326 Felis catus Species 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000000513 principal component analysis Methods 0.000 description 1
- 238000011158 quantitative evaluation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、解析装置、解析方法、およびプログラムに関する。 The present invention relates to an analysis apparatus, an analysis method, and a program.
従来、過去の検索行動からデータの関連性を自動的に学習し、その学習を利用して将来の検索行動を助ける技術が知られている(例えば、特許文献1参照)。また、ニューラルネットワークを用いて、特徴量の抽出と、その特徴量を用いた機械学習とを一括で行う技術が知られている(例えば、特許文献2参照)。 2. Description of the Related Art Conventionally, a technology is known that automatically learns data relevance from past search behaviors and uses the learning to assist future search behaviors (see, for example, Patent Document 1). In addition, a technique is known in which a feature amount is extracted and machine learning using the feature amount is performed at once using a neural network (see, for example, Patent Document 2).
しかしながら、従来の技術では、学習の精度が十分でない場合があった。 However, in the conventional technique, the accuracy of learning may not be sufficient.
本発明は、上記の課題に鑑みてなされたものであり、学習の精度を向上させることができる解析装置、解析方法、およびプログラムを提供することを目的としている。 SUMMARY An advantage of some aspects of the invention is that it provides an analysis apparatus, an analysis method, and a program that can improve the accuracy of learning.
本発明の一態様は、第1データを入力したときに、独立に構成しうる分類器が多層に構成された分類システムに含まれる第1分類器から出力される第2データが、第1教師データに近づくように、前記分類システムを学習させた後、前記第1データを入力したときに、前記第1分類器よりも階層が深い第2分類器から出力される第3データが、第2教師データに近づくように、前記第1教師データを用いた学習結果に基づいて前記分類システムを学習させる学習処理部と、前記学習処理部により学習させられた分類システムに基づいて、未学習のデータを所定のカテゴリーに分類する分類処理部と、を備える解析装置である。 According to one aspect of the present invention, when the first data is input, the second data output from the first classifier included in the classification system in which the classifiers that can be independently configured are configured in multiple layers is the first teacher. After learning the classification system to approach the data, when the first data is input, the third data output from the second classifier having a deeper hierarchy than the first classifier is the second data. A learning processing unit that learns the classification system based on a learning result using the first teacher data so as to approach the teacher data, and an unlearned data based on the classification system learned by the learning processing unit And a classification processing unit that classifies the data into a predetermined category.
本発明の一態様によれば、学習の精度を向上させることができる解析装置、解析方法、およびプログラムを提供することができる。 According to one embodiment of the present invention, it is possible to provide an analysis device, an analysis method, and a program that can improve the accuracy of learning.
以下、本発明を適用した解析装置、解析方法、およびプログラムを、図面を参照して説明する。 Hereinafter, an analysis apparatus, an analysis method, and a program to which the present invention is applied will be described with reference to the drawings.
[概要]
解析装置は、一以上のプロセッサによって実現される。解析装置は、ある入力データv(第1データの一例)を入力したときに、独立に構成しうる分類器が多層に構成された分類システムに含まれる第1分類器から出力される出力データh(第2データの一例)が、第1教師データに近づくように、分類システムを学習させた後、入力データvを入力したときに、第1分類器よりも階層が深い第2分類器から出力される出力データh(第3データの一例)が、第2教師データに近づくように、第1教師データを用いた学習結果に基づいて分類システムを学習させる。
[Overview]
The analysis device is realized by one or more processors. When the analysis apparatus inputs certain input data v (an example of the first data), output data h output from the first classifier included in the classification system in which classifiers that can be configured independently are configured in multiple layers. When the input data v is input after learning the classification system so that (an example of the second data) approaches the first teacher data, it is output from the second classifier that is deeper than the first classifier. The classification system is trained based on the learning result using the first teacher data so that the output data h (an example of the third data) to be approximated to the second teacher data.
例えば、「分類器」は、ニューラルネットワークであり、「分類システム」は、複数のニューラルネットワークにより構成されるディープニューラルネットワークDNNである。この場合、「第1分類器」は、ディープニューラルネットワークDNNの隠れ層に含まれる複数の階層のうち、任意の階層のニューラルネットワークであり、「第2分類器」は、隠れ層に含まれる複数の階層のうち、少なくとも第1分類器としたニューラルネットワークの階層よりも深い階層のニューラルネットワークである。「深い階層」とは、後述する出力層に近い階層であることを意味する。「第1分類器」および「第2分類器」のそれぞれは、ある一つの階層のニューラルネットワークを意味してもよいし、複数の階層のニューラルネットワークを意味してもよい。 For example, the “classifier” is a neural network, and the “classification system” is a deep neural network DNN composed of a plurality of neural networks. In this case, the “first classifier” is a neural network of an arbitrary hierarchy among a plurality of layers included in the hidden layer of the deep neural network DNN, and the “second classifier” is a plurality of layers included in the hidden layer. The neural network of a hierarchy deeper than the hierarchy of the neural network at least as the first classifier. “Deep hierarchy” means a hierarchy close to an output layer described later. Each of the “first classifier” and the “second classifier” may mean a neural network of a certain hierarchy, or may mean a neural network of a plurality of hierarchies.
そして、解析装置は、学習させた分類システムに基づいて、未学習のデータを所定のカテゴリーに分類する。これによって、学習の精度を向上させることができる。以下、一例として、分類システムが、複数のニューラルネットワークにより構成されるディープニューラルネットワークDNNであるものとして説明する。 Then, the analysis device classifies the unlearned data into a predetermined category based on the learned classification system. Thereby, the accuracy of learning can be improved. Hereinafter, as an example, a description will be given assuming that the classification system is a deep neural network DNN composed of a plurality of neural networks.
[全体構成]
図1は、実施形態における解析装置100を含む解析システム1の一例を示す図である。実施形態における解析システム1は、例えば、一以上の端末装置10と、サービス提供装置20と、ログ取得装置30と、広告配信サーバ装置40と、解析装置100とを備える。これらの装置は、ネットワークNWを介して接続される。なお、解析システム1に含まれる複数の装置の一部または全部は、一つの解析装置100内に集約されていてもよい。
[overall structure]
FIG. 1 is a diagram illustrating an example of an
図1に示す各装置は、ネットワークNWを介して種々の情報を送受信する。ネットワークNWは、例えば、無線基地局、Wi‐Fiアクセスポイント、通信回線、プロバイダ、インターネットなどを含む。なお、図1に示す各装置の全ての組み合わせが相互に通信可能である必要はなく、ネットワークNWは、一部にローカルなネットワークを含んでもよい。 Each apparatus shown in FIG. 1 transmits and receives various information via the network NW. The network NW includes, for example, a radio base station, a Wi-Fi access point, a communication line, a provider, the Internet, and the like. Note that it is not necessary for all combinations of the devices shown in FIG. 1 to be able to communicate with each other, and the network NW may partially include a local network.
端末装置10は、ユーザによって使用される装置である。端末装置10は、例えば、スマートフォンなどの携帯電話、タブレット端末、パーソナルコンピュータなどのコンピュータ装置である。例えば、端末装置10は、ユーザから所定の操作を受け付けると、予めインストールされたアプリケーションを介してサービス提供装置20と通信を行い、アプリケーション上で表示或いは再生するコンテンツを取得してよい。コンテンツは、例えば、動画データや、画像データ、音声データ、テキストデータなどである。例えば、アプリケーションは、インターネットショッピングや検索サービスを享受可能なアプリケーションであってもよいし、SNS(Social Networking Service)、メールサービス、情報提供サービス(例えばニュースや天気予報など)などを享受可能なアプリケーションであってもよい。
The
また、端末装置10は、ユーザから所定の操作を受け付けると、所定のウェブブラウザを介して、サービス提供装置20が提供するウェブサイトにアクセスしてもよい。例えば、サービス提供装置20により提供されるウェブサイトでは、上述した各種アプリケーションにより提供されるサービスと同様のサービスが提供される。
Further, when receiving a predetermined operation from the user, the
サービス提供装置20は、インターネット上において、ショッピングサイトや検索サイト等のウェブサイトを提供するウェブサーバ装置であってよいし、アプリケーションが起動された端末装置10と通信を行って、各種情報の受け渡しを行うアプリケーションサーバ装置であってもよい。
The
ログ取得装置30は、例えば、端末装置10またはサービス提供装置20から、ウェブブラウザごとに管理されるクッキーやキャッシュ、HTTP(Hypertext Transfer Protocol)リクエストのログファイルなどを収集することで、端末装置10を利用するユーザの行動履歴を取得する。行動履歴とは、例えば、インターネットショッピングでの購買履歴(購入した商品またはサービスの種類や金額、個数など)や、検索サイトでの検索履歴(使用された検索エンジンや入力された検索クエリなど)、動画像サイトでの視聴履歴(動画像の種類や視聴時間など)、どういったウェブページからのアクセスなのかを識別するHTTPリファラ(URLの履歴)などである。
The
また、ログ取得装置30は、ウェブブラウザを介したインターネット上でのユーザの行動履歴と同様に、端末装置10において起動されたアプリケーションごとの購買履歴や検索履歴、視聴履歴などをユーザの行動履歴として取得してよい。
In addition, the
また、例えば、端末装置10で起動されるアプリケーションが、端末装置10の位置情報(例えばGPS(Global Positioning System)の測位座標)を利用しながら、近くの実店舗を紹介したり、その地域の気象情報を提供したりするような各種サービスを提供する場合、ログ取得装置30は、端末装置10に蓄積された位置情報を、ユーザの行動履歴として取得してもよい。
In addition, for example, an application that is activated on the
ログ取得装置30に取得されるユーザの行動履歴は、端末装置10毎であってもよいし、一つの端末装置10におけるOS(Operating System)単位でのアカウント毎であってもよいし、ウェブブラウザまたはアプリケーション単位でのアカウント毎であってもよい。
The user action history acquired by the
なお、ログ取得装置30は、サービス提供装置20からユーザの行動履歴を取得するのに代えて、或いは加えて、他のサービス提供装置(不図示)からユーザの行動履歴を取得してもよい。ログ取得装置30は、取得したユーザの行動履歴を示す情報を、解析装置100に送信する。
Note that the
広告配信サーバ装置40は、例えば、解析装置100による解析結果に基づいて、サービス提供装置20が端末装置10に対してサービスを提供するのに伴って広告を配信する。例えば、端末装置10が、サービス提供装置20から広告枠を含むウェブページまたはこれに相当するアプリケーション用のスタイルシートを受信すると、広告枠に予め設けられたアドタグまたはSDK(Software Development Kit)に基づいて、広告配信サーバ装置40に広告配信リクエストを送信する。これを受けて、広告配信サーバ装置40は、予め契約しておいた広告依頼主のウェブサイトなどにアクセスすることが可能な広告画像(例えばURLが埋め込まれた画像)を広告配信リクエストに対するレスポンスとして端末装置10に送信する。これによって、端末装置10の画面には、広告画像が表示される。
For example, the advertisement
解析装置100は、ディープニューラルネットワークDNNを用いて、ログ取得装置30により取得されたユーザの行動履歴を基に、その行動履歴に対応するユーザを所定のカテゴリーに分類する。上述したように、ディープニューラルネットワークDNNは、少なくとも2層以上の階層を含むニューラルネットワークである。そして、解析装置100は、ユーザごとのカテゴリーの分類結果を、例えば広告配信サーバ装置40に提供する。これによって、広告配信サーバ装置40は、分類されたカテゴリーに応じて広告の配信内容を変更することができる。
Using the deep neural network DNN, the
[解析装置の構成]
以下、図を参照して解析装置100の構成について説明する。図2は、実施形態における解析装置100の構成の一例を示す図である。図示のように、解析装置100は、例えば、受付部102と、表示部104と、通信部106と、制御部110と、記憶部130とを備える。
[Configuration of analyzer]
Hereinafter, the configuration of the
受付部102は、ユーザからの操作入力を受け付けるタッチパネルやキーボード、マウスなどの入力インターフェースである。表示部104は、液晶表示装置などの表示装置である。
The accepting
通信部106は、例えば、NIC(Network Interface Card)等の通信インターフェースやDMA(Direct Memory Access)コントローラを含む。通信部106は、ネットワークNWを介して、ログ取得装置30または広告配信サーバ装置40などと通信する。例えば、通信部106は、ログ取得装置30からユーザの行動履歴を受信し、これを行動履歴情報132として記憶部130に記憶させる。
The
図3は、行動履歴情報132の一例を示す図である。図示の例のように、行動履歴情報132は、時刻に対して、端末装置10の位置がどの住所に対応するのかが対応付けられていたり、使用された検索エンジン名とその検索エンジンに入力された検索クエリとが対応付けられていたり、閲覧されたウェブサイトのタイトル名とそのウェブサイトのURLとが対応付けられていたりする情報である。また、行動履歴情報132は、例えば、時刻に対して、購入された商品名またはサービス名と、これらが購入されたウェブサイトのURLとが対応付けられた情報であってよい。当然のことながら、ユーザは、ある事象に対して、想定し得る全ての行動を取るわけではなく、1つ又は2、3程度、多くとも数十から数百程度の行動を取るのが常である。例えば、ショッピングサイトで販売される商品のうち、一人のユーザが全ての商品を購入することは極めてまれであり、通常は、幾つかの商品を購入するだけである。従って、行動履歴情報132が示すユーザの行動履歴は、想定し得る全ての行動履歴を網羅的に含んでいないという意味で、情報量の乏しいスパース(疎)なデータとなる傾向がある。
FIG. 3 is a diagram illustrating an example of the
制御部110は、例えば、取得部112と、学習処理部114と、分類処理部116とを備える。これらの構成要素は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサが記憶部130に格納されたプログラムを実行することにより実現される。また、制御部110の構成要素の一部または全部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、またはFPGA(Field-Programmable Gate Array)などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
The
記憶部130は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)などにより実現される。記憶部130は、ファームウェアやアプリケーションプログラムなどの各種プログラムや上述した行動履歴情報132の他に、アンケート情報134、分析情報136、DNN構成情報138、および層毎パラメータ情報140などを記憶する。これらの情報については後述する。
The
取得部112は、例えば、通信部106を用いて外部サーバ(不図示)と通信することで、この外部サーバに記憶されたアンケート(サーベイ)の結果を示す情報を取得し、これをアンケート情報134として記憶部130に記憶させる。
For example, the
なお、サービス提供装置20がアンケートに回答可能なアンケートモニターサイト、またはアンケートモニターのサービスをアプリケーションを介して提供する場合、取得部112は、通信部106を用いてサービス提供装置20からアンケート情報134を取得してもよい。また、アンケート情報134は、予め記憶部130に記憶されていてもよい。
When the
また、例えば、解析装置100を管理する管理者などが受付部102に対してアンケートの結果を入力する場合、取得部112は、受付部102に対して入力された情報をアンケート情報134としてもよい。
For example, when an administrator who manages the
図4は、アンケートの一例を示す図である。図示の例のように、アンケートは、定型化された調査項目(図中Q1〜4等)に対して、予め決められた選択肢が用意されている。図示の例では、5つの選択肢が用意されているがこれに限られず、2つ、3つ、または4つであってもよいし、6つ以上であってもよい。 FIG. 4 is a diagram illustrating an example of a questionnaire. As in the example shown in the figure, the questionnaire is prepared with predetermined options for the standardized survey items (Q1 to 4 in the figure). In the illustrated example, five options are prepared, but the present invention is not limited to this, and may be two, three, four, or six or more.
図5は、アンケート情報134の一例を示す図である。図示の例のように、アンケート情報134は、例えば、調査項目に対して、ユーザにより選択された選択肢に応じたスコアが対応付けられた情報である。アンケート情報134のユーザと、行動履歴情報132のユーザは、少なくとも一部が同一であるものとする。すなわち、アンケートの回答者であるユーザの行動履歴は、行動履歴情報132として取得されているものとする。
FIG. 5 is a diagram illustrating an example of the
例えば、上述したアンケートにおいて、調査項目に対して肯定的な回答選択肢ほどスコアが高く設定されている。例えば「そうは思わない」や「全くそうは思わない」といった否定的な回答選択肢に比べて、「非常にそう思う」や「ややそう思う」といった肯定的な回答選択肢の方がスコアは高く設定される。なお、この関係は一例であり、調査項目に対して否定的な回答選択肢ほどスコアが高く設定されてもよい。 For example, in the above-described questionnaire, the higher the answer option for the survey item, the higher the score is set. For example, compared to negative answer options such as “I do not think so” or “I do not think so”, positive answer options such as “I think so” or “I think so” are set higher. Is done. Note that this relationship is an example, and a negative answer option may be set higher for a survey item.
また、取得部112は、上述したアンケートの分析結果を示す情報を取得し、これを分析情報136として記憶部130に記憶させる。例えば、アンケート情報134の取得元である装置が分析を行う場合には、取得部112は、分析を行った装置から分析情報136を取得してよい。また、例えば、アンケート結果を分析するアナリストなどが受付部102に対して分析結果を入力する場合、取得部112は、受付部102に対して入力された情報を分析情報136としてもよい。
In addition, the
例えば、アンケート結果の分析は、(1)アンケートに含まれる各調査項目をどのように設計したのか、(2)どういった分析手法で定量的に評価するのか、(3)分析の結果としてアンケートに回答したユーザをどう分類するのか、といった事項を考慮して行われる。例えば、(1)については、調査項目に対する回答方法が、選択肢形式であるのか或いは記述形式であるのか、選択肢形式であるならば選択肢は文章で表現されているのか或いは数値で表現されているのか、といったことを考慮する必要がある。また、(2)については、ユーザの回答に応じたスコアを用いて、例えば、因子分析を行うことで、アンケートに回答したユーザの特性に寄与する因子が何であるのか、或いはユーザの特性において各因子がどの程度寄与するのか、といったことを考慮する必要がある。また、因子分析の代わりに主成分分析を行う場合、ユーザの特性を表しているであろう複数の変数から、どの変数が主成分となるのかを考慮する必要がある。また、(3)については、最終的な分析結果として、アンケートに回答した複数のユーザのそれぞれの特性から、どのユーザとどのユーザを同じ傾向と見做すのか、或いはユーザの分類先のカテゴリーは各ユーザに対して一つとするのか複数とするのかを考慮する必要がある。このように、アンケート結果を分析するアナリストなどが、アンケートを行うことに至った目的から適切に分析し、アンケートに回答したユーザをある程度の粒度で分類するための統計的な分類指標となるパラメータを導出する必要がある。このようなパラメータは、アナリストなどが適切に設定する必要のあるハイパーパラメータとして扱われる。 For example, the analysis of the questionnaire results includes (1) how each survey item included in the questionnaire is designed, (2) what analysis method is used for quantitative evaluation, and (3) the results of the analysis This is done in consideration of matters such as how to classify users who responded to. For example, for (1), whether the answer method for the survey item is an option format or a description format, or if the option format is an option format, is the option expressed in text or numerically? It is necessary to consider such things. For (2), by using a score according to the user's answer, for example, by performing factor analysis, what is the factor contributing to the characteristics of the user who answered the questionnaire, It is necessary to consider how much the factor contributes. In addition, when principal component analysis is performed instead of factor analysis, it is necessary to consider which variable is the principal component from a plurality of variables that may represent the characteristics of the user. For (3), as a final analysis result, which user and which user are considered to have the same tendency from the characteristics of each of the plurality of users who answered the questionnaire, or the category of the user's classification destination is It is necessary to consider whether there is one or more for each user. In this way, parameters that serve as statistical classification indicators for analysts who analyze questionnaire results to analyze appropriately from the purpose of conducting the questionnaire and classify users who answered the questionnaire to a certain degree of granularity Need to be derived. Such parameters are treated as hyperparameters that an analyst or the like needs to set appropriately.
例えば、(3)のハイパーパラメータとして、カテゴリーを「年収の高い」、「年収が低い」とする場合、(2)のハイパーパラメータ(分析指標)を、アンケートに回答したユーザのうち、年収の高いユーザに共通する因子や年収の低いユーザに共通する因子などをパラメータとすればよい。 For example, when the category is “high annual income” and “low annual income” as the hyperparameter of (3), the hyperparameter (analysis index) of (2) has the highest annual income among the users who answered the questionnaire Factors common to users or factors common to users with low annual income may be used as parameters.
図6は、分析情報136の一例を示す図である。図示の例では、アンケート結果に対して、上述した(1)〜(3)の事項を考慮した上で因子分析が行われた場合の結果を示している。例えば、分析情報136は、因子分析の際に考慮した因子(図中FAC1等)に対して、アンケートに回答したユーザごとに因子スコアが対応付けられた情報である。因子スコアは、例えば、因子とユーザの特性との相関の程度を表す指標値である。図示の例では、因子FAC1に対して、ユーザAの因子スコアは、1.113であり、ユーザBの因子スコアは、0.380であり、ユーザCの因子スコアは、0.397であることを表している。これらの因子スコアは、例えば、アンケートの調査項目に対して用意された選択肢のうち、ユーザにより選択された回答選択肢に応じたスコアに基づいて計算されてよい。
FIG. 6 is a diagram illustrating an example of the
また、図示の例のように、分析情報136は、アンケートに回答したユーザごとにどういったカテゴリーに分類したのかを表す分類結果を示してよい。ユーザの分類先とするカテゴリーは、例えば、上述した因子スコアなどの複数の分類指標を総合的に考慮することで導出されてよい。例えば、因子FAC1〜FAC4までの全ての因子スコアが正値であるユーザの場合、そのユーザのカテゴリーは1型とし、いずれか1つの因子スコアが負値であるユーザの場合、そのユーザのカテゴリーは2型とし、いずれか2つの因子スコアが負値であるユーザの場合、そのユーザのカテゴリーは3型とし、いずれか3つ以上の因子スコアが負値であるユーザの場合、そのユーザのカテゴリーは4型とする、といったような分類をしてよい。
Further, as in the example shown in the figure, the
学習処理部114は、DNN構成情報138に基づいて学習対象とするディープニューラルネットワークDNNを生成(構築)し、このディープニューラルネットワークDNNに対して、上述した行動履歴情報132、アンケート情報134、および分析情報136を用いて事前学習(Pre-training)を行う。
The
図7は、DNN構成情報138の一例を示す図である。図示の例のように、DNN構成情報138は、各階層に対して、ニューラルネットワークの数を表すユニット数が対応付けられた情報である。一般的に、ディープニューラルネットワークDNNは、入力層、隠れ層(中間層)、出力層の3つの階層により構成される。入力層には、ディープニューラルネットワークDNNに学習させたいデータが入力される。出力層からは、ディープニューラルネットワークDNNによって学習された結果が出力される。隠れ層は、学習の核となる処理を行う。例えば、隠れ層は、活性化関数(伝達関数)と呼ばれる関数により表現され、入力に応じた出力を返す。例えば、活性化関数は、正規化線形関数(ReLU関数)やシグモイド関数、ステップ関数などであるがこれに限られず、任意の関数が用いられてよい。入力層のニューラルネットワークは、「入力器」の一例であり、出力層のニューラルネットワークは、「出力器」の一例である。
FIG. 7 is a diagram illustrating an example of the
DNN構成情報138は、これらの各階層のユニット数を定めている。図示の例では、入力層のユニット数は1個であり、出力層のユニット数はs個であることを表している。また、隠れ層は、少なくとも2層以上であり、図示の例では、n層(n≧2)であることを表している。また、隠れ層の各層のユニット数はr個であることを表している。なお、隠れ層の各層のユニット数は、一律r個である必要はなく、各層で異なる個数であってもよい。上述した隠れ層の階層数と各層のユニット数はハイパーパラメータであり、任意に変更されてよい。例えば、アンケート結果の分析により5つのカテゴリーに分類することが決められた場合、出力層のユニット数は5つに設定されてよい。また、学習の精度を向上させるために、隠れ層のユニット数を増やしてもよい。
The
学習処理部114は、このようなDNN構成情報138を参照することで、事前学習の際に構成が予め決められたディープニューラルネットワークDNNを生成する。
The
図8は、DNN構成情報138に基づき生成されるディープニューラルネットワークDNNを模式的に示す図である。図示の例のように、ディープニューラルネットワークDNNは、入力層の一以上のユニット(ニューラルネットワーク)から、隠れ層のn層のうち、最も浅い層の複数のユニットのそれぞれに対して、神経伝達網を摸したエッジが接続される。「最も浅い層」とは、隠れ層に含まれる複数の層の中で、最も入力層に近い層である。本実施形態では、入力層側に近いことを「浅い」と表現し、出力層側に近いことを「深い」と表現する。上述した例の場合、最も浅い層は第1層である。第1層に含まれる各ユニットからは、隠れ層のn層のうち、第1層の次に最も浅い層(以下、第2層と称する)の複数のユニットのそれぞれに対して、エッジが接続される。第2層に含まれる各ユニットからは、隠れ層のn層のうち、第2層の次に最も浅い層(以下、第3層と称する)の複数のユニットのそれぞれに対して、エッジが接続される。第3層以降の層のユニットについても同様に、より深い層のユニットに対してエッジが接続される。最も深い第n層の各ユニットからは、出力層の一以上のユニットにエッジが接続される。このように、ディープニューラルネットワークDNNは、例えば、制約付きボルツマンマシン(RBM)のように、各層のユニット同士がエッジで接続される状態確率モデルとして表現される。なお、ディープニューラルネットワークDNNは、制約がないボルツマンマシンのように、更に、同じ層に属すユニット同士がエッジで接続される状態確率モデルとして表現されてもよい。
FIG. 8 is a diagram schematically showing the deep neural network DNN generated based on the
学習処理部114は、事前学習として、生成したディープニューラルネットワークDNNにおいて、隠れ層の各層を段階的に学習することで、ディープニューラルネットワークDNNの初期設定を行う。
As pre-learning, the
[事前学習]
以下、事前学習の処理をフローチャートに即して説明する。図9は、学習処理部114により実行される処理の一例を示すフローチャートである。
[Pre-learning]
Hereinafter, the prior learning process will be described with reference to a flowchart. FIG. 9 is a flowchart illustrating an example of processing executed by the
まず、学習処理部114は、隠れ層のn層のうち、第i層を処理対象の階層に決定する(S100)。iは、処理の際に一時的に計算されるテンポラリパラメータであり、1からnまでの範囲における自然数が与えられる。
First, the
例えば、学習処理部114は、第1層(i=1)を処理対象の階層に決定する。なお、学習処理部114は、第1層以外の第2層や第3層などを処理対象の階層に決定してもよい。以下の説明では、まず始めに第1層を処理対象の階層に決定するものとする。
For example, the
次に、学習処理部114は、生成したディープニューラルネットワークDNNから、入力層および出力層と、前回までの処理において処理対象の階層として決定した全ての階層と、今回の処理において処理対象の階層として決定した第i層とを抽出する(S102)。初回の処理の場合、例えば、学習処理部114は、ディープニューラルネットワークDNNから、入力層および出力層と、第1層とを抽出する。
Next, the
次に、学習処理部114は、抽出した階層からなるニューラルネットワークにおいて、入力層に、アンケートに回答したユーザの行動履歴を示す行動履歴情報132を入力する(S104)。この際、学習処理部114は、ユーザの行動履歴を、プロセッサが処理可能な情報に変換することで、入力層に対する入力データvとしてよい。
Next, the
例えば、学習処理部114は、行動履歴情報132を参照して、ウェブページのビュー数や所定の検索クエリの入力回数などを導出し、これを入力データvとする。また、学習処理部114は、購入商品の商品コードや閲覧サイトのURLなどの一つ一つの行動履歴に関連する文字列(アルファベットや数字、記号などを含んでよい)をベクトル化し、このベクトルを入力層に対する入力データvとしてもよい。学習処理部114は、抽出した隠れ層の各ユニットの活性化関数に基づいて、出力層から出力されることになる出力データhを導出する。出力データhは、例えば、以下の数式(1)によって表すことができる。
For example, the
h=σ(WTv+b) …(1) h = σ (W T v + b) (1)
σは、各層のそれぞれのユニットの活性化関数を表し、Wは、ある層のユニットから、より深い層のユニットにデータが出力される際に、出力データに対して付与される重みを表し、bは、各層の固有のバイアス成分を表している。 σ represents an activation function of each unit of each layer, W represents a weight given to output data when data is output from a unit of a certain layer to a unit of a deeper layer, b represents a unique bias component of each layer.
次に、学習処理部114は、ディープニューラルネットワークDNNにおいて処理対象として選択した階層の深さに応じて、アンケート情報134および分析情報136から、教師データtとするデータを抽出する(S106)。教師データtとは、抽出した階層からなるニューラルネットワーク(上述した例では、入力層、第1層、および出力層の3層からなるニューラルネットワーク)において、出力層から出力される出力データの規範となるデータである。
Next, the
例えば、学習処理部114は、処理対象とする階層がより深い層であるほど、アンケート結果の分析をより進めたときに得られる指標値を教師データtとして抽出する。例えば、アンケート結果に対して多変量解析が行われた状態は、多変量解析が行われていない状態と比べて、アンケート結果の分析がより進められた状態と見做せる。また、多変量解析の結果を基にユーザを分類するカテゴリーが決定された状態は、多変量解析が行われた直後の状態と比べて、更にアンケート結果の分析が進められた状態と見做せる。
For example, the
このような前提のもとで、例えば、学習処理部114は、第1層を処理対象とする場合、分析が行われていない生データであるアンケート情報134を参照して、アンケートの回答のために選択された選択肢のスコアを、教師データtとして抽出する。また、学習処理部114は、例えば、第2層を処理対象とする場合、因子分析が行われたデータである分析情報136を参照して、因子スコアを教師データtとして抽出する。また、学習処理部114は、例えば、第3層を処理対象とする場合、分析情報136を参照して、因子スコアを基に決定されたカテゴリーを示す数値を教師データtとして抽出する。すなわち、学習処理部114は、第1層を処理対象とするときには、上述したアンケート結果の分析時に考慮される事項(1)のハイパーパラメータを教師データtとし、第2層を処理対象とするときには、アンケート結果の分析時に考慮される事項(2)のハイパーパラメータを教師データtとし、第3層を処理対象とするときには、アンケート結果の分析時に考慮される事項(3)のハイパーパラメータを教師データtとする。このように、学習処理部114は、互いに種類の異なるデータ(指標値)を各階層の教師データtとする。この結果、分析を進めることにより得られる知見を、隠れ層の各層のニューラルネットワークに段階的に学習させることができる。
Under such a premise, for example, when the first processing layer is the processing target, the
次に、学習処理部114は、抽出した階層からなるニューラルネットワークにおいて、出力層から出力される出力データhと、処理対象とする階層の深さに応じて抽出した教師データtとの誤差を評価関数Iとして導出する(S108)。例えば、評価関数Iは、(1/2)×(h−t)2として表すことができる。なお、評価関数Iは、出力層の全ユニットのそれぞれから出力されるデータと、教師データtとの誤差(二乗誤差)の総和であってよい。
Next, the
次に、学習処理部114は、誤差逆伝播法を用いて、評価関数Iを最小化するように、各層の重みWとバイアスbを決定する(S110)。例えば、学習処理部114は、評価関数Iの重みWに関する偏微分を計算することで、評価関数Iの勾配∂I/∂Wを導出し、勾配∂I/∂Wに基づいて重みWおよびバイアスbを決定する。
Next, the
次に、学習処理部114は、各層の重みWとバイアスbを、処理対象の階層に対応付け、この対応付けた情報を、層毎パラメータ情報140として記憶部130に記憶する(S112)。
Next, the
図10は、層毎パラメータ情報140の一例を示す図である。図示の例のように、層毎パラメータ情報140は、処理対象の階層に、決定された重みWとバイアスbとが対応付けられた情報である。
FIG. 10 is a diagram illustrating an example of the
次に、学習処理部114は、生成したディープニューラルネットワークDNNの1〜nまでの全ての階層を処理対象の階層として決定したか否かを判定する(S114)。
Next, the
全ての階層を処理対象の階層として決定していない場合、学習処理部114は、テンポラリパラメータiに1を加算して(S116)、処理を上述したS100に移す。これにより、前回までに決定されたいずれの階層とも異なる階層が処理対象の階層に決定される。上述した例では、初回処理時に第1層が処理対象の階層に決定されるため、二回目の処理時には、例えば、第2層が処理対象の階層に決定される。
If all hierarchies have not been determined as processing target hierarchies, the
一方、全ての階層を処理対象の階層として決定した場合、学習処理部114は、本フローチャートの処理を終了する。
On the other hand, when all the hierarchies are determined as processing target hierarchies, the
なお、上述したフローチャートの処理では、学習処理部114が、S100の処理において、隠れ層のn層のうち、ある一つの第i層を処理対象の階層に決定したがこれに限られない。例えば、学習処理部114は、隠れ層のn層のうち、複数層(例えば第1層と第2層など)をまとめて処理対象の階層に決定してもよい。この場合、学習処理部114は、処理対象の階層として決定した複数層のパラメータをまとめて学習してよい。
In the process of the flowchart described above, the
図11は、図9に示すフローチャートのループ処理の内容を模式的に示す図である。図10の例では、簡略的に各層のユニットが一つであるものとし、各層のパラメータとして重みWのみを表現している。例えば、1回目の処理では、入力層と、隠れ層の第1層と、出力層とが抽出される。例えば、入力層に入力される入力データvは、ユーザの行動履歴を数値化したデータである。この場合、第1層の重みW1を決定するために、第1層の深さの程度に応じた第1教師データt1が抽出される。例えば、第1教師データt1には、上述したように、アンケートの回答のために選択された選択肢のスコアが採用されてよい。このとき、アンケート結果は、入力データvとして入力された行動履歴の動作主体であったユーザによる回答結果であるものとする。例えば、ユーザAの行動履歴を入力層に入力する場合、第1教師データt1は、ユーザAのアンケート結果が利用される。 FIG. 11 is a diagram schematically showing the contents of the loop processing of the flowchart shown in FIG. In the example of FIG. 10, it is assumed that there is one unit for each layer, and only the weight W is expressed as a parameter for each layer. For example, in the first process, the input layer, the first layer of the hidden layer, and the output layer are extracted. For example, the input data v input to the input layer is data obtained by digitizing a user's action history. In this case, in order to determine the weight W 1 of the first layer, the first teacher data t 1 corresponding to the depth of the first layer is extracted. For example, the first training data t 1, as described above, the score of the selected alternatives may be employed for the survey responses. At this time, it is assumed that the questionnaire result is an answer result by the user who was the operation subject of the action history input as the input data v. For example, when applied to the input layer to the action history of the user A, the first training data t 1, the survey results of the user A is utilized.
2回目の処理では、例えば、入力層と、隠れ層の第1層および第2層と、出力層とが抽出される。例えば、入力層に入力される入力データvは、1回目の処理で入力層に入力されたデータと同様に、ユーザの行動履歴を数値化したデータが採用される。例えば、1回目の処理で、あるユーザAの行動履歴を数値化したデータが入力層に入力された場合、2回目の処理で入力層に入力される入力データvは、ユーザAの行動履歴を数値化したデータとなる。2回目の処理では、学習処理部114は、第2教師データt2と、出力層から出力される出力データhとの誤差を小さくするように、1回目の処理において決定された第1層のパラメータを維持しつつ新たに追加された第2層の重みW2を決定する。第2教師データt2は、第2層の階層の深さの程度に応じたデータであり、例えば、上述したように、因子分析により得られた因子スコアが用いられてよい。例えば、学習処理部114は、2回目の処理において、第1層の重みW1#を1回目の処理時に決定された重みW1とすることで、第1層のパラメータを維持する。
In the second process, for example, the input layer, the first and second layers of the hidden layer, and the output layer are extracted. For example, as the input data v input to the input layer, data obtained by quantifying the user's action history is employed, similarly to the data input to the input layer in the first process. For example, in the first process, when data that digitizes the action history of a user A is input to the input layer, the input data v input to the input layer in the second process is the action history of the user A. It becomes numerical data. In the second process, the
3回目の処理では、例えば、入力層と、隠れ層の第1〜3層と、出力層とが抽出される。例えば、入力層に入力される入力データvは、1回目および2回目の処理で入力層に入力されたデータが採用される。3回目の処理では、学習処理部114は、第3教師データt3と、出力層から出力される出力データhとの誤差を小さくするように、1回目の処理において決定された第1層のパラメータと、2回目の処理において決定された第2層のパラメータとを維持しつつ新たに追加された第3層の重みW3を決定する。第3教師データt3は、第3層の階層の深さの程度に応じたデータであり、例えば、上述したように、因子スコアを基に決定されたカテゴリーを示す数値が用いられてよい。例えば、学習処理部114は、3回目の処理において、第1層の重みW1#を1回目の処理時に決定された重みW1とし、第2層の重みW2#を2回目の処理時に決定された重みW2とすることで、第1層および第2層のパラメータを維持する。
In the third process, for example, the input layer, the first to third layers of the hidden layer, and the output layer are extracted. For example, as the input data v input to the input layer, data input to the input layer in the first and second processing is adopted. In the third process, the
このように、処理の回数を重ねるごとに隠れ層を追加すると共に、追加する隠れ層の深さに応じたデータを教師データとすることにより、ディープニューラルネットワークDNNに隠れ層の一つ一つの層を精度良く学習させることができる。また、前回の処理で決定した各層のパラメータを、次回の処理において維持するため、内部共変量シフトの発生を抑制することができる。これによって、内部共変量シフトが生じることで学習時間がより長くなってしまうのを抑制することができる。なお、内部共変量シフトの発生を許容する場合、学習処理部114は、前回の処理で決定したパラメータを今回の処理の誤差逆伝搬により再度決定してよい。この場合、学習処理部114は、層毎パラメータ情報140において、各層のパラメータを更新してよい。
Thus, every time the number of processes is repeated, a hidden layer is added, and data corresponding to the depth of the added hidden layer is used as teacher data, so that each layer of the hidden layer is added to the deep neural network DNN. Can be learned with high accuracy. In addition, since the parameters of each layer determined in the previous process are maintained in the next process, the occurrence of an internal covariate shift can be suppressed. This can prevent the learning time from becoming longer due to the occurrence of the internal covariate shift. Note that when the occurrence of the internal covariate shift is allowed, the
分類処理部116は、DNN構成情報138と、層毎パラメータ情報140とを参照することで、事前学習により各階層の重みWとバイアスbの初期値が決められたディープニューラルネットワークDNNを生成(再構築)して、未学習のユーザの行動履歴を基に、その行動履歴に対応するユーザを所定のカテゴリーに分類する。「未学習」とは、例えば、事前学習の段階で学習に利用されていないことである。
By referring to the
図12は、分類処理部116により実行される処理の一例を示すフローチャートである。本フローチャートの処理は、例えば、所定の周期で繰り返し行われる。
FIG. 12 is a flowchart illustrating an example of processing executed by the
まず、分類処理部116は、取得部112により新たな行動履歴情報132が取得されたか否かを判定し(S200)、新たな行動履歴情報132が取得された場合、DNN構成情報138と、層毎パラメータ情報140とに基づいて、階層ごとのパラメータ(重みWおよびバイアスb)の初期値が決定されたディープニューラルネットワークDNNを生成する(S202)。
First, the
次に、分類処理部116は、生成したディープニューラルネットワークDNNにおいて、入力層に、アンケートに回答したユーザの行動履歴を示す行動履歴情報132を数値化して入力する(S204)。
Next, the
次に、分類処理部116は、ディープニューラルネットワークDNNの出力層から出力される出力データhを、ディープニューラルネットワークDNNによる学習結果として出力する(S206)。
Next, the
例えば、分類処理部116は、ディープニューラルネットワークDNNによる学習結果を、通信部106を用いてサービス提供装置20や広告配信サーバ装置40に送信する。これによって、例えば、サービス提供装置20は、ディープニューラルネットワークDNNにより分類されたユーザのカテゴリーに応じたセール情報などを、ユーザが利用する端末装置10に送信することができる。また、広告配信サーバ装置40は、例えば、ディープニューラルネットワークDNNにより分類されたユーザのカテゴリーに応じた広告を、ユーザが利用する端末装置10に送信することができる。
For example, the
図13は、本実施形態におけるディープニューラルネットワークDNNの学習手法と、比較例として例示する手法とのそれぞれの学習精度を示す図である。比較例の手法は、例えば、隠れ層の各層の出力データhを、その層の入力データvに近づくように、各層のパラメータを学習させる手法である。すなわち、比較例の手法は、第i層から出力される出力データhと、第(i−1)層の出力データh(=第i層への入力データv)とが近づくように、隠れ層の第i層のパラメータを学習させる手法である。図中の最も上段のレコードと中段のレコードは、比較例の手法による学習精度を表し、最も下段のレコードは、本実施形態の手法による学習精度を表している。 FIG. 13 is a diagram illustrating the learning accuracy of the deep neural network DNN learning method according to the present embodiment and the method exemplified as a comparative example. The method of the comparative example is, for example, a method of learning the parameters of each layer so that the output data h of each layer of the hidden layer approaches the input data v of that layer. That is, in the method of the comparative example, the output data h output from the i-th layer and the output data h of the (i−1) -th layer (= input data v to the i-th layer) are close to each other. This is a method for learning the parameters of the i-th layer. In the figure, the uppermost record and the middle record represent learning accuracy by the method of the comparative example, and the lowermost record represents learning accuracy by the method of the present embodiment.
最上段のレコードに示す比較例の手法は、入力層のユニットが1個であり、第1層のユニットが1000個であり、第2層のユニットが1000個であり、出力層のユニットが5個である場合のディープニューラルネットワークDNNを用いたときの学習精度を表している。また、中段のレコードに示す比較例の手法は、入力層のユニットが1個であり、第1層のユニットが1000個であり、第2層のユニットが1000個であり、第X層のユニットが所定数であり、出力層のユニットが5個である場合のディープニューラルネットワークDNNを用いたときの学習精度を表している。また、最下段のレコードに示す本実施形態の手法は、入力層のユニットが1個であり、第1層のユニットが1000個であり、第2層のユニットが1000個であり、第Y層のユニット数が上述した第X層のユニット数と同じであり、出力層のユニットが5個である場合のディープニューラルネットワークDNNを用いたときの学習精度を表している。 The method of the comparative example shown in the uppermost record has one input layer unit, 1000 first layer units, 1000 second layer units, and 5 output layer units. The learning accuracy is shown when the deep neural network DNN is used. The method of the comparative example shown in the middle record has one input layer unit, 1000 first layer units, 1000 second layer units, and X layer unit. Is a predetermined number and represents the learning accuracy when the deep neural network DNN is used when the number of units in the output layer is five. In the method of the present embodiment shown in the bottom record, there are one input layer unit, 1000 first layer units, 1000 second layer units, and Y layer. Represents the learning accuracy when the deep neural network DNN is used in the case where the number of units is the same as the number of units in the X-th layer and the number of units in the output layer is five.
図示の例のように、最上段と中段を比較すると隠れ層の数を増やした場合であっても必ずしも学習精度が向上しないことがわかる。一般的に、ディープニューラルネットワークDNNでは過学習が生じやすかったり、より深い層まで学習情報(誤差)が伝わらなかったりといった問題が生じやすい。これらに対処するためには、膨大なデータ(例えば、画像データなら少なくとも数万から数十万もの密なデータ)を入力データvとすると共に、事前学習を行うことなどが知られている。 As in the example shown in the drawing, when the uppermost stage and the middle stage are compared, it can be seen that the learning accuracy is not necessarily improved even when the number of hidden layers is increased. In general, in the deep neural network DNN, problems such as overlearning easily occur and learning information (error) is not transmitted to a deeper layer are likely to occur. In order to deal with these problems, it is known that a large amount of data (for example, at least tens of thousands to several hundreds of thousands of dense data in the case of image data) is used as input data v and prior learning is performed.
しかしながら、インターネット上での行動履歴のように、情報としてスパースなデータを入力データvとして用いる場合、適切な学習結果を返すモデルが生成されない傾向にある。また、入力データvの元となる学習用のデータがスパースであると、誤差逆伝搬法などの精度も低下しやすい。このように、比較例の手法の場合、事前学習に用いる入力データvに応じて学習精度が左右される傾向にある。 However, when sparse data as information is used as input data v, such as an action history on the Internet, a model that returns an appropriate learning result tends not to be generated. In addition, if the learning data that is the source of the input data v is sparse, the accuracy of the error back propagation method or the like is likely to decrease. Thus, in the case of the method of the comparative example, the learning accuracy tends to depend on the input data v used for the prior learning.
これに対して、本実施形態の手法は、事前学習の段階において、ディープニューラルネットワークDNNに、出力データhと入力データvとが近づくように学習させるのではなく(入力データvを教師データtとするのではなく)、別途アンケート結果より求めた指標値を、各層の深さの程度に応じて変更しながら教師データtとすることにより、スパースなデータを入力データvとして用いた場合であっても、学習精度を向上させることができる。 On the other hand, the method of this embodiment does not cause the deep neural network DNN to learn so that the output data h and the input data v are close to each other in the preliminary learning stage (the input data v is changed to the teacher data t). In this case, the sparse data is used as the input data v by changing the index value obtained separately from the questionnaire results to the teacher data t while changing it according to the depth of each layer. Also, the learning accuracy can be improved.
以上説明した実施形態によれば、入力データvを入力したときに、独立に構成しうる分類器が多層に構成された分類システム(例えばディープニューラルネットワークDNN)に含まれる第1分類器(例えば隠れ層の第1層のニューラルネットワーク)から出力される出力データhが、第1教師データtに近づくように、分類システムを学習させた後に、同じ入力データvを入力したときに、第1分類器の階層よりも深い階層の第2分類器(例えば隠れ層の第2層のニューラルネットワーク)から出力される出力データhが、第2教師データに近づくように、第1教師データを用いた学習結果に基づいて分類システムを学習させる学習処理部114と、学習処理部114により学習させられた分類システムに基づいて、未学習のデータを所定のカテゴリーに分類する分類処理部116とを備えることにより、各分類器のパラメータを適切に設定することができる。この結果、学習の精度を向上させることができる。
According to the embodiment described above, when the input data v is input, the first classifier (for example, hidden) included in the classification system (for example, deep neural network DNN) in which the classifiers that can be configured independently are configured in multiple layers. When the same input data v is input after the classification system is trained so that the output data h output from the first layer neural network) approaches the first teacher data t, the first classifier Learning result using the first teacher data so that the output data h output from the second classifier (for example, the neural network of the second layer of the hidden layer) deeper than the second hierarchy data approaches the second teacher data A
また、上述した実施形態によれば、事前学習の段階で、分類器ごとにパラメータを導出しておくので、分類システムの一部の分類器を変更したり追加したりする場合に、変更しない分類器については既に導出したパラメータ(学習済みのパラメータ)を流用することができる。例えば、ディープニューラルネットワークDNNにおいて、分類結果を5パターンから、10パターンに変更する場合、出力層のユニット数だけを変更すればよく、隠れ層についてはそのまま流用することができる。この結果、汎用性の高いディープニューラルネットワークDNNを構築することができる。 In addition, according to the above-described embodiment, parameters are derived for each classifier in the pre-learning stage. Therefore, when some classifiers of the classification system are changed or added, classifications that do not change are performed. As for the container, the parameters already derived (learned parameters) can be used. For example, in the deep neural network DNN, when the classification result is changed from 5 patterns to 10 patterns, only the number of units in the output layer may be changed, and the hidden layer can be used as it is. As a result, a highly versatile deep neural network DNN can be constructed.
<適用例>
以下、上述した実施形態の適用例について説明する。例えば、上述した実施形態における解析装置100は、ある検索クエリの検索結果として提供されるウェブページの要約文を生成するために、ウェブページを構成するテキストデータを入力データvとし、ディープニューラルネットワークDNNに、テキストデータの要約文を出力するように隠れ層の各層のパラメータを学習させる。このとき、解析装置100の学習処理部114は、各層の出力データhの教師データtを、隠れ層の深さに応じてワード数が段階的に少なくなるテキストデータとする。例えば、学習処理部114は、最も浅い(入力層に最も近い)第1層の出力データhに対する教師データt1を、ワード数が第1所定数のテキストデータとする。第1所定数は、入力データvとするテキストデータのワード数よりも少ない数である。また、学習処理部114は、第2層の出力データhに対する教師データt2を、ワード数が第1所定数よりも少ない第2所定数のテキストデータとする。このように、階層が深くなるにつれて教師データtとするテキストデータのワード数を少なくすることで、より精度良くウェブページの要約文を生成することができる。
<Application example>
Hereinafter, application examples of the above-described embodiment will be described. For example, the
また、上述した実施形態における解析装置100は、文字や写真などの画像認識の際に、ある画像を入力データvとし、ディープニューラルネットワークDNNに、適切な認識結果を出力するように隠れ層の各層のパラメータを学習させてもよい。このとき、解析装置100の学習処理部114は、各層の出力データhの教師データtを、正解データとするのではなく、クラウドソーシングなどで得られた不特定多数のユーザによる認識結果とする。例えば、不特定多数のユーザに対して、予め正解が決められた所定の画像(例えば「猫の画像」)を見せて、その画像の認識結果を、教師データtとする。このとき、あるユーザAは、視認した画像を「猫」であると認識したり、あるユーザBは、視認した画像を「犬」であると認識したりする。このように、同じ画像を不特定多数のユーザのそれぞれに見せた場合、ユーザによっては正解となる認識とは異なる認識をする場合がある。従って、教師データtは、正誤に関して揺れのあるデータとなり、正しい認識結果と誤った認識結果の双方を含むデータとなる傾向がある。例えば、学習処理部114は、第1層の出力データhに対する教師データt1を、クラウドソーシングなどで得られた不特定多数のユーザによる認識結果のうち、最も正誤の揺れの大きい認識結果(例えば、正:誤=0.5:0.5)とし、第2層の出力データhに対する教師データt2を、教師データt1よりも正誤の揺れの小さい認識結果(例えば、正:誤=0.6:0.4)とし、第3層の出力データhに対する教師データt3を、教師データt2よりも正誤の揺れの小さい認識結果(例えば、正:誤=0.7:0.3)とする。このように、階層が深くなるにつれて正しい認識結果がより多いデータを教師データtとし、最も深いn層の出力データhに対する教師データtnを、正解データ(正:誤=1:0))とすることで、画像認識の精度を向上させることができる。
Further, the
<ハードウェア構成>
上述した実施形態の解析システム1に含まれる複数の装置のうち、少なくとも解析装置100は、例えば、図14に示すようなハードウェア構成により実現される。図14は、実施形態の解析装置100のハードウェア構成の一例を示す図である。
<Hardware configuration>
Among the plurality of devices included in the
解析装置100は、NIC100−1、CPU100−2、GPU(Graphics Processing Unit)100−3、RAM100−4、ROM100−5、フラッシュメモリやHDDなどの二次記憶装置100−6、およびドライブ装置100−7が、内部バスあるいは専用通信線によって相互に接続された構成となっている。ドライブ装置100−7には、光ディスクなどの可搬型記憶媒体が装着される。二次記憶装置100−6、またはドライブ装置100−7に装着された可搬型記憶媒体に格納されたプログラムがDMAコントローラ(不図示)などによってRAM100−4に展開され、CPU100−2やGPU100−3によって実行されることで、制御部110が実現される。制御部110が参照するプログラムは、ネットワークNWを介して他の装置からダウンロードされてもよい。
The
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。 As mentioned above, although the form for implementing this invention was demonstrated using embodiment, this invention is not limited to such embodiment at all, In the range which does not deviate from the summary of this invention, various deformation | transformation and substitution Can be added.
1…解析システム、10…端末装置、20…サービス提供装置、30…ログ取得装置、40…広告配信サーバ装置、100…解析装置、102…受付部、104…表示部、106…通信部、110…制御部、112…取得部、114…学習処理部、116…分類処理部、130…記憶部、132…行動履歴情報、134…アンケート情報、136…分析情報、138…DNN構成情報、140…層毎パラメータ情報
DESCRIPTION OF
Claims (9)
前記学習処理部により学習させられた分類システムに基づいて、未学習のデータを所定のカテゴリーに分類する分類処理部と、
を備える解析装置。 When the first data is input, the second data output from the first classifier included in the classification system in which the classifiers that can be configured independently are configured to be close to the first teacher data After learning the classification system, when the first data is input, the third data output from the second classifier having a deeper hierarchy than the first classifier approaches the second teacher data. A learning processing unit for learning the classification system based on a learning result using the first teacher data;
A classification processing unit that classifies unlearned data into a predetermined category based on the classification system learned by the learning processing unit;
An analysis apparatus comprising:
前記第2教師データは、前記第1データおよび前記第3データと異なる種類のデータである、
請求項1に記載の解析装置。 The first teacher data is a different type of data from the first data and the second data,
The second teacher data is a different type of data from the first data and the third data.
The analysis device according to claim 1.
前記第1教師データは、前記ユーザの回答に基づくデータであり、
前記第2教師データは、前記ユーザの回答を分析することで得られるデータである、
請求項2に記載の解析装置。 The first data is data indicating a user's behavior history,
The first teacher data is data based on the user's answer,
The second teacher data is data obtained by analyzing the answer of the user.
The analysis device according to claim 2.
前記第1教師データは、前記第1データのワード数よりも少ないワード数のテキストデータであり、
前記第2教師データは、前記第1教師データのワード数よりも少ないワード数のテキストデータである、
請求項2に記載の解析装置。 The first data is text data,
The first teacher data is text data having a number of words smaller than the number of words of the first data,
The second teacher data is text data having a number of words smaller than the number of words of the first teacher data.
The analysis device according to claim 2.
前記第1教師データは、不特定多数のユーザのそれぞれによる前記画像データの認識結果を示すデータであり、
前記第2教師データは、不特定多数のユーザのそれぞれによる前記画像データの認識結果を示すデータであって、前記第1教師データよりも正しい認識結果が多いデータである、
請求項2に記載の解析装置。 The first data is image data;
The first teacher data is data indicating a recognition result of the image data by each of an unspecified number of users,
The second teacher data is data indicating a recognition result of the image data by each of an unspecified number of users, and is data having more correct recognition results than the first teacher data.
The analysis device according to claim 2.
前記分類システムに含まれる複数の分類器のうちの入力器および出力器と、前記第1分類器とを用いて、前記第1教師データに対する、前記出力器から出力される第2データの誤差を小さくするように、前記第1分類器のパラメータを決定し、
前記入力器および前記出力器と、前記第1分類器および前記第2分類器とを用いて、前記第2教師データに対する、前記出力器から出力される第3データの誤差を小さくするように、前記決定した前記第1分類器のパラメータを維持しつつ前記第2分類器のパラメータを決定する、
請求項1から5のうちいずれか1項に記載の解析装置。 The learning processing unit
An error of the second data output from the output device with respect to the first teacher data is obtained by using an input device and an output device of the plurality of classifiers included in the classification system and the first classifier. Determining the parameters of the first classifier to be small;
Using the input device and the output device, and the first classifier and the second classifier, so as to reduce the error of the third data output from the output device with respect to the second teacher data, Determining the parameters of the second classifier while maintaining the determined parameters of the first classifier;
The analysis device according to any one of claims 1 to 5.
前記学習処理部により学習させられた分類システムに基づいて、未学習のデータを所定のカテゴリーに分類する分類処理部と、
を備える解析装置。 When the first data is input, the second data output from the classification system in which the classifiers that can be configured independently are configured in multiple layers approaches the first data and the third data different from the second data. A learning processing unit for learning the classification system;
A classification processing unit that classifies unlearned data into a predetermined category based on the classification system learned by the learning processing unit;
An analysis apparatus comprising:
第1データを入力したときに、独立に構成しうる分類器が多層に構成された分類システムに含まれる第1分類器から出力される第2データが、第1教師データに近づくように、前記分類システムを学習させた後、前記第1データを入力したときに、前記第1分類器よりも階層が深い第2分類器から出力される第3データが、第2教師データに近づくように、前記第1教師データを用いた学習結果に基づいて前記分類システムを学習させ、
前記学習させた分類システムに基づいて、未学習のデータを所定のカテゴリーに分類する、
解析方法。 Computer
When the first data is input, the second data output from the first classifier included in the classification system in which the classifiers that can be configured independently are configured to be close to the first teacher data After learning the classification system, when the first data is input, the third data output from the second classifier having a deeper hierarchy than the first classifier approaches the second teacher data. Learning the classification system based on a learning result using the first teacher data;
Classifying unlearned data into a predetermined category based on the learned classification system;
analysis method.
第1データを入力したときに、独立に構成しうる分類器が多層に構成された分類システムに含まれる第1分類器から出力される第2データが、第1教師データに近づくように、前記分類システムを学習させた後、前記第1データを入力したときに、前記第1分類器よりも階層が深い第2分類器から出力される第3データが、第2教師データに近づくように、前記第1教師データを用いた学習結果に基づいて前記分類システムを学習させる処理と、
前記学習させた分類システムに基づいて、未学習のデータを所定のカテゴリーに分類する処理と、
を実行させるプログラム。 On the computer,
When the first data is input, the second data output from the first classifier included in the classification system in which the classifiers that can be configured independently are configured to be close to the first teacher data After learning the classification system, when the first data is input, the third data output from the second classifier having a deeper hierarchy than the first classifier approaches the second teacher data. A process of learning the classification system based on a learning result using the first teacher data;
A process of classifying unlearned data into a predetermined category based on the learned classification system;
A program that executes
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017022775A JP6719399B2 (en) | 2017-02-10 | 2017-02-10 | Analysis device, analysis method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017022775A JP6719399B2 (en) | 2017-02-10 | 2017-02-10 | Analysis device, analysis method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018128942A true JP2018128942A (en) | 2018-08-16 |
JP6719399B2 JP6719399B2 (en) | 2020-07-08 |
Family
ID=63174176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017022775A Active JP6719399B2 (en) | 2017-02-10 | 2017-02-10 | Analysis device, analysis method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6719399B2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018200524A (en) * | 2017-05-26 | 2018-12-20 | 日本電信電話株式会社 | Classification device, classification method, and classification program |
JP2020061140A (en) * | 2018-10-05 | 2020-04-16 | 株式会社ストラドビジョン | Learning method of cnn for monitoring blind spots, testing method, learning device, and testing device |
JP2020091813A (en) * | 2018-12-07 | 2020-06-11 | 公立大学法人会津大学 | Learning method for neural network, computer program and computer device |
JP2020102107A (en) * | 2018-12-25 | 2020-07-02 | 富士通株式会社 | Learning device, learning method, and learning program |
JP2022508163A (en) * | 2019-04-10 | 2022-01-19 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | User tag generation method and its devices, computer programs and computer equipment |
WO2022145232A1 (en) * | 2021-01-02 | 2022-07-07 | 天海 金 | Information processing device, information processing method, and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000298662A (en) * | 1999-04-15 | 2000-10-24 | Sharp Corp | Automatic information detecting device |
JP2016004551A (en) * | 2014-06-19 | 2016-01-12 | ヤフー株式会社 | Specification device, specification method, and specification program |
JP2016031746A (en) * | 2014-07-30 | 2016-03-07 | キヤノン株式会社 | Information processing apparatus and information processing method |
US20170039471A1 (en) * | 2015-08-07 | 2017-02-09 | Toyota Jidosha Kabushiki Kaisha | Neural network learning device |
-
2017
- 2017-02-10 JP JP2017022775A patent/JP6719399B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000298662A (en) * | 1999-04-15 | 2000-10-24 | Sharp Corp | Automatic information detecting device |
JP2016004551A (en) * | 2014-06-19 | 2016-01-12 | ヤフー株式会社 | Specification device, specification method, and specification program |
JP2016031746A (en) * | 2014-07-30 | 2016-03-07 | キヤノン株式会社 | Information processing apparatus and information processing method |
US20170039471A1 (en) * | 2015-08-07 | 2017-02-09 | Toyota Jidosha Kabushiki Kaisha | Neural network learning device |
JP2017037392A (en) * | 2015-08-07 | 2017-02-16 | トヨタ自動車株式会社 | Neural network learning device |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018200524A (en) * | 2017-05-26 | 2018-12-20 | 日本電信電話株式会社 | Classification device, classification method, and classification program |
JP2020061140A (en) * | 2018-10-05 | 2020-04-16 | 株式会社ストラドビジョン | Learning method of cnn for monitoring blind spots, testing method, learning device, and testing device |
JP2020091813A (en) * | 2018-12-07 | 2020-06-11 | 公立大学法人会津大学 | Learning method for neural network, computer program and computer device |
JP7230324B2 (en) | 2018-12-07 | 2023-03-01 | 公立大学法人会津大学 | Neural network learning method, computer program and computer device |
JP2020102107A (en) * | 2018-12-25 | 2020-07-02 | 富士通株式会社 | Learning device, learning method, and learning program |
JP7206898B2 (en) | 2018-12-25 | 2023-01-18 | 富士通株式会社 | LEARNING DEVICE, LEARNING METHOD AND LEARNING PROGRAM |
JP2022508163A (en) * | 2019-04-10 | 2022-01-19 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | User tag generation method and its devices, computer programs and computer equipment |
JP7104244B2 (en) | 2019-04-10 | 2022-07-20 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | User tag generation method and its devices, computer programs and computer equipment |
WO2022145232A1 (en) * | 2021-01-02 | 2022-07-07 | 天海 金 | Information processing device, information processing method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP6719399B2 (en) | 2020-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240078386A1 (en) | Methods and systems for language-agnostic machine learning in natural language processing using feature extraction | |
JP6719399B2 (en) | Analysis device, analysis method, and program | |
US10198635B2 (en) | Systems and methods for associating an image with a business venue by using visually-relevant and business-aware semantics | |
US20190147369A1 (en) | Rule Determination for Black-Box Machine-Learning Models | |
JP7160980B2 (en) | INFORMATION PROVIDING DEVICE, INFORMATION PROVIDING METHOD AND PROGRAM | |
US20210406266A1 (en) | Computerized information extraction from tables | |
JP6415619B2 (en) | Analysis device, analysis method, and program | |
US20190258721A1 (en) | Standardized entity representation learning for smart suggestions | |
US11756059B2 (en) | Discovery of new business openings using web content analysis | |
CN105279146A (en) | Context-aware approach to detection of short irrelevant texts | |
US20220230089A1 (en) | Classifier assistance using domain-trained embedding | |
US11907969B2 (en) | Predicting outcomes via marketing asset analytics | |
US11886964B2 (en) | Provisioning interactive content based on predicted user-engagement levels | |
US20230195809A1 (en) | Joint personalized search and recommendation with hypergraph convolutional networks | |
JP2019125145A (en) | Device, method, and program for processing information | |
US20210350202A1 (en) | Methods and systems of automatic creation of user personas | |
US10762438B1 (en) | Extracting questions and answers | |
CN113420018A (en) | User behavior data analysis method, device, equipment and storage medium | |
US10346856B1 (en) | Personality aggregation and web browsing | |
CN110737811A (en) | Application classification method and device and related equipment | |
Foody | Rating crowdsourced annotations: evaluating contributions of variable quality and completeness | |
US20130332440A1 (en) | Refinements in Document Analysis | |
JP2019125317A (en) | Device, method, and program for processing information | |
CN115860283B (en) | Contribution degree prediction method and device based on knowledge worker portrait | |
Kaur et al. | A Review on Sentimental Analysis on Facebook Comments by using Data Mining Technique |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190325 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20191101 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20191108 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200303 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200423 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200519 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200616 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6719399 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |