JP2020154514A - Learning device, learning method, retrieval device, retrieval method and program - Google Patents

Learning device, learning method, retrieval device, retrieval method and program Download PDF

Info

Publication number
JP2020154514A
JP2020154514A JP2019050872A JP2019050872A JP2020154514A JP 2020154514 A JP2020154514 A JP 2020154514A JP 2019050872 A JP2019050872 A JP 2019050872A JP 2019050872 A JP2019050872 A JP 2019050872A JP 2020154514 A JP2020154514 A JP 2020154514A
Authority
JP
Japan
Prior art keywords
feature vector
vector
search
data
error
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.)
Pending
Application number
JP2019050872A
Other languages
Japanese (ja)
Inventor
淳 遠山
Jun Tooyama
淳 遠山
旅人 福寿
Tabito Fukuju
旅人 福寿
亮祐 刈屋
Ryosuke Kariya
亮祐 刈屋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IVIS Inc
NTT Data Group Corp
Original Assignee
IVIS Inc
NTT Data Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by IVIS Inc, NTT Data Corp filed Critical IVIS Inc
Priority to JP2019050872A priority Critical patent/JP2020154514A/en
Publication of JP2020154514A publication Critical patent/JP2020154514A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

To highly accurately retrieve a new retrieval sentence for which no feedback has been obtained.SOLUTION: A management device 100 comprises: a data acquisition unit 11 acquiring data; a feature vector generation unit 12 generating a feature vector; a similar data acquisition unit 13 acquiring similar data similar to the data; an auto encoder 14 consisting of an encoder generating a lower-dimensional intermediate vector from the vector and a decoder returning the intermediate vector to the original-dimensional vector; and an update unit 15 updating a parameter of the auto encoder 14, the update unit 15 performs first update processing for updating the parameter so that first error that is an error between an input and an output of the auto encoder 14 is reduced and second update processing for updating the parameter so that second error that is an error between intermediate vectors generated by inputting each of the vectors of the similar data to the encoder is reduced.SELECTED DRAWING: Figure 1

Description

本発明は、学習装置、学習方法、検索装置、検索方法及びプログラムに関する。 The present invention relates to a learning device, a learning method, a search device, a search method and a program.

文書等の情報から必要な情報を検索する際の検索精度を向上させるための手法として、適合性フィードバックという手法が知られている。この手法は、検索結果をユーザに提示して、良い(ユーザが望む)検索結果なのか、悪い検索結果なのかのフィードバックを得ることにより、最終的な検索結果の精度を向上させていく手法である。例えば、特許文献1には、語間の関連性を考慮した適合性フィードバックを実現して、検索時間の短縮と精度の高い検索を可能にする情報検索方法が開示されている。 A method called conformity feedback is known as a method for improving the search accuracy when searching for necessary information from information such as documents. This method improves the accuracy of the final search result by presenting the search result to the user and getting feedback on whether the search result is good (desired by the user) or bad. is there. For example, Patent Document 1 discloses an information retrieval method that realizes conformity feedback in consideration of the relevance between words, shortens the search time, and enables highly accurate retrieval.

特開2000−242646号公報JP-A-2000-242646

特許文献1に開示されている情報検索方法では、適合性フィードバックを行うことによって、精度の高い検索を可能にしている。しかし、フィードバックが得られていない新規の検索文に対しては、精度の高い検索を行うことができない。 The information retrieval method disclosed in Patent Document 1 enables highly accurate retrieval by providing conformity feedback. However, it is not possible to perform a highly accurate search for a new search sentence for which feedback has not been obtained.

本発明は、上記実情に鑑みてなされたものであり、フィードバックが得られていない新規の検索文に対しても精度の高い検索を行うための学習装置、学習方法、検索装置、検索方法及びプログラムを提供することを目的とする。 The present invention has been made in view of the above circumstances, and is a learning device, a learning method, a search device, a search method, and a program for performing a highly accurate search even for a new search sentence for which feedback has not been obtained. The purpose is to provide.

上記目的を達成するため、本発明の第1の観点に係る学習装置は、
基準データを取得する基準データ取得手段と、
入力されたデータから特徴ベクトルを生成する特徴ベクトル生成手段と、
前記基準データに類似する類似データを取得する類似データ取得手段と、
前記特徴ベクトルを入力すると前記特徴ベクトルの次元数より低い次元数の中間ベクトルを生成するエンコーダと、前記中間ベクトルを入力すると前記特徴ベクトルと同じ次元数の出力ベクトルを生成するデコーダと、からなるオートエンコーダと、
前記オートエンコーダのパラメータを更新する更新手段と、
を備え、
前記更新手段は、
前記基準データを前記特徴ベクトル生成手段に入力して生成される第1の特徴ベクトルと、前記第1の特徴ベクトルを前記オートエンコーダに入力して生成される出力ベクトルと、の間の誤差である第1の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第1の更新処理と、
前記第1の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第1の中間ベクトルと、前記類似データを前記特徴ベクトル生成手段に入力して生成される第2の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第2の中間ベクトルと、の間の誤差である第2の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第2の更新処理と、
を行う。
In order to achieve the above object, the learning device according to the first aspect of the present invention is
Standard data acquisition means for acquiring standard data,
A feature vector generation means that generates a feature vector from the input data,
Similar data acquisition means for acquiring similar data similar to the reference data, and
An auto consisting of an encoder that generates an intermediate vector having a dimension number lower than the dimension number of the feature vector when the feature vector is input, and a decoder that generates an output vector having the same dimension number as the feature vector when the intermediate vector is input. With the encoder
An update means for updating the parameters of the autoencoder, and
With
The update means
It is an error between the first feature vector generated by inputting the reference data into the feature vector generating means and the output vector generated by inputting the first feature vector into the autoencoder. The first update process of updating the parameters of the autoencoder so that the first error becomes small, and
The first intermediate vector generated by inputting the first feature vector into the encoder of the autoencoder and the second feature vector generated by inputting the similar data into the feature vector generating means are referred to as the auto. A second update process for updating the parameters of the autoencoder so that the second error, which is an error between the second intermediate vector generated by inputting to the encoder of the encoder, becomes smaller.
I do.

前記更新手段は、前記第1の更新処理と前記第2の更新処理とを交互に繰り返し行うことにより、前記第1の誤差と前記第2の誤差とがともに小さくなるように前記オートエンコーダのパラメータを更新する、
ようにしてもよい。
The update means alternately repeats the first update process and the second update process, so that both the first error and the second error are reduced by the parameters of the autoencoder. To update,
You may do so.

前記類似データ取得手段は、1つの前記基準データに対して複数の前記類似データを取得し、
前記更新手段は、前記複数の前記類似データを用いて前記第2の更新処理を行う、
ようにしてもよい。
The similar data acquisition means acquires a plurality of the similar data with respect to one reference data, and obtains a plurality of the similar data.
The update means performs the second update process using the plurality of similar data.
You may do so.

前記更新手段は、前記第1の誤差を自乗誤差を求めることにより算出し、前記第2の誤差をコサイン類似度を求めることにより算出する、
ようにしてもよい。
The updating means calculates the first error by obtaining the square error, and calculates the second error by obtaining the cosine similarity.
You may do so.

前記更新手段は、前記第1の誤差と前記第2の誤差との自乗和平均又は調和平均の値が最小になるように、前記第1の更新処理と前記第2の更新処理とを行う、
ようにしてもよい。
The update means performs the first update process and the second update process so that the value of the square sum average or the harmonic mean of the first error and the second error is minimized.
You may do so.

上記目的を達成するため、本発明の第2の観点に係る学習方法は、
特徴ベクトルを入力すると前記特徴ベクトルの次元数より低い次元数の中間ベクトルを生成するエンコーダと、前記中間ベクトルを入力すると前記特徴ベクトルと同じ次元数の出力ベクトルを生成するデコーダと、からなるオートエンコーダの学習方法であって、
基準データから第1の特徴ベクトルを生成する第1の特徴ベクトル生成ステップと、
前記基準データと類似する類似データから第2の特徴ベクトルを生成する第2の特徴ベクトル生成ステップと、
前記オートエンコーダのパラメータを更新する更新ステップと、
を備え、
前記更新ステップでは、
前記第1の特徴ベクトル生成ステップで生成された前記第1の特徴ベクトルと、前記第1の特徴ベクトルを前記オートエンコーダに入力して生成される出力ベクトルと、の間の誤差である第1の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第1の更新処理と、
前記第1の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第1の中間ベクトルと、前記第2の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第2の中間ベクトルと、の間の誤差である第2の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第2の更新処理と、
を行う。
In order to achieve the above object, the learning method according to the second aspect of the present invention is
An autoencoder consisting of an encoder that generates an intermediate vector having a dimension number lower than the dimension number of the feature vector when a feature vector is input, and a decoder that generates an output vector having the same dimension number as the feature vector when the feature vector is input. Is a learning method of
The first feature vector generation step to generate the first feature vector from the reference data, and
A second feature vector generation step of generating a second feature vector from similar data similar to the reference data, and
An update step for updating the parameters of the autoencoder, and
With
In the update step
The first, which is an error between the first feature vector generated in the first feature vector generation step and the output vector generated by inputting the first feature vector into the autoencoder. The first update process of updating the parameters of the autoencoder so that the error becomes small, and
A first intermediate vector generated by inputting the first feature vector into the encoder of the autoencoder and a second intermediate vector generated by inputting the second feature vector into the encoder of the autoencoder. A second update process for updating the parameters of the autoencoder so that the second error, which is an error between the two, is reduced.
I do.

上記目的を達成するため、本発明の第3の観点に係る検索装置は、
本発明の第2の観点に係る学習方法でパラメータを更新したオートエンコーダと、
入力されたデータから特徴ベクトルを生成する特徴ベクトル生成手段と、
検索される被検索データを前記特徴ベクトル生成手段に入力して生成される被検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである被検索中間ベクトルを生成することにより、前記被検索データの集合である被検索データ群から、前記被検索中間ベクトルの集合である被検索中間ベクトル群を予め生成する被検索中間ベクトル群生成手段と、
検索対象となる検索データを取得する検索データ取得手段と、
前記検索データを前記特徴ベクトル生成手段に入力して生成される検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである検索中間ベクトルと、前記被検索中間ベクトルと、の間のコサイン類似度に基づいて、前記被検索データ群の中から前記検索データに類似する前記被検索データを検索する検索手段と、
を備える。
In order to achieve the above object, the search device according to the third aspect of the present invention is
An autoencoder whose parameters have been updated by the learning method according to the second aspect of the present invention,
A feature vector generation means that generates a feature vector from the input data,
By inputting the searched data to be searched into the feature vector generation means and generating the searched intermediate vector which is an intermediate vector generated by inputting the searched feature vector into the encoder of the auto encoder, the searched intermediate vector is generated. A search intermediate vector group generation means for generating in advance a search intermediate vector group, which is a set of search intermediate vectors, from a search data group, which is a set of search data.
Search data acquisition means to acquire search data to be searched, and
Between the search intermediate vector, which is an intermediate vector generated by inputting the search data into the feature vector generation means and the search feature vector generated by inputting the search feature vector into the encoder of the auto encoder, and the search intermediate vector. A search means for searching the searched data similar to the search data from the searched data group based on the cosine similarity of the above.
To be equipped.

上記目的を達成するため、本発明の第4の観点に係る検索方法は、
本発明の第2の観点に係る学習方法でパラメータを更新したオートエンコーダによる検索方法であって、
検索される被検索データから生成される被検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである被検索中間ベクトルを生成することにより、前記被検索データの集合である被検索データ群から、前記被検索中間ベクトルの集合である被検索中間ベクトル群を予め生成する被検索中間ベクトル群生成ステップと、
検索対象となる検索データから検索特徴ベクトルを生成する検索特徴ベクトル生成ステップと、
前記検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである検索中間ベクトルと、前記被検索中間ベクトルと、の間のコサイン類似度に基づいて、前記被検索データ群の中から前記検索データに類似する前記被検索データを検索する検索ステップと、
を備える。
In order to achieve the above object, the search method according to the fourth aspect of the present invention is
A search method using an autoencoder in which parameters are updated by the learning method according to the second aspect of the present invention.
By inputting the searched feature vector generated from the searched searched data into the encoder of the auto encoder and generating the searched intermediate vector which is the intermediate vector generated, the searched is a set of the searched data. A search intermediate vector group generation step that previously generates a search intermediate vector group that is a set of the search intermediate vectors from the search data group,
A search feature vector generation step that generates a search feature vector from the search data to be searched, and
In the search data group, based on the cosine similarity between the search intermediate vector, which is an intermediate vector generated by inputting the search feature vector into the encoder of the autoencoder, and the search intermediate vector. To search for the searched data similar to the search data from
To be equipped.

上記目的を達成するため、本発明の第5の観点に係るプログラムは、
コンピュータを、
基準データを取得する基準データ取得手段、
入力されたデータから特徴ベクトルを生成する特徴ベクトル生成手段、
前記基準データに類似する類似データを取得する類似データ取得手段、
前記特徴ベクトルを入力すると前記特徴ベクトルの次元数より低い次元数の中間ベクトルを生成するエンコーダと、前記中間ベクトルを入力すると前記特徴ベクトルと同じ次元数の出力ベクトルを生成するデコーダと、からなるオートエンコーダ、
前記オートエンコーダのパラメータを更新する更新手段、
として機能させるためのプログラムであって、
前記更新手段は、
前記基準データを前記特徴ベクトル生成手段に入力して生成される第1の特徴ベクトルと、前記第1の特徴ベクトルを前記オートエンコーダに入力して生成される出力ベクトルと、の間の誤差である第1の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第1の更新処理と、
前記第1の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第1の中間ベクトルと、前記類似データを前記特徴ベクトル生成手段に入力して生成される第2の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第2の中間ベクトルと、の間の誤差である第2の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第2の更新処理と、
を行う。
In order to achieve the above object, the program according to the fifth aspect of the present invention is
Computer,
Reference data acquisition means for acquiring reference data,
Feature vector generation means, which generates a feature vector from the input data,
Similar data acquisition means for acquiring similar data similar to the reference data,
An auto consisting of an encoder that generates an intermediate vector having a dimension number lower than the dimension number of the feature vector when the feature vector is input, and a decoder that generates an output vector having the same dimension number as the feature vector when the intermediate vector is input. Encoder,
An update means for updating the parameters of the autoencoder,
It is a program to function as
The update means
It is an error between the first feature vector generated by inputting the reference data into the feature vector generating means and the output vector generated by inputting the first feature vector into the autoencoder. The first update process of updating the parameters of the autoencoder so that the first error becomes small, and
The first intermediate vector generated by inputting the first feature vector into the encoder of the autoencoder and the second feature vector generated by inputting the similar data into the feature vector generating means are referred to as the auto. A second update process for updating the parameters of the autoencoder so that the second error, which is an error between the second intermediate vector generated by inputting to the encoder of the encoder, becomes smaller.
I do.

本発明によれば、フィードバックが得られていない新規の検索文に対しても精度の高い検索を行うための学習装置、学習方法、検索装置、検索方法及びプログラムを提供することができる。 According to the present invention, it is possible to provide a learning device, a learning method, a search device, a search method, and a program for performing a highly accurate search even for a new search sentence for which feedback has not been obtained.

本発明の実施の形態に係るプロジェクト管理システムの機能ブロック図である。It is a functional block diagram of the project management system which concerns on embodiment of this invention. 実施の形態に係るチケットの入力画面例を示す図である。It is a figure which shows the example of the input screen of the ticket which concerns on embodiment. 実施の形態に係るチケットDBの一例を示す図である。It is a figure which shows an example of the ticket DB which concerns on embodiment. 実施の形態に係るフィードバックの入力画面例を示す図である。It is a figure which shows the example of the input screen of the feedback which concerns on embodiment. 実施の形態に係るフィードバックDBの一例を示す図である。It is a figure which shows an example of the feedback DB which concerns on embodiment. 実施の形態に係るオートエンコーダを説明する図である。It is a figure explaining the autoencoder which concerns on embodiment. 実施の形態に係るプロジェクト管理システムのハードウェア構成図である。It is a hardware block diagram of the project management system which concerns on embodiment. 実施の形態に係る学習処理のフローチャートである。It is a flowchart of the learning process which concerns on embodiment. 実施の形態に係る学習処理におけるオートエンコーダの誤差を説明する図である。It is a figure explaining the error of the autoencoder in the learning process which concerns on embodiment. 実施の形態に係る検索処理のフローチャートである。It is a flowchart of the search process which concerns on embodiment.

以下、本発明の学習装置を、ソフトウェア開発等におけるプロジェクト管理システムに適用した実施の形態について、図面を参照して説明する。なお、図中、同一又は相当部分には同一符号を付す。 Hereinafter, embodiments in which the learning device of the present invention is applied to a project management system in software development and the like will be described with reference to the drawings. In the figure, the same or corresponding parts are designated by the same reference numerals.

実施の形態に係るプロジェクト管理システム1は、ソフトウェア開発等におけるプロジェクトの進捗や課題等を管理するシステムである。図1に示すように、プロジェクト管理システム1は、管理装置100と端末200とを備える。 The project management system 1 according to the embodiment is a system for managing the progress and issues of a project in software development and the like. As shown in FIG. 1, the project management system 1 includes a management device 100 and a terminal 200.

プロジェクト管理システム1において、ソフトウェア開発等の担当者は、解決すべき課題が発生した際に、端末200を通して、図2に示すようなチケットを入力する。そして、入力されたチケットは、入力された順番にチケット番号が付されて管理装置100の記憶部16に記憶されていき、図3に示すようなチケットDB(DataBase)が構成される。チケットDBが構成されると、担当者や管理者は、チケットDBに登録されたチケットを確認することにより、プロジェクトの進捗や課題等を管理できるようになる。 In the project management system 1, a person in charge of software development or the like inputs a ticket as shown in FIG. 2 through the terminal 200 when a problem to be solved occurs. Then, the input tickets are assigned ticket numbers in the input order and stored in the storage unit 16 of the management device 100, and a ticket DB (DataBase) as shown in FIG. 3 is configured. When the ticket DB is configured, the person in charge or the manager can manage the progress of the project, issues, etc. by checking the tickets registered in the ticket DB.

また、新たに発生した課題を担当者や管理者が解決する際には、過去に発生した類似課題の情報が参考になる場合があるため、管理装置100は、それまでに入力された過去のチケットの情報を学習して、新たに入力されたチケットに記載された課題と類似する課題が記載された過去のチケット(類似チケット)を検索する機能を持つ。このような、過去のチケットの情報を学習し、類似チケットを検索する管理装置100の構成について以下に説明する。 Further, when the person in charge or the administrator solves the newly generated problem, the information of the similar problem that has occurred in the past may be referred to, so that the management device 100 is the past input so far. It has a function to learn ticket information and search past tickets (similar tickets) in which tasks similar to the tasks described in the newly entered ticket are described. The configuration of the management device 100 that learns the information of the past tickets and searches for similar tickets will be described below.

管理装置100は、図1に示すように、制御部10と、記憶部16と、通信部17と、を備える。 As shown in FIG. 1, the management device 100 includes a control unit 10, a storage unit 16, and a communication unit 17.

制御部10は、CPU(Central Processing Unit)等で構成される。制御部10は、記憶部16に記憶されたプログラムを実行することにより、後述する各部(データ取得部11、特徴ベクトル生成部12、類似データ取得部13、オートエンコーダ14、更新部15)の機能を実現する。 The control unit 10 is composed of a CPU (Central Processing Unit) and the like. By executing the program stored in the storage unit 16, the control unit 10 functions of each unit (data acquisition unit 11, feature vector generation unit 12, similar data acquisition unit 13, autoencoder 14, update unit 15) described later. To realize.

記憶部16は、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成され、チケットDB及び後述するフィードバックDB並びに制御部10のCPUが実行するプログラム及び必要なデータを記憶する。 The storage unit 16 is composed of a ROM (Read Only Memory), a RAM (Random Access Memory), and the like, and stores a ticket DB, a feedback DB described later, a program executed by the CPU of the control unit 10, and necessary data.

通信部17は、他の機器とデータ通信を行うためのデバイス(ネットワークカード等)で構成される。管理装置100は、通信部17を介して、端末200や他の装置等とデータの送受信を行う。 The communication unit 17 is composed of a device (network card or the like) for performing data communication with another device. The management device 100 transmits / receives data to / from the terminal 200, other devices, and the like via the communication unit 17.

次に、制御部10の機能について説明する。制御部10は、データ取得部11、特徴ベクトル生成部12、類似データ取得部13、オートエンコーダ14、更新部15の機能を実現する。 Next, the function of the control unit 10 will be described. The control unit 10 realizes the functions of the data acquisition unit 11, the feature vector generation unit 12, the similar data acquisition unit 13, the autoencoder 14, and the update unit 15.

