JP7519795B2 - Natural language processing device and program - Google Patents
Natural language processing device and program Download PDFInfo
- Publication number
- JP7519795B2 JP7519795B2 JP2020053959A JP2020053959A JP7519795B2 JP 7519795 B2 JP7519795 B2 JP 7519795B2 JP 2020053959 A JP2020053959 A JP 2020053959A JP 2020053959 A JP2020053959 A JP 2020053959A JP 7519795 B2 JP7519795 B2 JP 7519795B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- sentence
- search query
- word
- industry
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、テキストデータの検索技術に関する。 The present invention relates to a technology for searching text data.
さまざまな分野における情報収集の方法において、検索クエリとしてキーワードを入力してデータベースを検索することが広く行われている。一般的にキーワードはユーザの判断に基づいて選定されるため、ユーザのセンスによって設定される検索クエリは異なる。また、同義語や類義語が多くある場合、いずれの語を用いるかによって検索結果は異なってくる。 In a wide variety of fields, a common method of collecting information is to search a database by entering keywords as a search query. Keywords are generally selected based on the user's judgment, so the search queries set vary depending on the user's taste. Also, when there are many synonyms or similar words, the search results will differ depending on which words are used.
従来のキーワード検索で、目的に合ったテキストを抽出しようとする場合、人的要因に依存するため不確実な面がある。つまり、目的に合ったテキストを取り漏らしてしまうという網羅性不足の問題がある。 When trying to extract text that matches a particular purpose using conventional keyword searches, there is an uncertainty involved because it relies on human factors. In other words, there is a problem of incompleteness, which means that text that matches a particular purpose may be missed.
本発明は、上記課題認識に基づいて完成された発明であり、その主たる目的は、キーワード検索における網羅性の不足を補うことである。 The present invention was completed based on the recognition of the above problems, and its main purpose is to make up for the lack of comprehensiveness in keyword searches.
本発明のある態様における自然言語処理装置は、分類語に紐づけられる複数のセンテンスを管理するデータベースに関して、検索クエリを受け付ける第1受付部と、検索クエリの条件、または検索クエリの分散ベクトルと類似する分散ベクトルの分類語の条件に適合するセンテンスを検索する検索部と、を備えることを特徴とする。 A natural language processing device according to one aspect of the present invention is characterized in that it includes a first reception unit that receives a search query for a database that manages a plurality of sentences linked to classification terms, and a search unit that searches for sentences that meet the conditions of the search query or the conditions of classification terms whose variance vectors are similar to the variance vector of the search query.
本発明によれば、キーワード検索における網羅性の不足を補うことができる。 The present invention makes it possible to compensate for the lack of comprehensiveness in keyword searches.
図1は、本実施形態における検索システムネットワーク構成図である。
本実施形態における検索システムは、サーバ100とユーザ端末200を含む。ユーザ端末200は、ネットワーク(たとえば、インターネット、LANや専用線など)を介してサーバ100と接続する。サーバ100は企業データベース120を有している。
FIG. 1 is a diagram showing the configuration of a search system network in this embodiment.
The search system in this embodiment includes a
ユーザが企業データベース120で管理されている企業情報を検索する場合、ユーザ端末200においてユーザ操作によって検索クエリが入力され、その検索クエリがサーバ100へ送られる。そして、検索クエリに基づいて抽出された企業情報がユーザ端末200へ返され、ユーザ端末200に表示される。
When a user searches for company information managed in the
本実施形態では、分散表現モデルを使って検索機能を高める。分散表現モデルでは、単語を高い次元の実数ベクトルで表す。分散表現モデルは、自然言語の文章を構造化し大規模に集積したコーパスとよばれるデータベースに基づく学習処理によって得られる。この技術は、自然言語処理の分野においてよく知られている。分散表現モデルとして得られる単語の実数ベクトルを、分散ベクトルあるいは単語ベクトルということがある。以下では、単語ベクトルという。 In this embodiment, a distributed representation model is used to improve search functionality. In a distributed representation model, words are represented as high-dimensional real vectors. A distributed representation model is obtained by a learning process based on a database called a corpus, which is a large-scale collection of structured natural language sentences. This technology is well known in the field of natural language processing. The real vector of words obtained as a distributed representation model is sometimes called a distributed vector or word vector. Hereinafter, it will be referred to as a word vector.
代表的な例としてWord2vecが知られている。Word2vecでは、「近傍に出現する単語が似ている単語同士は意味的に近い」という前提に立ち、文において対象単語の近傍(たとえば前後5単語あるいは前後10単語)に出現する別の単語を探索するという問題を解く。ここでいう前後5単語とは、対象単語の5個前の単語から1個前までの単語と対象単語の1個後の単語から5個後までの単語の計10の単語の範囲のことである。学習手段としては、ニューラルネットワークが用いられる。大きなコーパスを用いた学習の過程で、近傍に出現する単語が似ている単語同士の単語ベクトルは、似た値を示すように変化する。 A well-known example is Word2vec. Word2vec works on the premise that "words that appear in close proximity are similar in meaning," and solves the problem of searching for other words that appear in the vicinity of a target word in a sentence (for example, five words before or ten words before it). The five words before and after here refer to a range of 10 words in total, including the word five before the target word and the word one after the target word and the word five after the target word. A neural network is used as a learning method. During the learning process using a large corpus, the word vectors of words that appear in close proximity and are similar change to show similar values.
分散表現モデルでは、単語ベクトルによって単語同士の類似関係を示すだけでなく、センテンスの類似関係も示すことができる。複数の単語を含むセンテンスにおいて、これらの単語の単語ベクトルからそのセンテンスの文ベクトルを生成することが行われている。あるセンテンスの文ベクトルと別のセンテンスの文ベクトルが近似する場合、これらのセンテンスは内容が近しいことを示している。この例で、分散表現モデルは、分散表現モデル記憶部130に格納されている。
In a distributed representation model, word vectors can indicate not only similarity between words, but also similarity between sentences. For a sentence containing multiple words, a sentence vector for the sentence is generated from the word vectors of these words. If the sentence vector of one sentence is similar to the sentence vector of another sentence, this indicates that the sentences are similar in content. In this example, the distributed representation model is stored in the distributed representation
本実施形態では、企業情報の事業内容センテンスに付随するタグのタグベクトルに基づいて検索クエリと関連が強いタグを選びだす。そして、検索クエリを補足する条件としてタグを表す文字列を用いる。 In this embodiment, tags that are highly relevant to the search query are selected based on the tag vectors of tags attached to the business content sentences of the company information. Then, character strings representing the tags are used as conditions that supplement the search query.
大まかな手順としては、準備フェーズと利用フェーズに分かれる。準備フェーズでは、従来技術を用いて企業データベース120に基づく分散表現モデルを生成する。つまり、企業データベース120にある単語の単語ベクトルを生成する。次に、企業データベース120で用いられているタグについてタグベクトルを生成して、分散表現モデルに加える。これにより、分散表現モデルをタグの表現にまで拡張する。
Roughly speaking, the procedure is divided into a preparation phase and an utilization phase. In the preparation phase, a distributed representation model based on the
利用フェーズでは、具体的な検索クエリを受け付けて、分散表現モデルを参照して検索クエリに関連するタグを選び出す。そして、そのタグの文字表現を検索条件として活用する。このとき、タグの文字表現を関連語句として選び出して、関連語句記憶部140に記憶させる。具体的処理については、以下で詳述する。
In the utilization phase, a specific search query is received, and tags related to the search query are selected by referring to the distributed representation model. The textual expressions of the tags are then used as search conditions. At this time, the textual expressions of the tags are selected as related phrases and stored in the related
図2は、企業テーブルのデータ構造図である。
企業テーブルは、企業データベース120において管理される。企業テーブルは、企業毎のレコードを有する。企業テーブルのレコードには、企業ID、企業名、事業内容センテンス、事業特性ワードID、主業種IDおよび副業種IDなどが設定されている。事業内容センテンスのフィールドには、一文のみが設定されてもよいし、複数の文が設定されてもよい。事業特性ワードと業種がタグに相当する。この例では、一つの企業につき、2つまで業種のタグを設定できるようになっている。業種のタグを1つしか設定しない場合には、主業種の方を使用する。企業テーブルは、準備フェーズの前に用意される。
FIG. 2 is a data structure diagram of the company table.
The company table is managed in the
図3は、事業特性ワードテーブルのデータ構造図である。
事業特性ワードテーブルは、企業データベース120において管理される。事業特性ワードテーブルは、事業特性ワード毎のレコードを有する。事業特性ワードテーブルのレコードには、事業特性ワードIDおよび事業特性ワードが設定される。事業特性ワードテーブルは、準備フェーズの前に用意される。
FIG. 3 is a data structure diagram of the business characteristic word table.
The business characteristic word table is managed in the
図4は、業種テーブルのデータ構造図である。
業種テーブルは、企業データベース120において管理される。業種テーブルは、業種毎のレコードを有する。業種テーブルのレコードには、業種IDおよび業種名が設定される。業種テーブルは、準備フェーズの前に用意される。
FIG. 4 is a data structure diagram of the business type table.
The business type table is managed in the
図5は、単語テーブルのデータ構成図である。
単語テーブルは、分散表現モデルに含まれる。単語テーブルは、単語毎のレコードを有する。単語テーブルのレコードには、単語および単語ベクトルが設定される。単語テーブルは、準備フェーズにおいて生成される。
FIG. 5 is a data structure diagram of the word table.
The word table is included in the distributed representation model. The word table has a record for each word. A word and a word vector are set in the record of the word table. The word table is generated in the preparation phase.
図6は、企業ベクトル記憶部のデータ構成図である。
企業ベクトルとは、企業の事業内容センテンス全体の分散表現ベクトルに相当する。企業ベクトルは、事業内容センテンスに含まれる単語の単語ベクトルから生成される。企業ベクトル記憶部は、分散表現モデル格納部130に含まれる。企業ベクトルは、準備フェーズにおいて算出される。企業ベクトルは、事業特性ワードベクトルおよび業種ベクトルの算出の基礎になる。
FIG. 6 is a data configuration diagram of the company vector storage unit.
The company vector corresponds to a distributed representation vector of the entire business description sentence of the company. The company vector is generated from the word vector of the words included in the business description sentence. The company vector storage unit is included in the distributed representation
図7は、事業特性ワードベクトル記憶部のデータ構成図である。
事業特性ワードベクトルは、事業特性ワードの実践的な意義を示す。事業特性ワードベクトルは、事業特性ワードが設定された企業の企業ベクトルから生成されるものであって、事業特性ワードに相当する単語(たとえば、「地域」)の単語ベクトルとは異なる。事業特性ワードが実際にどのような企業に設定されやすいかによってその意義が決まるという運用上の特性が、事業特性ワードベクトルによって数値化される。事業特性ワードベクトルは、準備フェーズにおいて算出される。
FIG. 7 is a data configuration diagram of the business characteristic word vector storage unit.
The business characteristic word vector indicates the practical meaning of the business characteristic word. The business characteristic word vector is generated from the company vector of the company in which the business characteristic word is set, and is different from the word vector of the word corresponding to the business characteristic word (e.g., "region"). The business characteristic word vector quantifies the operational characteristic that the meaning of the business characteristic word is determined by the type of company to which the business characteristic word is likely to be set. The business characteristic word vector is calculated in the preparation phase.
事業特性ワードベクトル記憶部は、事業特性ワードIDと事業特性ワードベクトルを対応付けて記憶する。事業特性ワードベクトル記憶部は、分散表現モデル格納部130に含まれる。事業特性ワードIDは、タグIDの例であり、事業特性ワードベクトルは、タグベクトルの例である。
The business characteristic word vector storage unit stores business characteristic word IDs and business characteristic word vectors in association with each other. The business characteristic word vector storage unit is included in the distributed representation
図8は、業種ベクトル記憶部のデータ構成図である。
業種ベクトルは、業種タグの実践的な意義を示す。業種ベクトルは、業種タグが設定された企業の企業ベクトルから生成されるものであって、業種名に相当する句(たとえば、「自動車販売業」)の意味ベクトルとは異なる。業種タグが実際にどのような企業に設定されやすいかによってその意義が決まるという運用上の特性が、業種ベクトルによって数値化される。業種ベクトルは、準備フェーズにおいて算出される。
FIG. 8 is a data configuration diagram of the business type vector storage unit.
The industry vector indicates the practical significance of the industry tag. The industry vector is generated from the company vector of the company to which the industry tag is set, and is different from the semantic vector of a phrase equivalent to the industry name (e.g., "automobile sales"). The industry vector quantifies the operational characteristic that the significance of an industry tag is determined by the type of company to which it is likely to be set in practice. The industry vector is calculated in the preparation phase.
業種ベクトル記憶部は、業種IDと業種ベクトルを対応付けて記憶する。業種ベクトル記憶部は、分散表現モデル格納部130に含まれる。業種IDは、タグIDの例であり、業種ベクトルは、タグベクトルの例である。
The industry vector storage unit stores an industry ID and an industry vector in association with each other. The industry vector storage unit is included in the distributed representation
図9は、検索クエリの受付画面図である。
検索クエリの受付画面は、サーバ100で生成され、ユーザ端末200において表示される。この受付画面は、検索クエリの入力領域300の他、スライダー302と、類似語の表示領域304と、事業特性ワードの表示領域306と、業種の表示領域308とを含む。
FIG. 9 is a diagram showing a screen for accepting a search query.
The search query reception screen is generated by the
類似語の表示領域304には、検索クエリとして入力された語句との類似度が基準値以上である類似語が表示される。類似語は、事業内容センテンスに含まれるすべての単語の中から選ばれる。この基準値を第1基準値という。事業特性ワードの表示領域306には、検索クエリとして入力された語句との類似度が基準値以上である事業特性ワードが表示される。この基準値を第2基準値という。事業特性ワードは、予め設定されている。その中から類似するものが選ばれる。業種の表示領域308には、検索クエリとして入力された語句との類似度が基準値以上である業種が表示される。この基準値を第3基準値という。業種も、予め設定されている。その中から類似するものが選ばれる。
The similar
スライダー302が示すスライダー値は、第1基準値、第2基準値および第3基準値を示す。この例では、スライダー値が最大値であり、第1基準値、第2基準値および第3基準値も最大値である。「自動車」との類似度が第1基準値以上の類似語、同じく第2基準値以上の事業特性ワードおよび同じく第3基準値以上の業種が存在せず、いずれも表示されない。この場合には、入力領域300に入力された検索クエリで検索が行われる。
The slider value indicated by the
図10は、検索結果画面に含まれる企業情報ボックスの図である。
図9の状態における検索結果として表示される企業情報ボックスを示している。事業内容センテンス、事業特性ワード名、主業種名および副業種名のテキストの中に、「自動車」を含む企業情報が企業データベース120から抽出される。抽出された企業情報に含まれる企業名が表示領域322に表示される。同じく事業内容センテンスが表示領域324に表示される。同じく事業特性ワードが表示領域326に表示される。同じく主業種が表示領域328に表示される。同じく副業種が表示領域330に表示される。この例以外にも「自動車」を含む企業情報があれば、検索結果画面においてボックス一覧として表示される。なお、検索結果画面は、検索クエリの受付画面の下方にならんで表示される。検索クエリが入力されると、自動的に検索が行われて検索結果画面が表示される。
FIG. 10 is a diagram of a company information box included in the search result screen.
The figure shows a company information box displayed as a search result in the state of FIG. 9. Company information containing "automobile" in the text of the business content sentence, business characteristic word name, main business name, and sub-business name is extracted from the
図11は、スライダー値を小さくしたときの検索クエリの受付画面図である。
ユーザがスライダー302を操作して、スライダー値を小さくすると、第1基準値、第2基準値および第3基準値が小さくなり、条件を満たす類似語、事業特性ワードおよび業種が現れる。
FIG. 11 is a diagram showing the search query reception screen when the slider value is decreased.
When the user operates the
たとえば、「自動車」の単語ベクトルと「バイク」の単語ベクトルとの類似度が、このときのスライダー値が示す第1基準値以上である。「バイク」の単語ベクトルと「中古」の事業特性ワードベクトルの類似度が、このときのスライダー値が示す第2基準値以上である。さらに、「バイク」の単語ベクトルと「自動車販売業」の業種ベクトルの類似度が、このときのスライダー値が示す第3基準値以上である。 For example, the similarity between the word vector of "automobile" and the word vector of "motorcycle" is equal to or greater than the first reference value indicated by the slider value at this time. The similarity between the word vector of "motorcycle" and the business characteristic word vector of "used" is equal to or greater than the second reference value indicated by the slider value at this time. Furthermore, the similarity between the word vector of "motorcycle" and the industry vector of "automobile sales" is equal to or greater than the third reference value indicated by the slider value at this time.
ここで出現した類似語、事業特性ワードおよび業種名は、企業情報の検索におけるOR条件として付加される。「バイク」、「中古」あるいは「自動車販売業」などを、事業内容センテンス、事業特性ワード名、主業種名および副業種名のテキストの中に含む企業情報が企業データベース120から抽出される。
The synonyms, business characteristic words, and industry names that appear here are added as OR conditions in the search for company information. Company information that includes terms such as "bikes," "used," or "automobile sales" in the text of the business description sentence, business characteristic word name, main industry name, and sub-industry name is extracted from the
図12は、スライダー値をさらに小さくしたときの検索クエリの受付画面図である。
ユーザがスライダー302を操作して、スライダー値をさらに小さくすると、第1基準値、第2基準値および第3基準値がさらに小さくなり、条件を満たす類似語、事業特性ワードおよび業種が増える。
FIG. 12 is a diagram showing the search query reception screen when the slider value is further reduced.
When the user operates the
これにより増加した「トラック」、「品質」あるいは「自動車製造業」なども、企業情報の検索におけるOR条件として付加される。 The resulting increased search terms, such as "trucks," "quality," and "automobile manufacturing," can now be added as OR conditions when searching for company information.
このように、スライダー302を操作することによって、検索クエリと関連の強さを調節して、検索条件に付加される類似語、事業特性ワードおよび業種を増減させる。それによって、企業情報の検索における網羅性を調節できる。上述の例では、順に網羅性が高まる。この動作について説明する。
In this way, by operating the
図13は、類似語リストのデータ構成図である。
利用フェーズにおいて検索クエリが入力されると、それに応じて類似語リストが生成される。類似語リストは、関連語句記憶部140に記憶される。類似語リストは、各単語に対応付けて、その単語と検索クエリの語句との類似度を記憶している。類似語リストは、類似度の降順にソートされている。
FIG. 13 is a data structure diagram of the synonym list.
When a search query is input in the utilization phase, a synonym list is generated accordingly. The synonym list is stored in the related
図11の例では、スライダー302の値が0.7であり、第1基準値も0.7であるので、類似語の「バイク」「タクシー」および「バス」が選別される。図12の例では、スライダー302の値が0.6であり、第1基準値も0.6であるので、類似語の「トラック」「交通」および「鉄道」が加わる。
In the example of FIG. 11, the value of the
図14は、事業特性ワードリストのデータ構成図である。
利用フェーズにおいて検索クエリが入力されると、それに応じて事業特性ワードリストが生成される。事業特性ワードリストは、関連語句記憶部140に記憶される。事業特性ワードリストは、各事業特性ワードに対応付けて、その事業特性ワードと検索クエリの語句との類似度を記憶している。事業特性ワードリストは、類似度の降順にソートされている。
FIG. 14 is a data configuration diagram of the business characteristic word list.
When a search query is input in the utilization phase, a business characteristic word list is generated accordingly. The business characteristic word list is stored in the related
図11の例では、第1基準値も0.7であるので、事業特性ワードの「中古」「修理」および「高級」が選別される。図12の例では、第1基準値が0.6であるので、事業特性ワードの「品質」「大衆」および「新品」が加わる。 In the example of FIG. 11, the first reference value is also 0.7, so the business characteristic words "used," "repaired," and "luxury" are selected. In the example of FIG. 12, the first reference value is 0.6, so the business characteristic words "quality," "popular," and "new" are added.
図15は、業種リストのデータ構成図である。
利用フェーズにおいて検索クエリが入力されると、それに応じて業種リストが生成される。業種リストは、関連語句記憶部140に記憶される。業種リストは、各業種に対応付けて、その業種と検索クエリの語句との類似度を記憶している。業種リストは、類似度の降順にソートされている。
FIG. 15 is a data configuration diagram of the business category list.
When a search query is input in the utilization phase, an industry list is generated in response to the input. The industry list is stored in the related
図11の例では、第1基準値が0.7であるので、業種の「自動車販売業」「自動車整備業」および「自動車レンタル業」が選別される。図12の例では、第1基準値が0.6であるので、業種の「自動車製造業」「輸送業」および「住宅販売」が加わる。 In the example of FIG. 11, the first reference value is 0.7, so the industries "automobile sales," "automobile maintenance," and "automobile rental" are selected. In the example of FIG. 12, the first reference value is 0.6, so the industries "automobile manufacturing," "transportation," and "home sales" are added.
図16は、図11の状態で検索結果画面に含まれる企業情報ボックスの図である。
この例では、検索クエリの語句に類似する事業特性ワード「高級」の文字列が、事業特性ワード名と一致するので、この企業情報が検索結果として表示される。なお、「高級」の文字列が、事業内容センテンス、主業種名あるいは副業種名に含まれる場合にもヒットする。つまり、事業内容センテンス、主業種名あるいは副業種名も探索範囲とする。ただし、事業内容センテンス、主業種名あるいは副業種名を探索範囲としなくてもよい。
FIG. 16 is a diagram showing the company information box included in the search result screen in the state of FIG.
In this example, the character string of the business characteristic word "luxury", which is similar to the search query, matches the business characteristic word name, so this company information is displayed as a search result. Note that a hit will also be made if the character string "luxury" is included in the business content sentence, main industry name, or sub-industry name. In other words, the business content sentence, main industry name, and sub-industry name are also within the search range. However, it is not necessary to include the business content sentence, main industry name, or sub-industry name in the search range.
図17は、図12の状態で検索結果画面に含まれる企業情報ボックスの図である。
この例では、検索クエリの語句に類似する業種「住宅販売業」の文字列が、主業種名と一致するので、この企業情報が検索結果として表示される。なお、「住宅販売業」の文字列が、事業内容センテンス、事業特性ワードあるいは主業種名に含まれる場合にもヒットする。つまり、事業内容センテンス、事業特性ワードあるいは副業種名も探索範囲とする。ただし、事業内容センテンス、事業特性ワードあるいは副業種名を探索範囲としなくてもよい。
FIG. 17 is a diagram showing the company information box included in the search result screen in the state of FIG.
In this example, the character string "home sales" for the business type, which is similar to the search query term, matches the main business type name, so this company information is displayed as a search result. Note that the character string "home sales" will also be hit if it is included in the business content sentence, business characteristic word, or main business type name. In other words, the business content sentence, business characteristic word, and sub-business name are also within the search range. However, it is not necessary to include the business content sentence, business characteristic word, or sub-business name in the search range.
これらの画面例に基づく運用例を示す。たとえば、自動車保険の新しい契約候補者を見つけたいと考えた保険業者が、この検索システムを利用することを想定する。保険業者は、最初に検索クエリとして「自動車」を入力して、図10の検索結果を得る。図10に示した自動車販売業者は、新規な取引ルートにはなりがたい。自動車販売業者を介して自動車保険を勧めることは、従来から広く行われているからである。 An example of operation based on these screen examples will be given. For example, assume that an insurance company wishing to find new contract candidates for automobile insurance uses this search system. The insurance company first inputs "automobile" as a search query and obtains the search results shown in Figure 10. The automobile dealers shown in Figure 10 are unlikely to be a new transaction route. This is because it has long been common to recommend automobile insurance through automobile dealers.
そこで、図11のようにスライダー302を操作して網羅性を高めて、再検索された図16の企業情報を得る。「レッドローズ」の企業情報は、「自動車」の文字列を含まないが、「自動車」と関連性が高い事業特性ワード「高級」を介して実質的に「自動車」と関連する。保険業者は、「レッドローズ」の事業内容を見て、「レッドローズ」が派遣するヘルパーが富裕層の顧客の高級車を運転している最中に事故を起こしたときの高額な賠償に備える可能性があると考える。そして、保険業者は、「レッドローズ」へ保険契約を提案できることに気が付く。
Therefore, the
次に、図12のようにスライダー302を操作してさらに網羅性を高めて、再検索された図17の企業情報を得る。「イエローレモン」の企業情報に「自動車」の文字列は含まれていないが、「自動車」と関連性が高い業務「住宅販売業」を介して実質的に「自動車」と関連がある。保険業者は、この事業内容を見て、駐車場付きの住宅を購入するのだから、入居者は必ず自動車を持っていると考える。また、地域の事情に詳しい業者を選ぶということは、入居者がその地域の交通事情に詳しくなく、知人も少ないと想像する。したがって、知らない地域で交通事故を起こして他の住人とトラブルになることが心配であるとすれば、保険に加入する動機になると気が付く。このようにして、どんどんビジネス拡大の糸口が見つかる。
Next, the search is further improved by manipulating
この例で、保険業者が「高級」や「住宅販売業」がビジネス拡大のキーとなるということに気がつくということは考え難い。しかし、本実施形態によれば、ありふれた「自動車」という単語から、目的の企業情報に出会えるようになる。 In this example, it is unlikely that an insurance company would realize that "luxury" or "home sales" would be key to expanding their business. However, with this embodiment, the common word "automobile" can be used to find the desired company information.
人間による説明文は表記ゆれが多く、人手で付与されたタグ情報は網羅性が担保されないことが多いため、本実施形態によって検索をサポートすることで網羅性を補完することができる。以下、処理の詳細について説明する。 Since human descriptions often vary in spelling and manually added tag information often does not guarantee comprehensiveness, this embodiment can supplement comprehensiveness by supporting searches. The details of the process are explained below.
図18は、サーバ100の機能ブロック図である。
サーバ100の各構成要素は、CPU(Central Processing Unit)および各種コプロセッサなどの演算器、メモリやストレージといった記憶装置、それらを連結する有線または無線の通信線を含むハードウェアと、記憶装置に格納され、演算器に処理命令を供給するソフトウェアによって実現される。コンピュータプログラムは、デバイスドライバ、オペレーティングシステム、それらの上位層に位置する各種アプリケーションプログラム、また、これらのプログラムに共通機能を提供するライブラリによって構成されてもよい。図示した各ブロックは、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
FIG. 18 is a functional block diagram of the
Each component of the
サーバ100は、データ格納部110、データ処理部150および通信部190を含む。通信部190は、ネットワークを介した通信処理を担当する。データ格納部110は各種データを格納する。データ処理部150は、通信部190により取得されたデータおよびデータ格納部110に格納されているデータに基づいて各種処理を実行する。データ処理部150は、通信部190およびデータ格納部110のインタフェースとしても機能する。
The
通信部190は、データを送信する送信部180とデータを受信する受信部170を含む。
送信部180は、各種画面データを送信する画面データ送信部182を含む。受信部170は、検索クエリ受信部172およびスライダー値受信部174を含む。検索クエリ受信部172は、検索クエリを受信する。スライダー値受信部174は、スライダー値を受信する。
The
The transmitting
データ処理部150は、モデル生成部152、企業ベクトル算出部154、事業特性ワードベクトル算出部156、業種ベクトル算出部158、画面データ生成部160および検索部162を含む。
モデル生成部152は、単語ベクトルを算出する分散表現モデル生成処理を実行する。企業ベクトル算出部154は、企業ベクトル算出処理を実行する。事業特性ワードベクトル算出部156は、事業特性ワードベクトル算出処理を実行する。業種ベクトル算出部158は、業種ベクトル算出処理を実行する。画面データ生成部160は、各種画面データを生成する。検索部162は、企業情報の検索を行う。
The data processing unit 150 includes a
The
データ格納部110は、企業データベース120、分散表現モデル格納部130および関連語句記憶部140を含む。
The
図19は、データ格納部110の機能ブロック図である。
企業データベース120は、企業テーブル格納部122、事業特性ワードテーブル格納部124および業種テーブル格納部126を含む。企業テーブル格納部122は、企業テーブル(図2)を格納する。事業特性ワードテーブル格納部124は、事業特性ワードテーブル(図3)を格納する。業種テーブル格納部126は、業種テーブル(図4)を格納する。
FIG. 19 is a functional block diagram of the
The
分散表現モデル格納部130は、単語テーブル格納部132、企業ベクトル記憶部134、事業特性ワードベクトル記憶部136および業種ベクトル記憶部138を含む。
単語テーブル格納部132は、単語テーブル(図5)を格納する。企業ベクトル記憶部134については、図6に関連して説明した。事業特性ワードベクトル記憶部136については、図7に関連して説明した。業種ベクトル記憶部138については、図8に関連して説明した。
The distributed representation
The word table storage unit 132 stores the word table (FIG. 5). The company
関連語句記憶部140は、類似語リスト記憶部142、事業特性ワードリスト記憶部144および業種リスト記憶部146を含む。
類似語リスト記憶部142は、類似語リスト(図13)を記憶する。事業特性ワードリスト記憶部144は、事業特性ワードリスト(図14)を記憶する。業種リスト記憶部146は、業種リスト(図15)を記憶する。
The related
The synonymous word
図20は、準備フェーズ処理の過程を示すフローチャート図である。
まず、モデル生成部152は、分散表現モデル生成処理を実行する。(S20)。分散表現モデル生成処理では、分散表現モデルとして単語テーブル(図5)が生成される。分散表現モデル生成処理については、図21に関連して後述する。
FIG. 20 is a flow chart showing the process of the preparation phase processing.
First, the
次に、企業ベクトル算出部154は、企業ベクトル算出処理を実行する。(S22)。企業ベクトル算出処理については、図22に関連して後述する。 Next, the company vector calculation unit 154 executes the company vector calculation process (S22). The company vector calculation process will be described later with reference to FIG. 22.
続いて、事業特性ワードベクトル算出部156は、事業特性ワードベクトル算出処理を実行する(S24)。事業特性ワードベクトル算出処理については、図23に関連して後述する。
Next, the business characteristic word
最後に、業種ベクトル算出部158は、業種ベクトル算出処理を実行する(S26)。業種ベクトル算出処理については、図24に関連して後述する。
Finally, the industry
図21は、分散表現モデル生成処理の過程を示すフローチャート図である。
モデル生成部152は、企業テーブルからコーパスを生成する(S30)。コーパスとは、自然言語の文章を構造化した大規模データである。コーパスは、データ格納部110に保持される。具体的には、モデル生成部152は、各企業の事業内容センテンスから抽出される文ごとに、形態素解析を行って分かち書き形式に変換する。分かち書きとは、単語の間を余白で空けて区切る文字列である。分かち書き形式のデータが、コーパスとなる。
FIG. 21 is a flow chart showing the process of generating a distributed representation model.
The
モデル生成部152は、コーパスを用いて単語ベクトルを生成する(S32)。具体的には、モデル生成部152は、たとえばWord2vecの学習処理によって、コーパスに含まれる各単語に関する単語ベクトルを求める。生成された単語ベクトルは、単語テーブル格納部132に格納される。そして、S22の処理へ戻る。
The
図22は、企業ベクトル算出処理の過程を示すフローチャート図である。
企業ベクトル算出部154は、企業毎に以下の処理を繰り返す(S40)。企業ベクトル算出部154は、この企業の事業内容センテンスに含まれる各文の文ベクトルを算出する(S42)。文に含まれる単語の単語ベクトルから、文ベクトルが生成される。生成方法は、例えば平均化である。つまり、文ベクトルは、単語ベクトルの平均ベクトルである。
FIG. 22 is a flow chart showing the process of the company vector calculation process.
The company vector calculation unit 154 repeats the following process for each company (S40). The company vector calculation unit 154 calculates the sentence vector of each sentence included in the business content sentence of this company (S42). A sentence vector is generated from the word vector of the words included in the sentence. The generation method is, for example, averaging. In other words, the sentence vector is the average vector of the word vectors.
企業ベクトル算出部154は、事業内容センテンスに含まれる各文の文ベクトルの平均を算出して、算出された平均ベクトルを企業ベクトルとする(S44)。企業ベクトル算出部154は、平均化以外の方法で、文ベクトルから企業ベクトルを生成してもよい。算出された企業ベクトルは、企業ベクトル記憶部134に記憶される。
The company vector calculation unit 154 calculates the average of the sentence vectors of each sentence included in the business content sentence, and sets the calculated average vector as the company vector (S44). The company vector calculation unit 154 may generate the company vector from the sentence vectors by a method other than averaging. The calculated company vector is stored in the company
まだ処理していない企業が残っていれば(S46のN)、企業ベクトル算出部154は、S40の処理へ戻る。すべての企業について処理が終われば(S46のY)、S24の処理へ戻る。 If there are companies that have not yet been processed (N in S46), the company vector calculation unit 154 returns to processing in S40. When processing has been completed for all companies (Y in S46), it returns to processing in S24.
図23は、事業特性ワードベクトル算出処理の過程を示すフローチャート図である。
事業特性ワードベクトル算出部156は、事業特性ワード毎に以下の処理を繰り返す(S50)。事業特性ワードベクトル算出部156は、企業テーブルを参照して、この事業特性ワードが設定されている企業を選出する(S52)。
FIG. 23 is a flow chart showing the process of calculating the business characteristic word vector.
The business characteristic word
事業特性ワードベクトル算出部156は、選出された企業ベクトルの平均ベクトルを算出して、算出された平均ベクトルを、この事業特性ワードの事業特性ワードベクトルとする(S54)。事業特性ワードベクトル算出部156は、平均化以外の方法で、企業ベクトルから事業特性ワードベクトルを生成してもよい。算出された事業特性ワードベクトルは、事業特性ワードベクトル記憶部136に記憶される。
The business characteristic word
まだ処理していない事業特性ワードが残っていれば(S56のN)、事業特性ワードベクトル算出部156は、S50の処理に戻る。すべての事業特性ワードについて処理
が終われば(S56のY)、S26の処理に戻る。
If there are any business characteristic words that have not been processed yet (N of S56), the business characteristic word
図24は、業種ベクトル算出処理の過程を示すフローチャート図である。
業種ベクトル算出部158は、業種毎に以下の処理を繰り返す(S60)。業種ベクトル算出部158は、企業テーブルを参照して、この業種が設定されている企業を選出する(S62)。
FIG. 24 is a flow chart showing the process of the business type vector calculation process.
The business type
業種ベクトル算出部158は、選出された企業ベクトルの平均ベクトルを算出して、算出された平均ベクトルを、この業種の業種ベクトルとする。業種ベクトル算出部158は、平均化以外の方法で、企業ベクトルから業種ベクトルを生成してもよい。算出された業種ベクトルは、業種ベクトル記憶部138に記憶される。
The industry
まだ処理していない業種が残っていれば(S66のN)、業種ベクトル算出部158は、S60の処理に戻る。すべての業種について処理が終われば(S66のY)、準備フェーズ処理を終える。
If there are industries that have not yet been processed (N in S66), the industry
図25は、利用フェーズ処理の過程を示すフローチャート図である。
検索クエリ受信部172が、検索クエリの受付画面を表示しているユーザ端末200から検索クエリを受信した場合には(S70のY)、画面データ生成部160は、リスト生成処理を実行する(S72)。リスト生成処理では、類似語リスト(図13)、事業特性ワードリスト(図14)および業種リスト(図15)が生成される。リスト生成処理に関しては、図26に関連して後述する。
FIG. 25 is a flow chart showing the process of the utilization phase processing.
When the search
次に、画面データ生成部160は、画面生成処理を実行する(S74)。画面生成処理では、検索クエリの受付画面に、類似語、事業特性ワードおよび業種が表示し直される。さらに企業情報の検索が行われて、検索結果の画面が表示される。画面生成処理に関しては、図27に関連して後述する。
Next, the screen
続いて、画面データ送信部182は、画面データ送信処理において、画面データをユーザ端末200へ送信する(S76)。そして、S70の処理に戻る。ユーザ端末200は、受信した画面データに基づいて、検索クエリの受付画面および検索結果の画面を表示する。
Then, in the screen data transmission process, the screen
スライダー値受信部174が、検索クエリの受付画面を表示しているユーザ端末200からスライダー値を受信した場合には(S78のY)、スライダー値に基づいて第1基準値、第2基準値および第3基準値を変更する。この例では、スライダー値をそのまま新たな第1基準値、新たな第2基準値および新たな第3基準値として用いる。
When the slider
第1基準値、第2基準値および第3基準値が変更されると、画面データ生成部160は、変更された第1基準値、第2基準値および第3基準値に基づいて、画面生成処理を実行する(S82)。さらに、画面データ送信部182は、画面データ送信処理において、生成し直した画面データを送信する(S84)。ユーザ端末200は、受信した画面データに基づいて、検索クエリの受付画面および検索結果の画面を表示する。そして、S70の処理に戻る。
When the first, second, and third reference values are changed, the screen
ユーザ端末200から終了指示を受け付ければ(S86のY)、利用フェーズ処理を終える。ユーザ端末200から終了指示を受け付けなければ、S70の処理へ戻る。
If an end instruction is received from the user terminal 200 (Y in S86), the usage phase processing ends. If an end instruction is not received from the
図26は、リスト生成処理の過程を示すフローチャート図である。
画面データ生成部160は、全単語について検索クエリとの類似度を算出する(S90)。検索クエリが単語であれば、その単語の単語ベクトルを検索クエリの意味ベクトルとする。検索クエリが句であれば、その句に含まれる単語の単語ベクトルから検索クエリの意味ベクトルを生成する。生成の方法は、たとえば平均化である。そして、各単語の単語ベクトルと検索クエリの意味ベクトルの類似度を求める。画面データ生成部160は、たとえばコサイン類似度を計算する。以下の類似度についても同様である。
FIG. 26 is a flow chart showing the process of list generation.
The screen
画面データ生成部160は、類似度が高い順に単語をソートして、類似語リストを生成する(S92)。生成された類似語リストは、類似語リスト記憶部142に記憶される。
The screen
画面データ生成部160は、全事業特性ワードについて検索クエリとの類似度を算出する(S94)。具体的には、画面データ生成部160は、各事業特性ワードの事業特性ワードベクトルと検索クエリの意味ベクトルの類似度を求める。
The screen
画面データ生成部160は、類似度が高い順に事業特性ワードをソートして、事業特性ワードリストを生成する(S96)。生成された事業特性ワードリストは、事業特性ワードリスト記憶部144に記憶される。
The screen
画面データ生成部160は、全業種について検索クエリとの類似度を算出する(S98)。具体的には、画面データ生成部160は、各業種の業種ベクトルと検索クエリの意味ベクトルの類似度を求める。
The screen
画面データ生成部160は、類似度が高い順に業種をソートして、業種リストを生成する(S100)。生成された業種リストは、業種リスト記憶部146に記憶される。そして、S74の処理へ戻る。
The screen
図27は、画面生成処理の過程を示すフローチャート図である。
画面データ生成部160は、第1基準値以上の類似度を有する類似語を、検索クエリの受付画面における類似語の表示領域304に配置する(S110)。画面データ生成部160は、第2基準値以上の類似度を有する事業特性ワードを、検索クエリの受付画面における事業特性ワードの領域306に配置する(S112)。さらに、画面データ生成部160は、第3基準値以上の類似度を有する業種を、検索クエリの受付画面における業種の領域308に配置する(S114)。
FIG. 27 is a flow chart showing the steps of the screen generation process.
The screen
画面データ生成部160は、これらの類似語、事業特性ワードおよび業種のOR条件で企業情報を検索する(S116)。たとえば、これらの類似語、事業特性ワードおよび業種を探索する文字列とする新たな検索クエリを生成して、この検索クエリをデータベース管理システム(DataBase Management System)に入力する。データベース管理システムは、各企業の企業情報(事業内容センテンス、事業特性ワード、主業種および副業種を表すテキストのセット)を比較対象として、該当する企業情報を選別する。データベース管理システムは、企業データベース120を管理し、企業データベース120に対する操作を行うソフトウェアである。
The screen
画面データ生成部160は、ヒットした企業情報を表示する企業情報ボックスを検索結果の画面に配置する(S118)。そして、S70の処理へ戻る。
The screen
[変形例]
検索クエリの受付画面に表示された類似語、事業特性ワードおよび業種のうち不要なものを削除できるようにしてもよい。ユーザ操作によって、不要な類似語、事業特性ワードまたは業種が指示されると、ユーザ端末200から類似語、事業特性ワードまたは業種の削除要求がサーバ100へ送信される。サーバ100の要求受信部(不図示)が削除要求を受信すると、削除部(不図示)は、類似語リスト、事業特性ワードリストまたは業種リストから不要な類似語、事業特性ワードまたは業種を消去する。そして、サーバ100は、改めてリスト生成処理、画面生成処理および画面データ送信処理を行う。
[Modification]
It may be possible to delete unnecessary synonymous words, business characteristic words, and industries displayed on the search query reception screen. When an unnecessary synonymous word, business characteristic word, or industry is specified by a user operation, a deletion request for the synonymous word, business characteristic word, or industry is transmitted from the
検索クエリの受付と連動して、自動的に企業情報の検索が行われる例を示したが、ユーザ操作による検索実行の指示を受け付けてから企業情報の検索が行われるようにしてもよい。 An example has been shown in which a search for company information is performed automatically in conjunction with the reception of a search query, but the search for company information may be performed after a user operation to perform a search is received.
画面データ生成部160は、検索クエリの受付画面において、類似語の隣に検索クエリと類似語との類似度を配置してもよい。画面データ生成部160は、検索クエリの受付画面において、事業特性ワードの隣に検索クエリと事業特性ワードとの類似度を配置してもよい。画面データ生成部160は、検索クエリの受付画面において、業種の隣に検索クエリと業種との類似度を配置してもよい。
The screen
検索クエリの受付画面および検索結果の画面が並べて表示される例を示したが、検索クエリの受付画面と検索結果の画面が切り替わって表示されてもよい。 An example has been shown in which the search query reception screen and the search result screen are displayed side by side, but the search query reception screen and the search result screen may be displayed in a switched manner.
サーバ100は、スライダー値を変換して、第1基準値、第2基準値および第3基準値を求めるようにしてもよい。また、第1基準値、第2基準値および第3基準値は、異なる値であってもよい。たとえば、画面データ生成部160は、スライダー値と相関するように第1基準値、第2基準値および第3基準値を算出する。画面データ生成部160は、スライダー値に第1係数を乗じて、第1基準値を求めてもよい。画面データ生成部160は、スライダー値に第2係数を乗じて、第2基準値を求めてもよい。画面データ生成部160は、スライダー値に第3係数を乗じて、第3基準値を求めてもよい。
The
ベクトルの平均化において、例えばTF-IDF(Term Frequency-Inverse Document Frequency)のような評価指標を用いて、元となる単語ベクトル毎、句ベクトル毎あるいは文ベクトル毎などに重みづけを行ってもよい。 When averaging vectors, weighting may be performed for each original word vector, phrase vector, or sentence vector, for example, using an evaluation index such as TF-IDF (Term Frequency-Inverse Document Frequency).
企業情報を検索する例を示したが、他の種類の情報を検索するようにしてもよい。たとえば、電子商取引のサイトにおいて商品情報を検索する場合に、商品紹介センテンスに付随する商品分類のタグや商品特性のタグについて、商品分類ベクトルや商品特性ベクトルを算出してもよい。そして、検索クエリに類似する商品分類ベクトルや商品特性ベクトルを使って検索条件を補足するようにしてもよい。 Although an example of searching for corporate information has been given, other types of information may also be searched for. For example, when searching for product information on an e-commerce site, product classification vectors and product characteristic vectors may be calculated for product classification tags and product characteristic tags associated with product introduction sentences. Then, the search conditions may be supplemented using product classification vectors and product characteristic vectors similar to the search query.
たとえば、特許文献閲覧のサイトにおいて特許文献を検索する場合に、特許文献に付随する特許分類のタグについて、特許分類ベクトルを算出してもよい。そして、検索クエリに類似する特許分類ベクトルを使って検索条件を補足するようにしてもよい。 For example, when searching for patent documents on a patent document viewing site, patent classification vectors may be calculated for the patent classification tags associated with the patent documents. Then, patent classification vectors similar to the search query may be used to supplement the search criteria.
たとえば、SNS(Social Networking Service)の投稿サイトにおいて投稿記事を検索する場合に、投稿記事に付随するハッシュタグのような記事分類タグについて、記事分類ベクトルを算出してもよい。そして、検索クエリに類似する記事分類ベクトルを使って検索条件を補足するようにしてもよい。 For example, when searching for posted articles on a posting site of a social networking service (SNS), an article classification vector may be calculated for an article classification tag such as a hashtag that is attached to the posted article. Then, the article classification vector similar to the search query may be used to supplement the search conditions.
なお、本発明は上記実施形態や変形例に限定されるものではなく、要旨を逸脱しない範囲で構成要素を変形して具体化することができる。上記実施形態や変形例に開示されている複数の構成要素を適宜組み合わせることにより種々の発明を形成してもよい。また、上記実施形態や変形例に示される全構成要素からいくつかの構成要素を削除してもよい。 The present invention is not limited to the above-described embodiment and modifications, and can be embodied by modifying the components without departing from the spirit of the invention. Various inventions may be formed by appropriately combining multiple components disclosed in the above-described embodiment and modifications. In addition, some components may be deleted from all the components shown in the above-described embodiment and modifications.
図28は、図11の状態で検索結果画面に含まれる企業情報ボックスの図である。
この例では、事業特性ワードが「迅速」であって、検索クエリの語句に類似する事業特性キーワード「中古」、「修理」および「高級」(図11)のいずれとも一致していない。しかし、そのうちの事業特性ワード「高級」の文字列が、事業内容センテンスに含まれるので、この企業情報が検索結果として表示される。「高級」の文字列が、事業内容センテンスに含まれる場合にもヒットすることは、図16に関連して上述したとおりである。
FIG. 28 is a diagram showing the company information box included in the search result screen in the state shown in FIG.
In this example, the business characteristic word is "quick", which does not match any of the business characteristic keywords "used", "repair", and "luxury" (FIG. 11) that are similar to the search query phrase. However, the character string of the business characteristic word "luxury" is included in the business content sentence, so this company information is displayed as a search result. As described above in relation to FIG. 16, a hit is also generated when the character string of "luxury" is included in the business content sentence.
100 サーバ、110 データ格納部、120 企業データベース、122 企業テーブル格納部、124 事業特性ワードテーブル格納部、126 業種テーブル格納部、130 分散表現モデル格納部、132 単語テーブル格納部、134 企業ベクトル記憶部、136 事業特性ワードベクトル記憶部、138 業種ベクトル記憶部、140 関連語句記憶部、142 類似語リスト記憶部、144 事業特性ワードリスト記憶部、146 業種リスト記憶部、150 データ処理部、152 モデル生成部、154 企業ベクトル算出部、156 事業特性ワードベクトル算出部、158 業種ベクトル算出部、160 画面データ生成部、162 検索部、170 受信部、172 検索クエリ受信部、174 スライダー値受信部、180 送信部、182 画面データ送信部、190 通信部、200 ユーザ端末、300 入力領域、302 スライダー、304 表示領域、306 表示領域、308 表示領域、320 企業情報ボックス、324 表示領域、326 表示領域、328 表示領域、330 表示領域 100 Server, 110 Data storage unit, 120 Company database, 122 Company table storage unit, 124 Business characteristic word table storage unit, 126 Industry table storage unit, 130 Distributed representation model storage unit, 132 Word table storage unit, 134 Company vector storage unit, 136 Business characteristic word vector storage unit, 138 Industry vector storage unit, 140 Related phrase storage unit, 142 Synonym list storage unit, 144 Business characteristic word list storage unit, 146 Industry list storage unit, 150 Data processing unit, 152 Model generation unit, 154 Company vector calculation unit, 156 Business characteristic word vector calculation unit, 158 Industry vector calculation unit, 160 Screen data generation unit, 162 Search unit, 170 Reception unit, 172 Search query reception unit, 174 Slider value reception unit, 180 Transmission unit, 182 Screen data transmission unit, 190 Communication unit, 200 User terminal, 300 Input area, 302 Slider, 304 Display area, 306 Display area, 308 Display area, 320 Company information box, 324 Display area, 326 Display area, 328 Display area, 330 Display area
Claims (5)
前記複数のセンテンスに含まれる単語の分散ベクトルを算出する第1算出部と、
各センテンスに含まれる単語の分散ベクトルを平均化することによって、当該センテンスの分散ベクトルを算出する第2算出部と、
同じ分類語に紐づけられる各センテンスの分散ベクトルを平均化することによって、当該分類語の分散ベクトルを算出する第3算出部と、
前記検索クエリの分散ベクトルと類似する分散ベクトルの分類語の文字列がセンテンスの文字列に含まれる条件に適合する前記センテンスを検索する検索部と、を備え、
前記分類語の前記分散ベクトルは、前記事業特性ワードの意義を表す事業特性ワードベクトル及び前記業種の意義を表す業種ベクトルのうちの少なくとも一方であることを特徴とする自然言語処理装置。 A first reception unit that receives a search query for a database that manages a plurality of sentences linked to a classification term that is at least one of a business characteristic word and an industry type related to a company;
a first calculation unit that calculates variance vectors of words included in the plurality of sentences;
a second calculation unit that calculates a variance vector of each sentence by averaging variance vectors of words included in the sentence;
a third calculation unit that calculates a variance vector of the classification term by averaging the variance vectors of each sentence associated with the same classification term;
A search unit that searches for a sentence that satisfies a condition that a character string of a classification term of a variance vector similar to a variance vector of the search query is included in the character string of the sentence ,
The natural language processing apparatus according to claim 1, wherein the variance vector of the classification term is at least one of a business characteristic word vector representing the meaning of the business characteristic word and an industry vector representing the meaning of the industry .
調整された前記基準値に基づいて、前記検索クエリの前記分散ベクトルと類似する前記分散ベクトルの前記分類語を抽出する抽出部と、をさらに備えることを特徴とする請求項1に記載の自然言語処理装置。 a second reception unit that receives an instruction to adjust a reference value related to the similarity between the variance vectors;
The natural language processing device according to claim 1 , further comprising an extraction unit that extracts the classification terms of the variance vectors similar to the variance vector of the search query based on the adjusted reference value.
センテンスに紐づく前記分類語の文字列に前記検索クエリの文字列が含まれる条件に適合する前記センテンスを検索する検索部と、を備えることを特徴とする自然言語処理装置。 A first reception unit that receives a search query for a database that manages a plurality of sentences linked to a classification term that is at least one of a business characteristic word and an industry type related to a company;
A natural language processing apparatus comprising: a search unit that searches for the sentence that meets a condition that a character string of the search query is included in a character string of the classification term linked to the sentence .
前記複数のセンテンスに含まれる単語の分散ベクトルを算出する機能と、
各センテンスに含まれる単語の分散ベクトルを平均化することによって、当該センテンスの分散ベクトルを算出する機能と、
同じ分類語に紐づけられる各センテンスの分散ベクトルを平均化することによって、当該分類語の分散ベクトルを算出する機能と、
前記検索クエリの分散ベクトルと類似する分散ベクトルの分類語の文字列がセンテンスの文字列に含まれる条件に適合する前記センテンスを検索する機能と、を情報処理装置に発揮させ、
前記分類語の前記分散ベクトルは、前記事業特性ワードの意義を表す事業特性ワードベクトル及び前記業種の意義を表す業種ベクトルのうちの少なくとも一方であることを特徴とするプログラム。 A function of accepting a search query for a database that manages a plurality of sentences linked to a classification term that is at least one of a business characteristic word and an industry type related to a company ;
A function of calculating variance vectors of words included in the plurality of sentences;
A function of calculating the variance vector of each sentence by averaging the variance vectors of the words contained in the sentence;
A function for calculating the variance vector of a classification term by averaging the variance vectors of each sentence associated with the same classification term;
a function of searching for a sentence that satisfies a condition that a character string of a classification term of a variance vector similar to a variance vector of the search query is included in the character string of the sentence ;
The program, characterized in that the variance vector of the classification word is at least one of a business characteristic word vector representing the meaning of the business characteristic word and an industry vector representing the meaning of the industry .
センテンスに紐づく前記分類語の文字列に前記検索クエリの文字列が含まれる条件に適合する前記センテンスを検索する機能と、を情報処理装置に発揮させることを特徴とするプログラム。 A function of accepting a search query for a database that manages a plurality of sentences linked to a classification term that is at least one of a business characteristic word and an industry type related to a company ;
A program that causes an information processing device to perform a function of searching for the sentence that meets the condition that the string of the classification word linked to the sentence contains the string of the search query.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020053959A JP7519795B2 (en) | 2020-03-25 | 2020-03-25 | Natural language processing device and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020053959A JP7519795B2 (en) | 2020-03-25 | 2020-03-25 | Natural language processing device and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2021157220A JP2021157220A (en) | 2021-10-07 |
| JP7519795B2 true JP7519795B2 (en) | 2024-07-22 |
Family
ID=77917738
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020053959A Active JP7519795B2 (en) | 2020-03-25 | 2020-03-25 | Natural language processing device and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7519795B2 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009043051A (en) | 2007-08-09 | 2009-02-26 | Ntt Advanced Technology Corp | Text processing method and apparatus |
| JP2014102626A (en) | 2012-11-19 | 2014-06-05 | Ipros Corp | Recommendation device, program, and method |
| JP2019046019A (en) | 2017-08-31 | 2019-03-22 | ヤフー株式会社 | INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING PROGRAM |
| JP2019211974A (en) | 2018-06-04 | 2019-12-12 | 株式会社野村総合研究所 | Company analysis device |
-
2020
- 2020-03-25 JP JP2020053959A patent/JP7519795B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009043051A (en) | 2007-08-09 | 2009-02-26 | Ntt Advanced Technology Corp | Text processing method and apparatus |
| JP2014102626A (en) | 2012-11-19 | 2014-06-05 | Ipros Corp | Recommendation device, program, and method |
| JP2019046019A (en) | 2017-08-31 | 2019-03-22 | ヤフー株式会社 | INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING PROGRAM |
| JP2019211974A (en) | 2018-06-04 | 2019-12-12 | 株式会社野村総合研究所 | Company analysis device |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2021157220A (en) | 2021-10-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9454555B2 (en) | Management and storage of distributed bookmarks | |
| CN102253936B (en) | Method for recording access of user to merchandise information, search method and server | |
| US10204121B1 (en) | System and method for providing query recommendations based on search activity of a user base | |
| US20090327249A1 (en) | Intellegent Data Search Engine | |
| KR101098703B1 (en) | System and method for identifying related queries for languages with multiple writing systems | |
| CN101203856B (en) | System for generating relevant search queries | |
| US8296296B2 (en) | Method and apparatus for formatting information within a directory tree structure into an encyclopedia-like entry | |
| CN103377232B (en) | Headline keyword recommendation method and system | |
| CN101876981B (en) | A kind of method and device building knowledge base | |
| CN103218364B (en) | A kind of searching method and system | |
| US20010049674A1 (en) | Methods and systems for enabling efficient employment recruiting | |
| US11907999B2 (en) | System, method, and computer readable medium for automatic item rankings | |
| CN106326318B (en) | Searching method and device | |
| JP2014209376A (en) | Application of advertisement source and key word set in online commercial transaction platform | |
| US20120330948A1 (en) | Multi-part search result ranking | |
| Soliman et al. | Utilizing support vector machines in mining online customer reviews | |
| JP7519795B2 (en) | Natural language processing device and program | |
| JP7519793B2 (en) | Natural language processing device and program | |
| US7093233B1 (en) | Computer-implemented automatic classification of product description information | |
| US20220245697A1 (en) | Methods and apparatus for improving search retrieval | |
| CN121256150B (en) | A Smart Product Retrieval and Recommendation Method for Industry Databases | |
| Mohammadpur et al. | TechnoSearch: Improving e-Commerce Searches Using Product Category and Brand Based Ranking | |
| CN109949122A (en) | A kind of layered directory methods of exhibiting and system based on commodity multi-layer multidimensional property | |
| WO2023234865A1 (en) | A communication server, a method, a user device, and a system | |
| CN121412434A (en) | A question-and-answer based encyclopedia information analysis and product matching system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230302 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231221 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231226 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20240129 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240402 |
|
| 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: 20240618 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240709 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7519795 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |