IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 北京奇▲芸▼世▲紀▼科技有限公司の特許一覧

<>
  • 特許-検索語句の誤り訂正方法および装置 図1
  • 特許-検索語句の誤り訂正方法および装置 図2
  • 特許-検索語句の誤り訂正方法および装置 図3
  • 特許-検索語句の誤り訂正方法および装置 図4
  • 特許-検索語句の誤り訂正方法および装置 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2021-12-21
(45)【発行日】2022-01-18
(54)【発明の名称】検索語句の誤り訂正方法および装置
(51)【国際特許分類】
   G06F 16/9032 20190101AFI20220111BHJP
【FI】
G06F16/9032
【請求項の数】 20
(21)【出願番号】P 2019526358
(86)(22)【出願日】2017-08-14
(65)【公表番号】
(43)【公表日】2019-09-12
(86)【国際出願番号】 CN2017097357
(87)【国際公開番号】W WO2018040899
(87)【国際公開日】2018-03-08
【審査請求日】2019-01-28
【審判番号】
【審判請求日】2021-02-26
(31)【優先権主張番号】201610799830.4
(32)【優先日】2016-08-31
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】517212835
【氏名又は名称】北京奇▲芸▼世▲紀▼科技有限公司
【氏名又は名称原語表記】Beijing Qiyi Century Science & Technology Co., Ltd.
【住所又は居所原語表記】10/F & 11/F, No. 2 Haidian North 1st Street, Haidian District, Beijing, China
(74)【代理人】
【識別番号】110000110
【氏名又は名称】特許業務法人快友国際特許事務所
(72)【発明者】
【氏名】胡 軍
(72)【発明者】
【氏名】陳 英傑
(72)【発明者】
【氏名】王 天暢
(72)【発明者】
【氏名】葉 澄燦
【合議体】
【審判長】田中 秀人
【審判官】篠原 功一
【審判官】金子 秀彦
(56)【参考文献】
【文献】国際公開第2015/040793(WO,A1)
【文献】中国特許出願公開第102831177(CN,A)
【文献】中国特許出願公開第102915314(CN,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00
(57)【特許請求の範囲】
【請求項1】
検索語句の誤り訂正方法であって、
誤った検索語句を同定するステップと、
前記検索語句と事前取得された流行語句との間の重み付き編集距離を、重み付き編集距離アルゴリズムを使用することによって計算するステップであって、前記重み付き編集距離の計算中、前記検索語句から前記流行語句に変換する以下の操作、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して異なる重みが設定される、ステップと、
前記重み付き編集距離および前記流行語句の人気に基づいて、所定数の流行語句を誤り訂正プロンプト用に選択するステップと、
前記操作の重みを以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づいて設定するステップと、
を備える、方法。
【請求項2】
前記検索語句と事前取得された流行語句との間の重み付き編集距離を、重み付き編集距離アルゴリズムを使用することによって計算するステップは、
前記検索語句と前記流行語句との間の前記重み付き編集距離を表す状態遷移式を定義するステップであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、検索語句と流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、
文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解くステップと、
前記状態遷移式の解に基づいて、前記重み付き編集距離を取得するステップと、
を含む、請求項1に記載の方法。
【請求項3】
前記状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、前記2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された前記異なる重みに基づいて取得される、請求項2に記載の方法。
【請求項4】
前記方法はさらに、
前記検索語句および前記流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するステップを含む、請求項1から3のいずれか一項に記載の方法。
【請求項5】
誤った検索語句を同定するステップは、
同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するステップと、
誤った検索語句または通常検索語句として同定されるべき前記検索語句を、前記同定されるべき検索語句についての前記検索のクリック率、前記語句特徴、前記生起確率、前記完全一致結果の数、および、前記完全一致比率に基づいて決定するステップと、
を含む、請求項1から3のいずれか一項に記載の方法。
【請求項6】
前記重み付き編集距離および前記流行語句の人気に基づいて、所定数の流行語句を誤り訂正プロンプト用に選択するステップは、
前記流行語句の検索数を正規化するステップと、
前記重み付き編集距離および前記流行語句の前記検索数を正規化した結果に基づいて、推奨総合スコアを計算するステップと、
誤り訂正プロンプトを実行するために、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するステップと、
を含む、請求項1から3のいずれか一項に記載の方法。
【請求項7】
重み付き編集距離を計算する方法であって、
ソース文字列およびターゲット文字列を取得するステップと、
前記ソース文字列と前記ターゲット文字列との間の重み付き編集距離を計算するステップであって、前記重み付き編集距離の前記計算中、前記ソース文字列から前記ターゲット文字列に変換する異なる操作に対して異なる重みがそれぞれ設定される、ステップと、
を含み、
前記操作の重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づいて設定されている、方法。
【請求項8】
前記ソース文字列と前記ターゲット文字列との間の重み付き編集距離を計算するステップは、
前記ソース文字列と前記ターゲット文字列との間の前記重み付き編集距離を表す状態遷移式を定義するステップであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、前記ソース文字列と前記ターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、
異なる操作に対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解くステップと、
前記重み付き編集距離を前記状態遷移式の解に基づいて取得するステップと、
を含む、請求項7に記載の方法。
【請求項9】
検索語句の誤り訂正装置であって、
誤った検索語句を同定するための誤った検索語句同定ユニットと、
前記検索語句と事前取得された流行語句との間の重み付き編集距離を、重み付き編集距離アルゴリズムを使用することによって計算するための重み付き編集距離計算ユニットであって、前記重み付き編集距離の計算中、前記検索語句から前記流行語句に変換する以下の操作、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して異なる重みが設定される、重み付き編集距離計算ユニットと、
前記重み付き編集距離および前記流行語句の人気に基づいて、所定数の流行語句を誤り訂正プロンプト用に選択するための誤り訂正プロンプトユニットと、
前記操作の重みを以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づいて設定するための操作重み設定ユニットと、
を備える、装置。
【請求項10】
前記重み付き編集距離計算ユニットは、
前記検索語句と前記流行語句との間の前記重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、検索語句と流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、
文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解き、前記取得された解を前記重み付き編集距離として使用するための式解決定サブユニットと、
を含む、請求項9に記載の装置。
【請求項11】
前記状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、前記2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された前記異なる重みに基づいて取得される、請求項10に記載の装置。
【請求項12】
前記装置はさらに、
前記検索語句および前記流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するための、類似の外見または発音を有する文字の決定ユニットを備える、請求項9から11のいずれか一項に記載の装置。
【請求項13】
前記誤った検索語句同定ユニットは、
同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するためのログ検索および計算サブユニットと、
誤った検索語句または通常検索語句として同定されるべき前記検索語句を、前記同定されるべき検索語句についての前記検索のクリック率、前記語句特徴、前記生起確率、前記完全一致結果の数、および、前記完全一致比率に基づいて決定するための同定結果決定サブユニットと、
を含む、請求項9から11のいずれか一項に記載の装置。
【請求項14】
前記誤り訂正プロンプトユニットは、
前記流行語句の検索数を正規化するための正規化処理サブユニットと、
前記重み付き編集距離および前記流行語句の前記検索数を正規化した結果に基づいて、推奨総合スコアを計算するための推奨総合スコア計算サブユニットと、
誤り訂正プロンプトを実行するために、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するための推奨語句決定サブユニットと、
を含む、請求項9から11のいずれか一項に記載の装置。
【請求項15】
重み付き編集距離を計算するための装置であって、
ソース文字列およびターゲット文字列を取得するための取得ユニットと、
前記ソース文字列と前記ターゲット文字列との間の重み付き編集距離を計算するための計算ユニットであって、前記重み付き編集距離の前記計算中、前記ソース文字列から前記ターゲット文字列に変換する異なる操作に対して異なる重みがそれぞれ設定される、計算ユニットと、
を備え、
前記操作の重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づいて設定されている、装置。
【請求項16】
前記計算ユニットは、
前記ソース文字列と前記ターゲット文字列との間の前記重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、前記ソース文字列と前記ターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、
異なる操作に対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解き、取得された解を前記重み付き編集距離として使用するための状態遷移式解サブユニットと、
を含む、請求項15に記載の装置。
【請求項17】
第1のプロセッサ、第1の通信インターフェース、第1のメモリ、および、第1の通信バスを備える電子装置であって、前記第1のプロセッサ、前記第1の通信インターフェース、および、前記第1のメモリは、前記第1の通信バスを介して相互に通信し、
前記第1のメモリは、コンピュータプログラムを記憶するために使用され、
前記第1のプロセッサは、前記第1のメモリ上に記憶されたプログラムを実行するとき、請求項1から6のいずれか一項に記載の方法のステップを実行するために使用される、電子装置。
【請求項18】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、プロセッサによって前記コンピュータプログラムが実行されているとき、前記コンピュータプログラムは、前記プロセッサが請求項1から6のいずれか一項に記載の方法のステップを実行することを可能にする、コンピュータ可読記憶媒体。
【請求項19】
第2のプロセッサ、第2の通信インターフェース、第2のメモリ、および、第2の通信バスを備える電子装置であって、前記第2のプロセッサ、前記第2の通信インターフェース、および前記第2のメモリは、前記第2の通信バスを介して相互に通信し、
前記第2のメモリは、コンピュータプログラムを記憶するために使用され、
前記第2のプロセッサは、前記第2のメモリ上に記憶された前記プログラムを実行するとき、請求項7または8に記載の方法のステップを実行するために使用される、電子装置。
【請求項20】
コンピュータプログラムが記憶されたコンピュータ可読記憶媒体であって、プロセッサによって前記コンピュータプログラムが実行されているとき、前記コンピュータプログラムは、前記プロセッサが請求項7または8に記載の方法のステップを実行することを可能にする、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2016年8月31日に中華人民共和国の国家知識産権局に出願された、「検索語句の誤り訂正方法および装置」と題された中国特許出願第201610799830.4号の優先権を主張し、同出願は、その全体が参照により本明細書に組み込まれる。
【0002】
本出願は、コンピュータ技術の分野に関し、具体的には検索語句の誤り訂正方法および装置に関する。
【背景技術】
【0003】
ユーザによって入力された検索語句は、通常多くの誤字を含み、これは、ユーザのニーズを満たさない検索結果につながる。誤った検索語句の理由は、比較的複雑であり、主に同音異義語選択の誤り、ピンイン(Pinyin)の綴りの間違い、グリフ(Glyph)入力の誤りなどが挙げられる。上記の問題を解決するために、誤り訂正プロンプトが使用され得る。誤り訂正プロンプトは、検索ページにおいて、ユーザによって入力された検索語句は不精確であるおそれがあるとユーザに促し、入力された検索語句に基づいてあり得る該当する検索語句を推奨する。従来の誤り訂正技法の大部分では、辞書中の語句を含む独創的な語句は、編集距離技術を使用することによって比較され、次いで、その独創的な語句からの編集距離が最も小さいK個の語句が選択される。編集操作は、1)ある文字の別の文字による置換、2)ある文字の挿入、3)ある文字の削除、を含む。このような編集操作は、置換文字間の関係を考慮に入れていない。多くの場合、このような従来の編集距離技術の効果は、さほど良好ではない。
【発明の概要】
【課題を解決するための手段】
【0004】
誤り訂正の精度を改善するために、本出願の実施形態は、検索語句の誤り訂正方法および装置を提供する。
【0005】
本出願の一つの態様によれば、検索語句の誤り訂正方法が提供される。当該方法は、誤った検索語句を同定するステップと、前記検索語句と事前取得された流行語句との間の重み付き編集距離を、重み付き編集距離アルゴリズムを使用することによって計算するステップであって、前記重み付き編集距離の計算中、前記検索語句から前記流行語句に変換する以下の操作、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して異なる重みが設定される、ステップと、前記重み付き編集距離および前記流行語句の人気に基づいて、所定数の流行語句を誤り訂正プロンプト用に選択するステップと、を備えてもよい。
【0006】
任意追加的に、前記検索語句と事前取得された流行語句との間の重み付き編集距離を、重み付き編集距離アルゴリズムを使用することによって計算するステップは、前記検索語句と前記流行語句との間の前記重み付き編集距離を表す状態遷移式を定義するステップであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、検索語句と流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解くステップと、前記状態遷移式の解に基づいて、前記重み付き編集距離を取得するステップと、を含む。
【0007】
任意追加的に、前記状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、前記2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された前記異なる重みに基づいて取得される。
【0008】
任意追加的に、前記方法はさらに、前記検索語句および前記流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するステップを含む。
【0009】
任意追加的に、前記方法はさらに、
前記操作の重みを以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づいて設定するステップを含む。
【0010】
任意追加的に、誤った検索語句を同定するステップは、同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するステップと、誤った検索語句または通常検索語句として同定されるべき前記検索語句を、前記検索のクリック率、前記語句特徴、前記生起確率、前記完全一致結果の数、および、前記同定されるべき検索語句についての前記完全一致比率に基づいて決定するステップと、を含む。
【0011】
任意追加的に、前記重み付き編集距離および前記流行語句の人気に基づいて、所定数の流行語句を誤り訂正プロンプト用に選択するステップは、前記流行語句の検索数を正規化するステップと、前記重み付き編集距離および前記流行語句の前記検索数を正規化した結果に基づいて、推奨総合スコアを計算するステップと、誤り訂正プロンプトを実行するために、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するステップと、を含む。
【0012】
本出願のさらに別の態様によれば、重み付き編集距離を計算する方法が提供される。当該方法は、ソース文字列およびターゲット文字列を取得するステップと、前記ソース文字列と前記ターゲット文字列との間の重み付き編集距離を計算するステップであって、前記重み付き編集距離の前記計算中、前記ソース文字列から前記ターゲット文字列に変換する異なる操作に対して異なる重みがそれぞれ設定される、ステップと、を含む。
【0013】
任意追加的に、前記ソース文字列と前記ターゲット文字列との間の重み付き編集距離を計算するステップは、前記ソース文字列と前記ターゲット文字列との間の前記重み付き編集距離を表す状態遷移式を定義するステップであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、前記ソース文字列と前記ターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、異なる操作に対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解くステップと、前記重み付き編集距離を前記状態遷移式の解に基づいて取得するステップと、を含む。
【0014】
本出願のさらに別の態様によれば、検索語句の誤り訂正装置が提供される。当該装置は、誤った検索語句を同定するための誤った検索語句同定ユニットと、前記検索語句と事前取得された流行語句との間の重み付き編集距離を、重み付き編集距離アルゴリズムを使用することによって計算するための重み付き編集距離計算ユニットであって、前記重み付き編集距離の計算中、前記検索語句から前記流行語句に変換する以下の操作、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して異なる重みが設定される、重み付き編集距離計算ユニットと、前記重み付き編集距離および前記流行語句の人気に基づいて、所定数の流行語句を誤り訂正プロンプト用に選択するための誤り訂正プロンプトユニットと、を備える。
【0015】
任意追加的に、前記重み付き編集距離計算ユニットは、前記検索語句と前記流行語句との間の前記重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、検索語句と流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解き、前記取得された解を前記重み付き編集距離として使用するための式解決定サブユニットと、を含む。
【0016】
任意追加的に、前記状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、前記2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された前記異なる重みに基づいて取得される。
【0017】
任意追加的に、前記装置はさらに、前記検索語句および前記流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するための、類似の外見または発音を有する文字の決定ユニットを備える。
【0018】
任意追加的に、前記装置はさらに、前記操作の重みを以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づいて設定するための操作重み設定ユニットを備える。
【0019】
任意追加的に、誤った検索語句同定ユニットは、同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するためのログ検索および計算サブユニットと、誤った検索語句または通常検索語句として同定されるべき前記検索語句を、前記検索のクリック率、前記語句特徴、前記生起確率、前記完全一致結果の数、および、前記同定されるべき検索語句についての前記完全一致比率に基づいて決定するための同定結果決定サブユニットと、を含む。
【0020】
任意追加的に、前記誤り訂正プロンプトユニットは、前記流行語句の検索数を正規化するための正規化処理サブユニットと、前記重み付き編集距離および前記流行語句の前記検索数を正規化した結果に基づいて、推奨総合スコアを計算するための推奨総合スコア計算サブユニットと、誤り訂正プロンプトを実行するために、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するための推奨語句決定サブユニットと、を含む。
【0021】
本出願のさらに別の態様によれば、重み付き編集距離を計算するための装置が提供される。当該装置は、ソース文字列およびターゲット文字列を取得するための取得ユニットと、前記ソース文字列と前記ターゲット文字列との間の重み付き編集距離を計算するための計算ユニットであって、前記重み付き編集距離の前記計算中、前記ソース文字列から前記ターゲット文字列に変換する異なる操作に対して異なる重みがそれぞれ設定される、計算ユニットと、を備える。
【0022】
任意追加的に、前記計算ユニットは、前記ソース文字列と前記ターゲット文字列との間の前記重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、前記状態遷移式の2つの状態変数が定義され、前記2つの状態変数は、前記ソース文字列と前記ターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、異なる操作に対して設定された前記異なる重みに基づいて、それぞれの操作について前記状態遷移式を解き、取得された解を前記重み付き編集距離として使用するための状態遷移式解サブユニットと、を含む。
【0023】
本出願のさらに別の態様によれば、本出願のある実施形態は、検索語句の誤り訂正方法を提供する。当該方法は、誤った検索語句を同定するステップと、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って、同定された検索語句と事前取得された流行語句との間の重み付き編集距離を計算するステップであって、前記操作は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作を含む、ステップと、重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するステップと、を備える。
【0024】
任意追加的に、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って、同定された検索語句と事前取得された流行語句との間の重み付き編集距離を計算するステップは、同定された検索語句と事前取得された流行語句との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、同定された検索語句と事前取得された流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して、それぞれの操作について事前設定された異なる重みに基づいて状態遷移式を解くステップと、重み付き編集距離を状態遷移式の解に基づいて取得するステップと、を含む。
【0025】
任意追加的に、前記状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、前記2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された前記異なる重みに基づいて取得される。
【0026】
任意追加的に、類似の外見または発音を有する文字によって置換する操作は、
検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定することを含む。
【0027】
任意追加的に、検索語句から流行語句に変換する操作に対して事前設定される異なる重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づく。
【0028】
任意追加的に、誤った検索語句を同定するステップは、同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するステップと、誤った検索語句として同定されるべき検索語句を、同定されるべき検索語句の検索のクリック率、語句特徴、生起確率、完全一致結果の数、および完全一致比率に基づいて決定するステップと、を含む。
【0029】
任意追加的に、前記重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するステップは、事前取得された流行語句の検索数を正規化するステップと、重み付き編集距離および流行語句の検索数を正規化した結果に基づいて推奨総合スコアを計算するステップと、誤り訂正プロンプトを実行するために、事前取得された流行語句から、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するステップと、を含む。
【0030】
本出願の別の態様によれば、本出願のある実施形態は、重み付き編集距離を計算するための方法を提供する。当該方法は、ソース文字列およびターゲット文字列を取得するステップと、ソース文字列からターゲット文字列に変換する異なる操作に対してそれぞれ異なる重みを設定し、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップと、を備える。
【0031】
任意追加的に、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップは、ソース文字列とターゲット文字列との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、ソース文字列とターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、異なる操作に対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解くステップと、重み付き編集距離を状態遷移式の解に基づいて取得するステップと、を含む。
【0032】
本出願のさらに別の態様によれば、本出願のある実施形態は、検索語句の誤り訂正装置を提供する。当該装置は、誤った検索語句を同定するための誤った検索語句同定ユニットと、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って、同定された検索語句と事前取得された流行語句との間の重み付き編集距離を計算するための重み付き編集距離計算ユニットであって、前記操作は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作を含む、重み付き編集距離計算ユニットと、重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するための誤り訂正プロンプトユニットと、
を備える。
【0033】
重み付き編集距離計算ユニットは、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、同定された検索語句と事前取得された流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して事前設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解き、、状態遷移式の解に基づいて重み付き編集距離を取得するための式解決定サブユニットと、を含む。
【0034】
任意追加的に、前記状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、前記2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された前記異なる重みに基づいて取得される。
【0035】
任意追加的に、類似の外見または発音を有する文字によって置換する操作は、検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定することを含む。
【0036】
任意追加的に、検索語句から流行語句に変換する操作に対して事前設定される異なる重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、
に基づく。
【0037】
任意追加的に、誤った検索語句同定ユニットは、同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するためのログ検索および計算サブユニットと、誤った検索語句として同定されるべき検索語句を、同定されるべき検索語句の検索のクリック率、語句特徴、生起確率、完全一致結果の数、および完全一致比率に基づいて決定するための同定結果判定サブユニットと、を含む。
【0038】
任意追加的に、誤り訂正プロンプトユニットは、事前取得された流行語句の検索数を正規化するための正規化サブユニットと、重み付き編集距離および流行語句の検索数を正規化した結果に基づいて推奨総合スコアを計算するための推奨総合スコア計算サブユニットと、誤り訂正プロンプトを実行するために、事前取得された流行語句から、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を誤り訂正用の推奨語句として選択するための推奨語句決定サブユニットと、を含む。
【0039】
本出願の別の態様によれば、本出願のある実施形態は、重み付き編集距離を計算するための装置を提供する。当該装置は、ソース文字列およびターゲット文字列を取得するための取得ユニットと、ソース文字列からターゲット文字列に変換する異なる操作に対してそれぞれ異なる重みを設定し、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するための計算ユニットと、を備える。
【0040】
任意追加的に、計算ユニットは、ソース文字列とターゲット文字列との間の重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、ソース文字列とターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、異なる操作に対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解き、状態遷移式の解に基づいて重み付き編集距離を取得するための状態遷移式解決定サブユニットと、を含み得る。
【0041】
本出願のさらに別の態様によれば、本出願のある実施形態は、第1のプロセッサ、第1の通信インターフェース、第1のメモリ、および第1の通信バスを備える電子装置を開示し、第1のプロセッサ、第1の通信インターフェース、および、第1のメモリは、第1の通信バスを介して相互に通信し、第1のメモリは、コンピュータプログラムを記憶するために使用され、第1のプロセッサは、上記の検索語句の誤り訂正方法のステップを実行するように第1のメモリに記憶されたプログラムを実行するために使用される。
【0042】
本出願のさらに別の態様によれば、本出願のある実施形態はさらに、コンピュータプログラムが記憶されたコンピュータ可読記憶媒体を開示し、プロセッサによってコンピュータプログラムが実行されているとき、コンピュータプログラムは、プロセッサが上記の検索語句の誤り訂正方法のステップを実行することを可能にする。
【0043】
本出願のさらに別の態様によれば、本出願のある実施形態はさらに、第2のプロセッサ、第2の通信インターフェース、第2のメモリ、および、第2の通信バスを備える電子装置を開示し、第2のプロセッサ、第2の通信インターフェース、および第2のメモリは、第2の通信バスを介して相互に通信し、第2のメモリは、コンピュータプログラムを記憶するために使用され、第2のプロセッサは、第2のメモリに記憶されたプログラムを実行するとき、上記の重み付き編集距離を計算するための方法のステップを実行するために使用される。
【0044】
本出願のさらに別の態様によれば、本出願のある実施形態はさらに、コンピュータプログラムが記憶されたコンピュータ可読記憶媒体を開示し、プロセッサによってコンピュータプログラムが実行されているとき、コンピュータプログラムは、プロセッサが上記の重み付き編集距離を計算するための方法のステップを実行することを可能にする。
【0045】
本出願の実施形態は重み付き編集距離に基づく検索語句の誤り訂正方法および装置を提供することが分かる。文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して異なる重みを設定することによって、重み付き編集距離計算中、検索語句から流行語句への変換プロセスに伴い得る全ての操作が、十分にカバーされる。このように、検索語句と流行語句との間の重み付き編集距離をより迅速かつ精確に計算し、それによって検索語句誤り訂正の精度を改善することができる。
【0046】
本出願の実施形態の技術的解決策および先行技術における技術的解決策をより明確に説明するために、実施形態および先行技術において必要とされる図面の簡単な紹介を以下に提供する。当然ながら、以下に説明する図面は、本出願のいくつかの実施形態のみのためのものであり、他の図面は、これらの図面に基づいていかなる創造的努力もなしに当業者によって取得され得る。
【図面の簡単な説明】
【0047】
図1】本出願のある実施形態によって提供される検索語句の誤り訂正方法のフローチャートである。
図2】本出願のある実施形態によって提供される重み付き編集距離を計算するための方法のフローチャートである。
図3】本出願のある実施形態によって提供される検索語句の誤り訂正装置の概略構造図である。
図4】本出願のある実施形態によって提供される電子装置の第1の概略構造図である。
図5】本出願のある実施形態によって提供される電子装置の第2の概略構造図である。
【発明を実施するための形態】
【0048】
本出願の目的、技術的解決策、および利点をより明確にするために、以下において、本出願に関する説明を、図面および実施形態を参照しながらより詳細に提供する。当然ながら、説明する実施形態は、全ての実施形態ではなく、本出願の実施形態の単なる一部である。本出願の実施形態に基づいていかなる創造的努力もなしに当業者によって取得される全ての他の実施形態は、本出願の保護範囲に属する。
【0049】
上記で分析したように、先行技術における編集距離に基づく誤り訂正解決策では、類似の外見を有する文字、類似の発音を有する文字などの置換文字間の関係も、隣接文字間の文字列交換の操作も考慮に入れない。このように、このような従来の編集距離の効果は理想的なものではない。
【0050】
本出願の実施形態は、重み付き編集距離に基づく検索語句の誤り訂正方法および装置を提供する。文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対してそれぞれ異なる重みを設定することによって、重み付き編集距離計算中、検索語句から流行語句への変換プロセスに伴い得る全ての操作が、十分にカバーされる。このように、検索語句と流行語句との間の重み付き編集距離をより迅速かつ精確に計算し、それによって検索語句誤り訂正の精度を改善することができる。
【0051】
本出願のある実施形態によって提供される検索語句の誤り訂正方法のフローチャートである図1を参照されたい。方法は、以下のものを含む。
S101:誤った検索語句を同定するステップ。
【0052】
第一に、検索語句の誤り訂正は誤った検索語句の誤り訂正であるので、誤った検索語句を同定する必要がある。誤った検索語句、例えば、同音異義語選択の間違い、ピンインの綴り間違い、グリフ入力の間違いによる検索語句を生じさせる多くの場合が存在し、これは、ユーザのニーズを満たさない検索結果につながる。ある具体的な実装では、誤った検索語句は、検索ログに基づいて同定することができる。誤った検索語句は、検索のクリック率、完全一致検索結果の数、および言語モデルに基づく検索語句の確率を介して効果的に同定することができる。
【0053】
本出願のある実施形態では、以下のステップ1~2を含む誤った検索語句を同定するための方法が提供される。
ステップ1、同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するステップ。
【0054】
具体的には、
第一に、同定されるべき検索語句の検索のクリック率が計算される。例えば、同定されるべき検索語句がユーザによって検索された回数および検索結果がユーザによってクリックされた回数は、検索ログから取得され得る。検索のクリック率は、検索結果がクリックされた回数を検索数で除算することによって取得され得る。
【0055】
第二に、同定されるべき検索語句をセグメント化して複数の語句特徴が取得される。
【0056】
その後、同定されるべき検索語句の生起確率が、統計的言語モデルおよび様々な語句特徴を使用して計算される。
【0057】
次いで、同定されるべき検索語句の完全一致結果の数および該当する結果の数が計算される。完全一致結果の数は、同定されるべき検索語句の全ての検索結果のうち、同定されるべき検索語句の全内容を含む結果の数である。該当する結果の数は、同定されるべき検索語句の全ての検索結果のうち、同定されるべき検索語句の内容の一部を含む結果の数である。
【0058】
例えば、同定されるべき検索語句は「遠隔制御することができるカメラ」であり、同定されるべき検索語句の内容の一部は「カメラ」であり、検索結果において、「遠隔制御することができるカメラ」を含む結果の数は10であり、「カメラ」を含む結果の数は15である。
【0059】
このように、完全一致結果の数は10であり、該当する結果の数は15である。
【0060】
最後に、完全一致結果の数と該当する結果の数との比率を計算して完全一致比率が得られる。
【0061】
ステップ2、誤った検索語句または通常検索語句として同定されるべき検索語句を、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、同定されるべき検索語句についての完全一致比率に基づいて決定するステップ。
【0062】
同定されるべき検索語句の特徴は、多次元的特徴にマージすることができ、同定されるべき検索語句の多次元的特徴としては、以下のいくつか、検索のクリック率、全ての語句特徴、同定されるべき検索語句の生起確率、完全一致結果の数、完全一致比率、が挙げられる。同定されるべき検索語句は、多次元的特徴に基づいて同定することができ、多次元的特徴は、同定されるべき検索語句を同定することの難しさを低減し、それによって同定されるべき検索語句を同定する能力を改善し得、同定されるべき検索語句が誤った検索語句であるのかどうか同定するのに有利である。
【0063】
S102:検索語句と事前取得された流行語句との間の重み付き編集距離を、重み付き編集距離アルゴリズムを使用することによって計算するステップであって、重み付き編集距離の計算中、異なる重みが、検索語句から流行語句に変換する以下の操作、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して設定されるステップ。
【0064】
流行語句は、現実世界またはインターネット上で非常に人気のある語である。実際の運用では、多くの流行語句は、クリックスルー率によって流行語句リストを構成すると判定することができる。流行語句リストの作成中、クリックスルー率が低く検索結果が少ない流行語句は、流行語句の精度を確保するために除去するべきである。本出願のある実施形態では、誤った検索語句は、編集距離が小さい流行語句に訂正され、それによってより良好なユーザ体験を提供する。
【0065】
当業者が理解することができるように、編集距離は、レーベンシュタイン距離とも呼ばれ、ある文字列を別の文字列に変換するために要求される最小の編集操作の数を指す。従来の編集操作は、ある文字を別の文字で置換するステップ、ある文字を挿入するステップ、ある文字を削除するステップを含む。一般に、編集距離が小さいほど、2つの文字列の類似度は大きくなる。
【0066】
従来の編集距離操作は、ある文字を別の文字によって置換するステップ、ある文字を挿入するステップ、ある文字を削除するステップを含み得、操作の各々は、1の編集距離に対応する。これらの操作は、文字列内の隣接する文字の交換も含まず、類似の外見または発音を有する文字の置換操作の特殊性も考慮に入れない。交換操作は、2つの置換操作によって行うことができる。例えば、CD->DD->DC、対応する距離は、従来の編集距離アルゴリズムによれば、2である。ユーザが実際の検索プロセスにおいて位置交換された2つの文字を入力する確率が非常に高いことを考慮すると、交換操作に対して2の距離を有することは不合理である。さらに、類似の外見または発音を有する文字のためにユーザが誤った検索語句を入力する確率も高いので、当然ながら、具体的な処理なしにこのような特別の置換操作に対して1の距離を設定することは不合理である。
【0067】
このため、本出願のある実施形態は、それぞれ重みが設定された以下の5つの操作を含む、重み付き編集距離を計算するための方法を提供する。
1)文字を挿入する操作の重みは、1に設定される。
2)文字を削除する操作の重みは、1に設定される。
3)類似の外見または発音を有する文字によって置換する操作の重みは、w1に設定される。
4)非類似の外見または発音を有する文字によって置換する操作の重みは、に設定される。
5)文字を交換する操作の重みは、w2に設定される。
【0068】
より良好な効果を得るために、w1およびw2の値に対して特別な注意を払わなければならず、一般に、これらは、w1<w2<1を満たす必要がある。任意追加的に、操作重みは以下の関係、類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、に基づいて設定することができることが実験によって得られる。
【0069】
様々な可能な操作が考慮され、それぞれに異なる重みが付与されており、結果として、このような重み付き編集距離を適用して誤り訂正を実行することによって、文字列間の計算される類似度についてより高い精度を得ることができる。
【0070】
それゆえに、別の見地からは、本出願のある実施形態によって提供される重み付き編集距離を計算するための方法は、
ソース文字列およびターゲット文字列を取得するステップと、
ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップであって、重み付き編集距離の計算中、ソース文字列からターゲット文字列に変換する異なる操作に対して異なる重みがそれぞれ設定される、ステップと、
を含み得る。
【0071】
重み付き編集距離(「動的プログラミング」としても知られる)によって、異なる操作に対して異なる重みを設定して上記の問題を解決することができる。そのアイデアは、操作の状態を記述して状態遷移式を解くことである。
【0072】
編集距離の問題は、ソース文字列(str1、本実施形態における検索語句)およびターゲット文字列(str2、本実施形態における流行語句)に影響を与える。当然ながら、1つの状態変数では、重み付き編集距離を計算することによってソース文字列からターゲット文字列に変換する二項関係を記述することができない。このように、2つの状態変数iおよびjを使用して、ソース文字列からターゲット文字列への遷移プロセスにおける一状態を記述する。ソース文字列str1の1->iからターゲット文字列str2の1->jへの最適な編集距離はedit(i,j)によって表され、式中、1->iはソース文字列中のiの長さを有する下位文字列を表し、1->jはターゲット文字列中のjの長さを有する下位文字列を表す。ソース文字列からターゲット文字列への遷移、すなわちti<iおよびtj<jのこれらの下位状態からiおよびjの状態への遷移のために状態遷移式が必要とされ、下位状態は、編集距離を計算する前のソース文字列およびターゲット文字列の状態である。具体的には、ti<iは、ソース文字列がターゲット文字列に変換されていないときのソース文字列の状態を表し、tj<jは、ソース文字列がターゲット文字列に変換されていないときのターゲット文字列の状態を表し、iおよびjの状態はそれぞれ、編集距離が計算された後のソース文字列およびターゲット文字列の状態を表す。本出願の実施形態における重み付き編集距離の操作は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および文字を交換する操作を含み、下位状態は、このような5つの操作を経て現在の状態に遷移し、現在の状態は、iおよびjの状態である。本出願の実施形態においてiおよびjの値は整数であることに留意すべきである。
【0073】
本出願のある実施形態によって提供される重み付き編集距離を計算するための方法の流れ図である図2を参照されたい。方法は、
S201:検索語句と流行語句との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、検索語句と流行語句との間のそれぞれで対応する位置にある文字を表すために使用される、ステップと、
S202:文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解き、状態遷移式の解に基づいて重み付き編集距離を取得するステップと、
を含む。
【0074】
本出願のある実施形態では、流行語句と誤った検索語句との間の類似度は、重み付き編集距離アルゴリズムを使用することによって得られる。最後に、状態遷移式が定義され、edit(i,j)は、第1の文字列中のiの長さを有する下位文字列から第2の文字列中のjの長さを有する下位文字列への重み付き編集距離を表すために使用され、str1(i)は第1の文字列の(i+1)番目の文字を表し、str2(j)は、第2の文字列の(j+1)番目の文字を表す。動的プログラミングに基づいて重み付き編集距離を計算するための方法の論理実装例を以下に提供する。
A.i==0かつj==0の場合、edit(i,j)=0。
B.i==0かつj>0の場合、edit(i,j)=j。
C.i>0かつj==0の場合、edit(i,j)=i。
D.i≧1かつj≧1の場合、edit(i,j)=min{edit(i-1,j)+1、edit(i,j-1)+1、edit(i-1,j-1)+f(i,j)}であり、式中、
D1.str1(i-1)==str2(j-1)の場合、f(i,j)=0
D2.str1(i-1)およびstr2(j-1)が類似の外見または発音を有する文字である場合、f(i,j)=w1
D3.i≧2かつj≧2かつstr1(i-2)==str2(j-1)かつstr1(i-1)==str2(j-2)の場合、f(i,j)=1-w2
D4.さもなければ、f(i,j)=1
式中、ステップA、B、およびCは、edit(i,j)の機能の初期化を示し、ステップD1は、文字str1(i-1)が文字str2(j-1)と同じであることを表し、ステップD2は、それらが類似の外見または発音を有する文字である場合、文字str1(i-1)および文字str2(j-1)によって置換する操作を表し、ステップD3は、交換する操作を表し、ステップD4は、挿入、削除、および非類似の外見または発音を有する文字による置換の操作を表し、f(i,j)は、操作のコストであり、それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された異なる重みに基づいて得られる。これによれば、誤った検索語句と流行語句との間の編集距離を計算することができる。
【0075】
ステップD2では、類似の外見または発音を有する文字によって置換する操作は、検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブルに従って判定するステップを含み得る。例えば、中国文字については、類似の発音を有する文字のマッピングテーブルは、第1に中国文字のピンインを抽出し、次いでピンインに対応する全ての中国文字を見出すことによって、作成することができる。同様に、中国語以外の言語については、同様の方法でマッピングテーブルを作成することができる。
【0076】
S103:重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するステップ。
【0077】
具体的には、誤り訂正のために選択される所定数の流行語句が推奨語句である。推奨語句の選択は、以下のステップによって達成することができる。1.事前取得された流行語句の検索数を正規化するステップ。2.重み付き編集距離および事前取得された流行語句の検索数を正規化するステップの結果に基づいて推奨総合スコアを計算するステップ。3.事前取得された流行語句から、最も高い推奨総合スコアおよび事前設定された値未満の重み付き編集距離を有する所定数の流行語句を、誤り訂正の推奨語句として選択するステップ。
【0078】
推奨語句の選択中、編集距離および流行語句の人気を考慮に入れることが必要である。重み付き編集距離がedit_scoreであり、流行語句の検索数がimpression_countであると仮定すると、流行語句の検索数は、対数式を使用することによって0~1の値に正規化される。これは例えばhot_index=min(log(impression_count+1)/20,1)であり、
すると、推奨総合スコアは以下の通りであり、
final_score=hot_index*edit_score
式中、final_scoreは総合スコアを表し、hot_indexは、0~1の値に正規化された流行語句の検索数の結果を表す。
【0079】
最後に、誤り訂正プロンプトを実行するために、最も高い推奨総合スコアおよび事前設定された値未満の重み付き編集距離を有するk個の流行語句を、誤り訂正プロンプトのための推奨語句として選択する。
【0080】
検索語句の誤り訂正方法をより明確に説明するために、本出願の実施形態によって提供される検索語句の誤り訂正方法を、以下において別の態様から詳細に説明する。
【0081】
本出願のある実施形態によって提供される検索語句の誤り訂正方法は、以下のステップ、
誤った検索語句を同定するステップと、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って計算するステップであって、操作は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および文字を交換する操作を含む、ステップと、
事前取得された流行語句から所定数の流行語句を、事前取得された流行語句の重み付き編集距離および人気に基づいて、誤り訂正プロンプト用に選択するステップと、
を含み得る。
【0082】
本出願の実施形態のある実装において、同定された検索語句と事前取得された流行語句との間の重み付き編集距離を、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って計算するステップは、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、それぞれ同定された検索語句と事前取得された流行語句との間の対応する位置にある文字を表すために使用される、ステップと、
それぞれの操作において、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して事前設定された異なる重みに基づいて状態遷移式を解くステップと、
状態遷移式の解に基づいて、重み付き編集距離を取得するステップと、
を含む。
【0083】
本出願の実施形態のある実装において、状態遷移式は、以下の通りであってもよく、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された異なる重みに基づいて取得される。
【0084】
本出願の実施形態のある実装において、類似の外見または発音を有する文字によって置換する操作は、
検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって判定するステップ
を含み得る。
【0085】
本出願の実施形態のある実装において、検索語句から流行語句に変換する操作に対して事前設定される異なる重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み
に基づく。
【0086】
本出願の実施形態のある実装において、誤った検索語句を同定するステップは、
同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するステップと、
誤った検索語句として同定されるべき検索語句を、同定されるべき検索語句の検索のクリック率、語句特徴、生起確率、完全一致結果の数、および完全一致比率に基づいて決定するステップと、
を含み得る。
【0087】
本出願の実施形態のある実装において、事前取得された流行語句から所定数の流行語句を、事前取得された流行語句の重み付き編集距離および人気に基づいて、誤り訂正プロンプト用に選択するステップは、
事前取得された流行語句の検索数を正規化するステップと、
重み付き編集距離および流行語句の検索数を正規化した結果に基づいて推奨総合スコアを計算するステップと、
誤り訂正プロンプトを実行するために、事前取得された流行語句から、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するステップと、
を含む。
【0088】
本出願の実施形態において、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して異なる重みを設定することによって、重み付き編集距離計算中、検索語句から流行語句への変換プロセスに伴い得る全ての操作が、十分にカバーされる。このように、検索語句と流行語句との間の重み付き編集距離をより迅速かつ精確に計算し、それによって検索語句誤り訂正の精度を改善することができる。
【0089】
上記の重み付き編集距離を計算するための方法をより明確に説明するために、本出願の実施形態によって提供される重み付き編集距離を計算するための方法を、以下において別の視点から詳細に説明する。
【0090】
本出願の実施形態によって提供される重み付き編集距離を計算するための方法は、以下のステップ、
ソース文字列およびターゲット文字列を取得するステップと、
ソース文字列からターゲット文字列に変換する異なる操作に対してそれぞれ異なる重みを設定し、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップと、
を含み得る。
【0091】
上記の重み付き編集距離を計算するための方法が検索語句と流行語句との間の重み付き編集距離を計算するために使用されるとき、ソース文字列は、同定された誤った検索語句であってもよく、ターゲット文字列は、事前取得された流行語句であってもよいことに留意すべきである。
【0092】
本出願の実施形態のある実装において、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップは、
ソース文字列とターゲット文字列との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、ソース文字列とターゲット文字列との間のそれぞれで対応する位置にある文字を表すために使用される、ステップと、
異なる操作に対して設定された異なる重みに基づいて、それぞれの操作にについて状態遷移式を解くステップと、
状態遷移式の解に基づいて、重み付き編集距離を取得するステップと、
を含み得る。
【0093】
本出願の実施形態では、様々な可能な操作が考慮され、それぞれに異なる重みが付与されているので、このような重み付き編集距離を適用して誤り訂正を実行実行することによって、文字列間の計算される類似度についてより高い精度を得ることができる。
【0094】
説明の簡略化のために、方法の実施形態は一連の動作の組み合わせとして記載されていることに留意すべきである。しかしながら、本出願の実施形態によれば特定のステップは他の順序で、または同時に実行され得るため、本出願の実施形態は記載されている動作の順序によって限定されないことが当業者によって理解されるべきである。なお、本明細書に記載の全ての実施形態は任意追加的な実施形態であり、含まれる動作は本出願の実施形態に必ずしも必要とは限らないことも、当業者によって理解されるべきである。
【0095】
図3を参照すると、本出願の実施形態によって提供される検索語句の誤り訂正装置の概略構造図が例示されており、装置は、以下のものを含む。
誤った検索語句を同定するための誤った検索語句同定ユニット301。
第一に、検索語句の誤り訂正は誤った検索語句の誤り訂正であるので、誤った検索語句を同定する必要がある。ある具体的な実施形態では、誤った検索語句は、検索ログに基づいて同定することができる。誤った検索語句は、検索のクリック率、完全一致検索結果の数、および言語モデルに基づく検索語句の確率を介して効果的に同定することができる。
【0096】
検索語句と事前取得された流行語句との間の重み付き編集距離を重み付き編集距離アルゴリズムを使用することによって計算するための重み付き編集距離計算ユニット302であって、重み付き編集距離の計算中、検索語句から流行語句に変換する以下の操作、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して異なる重みが設定される、重み付き編集距離計算ユニット302。
【0097】
流行語句は、現実世界またはインターネット上で非常に人気のある語である。実際の運用では、多くの流行語句は、クリックスルー率によって流行語句リストを構成すると判定することができる。流行語句リストの作成中、クリックスルー率が低く検索結果が少ない流行語句は、流行語句の精度を確保するために除去するべきである。本出願のある実施形態では、誤った検索語句は、編集距離が小さい流行語句に訂正され、それによってより良好なユーザ体験を提供する。
【0098】
当業者が理解することができるように、編集距離は、レーベンシュタイン距離とも呼ばれ、ある文字列を別の文字列に変換するために要求される最小の編集操作の数を指す。従来の編集操作は、ある文字を別の文字で置換するステップ、ある文字を挿入するステップ、ある文字を削除するステップを含む。一般に、編集距離が小さいほど、2つの文字列の類似度は大きくなる。
【0099】
従来の編集距離操作は、ある文字を別の文字によって置換するステップ、ある文字を挿入するステップ、ある文字を削除するステップを含み得、操作の各々は、1の編集距離に対応する。これらの操作は、文字列内の隣接する文字の交換も含まず、類似の外見または発音を有する文字によって置換するステップの特殊性も考慮に入れない。交換操作は、2つの置換操作によって行うことができる。例えば、CD->DD->DC、対応する距離は、従来の編集距離アルゴリズムによれば、2である。ユーザが実際の検索プロセスにおいて位置交換された2つの文字を入力する確率が非常に高いことを考慮すると、交換操作に対して2の距離を有することは不合理である。さらに、類似の外見または発音を有する文字のためにユーザが誤った検索語句を入力する確率も高いので、当然ながら、具体的な処理なしにこのような特別の置換操作に対して1の距離を設定することは不合理である。
【0100】
それゆえに、本出願のある実施形態は、重み付き編集距離を計算するための装置であって、
ソース文字列およびターゲット文字列を取得するための取得ユニットと、
ソース文字列とターゲット文字列との間の重み付き編集距離を計算するための計算ユニットであって、重み付き編集距離の計算中、ソース文字列からターゲット文字列に変換する異なる操作に対して異なる重みがそれぞれ設定される、計算ユニットと、
を備える、装置、を提供する。
【0101】
計算ユニットは、
ソース文字列とターゲット文字列との間の重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、ソース文字列とターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、
異なる操作に対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解き、状態遷移式の解に基づいて重み付き編集距離を取得するための状態遷移式解決定サブユニットと、
を含み得る。
【0102】
上記の異なる操作は、重みがそれぞれ設定された以下の5つの操作を含む。
1)文字を挿入する操作の重みは、1に設定される。
2)文字を削除する操作の重みは、1に設定される。
3)類似の外見または発音を有する文字によって置換する操作の重みは、w1に設定される。
4)非類似の外見または発音を有する文字によって置換する操作の重みは、に設定される。
5)文字を交換する操作の重みは、w2に設定される。
【0103】
重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するための誤り訂正プロンプトユニット303。
【0104】
任意追加的に、重み付き編集距離計算ユニット302は、
検索語句と流行語句との間の重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニット3021であって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、検索語句と流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニット3021と、
文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および文字を交換する操作のそれぞれに対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解き、状態遷移式の解に基づいて重み付き編集距離を取得するための式解サブユニット3022と、
を含む。
【0105】
任意追加的に、状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された異なる重みに基づいて取得される。
【0106】
任意追加的に、類似の外見または発音を有する文字によって置換する操作は、
検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するステップ
を含む。
【0107】
任意追加的に、装置はさらに、
操作の重みを以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重みに基づいて設定するための操作重み設定ユニット305を含む。より良好な効果を得るために、w1およびw2の値に対して特別な注意を払わなければならず、一般に、これらは、w1<w2<1を満たす必要がある。任意追加的に、操作重みは以下の関係、類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み、を満たすように設定することができることが実験によって得られる。様々な可能な操作が考慮され、それぞれに異なる重みが付与されているので、このような重み付き編集距離を適用して誤り訂正を実行することによって、文字列間の計算される類似度についてより高い精度を得ることができる。
【0108】
任意追加的に、誤った検索語句同定ユニット301は、
同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するためのログ検索および計算サブユニット3011
を含む。
【0109】
具体的には、第一に、同定されるべき検索語句の検索のクリック率を計算する。例えば、同定されるべき検索語句がユーザによって検索された回数および検索結果がユーザによってクリックされた回数が検索ログから取得され得る。検索のクリック率は、検索結果がクリックされた回数を検索数で除算することによって得られ得る。第二に、同定されるべき検索語句をセグメント化して複数の語句特徴を取得する。その後、同定されるべき検索語句の生起確率を、統計的言語モデルおよび様々な語句特徴を使用して計算する。次いで、同定されるべき検索語句の完全一致結果の数および該当する結果の数を計算する。完全一致結果の数は、同定されるべき検索語句の全ての検索結果のうち、同定されるべき検索語句の全内容を含む結果の数である。該当する結果の数は、同定されるべき検索語句の全ての検索結果のうち、同定されるべき検索語句の内容の一部を含む結果の数である。最後に、完全一致結果の数と該当する結果の数との比率を計算して完全一致比率を取得する。
【0110】
誤った検索語句または通常検索語句として同定されるべき検索語句を、同定されるべき検索語句の検索のクリック率、語句特徴、生起確率、完全一致結果の数、および完全一致比率に基づいて決定するための同定結果決定サブユニット3012。
【0111】
同定されるべき検索語句の特徴(すなわち、検索のクリック率、全ての語句特徴、同定されるべき検索語句の生起確率、完全一致結果の数、および完全一致比率)を多次元的特徴にマージし、同定されるべき検索語句を多次元的特徴に基づいて同定することによって、同定されるべき検索語句を同定することの難しさは低減され、それによって同定されるべき検索語句を同定する能力を改善し、同定されるべき検索語句が誤った検索語句であるのかどうか同定するのが有利である。
【0112】
任意追加的に、誤り訂正プロンプトユニット303は、
事前取得された流行語句の検索数を正規化するための正規化サブユニット3031と、
重み付き編集距離および流行語句の検索数を正規化した結果に基づいて推奨総合スコアを計算するための推奨総合スコア計算サブユニット3032と、
誤り訂正プロンプトを実行するために、事前取得された流行語句から、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するための推奨語句決定サブユニット3033と、
を含む。
【0113】
検索語句の誤り訂正装置をより明確に説明するために、本出願の実施形態によって提供される検索語句の誤り訂正装置を、以下において別の態様から詳細に説明する。
【0114】
本出願の実施形態によって提供される検索語句の誤り訂正装置は、
誤った検索語句を同定するための誤った検索語句同定ユニットと、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って計算するための重み付き編集距離計算ユニットであって、操作は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および文字を交換する操作を含む、重み付き編集距離計算ユニットと、
重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するための誤り訂正プロンプトユニットと、
を備え得る。
【0115】
本出願の実施形態のある実装において、重み付き編集距離計算ユニットは、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、同定された検索語句と事前取得された流行語句との間のそれぞれで対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、
文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作のそれぞれに対して事前設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解き、状態遷移式の解に基づいて重み付き編集距離を取得するための式解サブユニットと、
を含む。
【0116】
本出願の実施形態のある実装において、状態遷移式は、以下の通りであってもよく、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された異なる重みに基づいて取得される。
【0117】
本出願の実施形態のある実装において、類似の外見または発音を有する文字によって置換する操作は、
検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するステップ
を含む。
【0118】
本出願の実施形態のある実装において、検索語句から流行語句に変換する操作に対して事前設定される異なる重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重み
に基づく。
【0119】
本出願の実施形態のある実装において、誤った検索語句同定ユニットは、
同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するためのログ検索および計算サブユニットと、
誤った検索語句として同定されるべき検索語句を、同定されるべき検索語句の検索のクリック率、語句特徴、生起確率、完全一致結果の数、および完全一致比率に基づいて決定するための同定結果判定サブユニットと、
を含む。
【0120】
本出願の実施形態のある実装において、誤り訂正プロンプトユニットは、
事前取得された流行語句の検索数を正規化するための正規化サブユニットと、
重み付き編集距離および流行語句の検索数を正規化した結果に基づいて推奨総合スコアを計算するための推奨総合スコア計算サブユニットと、
誤り訂正プロンプトを実行するために、事前取得された流行語句から、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するための推奨語句決定サブユニットと、
を含む。
【0121】
本出願の実施形態において、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して異なる重みを設定することによって、重み付き編集距離計算中、検索語句から流行語句への変換プロセスに伴い得る全ての操作が、十分にカバーされる。このように、検索語句と流行語句との間の重み付き編集距離をより迅速かつ精確に計算し、それによって検索語句誤り訂正の精度を改善することができる。
【0122】
上記の重み付き編集距離を計算するための装置をより明確に説明するために、本出願の実施形態によって提供される重み付き編集距離を計算するための装置を、以下において別の視点から詳細に説明する。
【0123】
本出願の実施形態によって提供される重み付き編集距離を計算するための装置は、
ソース文字列およびターゲット文字列を取得するための取得ユニットと、
ソース文字列からターゲット文字列に変換する異なる操作に対してそれぞれ異なる重みを設定し、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するための計算ユニットと、
を備え得る。
【0124】
本出願の実施形態のある実装において、計算ユニットは、
ソース文字列とターゲット文字列との間の重み付き編集距離を表す状態遷移式を定義するための状態遷移式定義サブユニットであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、ソース文字列とターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、状態遷移式定義サブユニットと、
異なる操作に対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解き、状態遷移式の解に基づいて重み付き編集距離を取得するための状態遷移式解サブユニットと、
を含み得る。
【0125】
本出願の実施形態では、様々な可能な操作が考慮され、それぞれに異なる重みが付与されているので、このような重み付き編集距離を適用して誤り訂正を実行することによって、文字列間の計算される類似度についてより高い精度を得ることができる。
【0126】
本出願のある実施形態はさらに、図4に示される電子装置を提供する。電子装置は、第1のプロセッサ401、第1の通信インターフェース402、第1のメモリ403、および第1の通信バス404を備え、第1のプロセッサ401、第1の通信インターフェース402、および第1のメモリ403は、第1の通信バス404を介して相互に通信し、第1のメモリ403は、コンピュータプログラムを記憶するために使用され、第1のプロセッサ401は、第1のメモリ403に記憶されたプログラムを実行するとき、上記の検索語句の誤り訂正方法のステップを実装するために使用される。方法は、
誤った検索語句を同定するステップと、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って計算するステップであって、操作は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および文字を交換する操作を含む、ステップと、
重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するステップと、
を含む。
【0127】
本出願の実施形態において、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して異なる重みを設定することによって、重み付き編集距離計算中、検索語句から流行語句への変換プロセスに伴い得る全ての操作が、十分にカバーされる。このように、検索語句と流行語句との間の重み付き編集距離をより迅速かつ精確に計算し、それによって検索語句誤り訂正の精度を改善することができる。
【0128】
本出願の実装において、同定された検索語句と事前取得された流行語句との間の重み付き編集距離を、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って計算するステップは、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、同定された検索語句と事前取得された流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、
文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して事前設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解くステップと、
状態遷移式の解に基づいて、重み付き編集距離を取得するステップと、
を含む。
【0129】
本出願の実装において、状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、2つの状態変数であり、f(i,j)は、操作のコストであり、前記それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された異なる重みに基づいて取得される。
【0130】
本出願の実装において、類似の外見または発音を有する文字によって置換する操作は、
検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するステップを含む。
【0131】
本出願の実装において、検索語句から流行語句に変換する操作に対して事前設定される異なる重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重みに基づく。
【0132】
本出願の実装において、誤った検索語句を同定するステップは、
同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するステップと、
誤った検索語句として同定されるべき検索語句を、同定されるべき検索語句の検索のクリック率、語句特徴、生起確率、完全一致結果の数、および完全一致比率に基づいて決定するステップと、
を含む。
【0133】
本出願の実装において、重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するステップは、
事前取得された流行語句の検索数を正規化するステップと、
重み付き編集距離および流行語句の検索数を正規化した結果に基づいて推奨総合スコアを計算するステップと、
誤り訂正プロンプトを実行するために、事前取得された流行語句から、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するステップと、
を含む。
【0134】
本出願のある実施形態はさらに、コンピュータプログラムが記憶されたコンピュータ可読記憶媒体を提供し、プロセッサによって実行されているとき、コンピュータプログラムは、プロセッサが上記の検索語句の誤り訂正方法のステップを実行することを可能にする。当該方法は、
誤った検索語句を同定するステップと、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って計算するステップであって、操作は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および文字を交換する操作を含む、ステップと、
重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するステップと、
を含む。
【0135】
本出願の実施形態において、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して異なる重みを設定することによって、重み付き編集距離計算中、検索語句から流行語句への変換プロセスに伴い得る全ての操作が、十分にカバーされる。このように、検索語句と流行語句との間の重み付き編集距離をより迅速かつ精確に計算し、それによって検索語句誤り訂正の精度を改善することができる。
【0136】
本出願の実装において、同定された検索語句と事前取得された流行語句との間の重み付き編集距離を、検索語句から流行語句に変換する異なる操作に対して設定された異なる重みに従って計算するステップは、
同定された検索語句と事前取得された流行語句との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、同定された検索語句と事前取得された流行語句との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、
それぞれの操作において、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して事前設定された異なる重みに基づいて状態遷移式を解くステップと、
状態遷移式の解に基づいて、重み付き編集距離を取得するステップと、
を含む。
【0137】
本出願の実装において、状態遷移式は、以下の通りであり、
edit(i,j)=min{edit(i-1,j)+1,edit(i,j-1)+1,edit(i-1,j-1)+f(i,j)}
式中、iおよびjは、2つの状態変数であり、f(i,j)は、操作のコストであり、それぞれの重みに対応するコストf(i,j)は、文字を挿入する操作、文字を削除する操作、類似の外見または発音を有する文字によって置換する操作、非類似の外見または発音を有する文字によって置換する操作、および、文字を交換する操作に対して設定された異なる重みに基づいて取得される。
【0138】
本出願の実装において、類似の外見または発音を有する文字によって置換する操作は、
検索語句および流行語句が類似の外見または発音を有する文字であるかどうかを、事前設定された類似の外見を有する文字のマッピングテーブルまたは事前設定された類似の発音を有する文字のマッピングテーブル内で検索することによって決定するステップを含む。
【0139】
本出願の実装において、検索語句から流行語句に変換する操作に対して事前設定される異なる重みは、以下の関係、
類似の外見または発音を有する文字によって置換する操作に対する重み<文字を交換する操作に対する重み<文字を挿入する操作に対する重み=文字を削除する操作に対する重み=非類似の外見または発音を有する文字によって置換する操作に対する重みに基づく。
【0140】
本出願の実装において、誤った検索語句を同定するステップは、
同定されるべき検索語句について、検索ログに基づいて、検索のクリック率、語句特徴、生起確率、完全一致結果の数、および、完全一致比率を分析または計算するステップと、
誤った検索語句として同定されるべき検索語句を、同定されるべき検索語句の検索のクリック率、語句特徴、生起確率、完全一致結果の数、および完全一致比率に基づいて決定するステップと、
を含む。
【0141】
本出願の実装において、重み付き編集距離および事前取得された流行語句の人気に基づいて、事前取得された流行語句から所定数の流行語句を誤り訂正プロンプト用に選択するステップは、
事前取得された流行語句の検索数を正規化するステップと、
重み付き編集距離および流行語句の検索数を正規化した結果に基づいて推奨総合スコアを計算するステップと、
誤り訂正プロンプトを実行するために、事前取得された流行語句から、最も高い推奨総合スコアを有し、かつ、事前設定された値より低い重み付き編集距離を有する所定数の流行語句を、誤り訂正用の推奨語句として選択するステップと、
を含む。
【0142】
本出願のある実施形態はさらに、図5に示される電子装置を提供する。電子装置は、第2のプロセッサ501、第2の通信インターフェース502、第2のメモリ503、および第2の通信バス504を備え、第2のプロセッサ501、第2の通信インターフェース502、および第2のメモリ503は、第2の通信バス504を介して相互に通信し、第2のメモリ503は、コンピュータプログラムを記憶するために使用され、第2のプロセッサ501は、第2のメモリ503に記憶されたプログラムを実行するとき、上記の重み付き編集距離を計算するための方法のステップを実装するために使用される。方法は、
ソース文字列およびターゲット文字列を取得するステップと、
ソース文字列からターゲット文字列に変換する異なる操作に対してそれぞれ異なる重みを設定し、ソ異なる操作に対して設定された異なる重みに基づいて、ース文字列とターゲット文字列との間の重み付き編集距離を計算するステップと、
を含む。
【0143】
本出願の実施形態では、様々な可能な操作が考慮され、それぞれに異なる重みが付与されているので、このような重み付き編集距離を適用して誤り訂正を実行することによって、文字列間の計算される類似度についてより高い精度を得ることができる。
【0144】
本出願の実装において、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップは、
ソース文字列とターゲット文字列との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、ソース文字列とターゲット文字列との間のそれぞれに対応する位置にある文字を表すために使用される、ステップと、
異なる操作に対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解くステップと、
状態遷移式の解に基づいて、重み付き編集距離を取得するステップと、
を含む。
【0145】
本出願のある実施形態はさらに、コンピュータ可読記憶媒体を提供する。記憶媒体は、プロセッサによって実行されると上記の重み付き編集距離を計算するための方法のステップを実装することを可能にする、コンピュータプログラムを記憶する。当該方法は、
ソース文字列およびターゲット文字列を取得するステップと、
ソース文字列からターゲット文字列に変換する異なる操作に対してそれぞれ異なる重みを設定し、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップと、
を含む。
【0146】
本出願の実施形態では、様々な可能な操作が考慮され、それぞれに異なる重みが付与されているので、このような重み付き編集距離を適用して誤り訂正を実行することによって、文字列間の計算される類似度についてより高い精度を得ることができる。
【0147】
本出願の実装において、異なる操作に対して設定された異なる重みに基づいて、ソース文字列とターゲット文字列との間の重み付き編集距離を計算するステップは、
ソース文字列とターゲット文字列との間の重み付き編集距離を表す状態遷移式を定義するステップであって、状態遷移式の2つの状態変数が定義され、2つの状態変数は、ソース文字列とターゲット文字列との間のそれぞれで対応する位置にある文字を表すために使用される、ステップと、
異なる操作に対して設定された異なる重みに基づいて、それぞれの操作について状態遷移式を解くステップと、
状態遷移式の解に基づいて、重み付き編集距離を取得するステップと、
を含む。
【0148】
装置、電子装置、または記憶媒体の実施形態は、それらは方法の実施形態と本質的に同様であるので、簡単に説明されており、該当する部分は、方法の実施形態の説明の部分を参照することができる。
【0149】
明細書中の様々な実施形態は、漸進的な様式で記載されており、各実施形態に関して強調されている部分は、他の実施形態との相違点であり、したがって様々な実施形態間で同じまたは同様の部分は、相互に参照することができる。
【0150】
本出願の実施形態は方法、装置、またはコンピュータプログラム製品として提供され得ることが、当業者には理解されるであろう。このように、本出願の実施形態は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアとの組み合わせの実施形態の形をとり得る。その上、本出願の実施形態はコンピュータ使用可能なプログラムコードを格納した1つ以上のコンピュータ使用可能な記憶媒体(ディスク記憶装置、CD-ROM、光メモリなどを含むが、これらに限定されない)に実装されたコンピュータプログラム製品の形をとり得る。
【0151】
本出願の実施形態は、本出願の実施形態による方法、端末装置(システム)、およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照しながら記載されている。フローチャートおよび/またはブロック図中のフローおよび/またはブロックの各々、ならびにフローチャートおよび/またはブロック図中の流れおよび/またはブロックの組み合わせはコンピュータプログラム命令によって実装され得ることが、理解されるべきである。フローチャート中の1つ以上のフローに明記され、かつ/またはブロック図中の1つ以上のブロックに明記される機能を実装するための装置が、コンピュータまたは他のプログラマブルデータ処理端末装置のプロセッサによって実行される命令を介して生成されるように、これらのコンピュータプログラム命令は、マシンを生成するために汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または他のプログラマブルデータ処理端末装置のプロセッサに提供されてもよい。
【0152】
コンピュータ可読メモリ上に記憶された命令が、命令装置を含む工業製品を生み出し、命令装置が、フローチャート中の1つ以上のフローに明記され、かつ/またはブロック図中の1つ以上のブロックに明記される機能を実装するように、これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラマブルデータ処理端末装置をある特定の様式で作動させることができるコンピュータ可読メモリ上に記憶されてもよい。
【0153】
コンピュータで実行されるプロセスを生成するために一連の演算ステップがコンピュータまたは他のプログラマブル端末装置上で実行されるように、これらのコンピュータプログラム命令はまた、コンピュータまたは他のプログラマブルデータ処理端末装置にロードされてもよい。このように、コンピュータまたは他のプログラマブル端末装置上で実行される命令は、フローチャート中の1つ以上の流れに明記され、かつ/またはブロック図中の1つ以上のブロックに明記される機能を実行するステップを提供する。
【0154】
本出願の任意追加的な実施形態が説明されてきたが、当業者であれば、基本的な発明概念を知れば、これらの実施形態に対するさらなる変更および修正を加えることができるであろう。したがって、添付の特許請求の範囲は、本出願の実施形態の範囲内の任意追加的な実施形態ならびに全ての代替物および修正を含むと解釈されることを意図する。
【0155】
最後に、「第1」、「第2」などの本明細書中の関係語句(もしあれば)は、ある存在または操作を別の存在または操作から区別するためのみに使用されており、これらの存在または操作間に実際に関係または順序が存在することを必ずしも要求または含意するとは限らないことに留意すべきである。その上、「含む(include)」、「備える(comprise)」という語句またはこれらの変化形は、非排他的な内包をカバーすることを意図し、一連の要素を含むプロセス、方法、物品、または端末装置は、列記されるそれらの要素だけでなく、具体的に列記されていないもの、またはこれらのプロセス、方法、物品、もしくは端末装置に固有の要素も含む。さらなる限定がなければ、「…を備える」または「…を含む」という文章によって定義される要素は、これらの要素を含むプロセス、方法、物品、または端末装置内に他の同様の要素が存在することを排除しない。
【0156】
本出願によって提供される検索語句の誤り訂正方法および装置は、詳細に上記されている。本出願の原理および実施形態は、具体的な例を参照しながら説明されており、上記の実施形態の説明は、単に本出願の方法および核心的思想を理解するためのものである。一方、具体的な実施形態および応用範囲に対する修正は、当業者によって、本出願の趣旨に基づいて行うことができる。全体として、本明細書の内容は、本出願に対する限定として解釈されるべきではない。
図1
図2
図3
図4
図5