データ取得部11は、管理装置100に登録された大量のチケットからなるチケットDBから、各チケットのタイトル及び本文の情報を取得する。後述する学習処理においては、データ取得部11は基準チケットのタイトル及び本文の情報(基準データ)を取得し、データ取得部11は、基準データ取得手段として機能する。なお、チケットのタイトル及び本文の情報は、基準データの一例であり、データ取得部11は、他の情報を基準データとして用いてもよい。例えば、チケットの優先度等も含めて基準データとしてもよいし、逆にタイトルのみ、本文のみを基準データとしてもよい。 The data acquisition unit 11 acquires information on the title and text of each ticket from the ticket DB composed of a large number of tickets registered in the management device 100. In the learning process described later, the data acquisition unit 11 acquires the information (reference data) of the title and the text of the reference ticket, and the data acquisition unit 11 functions as the reference data acquisition means. The information of the ticket title and the text is an example of the reference data, and the data acquisition unit 11 may use other information as the reference data. For example, the reference data may include the priority of the ticket and the like, or conversely, only the title and only the text may be used as the reference data.

特徴ベクトル生成部12は、入力されたデータから特徴ベクトルを生成する。特徴ベクトル生成部12は、特徴ベクトル生成手段として機能する。具体的には、特徴ベクトル生成部12は、チケットが入力データとして与えられると、当該チケットのタイトルと本文を分かち書き文にして、当該分かち書き文中に出現する各単語の出現頻度から特徴ベクトルを生成する。本実施の形態では、この特徴ベクトルはBoW(Bag of Words)ベクトルである。BoWベクトルとは、単語の種類数(例えば2万)を次元数とし、各単語が当該分かち書き文に出現する頻度を各次元の要素の値とするベクトルである。 The feature vector generation unit 12 generates a feature vector from the input data. The feature vector generation unit 12 functions as a feature vector generation means. Specifically, when the ticket is given as input data, the feature vector generation unit 12 makes the title and the text of the ticket into a word-separated sentence, and generates a feature vector from the appearance frequency of each word appearing in the word-separated sentence. .. In the present embodiment, this feature vector is a BoW (Bag of Words) vector. The BoW vector is a vector in which the number of types of words (for example, 20,000) is the number of dimensions, and the frequency with which each word appears in the word-separated sentence is the value of an element in each dimension.

類似データ取得部13は、担当者等からのフィードバックを受けることにより、チケットDBに登録された大量のチケットの中でタイトル及び本文の情報が互いに類似するチケットの情報を取得する。類似データ取得部13は、類似データ取得手段として機能する。具体的には、類似データ取得部13は、管理装置100に登録された大量のチケットの中の1つのチケット(例えば最も直近に入力されたチケット)を基準チケットとし、基準チケットに類似するチケットを所定の数(例えば10個)抽出する。この抽出は、基準チケット及び他の各チケットに対して、特徴ベクトル生成部12により特徴ベクトルを生成し、基準チケットの特徴ベクトルと他の各チケットの特徴ベクトルとの間のコサイン類似度を求め、基準チケットとのコサイン類似度の高い順に所定の数(例えば10個)の他の各チケットを抽出することにより行われる。 By receiving feedback from the person in charge or the like, the similar data acquisition unit 13 acquires information on tickets whose titles and texts are similar to each other among a large number of tickets registered in the ticket DB. The similar data acquisition unit 13 functions as a similar data acquisition means. Specifically, the similar data acquisition unit 13 uses one ticket (for example, the most recently input ticket) among a large number of tickets registered in the management device 100 as a reference ticket, and sets a ticket similar to the reference ticket. Extract a predetermined number (for example, 10). In this extraction, a feature vector is generated by the feature vector generation unit 12 for the reference ticket and each of the other tickets, and the cosine similarity between the feature vector of the reference ticket and the feature vector of each of the other tickets is obtained. This is done by extracting a predetermined number (for example, 10) of each other ticket in descending order of cosine similarity with the reference ticket.

そして、図4に示すように、担当者等の使用する端末200の表示部23に、抽出された各チケットを表示し、それら抽出された各チケットが基準チケットと本当に類似しているか否かについて、担当者等からフィードバックを受ける。類似データ取得部13が、受けたフィードバックの情報を管理装置100の記憶部16に登録していくことにより、図5に示すようなフィードバックDBが構成される。類似するチケットに関するフィードバック情報の登録をいつ行うかは任意であるが、例えば、類似データ取得部13は、新規チケットが登録される度に、当該新規チケットを基準チケットとして、類似チケットの情報のフィードバックを受け、フィードバックDBに登録する。 Then, as shown in FIG. 4, each extracted ticket is displayed on the display unit 23 of the terminal 200 used by the person in charge or the like, and whether or not each of the extracted tickets is really similar to the reference ticket is checked. , Receive feedback from the person in charge. The feedback DB as shown in FIG. 5 is configured by the similar data acquisition unit 13 registering the received feedback information in the storage unit 16 of the management device 100. When to register feedback information about similar tickets is arbitrary. For example, the similar data acquisition unit 13 feeds back information about similar tickets using the new ticket as a reference ticket each time a new ticket is registered. Receive and register in the feedback DB.

オートエンコーダ14は、図6に示すように、ニューラルネットワークによるエンコーダ141とデコーダ142とを接続したニューラルネットワークである。オートエンコーダ14において、エンコーダ141に入力された入力ベクトル143は、入力ベクトル143よりも次元数の低い次元数の中間ベクトル144に変換される。そして、中間ベクトル144は、デコーダ142に入力され、入力ベクトル143と同じ次元数の出力ベクトル145に変換される。 As shown in FIG. 6, the autoencoder 14 is a neural network in which an encoder 141 and a decoder 142 are connected by a neural network. In the autoencoder 14, the input vector 143 input to the encoder 141 is converted into an intermediate vector 144 having a dimension number lower than that of the input vector 143. Then, the intermediate vector 144 is input to the decoder 142 and converted into an output vector 145 having the same number of dimensions as the input vector 143.

そして、入力ベクトル143と出力ベクトル145との間の誤差(第1の誤差146)が小さくなるように(出力ベクトル145が入力ベクトル143を復元できるように)、エンコーダ141及びデコーダ142のニューラルネットワークを学習させることにより、オートエンコーダ14が得られる。オートエンコーダ14のニューラルネットワークの学習は、後述する学習処理により、ニューラルネットワークの内部のパラメータ(ニューラルネットワークの各結合の重み等)が更新されることによって行われる。 Then, the neural network of the encoder 141 and the decoder 142 is set so that the error between the input vector 143 and the output vector 145 (first error 146) becomes small (so that the output vector 145 can restore the input vector 143). By learning, the autoencoder 14 is obtained. The learning of the neural network of the autoencoder 14 is performed by updating the internal parameters of the neural network (weights of each connection of the neural network, etc.) by the learning process described later.

本実施の形態においては、オートエンコーダ14(エンコーダ141)に入力される入力ベクトル143の次元数及びオートエンコーダ14(デコーダ142)から出力される出力ベクトル145の次元数は、特徴ベクトル生成部12が生成する特徴ベクトルの次元数であり、例えば2万次元である。また、オートエンコーダ14の中間ベクトル144の次元数は特徴ベクトル生成部12が生成する特徴ベクトルの次元数よりも低い次元数であり、例えば1000次元である。また、デコーダ142のニューラルネットワークとエンコーダ141のニューラルネットワークとは、互いに転置の関係にあるニューラルネットワークとすることができる。 In the present embodiment, the feature vector generation unit 12 determines the number of dimensions of the input vector 143 input to the autoencoder 14 (encoder 141) and the number of dimensions of the output vector 145 output from the autoencoder 14 (decoder 142). It is the number of dimensions of the feature vector to be generated, for example, 20,000 dimensions. Further, the number of dimensions of the intermediate vector 144 of the autoencoder 14 is lower than the number of dimensions of the feature vector generated by the feature vector generation unit 12, and is, for example, 1000 dimensions. Further, the neural network of the decoder 142 and the neural network of the encoder 141 can be a neural network in a transposed relationship with each other.

更新部15は、オートエンコーダ14の誤差(第1の誤差146等)が小さくなるようにオートエンコーダ14の内部のパラメータ(ニューラルネットワークの各結合の重み等)を更新する。更新部15は、更新手段として機能する。 The update unit 15 updates the internal parameters of the autoencoder 14 (weights of each coupling of the neural network, etc.) so that the error of the autoencoder 14 (first error 146, etc.) becomes small. The update unit 15 functions as an update means.

端末200は、PC(Personal Computer)等の情報端末機器である。端末200は、図1に示すように、制御部20と、記憶部21と、通信部22と、表示部23と、入力部24と、を備え、管理装置100と通信可能に接続されている。 The terminal 200 is an information terminal device such as a PC (Personal Computer). As shown in FIG. 1, the terminal 200 includes a control unit 20, a storage unit 21, a communication unit 22, a display unit 23, and an input unit 24, and is communicably connected to the management device 100. ..

制御部20は、CPU等で構成される。制御部20は、記憶部21に記憶されたプログラムを実行することにより、管理装置100にアクセスするWebブラウザの機能等を実現する。 The control unit 20 is composed of a CPU and the like. The control unit 20 realizes the function of a Web browser that accesses the management device 100 by executing the program stored in the storage unit 21.

記憶部21は、ROM、RAM等で構成され、制御部20のCPUが実行するプログラム及び必要なデータを記憶する。 The storage unit 21 is composed of a ROM, a RAM, and the like, and stores a program executed by the CPU of the control unit 20 and necessary data.

通信部22は、他の機器とデータ通信を行うためのデバイス(ネットワークカード等)で構成される。端末200は、通信部22を介して、管理装置100等とデータの送受信を行う。 The communication unit 22 is composed of a device (network card or the like) for performing data communication with another device. The terminal 200 transmits / receives data to / from the management device 100 and the like via the communication unit 22.

表示部23は、液晶ディスプレイや有機EL(Electro−Luminescence)等のディスプレイで構成され、管理装置100から受信したチケットの情報等を表示する。 The display unit 23 is composed of a display such as a liquid crystal display or an organic EL (Electro-Luminence), and displays ticket information or the like received from the management device 100.

入力部24は、キーボード、マウス、タッチパネル等で構成され、担当者等からのチケットやフィードバック等の入力を受け付ける。 The input unit 24 is composed of a keyboard, a mouse, a touch panel, etc., and receives inputs such as tickets and feedback from a person in charge or the like.

