JP4795452B2 - Search system and search program - Google Patents
Search system and search program Download PDFInfo
- Publication number
- JP4795452B2 JP4795452B2 JP2009110638A JP2009110638A JP4795452B2 JP 4795452 B2 JP4795452 B2 JP 4795452B2 JP 2009110638 A JP2009110638 A JP 2009110638A JP 2009110638 A JP2009110638 A JP 2009110638A JP 4795452 B2 JP4795452 B2 JP 4795452B2
- Authority
- JP
- Japan
- Prior art keywords
- dimension
- matching
- matching table
- target data
- user
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、検索システム及び検索プログラムに関し、例えば、対話の中で徐々に掘り下げた質問を繰り返すことにより、利用者のニーズや価値観を引き出し、多種多様でかつ大量のサービスやコンテンツの中から、利用者のニーズや価値観にマッチするものを検索する情報検索システムに適用し得るものである。 The present invention relates to a search system and a search program, for example, by extracting questions that are gradually delved into a dialogue, thereby extracting the needs and values of the user, from among a wide variety of services and contents, The present invention can be applied to an information search system that searches for items that match user needs and values.
IT(情報技術)を通じたコミュニケーションは、将来、テキスト情報から、個人の記憶する動画像や会話、放送映像や映画映像、商品情報やセンサー情報、生産履歴や交通履歴、刻一刻と変化する地理・気候情報等の様々な情報媒体に対象を広げ、その利用局面も、情報家電、車載端末、電子タグや、公共交通機関、企業の生産・流通現場、市場の店頭等の様々な局面へとダイナミック拡大していくことが予想される。 Communication through IT (information technology) will change from text information to moving images and conversations stored by individuals, broadcast images and movie images, product information and sensor information, production history and traffic history, Expanded to various information media such as climate information, and its usage phase is dynamic to various aspects such as information home appliances, in-vehicle terminals, electronic tags, public transportation, corporate production / distribution sites, market stores, etc. It is expected to expand.
その契機となるのは、現在のパソコンによるホームページの中だけのテキスト中心の情報検索ではない、個人の生活、ビジネス等のあらゆる局面での新たなコミュニケーションニーズに応える次世代の情報検索・解析技術である。 The trigger is not only text-based information retrieval on the current homepage on a personal computer, but next-generation information retrieval and analysis technology that meets new communication needs in every aspect of personal life and business. is there.
従来の情報検索・解析技術は、キーワードの入力を受け付け、ネットワーク上の情報から入力キーワードと一致する情報を検索し、ヒット件数が多い順から紹介するというのが一般的である。この他にも、入力キーワードと一緒に使われるキーワードも表示するキーワード自動拡張技術や、多くのユーザによる口コミ情報から商品等をレコメンドする技術等もある。 Conventional information search / analysis techniques generally accept keyword input, search information on the network that matches the input keyword, and introduce information in descending order of the number of hits. In addition, there are a keyword automatic expansion technology for displaying keywords used together with input keywords, a technology for recommending products and the like based on word-of-mouth information by many users, and the like.
しかしながら、上記のような技術によれば、当該利用者は入力キーワードを含む多くの情報を検索することができるが、これらの情報は、多くの他ユーザにより検索された結果を統計的にまとめた情報であって、当該利用者の真のニーズや希望する個別化された情報ではない。 However, according to the technique as described above, the user can search a lot of information including the input keyword, but these information statistically summarizes the results searched by many other users. Information, not the real needs or desired personalized information of the user.
また、情報過多の時代において、情報量の爆発的な増加に対応しきれず、情報選択基準を見失い易くなっている人が増えているという現状がある。自らの欲する情報や行動を決めきれないという問題を抱えるユーザに対して、単なる検索だけではなく、検索に至るまでの考え方をシステムが一緒に探るという情報検索・解析技術が求められている。 In an era of information overload, there is an increasing number of people who are unable to cope with the explosive increase in the amount of information and are apt to lose sight of information selection criteria. There is a need for information retrieval and analysis technologies that enable users who have the problem of not being able to decide the information and behavior they want to be able to search together with the system for thinking beyond search, not just search.
これに対して、本願発明者は、対話の中で、徐々に掘り下げた質問を繰り返すことにより、利用者のニーズや価値観を引き出すラダリング手法を活用し、利用者とシステムとが対話を繰り返すことにより、利用者が自ら表現することが困難であったサービスやコンテンツに関するニーズを引き出し、多種多様でかつ大量のサービスやコンテンツの中からこれにマッチングするものを検索する情報検索・解析技術を提案する(特願2008−036342、特願2008−036356)。 On the other hand, the inventor of the present application makes use of a laddering technique that draws out the needs and values of the user by repeating questions that are gradually delved into the dialogue, and the user and the system repeat the dialogue. To provide information retrieval and analysis technology that draws out the needs related to services and contents that were difficult for users to express themselves, and searches for a wide variety of services and contents that match them. (Japanese Patent Application No. 2008-036342, Japanese Patent Application No. 2008-036356).
この対話型検索システムでは、ドメイン知識に基づいて質問文を生成して利用者に提示し、利用者からの回答を意図解析によって意味レベルで解釈し、その利用者から引き出した情報及び予め検索対象解析(例えば、利用者の回答から解釈したいと解析結果)と、検索対象データを解析した結果とマッチングすることにより検索を実現している。 In this interactive search system, a question sentence is generated based on domain knowledge and presented to the user, the answer from the user is interpreted at a semantic level by intention analysis, information extracted from the user and the search target in advance A search is realized by matching an analysis (for example, an analysis result to be interpreted from a user's answer) and a result of analyzing the search target data.
ところで、対話型検索システムにおいて、徐々に掘り下げた質問を繰り返して利用者の真のニーズや希望を引き出すためには、(1)意思決定プロセスを支援すること、(2)ユーザ本人だけでは言語化しきれていない「気付き」の促し、(3)情報の選択基準を正確に認識することが重要となる。 By the way, in the interactive search system, in order to repeat the questions that are gradually digging deeply and draw out the true needs and hopes of users, (1) support the decision-making process, (2) verbalize only by the user himself / herself. It is important to promote unsatisfactory “awareness” and (3) accurately recognize information selection criteria.
つまり、対話型検索システムでは、利用者一人一人に応じたパーソナライズが動的に行われることや、利用者の発言に対して、寄り添い感を与える応答や対話の流れや、様々な状況変化に応じて質問すべき事柄の重要度は刻々と変化するから、これに応じて、質問文を提示することやマッチングを行うことが求められる。 In other words, in the interactive search system, personalization according to each user is performed dynamically, the response that gives a close feeling to the user's remarks, the flow of dialogue, and various situation changes Since the importance of matters to be asked changes every moment, it is required to present a question sentence and perform matching according to this.
非特許文献1には、オントロジーの意義に関して記載されている。オントロジーとは、特定の領域についての知識、複数の領域にまたがる知識、あるいは、汎用の知識を定義し、体系化したものである。ここで、知識とは、用語・語彙とその意味、他の用語・語彙との関係を示し、領域とは、医学、工学、不動産、自動車、金融などの分野を指す。
Non-Patent
オントロジーは、語の概念や、語と語の関係を体系的に表現することができるので、対話型検索システムにおいては、ドメイン毎にオントロジーで記述したものを、ドメイン知識として利用することが考えられる。 Ontology can systematically express the concept of words and the relationship between words, so in an interactive search system, it is possible to use what is described in the ontology for each domain as domain knowledge. .
これにより、オントロジーを利用した質問文を提示することができ、またこの質問文に対する回答を関連付けることができるので、利用者の回答(入力)を理解することができたり、それまでの対話のモデル化が簡易になる。 This makes it possible to present a question sentence that uses an ontology, and to associate an answer to this question sentence, so that the user's answer (input) can be understood, and the previous conversation model Simplification.
しかしながら、現行のオントロジーは、語の概念や語と語の関係を表す際、1つの観点からの語の概念や語と語の関係しか表現することができない。 However, current ontologies can only express word concepts and word-to-word relationships from one point of view when expressing word concepts and word-to-word relationships.
そのため、情報の選択基準を正確に解析し、ユーザの意図や状況に応じて選択基準を切り替ていき、その切り替えた選択基準を使って正しく検索することができないという問題が生じ得る。 Therefore, there is a problem that information selection criteria are accurately analyzed, the selection criteria are switched according to the user's intention and situation, and the search cannot be performed correctly using the switched selection criteria.
例えば、情報検索を行う者が人間であれば、ユーザからの情報を無視して、マッチングしない条件を提示することはない。例えば、求人側が求める資格・スキルに「Java経験3年以上」というものがあるとする。この場合に、ユーザがプログラム言語「Java」に関する保有資格を有していても、経験年数が3年以上の条件を満たしていなければ、その求人を提示することはない。 For example, if the person who searches for information is a human, information from the user is ignored and no matching condition is presented. For example, it is assumed that there is a qualification / skill that the job seeker requests is “3 years or more of Java experience”. In this case, even if the user has the possession qualification regarding the program language “Java”, the job offer is not presented unless the years of experience satisfy the condition of 3 years or more.
これは、人間が正しくユーザの意図を解析して、ユーザの意図や状況に応じて選択基準を切り替えているからである。しかし、従来の対話型検索システムは、ユーザの意図や状況に応じて動的に選択基準の切り替えることができない。 This is because a person correctly analyzes the user's intention and switches the selection criteria according to the user's intention and situation. However, the conventional interactive search system cannot dynamically switch the selection criteria according to the user's intention and situation.
本発明は、上記課題に鑑みて、多次元オントロジーという考え方を利用する。ユーザの回答から対象データを検索する場合、ユーザの回答が対象データのどの検索キーに対応するか、また、その対応度の大小を記入するマッチングテーブルが必要となる。このマッチングテーブルは、語と語の関係を示すネットワークとして表現され、オントロジーで表現可能である。したがって、このマッチングテーブルをオントロジーとみなして、マッチングテーブルをユーザの意図や状況に応じて動的に切り替えることにより、ユーザの発言からユーザの意図を正確に解析し、ユーザの意図や状況に応じて、検索に必要な条件や選択基準を動的に切り替えることができる検索システム及び検索プログラムを提供する。 In view of the above problems, the present invention utilizes the concept of multidimensional ontology. When the target data is searched from the user's answer, a matching table is required in which the search key of the target data corresponding to the user's answer and the degree of correspondence are entered. This matching table is expressed as a network indicating the relationship between words, and can be expressed by an ontology. Therefore, by considering this matching table as an ontology and dynamically switching the matching table according to the user's intention and situation, the user's intention is accurately analyzed from the user's remarks, and according to the user's intention and situation. A search system and a search program capable of dynamically switching conditions and selection criteria necessary for a search are provided.
かかる課題を解決するために、第1の本発明の検索システムは、検索する値と、この値に対応する対象データの値との対応関係及びその対応の重みを有するマッチングテーブルを用いて、検索対象とする対象データの中から、検索する値に対応する対象データを検索する検索システムにおいて、(1)検索対象とする1又は複数の対象データを格納する対象データ格納手段と、(2)条件の組み合わせという次元によって重みの異なる1又は複数の次元別マッチングテーブルを格納する次元別マッチングテーブル格納手段と、(3)条件なしの時の上記重みが設定された基本マッチングテーブルを格納する基本マッチングテーブル格納手段と、(4)次元毎の優先度を示す次元別優先度を格納する次元別優先度格納手段と、(5)検索する値が条件として設定されると、次元別マッチングテーブル格納手段から、条件に合う各次元別マッチングテーブルを取り出す次元別マッチングテーブル取出手段と、(6)取り出された各次元別マッチングテーブルのうち、次元優先度格納手段の次元優先度に従って次元優先度の低いものから順に、各次元別マッチングテーブルの内容を基本マッチングテーブルに上書きして、入力された値から対象データを検索する多次元マッチングテーブルを生成する多次元マッチングテーブル生成手段と、(7)多次元マッチングテーブル生成手段により生成された多次元マッチングテーブルを用いて、対象データ格納手段から検索する値にマッチする1又は複数の対象データを検索するマッチング手段とを備えることを特徴とする。 In order to solve such a problem, the search system of the first aspect of the present invention uses a matching table having a correspondence relationship between a value to be searched for and a value of target data corresponding to this value and a weight for the correspondence. In a search system for searching for target data corresponding to a value to be searched from target data to be searched, (1) target data storage means for storing one or a plurality of target data to be searched, and (2) conditions Dimensional matching table storage means for storing one or a plurality of dimensional matching tables having different weights depending on the combination of dimensions, and (3) a basic matching table for storing a basic matching table in which the above weights are set when there is no condition Storage means, (4) dimension-specific priority storage means for storing priority by dimension indicating priority for each dimension, and (5) value to be searched When set as a condition, a dimension-specific matching table extraction means for extracting each dimension-specific matching table from the dimension-specific matching table storage means, and (6) a dimension priority among the extracted dimension-specific matching tables. In order from the one with the lowest dimensional priority according to the dimensional priority of the storage means, the contents of the matching table for each dimension are overwritten on the basic matching table, and a multi-dimensional matching table for searching the target data from the input values is generated Dimension matching table generation means, and (7) matching means for searching for one or a plurality of target data that matches a value searched from the target data storage means using the multi-dimensional matching table generated by the multi-dimensional matching table generation means It is characterized by providing.
第2の本発明の検索プログラムは、検索する値と、この値に対応する対象データの値との対応関係及びその対応の重みを有するマッチングテーブルを用いて、検索対象とする対象データの中から、検索する値に対応する対象データを検索する検索プログラムにおいて、(1)検索対象とする1又は複数の対象データを格納する対象データ格納手段と、(2)条件の組み合わせという次元によって重みの異なる1又は複数の次元別マッチングテーブルを格納する次元別マッチングテーブル格納手段と、(3)条件なしの時の重みが設定された基本マッチングテーブルを格納する基本マッチングテーブル格納手段と、(4)次元毎の優先度を示す次元別優先度を格納する次元別優先度格納手段とを備え、コンピュータを、(5)検索する値が条件として設定されると、次元別マッチングテーブル格納手段から、条件に合う各次元別マッチングテーブルを取り出す次元別マッチングテーブル取出手段、(6)取り出された各次元別マッチングテーブルのうち、次元優先度格納手段の次元優先度に従って次元優先度の低いものから順に、各次元別マッチングテーブルの内容を基本マッチングテーブルに上書きして、入力された値から対象データを検索する多次元マッチングテーブルを生成する多次元マッチングテーブル生成手段、(7)多次元マッチングテーブル生成手段により生成された多次元マッチングテーブルを用いて、対象データ格納手段から検索する値にマッチする1又は複数の対象データを検索するマッチング手段として機能させることを特徴とする。 The search program of the second aspect of the present invention uses a matching table having a correspondence relationship between a value to be searched for and a value of target data corresponding to this value and a weight of the correspondence, from among target data to be searched. In a search program for searching for target data corresponding to a value to be searched, (1) target data storage means for storing one or more target data to be searched, and (2) different weights depending on the dimension of combination of conditions A dimension-specific matching table storage means for storing one or a plurality of dimension-specific matching tables; (3) a basic matching table storage means for storing a basic matching table in which a weight is set when there is no condition; Dimensional priority storing means for storing a priority by dimension indicating the priority of the computer, and (5) the value to be searched is a condition The dimension-specific matching table retrieving means for retrieving each dimension-specific matching table from the dimension-specific matching table storage means, and (6) the dimension priority storage among the retrieved dimension-specific matching tables. The multi-dimensional matching table that searches the target data from the input values by overwriting the basic matching table with the contents of the matching table for each dimension in order from the one with the lowest dimensional priority according to the dimension priority of the means. Matching table generation means, (7) Use as a matching means for searching for one or more target data that matches a value to be searched from the target data storage means, using the multidimensional matching table generated by the multidimensional matching table generation means It is characterized by making it.
本発明によれば、多次元オントロジーを利用することにより、ユーザの発言からユーザの意図を正確に解析し、ユーザの意図や状況に応じて、検索に必要な条件や選択基準を動的に切り替えることができる。 According to the present invention, by using a multidimensional ontology, the user's intention is accurately analyzed from the user's remarks, and the conditions and selection criteria necessary for the search are dynamically switched according to the user's intention and situation. be able to.
(A)第1の実施形態
以下では、本発明の検索システム及び検索プログラムの第1の実施形態について図面を参照しながら詳細に説明する。
(A) First Embodiment Hereinafter, a first embodiment of a search system and a search program of the present invention will be described in detail with reference to the drawings.
第1の実施形態では、ユーザに対して質問を繰り返してユーザの真のニーズや希望を引き出すラダリングを利用した対話型検索システムに本発明を適用した実施形態を例示して説明する。 In the first embodiment, an embodiment in which the present invention is applied to an interactive search system using laddering that repeatedly asks a user a question and derives the user's true needs and desires will be described as an example.
(A−1)多次元オントロジーの基本概念
第1の実施形態において利用するマッチングテーブルは、語と語の関係を表したネットワーク構造で表現することができるため、オントロジーとみなすことができる。したがって、第1の実施形態では、多次元オントロジーの概念をマッチングテーブルに応用する。
(A-1) Basic Concept of Multidimensional Ontology Since the matching table used in the first embodiment can be expressed by a network structure representing the relationship between words, it can be regarded as an ontology. Therefore, in the first embodiment, the concept of multidimensional ontology is applied to the matching table.
まず、この多次元オントロジーの概念を、図面を参照しながら説明する。 First, the concept of this multidimensional ontology will be described with reference to the drawings.
多次元オントロジーとは、多数の意味空間を多次元化して保持し、対話で得られるユーザのデータ又は対象データ/状況に応じて、使用する意味空間を瞬時に切り替えることができるオントロジーをいう。 The multi-dimensional ontology refers to an ontology that holds a large number of semantic spaces in a multi-dimensional manner and can instantaneously switch the semantic space to be used according to user data or object data / situation obtained through dialogue.
上述したように、現行のオントロジーは、ある1つの観点からしか語の概念や語と語の関係を表現していないので、現行のオントロジーを対話型検索システムに利用しても、静的なデータしか得られない。 As described above, the current ontology only expresses the concept of words and the relationship between words from a certain point of view. Therefore, even if the current ontology is used for an interactive search system, static data Can only be obtained.
そこで、第1の実施形態では、オントロジーを多次元化して保持できるようし、さらにユーザから引き出した情報が変化するたびに次元間を自動的に移動する仕組みを提案する。 Therefore, in the first embodiment, an ontology can be held in a multidimensional manner, and a mechanism for automatically moving between dimensions whenever the information extracted from the user changes is proposed.
これにより、対話で得られるユーザデータや状況に応じて瞬時に、意味空間を切り替えたり、対話のための情報を切り替えることができ、対話や検索がもつダイナミック性をシステムとして実現できる。また、次元間でデータを継承できるようにすることで、記述性とその省力性(最小限の記述)を同時に実現した。多次元化の最大の特徴である記述したいところだけを詳細に記述することができる。 As a result, the semantic space and the information for dialogue can be instantly switched according to user data and situations obtained by dialogue, and the dynamic nature of dialogue and search can be realized as a system. In addition, by enabling data to be inherited between dimensions, it was possible to achieve descriptiveness and labor saving (minimum description) at the same time. You can describe in detail only what you want to describe, which is the greatest feature of multidimensionalization.
図2及び図3は、多次元オントロジーの基本概念を説明する説明図である。図2及び図3では、第1の実施形態の対話型検索・解析システム1を職業紹介システムに利用した場合を例示する。
2 and 3 are explanatory diagrams for explaining the basic concept of the multidimensional ontology. 2 and 3 exemplify a case where the interactive search /
図2及び図3に示すように、多次元オントロジーは、それぞれプロパティが設定されている次元が、優先度に従って位置づけされており、ベースの次元と、ベース以外の特別な次元(以下、サブ次元という)とを有して構成される。 As shown in FIG. 2 and FIG. 3, in the multidimensional ontology, the dimension in which the property is set is positioned according to the priority, and the base dimension and a special dimension other than the base (hereinafter referred to as a sub dimension). ).
ベースの次元及びサブ次元には、それぞれ様々なオントロジーが定義されている。ベースの次元とは、最も優先度が低い次元であり、サブ次元に定義される全てのクラス及びプロパティが定義されているものである。また、サブ次元は、それぞれ必要なクラス及びプロパティだけが定義されており、条件の数が多いものほど優先度が高くなる。なお、条件の数が同数の場合には、例えば、開発者により予め優先度付けしておく。 Various ontologies are defined for each of the base dimension and sub-dimension. The base dimension is the dimension with the lowest priority, and defines all classes and properties defined in the sub dimensions. Further, only necessary classes and properties are defined for each sub dimension, and the higher the number of conditions, the higher the priority. When the number of conditions is the same, for example, priorities are assigned in advance by the developer.
例えば、図2及び図3では、ベースの次元を含めて6次元オントロジーを例示する。「業種=IT」のサブ次元、「職種=営業」のサブ次元、「職種=SE」のサブ次元はそれぞれ、条件が1個であり、条件数が同数であるが、「業種=IT」のサブ次元、「職種=営業」のサブ次元、「職種=SE」のサブ次元の順に優先度を高く設定したものとする。 For example, FIGS. 2 and 3 illustrate a 6-dimensional ontology including the base dimension. The sub-dimension of “Industry = IT”, the sub-dimension of “Occupation = Sales”, and the sub-dimension of “Occupation = SE” each have one condition and the same number of conditions, but “Industry = IT” Assume that priorities are set higher in the order of the sub-dimension, the “job type = sales” sub-dimension, and the “job type = SE” sub-dimension.
また「職種=営業&&業種=IT(この表記は「職種が営業であり、かつ、業種がITである」ことを示す、以下同様である)」のサブ次元、「職種=SE&&業種=IT」サブ次元はそれぞれ条件が2個であり、条件数が同数であるが、「職種=営業&&業種=IT」のサブ次元、「職種=SE&&業種=IT」の順に優先度を高く設定したものとする。 Also, a sub-dimension of “job type = sales && industry = IT (this notation indicates that the job type is sales and the industry is IT, and so on)”, “job type = SE && industry = IT” Each sub-dimension has two conditions and the same number of conditions. However, the sub-dimension of “Occupation = Sales && Industry = IT” and the priority set in the order of “Occupation = SE && Industry = IT”. To do.
従って、これらの次元を重ねると、「ベースの次元」は優先度が最も低いので、次元の優先度は、「ベースの次元」→「業種=IT」のサブ次元→「職種=営業」のサブ次元→「職種=SE」のサブ次元→「職種=営業&&業種」のサブ次元→「職種=SE&&業種=IT」サブ次元の順に高くなる。 Therefore, when these dimensions are overlapped, the “base dimension” has the lowest priority, so the priority of the dimension is “base dimension” → “industry = IT” sub dimension → “job type = sales” sub dimension. The dimension becomes higher in the order of sub-dimension of “job type = SE” → sub-dimension of “job type = sales && industry” → “job type = SE && industry = IT” sub-dimension.
また、図2及び図3において、各サブ次元上の丸は、各サブ次元で定義されているクラス及びプロパティを示す。 2 and 3, circles on each sub dimension indicate classes and properties defined in each sub dimension.
図2は、ユーザから「何も(データを)取得していない時」を示す。この場合、まだ対話が進行していない。このとき、ベース次元に定義されているクラス及びプロパティ(図2には図示しない)を用いて対話進行する。 FIG. 2 shows “when nothing (data) is acquired” from the user. In this case, the dialogue has not yet progressed. At this time, the dialogue proceeds using classes and properties (not shown in FIG. 2) defined in the base dimension.
対話が進行して、ユーザから「業種=IT」とする条件を取得したとする。この場合、図3に示すように、適用される次元は「業種=IT」のサブ次元となり、この「業種=IT」のサブ次元に定義されているクラス及びプロパティを用いた対話に切り替る。 It is assumed that the dialogue has progressed and a condition “business type = IT” has been acquired from the user. In this case, as shown in FIG. 3, the applied dimension is a sub-dimension of “industry = IT”, and the conversation is switched to a dialogue using classes and properties defined in the sub-dimension of “industry = IT”.
さらに対話が進行して、ユーザから「職業=営業かつ業種=IT」とする条件を取得したとする。この場合、図3に示すように、適用される次元は「職種=営業&&業種=IT」のサブ次元となり、この「職種=営業&&業種=IT」のサブ次元に定義されているクラス及びプロパティを用いた対話に切り替る。 Further, it is assumed that the dialog further progresses and the condition “occupation = sales and industry = IT” is acquired from the user. In this case, as shown in FIG. 3, the applied dimension is a sub-dimension of “Occupation = Sales && Industry = IT”, and the classes and properties defined in the sub-dimension of “Occupation = Sales && Industry = IT”. Switch to dialogue using.
ここで、対話に適用された次元は、「業種=IT」と「職業=営業かつ業種=IT」の2個のサブ次元であり、適用された各サブ次元のクラス及びプロパティは、ベースの次元に上書きされて継承される。このとき、優先度の高いサブ次元のクラス及びプロパティが記憶されるように、優先度が低いサブ次元から順に継承される。つまり、ベースの次元には、「業種=IT」のサブ次元のクラス及びプロパティが記憶されてから、「職業=営業かつ業種=IT」のサブ次元のクラス及びプロパティが上書きされる。 Here, the dimensions applied to the dialogue are two sub-dimensions of “industry = IT” and “occupation = sales and industry = IT”, and the class and property of each applied subdimension is the base dimension. It is overwritten by and inherited. At this time, the sub-dimensions with higher priorities are stored in order from the lower-priority sub-dimensions so that the sub-dimensional classes and properties are stored. That is, the sub-dimension class and property of “industry = IT” are stored in the base dimension, and then the sub-dimension class and property of “occupation = sales and industry = IT” are overwritten.
このように多次元オントロジーを用いることにより、次元間でデータを継承することができ、マッチングテーブルにおいても、対象データとユーザデータの対応関係や重要度などの値を次元間で継承することが可能となる。 By using a multidimensional ontology in this way, data can be inherited between dimensions, and values such as correspondence and importance of target data and user data can also be inherited between dimensions in the matching table. It becomes.
(A−2)第1の実施形態の構成
以下では、第1の実施形態の対話型検索システムの全体構成について、図1を参照しながら説明する。
(A-2) Configuration of First Embodiment Hereinafter, the overall configuration of the interactive search system of the first embodiment will be described with reference to FIG.
図1において、第1の実施形態の対話型検索システム1は、対話管理部10、意図解析部20、ドメイン知識管理部30、マッチング部40、マッチング対象分析部50を少なくとも有して構成される。
In FIG. 1, the
対話型検索システム1は、ユーザにデータを提供するデータ提供サーバ80と接続しており、データ提供サーバ80が保持する対象データを取得し、マッチング対象分析部50の拡張対象データ54に格納する。
The
ユーザは、ブラウザ90を用いてWebサーバ70にアクセスすることで、対話型検索システム1を起動させる。なお、ユーザ側のインターフェースとしては、通信機能を有するPCや携帯端末や専用端末など広く適用することができるが、ユーザが発した音声をテキスト変換する音声合成・認識部等を備えるようにしてもよい。
The user starts the
対話管理部10は、検索を希望するユーザとの間の対話進行を管理するものであり、対話進行を制御する対話制御部11を有する。
The
対話制御部11は、ドメイン知識管理部30から多次元オントロジーを受け取り、この多次元オントロジーに基づいて、対話進行に係る質問文(システム発話文ともいう)を作成するものである。
The dialogue control unit 11 receives a multidimensional ontology from the domain
また、対話制御部11は、質問文に対するユーザからの回答文(ユーザ発話文ともいう)を意図解析部20に与えてユーザ発話文の内容を解析させるものである。なお、対話制御部11は、ユーザ発話文の解析結果を受け取ると、そのユーザ発話文の解析結果をユーザデータとして、マッチング対象分析部50の拡張ユーザデータ53に格納する。
Further, the dialogue control unit 11 gives an answer sentence (also referred to as a user utterance sentence) from the user to the question sentence to the
さらに、対話制御部11は、意図解析部20から意図解析結果を受け取ると、その意図解析結果をドメイン知識管理部30に与えて、対話進行に利用する多次元オントロジーを生成させ、ドメイン知識管理部30からの多次元オントロジーを利用して、次の質問文を決定して対話を進行させる。
Further, upon receiving the intention analysis result from the
また、対話制御部11は、マッチング部40に対してユーザのデータと対象データとのマッチングを指示するものである。このマッチングを指示するタイミングは、例えば、ユーザからのマッチング指示を受けたときや、各質問文に対する回答文が得られたときや、全ての質問項目が終了したときなどと種々のタイミングを設定することができる。 Further, the dialogue control unit 11 instructs the matching unit 40 to match user data and target data. Various timings for instructing the matching are set, for example, when a matching instruction is received from the user, when an answer sentence for each question sentence is obtained, or when all question items are completed. be able to.
意図解析部20は、対話制御部11から取得した質問文に対してユーザが回答したユーザ発話文を受け取り、ユーザ発話文の内容を解析するものである。また、意図解析部20は、解析した意図解析結果をオントロジー形式にして対話制御部11に与える。さらに、意図解析部20は、多次元意図解析処理として、ドメイン知識辞書の動的切替処理や解析対象文情報による動的切替処理を行うものである。
The
意図解析部20は、意図解析実行部21、意図解析用辞書22、ドメイン知識辞書マネージャ23を有する。
The
意図解析実行部21は、意図解析用辞書22を参照して、ユーザ発話文に対して形態素解析を行う形態素解析部211と、意図解析用辞書22を参照して、ユーザ発話文に対して構文解析を行う構文解析部212を有する。
The intention
意図解析実行部21は、ユーザ発話文に対して形態素解析や構文解析を行うことで、ドメイン知識DB32のプロパティ定義に定義されるクラスを取得し、取得したクラスをドメイン知識管理部30に与える。
The intention
意図解析用辞書22は、ユーザ発話文の内容を解析するための辞書群であり、例えば、形態素辞書(例えば、日本語形態素辞書)、構文辞書(例えば、日本語構文辞書)、ベース次元及び各次元のクラス定義から自動生成されたドメイン知識辞書等が該当する。 The intention analysis dictionary 22 is a dictionary group for analyzing the contents of a user utterance sentence. For example, a morpheme dictionary (for example, a Japanese morpheme dictionary), a syntax dictionary (for example, a Japanese syntax dictionary), a base dimension, and each dimension This includes domain knowledge dictionaries that are automatically generated from dimension class definitions.
ドメイン知識辞書マネージャ23は、ユーザデータ管理から拡張ユーザデータを受け取り、この拡張ユーザデータに応じて、辞書引きする次元別ドメイン辞書の優先順位を並べ替え、その並べ替えた次元別ドメイン辞書を、意図解析辞書22に設定するものである。
The domain
また、ドメイン知識辞書マネージャ23は、データ提供サーバ80からの対象データ(対象文情報)の解析結果を意図解析実行部21から受け取り、対象データの内容に応じて、辞書引きする次元別構文辞書の並べ替えを行い、この並べ替えをした次元別構文辞書を、意図解析辞書22に設定するものである。
Further, the domain
ドメイン知識辞書マネージャ23は、特徴抽出部231、条件並替部232、辞書設定部233を有する。
The domain
特徴抽出部231は、意図解析結果から次元の条件となる値が含まれている場合に、その次元条件の値を抽出するものである。条件並替部232は、特徴抽出部231が抽出した次元条件に対して、所定の優先順位に従って、次元別ドメイン辞書又は次元別構文辞書を並べ替えるものである。また、辞書設定部233は、条件並替部232により並べ替えられた次元別ドメイン辞書又は次元別構文辞書を意図解析用辞書22に設定するものである。
The
ドメイン知識管理部30は、ドメイン毎の多次元オントロジーを知識とするドメイン知識を管理するものである。ドメイン知識管理部30は、ドメイン知識マネージャ31、ドメイン知識DB32を有する。
The domain
ドメイン知識DB32には、多次元オントロジーを構築するためのベース次元及び各次元のプロパティ定義、クラス定義及び推論定義、多次元オントロジーを構成するための次元の条件、及び、次元の条件の優先度を定義する次元優先度定義テーブル、生成された多次元オントロジー、マッチングテーブルを格納するものである。
In the
ドメイン知識マネージャ31は、対話制御部11から意図解析結果を受け取り、意図解析結果から特徴を抽出して、ドメイン知識DB32のプロパティ定義及び次元優先度定義テーブルを参照しながら、多次元オントロジーを生成するものである。ドメイン知識マネージャ31は、生成した多次元オントロジーをドメイン知識DB32に格納するものである。
The
また、ドメイン知識マネージャ31は、マッチングテーブルを一種のオントロジーとみなし、多次元オントロジーを利用したマッチングテーブル(以下、多次元マッチングテーブルともいう)を生成するものである。マッチング部40は、この多次元マッチングテーブルを参照しながら、マッチング処理を行う。
Further, the
ドメイン知識管理部30のドメイン知識マネージャ31は、特徴抽出部311、条件照合部312、多次元オントロジー生成部313を有する。
The
特徴抽出部311は、ユーザ発話文の内容を解析した意図解析結果に、次元の条件となる特徴(次元条件にあたる値)がセットされているか否かを確認し、セットされている場合には、その特徴を抽出するものである。
The
ここで、ユーザデータ管理部51が管理するユーザデータDB53は、対話制御部11がユーザ発話から得られたユーザ情報を格納するものである。このユーザデータDB53には、ユーザ情報の格納場所(格納位置)を示すユーザデータパスと、ユーザ情報の値を示すユーザデータクラス名とを保持する。
Here, the
条件照合部312は、特徴抽出部311が抽出した次元の値と次元優先度定義テーブルの内容を照合するものである。
The
多次元オントロジー生成部313は、次元優先度定義テーブルの優先度に従って、次元別オントロジーを基本オントロジーに重ねて、多次元オントロジー又は多次元マッチングテーブルを生成するものである。
The multidimensional
マッチング部40は、ユーザデータ管理部51に格納されるユーザデータと、対象データ管理部50に格納される対象データとのマッチングを行い、ユーザが希望する条件のマッチングを行うものである。
The matching unit 40 performs matching between user data stored in the user
マッチング部40は、対話制御部11から受け取った多次元マッチングテーブルをマッチャー42に与えたり、マッチャー42によりマッチングされた情報を対話制御部11に与えたりするマッチングマネージャ41と、ユーザデータと対象データとのマッチング処理を行うマッチャー42とを有する。
The matching unit 40 gives the multi-dimensional matching table received from the dialogue control unit 11 to the
マッチング対象分析部50は、マッチング対象とするユーザデータや対象データを格納するものであり、マッチングしやすい形に拡張し、拡張したユーザデータ及び対象データを格納するものである。マッチング対象分析部50は、ユーザデータ管理部51、対象データ管理部52、拡張ユーザデータ53、拡張対象データ54を有する。
The matching
(A−3)第1の実施形態の動作
次に、第1の実施形態の対話型検索システム1における意図解析システムの動作について図面を参照しながら説明する。
(A-3) Operation of the First Embodiment Next, the operation of the intention analysis system in the
(A−3−1)全体動作
まず、対話型検索システム1における全体の流れについて図面を参照しながら説明する。
(A-3-1) Overall Operation First, the overall flow in the
図4は、対話型検索システム1の全体の流れを示すフローチャートである。
FIG. 4 is a flowchart showing the overall flow of the
対話型検索システム1を利用するユーザは、ブラウザ90を用いて指定のURLにアクセスし、Webサーバ70を通じて対話型検索システム1を起動する。
A user who uses the
対話型検索システム1が起動すると、対話制御部11が、ドメイン知識マネージャ31を通じて、ドメイン知識DB32に格納されるプロパティ定義を参照し、現在のポインタを定義域に持つプロパティで最も優先度が高いプロパティを選択する。
When the
ここで、図5は、プロパティ定義の構成を示す構成図であり、図6は、プロパティ定義の一部をネットワーク形式で示した図である。 Here, FIG. 5 is a configuration diagram showing the configuration of the property definition, and FIG. 6 is a diagram showing a part of the property definition in a network format.
図5に示すプロパティ定義は、多次元のベースとなるプロパティ定義の例であり、例えば、「人間」を頂点として、各クラスのプロパティ関係を記述したものである。また、各プロパティが有する対話戦略やシステム発話に関するオプション情報を記述し、システムがどのような質問をどの順番でするかを規定する。 The property definition shown in FIG. 5 is an example of a property definition serving as a multidimensional base. For example, the property relationship of each class is described with “human” as a vertex. In addition, it describes option information related to dialogue strategies and system utterances that each property has, and defines what questions the system asks in what order.
図5において、プロパティ定義は、定義域、プロパティ、値域、オプション情報の項目を有する。また、オプション情報には、必須の質問かどうかを決定する度合いを示す重要度、質問の順序(すなわち対話の流れ)を決定する度合いを示す優先度が設けられている。 In FIG. 5, the property definition has items of a domain, a property, a value range, and option information. In addition, the option information is provided with an importance indicating the degree of determining whether the question is an essential question and a priority indicating the degree of determining the order of questions (that is, the flow of dialogue).
さらに、オプション情報には、システム1が生成する基本質問文が定義されている。なお、図5には、オプション情報には、質問文の前に生成するつなぎ文、意図解析結果に基づき生成する各種受け止め文など、システムが円滑に対話を進行するための各種機能が定義されている。
Further, the basic question text generated by the
また、オプション情報には、プロパティの種類が記述されており、例えば、グループ、取得対象がある。なお、ここではプロパティの種類を2種類の場合を例示したが、これに限定されることなく、設定することができる。 The option information describes the type of property, for example, a group and an acquisition target. In addition, although the case where there are two types of properties is illustrated here, the property can be set without being limited to this.
プロパティの種類が「取得対象」の場合、ドメイン知識マネージャ31は、基本質問文の項目に設定されている基本質問文を対話制御部11に与え、対話制御部11が、これをシステム発話文としてWebサーバ70を通じてユーザ側に送信する。
When the property type is “acquisition target”, the
一方、プロパティの種類が「グループ」の場合、ドメイン知識マネージャ31は、その値域クラスを定義域に持つプロパティを探索して選択する。このとき、この値域クラスを定義域とするプロパティが複数個ある場合、ドメイン知識マネージャ31は、オプション情報の優先度を見て、最も優先度が高いプロパティを選択するようにする。そして、この選択したプロパティが「取得対象」ならば、ドメイン知識マネージャ31は、その基本質問文を対話制御部11に与えて、対話制御部11が、これをシステム発話文としてユーザ側に送信する。
On the other hand, when the property type is “group”, the
このように、プロパティの種類がグループの場合に、優先度を利用することで、値域クラスを定義域に持つプロパティへの移行を実現することができる。 In this way, when the property type is a group, by using the priority, it is possible to realize the transition to the property having the range class in the domain.
図6は、図5に示すプロパティ定義の一部をネットワーク形式に展開した構成図である。 FIG. 6 is a configuration diagram in which a part of the property definition shown in FIG. 5 is expanded in a network format.
図6において、丸はクラス(すなわち、図5の定義域及び値域)を示し、クラスとクラスとの間を結ぶ線はプロパティを示す。 In FIG. 6, a circle indicates a class (that is, a definition area and a value area in FIG. 5), and a line connecting the classes indicates a property.
例えば、図6おいて、「人間」を頂点とし、プロパティを「パーソナリティ」とする場合の値域は「パーソナリティ」であり、プロパティを「強み」とする場合の値域は「仕事に活かせる強み」であり、プロパティを「転職をしようと思ったきっかけ」とする場合の値域は「転職理由」であり、プロパティを「仕事の経験」とする場合の値域は「現在の仕事」である。 For example, in FIG. 6, the range when “human” is the vertex and the property is “personality” is “personality”, and the range when the property is “strength” is “strength that can be used for work”. Yes, the value range when the property is “an opportunity to change jobs” is “reason for job change”, and the value range when the property is “work experience” is “current job”.
また、例えば、「パーソナリティ」を定義域とする場合にも、上記と同様に、例えばプロパティを「サイト訪問目的」とする場合の値域は「サイト訪問目的」である等の関係を持つ。また、「パーソナリティ」と「サイト訪問目的」等とはhas partの関係にあり、「サイト訪問目的」とユーザの回答である「適職を知りたい」とはis Aの関係にある。 Further, for example, when “personality” is defined as a domain, as in the above, for example, a value range when a property is “site visit purpose” has a relationship such as “site visit purpose”. Further, “personality” and “site visit purpose” have a has part relationship, and “site visit purpose” and a user's answer “I want to know a suitable job” have an is A relationship.
システム開始時の場合、プロパティ定義では、初期値として選択する定義域が設定されている。図5の第1段目の定義域クラス「人間」に対してポインタが設定されている。 When the system is started, the definition area to be selected as the initial value is set in the property definition. A pointer is set for the first domain domain class “human” in FIG.
従って、ドメイン知識マネージャ31は、初期のポインタが指す定義域クラス「人間」のプロパティで最も優先度が高い「パーソナリティ」とする場合の値域クラス「パーソナリティ」を見る。
Therefore, the
このとき、この値域クラス「パーソナリティ」のプロパティの種類は「グループ」であるから、ドメイン知識マネージャ31は、値域クラス「パーソナリティ」を定義域とするプロパティのうち、優先度が最も高い定義域クラス「パーソナリティ」−プロパティ「サイト訪問目的」−値域クラス「サイト訪問目的」のプロパティに選択する。
At this time, since the type of the property of the range class “personality” is “group”, the
そして、ドメイン知識マネージャ31は、このプロパティの基本質問文である「このサイトに来た目的を教えて下さい」を対話制御部11に与えて、対話制御部11がこの基本質問文をシステム発話としてユーザ側に送信する。このようにして、システムからの質問を開始する(ステップS101)。
Then, the
このシステム発話文を受信したユーザは、例えば「自分の適職が何かを知りたいので」と回答し、これを回答文としてWebサーバ70を通じて対話制御部11に送信する(ステップS102)。 The user who has received this system utterance sentence replies, for example, “I want to know what his / her suitable job is”, and transmits this as a reply sentence to the dialogue control unit 11 through the Web server 70 (step S102).
対話制御部11は、ユーザ発話文を受信すると、このユーザ発話文を意図解析部20に与える。意図解析部20では、意図解析実行部21が、意図解析用辞書22を用いて、ユーザ発話文に対して、形態素解析や構文解析を行い、その結果「適職を知りたい」というユーザの意図を解析し、その意図解析結果を対話制御部11に与える(ステップS103)。
When the dialog control unit 11 receives the user utterance, the dialogue control unit 11 gives the user utterance to the
このとき、意図解析部20の意図解析結果は、ドメイン知識マネージャ31に与えられ、ドメイン知識マネージャ31により多次元オントロジーが生成され、生成された多次元オントロジーがドメイン知識DB32に記憶される。
At this time, the intention analysis result of the
対話制御部11は、意図解析部20からの意図解析結果を受け取ると、ドメイン知識マネージャ31に対して次の質問の問い合わせを行い、次の質問を決定する(ステップS104)。
Upon receiving the intention analysis result from the
このとき、ドメイン知識マネージャ31は、プロパティ定義を参照し、値域クラス「サイト訪問」の次に優先度が高い、定義域クラス「パーソナリティ」−プロパティ「現在の職種」−値域クラス「職種」に移行して、基本質問文「現在のあなたの職種は何ですか?」を対話制御部11に与え、対話制御部11がこれをシステム発話文として決定してユーザ側に送信する(ステップS105)。
At this time, the
このように、次の質問文の提示とユーザからの回答文の受信とを繰り返し行うことで、システムとユーザとの間の対話が実現される。 In this way, the dialog between the system and the user is realized by repeatedly presenting the next question sentence and receiving the answer sentence from the user.
なお、検索処理は、対話制御処理(S104)内で処理され、ユーザからの検索要求を対話制御部11が受け取ると、検索結果が表示される(詳細は、A−3−4に記載)。 The search process is processed in the dialog control process (S104). When the dialog control unit 11 receives a search request from the user, the search result is displayed (details are described in A-3-4).
なお、ステップS104において、次の質問が決定されなかった場合、すなわち全ての質問が終了した場合、システムの動作は終了する。 If the next question is not determined in step S104, that is, if all the questions are finished, the operation of the system is finished.
(A−3−2)ドメイン知識マネージャ処理
次に、ドメイン知識マネージャ31における多次元オントロジーの作成処理の詳細について図面を参照しながら説明する。
(A-3-2) Domain Knowledge Manager Process Next, details of the multidimensional ontology creation process in the
ここでの例は、対話制御におけるドメイン知識マネージャ31の処理を説明するものであるが、本動作は、マッチングテーブルをオントロジーとみなして処理する場合も基本動作は同じである。
In this example, the process of the
図7は、ドメイン知識マネージャ31における多次元オントロジーの作成処理の動作を示すフローチャートである。
FIG. 7 is a flowchart showing the operation of the multi-dimensional ontology creation process in the
ドメイン知識マネージャ31は、対話制御部11から意図解析結果を受け取る。また、ドメイン知識マネージャ31は、当該ユーザのユーザデータをユーザデータ管理部51から取得する(ステップS201)。
The
例えば、対話制御部11からの意図解析結果が、「/人間/パーソナリティ/現在の職種=営業」とする。 For example, the intention analysis result from the dialogue control unit 11 is “/ human / personality / current job = sales”.
また、ユーザデータ管理部51からの当該ユーザのユーザデータが、図8に示す内容であるとする。図8に示すように、ユーザデータは、オントロジー形式で記述されている。図8の場合、当該ユーザのユーザデータとしては、プロパティ「ニックネーム」のクラスがクラス「○ちゃん」であり、同様に、プロパティ「転職活動のステージ」−クラス「履歴書送付」、プロパティ「ライフイベント」−クラス「リストラ・倒産」、プロパティ「現在の業種」−クラス「医薬品」、プロパティ「現在の職種」−クラス「営業」であるとする。
Further, it is assumed that the user data of the user from the user
なお、ユーザデータは、説明便宜上のため、ユーザの回答から得られたプロパティに対するクラスをデータとする場合を示すが、例えば、ユーザの回答クラスから推論された新たなクラスをデータとする等、ユーザデータを拡張した内容であってよい。 For the sake of convenience, the user data indicates a case where the class for the property obtained from the user's answer is used as the data. For example, the user data may be a new class inferred from the user's answer class. The contents may be expanded data.
ドメイン知識マネージャ31の特徴抽出部311が、ユーザデータと、ドメイン知識DB32に登録されている全ての次元の条件と照合し、条件に合う次元条件を抽出する(ステップS202)。つまり、特徴抽出部311は、ユーザデータに全ての次元の条件となる値が含まれているか否かを確認し、条件となる値がある場合には、その次元の条件となる値を抽出する。
The
例えば、ドメイン知識DB32に格納されている次元の条件として、「/人間/パーソナリティ/現在の職種=営業」、「/人間/パーソナリティ/現在の業種=医薬品」、「/人間/パーソナリティ/ライフイベント=リストラ・倒産&&/人間/パーソナリティ/現在の職種=営業」があるとする。
For example, as the dimension conditions stored in the
特徴抽出部311は、上記のような次元の条件とマッチングして、「/人間/パーソナリティ/現在の職種=営業」、「/人間/パーソナリティ/現在の業種=医薬品」、「/人間/パーソナリティ/ライフイベント=リストラ・倒産&&/人間/パーソナリティ/現在の職種=営業」という特徴をユーザデータから抽出する。
The
次に、条件照合部312は、特徴抽出部311が抽出した次元の条件となる値を、所定の優先度の高い順に並べ替え(ステップS203)、次元の条件となる値の有無を確認して、次元優先度定義テーブルに格納する(ステップS204)。
Next, the
このとき、例えば、次元の条件の数が多いものを優先度が高くする。また、次元の条件の数が同じ場合には、事前に次元毎の優先度を設定しておき、この優先度に基づいて並べ替えをする。 At this time, for example, the one with a large number of dimensional conditions is given higher priority. When the number of dimension conditions is the same, priorities for each dimension are set in advance, and rearrangement is performed based on the priorities.
例えば、特徴抽出部311が抽出した次元の条件の値のうち、「/人間/パーソナリティ/ライフイベント=リストラ・倒産&&/人間/パーソナリティ/現在の職種=営業」は条件数が2個であるから、最も優先度が高い。
For example, among the dimension condition values extracted by the
次に、「/人間/パーソナリティ/現在の職種=営業」と「/人間/パーソナリティ/現在の業種=医薬品」とは、次元の条件の数が1個であり、同数である。 Next, “/ person / personality / current job = sales” and “/ person / personality / current industry = pharmaceutical” have the same number of dimensional conditions.
そこで、条件照合部312は、例えば、図9に示す次元リストを参照して、各次元の条件の値の優先度を確認し、この次元リストに従って各次元の条件の値をソートする。
Therefore, for example, the
図9の次元リストでは、上に記述されているものほど優先度が高い。例えば、「/人間/パーソナリティ/ライフイベント」は、「/人間/パーソナリティ/現在の職種」よりも優先度が高い。また、次元を表すパスが同じ場合、「/人間/パーソナリティ/現在の職種=営業」は、「/人間/パーソナリティ/現在の職種=SE」よりも優先度が高い。 In the dimension list of FIG. 9, the priority is higher as it is described above. For example, “/ human / personality / life event” has a higher priority than “/ human / personality / current job”. If the paths representing the dimensions are the same, “/ person / personality / current job = sales” has a higher priority than “/ person / personality / current job = SE”.
従って、「/人間/パーソナリティ/現在の職種=営業」と「/人間/パーソナリティ/現在の業種=医薬品」について、条件照合部312は、「/人間/パーソナリティ/現在の職種=営業」が「/人間/パーソナリティ/現在の業種=医薬品」より優先度が高くなるように並べ替える。
Therefore, for “/ human / personality / current job = sales” and “/ human / personality / current industry = pharmaceutical”, the
その結果、図10に示すように、「/人間/パーソナリティ/ライフイベント=リストラ・倒産&&/人間/パーソナリティ/現在の職種=営業」、「/人間/パーソナリティ/現在の職種=営業」、「/人間/パーソナリティ/現在の業種=医薬品」の順にソートされる。 As a result, as shown in FIG. 10, “/ human / personality / life event = restructuring / bankruptcy && / human / personality / current job = sales”, “/ human / personality / current job = sales”, “/ Sorted in the order of “human / personality / current industry = pharmaceutical”.
次に、多次元オントロジー生成部313は、次元優先度定義テーブルの優先度に従って、次元別オントロジーを基本オントロジーに重ね合わせて多次元オントロジーを生成する(ステップS205)。
Next, the multidimensional
図11は、多次元オントロジーの生成処理を説明する説明図である。図11(A)は、ベース次元に定義されている職種クラス及びクラスオプションを示す。図11(B)は、「業種クラス=医薬品」の次元の職種クラス及びクラスオプションの定義を示す。 FIG. 11 is an explanatory diagram for explaining multidimensional ontology generation processing. FIG. 11A shows job class and class options defined in the base dimension. FIG. 11B shows the definition of occupation class and class option in the dimension of “industry class = pharmaceutical”.
多次元オントロジー生成部313は、図11(A)のベース次元に定義されている職種クラス及びクラスオプションに対して、図11(B)の「業種=医薬品」の次元の職種クラス及びクラスオプションの内容を上書きする。
The multi-dimensional
このとき、図11(A)のベース次元の職種クラスでは、クラス「職種」−クラス「営業」のオプションの受け止め文が「営業のお仕事をされているんですね。」定義されているが、ステップS205の上書きにより、クラス「職種」−クラス「営業」のオプションの受け止め文が「競争の激しい業界でも営業は大変でしょう。」に書き換えされる。 At this time, in the occupation class of the base dimension in FIG. 11 (A), the option acceptance sentence of the class “Occupation type” −Class “Sales” is defined as “You are doing sales work.” By overwriting step S205, the option acceptance sentence of class “job type” -class “sales” is rewritten to “sales business in a highly competitive industry.”
このように、多次元オントロジーによれば、ベース次元に定義されるクラスオプション定義の内容を変更することができる。これにより、例えばユーザの職種などに応じて適切な受け止め文を出力することができる。 Thus, according to the multidimensional ontology, the contents of the class option definition defined in the base dimension can be changed. Thereby, for example, an appropriate acceptance sentence can be output according to the job type of the user.
多次元オントロジー生成部313は、生成した多次元オントロジーを対話制御部11に出力する(ステップS206)。なお、この生成された多次元オントロジーは、ドメイン知識DB32に格納される。
The multidimensional
(A−3−3)対話型検索処理における対話制御処理
次に、対話型検索処理における対話制御処理ついて、図面を参照しながら詳細に説明する。
(A-3-3) Dialog Control Process in Interactive Search Process Next, the dialog control process in the interactive search process will be described in detail with reference to the drawings.
対話型検索処理における対話制御処理を行う前提として、ドメイン知識マネージャ31は、データ提供サーバ80から取得した対象データに対して、図7で説明した多次元オントロジー作成処理を行い、対象データの意図を解析し、拡張対象データ54に格納する。
As a premise for performing the dialog control process in the interactive search process, the
図12は、対話型検索処理における対話制御処理を示すフローチャートである。 FIG. 12 is a flowchart showing the dialogue control process in the interactive search process.
まず、意図解析部20において、ユーザ発話文に対する意図解析が行われ、その意図解析結果が対話制御部11に与えられると(ステップS301)、対話制御部11は、意図解析結果を拡張ユーザデータ53に格納する(ステップS302)。
First, the
例えば、対話制御部11は、「/人間/パーソナリティ/現在の仕事/経験年数=5年」とする意図解析結果を拡張個人データ53に格納する。
For example, the dialogue control unit 11 stores the intention analysis result “/ human / personality / current job / year of experience = 5 years” in the extended
次に、マッチング部20は、マッチング処理を起動する。具体的には、ドメイン知識マネージャ31が多次元マッチングテーブルを生成し、それを用いて、拡張ユーザデータから拡張対象データを検索し、最も検索類似度の高い対象データから順に並べ替える(ステップS303)。
Next, the matching
このように、ユーザとの対話を通じて、ユーザから得た全ての情報と、全対象データとの間の類似度を計算し、類似度の高い対象データから順にユーザに提示する。 In this way, through the dialogue with the user, the similarity between all the information obtained from the user and all the target data is calculated and presented to the user in descending order of target data.
このとき、ユーザ側からマッチング結果の表示要求を受けた場合(ステップS304)、対話制御部11は、マッチング部40からマッチング結果を受け取り、マッチング結果をユーザ側に送信する(ステップS305)。 At this time, when a matching result display request is received from the user side (step S304), the dialogue control unit 11 receives the matching result from the matching unit 40 and transmits the matching result to the user side (step S305).
一方、ユーザ側からの表示要求がない場合には(ステップS304)、対話制御部11は、マッチング結果の送信を行わず、ステップS306に移行する。 On the other hand, when there is no display request from the user side (step S304), the dialogue control unit 11 does not transmit the matching result and proceeds to step S306.
ステップS306では、対話制御部11は、ドメイン知識マネージャ31から多次元オントロジーを受け取り、次の質問(プロパティ)を決定する。そして、対話制御部11は、次の質問文をユーザ側に送信して、処理を終了する(ステップS307)。
In step S306, the dialogue control unit 11 receives the multidimensional ontology from the
(A−3−4)多次元オントロジーを利用したマッチング処理
次に、図12のステップS303における多次元オントロジーを利用したマッチング処理の詳細な動作について図面を参照しながら説明する。
(A-3-4) Matching Process Using Multidimensional Ontology Next, the detailed operation of the matching process using the multidimensional ontology in step S303 in FIG. 12 will be described with reference to the drawings.
図13は、多次元オントロジーを利用したマッチング処理の動作を示すフローチャートである。ドメイン知識マネージャ31は、マッチングテーブルを一種のオントロジーとみなして、多次元マッチングテーブルを生成する処理である。
FIG. 13 is a flowchart showing the operation of matching processing using a multidimensional ontology. The
まず、マッチング部40は、ドメイン知識マネージャ31に対して、マッチングテーブルの作成要求を行い、ドメイン知識マネージャ31は、マッチングテーブルを一種のオントロジーとみなして、多次元マッチングテーブルを生成する(ステップS401)。
First, the matching unit 40 requests the
マッチングテーブル作成要求を受けると、ドメイン知識マネージャ31は、拡張ユーザデータ53からユーザデータを全て取得する。
Upon receiving the matching table creation request, the
ドメイン知識マネージャ31の動作フローは、図7のS204が存在しないフローで表される。ドメイン知識マネージャ31では、特徴抽出部311が、ユーザデータと全てのマッチングテーブルに登録されている全ての次元の条件とを照合し、条件に合う次元条件を抽出する(S202)。
The operation flow of the
次に、ドメイン知識マネージャ31では、条件照合部312が、特徴抽出部311により抽出された次元条件を、一定の基準に従って優先度の高いものから順に並べて、次元優先度定義テーブルに格納する(S203)。
Next, in the
そして、多次元オントロジー生成部313が、次元優先度定義テーブルの優先度に従って、次元別マッチングテーブルをベース次元のマッチングテーブルに重ね合わせて、多次元マッチングテーブルを生成し(S205)、マッチング部40に与える(S206)。
Then, the multidimensional
例えば、図14は、現在の職種がコックであるニックネーム「○ちゃん」のユーザデータ(ネットワーク形式)である。また、図15は、ベース次元のマッチングテーブルの構成例を示す。 For example, FIG. 14 shows user data (network format) of a nickname “Chan” whose current occupation is a cook. FIG. 15 shows a configuration example of a base dimension matching table.
なお、図15(A)は、ベース次元のマッチングテーブルを表形式で示したものであり、図15(B)は、ベース次元のマッチングテーブルをネットワーク形式で示したものである。 FIG. 15A shows a base dimension matching table in a table format, and FIG. 15B shows a base dimension matching table in a network format.
図15において、ベース次元のマッチングテーブルは、「ユーザデータ」、「重要度」、「対象データ」を項目とする。項目「ユーザデータ」は、ユーザデータにおけるプロパティ(条件)を示す。項目「対象データ」は、対象データにおけるプロパティ(条件)を示す。項目「重要度」は、マッチングにおけるプロパティに対する重み付けを示す。 In FIG. 15, the base dimension matching table includes “user data”, “importance”, and “target data” as items. The item “user data” indicates a property (condition) in the user data. The item “target data” indicates a property (condition) in the target data. The item “importance” indicates a weight for a property in matching.
図15の例においては、「ユーザデータ=現在の職種」及び「対象データ=経験職種」が対応する関係にあり、その重要度が「0.5」であることを示す。 In the example of FIG. 15, “user data = current job type” and “target data = experience job type” are in a corresponding relationship, and the importance is “0.5”.
ユーザデータと対象データとの関係でプロパティ名が異なっているが、これは、転職を募集する企業の募集要項(データ)の条件名(プロパティ名)と、これに対応するユーザから抽出する条件名(プロパティ名)とが異なるからである。 The property name is different depending on the relationship between the user data and the target data. This is because the condition name (property name) of the recruitment guidelines (data) of the company recruiting the job change and the condition name extracted from the corresponding user This is because (property name) is different.
また、特徴抽出部311による特徴抽出の際に参照した次元のマッチングテーブルを図16に示す。
FIG. 16 shows a dimension matching table referred to when the
図16のマッチングテーブルは、「/人間/パーソナリティ/現在の職種=コック」次元のマッチングテーブルである。なお、図16(A)は表形式で示したものであり、図16(B)はネットワーク形式で示したものである。 The matching table in FIG. 16 is a “/ person / personality / current job = cook” dimension matching table. Note that FIG. 16A shows a table format, and FIG. 16B shows a network format.
図16に示す次元のマッチングテーブルでは、「現在の職種=コック」であるから、調理に関連する資格を所有していることが重要であるから、所有する資格の重要度が「1.0」と高く定義されている。 In the dimension matching table shown in FIG. 16, since “current job = cook”, it is important to have a qualification related to cooking, so the importance of the qualification owned is “1.0”. Highly defined.
従って、多次元オントロジー生成部313は、図15に示すベース次元のマッチングテーブルに、図16に示す次元のマッチングテーブルを上書きする。その結果、図17に示しように、「資格の重要度」が「1.0」に変更された、多次元マッチングテーブルを生成することができる。
Accordingly, the multidimensional
また別の例として、図18に示すような、現在の職種が「SE」の「△くん」のユーザデータを取得した場合を説明する。 As another example, a case where user data of “Δ-kun” whose current job type is “SE” as shown in FIG. 18 will be described.
この場合、特徴抽出部311による特徴抽出の際に参照した次元のマッチングテーブルを図19に示す。
In this case, FIG. 19 shows a dimension matching table referred to in the feature extraction by the
図19のマッチングテーブルは、「/人間/パーソナリティ/現在の職種=SE」次元のマッチングテーブルである。なお、図19(A)は表形式で示したものであり、図19(B)はネットワーク形式で示したものである。 The matching table in FIG. 19 is a “/ person / personality / current job = SE” matching table. Note that FIG. 19A shows a table format, and FIG. 19B shows a network format.
図19に示す次元のマッチングテーブルでは、「現在の職種=コック」であるから、所有する資格は重視されないが、経験年数が重視されるため、所有する資格の重要度が「0.1」と低く定義され、経験年数の重要度が「0.8」と高く定義されている。 In the dimension matching table shown in FIG. 19, since “current occupation = cook”, the qualification to own is not emphasized, but since the years of experience are emphasized, the importance of the qualification to possess is “0.1”. It is defined as low and the importance of years of experience is defined as high as “0.8”.
従って、多次元オントロジー生成部313は、図15に示すベース次元のマッチングテーブルに、図19に示す次元のマッチングテーブルを上書きする。その結果、図20に示しように、資格の重要度が「0.1」、経験年数の重要度が「0.8」に変更された、多次元マッチングテーブルを生成することができる。
Therefore, the multidimensional
次に、ドメイン知識マネージャ31から多次元マッチングテーブルを受け取ったマッチング部40は、この多次元マッチングテーブルに基づいて、全ての対象データとの類似度を計算する(ステップS402)。
Next, the matching unit 40 that has received the multidimensional matching table from the
このとき、マッチング部40は、多次元マッチングテーブルを利用したマッチングテーブルに記述されている「重要度」によって重み付けを行って類似度を計算する。 At this time, the matching unit 40 calculates the degree of similarity by weighting according to the “importance” described in the matching table using the multidimensional matching table.
そして、マッチング部40は、類似度の高いものから順に対象データを並べ替えて、これをマッチング結果とする。 And the matching part 40 rearranges target data in an order from a thing with high similarity, and makes this a matching result.
例えば、上記の「○ちゃん」の例において、マッチング部40は、図17に示す多次元マッチングテーブルを受け取り、図21(A)の「A社」、「B社」の対象データとの類似度を計算する場合を説明する。 For example, in the above example of “Chan”, the matching unit 40 receives the multi-dimensional matching table shown in FIG. 17, and the similarity to the target data of “Company A” and “Company B” in FIG. The case of calculating is described.
「A社」の条件は「経験業種=コック」、「保有資格=調理師免許」、「経験年数=1年以上」であるから、「○ちゃん」は、すべての条件にマッチする。従って、マッチング部40は、「A社」との類似度を「(1×0.5)+(1×1.0)+(1×0.5)=2.0」と計算する(図21(B)参照)。 Since the conditions of “Company A” are “experienced industry = cook”, “holding qualification = cooking license”, and “years of experience = one year or more”, “Chan” matches all conditions. Therefore, the matching unit 40 calculates the similarity with “Company A” as “(1 × 0.5) + (1 × 1.0) + (1 × 0.5) = 2.0” (FIG. 21 (B)).
同様に、「B社」の条件は「経験業種=コック」、「保有資格=栄養士免許」、「経験年数=5年以上」であるから、「○ちゃん」は、「保有資格」以外の条件にマッチする。従って、マッチング部40は、「B社」との類似度を「(1×0.5)+(0×1.0)+(1×0.5)=1.0」と計算する(図21(B)参照)。 Similarly, the conditions for “Company B” are “Experienced industry = cook”, “Holding qualification = Nutrition license”, and “Experience years = 5 years or more”. Matches Accordingly, the matching unit 40 calculates the similarity with “Company B” as “(1 × 0.5) + (0 × 1.0) + (1 × 0.5) = 1.0” (FIG. 21 (B)).
従って、マッチング部40は、図21(C)のように、「A社」「B社」の順にしてマッチング結果を出力する。 Accordingly, the matching unit 40 outputs matching results in the order of “Company A” and “Company B” as shown in FIG.
また例えば、上記の「△くん」の例において、マッチング部40は、図19に示す多次元マッチングテーブルを受け取り、図22(A)の「C社」、「D社」の対象データとの類似度を計算する場合を説明する。 Further, for example, in the example of “Δ-kun” described above, the matching unit 40 receives the multidimensional matching table shown in FIG. 19 and is similar to the target data of “Company C” and “Company D” in FIG. A case where the degree is calculated will be described.
「C社」の条件は「経験業種=SE」、「保有資格=初級シスアド」、「経験年数=1年以上」であるから、「△くん」は、すべての条件にマッチする。従って、マッチング部40は、「A社」との類似度を「(1×0.5)+(1×0.1)+(1×0.8)=1.4」と計算する(図22(B)参照)。 Since the conditions of “Company C” are “Experience type industry = SE”, “Holding qualification = Beginner Sysad”, and “Number of years of experience = 1 year or more”, “Δ-kun” matches all the conditions. Therefore, the matching unit 40 calculates the similarity with “Company A” as “(1 × 0.5) + (1 × 0.1) + (1 × 0.8) = 1.4” (FIG. 22 (B)).
同様に、「D社」の条件は「経験業種=コック」、「保有資格=上級シスアド」、「経験年数=5年以上」であるから、「△くん」は、「経験年数」以外の条件にマッチする。従って、マッチング部40は、「D社」との類似度を「(1×0.5)+(1×0.1)+(0×0.8)=0.6」と計算する(図22(B)参照)。 Similarly, the conditions of “Company D” are “Experienced industry = cock”, “Retention qualification = Advanced sysad”, and “Experience years = 5 years or more”. Matches Accordingly, the matching unit 40 calculates the similarity with “Company D” as “(1 × 0.5) + (1 × 0.1) + (0 × 0.8) = 0.6” (FIG. 22 (B)).
従って、マッチング部40は、図22(C)のように、「C社」「D社」の順にしてマッチング結果を出力する。 Accordingly, the matching unit 40 outputs matching results in the order of “Company C” and “Company D” as shown in FIG.
(A−3−5)多次元意図解析処理(ドメイン知識辞書の動的切替処理)
次に、多次元意図解析処理(ドメイン知識辞書の動的切替処理)について図面を参照しながら詳細に説明する。
(A-3-5) Multidimensional intention analysis processing (domain knowledge dictionary dynamic switching processing)
Next, multidimensional intention analysis processing (domain knowledge dictionary dynamic switching processing) will be described in detail with reference to the drawings.
図23は、多次元意図解析処理(ドメイン知識辞書の動的切替処理)に係る意図解析実行部21の処理を示すフローチャートである。また、図24は、多次元意図解析処理(ドメイン知識辞書の動的切替処理)に係るドメイン知識辞書マネージャ23の処理を示すフローチャートである。
FIG. 23 is a flowchart showing the process of the intention
まず、図23において、意図解析部20は、対話制御部11からユーザ発話文を受け取る(ステップS501)。
First, in FIG. 23, the
意図解析部20では、付属情報がある場合には、その付属情報をユーザデータとして拡張ユーザデータ53にセットする(ステップS502)。
If there is attached information, the
またユーザ発話文が複数の文からなる場合、意図解析実行部21は、一文単位に区切り(ステップS503)、形態素解析部211がユーザ発話文に対して形態素解析を行い(ステップS504)、構文解析部212が構文解析を行う(ステップS505)。
When the user utterance sentence is composed of a plurality of sentences, the intention
さらに、意図解析実行部21は、意図解析用辞書22を参照して意図解析を行う。このとき、意図解析実行部21は、ユーザデータをドメイン知識辞書マネージャ23に与える(ステップS506)。
Furthermore, the intention
図24において、意図解析実行部21からユーザデータを受け取ると(ステップS601)、ユーザドメイン知識辞書マネージャ23は、特徴抽出部231が、ユーザデータと各次元の次元条件と照合し、次元条件に合う値を抽出する(ステップS602)。
In FIG. 24, when user data is received from the intention analysis execution unit 21 (step S601), the user domain
条件並替部232は、特徴抽出部311が抽出した次元条件に対して、一定の基準に従って、次元別ドメイン知識辞書を優先順位に並べ替え(ステップS603)、辞書設定部233が、所定の優先順位で辞書引きされるように次元別ドメイン知識辞書を意図解析用辞書22にセットする(ステップS604)。
The
そして、図23のステップS507では、意図解析部20は、ドメイン知識辞書マネージャ23によりセッティングされた順序で次元別ドメイン知識辞書から辞書引きを行い、ユーザとの対話から得られた情報に応じた意図を生成する(ステップS507)。
In step S507 of FIG. 23, the
例えば、図25〜図29を用いて、「○ちゃん」に対する、現住所に関する質問についてのユーザ発話文が「三田です」である場合の意図解析を例示して説明する。 For example, with reference to FIGS. 25 to 29, an intention analysis in the case where the user utterance sentence regarding the question about the current address for “Chan” is “I am Mita” will be described as an example.
まず、システム起動前に、「住所」クラスのクラス定義に従って、図28(A)〜図28(C)に示すような次元別ドメイン知識辞書を自動生成しておく。 First, before starting the system, a domain knowledge dictionary according to dimensions as shown in FIGS. 28A to 28C is automatically generated according to the class definition of the “address” class.
例えば、図28(A)は、「/人間/パーソナリティ/勤め先住所=大阪」次元の「住所」クラスを定義した次元別ドメイン知識辞書であり、上位の階層を「住所」クラスとした場合、「住所」クラスの配下に「大阪」クラスがあり、「大阪」クラスの配下に「高槻市」クラス、「茨木市」クラス、…がある。また、「高槻市」クラス、「茨木市」クラス、…の異表記も併記したものである。 For example, FIG. 28A is a domain knowledge dictionary classified by dimension in which the “address” class of the “/ human / personality / working address = Osaka” dimension is defined, and when the upper hierarchy is the “address” class, The “Osaka” class is under the “Address” class, the “Takatsuki City” class, the “Ibaraki City” class, etc. are under the “Osaka” class. Also, “Takatsuki City” class, “Ibaraki City” class, etc. are also shown together.
同様に、図28(B)は、「/人間/パーソナリティ/勤め先住所=関西」次元の「住所」クラスを定義したドメイン知識辞書であり、図28(C)は、「/人間/パーソナリティ/勤め先住所=東京」次元の「住所」クラスを定義したドメイン知識辞書である。 Similarly, FIG. 28B is a domain knowledge dictionary in which an “address” class of the dimension “/ human / personality / work address = Kansai” is defined, and FIG. 28C shows “/ human / personality / work place”. This is a domain knowledge dictionary that defines an “address” class of the dimension “address = Tokyo”.
図26に示すユーザデータがドメイン知識辞書マネージャ23に与えられると、ドメイン知識辞書マネージャ32では、特徴抽出部231が、ユーザデータから特徴抽出を行い、プロパティ「勤め先場所」−クラス「大阪」を抽出する。
When the user data shown in FIG. 26 is given to the domain
条件並替部232は、特徴抽出部231が抽出したプロパティ「勤め先場所」−クラス「大阪」を条件に合う次元別ドメイン知識辞書を選択し、所定の優先順位に従って次元別ドメイン知識辞書の並べ替えを行う。この次元別辞書の並べ替えにより、優先順位の高い次元別ドメイン知識辞書から辞書引きできるようにする。
The
このとき、条件並替部232は、特徴抽出部231がプロパティ「勤め先場所」−クラス「大阪」の条件に合う、図28(A)の次元別ドメイン知識辞書が一番高い優先順位とし、「大阪」クラスの上位階層のクラスである「関西」クラスのドメイン知識辞書を次に高い優先順位として並べ替える。
At this time, the
これにより、条件並替部232は、図27に示すように、特徴抽出部231の抽出条件から、図28(A)の「/人間/パーソナリティ/勤め先住所=大阪」次元のドメイン知識辞書、図28(B)の「/人間/パーソナリティ/勤め先住所=関西」次元のドメイン知識辞書の順に並べ替えを行う。このとき、図28(C)の「/人間/パーソナリティ/勤め先住所=関東」次元のドメイン知識辞書は、図26のユーザデータの条件に適合しないので使われない。
As a result, the
そして、例えばシステム発話文「おすまいはどちらですか?」に対するユーザ発話文「三田です」を意図解析部20が受け取る。
Then, for example, the
意図解析実行部21では、形態素解析部211がユーザ発話文「三田です」に対して形態素解析を行い、形態素解析結果「三田:名詞 だ:助動詞」を得て、構文解析部212が構文解析を行い、図25に示すような構文解析結果を得る。
In the intention
そして、意図解析実行部21は、図27に示すように、図28(A)の「/人間/パーソナリティ/勤め先住所=大阪」次元のドメイン知識辞書を用いて解析し、次に優先順位の高い図28(B)の「/人間/パーソナリティ/勤め先住所=関西」次元のドメイン知識辞書を用いて解析する。
Then, as shown in FIG. 27, the intention
その結果、図28(B)の「/人間/パーソナリティ/勤め先住所=関西」次元のドメイン知識辞書を用いて、構文解析結果「住所−三田」に対応する「住所−三田市」を辞書引きして、当該ユーザの現住所が兵庫県の「三田市」であるとの意図解析結果を得て、これを出力する(図29参照)。このようにユーザから既に与えられている条件を利用することによって、三田という言葉における、兵庫県の三田市(さんだし)と東京の三田(みた)という曖昧性を解消することができる。 As a result, using the domain knowledge dictionary of the dimension “/ human / personality / working address = Kansai” in FIG. 28B, the address “Mita-shi” corresponding to the parsing result “address-Mita” is looked up as a dictionary. Then, an intention analysis result that the current address of the user is “Mita City” in Hyogo Prefecture is obtained and output (see FIG. 29). In this way, by using the conditions already given by the user, the ambiguity between Mita City in Hyogo Prefecture and Mita in Tokyo in the word Mita can be resolved.
(A−3−6)多次元意図解析処理(解析対象文情報による動的切替処理)
次に、多次元意図解析処理(解析対象文情報による動的切替処理)について図面を参照しながら説明する。
(A-3-6) Multidimensional intention analysis processing (dynamic switching processing based on analysis target sentence information)
Next, multidimensional intention analysis processing (dynamic switching processing based on analysis target sentence information) will be described with reference to the drawings.
解析対象文の動的切替処理とは、対象データから拡張対象データを構築する際の多次元意図解析処理である。 The analysis target sentence dynamic switching process is a multidimensional intention analysis process when the expansion target data is constructed from the target data.
解析対象文の動的切替処理は、図23及び図24に示すフローチャートを用いてできるので、ここでは、図23及び図24を参照しながら説明する。なお、図23及び図24において、「ユーザデータ」と記載は「対象データ」となる。 The analysis target sentence dynamic switching process can be performed using the flowcharts shown in FIGS. 23 and 24, and will be described with reference to FIGS. 23 and 24. In FIG. 23 and FIG. 24, “user data” is described as “target data”.
図30(A)は、意図解析部20に与えられる対象データを示す。意図解析部20において、対象データには、「解析対象:対象データ」という付属情報が付される。従って、意図解析実行部21は、対象データに「解析対象:対象データ」が付与される(ステップS5001、S502)。
FIG. 30A shows target data given to the
また、対象データは複数の文からなるので、意図解析実行部21は、対象データを1文単位に区切り(ステップS503)、対象データの各文に対して形態素解析を行い(ステップS504)、構文解析を行う(ステップS505)。
Since the target data is composed of a plurality of sentences, the intention
例えば、対象データの一部である「ネットワーク設計経験者優遇。」という文については、図30(B)に示すような構文解析結果を得る。つまり、「経験者待遇:名詞 設計:名詞 ネットワーク:名詞」という形態素解析結果から図30(B)のような構文解析結果となる。 For example, for the sentence “Network design experienced person preferential treatment” which is a part of the target data, a syntax analysis result as shown in FIG. 30B is obtained. That is, a morphological analysis result such as “experienced treatment: noun design: noun network: noun” results in a syntax analysis result as shown in FIG.
意図解析実行部21は、当該ユーザデータをドメイン知識辞書マネージャ23に与える(ステップS506)。
The intention
意図解析実行部21からユーザデータを受け取ったドメイン知識辞書マネージャ23では、特徴抽出部231が、ユーザデータと、次元別のマッチングテーブルに登録されている全ての次元条件と照合し、各次元条件に合う次元条件を抽出する(ステップS601、S602)。
In the domain
条件並替部232は、特徴抽出部231が抽出した次元条件に対して、一定の基準に従って、次元別ドメイン知識辞書を優先順位に並べ替え(ステップS603)、辞書設定部233が、所定の優先順位で辞書引きされるように次元別ドメイン知識辞書を意図解析用辞書22にセットする(ステップS604)。
The
例えば、ドメイン知識辞書マネージャ23のドメイン知識DBに、図32(A)及び図32(B)に示すような多次元構文辞書がある場合、ドメイン知識辞書マネージャ23は、特徴抽出部231の抽出条件から、一定の基準に従って、図32(A)の「/解析対象=対象データ」次元の構文辞書、図32(B)のベース次元の構文辞書の順に並べ替えを行う。
For example, when the domain knowledge DB of the domain
その結果、ドメイン知識辞書マネージャ23は、図31に示すように、図32(A)の「/解析対象=対象データ」次元の構文辞書を一番最初に辞書引きできるようにし、一番優先度が低い位置にベース次元の構文辞書を設定する。
As a result, as shown in FIG. 31, the domain
そして、意図解析部20は、図32(A)の「/解析対象=対象データ」次元の構文辞書から辞書引きして、「経験職種=ネットワーク設計者」とする意図解析結果を出力する(図33参照)。
Then, the
(A−3−7)マッチング結果と連動した対話制御処理
次に、マッチング結果と連動した対話制御処理について、図面を参照しながら詳細に説明する。
(A-3-7) Dialog Control Process Linked with Matching Result Next, the dialog control process linked with the matching result will be described in detail with reference to the drawings.
図34は、マッチング結果と連動した対話制御処理における対話制御部11における処理を示すフローチャートである。図35は、マッチング結果と連動した対話制御処理におけるマッチング処理を示すフローチャートである。 FIG. 34 is a flowchart showing the process in the dialog control unit 11 in the dialog control process linked to the matching result. FIG. 35 is a flowchart showing the matching process in the dialogue control process linked to the matching result.
検索処理と連動した対話制御処理を行う前提として、ドメイン知識マネージャ31は、データ提供サーバ80から取得した対象データに対して、対象データの意図を解析し、拡張対象データ54に格納する。
The
図34において、対話制御部11は、意図解析部20から意図解析結果を受け取り(ステップS703)、ユーザデータとして拡張ユーザデータ53に格納し(ステップS702)、マッチング処理を起動する(ステップS703)。
In FIG. 34, the dialogue control unit 11 receives an intention analysis result from the intention analysis unit 20 (step S703), stores it as
例えば、ユーザ「○ちゃん」との対話によりユーザ発話文「Javaのプログラムを5年ほどやっています。」に対する意図解析結果が、「/人間/仕事の経験/内容=Java、/人間/仕事の経験/年数=5年」とする。 For example, the intention analysis result for the user utterance sentence “I've been doing a Java program for about five years” through dialogue with the user “Chan” is “/ human / work experience / content = Java, / human / work Experience / years = 5 years "
また、図36は、「○ちゃん」のユーザデータであるとし、対話制御部11は、図36に示すユーザデータを拡張ユーザデータ53に格納する。 36 assumes that the user data of “Chan” is stored, and the dialogue control unit 11 stores the user data shown in FIG.
マッチング部40は、拡張対象データ54に格納されるユーザデータに完全にマッチする全ての拡張対象データを取り出す(ステップS801)。 The matching unit 40 extracts all the expansion target data that completely matches the user data stored in the expansion target data 54 (step S801).
例えば、図37は、ユーザデータに完全にマッチする拡張対象データの例を示し、図37(A)は、「A社」の求人データ(対象データ)であり、プロパティ「社名」−クラス「A社」、プロパティ「使用言語」−クラス「Java」、プロパティ「経験年数」−クラス「3年以上」、…である。また、図37(B)は、「B社」の求人データ(対象データ)であり、プロパティ「社名」−クラス「B社」、プロパティ「使用言語」−クラス「Java」、…である。 For example, FIG. 37 shows an example of the expansion target data that perfectly matches the user data, and FIG. 37 (A) shows the recruitment data (target data) of “Company A” and the property “Company name” -class “A "Company", property "language"-class "Java", property "years of experience"-class "more than 3 years", and so on. FIG. 37B shows job offer data (target data) of “Company B”, which is property “Company name” -class “Company B”, property “Use language” -class “Java”,.
マッチング部40がドメイン知識マネージャ31に対してマッチングテーブルの作成要求を行う(ステップS802)。
The matching unit 40 requests the
このとき、ドメイン知識マネージャ31は、(A−3−4)で説明した処理と同様に方法で、多次元マッチングテーブルを生成し、これをマッチング部40に与える。
At this time, the
ここで、図38は、マッチング部に与えられた多次元マッチングテーブルとする。 Here, FIG. 38 is a multidimensional matching table given to the matching unit.
マッチング部40は、多次元マッチングテーブルに基づいて、全ての対象データに関して、ユーザデータとの類似度を計算し(ステップS803)、類似度の高いものから順に対象データを並び替える(ステップS804)。 Based on the multidimensional matching table, the matching unit 40 calculates the similarity to the user data for all target data (step S803), and rearranges the target data in descending order of similarity (step S804).
このとき、マッチング部40は、最も高い類似度を持つ対象データに関して曖昧なマッチングがあるか否かを確認する(ステップS805)。 At this time, the matching unit 40 checks whether there is an ambiguous matching with respect to the target data having the highest similarity (step S805).
ここで、曖昧なマッチングとは、対象データには条件となる値が存在するが、ユーザデータには条件となる値が存在しない場合のマッチングをいう。 Here, the ambiguous matching refers to matching in a case where there is a condition value in the target data but no condition value exists in the user data.
図39は、図38の多次元マッチンテーブルに基づいて、図36の「○ちゃん」のユーザデータと、図37(A)の「A社」の対象データとをマッチングした場合を説明する図である。 FIG. 39 is a diagram for explaining a case where the user data of “Chan” in FIG. 36 is matched with the target data of “Company A” in FIG. 37A based on the multi-dimensional matchon table in FIG. is there.
図39では、「A社」の対象データに条件する値として、「職種−プログラマ」、「使用言語−Java」、「経験年数−3年以上」がある。また、「○ちゃん」のユーザデータにも、上記の条件の値に対応する「プログラマ」、「Java」、「5年」が存在している。従って、「○ちゃん」のユーザデータには、曖昧なマッチングは存在しないと判断する。 In FIG. 39, there are “job type-programmer”, “language used-Java”, and “years of experience—more than 3 years” as values for the target data of “Company A”. In addition, “programmer”, “Java”, and “5 years” corresponding to the above condition values also exist in the user data of “Chan”. Therefore, it is determined that there is no ambiguous matching in the user data of “Chan”.
なお、マッチング処理が終了すると、図34のステップS704に移行するが、次の質問文がセットされていないので、ステップS705〜S708の処理を行う。なお、ステップS705〜S708は、図12のステップS304〜S307に対応するので説明を省略する。 When the matching process is completed, the process proceeds to step S704 in FIG. 34. However, since the next question sentence is not set, the processes in steps S705 to S708 are performed. Steps S705 to S708 correspond to steps S304 to S307 in FIG.
一方、ユーザ「△くん」の場合、ユーザ発話文「Java経験があります。」に対する意図解析結果が、「/人間/仕事の経験/内容=Java」であるとし、「△くん」のユーザデータは、図40に示すようものとする。 On the other hand, in the case of the user “△ kun”, the intention analysis result for the user utterance sentence “I have Java experience” is “/ human / work experience / content = Java”, and the user data of “△ kun” is , As shown in FIG.
そして、図38の「/人間/現在の職種=プログラマ」次元のマッチンテーブルに基づいて、図40の「△くん」のユーザデータと、図37(A)の「A社」の対象データとをマッチングした場合を、図41に示す。 Then, based on the “/ person / current job = programmer” dimension matchon table of FIG. 38, the user data of “Δ-kun” in FIG. 40 and the target data of “Company A” in FIG. The case of matching is shown in FIG.
図41に示すように、上記同様、「A社」の対象データに条件する値として、「職種−プログラマ」、「使用言語−Java」、「経験年数−3年以上」がある。 As shown in FIG. 41, as described above, values for the target data of “Company A” include “job type—programmer”, “language used—Java”, and “year of experience—more than 3 years”.
しかし、「△くん」のユーザデータには、上記の条件の値に対応する「職種−プログラマ」、「使用言語−Java」は存在するが、「経験年数−3年以上」に相当する条件の値が存在しない。 However, in the user data of “△ -kun”, there are “Job Type-Programmer” and “Language-Java” corresponding to the value of the above condition, but the condition corresponding to “Experience years—over 3 years”. The value does not exist.
そこで、マッチング部40は、プロパティ「経験年数」に関する深堀質問をセットし、これをドメイン知識マネージャ31に与える(ステップS806)。 Therefore, the matching unit 40 sets a deep question about the property “year of experience” and gives it to the domain knowledge manager 31 (step S806).
そして、ドメイン知識マネージャ31は、プロパティ「経験年数」を次の質問文とするようにし、プロパティ「経験年数」の基本質問文「具体的な経験年数を教えて下さい。」を対話制御部11に与え、次の質問文が決定する。
Then, the
この場合、ステップS704に移行し、対話制御部11には、次の質問文がセットされているので、プロパティ「経験年数」の基本質問文「具体的な経験年数を教えて下さい。」をユーザ側に出力する。 In this case, the process proceeds to step S704, and since the following question message is set in the dialog control unit 11, the basic question message "Please tell me the specific years of experience." Output to the side.
このようにすることで、「△くん」との対話処理で、「経験年数」を質問することができ、例えば「5年です。」という回答が得られた場合、「A社」の対象データとの類似度がより高くなり、「△くん」は、自分に合った会社を、より早く探すことができる。また、経験年数が「1年」であると回答を得た場合には、逆に自分が検討しても無駄な会社を、より早く候補外にすることができる。 In this way, in the dialogue process with “△ -kun”, it is possible to ask the question “year of experience”. For example, when an answer “5 years” is obtained, the target data of “Company A” “△ -kun” can search for a company that suits him more quickly. In addition, when an answer is obtained that the years of experience are “one year”, a company that is useless even if it is considered by itself can be excluded from the candidate earlier.
また、もし、「A社」でなく、「B社」の場合には、経験年数を条件にしてないので、深堀質問はなされない。このように、検索結果となる対象データの状態に応じて、質問を自在に制御することができる。 Also, if it is not “Company A” but “Company B”, the deep years question is not made because the years of experience are not a condition. Thus, the question can be freely controlled according to the state of the target data that is the search result.
(A−4)第1の実施形態の効果
以上、第1の実施形態によれば、多次元オントロジーを利用してマッチング処理を行うことにより、ユーザの意図や状況に応じて情報検索に係るマッチングの重要度を動的に変えることができるので、より的確なマッチングを行うことができる。
(A-4) Effects of First Embodiment As described above, according to the first embodiment, matching is performed using information that is in accordance with the user's intention and situation by performing a matching process using a multidimensional ontology. Since the importance of can be dynamically changed, more accurate matching can be performed.
また、第1の実施形態によれば、意図解析を多次元化することにより、ユーザの意図や状況に応じて、適用する辞書を動的に切り替えることができるので、的確な情報検索の選択基準を選択させることができる。また、的確な選択基準を選択できるので、ユーザに対する質問やマッチングに係る検索対象も、ユーザの意図するものにすることができる。 In addition, according to the first embodiment, by applying multi-dimensional intention analysis, the dictionary to be applied can be dynamically switched according to the user's intention and situation. Can be selected. In addition, since an accurate selection criterion can be selected, a search target related to a question or matching to the user can be also intended by the user.
さらに、第1の実施形態によれば、対象データに関する情報によって、適用する辞書を動的に切り替えることができるので、的確な情報検索の選択基準を選択させることができる。 Furthermore, according to the first embodiment, the dictionary to be applied can be dynamically switched according to the information related to the target data, so that it is possible to select a selection criterion for accurate information search.
また、第1の実施形態によれば、マッチング結果に連動させて対話制御を行うことで、対象データとのマッチングに必要な情報を次の質問文としてユーザに提示することができるので、より迅速かつ的確なマッチング処理を提供できる。 In addition, according to the first embodiment, by performing dialogue control in conjunction with the matching result, information necessary for matching with the target data can be presented to the user as the next question sentence. A precise matching process can be provided.
(B)他の実施形態
(B−1)意図解析の多次元化とは、ユーザから取得された値によって、解析エンジン(解析時に利用する辞書)を動的に使い分けることを意味する。解析エンジンを動的に使い分ける仕組みは、対話制御がドメイン知識マネージャを通じて、オントロジーを動的に使い分ける仕組みを応用することで実現可能である。
(B) Other Embodiments (B-1) Multidimensionalization of intention analysis means that an analysis engine (a dictionary used at the time of analysis) is dynamically used according to a value acquired from a user. The mechanism to use the analysis engine dynamically can be realized by applying the mechanism to use the ontology dynamically through the domain knowledge manager.
(B−2)意図解析を多次元化することにより、以下のようなことができる。 (B-2) By making the intention analysis multidimensional, the following can be performed.
(1)関西を希望している人が、「三田がいい」と発言したら「三田市」と返すことができる。また、関東を希望している人は、「東京の三田」を返すことができる。 (1) If a person who wants Kansai says “Mita is good”, he can return “Mita City”. Also, those who want Kanto can return “Mita in Tokyo”.
(2)口語で入力する人には、口語解析用エンジン、関西弁の人には、関西弁エンジンを使うことで、それぞれの解析精度が向上する。 (2) By using a colloquial analysis engine for those who input in spoken language, and Kansai dialect engineer for those who use Kansai dialect, the respective analysis accuracy is improved.
(3)プロデューサを希望する人とプログラマを希望する人では、「プログラムを作る」の意味が違うことが理解できるようになる。 (3) A person who wants to be a producer and a person who wants to be a programmer can understand that the meaning of “create a program” is different.
(4)正社員を希望する人は年収(又は月収)、パートの人は時給を給与のデフォルトにして解析することができる。 (4) A person who wants a full-time employee can make an analysis with the annual income (or monthly income) as a default, and a part-time person with an hourly wage as the default salary.
(5)求人データ、ユーザ発話文の解析時には、それぞれ別の解析エンジンを使うことで、解析精度が向上する
(6)求人データは、通常、情報がタグ付けされている。そのタグの値毎に、辞書を使い分けることにより、精度高く解析できる。例えば、求人職種タグの場合は、「職種」の入力を前提とした辞書で解析する。「先輩PR」タグの場合は、社員が述べるような内容の入力を前提とした辞書で解析する。
(5) When analyzing job data and user utterances, the analysis accuracy is improved by using different analysis engines. (6) Job information is usually tagged with information. By using different dictionaries for each tag value, it is possible to analyze with high accuracy. For example, in the case of a job title tag, analysis is performed using a dictionary that presupposes the input of “job title”. In the case of the “senior PR” tag, analysis is performed using a dictionary based on the input of the contents described by the employee.
(B−3)検索の多次元化とは、ユーザから取得した値によって、検索の条件を動的に使い分けることを意味する。 (B-3) Multi-dimensional search means that search conditions are dynamically used according to a value acquired from a user.
例えば、意図解析がなくても(例えば、アンケートのようにユーザからの回答が決まっているため、意図解析する必要ながなくても)同様の処理は勿論可能である。 For example, the same processing can be performed without intention analysis (for example, since there is no need for intention analysis because a response from a user is determined like a questionnaire).
また、提示要求は、検索後であるとは限らず、いつでも検索しても良い。 Further, the presentation request is not necessarily after the search, and may be searched at any time.
さらに、第1の実施形態では、マッチング手法は、単純な例を示したが、マッチング手法は、種々の方法を広く適用することができる。例えば、完全マッチングであっても良いし、第1の実施形態のようにマッチングするものを順に並べるというものであっても良い。 Furthermore, in the first embodiment, the matching method is a simple example, but various methods can be widely applied as the matching method. For example, perfect matching may be used, or matching may be arranged in order as in the first embodiment.
また、マッチングテーブルをいくつも用意して、全てのマッチングテーブルに関して計算を予め行っておいて、ユーザが指定する条件の結果のみを表示するという応用も可能である。 Further, it is also possible to prepare a number of matching tables, perform calculations for all the matching tables in advance, and display only the results of conditions specified by the user.
(B−4)対話と検索の連動とは、「ユーザから取得された値によって検索し、その検索結果によって、さらに必要な情報をユーザに質問する」のように、検索結果によって、対話内容が動的に変化するような仕組みを意味する。 (B-4) The interaction between the dialog and the search means that the content of the dialog depends on the search result, such as “search based on a value acquired from the user and ask the user about necessary information based on the search result”. It means a mechanism that changes dynamically.
対話と検索の連動において、オントロジー、検索、意図解析の多次元化の仕組みを導入するようにしてもよい。 A multi-dimensional mechanism of ontology, search, and intention analysis may be introduced in conjunction with dialogue and search.
1…対話型検索システム、10…対話管理部、11…対話制御部、
20…意図解析部、21…意図解析実行部、22…意図解析用辞書、
23…ドメイン知識辞書マネージャ、211…形態素解析部、212…構文解析部、
231…特徴抽出部、232…条件並替部、233…辞書設定部、
30…ドメイン知識管理部、31…ドメイン知識マネージャ、
311…特徴抽出部、312…条件抽出部、313…多次元オントロジー生成部、
32…ドメイン知識DB、
40…マッチング部、41…マッチングマネージャ、42…マッチャー、
50…マッチン対象分析部、51…ユーザデータ管理部、52…対象データ管理部、
53…拡張ユーザデータ、54…拡張対象データ、
80…データ提供サーバ、70…Webサーバ、90…ブラウザ。
DESCRIPTION OF
20 ... intention analysis unit, 21 ... intention analysis execution unit, 22 ... intention analysis dictionary,
23 ... Domain knowledge dictionary manager, 211 ... Morphological analyzer, 212 ... Syntax analyzer,
231 ... Feature extraction unit, 232 ... Condition rearrangement unit, 233 ... Dictionary setting unit,
30 ... Domain knowledge manager, 31 ... Domain knowledge manager,
311 ... Feature extraction unit, 312 ... Condition extraction unit, 313 ... Multidimensional ontology generation unit,
32 ... Domain knowledge DB,
40 ... Matching
50 ... Matchon target analysis unit, 51 ... User data management unit, 52 ... Target data management unit,
53 ... extended user data, 54 ... extended target data,
80: Data providing server, 70: Web server, 90: Browser.
Claims (6)
検索対象とする1又は複数の対象データを格納する対象データ格納手段と、
条件の組み合わせという次元によって上記重みの異なる1又は複数の次元別マッチングテーブルを格納する次元別マッチングテーブル格納手段と、
条件なしの時の上記重みが設定された基本マッチングテーブルを格納する基本マッチングテーブル格納手段と、
上記次元毎の優先度を示す次元別優先度を格納する次元別優先度格納手段と、
検索する値が条件として設定されると、上記次元別マッチングテーブル格納手段から、上記条件に合う上記各次元別マッチングテーブルを取り出す次元別マッチングテーブル取出手段と、
取り出された上記各次元別マッチングテーブルのうち、上記次元優先度格納手段の上記次元優先度に従って上記次元優先度の低いものから順に、上記各次元別マッチングテーブルの内容を上記基本マッチングテーブルに上書きして、入力された値から対象データを検索する多次元マッチングテーブルを生成する多次元マッチングテーブル生成手段と、
上記多次元マッチングテーブル生成手段により生成された多次元マッチングテーブルを用いて、上記対象データ格納手段から検索する値にマッチする1又は複数の対象データを検索するマッチング手段と
を備えることを特徴とする検索システム。 Using a matching table having a correspondence relationship between the value to be searched and the value of the target data corresponding to this value and the corresponding weight, the target data corresponding to the value to be searched is selected from the target data to be searched. In the search system to search,
Target data storage means for storing one or more target data to be searched;
A dimension-specific matching table storage means for storing one or a plurality of dimension-specific matching tables having different weights depending on the dimension of a combination of conditions;
A basic matching table storage means for storing a basic matching table in which the above weights are set when there is no condition;
A priority storage means for each dimension for storing priority for each dimension indicating the priority for each dimension;
When a value to be searched is set as a condition, a dimension-specific matching table extraction unit that extracts the dimension-specific matching table that meets the condition from the dimension-specific matching table storage unit;
Of the extracted matching tables for each dimension, the contents of the matching table for each dimension are overwritten on the basic matching table in order from the lowest dimension priority according to the dimension priority of the dimension priority storage means. A multi-dimensional matching table generating means for generating a multi-dimensional matching table for searching for target data from input values;
Using a multidimensional matching table generated by the multidimensional matching table generating means, and a matching means for searching for one or a plurality of target data that matches a value to be searched from the target data storage means. Search system.
上記対話制御手段から上記ユーザ回答を受け取り、文の意図を解析する意図解析辞書を用いて、上記ユーザ回答に基づく意図解析を行う意図解析手段と
を備え、
上記次元別マッチングテーブル取出手段が、上記意図解析手段から上記ユーザ回答の意図解析結果を受け取り、上記意図解析結果が条件として設定され、この条件に合う1又は複数の上記次元別マッチングテーブルを上記次元別マッチングテーブル格納手段から取り出するものであり、
上記多次元マッチングテーブル生成手段が、取り出された上記各次元別マッチングテーブルの内容を上記基本マッチングテーブルに上書きして、上記ユーザ回答の意図解析結果に応じて動的に変更された上記多次元マッチングテーブルを生成するものであり、
上記マッチング手段が、上記ユーザ回答の意図解析結果に応じて動的に変更された上記多次元マッチングテーブルを用いて、上記対象データ格納手段から、上記ユーザ回答の意図解析結果にマッチする1又は複数の対象データを検索するものである
ことを特徴とする請求項1に記載の検索システム。 A dialogue control means for defining a question for a user using domain knowledge used for dialogue, asking a question, receiving a user response to the question, and performing a dialogue according to the user response;
Intention analysis means for receiving the user response from the dialogue control means and analyzing the intention of the sentence using the intention analysis dictionary for analyzing the intention of the sentence.
The dimension-specific matching table retrieval unit receives the intention analysis result of the user answer from the intention analysis unit, the intention analysis result is set as a condition, and one or a plurality of the dimension-specific matching tables that meet the condition are defined as the dimension. It is taken out from another matching table storage means,
The multidimensional matching table generating means overwrites the basic matching table with the content of the extracted matching table for each dimension and dynamically changes the multidimensional matching according to the intention analysis result of the user answer. To generate a table,
One or a plurality of matching means matching the intention analysis result of the user answer from the target data storage means using the multi-dimensional matching table dynamically changed according to the intention analysis result of the user answer. The search system according to claim 1, wherein the target data is searched.
条件の組み合わせという次元によって異なる次元別辞書を記憶する次元別辞書記憶部と、
条件なし時の基本辞書を記憶する基本辞書記憶部と、
前回までに取得した上記ユーザ回答の背景知識を条件として設定し、上記次元別辞書記憶部から上記条件に合う1又は複数の上記各次元別辞書を取り出す次元別辞書取出部と、
取り出された上記各次元別辞書のうち、上記条件に適用する順序の高いものから順に、上記各次元別辞書を並べ替える辞書並替部と、
上記辞書並替部により並べ替えられた上記各次元別辞書を意図解析用辞書として設定する辞書設定部と
を有し、
上記辞書設定部の設定した上記条件に適用する順序の高い上記次元別辞書から順に用いて、今回取得した上記ユーザ回答の意図解析を行う
ことを特徴とする請求項2に記載の検索システム。 The intent analysis means is
A dimensional dictionary storage unit for storing different dimensional dictionaries depending on the dimension of the combination of conditions;
A basic dictionary storage unit for storing a basic dictionary when there is no condition;
The background knowledge of the user response acquired up to the previous time is set as a condition, and a dimension-specific dictionary extraction unit that extracts one or a plurality of dimension-specific dictionaries that meet the condition from the dimension-specific dictionary storage unit,
A dictionary rearrangement unit that rearranges each of the dimension-specific dictionaries in descending order of the order of application to the conditions among the extracted dimension-specific dictionaries,
A dictionary setting unit configured to set the dictionary according to each dimension sorted by the dictionary sorting unit as a dictionary for intention analysis,
The search system according to claim 2, wherein the intention analysis of the user response acquired this time is performed using the dictionaries classified by dimension in descending order of application to the conditions set by the dictionary setting unit.
検索対象とする1又は複数の対象データを格納する対象データ格納手段と、
条件の組み合わせという次元によって上記重みの異なる1又は複数の次元別マッチングテーブルを格納する次元別マッチングテーブル格納手段と、
条件なしの時の上記重みが設定された基本マッチングテーブルを格納する基本マッチングテーブル格納手段と、
上記次元毎の優先度を示す次元別優先度を格納する次元別優先度格納手段と
を備え、
コンピュータを、
検索する値が条件として設定されると、上記次元別マッチングテーブル格納手段から、上記条件に合う上記各次元別マッチングテーブルを取り出す次元別マッチングテーブル取出手段、
取り出された上記各次元別マッチングテーブルのうち、上記次元優先度格納手段の上記次元優先度に従って上記次元優先度の低いものから順に、上記各次元別マッチングテーブルの内容を上記基本マッチングテーブルに上書きして、入力された値から対象データを検索する多次元マッチングテーブルを生成する多次元マッチングテーブル生成手段、
上記多次元マッチングテーブル生成手段により生成された多次元マッチングテーブルを用いて、上記対象データ格納手段から検索する値にマッチする1又は複数の対象データを検索するマッチング手段
として機能させることを特徴とする検索プログラム。 Using a matching table having a correspondence relationship between the value to be searched and the value of the target data corresponding to this value and the corresponding weight, the target data corresponding to the value to be searched is selected from the target data to be searched. In the search program to search,
Target data storage means for storing one or more target data to be searched;
A dimension-specific matching table storage means for storing one or a plurality of dimension-specific matching tables having different weights depending on the dimension of a combination of conditions;
A basic matching table storage means for storing a basic matching table in which the above weights are set when there is no condition;
Dimensional priority storing means for storing priority by dimension indicating the priority for each dimension, and
Computer
When a value to be searched is set as a condition, a dimension-specific matching table take-out means for taking out each dimension-specific matching table that meets the condition from the dimension-specific matching table storage means,
Of the extracted matching tables for each dimension, the contents of the matching table for each dimension are overwritten on the basic matching table in order from the lowest dimension priority according to the dimension priority of the dimension priority storage means. A multi-dimensional matching table generating means for generating a multi-dimensional matching table for searching for target data from input values,
A multi-dimensional matching table generated by the multi-dimensional matching table generating means is used to function as a matching means for searching for one or more target data that matches a value to be searched from the target data storage means. Search program.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009110638A JP4795452B2 (en) | 2009-04-30 | 2009-04-30 | Search system and search program |
PCT/JP2009/070729 WO2010125707A1 (en) | 2009-04-30 | 2009-12-11 | Search system, and medium containing a search program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009110638A JP4795452B2 (en) | 2009-04-30 | 2009-04-30 | Search system and search program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010262344A JP2010262344A (en) | 2010-11-18 |
JP4795452B2 true JP4795452B2 (en) | 2011-10-19 |
Family
ID=43031867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009110638A Active JP4795452B2 (en) | 2009-04-30 | 2009-04-30 | Search system and search program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4795452B2 (en) |
WO (1) | WO2010125707A1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995880B (en) * | 2014-05-27 | 2019-03-12 | 百度在线网络技术(北京)有限公司 | Interactive method and device |
CN105159977B (en) * | 2015-08-27 | 2019-01-25 | 百度在线网络技术(北京)有限公司 | Information interactive processing method and device |
CN108491374B (en) * | 2018-02-12 | 2022-05-27 | 郑长敬 | Word stock construction method and system based on real estate industry |
-
2009
- 2009-04-30 JP JP2009110638A patent/JP4795452B2/en active Active
- 2009-12-11 WO PCT/JP2009/070729 patent/WO2010125707A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
JP2010262344A (en) | 2010-11-18 |
WO2010125707A1 (en) | 2010-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11036774B2 (en) | Knowledge-based question answering system for the DIY domain | |
JP4890585B2 (en) | Dialog control system and program, and multidimensional ontology processing system and program | |
CN107146610B (en) | Method and device for determining user intention | |
US20170337261A1 (en) | Decision Making and Planning/Prediction System for Human Intention Resolution | |
KR101751113B1 (en) | Method for dialog management based on multi-user using memory capacity and apparatus for performing the method | |
CN106776532B (en) | Knowledge question-answering method and device | |
US20150286943A1 (en) | Decision Making and Planning/Prediction System for Human Intention Resolution | |
RU2488877C2 (en) | Identification of semantic relations in indirect speech | |
US20140280179A1 (en) | System and Apparatus for Information Retrieval | |
CN112136125A (en) | Training data extension for natural language classification | |
CN109710935B (en) | Museum navigation and knowledge recommendation method based on cultural relic knowledge graph | |
JP2009193457A (en) | Information retrieval device, method and program | |
KR102090237B1 (en) | Method, system and computer program for knowledge extension based on triple-semantic | |
WO2014160309A1 (en) | Method and apparatus for human-machine interaction | |
JP2016045652A (en) | Enquiry sentence generation device and computer program | |
WO2014008272A1 (en) | Learning-based processing of natural language questions | |
JP2015511746A (en) | Interactive information retrieval system and method | |
Demir et al. | Interactive sight into information graphics | |
Lommatzsch et al. | An Information Retrieval-based Approach for Building Intuitive Chatbots for Large Knowledge Bases. | |
Eisman et al. | A multi-agent conversational system with heterogeneous data sources access | |
CN116541493A (en) | Interactive response method, device, equipment and storage medium based on intention recognition | |
US20230103313A1 (en) | User assistance system | |
JP4967037B2 (en) | Information search device, information search method, terminal device, and program | |
CN116685966A (en) | Adjusting query generation patterns | |
JP2024528433A (en) | Visual auto-completion for geospatial queries |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20110719 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110727 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4795452 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140805 Year of fee payment: 3 |