JP2014006621A - 同義語推定装置、同義語推定方法および同義語推定プログラム - Google Patents

同義語推定装置、同義語推定方法および同義語推定プログラム Download PDF

Info

Publication number
JP2014006621A
JP2014006621A JP2012140467A JP2012140467A JP2014006621A JP 2014006621 A JP2014006621 A JP 2014006621A JP 2012140467 A JP2012140467 A JP 2012140467A JP 2012140467 A JP2012140467 A JP 2012140467A JP 2014006621 A JP2014006621 A JP 2014006621A
Authority
JP
Japan
Prior art keywords
synonym
feature
learning
query
feature value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012140467A
Other languages
English (en)
Other versions
JP5507621B2 (ja
Inventor
Kei Uchiumi
慶 内海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2012140467A priority Critical patent/JP5507621B2/ja
Publication of JP2014006621A publication Critical patent/JP2014006621A/ja
Application granted granted Critical
Publication of JP5507621B2 publication Critical patent/JP5507621B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

【課題】検索が要求されたクエリに近い同義語をより精度良く特定できる同義語推定装置、同義語推定方法および同義語推定プログラムを提供する。
【解決手段】同義語推定装置10は、複数の素性値から新たな素性値を算出する演算式の登録を受け付け、学習用データ33に基づき、文字列を意味の近い順に判定可能な複数の素性値および新たな素性値に対する重み付けを学習し、検索が要求されたクエリから検索された複数の同義語の候補の複数の素性値から演算式により新たな素性値を算出し、複数の素性値および新たな素性値を学習した重み付けで演算した演算結果に基づき、複数の同義語の候補からクエリに意味が近い同義語を特定する。
【選択図】図7

Description

本発明は、同義語推定装置、同義語推定方法および同義語推定プログラムに関する。
従来のWebページ検索では、ユーザによりクエリが入力されると、Webページ上の検索エンジンによってクエリで検索が行われ、複数のURL(Uniform Resource Locator)を含む検索結果がユーザに提示される。
ところで、クエリは、構成要素は非類似であるが、当該クエリと意味が類似する同義語が存在する場合がある。そして、入力されたクエリで検索した場合と、クエリの同義語で検索した場合とで、検索結果が異なる場合がある。例えば、Aを検索した場合、検索結果が20000件であり、Aの同義語であるA’を検索した場合、検索結果が3000件となり、検索結果が異なる場合がある。
システムがAとA’を同疑義と理解できれば予め2つのクエリのOR検索を行うことにより、損失機会を回避できる。
そこで、クエリの同義語を抽出する次のような従来技術が知られている。例えば、検索クリックスルーログを用いたラベル伝播により、入力されたクエリの同義語を検索する従来技術が知られている(例えば、特許文献1)。また、機械翻訳において、異なる言語の単語からそれぞれ素性の組を抽出して異なる言語の単語を対応付ける従来技術が知られている(例えば、特許文献2参照)。
特開2012−79029号公報 特開2010−198438号公報
しかしながら、従来技術は、検索が要求されたクエリの同義語を特定できない場合がある。
本願は、上記に鑑みてなされたものであって、検索が要求されたクエリに近い同義語をより精度良く特定できる同義語推定装置、同義語推定方法および同義語推定プログラムを提供することを目的とする。
本願に係る同義語推定装置は、複数の素性値から新たな素性値を算出する演算式の登録を受け付ける受付手段と、前記受付手段により受け付けた演算式、および同義語と見なせる文字列が意味の近さを示す情報と共に記憶された学習用データを記憶する記憶手段と、前記学習用データに基づき、文字列を意味の近い順に判定可能な前記複数の素性値および前記新たな素性値に対する重み付けを学習する学習手段と、検索が要求されたクエリから検索された複数の同義語の候補について、それぞれ同義語の候補の前記複数の素性値から前記演算式により新たな素性値を算出する算出手段と、前記複数の素性値および前記新たな素性値を前記学習手段により学習した重み付けで演算した演算結果に基づき、前記複数の同義語の候補から前記クエリに意味が近い同義語を特定する特定手段と、を有することを特徴とする。
本願に係る同義語推定装置、同義語推定方法および同義語推定プログラムは、検索が要求されたクエリに近い同義語をより精度良く特定できる。
図1は、実施形態に係る同義語検索処理を説明する図である。 図2は、素性の一例を説明する図である。 図3は、新たな素性値の一例を示す図である。 図4は、同義語の候補A、Bを素性X、Yのグラフで示した図である。 図5は、同義語の候補A、B、C、Dを素性X、Yのグラフで示した図である。 図6は、同義語の候補A、B、C、Dを素性Zのグラフで示した図である。 図7は、同義語推定装置の機能的な構成の一例を示す図である。 図8は、素性データのデータ構成の一例を示す図である。 図9は、テンプレートデータのデータ構成の一例を示す図である。 図10は、拡張素性データのデータ構成の一例を示す図である。 図11は、学習処理の手順を示すフローチャートである。 図12は、同義語特定処理の手順を示すフローチャートである。
以下に、本発明に係る同義語推定装置、同義語推定方法および同義語推定プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。
[1.同義語検索処理]
まず、実施形態に係る同義語推定装置が行う同義語検索処理について説明する。図1は、実施形態に係る同義語検索処理を説明する図である。なお、図1の例は、入力されたクエリの同義語を特定し、クエリに最も近い同義語をサジェスチョンクエリとしてユーザに提示する場合を示している。
同義語推定装置は、ユーザにより検索対象のクエリが入力される。同義語推定装置は、入力されたクエリの同義語の候補を複数検索する。そして、同義語推定装置は、検索された複数の同義語の候補をそれぞれ訂正候補として、入力されたクエリに類似する順にランキングし、最上位の訂正候補をサジェスチョンクエリとしてユーザに提示する。
同義語推定装置は、訂正候補を類似する順にランキングする際、クエリと各訂正候補との関連度を計算するため、各訂正候補とされた同義語の候補について素性を抽出する。図2は、素性の一例を説明する図である。図2の例では、同義語の候補をラベル伝播により検索した場合、ラベル伝播での検索の際のスコアを素性として抽出する。また、図2の例では、言語モデルを用いて計算した確立やTextRankなどにより、訂正候補のクエリらしさを素性として抽出する。また、図2の例では、訂正候補の文字列の長さを素性として抽出する。また、図2の例では、クエリと訂正候補が一致しているか否かを素性として抽出する。また、図2の例では、クエリと訂正候補がAcronymの関係にあるか否かを素性として抽出する。Acronymとは、「日本放送協会(Nihon Housou Kyokai)」を「NHK」と省略するなど、名称の各単語の先頭部分のみで省略したものである。また、図2の例では、クエリと訂正候補の編集距離を素性として抽出する。なお、素性は、これらに限定されず、その他の素性であってもよい。
同義語推定装置は、検索された同義語の候補についてそれぞれ各素性を抽出し、同義語毎に、当該同義語の各素性の素性値を要素とした素性ベクトルを求める。そして、同義語推定装置は、この素性ベクトルに基づいて、同義語の候補のランキングを行う。
ところで、検索された同義語の候補は、抽出された素性では手がかりが少なく、クエリとの類似度合いに応じて同義語の候補を十分に分類できない場合がある。このように同義語の候補を十分に分類できない場合、入力されたクエリに近い同義語を精度良く特定できない。
そこで、本実施形態に係る同義語推定装置では、同義語の候補毎に、複数の素性の素性値を組み合わせて演算し、新たな素性値を求める。図3は、新たな素性値の一例を示す図である。図3の例は、素性値X_1、X_2、X_3を加算して新たな素性値X’_1を求めている。また、図3の例は、素性値X_1、X_2、X_3を乗算して新たな素性値X’_2を求めている。この新たな素性値を演算する演算式は、例えば、管理者により登録される。同義語推定装置は、この新たな素性値も用いて入力されたクエリに意味が近い同義語の特定を行う。
ここで、新たな素性値を算出する効果について説明する。なお、ここでは、説明を簡略化するため、素性をX、Yの2つの場合で説明する。例えば、同義語の候補Aは、素性Xが「1」であり、素性Yが「0」であり、クエリに類似する同義語であるものとする。また、同義語の候補Bは、素性Xが「0」であり、素性Yが「1」であり、クエリに非類似の同義語であるものとする。図4は、同義語の候補A、Bを素性X、Yのグラフで示した図である。この場合、例えば、素性Xが「1」であれば類似し、素性Yが「1」であれば非類似と判別することにより、同義語の候補がクエリに類似するか否か判別できる。
一方、例えば、同義語の候補Aは、素性Xが「1」であり、素性Yが「1」であり、クエリに類似する同義語であるものとする。また、同義語の候補Bは、素性Xが「−1」であり、素性Yが「1」であり、クエリに非類似の同義語であるものとする。また、同義語の候補Cは、素性Xが「−1」であり、素性Yが「−1」であり、クエリに類似する同義語であるものとする。また、同義語の候補Dは、素性Xが「1」であり、素性Yが「−1」であり、クエリに非類似の同義語であるものとする。図5は、同義語の候補A、B、C、Dを素性X、Yのグラフで示した図である。この場合、素性Xの素性値は、クエリに類似する同義語の候補Aとクエリに非類似の同義語の候補Dで共に「1」であり、クエリに非類似の同義語の候補Bとクエリに類似する同義語の候補Cで共に「−1」である。また、素性Yの素性値は、クエリに類似する同義語の候補Aとクエリに非類似の同義語の候補Bで共に「1」であり、クエリに類似する同義語の候補Cとクエリに非類似の同義語の候補Dで共に「−1」である。よって、素性X、Yの素性値から、同義語の候補がクエリに類似するか否か判別できない。
そこで、例えば、同義語の候補A〜Dについて、それぞれ素性Xの素性値と素性Yの素性値を乗算して新たに素性Zの素性値を算出する。この場合、同義語の候補Aは、素性Xが「1」であり、素性Yが「1」であるため、素性Zが「1」となる。同義語の候補Bは、素性Xが「−1」であり、素性Yが「1」であるため、素性Zが「−1」となる。同義語の候補Cは、素性Xが「−1」であり、素性Yが「−1」であるため、素性Zが「1」となる。同義語の候補Dは、素性Xが「1」であり、素性Yが「−1」であるため、素性Zが「−1」となる。図6は、同義語の候補A、B、C、Dを素性Zのグラフで示した図である。この新しい素性Zでは、クエリに類似する同義語の候補A、Cと、クエリに非類似の同義語の候補B、Dの値が分かれる。よって、例えば、素性Zが「1」であれば類似し、素性Zが「−1」であれば非類似と判別することにより、同義語の候補がクエリに類似するか否か判別できる。このように、新たな素性を求めることにより、判別できなかった特性を判別できるようになるため、判別できなかった同義語が特定できるようになる。
[2.同義語推定装置の構成]
以下、本実施形態に係る同義語推定装置10についてさらに詳細に説明する。図7は、同義語推定装置の機能的な構成の一例を示す図である。図7に示すように、同義語推定装置10は、通信I/F(インタフェース)部20と、記憶部21と、制御部22とを有する。
通信I/F部20は、NIC(Network Interface Card)等のインタフェースである。通信I/F部20は、ネットワーク11を介した他の装置との間で各種のデータを送受信する。このネットワーク11には、他の装置、例えば、ユーザが操作するクライアント端末12や、管理者が操作する管理端末13が通信可能に接続される。
クライアント端末12は、ユーザによって利用される情報処理装置である。例えば、クライアント端末12は、デスクトップ型PC(Personal Computer)、タブレット型PC、ノート型PC、携帯電話機、PDA(Personal Digital Assistant)等である。
クライアント端末12は、同義語推定装置10によって提供されるウェブページを受信し、受信したウェブページを所定の表示部(ディスプレイ)に表示する。かかるウェブページには、検索対象とする文字列を入力可能な入力領域が設けられている。検索を行う場合、ユーザは、クライアント端末12を操作して表示部に表示されたウェブページの入力領域に検索対象とする文字列を入力し、検索実行を指示する。クライアント端末12は、検索実行を指示されると、ウェブページの入力領域に入力された文字列をクエリとして同義語推定装置10へ出力する。
管理端末13は、管理者が同義語推定装置10を管理する際に利用する情報処理装置である。例えば、管理端末13は、デスクトップ型PC、タブレット型PC、ノート型PC等である。管理者は、管理端末13を操作して同義語推定装置10を運用、管理するための各種データの登録や各種の指示を行う。例えば、管理者は、学習用データの登録を行う。また、管理者は、同義語の特定に有効な重み付け条件の学習指示を行う。
通信I/F部20は、ネットワーク11を介してクライアント端末12からクエリを受信する。また、通信I/F部20は、ネットワーク11を介して管理端末13から登録する各種データや各種の指示を受信する。
記憶部21は、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部21は、上記の種類の記憶装置に限定されるものではなく、RAM(Random Access Memory)、フラッシュメモリなどの半導体メモリ素子であってもよい。
記憶部21は、制御部22で実行されるOS(Operating System)や同義語の検索に用いる各種プログラムを記憶する。さらに、記憶部21は、制御部22で実行されるプログラムで用いられる各種データを記憶する。例えば、記憶部21は、素性データ30と、テンプレートデータ31と、拡張素性データ32と、学習用データ33と、学習用素性データ34と、学習用拡張素性データ35と、重み付け条件データ36とを記憶する。
素性データ30は、検索された同義語の候補毎に、素性値を記憶したデータである。素性データ30は、後述する導出部43により生成される。図8は、素性データのデータ構成の一例を示す図である。本実施形態に係る素性データ30は、同義語の候補毎にレコードを分けて、各素性の素性値が所定の素性順にタブ区切りでフィールドを分けて記憶されている。図8に示すように、素性データ30は、フィールド34A〜34Dが設けられている。先頭のフィールド34Aは、同義語が学習用データ33に登録されたものであるか否かを示すラベルを記憶する領域である。先頭のフィールド34Aには、同義語が学習用データ33に登録されたものである場合「1」が格納され、学習用データ33に登録されたものではない場合「0」が格納される。フィールド34B以降は、素性値を記憶する領域である。図8の例は、各同義語の候補の素性値を3つとした場合を示しており、フィールド34B〜34Dには各素性の素性値が格納されている。なお、素性値は実数とする。すなわち、素性値としては、マイナスや少数点以下の数値も用いることができる。このように素性値を実数とすることにより、単純にある特性の有無だけではなく、特性を詳細に保持できる。素性値を記憶する各フィールドは、0から順に位置を示す番号が対応付けられ、後述するテンプレートデータ31において、番号により素性値が指定される。図8の例では、フィールド34B以降のフィールドに順に0から順に位置を示す番号が示されている。
テンプレートデータ31は、データ変換の定義が記述されたデータである。テンプレートデータ31は、管理者等により登録される。本実施形態では、テンプレートデータ31により、素性データ30が拡張素性データ32に変換され、学習用素性データ34が学習用拡張素性データ35に変換される。図9は、テンプレートデータのデータ構成の一例を示す図である。テンプレートデータ31には、所定の記述方式を用いて、素性データ30に対する処理が記述される。本実施形態では、素性データ30の先頭から処理対象のレコードを1つずつずらして、それぞれテンプレートデータ31の各レコードに記述された処理を行う。そして、テンプレートデータ31の各レコードに記述された処理の処理結果を順に拡張素性データ32の1つのレコードにフィールドを分けて格納する。各レコードに記述された「T01」〜「T10」は、それぞれを識別する識別子を表しており、「:」以降に処理が定義される。本実施形態に係るテンプレートデータ31は、「%x[数1,数2]」との記述により処理対象とする素性値を示しており、現在処理対象とされたカレントレコードを基準として、処理対象の素性値を含むレコードの位置を「数1」に記述し、レコード内での処理対象の素性値の位置を示す番号を「数2」に記述する。例えば、カレントレコードの2番目の素性値を処理対象と指定する場合は、「%x[0,2]」と記述する。
図9の例では、識別子「T01」のレコードの「%x[0,0]」は、カレントレコードの0番目の素性値をそのまま格納することを示す。また、本実施形態に係るテンプレートデータ31は、演算子や関数を用いて様々な演算式も記述することが可能とされている。例えば、識別子「T04」のレコードの「%x[0,0]*%x[0,1]」は、カレントレコードの0番目の素性値と1番目の素性値を乗算することを示す。また、識別子「T07」のレコードの「%x[.,0]」は、素性データ30の0番目の素性値を全て処理対象とすることを示し、「SUM()」は、処理対象の総和を求めることを示す。よって、識別子「T07」のレコードの「%x[0,0]/SUM(%x[.,0])」は、カレントレコードの0番目の素性値を、0番目の素性値の総和で減算することを示す。すなわち、識別子「T07」のレコードは、0番目のフィールドの素性値の割合を求める。また、識別子「T10」のレコードの「%x[0,.]」は、カレントレコードの全素性値を全て処理対象とすることを示す。よって、識別子「T10」のレコードの「SUM(%x[0,.])」は、カレントレコードの全フィールドの素性値の総和を求めることを示す。すなわち、識別子「T10」のレコードは、カレントレコードの素性値の総和を求めている。
拡張素性データ32は、素性データ30に対してテンプレートデータ31に定義された演算を行った結果を記憶したデータである。拡張素性データ32は、後述する算出部44により生成される。図10は、拡張素性データのデータ構成の一例を示す図である。本実施形態に係る拡張素性データ32は、テンプレートデータ31の各レコードに記述された処理の実行結果がタブ区切りでフィールドを分けて記憶されている。図10の例では、それぞれのフィールドに、識別子と共に「::」で区切って処理の実行結果が格納されている。
学習用データ33は、同義語と見なせる文字列が意味の近さを示す情報と共に記憶されたデータである。例えば、学習用データ33は、同義語と見なせる各文字列が意味の近さを示すスコアと共に記憶されている。このスコアは、管理者等により値が定められる。学習用データ33は、管理者等により登録される。
学習用素性データ34は、学習用データ33に記憶された各文字列の素性値を記憶したデータである。本実施形態では、学習用素性データ34を素性データ30と同様のデータ構成する。学習用素性データ34は、後述する学習部41により生成される。
学習用拡張素性データ35は、学習用素性データ34に対してテンプレートデータ31に定義された演算を行った結果を記憶したデータである。本実施形態では、学習用拡張素性データ35を拡張素性データ32と同様のデータ構成する。学習用拡張素性データ35は、後述する学習部41により生成される。
図7に戻り、制御部22は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部22は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。また、制御部22は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、図示しない内部の記憶装置に記憶されているプログラムがRAMを作業領域として実行されることにより実現される。
制御部22は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部22は、受付部40と、学習部41と、検索部42と、導出部43と、算出部44と、特定部45と、送信部46とを有する。
受付部40は、管理端末13から各種のデータや各種の指示を受け付ける。例えば、受付部40は、管理端末13から学習用データを受け付けた場合、学習用データ33に登録する。また、受付部40は、管理端末13から学習指示を受け付けた場合、学習部41に対して学習モードでの動作を指示する。また、受付部40は、複数の素性値から新たな素性値を算出する演算式の登録を受け付ける。受付部40は、例えば、管理者が操作する管理端末13に所定の受付画面を表示させ、受付画面から所定の記述方式での演算式など素性データ30に対する各種の処理の定義を受け付けており、受け付けた定義を記憶部21のテンプレートデータ31に登録する。なお、受付部40は、管理端末13から編集されたテンプレートデータ31を受け付けて、記憶部21に登録してもよい。
学習部41は、学習モードでの動作が指示された場合、学習用データ33に基づき、学習用データ33に記憶された各文字列を意味の近い順に判定可能な複数の素性値および新たな素性値の重み付けを学習する。最初に、学習部41は、学習用データ33に記憶された各文字列ついてそれぞれ素性値を導出する。例えば、学習部41は、各文字列ついてそれぞれ、図2に示した各素性の素性値を実数で導出する。なお、学習用データ33に各文字列の素性値が記憶されている場合は、素性値を導出する必要はない。そして、学習部41は、各文字列毎に別なレコードで、所定の素性順に各素性の実数の素性値をタブ区切りで区切って、学習用データ33の各文字列についての学習用素性データ34を生成する。そして、学習部41は、学習用素性データ34の各レコードについて、先頭から処理対象のレコードを1つずつずらして、それぞれテンプレートデータ31の各レコードに記述された処理を行い、処理結果のデータから学習用拡張素性データ35を生成する。この学習用拡張素性データ35には、テンプレートデータ31に登録された演算式が行われた結果、実数の新たな素性値が含まれる。そして、学習部41は、学習用拡張素性データ35に記憶された、学習用データ33の各文字列の各素性値および新たな素性値をそれぞれ素性ベクトルとして、例えば、ListNetなど所定の手法によるリストワイズ学習を行い、各素性値および新たな素性値を重み付け演算した結果が学習用データ33の各文字列のスコアにより近くなるように重み値を算出する。学習部41は、算出した各素性値および新たな素性値の重み値を重み付け条件データ36として記憶部21に登録する。
検索部42は、クライアント端末12からクリエが入力した場合、入力されたクエリの同義語の候補を複数検索する。この検索方式は、同義語の候補を検索可能であれば、何れであってもよい。本実施形態では、例えば、ラベル伝播を用いて同義語の候補を複数検索する。
導出部43は、検索された複数の同義語の候補についてそれぞれ素性値を実数として導出する。例えば、導出部43は、検索された複数の同義語の候補についてそれぞれ、図2に示した各素性の実数の素性値を導出する。そして、導出部43は、同義語の候補毎にそれぞれ導出した各素性の実数の素性値を、同義語の候補毎に別なレコードで、所定の素性順に各素性の素性値をタブ区切りで区切った素性データ30を生成する。
算出部44は、生成された素性データ30について、先頭から処理対象のレコードを1つずつずらして、それぞれテンプレートデータ31の各レコードに記述された処理を行い、処理結果のデータを記憶した拡張素性データ32を生成する。例えば、テンプレートデータ31が図9に示すデータである場合、算出部44は、識別子「T01」〜「T03」のレコードについてはカレントレコードの0番目〜2番目の素性値をそのまま拡張素性データ32に格納する。また、算出部44は、識別子「T04」のレコードについてはカレントレコードの0番目と1番目の素性値を乗算して拡張素性データ32に格納する。また、算出部44は、識別子「T05」のレコードについてはカレントレコードの1番目と2番目の素性値を乗算して拡張素性データ32に格納する。また、算出部44は、識別子「T06」のレコードについてはカレントレコードの0番目と2番目の素性値を乗算して拡張素性データ32に格納する。また、算出部44は、識別子「T07」のレコードについてはカレントレコードの0番目の素性値を、0番目の素性値の総和で減算した値の符号をマイナスにして拡張素性データ32に格納する。また、算出部44は、識別子「T08」のレコードについてはカレントレコードの1番目の素性値を、1番目の素性値の総和で減算した値の符号をマイナスにして拡張素性データ32に格納する。また、算出部44は、識別子「T09」のレコードについてはカレントレコードの2番目の素性値を、2番目の素性値の総和で減算した値の符号をマイナスにして拡張素性データ32に格納する。また、算出部44は、識別子「T10」のレコードについてはカレントレコードの全素性値の総和を拡張素性データ32に格納する。
特定部45は、検索された複数の同義語の候補から入力されたクエリに意味が近い同義語を特定する。例えば、特定部45は、拡張素性データ32に格納された複数の素性値および新たな素性値に対してそれぞれ重み付け条件データ36に記憶された重み付けで重み付け演算を行い、演算結果の値が大きい順に同義語の候補をランキングし、クエリに意味が近い順序を特定する。
送信部46は、最も上位にランキングされた同義語をサジェスチョンクエリとして、クライアント端末12に送信する。これにより、クライアント端末12では、検索を指示したクエリに近い同義語がサジェスチョンクエリとして表示される。
[3.作用(同義語推定装置の動作)]
次に、本実施例に係る同義語推定装置10の作用について説明する。まず、本実施例に係る同義語推定装置10が各素性値に対する有効な重み付けを学習する学習処理の流れを説明する。図11は、学習処理の手順を示すフローチャートである。この学習処理は、所定のタイミング、例えば、管理端末13からテンプレートデータ31が登録された後に学習指示を受け付けたタイミングで実行される。
図11に示すように、学習部41は、学習用データ33に記憶された各文字列ついてそれぞれ素性値を導出し、導出した各素性の素性値を記憶した学習用素性データ34を生成する(ステップS10)。そして、学習部41は、学習用素性データ34の各レコードについて、それぞれテンプレートデータ31の各レコードに記述された処理を行い、学習用拡張素性データ35を生成する(ステップS11)。このステップS11の処理により、テンプレートデータ31に記憶された演算式による素性値の演算が行われて、新たな素性値が算出される。
そして、学習部41は、学習用拡張素性データ35を用いてリストワイズ学習を行い、学習用データ33の各文字列を意味の近い順に判定可能な各素性値および新たな素性値の重み値を算出する(ステップS12)。学習部41は、算出した各素性値および新たな素性値の重み値を重み付け条件データ36として記憶部21に登録し(ステップS13)、処理を終了する。
次に、本実施例に係る同義語推定装置10が同義語を特定する同義語特定処理の流れを説明する。図12は、同義語特定処理の手順を示すフローチャートである。この同義語特定処理は、所定のタイミング、例えば、クライアント端末12からクエリが入力されたタイミングで実行される。
図12に示すように、検索部42は、入力されたクエリの同義語の候補を複数検索する(ステップS20)。導出部43は、検索された複数の同義語の候補についてそれぞれ素性値を導出し、導出した各素性の素性値を記憶した素性データ30を生成する(ステップS21)。
算出部44は、生成した素性データ30を各レコードについて、先頭から処理対象のレコードを1つずつずらして、それぞれテンプレートデータ31の各レコードに記述された処理を行い、処理結果のデータを記憶した拡張素性データ32を生成する(ステップS22)。このステップS22の処理により、テンプレートデータ31に記憶された演算式による素性値の演算が行われて、新たな素性値が算出される。
特定部45は、拡張素性データ32に格納された複数の素性値および新たな素性値に対してそれぞれ重み付け条件データ36に記憶された重み付けで重み付け演算を行い、演算結果の値が大きい順に同義語の候補をランキングし、同義語の候補から入力されたクエリに意味が近い同義語を特定する(ステップS23)。送信部46は、最も上位にランキングされた同義語をサジェスチョンクエリとして、クライアント端末12に送信し(ステップS24)、処理を終了する。
[4.効果]
このように、同義語推定装置10は、受付部40(受付手段の一例に相当)により、複数の素性値から新たな素性値を算出する演算式の登録を受け付ける。そして、同義語推定装置10は、受け付けた演算式、および同義語と見なせる文字列が意味の近さを示す情報と共に記憶された学習用データを記憶部21(記憶手段の一例に相当)に記憶する。同義語推定装置10は、学習部41(学習手段の一例に相当)により、学習用データに基づき、文字列を意味の近い順に判定可能な複数の素性値および新たな素性値に対する重み付けを学習する。また、同義語推定装置10は、算出部44(算出手段の一例に相当)により、検索が要求されたクエリから検索された複数の同義語の候補について、それぞれ同義語の候補の複数の素性値から演算式により新たな素性値を算出する。そして、同義語推定装置10は、特定部45(特定手段の一例に相当)により、複数の素性値および新たな素性値を学習手段により学習した重み付けで演算した演算結果に基づき、複数の同義語の候補からクエリに意味が近い同義語を特定する。これにより、同義語推定装置10は、新たな素性値も加味して同義語を特定するため、検索が要求されたクエリに近い同義語をより精度良く特定できる。
また、同義語推定装置10は、特定部45が、複数の素性の素性値および新たな素性値に基づき、複数の同義語の候補について、入力されたクエリに意味が近い順序を特定する。これにより、同義語推定装置10は、入力されたクエリから近い順に、同義語の候補をランキング表示できる。
[5.その他]
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
例えば、上記の実施形態では、最も上位にランキングされた同義語の候補をサジェスチョンクエリとして送信する場合について説明したが、本発明はこれに限定されない。例えば、上位の所定位以内にランキングされた同義語をクエリと共にOR検索を行うものとしてもよい。
また、上述した同義語推定装置10は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットフォーム等をAPI(Application Programming Interface)やネットワークコンピューティングなどで呼び出して実現するなど、構成は柔軟に変更できる。
例えば、上記の実施形態では、同義語推定装置10において、入力されたクエリの同義語の候補の検索および同義語の候補についての素性値の導出を行うものとしているが、これに限定されるものではない。同義語の候補の検索や同義語の候補についての素性値の導出をWebサーバなどの別なサーバ装置で行い、同義語推定装置10は、当該別なサーバ装置から素性データ30を受信し、最も上位にランキングされた同義語を当該別なサーバ装置へ返信するものとしてもよい。
また、特許請求の範囲に記載した「手段」は、「部(section、module、unit)」や「回路」などに読み替えることができる。例えば、検索手段は、検索部や検索回路に読み替えることができる。
10 同義語推定装置
21 記憶部
22 制御部
30 素性データ
31 テンプレートデータ
32 拡張素性データ
33 学習用データ
34 学習用素性データ
35 学習用拡張素性データ
36 重み付けデータ
40 受付部
41 学習部
42 検索部
43 導出部
44 算出部
45 特定部
46 送信部

Claims (4)

  1. 複数の素性値から新たな素性値を算出する演算式の登録を受け付ける受付手段と、
    前記受付手段により受け付けた演算式、および同義語と見なせる文字列が意味の近さを示す情報と共に記憶された学習用データを記憶する記憶手段と、
    前記学習用データに基づき、文字列を意味の近い順に判定可能な前記複数の素性値および前記新たな素性値に対する重み付けを学習する学習手段と、
    検索が要求されたクエリから検索された複数の同義語の候補について、それぞれ同義語の候補の前記複数の素性値から前記演算式により新たな素性値を算出する算出手段と、
    前記複数の素性値および前記新たな素性値を前記学習手段により学習した重み付けで演算した演算結果に基づき、前記複数の同義語の候補から前記クエリに意味が近い同義語を特定する特定手段と、
    を有することを特徴とする同義語推定装置。
  2. 前記特定手段は、前記複数の素性値および前記新たな素性値に基づき、前記複数の同義語の候補について、前記クエリに意味が近い順序を特定する
    ことを特徴とする請求項1記載の同義語推定装置。
  3. コンピュータが実行する同義語推定方法であって、
    複数の素性値から新たな素性値を算出する演算式の登録を受け付ける受付工程と、
    前記受付工程により受け付けた演算式を記憶手段に記憶する記憶工程と、
    前記記憶手段に同義語と見なせる文字列が意味の近さを示す情報と共に記憶された学習用データに基づき、文字列を意味の近い順に判定可能な前記複数の素性値および前記新たな素性値に対する重み付けを学習する学習工程と、
    検索が要求されたクエリから検索された複数の同義語の候補について、それぞれ同義語の候補の前記複数の素性値から前記演算式により新たな素性値を算出する算出工程と、
    前記複数の素性値および前記新たな素性値を前記学習工程により学習した重み付けで演算した演算結果に基づき、前記複数の同義語の候補から前記クエリに意味が近い同義語を特定する特定工程と、
    を有することを特徴とする同義語推定方法。
  4. 複数の素性値から新たな素性値を算出する演算式の登録を受け付ける受付手順と、
    前記受付手順により受け付けた演算式を記憶手段に記憶する記憶手順と、
    前記記憶手段に同義語と見なせる文字列が意味の近さを示す情報と共に記憶された学習用データに基づき、文字列を意味の近い順に判定可能な前記複数の素性値および前記新たな素性値に対する重み付けを学習する学習手順と、
    検索が要求されたクエリから検索された複数の同義語の候補について、それぞれ同義語の候補の前記複数の素性値から前記演算式により新たな素性値を算出する算出手順と、
    前記複数の素性値および前記新たな素性値を前記学習手順により学習した重み付けで演算した演算結果に基づき、前記複数の同義語の候補から前記クエリに意味が近い同義語を特定する特定手順と、
    をコンピュータに実行させることを特徴とする同義語推定プログラム。
JP2012140467A 2012-06-22 2012-06-22 同義語推定装置、同義語推定方法および同義語推定プログラム Active JP5507621B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012140467A JP5507621B2 (ja) 2012-06-22 2012-06-22 同義語推定装置、同義語推定方法および同義語推定プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012140467A JP5507621B2 (ja) 2012-06-22 2012-06-22 同義語推定装置、同義語推定方法および同義語推定プログラム

Publications (2)

Publication Number Publication Date
JP2014006621A true JP2014006621A (ja) 2014-01-16
JP5507621B2 JP5507621B2 (ja) 2014-05-28

Family

ID=50104299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012140467A Active JP5507621B2 (ja) 2012-06-22 2012-06-22 同義語推定装置、同義語推定方法および同義語推定プログラム

Country Status (1)

Country Link
JP (1) JP5507621B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223463A (ja) * 2008-03-14 2009-10-01 Nippon Telegr & Teleph Corp <Ntt> 同義性判定装置、その方法、プログラム及び記録媒体
JP2011118526A (ja) * 2009-12-01 2011-06-16 Hitachi Ltd 単語意味関係抽出装置
JP2012108570A (ja) * 2010-11-15 2012-06-07 Hitachi Ltd 単語意味関係抽出装置及び単語意味関係抽出方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009223463A (ja) * 2008-03-14 2009-10-01 Nippon Telegr & Teleph Corp <Ntt> 同義性判定装置、その方法、プログラム及び記録媒体
JP2011118526A (ja) * 2009-12-01 2011-06-16 Hitachi Ltd 単語意味関係抽出装置
JP2012108570A (ja) * 2010-11-15 2012-06-07 Hitachi Ltd 単語意味関係抽出装置及び単語意味関係抽出方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
森本 康嗣: "文脈類似度と表記類似度を用いた教師あり同義語抽出", 言語処理学会第16回年次大会発表論文集, JPN6014009454, 8 March 2010 (2010-03-08), JP, pages 974 - 977, ISSN: 0002760456 *

Also Published As

Publication number Publication date
JP5507621B2 (ja) 2014-05-28

Similar Documents

Publication Publication Date Title
RU2632143C1 (ru) Способ обучения модуля ранжирования с использованием обучающей выборки с зашумленными ярлыками
US10210243B2 (en) Method and system for enhanced query term suggestion
JP3225912B2 (ja) 情報検索装置、方法及び記録媒体
US10387435B2 (en) Computer application query suggestions
RU2664481C1 (ru) Способ и система выбора потенциально ошибочно ранжированных документов с помощью алгоритма машинного обучения
WO2012142553A2 (en) Identifying query formulation suggestions for low-match queries
CN112732870B (zh) 基于词向量的搜索方法、装置、设备及存储介质
EP3491542A1 (en) Platform support clusters from computer application metadata
US9684726B2 (en) Realtime ingestion via multi-corpus knowledge base with weighting
JP2022024102A (ja) 検索モデルのトレーニング方法、目標対象の検索方法及びその装置
US20200372117A1 (en) Proximity information retrieval boost method for medical knowledge question answering systems
US10198497B2 (en) Search term clustering
JP6506489B1 (ja) 特許評価判定方法、特許評価判定装置、および特許評価判定プログラム
WO2020155747A1 (zh) 问题答案推荐方法、装置、存储介质及服务器
JP2016532210A (ja) サーチ方法、装置、設備および不揮発性計算機メモリ
CN113988157B (zh) 语义检索网络训练方法、装置、电子设备及存储介质
JP6648283B2 (ja) 人工知能ベースの関連度計算を用いたノート提供方法及び装置
JP2015106354A (ja) 検索サジェスト装置、検索サジェスト方法、及び、プログラム
CN111309872B (zh) 搜索处理方法、装置及设备
US11256707B1 (en) Per-query database partition relevance for search
CN110059172B (zh) 基于自然语言理解的推荐答案的方法和装置
CN104933099B (zh) 一种为用户提供目标搜索结果的方法与装置
JP5121872B2 (ja) 画像検索装置
JP5507620B2 (ja) 同義語推定装置、同義語推定方法および同義語推定プログラム
US10339148B2 (en) Cross-platform computer application query categories

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: 20140304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140319

R150 Certificate of patent or registration of utility model

Ref document number: 5507621

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250