なお、図1では、端末200が1つのみ示されているが、プロジェクト管理システム1は、複数の端末200を備えて、どの端末200からでも管理装置100と通信できるようにしてもよい。また、逆に、プロジェクト管理システム1は、管理装置100が表示部及び入力部を備えるなら、端末200を備えなくてもよい。この場合、チケット等の情報は、管理装置100の表示部に表示され、管理装置100の入力部が担当者等からのチケットやフィードバック等の入力を受け付ける。 Although only one terminal 200 is shown in FIG. 1, the project management system 1 may include a plurality of terminals 200 so that any terminal 200 can communicate with the management device 100. On the contrary, if the management device 100 includes a display unit and an input unit, the project management system 1 does not have to include the terminal 200. In this case, the information such as the ticket is displayed on the display unit of the management device 100, and the input unit of the management device 100 accepts the input of the ticket, feedback, etc. from the person in charge or the like.

次に、プロジェクト管理システム1のハードウェア構成について、図7を参照して説明する。管理装置100は、CPU(Central Processing Unit)101と、RAM(Random Access Memory)102と、ROM(Read Only Memory)103と、ハードディスクドライブ104と、ネットワークカード105とを備える。 Next, the hardware configuration of the project management system 1 will be described with reference to FIG. 7. The management device 100 includes a CPU (Central Processing Unit) 101, a RAM (Random Access Memory) 102, a ROM (Read Only Memory) 103, a hard disk drive 104, and a network card 105.

CPU101は、ハードディスクドライブ104に記憶されているプログラムをRAM102に読み出して実行することにより、制御部10として機能し、上述した各部の機能を実現する。 The CPU 101 functions as the control unit 10 by reading the program stored in the hard disk drive 104 into the RAM 102 and executing the program, and realizes the functions of the above-described units.

RAM102は、揮発性メモリであり、CPU101の作業領域や、CPU101が実行するプログラムで使用される変数を格納する領域として用いられる。 The RAM 102 is a volatile memory, and is used as a work area of the CPU 101 and an area for storing variables used in a program executed by the CPU 101.

ROM103は、不揮発性メモリであり、CPU101が実行する管理装置100の基本動作のための制御プログラム、BIOS(Basic Input Output System)等を記憶する。 The ROM 103 is a non-volatile memory, and stores a control program for the basic operation of the management device 100 executed by the CPU 101, a BIOS (Basic Input Output System), and the like.

ハードディスクドライブ104は、管理装置100に格納する各種情報と、CPU101が実行するプログラムが格納される。RAM102、ROM103及びハードディスクドライブ104により記憶部16が構成される。 The hard disk drive 104 stores various information stored in the management device 100 and a program executed by the CPU 101. The storage unit 16 is composed of the RAM 102, the ROM 103, and the hard disk drive 104.

ネットワークカード105は、通信回線とのインターフェースであり、端末200が備える後述するネットワークカード205と通信可能に接続されている。ネットワークカード105とネットワークカード205との間は直接接続されていても良いし、インターネット、イントラネット、VPN(Virtual Private Network)、LAN(Local Area Network)等のネットワークを介して接続されていても良い。ネットワークカード105により、通信部17が構成される。 The network card 105 is an interface with a communication line, and is communicably connected to a network card 205 included in the terminal 200, which will be described later. The network card 105 and the network card 205 may be directly connected, or may be connected via a network such as the Internet, an intranet, a VPN (Virtual Private Network), or a LAN (Local Area Network). The network card 105 constitutes the communication unit 17.

端末200は、CPU201と、RAM202と、ROM203と、ハードディスクドライブ204と、ネットワークカード205と、ディスプレイ206と、キーボード207とを備える。 The terminal 200 includes a CPU 201, a RAM 202, a ROM 203, a hard disk drive 204, a network card 205, a display 206, and a keyboard 207.

CPU201は、ハードディスクドライブ204に記憶されているプログラムをRAM202に読み出して実行することにより、制御部20として機能し、端末200における各種処理を実行する。 The CPU 201 functions as the control unit 20 by reading the program stored in the hard disk drive 204 into the RAM 202 and executing the program, and executes various processes in the terminal 200.

RAM202は、揮発性メモリであり、CPU201の作業領域や、CPU201が実行するプログラムで使用される変数を格納する領域として用いられる。 The RAM 202 is a volatile memory, and is used as a work area of the CPU 201 and an area for storing variables used in a program executed by the CPU 201.

ROM203は、不揮発性メモリであり、CPU201が実行する端末200の基本動作のための制御プログラム、BIOS等を記憶する。 The ROM 203 is a non-volatile memory, and stores a control program, a BIOS, and the like for the basic operation of the terminal 200 executed by the CPU 201.

ハードディスクドライブ204は、端末200に格納する各種情報と、CPU201が実行するプログラムが格納される。RAM202、ROM203及びハードディスクドライブ204により記憶部21が構成される。 The hard disk drive 204 stores various information stored in the terminal 200 and a program executed by the CPU 201. The storage unit 21 is composed of the RAM 202, the ROM 203, and the hard disk drive 204.

ネットワークカード205は、通信回線とのインターフェースであり、管理装置100が備えるネットワークカード105と通信可能に接続されている。ネットワークカード205とネットワークカード105との間は直接接続されていても良いし、インターネット、イントラネット、VPN、LAN等のネットワークを介して接続されていても良い。ネットワークカード205により、通信部22が構成される。 The network card 205 is an interface with a communication line, and is communicably connected to the network card 105 included in the management device 100. The network card 205 and the network card 105 may be directly connected, or may be connected via a network such as the Internet, an intranet, a VPN, or a LAN. The network card 205 constitutes the communication unit 22.

次に、後述する検索処理によって類似チケットを検索できるようにするために、過去のチケットの情報を学習する学習処理について図8を参照して説明する。学習処理は、プロジェクト管理システム1の管理者等が、管理装置100に学習処理の開始を指示すると開始される。この時、管理装置100は、学習装置として動作する。なお、学習処理開始時点で、管理装置100の記憶部16に記憶されているチケットDBにはチケット数分のチケット情報が、フィードバックDBにはフィードバック数分のフィードバック情報が、それぞれ格納されているものとする。 Next, a learning process for learning information on past tickets will be described with reference to FIG. 8 so that similar tickets can be searched by the search process described later. The learning process is started when the manager or the like of the project management system 1 instructs the management device 100 to start the learning process. At this time, the management device 100 operates as a learning device. At the start of the learning process, the ticket DB stored in the storage unit 16 of the management device 100 stores the ticket information for the number of tickets, and the feedback DB stores the feedback information for the number of feedbacks. And.

まず、管理装置100の制御部10は、チケット番号を指定する変数TNを1に初期化する(ステップS101)。次に、データ取得部11は、チケットDBからチケット番号がTNであるチケットのタイトル及び本文(文章TNとする)を取得する(ステップS102)。 First, the control unit 10 of the management device 100 initializes the variable TN that specifies the ticket number to 1 (step S101). Next, the data acquisition unit 11 acquires the title and the text (referred to as the sentence TN ) of the ticket whose ticket number is TN from the ticket DB (step S102).

そして、特徴ベクトル生成部12は、文章TNからBoWTNベクトルを生成する(ステップS103)。ここで、BoWTNベクトルは第1の特徴ベクトルとも呼ばれ、ステップS103は第1の特徴ベクトル生成ステップとも呼ばれる。次に、制御部10は、オートエンコーダ14に、BoWTNベクトルを入力し、第1の誤差146を算出する(ステップS104)。第1の誤差146とは、図9に示すように、BoWTNベクトルを入力ベクトル143としてオートエンコーダ14に入力した時にオートエンコーダ14から出力される出力ベクトル145と、入力ベクトル143と、の間の誤差である。制御部10は、第1の誤差146を、自乗誤差(各ベクトルの対応する要素の差を自乗した値の総和)として算出する。 Then, the feature vector generation unit 12 generates a BoW TN vector from the sentence TN (step S103). Here, the BoW TN vector is also referred to as a first feature vector, and step S103 is also referred to as a first feature vector generation step. Next, the control unit 10 inputs the BoW TN vector to the autoencoder 14 and calculates the first error 146 (step S104). The first error 146 is between the output vector 145 output from the autoencoder 14 and the input vector 143 when the BoW TN vector is input to the autoencoder 14 as the input vector 143, as shown in FIG. It is an error. The control unit 10 calculates the first error 146 as a square error (the sum of the squared values of the differences between the corresponding elements of each vector).

そして、更新部15は、算出された第1の誤差146が小さくなるように、オートエンコーダ14のニューラルネットワークのパラメータ(結合の重みなど)を更新する(ステップS105)。次に、制御部10は、変数TNに1を加算する(ステップS106)。 Then, the update unit 15 updates the parameters (coupling weight, etc.) of the neural network of the autoencoder 14 so that the calculated first error 146 becomes small (step S105). Next, the control unit 10 adds 1 to the variable TN (step S106).

そして、制御部10は、変数TNの値が、チケットDBに格納されているチケット数より大きいか否かを判定する(ステップS107)。変数TNの値がチケット数以下なら(ステップS107;No)、ステップS102に戻る。 Then, the control unit 10 determines whether or not the value of the variable TN is larger than the number of tickets stored in the ticket DB (step S107). If the value of the variable TN is equal to or less than the number of tickets (step S107; No), the process returns to step S102.

変数TNの値がチケット数より大きいなら(ステップS107;Yes)、制御部10は、フィードバック番号を指定する変数FNを1に初期化する(ステップS108)。そして、類似データ取得部13は、フィードバックDBからフィードバック番号がFNである基準チケット番号(FN1とする)と類似チケット番号(FN2とする)を取得し、チケットDBからチケット番号がFN1であるチケット(基準チケット)のタイトル及び本文(文章FN1とする)とチケット番号がFN2であるチケット(類似チケット)のタイトル及び本文(文章FN2とする)とを取得する(ステップS109)。 If the value of the variable TN is larger than the number of tickets (step S107; Yes), the control unit 10 initializes the variable FN that specifies the feedback number to 1 (step S108). Then, the similar data acquisition unit 13 acquires a reference ticket number (referred to as FN1) and a similar ticket number (referred to as FN2) whose feedback number is FN from the feedback DB, and a ticket whose ticket number is FN1 from the ticket DB (referred to as FN2). reference ticket) and the title and text (sentences FN1 of) the ticket number is a title and text (sentences FN2 tickets (similar ticket) is FN2) and the acquiring (step S109).

次に、特徴ベクトル生成部12は、文章FN1からBoWFN1ベクトルを生成し、文章FN2からBoWFN2ベクトルを生成する(ステップS110)。なお、BoWFN1ベクトルは第1の特徴ベクトルとも呼ばれ、BoWFN2ベクトルは第2の特徴ベクトルとも呼ばれる。そして、ステップS110は、文章FN1からBoWFN1ベクトルを生成する第1の特徴ベクトル生成ステップと、文章FN2からBoWFN2ベクトルを生成する第2の特徴ベクトル生成ステップとからなる。 Next, the feature vector generation unit 12 generates the BoW FN1 vector from the text FN1, generates the BoW FN2 vector from the text FN2 (step S110). Incidentally, BoW FN1 vector is also called a first feature vector, BoW FN2 vector is also referred to as a second feature vector. Then, step S110 is composed of a sentence FN1 a first feature vector generation step of generating a BoW FN1 vector, the second feature vector generation step of generating a BoW FN2 vector from the text FN2.

次に、制御部10は、オートエンコーダ14のエンコーダ141にBoWFN1ベクトル及びBoWFN2ベクトルをそれぞれ入力して得られる中間ベクトル144及び中間ベクトル144’に基づき第2の誤差147を算出する(ステップS111)。なお、ここで得られる中間ベクトル144は第1の中間ベクトルとも呼ばれ、中間ベクトル144’は第2の中間ベクトルとも呼ばれる。 Next, the control unit 10 calculates the second error 147 based on the intermediate vector 144 and the intermediate vector 144 'obtained in the encoder 141 of Autoencoder 14 BoW FN1 vector and BoW FN2 vector was inputted (step S111 ). The intermediate vector 144 obtained here is also referred to as a first intermediate vector, and the intermediate vector 144'is also referred to as a second intermediate vector.

第2の誤差147とは、図9に示すように、オートエンコーダ14のエンコーダ141に、BoWFN1ベクトルを入力ベクトル143として入力して得られる中間ベクトル144と、エンコーダ141に、BoWFN2ベクトルを入力ベクトル143’として入力して得られる中間ベクトル144’と、の間の誤差である。制御部10は、第2の誤差147を、コサイン類似度(2つのベクトルの内積を、各ベクトルの長さ(Lノルム)で割った値)として算出する。 And the second error 147, as shown in FIG. 9, the encoder 141 of Autoencoder 14, an intermediate vector 144 obtained by inputting the BoW FN1 vector as input vector 143, the encoder 141, enter the BoW FN2 vector It is an error between the intermediate vector 144' obtained by inputting as the vector 143'and the intermediate vector 144'. The control unit 10 calculates the second error 147 as a cosine similarity (a value obtained by dividing the inner product of two vectors by the length (L 2 norm) of each vector).

なお、ここでコサイン類似度を用いている理由は、後述するように、中間ベクトル144を文章の類似度の算出に用いるためである。この場合、第2の誤差147については、誤差の絶対的な値を小さくするよりも、中間ベクトル144の間の類似度を高める(コサイン類似度を1に近づける)方が良いからである。一般的な誤差(小さい方が類似度が高い)と性質を似せるため、第2の誤差147を、コサイン類似度の逆数(1/コサイン類似度)として算出したり、1からコサイン類似度を引いた値(1−コサイン類似度)として算出したりしてもよい。 The reason why the cosine similarity is used here is that the intermediate vector 144 is used for calculating the similarity of sentences, as will be described later. In this case, for the second error 147, it is better to increase the similarity between the intermediate vectors 144 (make the cosine similarity closer to 1) than to reduce the absolute value of the error. In order to resemble the general error (smaller the higher the similarity), the second error 147 is calculated as the reciprocal of the cosine similarity (1 / cosine similarity), or the cosine similarity is subtracted from 1. It may be calculated as a value (1-cosine similarity).

図8に戻り、更新部15は、算出された第2の誤差147が小さくなるように(コサイン類似度の値が1に近づくように)、オートエンコーダ14のニューラルネットワークのパラメータを更新する(ステップS112)。なお、ステップS105は第1の更新処理であり、ステップS112は第2の更新処理である。そして、ステップS105とステップS112は更新ステップとも呼ばれる。 Returning to FIG. 8, the update unit 15 updates the parameters of the neural network of the autoencoder 14 so that the calculated second error 147 becomes small (so that the value of the cosine similarity approaches 1) (step). S112). Note that step S105 is the first update process, and step S112 is the second update process. Then, step S105 and step S112 are also called update steps.

次に、制御部10は、変数FNに1を加算する(ステップS113)。そして、制御部10は、変数FNの値が、フィードバックDBに格納されているフィードバック数より大きいか否かを判定する(ステップS114)。変数FNの値がフィードバック数以下なら(ステップS114;No)、ステップS109に戻る。 Next, the control unit 10 adds 1 to the variable FN (step S113). Then, the control unit 10 determines whether or not the value of the variable FN is larger than the number of feedbacks stored in the feedback DB (step S114). If the value of the variable FN is equal to or less than the number of feedbacks (step S114; No), the process returns to step S109.

変数FNの値がフィードバック数より大きいなら(ステップS114;Yes)、制御部10は、第1の誤差146と第2の誤差147を統合した誤差(統合誤差)が、学習処理を開始してからそれまでの最小値になったか否かを判定する(ステップS115)。第1の誤差146と第2の誤差147を統合した誤差(統合誤差)とは、この統合誤差を小さくすることにより、第1の誤差146と第2の誤差147とが総合的に小さくなるような指標となる値である。例えば、第2の誤差147を1からコサイン類似度を引いた値(1−コサイン類似度)として算出する場合、第1の誤差146と第2の誤差147の平均(調和平均、自乗和平均、算術平均、幾何平均等のうちのいずれか)の値を統合誤差とすることができる。 If the value of the variable FN is larger than the number of feedbacks (step S114; Yes), the control unit 10 starts the learning process after the error (integration error) obtained by integrating the first error 146 and the second error 147. It is determined whether or not the minimum value up to that point has been reached (step S115). The error (integration error) in which the first error 146 and the second error 147 are integrated is such that the first error 146 and the second error 147 are comprehensively reduced by reducing this integration error. It is a value that serves as an index. For example, when the second error 147 is calculated as a value obtained by subtracting the cosine similarity from 1 (1-cosine similarity), the average of the first error 146 and the second error 147 (harmonic mean, arithmetic mean, mean, etc.) The value of either arithmetic mean, geometric mean, etc.) can be used as the integration error.

統合誤差が最小値であるなら(ステップS115;Yes)、制御部10は、その時点でのオートエンコーダ14のニューラルネットワークのパラメータを記憶部16に保存し(ステップS116)、ステップS101に戻る。 If the integration error is the minimum value (step S115; Yes), the control unit 10 stores the neural network parameters of the autoencoder 14 at that time in the storage unit 16 (step S116), and returns to step S101.

統合誤差が最小値でないなら(ステップS115;No)、制御部10は、統合誤差が最小値にならずにステップS101からステップS116までのループを所定の回数(例えば100回)繰り返したか否かを判定する(ステップS117)。 If the integration error is not the minimum value (step S115; No), the control unit 10 determines whether or not the loop from step S101 to step S116 is repeated a predetermined number of times (for example, 100 times) without the integration error becoming the minimum value. Determine (step S117).

まだ所定の回数繰り返していなければ(ステップS117;No)、ステップS101に戻る。所定の回数繰り返していたら(ステップS117;Yes)、更新部15は、ステップS116で記憶部16に保存したパラメータで、オートエンコーダ14のニューラルネットワークのパラメータを更新し(ステップS118)、学習処理を終了する。 If the process has not been repeated a predetermined number of times (step S117; No), the process returns to step S101. If the process is repeated a predetermined number of times (step S117; Yes), the update unit 15 updates the neural network parameters of the autoencoder 14 with the parameters saved in the storage unit 16 in step S116 (step S118), and ends the learning process. To do.

上述した学習処理が行われることにより、オートエンコーダ14のエンコーダ141は、エンコーダ141に入力される特徴ベクトルの元の文章が類似すると、エンコーダ141が出力する中間ベクトル144も類似するように、ニューラルネットワークのパラメータが更新される。 By performing the above-mentioned learning process, the encoder 141 of the autoencoder 14 has a neural network so that when the original sentences of the feature vectors input to the encoder 141 are similar, the intermediate vector 144 output by the encoder 141 is also similar. Parameters are updated.

なお、上述した学習処理(図8)では、1つのチケット情報から誤差を算出する(ステップS104)毎にパラメータ更新(ステップS105)を行っていたが、第1の誤差の算出を複数(バッチサイズ)のチケット情報で行ってからパラメータ更新を行う、いわゆるミニバッチ学習を行ってもよい。フィードバック情報についても同様に、第2の誤差の算出を複数(バッチサイズ)のフィードバック情報で行ってからパラメータ更新を行うようにしてもよい。このようにすることにより、一部の特殊なデータによって算出された異常な誤差による(検索精度に悪影響を与える)パラメータ更新を避けることができる。 In the learning process (FIG. 8) described above, the parameter is updated (step S105) every time the error is calculated from one ticket information (step S104), but a plurality of first error calculations (batch size) are performed. ), So-called mini-batch learning, in which parameters are updated after the ticket information is used, may be performed. Similarly, for the feedback information, the second error may be calculated with a plurality of (batch size) feedback information, and then the parameters may be updated. By doing so, it is possible to avoid parameter updates (which adversely affect the search accuracy) due to an abnormal error calculated by some special data.

また、チケットDBに格納されているチケット数の大きさと、フィードバックDBに格納されているフィードバック数の大きさとが、かなり異なる場合(例えば、チケット数が、フィードバック数の2倍以上等)、少ない方の情報を繰り返し用いることにより、ステップS105によるパラメータ更新の回数と、ステップS112によるパラメータ更新の回数とが大体同じ回数になるようにチケット数及びフィードバック数を調整してもよい。 Also, if the size of the number of tickets stored in the ticket DB and the size of the number of feedbacks stored in the feedback DB are significantly different (for example, the number of tickets is twice or more the number of feedbacks), the smaller one. By repeatedly using the information in the above, the number of tickets and the number of feedbacks may be adjusted so that the number of parameter updates in step S105 and the number of parameter updates in step S112 are approximately the same.

第1の誤差と第2の誤差とが共に小さくなるのが理想だが、実際にはこの2つの誤差の間で綱引き状態になることが多い。その場合、チケット数がフィードバック数より多いと第1の誤差の最小化を優先したパラメータ更新が行われ、フィードバック数がチケット数より多いと第2の誤差の最小化を優先したパラメータ更新が行われがちである。上述の調整を行うことにより、このような偏ったパラメータ更新を防ぎ、第1の誤差と第2の誤差の両方をバランス良く小さくすることができるようになる。 Ideally, both the first error and the second error should be small, but in reality, there is often a tug of war between these two errors. In that case, if the number of tickets is larger than the number of feedbacks, the parameter update that prioritizes the minimization of the first error is performed, and if the number of feedbacks is larger than the number of tickets, the parameter update that prioritizes the minimization of the second error is performed. It tends to be. By making the above adjustments, it is possible to prevent such a biased parameter update and reduce both the first error and the second error in a well-balanced manner.

次に、上述の学習処理により学習されたオートエンコーダ14を用いて類似チケットを検索する検索処理について、図10を参照して説明する。担当者等が、検索対象となるチケット(検索チケット)を示して、管理装置100に検索処理の開始を指示すると、検索処理が開始される。この時、管理装置100は、検索装置として動作する。なお、検索処理開始前に、既に上述の学習処理(図8)により、管理装置100のオートエンコーダ14の学習(ニューラルネットワークのパラメータの更新)は済んでおり、記憶部16に記憶されているチケットDBにはチケット数分のチケット情報が格納されているものとする。チケットDBに格納されているデータは、検索されるチケット(被検索データ)の集まりなので、被検索データ群とも呼ばれる。 Next, a search process for searching for similar tickets using the autoencoder 14 learned by the above-mentioned learning process will be described with reference to FIG. When the person in charge or the like indicates a ticket (search ticket) to be searched and instructs the management device 100 to start the search process, the search process is started. At this time, the management device 100 operates as a search device. Before the start of the search process, the autoencoder 14 of the management device 100 has already been learned (updated of the neural network parameters) by the above-mentioned learning process (FIG. 8), and the ticket stored in the storage unit 16 is stored. It is assumed that the ticket information for the number of tickets is stored in the DB. Since the data stored in the ticket DB is a collection of tickets to be searched (searched data), it is also called a searched data group.

まず、管理装置100の制御部10は、チケット番号を指定する変数TNを1に初期化する(ステップS201)。次に、データ取得部11は、チケットDBからチケット番号がTNであるチケットのタイトル及び本文(文章TNとする)を取得する(ステップS202)。 First, the control unit 10 of the management device 100 initializes the variable TN that specifies the ticket number to 1 (step S201). Next, the data acquisition unit 11 acquires the title and the text (referred to as the sentence TN ) of the ticket whose ticket number is TN from the ticket DB (step S202).

そして、特徴ベクトル生成部12は、文章TNからBoWTNベクトルを生成する(ステップS203)。BoWTNベクトルは、検索されるチケット(被検索データ)の特徴ベクトルなので、被検索特徴ベクトルとも呼ばれる。次に、制御部10は、オートエンコーダ14のエンコーダ141にBoWTNベクトルを入力して、中間ベクトル144を取得し、当該中間ベクトルを特徴量VTNとして、記憶部16に保存する(ステップS204)。特徴量VTNは、検索されるチケット(被検索データ)の中間ベクトルなので、被検索中間ベクトルとも呼ばれる。ステップS204は、被検索中間ベクトル生成ステップとも呼ばれる。そして、ステップS204を実行する際、制御部10は被検索中間ベクトル生成手段として機能する。 Then, the feature vector generation unit 12 generates a BoW TN vector from the sentence TN (step S203). Since the BoW TN vector is a feature vector of the ticket to be searched (searched data), it is also called a searched feature vector. Next, the control unit 10 inputs a BoW TN vector to the encoder 141 of the autoencoder 14, acquires an intermediate vector 144, and stores the intermediate vector as a feature amount V TN in the storage unit 16 (step S204). .. Since the feature amount VTN is an intermediate vector of the ticket to be searched (searched data), it is also called an intermediate vector to be searched. Step S204 is also referred to as a searched intermediate vector generation step. Then, when the step S204 is executed, the control unit 10 functions as a search intermediate vector generation means.

そして、制御部10は、変数TNに1を加算する(ステップS205)。次に、制御部10は、変数TNの値が、チケットDBに格納されているチケット数より大きいか否かを判定する(ステップS206)。変数TNの値がチケット数以下なら(ステップS206;No)、ステップS202に戻る。これにより、記憶部16には、TNが1からチケット数までのVTN(被検索中間ベクトル群)が保存される。ステップS201からステップS206までは、被検索中間ベクトル群生成ステップとも呼ばれる。そして、ステップS201からステップS206までを実行する際、制御部10は被検索中間ベクトル群生成手段として機能する。 Then, the control unit 10 adds 1 to the variable TN (step S205). Next, the control unit 10 determines whether or not the value of the variable TN is larger than the number of tickets stored in the ticket DB (step S206). If the value of the variable TN is equal to or less than the number of tickets (step S206; No), the process returns to step S202. As a result, VTNs (searched intermediate vector group) having a TN of 1 to the number of tickets are stored in the storage unit 16. Steps S201 to S206 are also referred to as searched intermediate vector group generation steps. Then, when executing steps S201 to S206, the control unit 10 functions as a searched intermediate vector group generating means.

変数TNの値がチケット数より大きいなら(ステップS206;Yes)、データ取得部11は、検索処理の開始が指示された時に担当者等から示された検索チケットのタイトル及び本文(文章とする)を取得する(ステップS207)。ステップS207を実行する際、データ取得部11は検索データ取得手段として機能する。そして、特徴ベクトル生成部12は、文章からBoWベクトルを生成する(ステップS208)。BoWベクトルは検索チケット(検索データ)の特徴ベクトルなので検索特徴ベクトルとも呼ばれ、ステップS208は検索特徴ベクトル生成ステップとも呼ばれる。 If the value of the variable TN is larger than the number of tickets (step S206; Yes), the data acquisition unit 11 sets the title and body of the search ticket (sentence S) indicated by the person in charge or the like when the start of the search process is instructed. ) Is acquired (step S207). When executing step S207, the data acquisition unit 11 functions as a search data acquisition means. Then, the feature vector generation unit 12 generates a Bow S vector from the sentence S (step S208). Since the Bow S vector is a feature vector of the search ticket (search data), it is also called a search feature vector, and step S208 is also called a search feature vector generation step.

次に、制御部10は、オートエンコーダ14のエンコーダ141に、BoWベクトルを入力して、出力される中間ベクトル144を特徴量Vとして取得する(ステップS209)。 Next, the control unit 10, the encoder 141 of Autoencoder 14, enter the BoW S vector, to obtain an intermediate vector 144 is output as the feature quantity V S (step S209).

そして、制御部10は、記憶部16に保存されている特徴量VTN(TN=1〜チケット数)と特徴量Vとの間でコサイン類似度を計算し、コサイン類似度の高い順に所定の数(例えば10個)のチケットTN(特徴量Vとのコサイン類似度が高い特徴量VTNに対応するチケット)を抽出する(ステップS210)。ステップS210を実行する際、制御部10は、検索手段として機能する。また、ステップS210は、検索ステップとも呼ばれる。 Then, the control unit 10, the cosine similarity between the feature quantity V TN stored in the storage unit 16 and the (TN =. 1 to the number of tickets), wherein the amount V S calculated, predetermined with high cosine similarity order extracting a number of (e.g., 10) Ticket TN (ticket is cosine similarity between the feature quantity V S corresponding to the high feature quantity V TN) of (step S210). When executing step S210, the control unit 10 functions as a search means. Step S210 is also called a search step.

そして、制御部10は、抽出した類似チケットを出力して(ステップS211)、検索処理を終了する。この類似チケットの出力は、管理装置100にアクセスしている端末200の表示部23に表示(例えば端末200で動いているWebブラウザで表示)すること等によって行われる。 Then, the control unit 10 outputs the extracted similar ticket (step S211), and ends the search process. The output of this similar ticket is performed by displaying it on the display unit 23 of the terminal 200 accessing the management device 100 (for example, displaying it on the Web browser running on the terminal 200).

なお、上記検索処理のうち、ステップS201からステップS206までの処理は、検索されるチケット(被検索データ)の中間ベクトルを生成する処理(被検索中間ベクトル群生成処理)であり、学習処理(図8)の後に一度実行すれば、その後の検索処理においては、再度実行する必要はない。被検索中間ベクトル群生成処理を行って、記憶部16に、被検索中間ベクトル群が保存されている状態の場合、検索処理は、ステップS201からステップS206をスキップして、ステップS207から開始される。 Of the above search processes, the processes from step S201 to step S206 are processes for generating intermediate vectors of the tickets to be searched (searched data) (searched intermediate vector group generation processing), and are learning processes (FIG. If it is executed once after 8), it is not necessary to execute it again in the subsequent search process. When the searched intermediate vector group generation process is performed and the searched intermediate vector group is stored in the storage unit 16, the search process skips steps S201 to S206 and starts from step S207. ..

以上、検索処理について説明した。以上説明したように、学習処理によってチケットDB及びフィードバックDBの情報に基づいて、オートエンコーダ14を学習させることにより、フィードバックが得られていない新規の検索チケットに対しても、エンコーダ141が出力する中間ベクトルの類似度を用いることによって、精度の高い類似チケット検索を行うことができる。担当者や管理者は、新規のチケットに類似する過去のチケットの情報が得られたら、当該過去のチケットに対して行われた対応策等を参照することができるので、今後の作業の参考にすることができる。 The search process has been described above. As described above, by learning the autoencoder 14 based on the information in the ticket DB and the feedback DB by the learning process, the encoder 141 outputs an intermediate even for a new search ticket for which no feedback has been obtained. By using the similarity of vectors, it is possible to perform a highly accurate similarity ticket search. When the person in charge or the manager obtains information on a past ticket similar to a new ticket, he / she can refer to the countermeasures taken for the past ticket, so that he / she can refer to future work. can do.

(変形例)
本発明は、上述した実施の形態に限定されるわけではなく、その他の種々の変更が可能である。例えば、プロジェクト管理システム1では、上記実施の形態で示した全ての技術的特徴を備えるものでなくてもよく、従来技術における少なくとも1つの課題を解決できるように、上記実施の形態で説明した一部の構成を備えたものであってもよい。また、下記の変形例それぞれについて、少なくとも一部を組み合わせても良い。
(Modification example)
The present invention is not limited to the above-described embodiment, and various other modifications are possible. For example, the project management system 1 does not have to have all the technical features shown in the above-described embodiment, and has been described in the above-described embodiment so as to solve at least one problem in the prior art. It may have a structure of parts. In addition, at least a part of each of the following modifications may be combined.

例えば、上述の実施の形態ではフィードバックの入力は図4に示すように、管理装置100によって抽出された所定の数のチケットの中からチェックボックスで入力する形態になっていた。しかし、フィードバックの入力はこれに限られない。例えば、管理装置100が抽出していないチケットであっても、担当者、管理者等が自ら見つけた類似チケットの情報をフィードバック可能にしてもよい。また、フィードバック時に、単に類似するという情報だけで無く、どの程度類似するのかの情報(例えば、「類似度高」、「類似度中」、「類似度低」等)も含めたフィードバックを可能にしてもよい。 For example, in the above-described embodiment, as shown in FIG. 4, the feedback input is in the form of inputting with a check box from a predetermined number of tickets extracted by the management device 100. However, feedback input is not limited to this. For example, even if the ticket is not extracted by the management device 100, the information of the similar ticket found by the person in charge, the manager, or the like may be fed back. In addition, at the time of feedback, it is possible to provide feedback including not only information that they are similar but also information on how similar they are (for example, "high similarity", "medium similarity", "low similarity", etc.). You may.

類似度のフィードバックも行える場合、フィードバックDB(図5)には、類似度の情報も含めるようにし、学習処理(図8)のステップS112でのパラメータ更新の際は、類似度の大きさに応じてパラメータの更新の度合いを修正するようにしてもよい。このようにすることで、管理装置100は、フィードバックの情報をより反映した学習を行えるようになり、検索処理(図10)において、担当者や管理者により納得のいく検索結果を出力できるようになる。 When feedback of similarity can be performed, the feedback DB (FIG. 5) also includes information on similarity, and when updating the parameters in step S112 of the learning process (FIG. 8), it depends on the magnitude of similarity. The degree of parameter update may be modified. By doing so, the management device 100 can perform learning that more reflects the feedback information, and can output a search result that is more convincing to the person in charge or the manager in the search process (FIG. 10). Become.

また、上述の実施の形態では、プロジェクト管理におけるチケットについて、類似チケットを検索するための特徴量の学習、及び、学習した特徴量に基づく類似チケットの検索、をそれぞれ行う管理装置100について説明した。しかし、本発明の適用範囲は類似チケットの検索に限られない。一般的に、文書データの情報と、文書データ間の類似度についてのフィードバック情報と、が格納されたシステムにおいて、ある文書に類似した文書を検索する場合には、上述した学習処理及び検索処理を適用することができる。例えば、ネットワーク上で質問すると誰かが回答を返してくれるようなQ&Aシステムに本発明を適用すれば、新規の質問文に類似する過去の質問文が検索可能になる。そして、当該過去の質問文に対する回答を参照することにより、当該新規の質問をした人にとっても参考になる情報を得ることができる。 Further, in the above-described embodiment, the management device 100 for learning the feature amount for searching for similar tickets and searching for similar tickets based on the learned feature amount for the ticket in the project management has been described. However, the scope of application of the present invention is not limited to the search for similar tickets. Generally, in a system in which information on document data and feedback information on the degree of similarity between document data are stored, when searching for a document similar to a certain document, the above-mentioned learning process and search process are performed. Can be applied. For example, if the present invention is applied to a Q & A system in which someone returns an answer when a question is asked on a network, past question sentences similar to a new question sentence can be searched. Then, by referring to the answers to the past question sentences, information that can be used as a reference for the person who asked the new question can be obtained.

なお、管理装置100及び端末200は、専用の装置によらず、通常のコンピュータを用いて実現可能である。例えば、コンピュータに上述のいずれかを実行するためのプログラムを格納した記録媒体から該プログラムをコンピュータにインストールすることにより、上述の処理を実行する管理装置100及び端末200を構成してもよい。また、複数のコンピュータが協働して動作することによって、1つの管理装置100又は端末200を構成しても良い。 The management device 100 and the terminal 200 can be realized by using an ordinary computer without using a dedicated device. For example, the management device 100 and the terminal 200 that execute the above-described processing may be configured by installing the program in the computer from a recording medium in which the program for executing any of the above is executed in the computer. Further, one management device 100 or a terminal 200 may be configured by operating a plurality of computers in cooperation with each other.

また、コンピュータにプログラムを供給するための手法は、任意である。例えば、通信回線、通信ネットワーク、通信システム等を介して供給しても良い。 Also, the method for supplying the program to the computer is arbitrary. For example, it may be supplied via a communication line, a communication network, a communication system, or the like.

また、上述の機能の一部をOS(Operating System)が提供する場合には、OSが提供する機能以外の部分をプログラムで提供すれば良い。 When the OS (Operating System) provides a part of the above-mentioned functions, a part other than the functions provided by the OS may be provided by a program.

1…プロジェクト管理システム、10,20…制御部、11…データ取得部、12…特徴ベクトル生成部、13…類似データ取得部、14…オートエンコーダ、15…更新部、16,21…記憶部、17,22…通信部、23…表示部、24…入力部、100…管理装置、101,201…CPU、102,202…RAM、103,203…ROM、104,204…ハードディスクドライブ、105,205…ネットワークカード、141…エンコーダ、142…デコーダ、143,143’…入力ベクトル、144,144’…中間ベクトル、145…出力ベクトル、146…第1の誤差、147…第2の誤差、200…端末、206…ディスプレイ、207…キーボード 1 ... project management system, 10, 20 ... control unit, 11 ... data acquisition unit, 12 ... feature vector generation unit, 13 ... similar data acquisition unit, 14 ... auto encoder, 15 ... update unit, 16, 21 ... storage unit, 17, 22 ... Communication unit, 23 ... Display unit, 24 ... Input unit, 100 ... Management device, 101, 201 ... CPU, 102, 202 ... RAM, 103, 203 ... ROM, 104, 204 ... Hard disk drive, 105, 205 ... network card, 141 ... encoder, 142 ... decoder, 143, 143'... input vector, 144, 144' ... intermediate vector, 145 ... output vector, 146 ... first error, 147 ... second error, 200 ... terminal , 206 ... Display, 207 ... Keyboard

Claims (9)

基準データを取得する基準データ取得手段と、
入力されたデータから特徴ベクトルを生成する特徴ベクトル生成手段と、
前記基準データに類似する類似データを取得する類似データ取得手段と、
前記特徴ベクトルを入力すると前記特徴ベクトルの次元数より低い次元数の中間ベクトルを生成するエンコーダと、前記中間ベクトルを入力すると前記特徴ベクトルと同じ次元数の出力ベクトルを生成するデコーダと、からなるオートエンコーダと、
前記オートエンコーダのパラメータを更新する更新手段と、
を備え、
前記更新手段は、
前記基準データを前記特徴ベクトル生成手段に入力して生成される第1の特徴ベクトルと、前記第1の特徴ベクトルを前記オートエンコーダに入力して生成される出力ベクトルと、の間の誤差である第1の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第1の更新処理と、
前記第1の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第1の中間ベクトルと、前記類似データを前記特徴ベクトル生成手段に入力して生成される第2の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第2の中間ベクトルと、の間の誤差である第2の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第2の更新処理と、
を行う学習装置。
Standard data acquisition means for acquiring standard data,
A feature vector generation means that generates a feature vector from the input data,
Similar data acquisition means for acquiring similar data similar to the reference data, and
An auto consisting of an encoder that generates an intermediate vector having a dimension number lower than the dimension number of the feature vector when the feature vector is input, and a decoder that generates an output vector having the same dimension number as the feature vector when the intermediate vector is input. With the encoder
An update means for updating the parameters of the autoencoder, and
With
The update means
It is an error between the first feature vector generated by inputting the reference data into the feature vector generating means and the output vector generated by inputting the first feature vector into the autoencoder. The first update process of updating the parameters of the autoencoder so that the first error becomes small, and
The first intermediate vector generated by inputting the first feature vector into the encoder of the autoencoder and the second feature vector generated by inputting the similar data into the feature vector generating means are referred to as the auto. A second update process for updating the parameters of the autoencoder so that the second error, which is an error between the second intermediate vector generated by inputting to the encoder of the encoder, becomes smaller.
Learning device to do.
前記更新手段は、前記第1の更新処理と前記第2の更新処理とを交互に繰り返し行うことにより、前記第1の誤差と前記第2の誤差とがともに小さくなるように前記オートエンコーダのパラメータを更新する、
請求項1に記載の学習装置。
The update means alternately repeats the first update process and the second update process, so that both the first error and the second error are reduced by the parameters of the autoencoder. To update,
The learning device according to claim 1.
前記類似データ取得手段は、1つの前記基準データに対して複数の前記類似データを取得し、
前記更新手段は、前記複数の前記類似データを用いて前記第2の更新処理を行う、
請求項1又は2に記載の学習装置。
The similar data acquisition means acquires a plurality of the similar data with respect to one reference data, and obtains a plurality of the similar data.
The update means performs the second update process using the plurality of similar data.
The learning device according to claim 1 or 2.
前記更新手段は、前記第1の誤差を自乗誤差を求めることにより算出し、前記第2の誤差をコサイン類似度を求めることにより算出する、
請求項1から3のいずれか1項に記載の学習装置。
The updating means calculates the first error by obtaining the square error, and calculates the second error by obtaining the cosine similarity.
The learning device according to any one of claims 1 to 3.
前記更新手段は、前記第1の誤差と前記第2の誤差との自乗和平均又は調和平均の値が最小になるように、前記第1の更新処理と前記第2の更新処理とを行う、
請求項1から4のいずれか1項に記載の学習装置。
The update means performs the first update process and the second update process so that the value of the square sum average or the harmonic mean of the first error and the second error is minimized.
The learning device according to any one of claims 1 to 4.
特徴ベクトルを入力すると前記特徴ベクトルの次元数より低い次元数の中間ベクトルを生成するエンコーダと、前記中間ベクトルを入力すると前記特徴ベクトルと同じ次元数の出力ベクトルを生成するデコーダと、からなるオートエンコーダの学習方法であって、
基準データから第1の特徴ベクトルを生成する第1の特徴ベクトル生成ステップと、
前記基準データと類似する類似データから第2の特徴ベクトルを生成する第2の特徴ベクトル生成ステップと、
前記オートエンコーダのパラメータを更新する更新ステップと、
を備え、
前記更新ステップでは、
前記第1の特徴ベクトル生成ステップで生成された前記第1の特徴ベクトルと、前記第1の特徴ベクトルを前記オートエンコーダに入力して生成される出力ベクトルと、の間の誤差である第1の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第1の更新処理と、
前記第1の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第1の中間ベクトルと、前記第2の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第2の中間ベクトルと、の間の誤差である第2の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第2の更新処理と、
を行う学習方法。
An autoencoder consisting of an encoder that generates an intermediate vector having a dimension number lower than the dimension number of the feature vector when a feature vector is input, and a decoder that generates an output vector having the same dimension number as the feature vector when the feature vector is input. Is a learning method of
The first feature vector generation step to generate the first feature vector from the reference data, and
A second feature vector generation step of generating a second feature vector from similar data similar to the reference data, and
An update step for updating the parameters of the autoencoder, and
With
In the update step
The first, which is an error between the first feature vector generated in the first feature vector generation step and the output vector generated by inputting the first feature vector into the autoencoder. The first update process of updating the parameters of the autoencoder so that the error becomes small, and
A first intermediate vector generated by inputting the first feature vector into the encoder of the autoencoder and a second intermediate vector generated by inputting the second feature vector into the encoder of the autoencoder. A second update process for updating the parameters of the autoencoder so that the second error, which is an error between the two, is reduced.
Learning method to do.
請求項6に記載の学習方法でパラメータを更新したオートエンコーダと、
入力されたデータから特徴ベクトルを生成する特徴ベクトル生成手段と、
検索される被検索データを前記特徴ベクトル生成手段に入力して生成される被検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである被検索中間ベクトルを生成することにより、前記被検索データの集合である被検索データ群から、前記被検索中間ベクトルの集合である被検索中間ベクトル群を予め生成する被検索中間ベクトル群生成手段と、
検索対象となる検索データを取得する検索データ取得手段と、
前記検索データを前記特徴ベクトル生成手段に入力して生成される検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである検索中間ベクトルと、前記被検索中間ベクトルと、の間のコサイン類似度に基づいて、前記被検索データ群の中から前記検索データに類似する前記被検索データを検索する検索手段と、
を備える検索装置。
An autoencoder whose parameters have been updated by the learning method according to claim 6.
A feature vector generation means that generates a feature vector from the input data,
By inputting the searched data to be searched into the feature vector generation means and generating the searched intermediate vector which is an intermediate vector generated by inputting the searched feature vector into the encoder of the auto encoder, the searched intermediate vector is generated. A search intermediate vector group generation means for generating in advance a search intermediate vector group, which is a set of search intermediate vectors, from a search data group, which is a set of search data.
Search data acquisition means to acquire search data to be searched, and
Between the search intermediate vector, which is an intermediate vector generated by inputting the search data into the feature vector generation means and the search feature vector generated by inputting the search feature vector into the encoder of the auto encoder, and the search intermediate vector. A search means for searching the searched data similar to the search data from the searched data group based on the cosine similarity of the above.
A search device equipped with.
請求項6に記載の学習方法でパラメータを更新したオートエンコーダによる検索方法であって、
検索される被検索データから生成される被検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである被検索中間ベクトルを生成することにより、前記被検索データの集合である被検索データ群から、前記被検索中間ベクトルの集合である被検索中間ベクトル群を予め生成する被検索中間ベクトル群生成ステップと、
検索対象となる検索データから検索特徴ベクトルを生成する検索特徴ベクトル生成ステップと、
前記検索特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される中間ベクトルである検索中間ベクトルと、前記被検索中間ベクトルと、の間のコサイン類似度に基づいて、前記被検索データ群の中から前記検索データに類似する前記被検索データを検索する検索ステップと、
を備える検索方法。
A search method using an autoencoder in which parameters are updated by the learning method according to claim 6.
By inputting the searched feature vector generated from the searched searched data into the encoder of the auto encoder and generating the searched intermediate vector which is the intermediate vector generated, the searched is a set of the searched data. A search intermediate vector group generation step that previously generates a search intermediate vector group that is a set of the search intermediate vectors from the search data group,
A search feature vector generation step that generates a search feature vector from the search data to be searched, and
In the search data group, based on the cosine similarity between the search intermediate vector, which is an intermediate vector generated by inputting the search feature vector into the encoder of the autoencoder, and the search intermediate vector. To search for the searched data similar to the search data from
Search method with.
コンピュータを、
基準データを取得する基準データ取得手段、
入力されたデータから特徴ベクトルを生成する特徴ベクトル生成手段、
前記基準データに類似する類似データを取得する類似データ取得手段、
前記特徴ベクトルを入力すると前記特徴ベクトルの次元数より低い次元数の中間ベクトルを生成するエンコーダと、前記中間ベクトルを入力すると前記特徴ベクトルと同じ次元数の出力ベクトルを生成するデコーダと、からなるオートエンコーダ、
前記オートエンコーダのパラメータを更新する更新手段、
として機能させるためのプログラムであって、
前記更新手段は、
前記基準データを前記特徴ベクトル生成手段に入力して生成される第1の特徴ベクトルと、前記第1の特徴ベクトルを前記オートエンコーダに入力して生成される出力ベクトルと、の間の誤差である第1の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第1の更新処理と、
前記第1の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第1の中間ベクトルと、前記類似データを前記特徴ベクトル生成手段に入力して生成される第2の特徴ベクトルを前記オートエンコーダのエンコーダに入力して生成される第2の中間ベクトルと、の間の誤差である第2の誤差が小さくなるように前記オートエンコーダのパラメータを更新する第2の更新処理と、
を行うプログラム。
Computer,
Reference data acquisition means for acquiring reference data,
Feature vector generation means, which generates a feature vector from the input data,
Similar data acquisition means for acquiring similar data similar to the reference data,
An auto consisting of an encoder that generates an intermediate vector having a dimension number lower than the dimension number of the feature vector when the feature vector is input, and a decoder that generates an output vector having the same dimension number as the feature vector when the intermediate vector is input. Encoder,
An update means for updating the parameters of the autoencoder,
It is a program to function as
The update means
It is an error between the first feature vector generated by inputting the reference data into the feature vector generating means and the output vector generated by inputting the first feature vector into the autoencoder. The first update process of updating the parameters of the autoencoder so that the first error becomes small, and
The first intermediate vector generated by inputting the first feature vector into the encoder of the autoencoder and the second feature vector generated by inputting the similar data into the feature vector generating means are referred to as the auto. A second update process for updating the parameters of the autoencoder so that the second error, which is an error between the second intermediate vector generated by inputting to the encoder of the encoder, becomes smaller.
Program to do.
JP2019050872A 2019-03-19 2019-03-19 Learning device, learning method, retrieval device, retrieval method and program Pending JP2020154514A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019050872A JP2020154514A (en) 2019-03-19 2019-03-19 Learning device, learning method, retrieval device, retrieval method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019050872A JP2020154514A (en) 2019-03-19 2019-03-19 Learning device, learning method, retrieval device, retrieval method and program

Publications (1)

Publication Number Publication Date
JP2020154514A true JP2020154514A (en) 2020-09-24

Family

ID=72559122

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019050872A Pending JP2020154514A (en) 2019-03-19 2019-03-19 Learning device, learning method, retrieval device, retrieval method and program

Country Status (1)

Country Link
JP (1) JP2020154514A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112351252A (en) * 2020-10-27 2021-02-09 重庆中星微人工智能芯片技术有限公司 Monitoring video coding and decoding device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160155136A1 (en) * 2014-12-02 2016-06-02 Fair Isaac Corporation Auto-encoder enhanced self-diagnostic components for model monitoring
JP2017054214A (en) * 2015-09-07 2017-03-16 ヤフー株式会社 Determination device, learning device, information distribution device, determination method, and determination program
JP2018148350A (en) * 2017-03-03 2018-09-20 日本電信電話株式会社 Threshold determination device, threshold level determination method and program
JP2018195012A (en) * 2017-05-16 2018-12-06 富士通株式会社 Learning program, leaning method, learning device, and conversion parameter creating method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160155136A1 (en) * 2014-12-02 2016-06-02 Fair Isaac Corporation Auto-encoder enhanced self-diagnostic components for model monitoring
JP2017054214A (en) * 2015-09-07 2017-03-16 ヤフー株式会社 Determination device, learning device, information distribution device, determination method, and determination program
JP2018148350A (en) * 2017-03-03 2018-09-20 日本電信電話株式会社 Threshold determination device, threshold level determination method and program
JP2018195012A (en) * 2017-05-16 2018-12-06 富士通株式会社 Learning program, leaning method, learning device, and conversion parameter creating method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112351252A (en) * 2020-10-27 2021-02-09 重庆中星微人工智能芯片技术有限公司 Monitoring video coding and decoding device
CN112351252B (en) * 2020-10-27 2023-10-20 重庆中星微人工智能芯片技术有限公司 Monitoring video coding and decoding device

Similar Documents

Publication Publication Date Title
CN108804641B (en) Text similarity calculation method, device, equipment and storage medium
US6327590B1 (en) System and method for collaborative ranking of search results employing user and group profiles derived from document collection content analysis
US7194466B2 (en) Object clustering using inter-layer links
US20080208836A1 (en) Regression framework for learning ranking functions using relative preferences
US9317533B2 (en) Adaptive image retrieval database
US20120284259A1 (en) Automated Generation of Ontologies
US20070196804A1 (en) Question-answering system, question-answering method, and question-answering program
US20080021891A1 (en) Searching a document using relevance feedback
US20140229476A1 (en) System for Information Discovery & Organization
CN111444320A (en) Text retrieval method and device, computer equipment and storage medium
US20120150861A1 (en) Highlighting known answers in search results
US20090281975A1 (en) Recommending similar content identified with a neural network
KR20160144384A (en) Context-sensitive search using a deep learning model
JP2012212455A (en) Ranking method and ranking system
US10613841B2 (en) Task UI layout representing semantical relations
US11500884B2 (en) Search and ranking of records across different databases
CA3169288A1 (en) Knowledge graph based reasoning recommendation system and method
CN110389999A (en) A kind of method, apparatus of information extraction, storage medium and electronic equipment
JP2020154514A (en) Learning device, learning method, retrieval device, retrieval method and program
US20160196266A1 (en) Inferring seniority based on canonical titles
WO2019085118A1 (en) Topic model-based associated word analysis method, and electronic apparatus and storage medium
CN112685389A (en) Data management method, data management device, electronic device, and storage medium
CN113571198A (en) Conversion rate prediction method, device, equipment and storage medium
US20160196619A1 (en) Homogenizing time-based seniority signal with transition-based signal
JP2011159100A (en) Successive similar document retrieval apparatus, successive similar document retrieval method and program

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20211109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20211109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230801