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

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

▶ バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッドの特許一覧

特許7319391地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム
<>
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図1
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図2
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図3
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図4
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図5
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図6
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図7
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図8
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図9
  • 特許-地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-24
(45)【発行日】2023-08-01
(54)【発明の名称】地理的位置を検索する方法、装置、機器、コンピュータ記憶媒体及びコンピュータプログラム
(51)【国際特許分類】
   G06F 16/387 20190101AFI20230725BHJP
   G06F 16/33 20190101ALI20230725BHJP
   G09B 29/00 20060101ALI20230725BHJP
【FI】
G06F16/387
G06F16/33
G09B29/00 A
【請求項の数】 17
(21)【出願番号】P 2021568840
(86)(22)【出願日】2020-11-25
(65)【公表番号】
(43)【公表日】2022-07-21
(86)【国際出願番号】 CN2020131321
(87)【国際公開番号】W WO2021212827
(87)【国際公開日】2021-10-28
【審査請求日】2021-11-17
(31)【優先権主張番号】202010334224.1
(32)【優先日】2020-04-24
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】512015127
【氏名又は名称】バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】ファン,チーチョウ
(72)【発明者】
【氏名】ワン,ハイフォン
(72)【発明者】
【氏名】ファン,ミャオ
【審査官】松尾 真人
(56)【参考文献】
【文献】中国特許出願公開第110674419(CN,A)
【文献】米国特許出願公開第2012/0265760(US,A1)
【文献】Pratik Jawanpuria et al.,A Simple Approach to Learning Unsupervised Multilingual Embeddings,arXiv.org,2020年04月10日,https://arxiv.org/abs/2004.05991v1
【文献】吉田 朋史,ユーザレビューの分散表現を用いた主観的特徴の意味演算による観光スポット検索システム,第9回データ工学と情報マネジメントに関するフォーラム (第15回日本データベース学会年次大会) [online] ,電子情報通信学会データ工学研究専門委員会 日本データベース学会 情報処理学会データベースシステム研究会,2017年02月27日,DEIM Forum 2017 P6-5, Internet<URL:http://db-event.jpn.org/deim2017/papers/86.pdf>
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G09B 29/00
(57)【特許請求の範囲】
【請求項1】
コンピュータにより実行される、地理的位置を検索する方法であって、
国際文字ベクトル表現辞書を使用して、ユーザによって入力された検索語における各文字のベクトル表現をそれぞれ決定するステップと、
検索語における各文字のベクトル表現を予めトレーニングされた第1のニューラルネットワークに入力して、検索語のベクトル表現を取得するステップと、
前記検索語のベクトル表現と地図データベース内の各地理的位置のベクトル表現の類似度を決定するステップと、
前記類似度に基づいて、検索された地理的位置を決定するステップと、を含み、
前記地理的位置のベクトル表現は、国際文字ベクトル表現辞書を使用して地理的位置の記述テキスト内の各文字のベクトル表現を決定した後に、前記地理的位置の記述テキスト内の各文字のベクトル表現を予めトレーニングされた第2のニューラルネットワークに入力することで取得され、前記国際文字ベクトル表現辞書は、少なくとも2つの言語の文字を同一のベクトル空間にマッピングするために用いられ
当該方法は、
履歴クリックログからトレーニングデータを取得し、前記トレーニングデータは、検索語と、正のサンプルとする検索語に対応するクリックされた地理的位置と、負のサンプルとするクリックされていない地理的位置を含み、
履歴閲覧ログを使用して、地理的位置間の閲覧共現関係に基づいて前記正のサンプルと負のサンプルを拡張し、前記クリックされた地理的位置と閲覧共現関係がある各地理的位置を取得して正のサンプルを拡張し、前記クリックされていない地理的位置と閲覧共現関係がある各地理的位置を取得して負のサンプルを拡張し、一つのセッションで前後に複数の地理的位置を閲覧した場合、当該複数の地理的位置間に閲覧共現関係があり、
拡張した後のトレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを更新して、第1の類似度と第2の類似度の差を最大化するトレーニングプロセスを予め実行することをさらに含み、
前記第1の類似度は、前記検索語のベクトル表現と前記正のサンプルのベクトル表現の類似度であり、前記第2の類似度は、前記検索語のベクトル表現と前記負のサンプルのベクトル表現の類似度であり、
前記国際文字ベクトル表現辞書は、検索語における各文字のベクトル表現と、正のサンプルとするクリックされた地理的位置の記述テキスト内の各文字のベクトル表現と、負のサンプルとするクリックされていない地理的位置の記述テキスト内の各文字のベクトル表現とを決定するために用いられる、
地理的位置を検索する方法。
【請求項2】
前記地理的位置の記述テキストは、名称、ラベル、住所、評価、写真記述テキストのうちの少なくとも一つを含む、
請求項1に記載の地理的位置を検索する方法。
【請求項3】
前記類似度に基づいて、検索された地理的位置を決定するステップは、
類似度にしたがって各地理的位置を高い方から低い方へソートし、ソート結果によって検索された地理的位置を決定するステップと、または、
前記類似度を使用して類似度特徴を決定し、前記類似度特徴を予めトレーニングされたソートモデルの入力ベクトルの一つとし、前記ソートモデルが各地理的位置に対するソート結果を使用して検索された地理的位置を決定するステップと、を含む、
請求項1に記載の地理的位置を検索する方法。
【請求項4】
当該方法は、
履歴クリックログからトレーニングデータを取得し、前記トレーニングデータは、検索語と、正のサンプルとする検索語に対応するクリックされた地理的位置と、負のサンプルとするクリックされていない地理的位置を含み、
前記トレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを更新して、第1の類似度と第2の類似度の差を最大化するトレーニングプロセスを予め実行することをさらに含み、
前記第1の類似度は、前記検索語のベクトル表現と前記正のサンプルのベクトル表現の類似度であり、前記第2の類似度は、前記検索語のベクトル表現と前記負のサンプルのベクトル表現の類似度である、
請求項1に記載の地理的位置を検索する方法。
【請求項5】
前記トレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングするステップは、
国際文字ベクトル表現辞書を使用して、トレーニングデータ内の各文字のベクトル表現をそれぞれ決定するステップと、
検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得し、正のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現および負のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、正のサンプルのベクトル表現および負のサンプルのベクトル表現を取得するステップと、
検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定するステップと、
前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化するステップと、を含む、
請求項4に記載の地理的位置を検索する方法。
【請求項6】
前記履歴閲覧ログを使用して、地理的位置間の閲覧共現関係に基づいて前記正のサンプルと負のサンプルを拡張するステップは、
セマンティックグラフから前記クリックされた地理的位置に閲覧共現関係が存在する各第1の地理的位置をそれぞれ取得して前記正のサンプルを拡張し、前記クリックされていない地理的位置に閲覧共現関係が存在する各第2の地理的位置をそれぞれ取得して前記負のサンプルを拡張するステップを含み、
セマンティックグラフにおいて、ノードは地理的位置であり、地理的位置間の関連付けは地理的位置間に閲覧共現関係が存在することを表し、地理的位置間に地理的位置間の閲覧共現関係の度合いを反映する関連パラメータが存在し、前記関連パラメータは最初に地理的位置間に閲覧共現が発生する回数によって決定される、
請求項に記載の地理的位置を検索する方法。
【請求項7】
前記拡張した後のトレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングするステップは、
国際文字ベクトル表現辞書を使用して、トレーニングデータ内の各文字のベクトル表現をそれぞれ決定するステップと、
検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得し、前記クリックされた地理的位置の記述テキスト内の各文字のベクトル表現と、前記各第1の地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、正のサンプルのベクトル表現を取得するステップと、前記クリックされていない地理的位置の記述テキスト内の各文字のベクトル表現、および前記各第2の地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、負のサンプルのベクトル表現を取得するステップと、
検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定するステップと、
前記国際文字ベクトル表現辞書、セマンティックグラフ、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを更新して、第1の類似度と第2の類似度の差を最大化するステップと、を含む、
請求項に記載の地理的位置を検索する方法。
【請求項8】
地理的位置を検索する装置であって、
国際文字ベクトル表現辞書を使用して、ユーザによって入力された検索語における各文字のベクトル表現をそれぞれ決定するための第1のベクトル決定ユニットであって、前記国際文字ベクトル表現辞書は、少なくとも2つの言語の文字を同一のベクトル空間にマッピングするために用いられる第1のベクトル決定ユニットと、
検索語における各文字のベクトル表現を予めトレーニングされた第1のニューラルネットワークに入力して、検索語のベクトル表現を取得するための第2のベクトル決定ユニットと、
前記検索語のベクトル表現と地図データベース内の各地理的位置のベクトル表現の類似度を決定するための類似度決定ユニットであって、前記地理的位置のベクトル表現は、国際文字ベクトル表現辞書を使用して地理的位置の記述テキスト内の各文字のベクトル表現を決定した後に、前記地理的位置の記述テキスト内の各文字のベクトル表現を予めトレーニングされた第2のニューラルネットワークに入力することで取得される類似度決定ユニットと、
前記類似度に基づいて、検索された地理的位置を決定するための検索処理ユニットと、を含み、
当該装置は、第2のモデルトレーニングユニットをさらに含み、前記第2のモデルトレーニングユニットは、
履歴クリックログからトレーニングデータを取得し、前記トレーニングデータは、検索語と、正のサンプルとする検索語に対応するクリックされた地理的位置と、負のサンプルとするクリックされていない地理的位置を含み、
履歴閲覧ログを使用して、地理的位置間の閲覧共現関係に基づいて前記正のサンプルと負のサンプルを拡張し、前記クリックされた地理的位置と閲覧共現関係がある各地理的位置を取得して正のサンプルを拡張し、前記クリックされていない地理的位置と閲覧共現関係がある各地理的位置を取得して負のサンプルを拡張し、一つのセッションで前後に複数の地理的位置を閲覧した場合、当該複数の地理的位置間に閲覧共現関係があり、
拡張した後のトレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを更新して、第1の類似度と第2の類似度の差を最大化するトレーニングプロセスを予め実行するために用いられ、
前記第1の類似度は、前記検索語のベクトル表現と前記正のサンプルのベクトル表現の類似度であり、前記第2の類似度は、前記検索語のベクトル表現と前記負のサンプルのベクトル表現の類似度であり、
前記国際文字ベクトル表現辞書は、検索語における各文字のベクトル表現と、正のサンプルとするクリックされた地理的位置の記述テキスト内の各文字のベクトル表現と、負のサンプルとするクリックされていない地理的位置の記述テキスト内の各文字のベクトル表現とを決定するために用いられる、
地理的位置を検索する装置。
【請求項9】
前記地理的位置の記述テキストは、名称、ラベル、住所、評価、写真記述テキストのうちの少なくとも一つを含む、
請求項に記載の地理的位置を検索する装置。
【請求項10】
前記検索処理ユニットは、具体的には、
類似度にしたがって各地理的位置を高い方から低い方へソートし、ソート結果によって検索された地理的位置を決定し、または、
前記類似度を使用して類似度特徴を決定し、前記類似度特徴を予めトレーニングされたソートモデルの入力ベクトルの一つとし、前記ソートモデルが各地理的位置に対するソート結果を使用して検索された地理的位置を決定するために用いられる、
請求項に記載の地理的位置を検索する装置。
【請求項11】
当該装置は、第1のモデルトレーニングユニットをさらに含み、
前記第1のモデルトレーニングユニットは、
履歴クリックログからトレーニングデータを取得し、前記トレーニングデータは、検索語と、正のサンプルとする検索語に対応するクリックされた地理的位置と、負のサンプルとするクリックされていない地理的位置を含み、
前記トレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを更新して、第1の類似度と第2の類似度の差を最大化するトレーニングプロセスを予め実行するために用いられ、前記第1の類似度は、前記検索語のベクトル表現と前記正のサンプルのベクトル表現の類似度であり、前記第2の類似度は、前記検索語のベクトル表現と前記負のサンプルのベクトル表現の類似度である、
請求項に記載の地理的位置を検索する装置。
【請求項12】
前記第1のモデルトレーニングユニットは、前記トレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングする時、具体的には、
国際文字ベクトル表現辞書を使用して、トレーニングデータ内の各文字のベクトル表現をそれぞれ決定し、
検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得し、正のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現および負のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、正のサンプルのベクトル表現および負のサンプルのベクトル表現を取得し、
検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定し、
前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化することを実行する、
請求項11に記載の地理的位置を検索する装置。
【請求項13】
前記第2のモデルトレーニングユニットは、具体的には、セマンティックグラフから前記クリックされた地理的位置に閲覧共現関係が存在する各第1の地理的位置をそれぞれ取得して前記正のサンプルを拡張し、前記クリックされていない地理的位置に閲覧共現関係が存在する各第2の地理的位置をそれぞれ取得して前記負のサンプルを拡張し、
セマンティックグラフにおいて、ノードは地理的位置であり、地理的位置間の関連付けは地理的位置間に閲覧共現関係が存在することを表し、地理的位置間に地理的位置間の閲覧共現関係の度合いを反映する関連パラメータが存在し、前記関連パラメータは最初に地理的位置間に閲覧共現が発生する回数によって決定される、
請求項に記載の地理的位置を検索する装置。
【請求項14】
前記第2のモデルトレーニングユニットは、拡張した後のトレーニングデータを使用して前記国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングする時、具体的には、
国際文字ベクトル表現辞書を使用して、トレーニングデータ内の各文字のベクトル表現をそれぞれ決定し、
検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得し、前記クリックされた地理的位置の記述テキスト内の各文字のベクトル表現と、前記各第1の地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、正のサンプルのベクトル表現を取得し、前記クリックされていない地理的位置の記述テキスト内の各文字のベクトル表現、および前記各第2の地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、負のサンプルのベクトル表現を取得し、
検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定し、
前記国際文字ベクトル表現辞書、セマンティックグラフ、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを更新して、第1の類似度と第2の類似度の差を最大化することを実行する、
請求項13に記載の地理的位置を検索する装置。
【請求項15】
電子機器であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサと通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが請求項1~のいずれかの一つに記載の方法を実行する、
電子機器。
【請求項16】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令は、コンピュータに請求項1~のいずれかの一つに記載の方法を実行させる、
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項17】
コンピュータに請求項1~のいずれかの一つに記載の方法を実行させる、
コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は出願日が2020年04月24日であり、出願番号が2020103342241であり、発明の名称が「地理的位置を検索する方法、装置、機器、およびコンピュータ記憶媒体」である中国特許出願の優先権を主張する。
本開示は、コンピュータアプリケーション技術の分野に関し、特に、人工知能技術の分野に関する。
【背景技術】
【0002】
地図アプリケーションにとって、地理的位置検索は、ユーザが最も高頻度に使用する機能の一つである。クライアント側でもウェブページ側でも、ユーザは検索機能の入口にテキストまたは音声の形式で検索語を入力して地理的位置を検索することができる。
【0003】
従来の地理的位置を検索する方法は、検索語と地理的位置名の文字の表面上の意味にマッチングする方式を使用して検索することが多く、セマンティックに関する地理的位置検索を十分に満たすことができず、さらに、言語にわたる地理的位置検索のニーズを十分に満たすことができない。
【0004】
例えば、中国のユーザが、フランスのパリのエッフェル塔を検索する時に、中国語の検索語を使用して検索する確率が高い。しかし、国際化された地図業務として、エッフェル塔は、現地文字、すなわち、フランス語、または国際的に使用されている英語で使う確率が高い。したがって、単純な文字の表面上の意味にマッチングすることは、言語にわたる検索のニーズを十分に満たすことができない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
これに鑑みて、本開示は、言語にわたる地理的位置検索のニーズをよりよく満たすように、地理的位置を検索する方法、装置、機器、およびコンピュータ記憶媒体を提供する。
【課題を解決するための手段】
【0006】
第1の態様によれば、本開示は地理的位置を検索する方法を提供し、当該方法は、
国際文字ベクトル表現辞書を使用して、ユーザによって入力された検索語における各文字のベクトル表現をそれぞれ決定するステップと、
検索語における各文字のベクトル表現を予めトレーニングされた第1のニューラルネットワークに入力して、検索語のベクトル表現を取得するステップと、
前記検索語のベクトル表現と地図データベース内の各地理的位置のベクトル表現の類似度を決定するステップと、
前記類似度に基づいて、検索された地理的位置を決定するステップと、を含み、
前記地理的位置のベクトル表現は、国際文字ベクトル表現辞書を使用して地理的位置の記述テキスト内の各文字のベクトル表現を決定した後に、前記地理的位置の記述テキスト内の各文字のベクトル表現を予めトレーニングされた第2のニューラルネットワークに入力することで取得され、前記国際文字ベクトル表現辞書は、少なくとも2つの言語の文字を同一のベクトル空間にマッピングするために用いられる。
【0007】
第2の態様によれば、本開示は地理的位置を検索する装置を提供し、当該装置は、
国際文字ベクトル表現辞書を使用して、ユーザによって入力された検索語における各文字のベクトル表現をそれぞれ決定するための第1のベクトル決定ユニットと、前記国際文字ベクトル表現辞書は、少なくとも2つの言語の文字を同一のベクトル空間にマッピングするために用いられる第1のベクトル決定ユニットと、
検索語における各文字のベクトル表現を予めトレーニングされた第1のニューラルネットワークに入力して、検索語のベクトル表現を取得するための第2のベクトル決定ユニットと、
前記検索語のベクトル表現と地図データベース内の各地理的位置のベクトル表現の類似度を決定するための類似度決定ユニットであって、前記地理的位置のベクトル表現は、国際文字ベクトル表現辞書を使用して地理的位置の記述テキスト内の各文字のベクトル表現を決定した後に、前記地理的位置の記述テキスト内の各文字のベクトル表現を予めトレーニングされた第2のニューラルネットワークに入力することで取得される類似度決定ユニットと、
前記類似度に基づいて、検索された地理的位置を決定するための検索処理ユニットと、を含む。
【0008】
第3の態様によれば、本開示は電子機器をさらに提供し、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサと通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが上記の任意の一つの方法を実行することができる。
【0009】
第4の態様によれば、本開示はコンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体をさらに提供し、前記コンピュータ命令は、前記コンピュータに上記の任意の一つの方法を実行させる。
上記の技術案から分かるように、本開示では、国際文字ベクトル表現辞書を使用して、異なる言語の文字をいずれも同一のベクトル空間にマッピングし、各文字のベクトル表現に基づいて検索語のベクトル表現と地理的位置のベクトル表現をそれぞれ取得し、さらに、検索語のベクトル表現と地理的位置のベクトル表現との間の類似度に基づいて、検索された地理的位置を決定する。このような方式は言語にわたる地理的位置検索のニーズをよりよく満たすことができる。
【0010】
上記選択可能な方式が有する他の効果は、以下で具体的な実施例を併せて説明する。
【図面の簡単な説明】
【0011】
図面は、本開示をより良く理解するためのものであり、本開示を限定しない。
図1】本開示の実施例に適用可能な例示的なシステムアーキテクチャを示す。
図2】本開示の実施例により提供される類似度モデルの計算フレームワークの概略図である。
図3】本開示の実施例1により提供される地理的位置を検索する方法のフローチャートである。
図4】本開示の実施例2により提供されるトレーニング類似度モデルの方法のフローチャートである。
図5】本開示の実施例2により提供されるトレーニング類似度モデルの原理の概略図である。
図6】本開示の実施例3により提供されるトレーニング類似度モデルの方法のフローチャートである。
図7】本開示の実施例3により提供されるセマンティックグラフを構築する概略図である。
図8】本開示の実施例3により提供されるトレーニング類似度モデルの原理の概略図である。
図9】本開示の実施例により提供される地理的位置を検索する装置の構造図である。
図10】本開示の実施例を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0012】
以下、図面に基づいて、本開示の例示的な実施例を表現する。理解を容易にするために、本開示の実施例の様々な詳細が含まれており、それらは単なる例示と見なされるべきである。従って、当業者は、本開示の範囲及び精神から逸脱することなく、本明細書に記載の実施形態に対して様々な変更及び修正を行うことができることを認識するはずである。類似として、簡明のために、以下の表現では、よく知られた機能と構造の表現は省略される。
【0013】
図1は本開示の実施例に適用可能な例示的なシステムアーキテクチャを示す。図2に示すように、当該システムアーキテクチャは、端末装置101および102、ネットワーク103、およびサーバ104を含むことができる。ネットワーク103は端末装置101、102とサーバ104との間の通信リンクを提供する媒体とする。ネットワーク103は、有線、無線通信リンク、または光ファイバケーブルなどのような、様々な接続タイプを含むことができる。
【0014】
ユーザは端末装置101および102を使用して、ネットワーク103を介してサーバ104とインタラクションすることができる。端末装置101および102には、地図アプリケーション、音声インタラクションアプリケーション、ウェブブラウザアプリケーション、通信系アプリケーションなど、様々なアプリケーションがインストールされていることができる。
【0015】
端末装置101および102は、地図アプリケーションをサポートおよび表示することができる様々な電子機器であってもよい。例えば、スマートフォン、タブレットコンピュータ、PC、スマートテレビなどを含むが、これらに限定されない。本開示によって提供される装置はサーバ104上で設置および実行することができる。これは複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するために)として実現することができ、単一のソフトウェアまたはソフトウェアモジュールとして実現することができ、ここでは具体的に限定しない。
【0016】
例えば、地理的位置を検索する装置は、上記のサーバ104内に設置して実行し、サーバ104は、端末装置101または102の検索要求を受信することができ、当該検索要求には検索語が含まれる。地理的位置を検索する装置は、本開示の実施例により提供される方式を使用して地理的位置の検索を行い、検索結果を端末装置101または102に返す。サーバ104に地図データベースが維持されており、当該地図データベースはサーバ104のローカルに記憶することができ、他のサーバに記憶してサーバ104から呼び出すこともできる。サーバ104はユーザが地図アプリケーションを使用する関連行為を取得して記録することができるので、例えば、履歴クリックログ、履歴閲覧ログなどを形成することができる。
【0017】
サーバ104は単一のサーバであってもよく、複数のサーバによって構成されるサーバグループであってもよい。図1の端末装置、ネットワーク、およびサーバの数は単なる例示であることを理解されたい。実現のニーズに応じて、任意の数の端末装置、ネットワーク、およびサーバを有することができる。
【0018】
本開示の核心思想は、国際文字ベクトル表現辞書を使用して、異なる言語の文字をいずれも同一のベクトル空間にマッピングし、各文字のベクトル表現に基づいて検索語のベクトル表現と地理的位置のベクトル表現をそれぞれ取得し、さらに、検索語のベクトル表現と地理的位置のベクトル表現との間の類似度に基づいて、検索された地理的位置を決定する。以下、実施例を組み合わせて本開示により提供される方法及び装置を詳細に説明する。
【0019】
実施例1、
本開示で実現される地理的位置を検索する方法は、類似度モデルに基づいており、図2に示すように、類似度モデルは、国際文字ベクトル表現辞書(図では「辞書」と呼ばれる)、第1のニューラルネットワーク、および第2のニューラルネットワークを含むことができる。地理的位置を検索する方法は、図3に示すように、以下のようなステップを含むことができる。
301aでは、ユーザによって入力された検索語を取得した後、国際文字ベクトル表現辞書を使用して、ユーザによって入力された検索語における各文字のベクトル表現をそれぞれ決定する。ユーザが検索語「KFC」を入力することを例として、それぞれ国際文字ベクトル表現辞書を使用して、「K」の文字ベクトル表現、「F」の文字ベクトル表現、および「C」の文字ベクトル表現を決定する。
【0020】
本開示に関する国際文字ベクトル表現辞書は、様々な異なる言語の文字を量子化する時に、すべて量子化して一つのベクトル表現を取得することができるように、少なくとも2つの言語の文字をすべて同一のベクトル空間にマッピングする。すべての言語の文字をマッピングして取得されるベクトル表現は同じ次元を有する。
【0021】
cが一つの文字であると仮定すると、当該文字は、辞書によってサポートされる任意の言語の文字であってもよく、Cはcに対応するベクトル表現であると、Cは、以下のように表現される。
C=D(c)
その中、D( )は、国際文字ベクトル表現辞書で使用されるマッピング関数である。
【0022】
同様に、301bでは、地図データベース内の各地理的位置の記述テキスト内の各文字は、国際文字ベクトル表現辞書で各文字のベクトル表現としてマッピングすることもできる。その中、本開示に関する地理的位置は、地図データベース内の地理的位置を含み、地図アプリケーションにおける地理的位置ポイントを指し、当該地理的位置ポイントは、ユーザが検索、及び閲覧して、ユーザへの推奨などが可能である。これらの地理的位置ポイントは、経緯度、名称、行政住所、タイプなどの基本的な属性を有する。地理的位置ポイントは、POI(Point Of Interest、興味ポイント)、AOI(Area of Interest、興味面)、ROI(Regin of Interest、興味領域)などを含むことができるが、これらに限定されない。
【0023】
検索プロセス中に、名称上で地理的位置が検索語とマッチングするようにするだけでなく、他の地理的位置の記述情報と検索語がマッチングするように検索することができることを実現するために、本開示では、地理的位置の記述テキスト内の各文字をベクトル表現としてそれぞれ決定した後、再び、さらに、地理的位置のベクトル表現を決定することができる。記述テキストは、名称、ラベル、住所、評価、写真記述テキストのうちの少なくとも一つを含むことができるが、これらに限定されない。これらの記述テキストの情報は、地図データにも記憶および維持される。
【0024】
例えば、地理的位置ポイント「ケンタッキー(西直門南大街店)」にとって、記述テキストは、以下を含む。
名称-「ケンタッキー(西直門南大街店)」、
住所-「北京市西城区西直門南大街甲15-6号2階」、
ラベル-「チェーン」、「便利な交通」、「ワーキングランチ」、「西洋のファーストフード」など、
評価-「美味しい」、「人気がある」、「親子に適している」など

上記の記述テキスト内の各文字を国際文字ベクトル表現辞書で各文字のベクトル表現としてマッピングすることができる。
【0025】
302aでは、検索語の各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を出力として取得する。302bでは、地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークに入力し、当該地理的位置のベクトル表現を取得する。このようにして、地図データベース内の各地理的位置のベクトル表現をそれぞれ取得することができる。
【0026】
本開示では、第1のニューラルネットワーク、および第2のニューラルネットワークのタイプに制限されず、二つのニューラルネットワークの出力ベクトルの次元が一致していればよい。例えば、二つのニューラルネットワークは、CNN(Convolutional Neural Networks、畳み込みニューラルネットワーク)、ERNIE(Enhanced Representation through kNowledge IntEgration、知識拡張セマンティック表現モデル)を使用することができる。なお、本開示の実施例に関する「第1」、「第2」などの限定は、名称のみを区別し、順序、数量、重要度などの意味を持たない限定である。
【0027】
検索語が一連のm個の文字q1,q2,…,qmで構成され、ある地理的位置の記述テキストがn個のp1,p2,…,pn文字で構成されると仮定すると、対応する文字ベクトル表現を取得した後、各一つのニューラルネットワーク(設定G( )は、クエリワードに対応するニューラルネットワークであり、H( )は、地理的位置に対応するニューラルネットワークである)を介して、次元が同じであるベクトルyとzをそれぞれ取得し、
G(q1,q2,…,qm)=y
H(p1,p2,…,pn)=z
また、地図データベース内の各地理的位置のベクトル表現は、検索プロセスにリアルタイムで決定することができる。しかしながら、予め決定した後に検索プロセスに結果を直接に呼び出すことができ、すなわち、301bと302bは、既に予めオフラインで実行された処理である。
【0028】
303では、検索語のベクトル表現と地図データベース内の各地理的位置のベクトル表現の類似度を決定する。コサイン類似度などのような方式を使用してベクトルyとzとの間の類似度sを量子化することができる。
s=S(q1,q2,…,qm;p1,p2,…,pn)
=cosine(y,z)
304では、決定された類似度に基づいて、検索された地理的位置を決定する。類似度は、独立に地理的位置ソートの根拠とすることができ、非独立の方式で、すなわち、類似度は、特徴ベクトルのうちの一つとして、従来のソートモデルに統合することができる。
【0029】
類似度が独立に地理的位置ソートの根拠とする時、類似度にしたがって高い方から低い方に各地理的位置をソートし、ソート結果によって検索された地理的位置を決定することができる。例えば、前のN個に配列された地理的位置を検索された地理的位置として選択し、Nは予め設定された正の整数である。また、例えば、類似度が予め設定された類似度閾値を超えた地理的位置を検索された地理的位置として選択する。また、例えば、類似度に基づいて高い方から低い方への順序で地理的位置を表示し、ユーザの操作(例えば一つのページは、5つの地理的位置を展示することができ、ユーザがプルダウンの更新操作をする場合、下の5つの地理的位置を展示する)によって表示される地理的位置の数量を決定する。
【0030】
非独立の方式を使用する時、類似度を使用して類似度特徴を決定し、類似度特徴を予めトレーニングされたソートモデルの入力ベクトルの一つとし、ソートモデルが各地理的位置に対するソート結果を使用して検索された地理的位置を決定することができる。
【0031】
当該実施例1の実現方法を通じて、以下のような検索ニーズを達成することができる。
検索ニーズ1:
ユーザが検索語「エッフェル塔」を入力すると、国際文字ベクトル表現辞書で検索語における各文字および地理的位置の記述テキスト内の各文字をすべて同一のベクトル空間にマッピングするため、記述テキストでフランス語名「La Tour Eiffel」または英語名「Eiffel Tower」を使用しても、同一のベクトル空間で非常に近い距離を有することができ、言語にわたる地理的位置検索のニーズを実現することができる。
【0032】
検索ニーズ2:
ユーザが検索語「KFC」を入力すると、検索語における各文字および地理的位置の記述テキスト内の各文字をすべて同一のベクトル空間にマッピングした後、各文字のベクトル表現を使用して検索語のベクトル表現および地理的位置のベクトル表現を取得する。記述テキストでフルネーム「Kentucky Fried Chicken」を使用しても、同一のベクトル空間で非常に近い距離を有することができ、セマンティックに基づく地理的位置検索のニーズを実現することができる。
【0033】
上記の実施例1を実現しようとすると、類似度モデルを予めトレーニングする必要がある。以下、実施例2と実施例3をそれぞれ組み合わせて上記の類似度モデルのトレーニングプロセスに対して詳細に説明する。
【0034】
実施例2、
本実施例では、履歴クリックログを使用して類似度モデルのトレーニングを実現する。履歴クリックログは、ユーザが検索された地理的位置に対してクリックしたか否かに関する検索履歴記録に基づいて生成されたログである。本実施例により提供されるトレーニング類似度モデルのプロセスは、図4に示すように、以下のようなステップを含むことができる。
401では、履歴クリックログからトレーニングデータを取得し、トレーニングデータは、検索語、および正のサンプルとする検索語に対応するクリックされた地理的位置と負のサンプルとするクリックされていない地理的位置を含む。
【0035】
本ステップにおいてトレーニングデータを取得する時、各トレーニングデータは、実際に、一つの正と負のサンプルペアを含む。同一の検索語にとって、それに対応する検索結果から一つのクリックされた地理的位置を正のサンプルとして選択し、次に、クリックされなかった地理的位置から一つを負のサンプルとして選択する。
【0036】
例えば、履歴クリックログに、検索語「KFC」に対応する検索結果は、ケンタッキー(西直門店)、ケンタッキー(回龍観店)、ケンタッキー(三元橋店)などの地理的位置を含むと仮定する。ユーザが「ケンタッキー(回龍観店)」をクリックし、他の地理的位置はクリックしてなかった場合、その中の一つのトレーニングデータは、正のサンプルペアとする「KFC」-「ケンタッキー(回龍観店)」と、負のサンプルペアとする「KFC」-ケンタッキー(三元橋店)を含むことができる。
【0037】
このような方式を使用して多くのトレーニングデータを選択することができる。
【0038】
402では、トレーニングデータを使用して上記の国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化し、第1の類似度は、検索語のベクトル表現と正のサンプルのベクトル表現の類似度であり、第2の類似度は、検索語のベクトル表現と負のサンプルのベクトル表現の類似度である。
【0039】
具体的には、図5に示すように、まず、国際文字ベクトル表現辞書を使用して(図に「辞書」よばれる)、トレーニングデータ内の各文字のベクトル表現、すなわち、検索語における各文字のベクトル表現、正のサンプルとするクリックされた地理的位置の記述テキスト内の各文字のベクトル表現、負のサンプルとするクリックされていない地理的位置の記述テキスト内の各文字のベクトル表現をそれぞれ決定することができる。
【0040】
ここのすべての文字は、言語に関係なく、すべて国際文字ベクトル表現辞書で同一のベクトル空間にマッピングすることができる。すべての文字のベクトル表現はすべて同じ次元を持っている。
【0041】
次に、検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得し、正のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現および負のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、正のサンプルのベクトル表現および負のサンプルのベクトル表現を取得する。本開示では、第1のニューラルネットワーク、および第2のニューラルネットワークのタイプに制限せず、二つのニューラルネットワークの出力ベクトルの次元のみが一致すればよい。例えば、二つのニューラルネットワークは、CNN(Convolutional Neural Networks、畳み込みニューラルネットワーク)、ERNIE(Enhanced Representation through kNowledge IntEgration、知識拡張セマンティック表現モデル)を使用することができる。
【0042】
次に、検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定する。
【0043】
第1の類似度および第2の類似度を使用して、上記の国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化することができる。
【0044】
つまり、トレーニング目標は、第1の類似度を最大化し、第2の類似度を最小化し、第1の類似度および第2の類似度の差をできるだけ最大化することである。
【0045】
トレーニング目標は最小化された損失関数に表示することができ、損失関数Lossは、
Loss=max[0,γ+ cosine(y,z+)- cosine(y,z-)]
を使用することができ、yは、検索語のベクトル表現であり、z+は、正のサンプルのベクトル表現であり、z-は、負のサンプルのベクトル表現であり、γは、ハイパーパラメータである。
【0046】
トレーニングプロセス中に、トレーニング目標に達成するまで、Lossの値を使用して、国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを含むモデルパラメータを反復的に更新する。例えば、Lossの値は予め設定された要求を満たし、反復回数は予め設定された要求を満たすなどである。
【0047】
本実施例により提供されるモデルトレーニング方法は、地理的位置検索で文字の表面上の意味にマッチングする必要がある限制を突破して、以下のような検索ニーズを満たすことができる。
例えば、いくつかの地理的位置については、いくつかのユーザ内で広く伝わっているふざけた名称、略称、またはニックネームなどがよくある。これらの呼称が即時に采集されて同義辞書が確立されてない場合、ユーザが実際に必要とする地理的位置検索を実現することは困難になる。例えば、ケンタッキーにとって、多くのユーザは、それをふざけた名称として「開封料理」と呼んでいる。しかし、本開示により提供される方式を使用して、ユーザが検索語「開封料理」を入力し、地理的位置の検索結果で「ケンタッキー」に関連する地理的位置をクリックしたユーザがありまたはユーザが増える場合、上記のトレーニングプロセスを通じて両者の間の類似度関連を確立することができ、実際の検索プロセスにおいて、ユーザが検索語「開封料理」を入力する時、ケンタッキーに関する地理的位置を検索して取得することができる。
【0048】
しかしながら、本実施例でトレーニングされた類似度モデルは、既存の、クリック履歴がある検索語および地理的位置を非常に依存する傾向がある。高頻度で出現されてクリックされた検索語および地理的位置について、モデルは検索結果の順序付けに非常によい効果をもっている。しかし、出現された回数が少ない検索語および地理的位置、さらに出現されたことがない検索語および地理的位置について、モデルによる検索結果は非常に低くなり、すなわち、履歴クリックログが少ないコールドスタート問題を実現することができない。この技術的問題を解決するために、本開示は好ましいモデルトレーニング方式をさらに提供し、以下の実施例3で詳細に説明する。
【0049】
実施例3、
できるだけクリック回数が少ない地理的位置、さらにクリックされたことがない地理的位置(例えば新出現の地理的位置)でもすべて良い検索ソート結果を取得することができるために、本実施例では、既存の高頻度クリックの地理的位置、および低頻度またはクリックされたことがない地理的位置を、別の観点から関連付けを確立する。したがって、履歴クリックログ以外に、モデルトレーニングプロセスに履歴閲覧ログを導入し、共現関係を閲覧することによって地理的位置間の関連付けを確立する。
【0050】
図6は本開示の実施例3により提供されるトレーニング類似度モデルの方法のフローチャートである。図6に示すように、当該方法は、以下のようなステップを含むことができる。
601では、履歴クリックログからトレーニングデータを取得し、トレーニングデータは、検索語と、正のサンプルとする検索語に対応するクリックされた地理的位置と、負のサンプルとするクリックされていない地理的位置を含む。
【0051】
本ステップは実施例2の401と同じであり、ここでは説明を省略する。
【0052】
602では、履歴閲覧ログを使用して、地理的位置間の閲覧共現関係に基づいて前記正のサンプルと負のサンプルを拡張する。
【0053】
履歴クリックログ以外に、本開示は履歴閲覧ログをさらに引用する。履歴閲覧ログは地理的位置に対するユーザの閲覧行為記録から取得される。ユーザの検索プロセス中の閲覧行為、地図アプリケーションで地理的位置をランダムに見る閲覧行為、地図アプリケーションの情報推奨による閲覧行為などを含むが、これらに限定されない。
【0054】
より直感的に理解するために、図7を例として説明する。図7では、検索語「q1」、「q2」、および「q3」について、履歴クリックログにq1に対応するクリックされた地理的位置P1、q2に対応するクリックされた地理的位置P2、およびq3に対応するクリックされた地理的位置P3があり、クリックに基づく連携は図7に実線で表示する。しかし、履歴閲覧ログに基づいて、ユーザがP1を閲覧する時にP2、P4も閲覧することを取得することができる。P1とP2は閲覧共現関係があり、P1とP3は閲覧共現関係が存在すると見なすことができる。一つのセッションで前後に複数の地理的位置を閲覧した場合、当該複数の地理的位置間に共現関係があると見なす。
【0055】
図7では、地理的位置間に基づいて閲覧共現関係の関連付けを破線で表示する。サンプルの拡張を容易にするために、履歴閲覧ログに基づいて、上記の地理的位置間の関連付けを使用してセマンティックグラフを構成することができる。セマンティックグラフにおいて、ノードは地理的位置であり、地理的位置間の関連付けは地理的位置間に閲覧共現関係が存在することを表示し、地理的位置間に関連パラメータも存在し、図7の辺に注記したように、 「a12」は、P1とP2との間の関連パラメータであり、「a14」は、P1とP4との間の関連パラメータであり、「a23」は、P2とP3との間の関連パラメータであり、このように類推する。関連パラメータは地理的位置間の閲覧共現の度合いを反映し、最初は対応する地理的位置間の共現状況によって決定することができ、例えば、共現回数によって決定し、共現回数が高いほど、対応する関連パラメータ値が大きくなる。当該関連パラメータ値は、後続のトレーニングプロセスにも役割を果たし、具体的には、ステップ603に関する説明を参照する。
【0056】
本ステップでは、セマンティックグラフからクリックされた地理的位置に閲覧共現関係が存在する各地理的位置をそれぞれ取得して正のサンプルを拡張し、クリックされていない地理的位置に閲覧共現関係が存在する地理的位置を取得して負のサンプルを拡張することができる。セマンティックグラフを使用して正のサンプルと負のサンプルを拡張する方式は、セマンティックグラフから地理的位置間の閲覧共現関係を直接に見つけることができ、より便利であり、より効率的である。
【0057】
例えば、一つのトレーニングデータについて、q1-P1は正のサンプルペアであり、q1-P7は負のサンプルペアである。拡張した後に、P1、P2、P4を拡張して正のサンプルにおける地理的位置を構成し、P7、P3を拡張して負のサンプルにおける地理的位置を構成することができる。
【0058】
603では、拡張した後のトレーニングデータを使用して国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化し、前記第1の類似度は、検索語のベクトル表現と前記正のサンプルのベクトル表現の類似度であり、前記第2の類似度は、検索語のベクトル表現と負のサンプルのベクトル表現の類似度である。
【0059】
具体的には、図8に示すように、まず、国際文字ベクトル表現辞書を使用して、トレーニングデータ内の各文字のベクトル表現をそれぞれ決定することができる。すなわち、検索語における各文字のベクトル表現、正のサンプルとするクリックされた地理的位置と、クリックされた地理的位置に閲覧共現関係が存在する地理的位置の記述テキスト内の各文字のベクトル表現、負のサンプルとするクリックされていない地理的位置と、クリックされていない地理的位置に閲覧共現関係が存在する地理的位置の記述テキスト内の各文字のベクトル表現である。
【0060】
ここのすべての文字は、言語に関係なく、すべて国際文字ベクトル表現辞書で同一のベクトル空間にマッピングすることができる。すべての文字のベクトル表現はすべて同じ次元を持っている。
【0061】
次に、検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得する。
【0062】
クリックされた地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークに入力し、クリックされていない地理的位置のベクトル表現を取得し、クリックされた地理的位置に閲覧共現関係が存在する地理的位置(図には閲覧共現地理的位置と呼ばれる)の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、閲覧共現の地理的位置に対応するベクトル表現を取得する。第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、正のサンプルのベクトル表現を取得する。
【0063】
なお、図7に示すセマンティックグラフを例として、q1に対応する正のサンプルの地理的位置は、P1、P2、およびP4を含み、第2のニューラルネットワークは、P1のベクトル表現V1、P2のベクトル表現V2、およびP4のベクトル表現V4をそれぞれ取得した後、以下の重み付け処理を行い、正のサンプルのベクトル表現z+を取得することができ、
z+=V1+a12*V2+a14*V4。
【0064】
クリックされていない地理的位置の記述テキスト内の各文字のベクトル表現、およびクリックされていない地理的位置に閲覧共現関係が存在する地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、負のサンプルのベクトル表現を取得する。
【0065】
上記の例を続けて、q1に対応する負のサンプル地理的位置は、P7、およびP3を含み、第2のニューラルネットワークは、P7のベクトル表現V7と、P3のベクトル表現V3をそれぞれ取得する。図7に示すセマンティックグラフにしたがって、以下の重み付け処理を行い、負のサンプルのベクトル表現z-を取得する。
z-=V7+a37*V3
次に、検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定する。
【0066】
第1の類似度および第2の類似度を使用して、前記国際文字ベクトル表現辞書、セマンティックグラフ、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化する。
【0067】
つまり、トレーニング目標は、第1の類似度を最大化し、第2の類似度を最小化し、第1の類似度および第2の類似度の差を可能な限り最大化する。
【0068】
トレーニング目標は、同様に、損失関数を最小化するように表示することができ、損失関数Lossは、
Loss=max[0, γ+ cosine(y,z+)- cosine(y,z-)]
を使用することができ、yは、検索語のベクトル表現であり、z+は、正のサンプルのベクトル表現であり、z-は、負のサンプルのベクトル表現であり、γは、ハイパーパラメータである。
【0069】
トレーニングプロセス中に、トレーニング目標に達成するまで、Lossの値を使用して、国際文字ベクトル表現辞書、セマンティックグラフ、第1のニューラルネットワーク、および第2のニューラルネットワークのパラメータを含むモデルパラメータを反復的に更新する。例えば、Lossの値は予め設定された要求を満たし、反復回数は予め設定された要求を満たすなどである。
【0070】
トレーニングプロセス中にセマンティックグラフにおける関連パラメータも更新され、各地理的位置間の閲覧共現に基づく関連関係が徐々に最適化されて、トレーニング目標を達成する。
【0071】
本実施例により提供されるモデルトレーニング方法は、クリック回数係数に対応する地理的位置検索のコールドスタート問題を解決することができ、既に以下のような検索ニーズに達成する。
いくつかの新たに出現した地理的位置について、例えば、「ケンタッキー(回龍観店)」は新しくオープンした店であり、初期は、履歴クリックログに出現されず、またはクリック回数が非常に少ないため、実施例2で確立されたモデルを介して検索して当該新しい地理的位置を取得することが難しい。しかし、本実施例3のモデル確立方式を使用する場合、ユーザが地図を使用するプロセス中に、地図内の閲覧を通じて、一つのセッション中で既に長く出現された地理的位置「ケンタッキー(西直門店)」を同時に閲覧し、「ケンタッキー(回龍観店)」を同時に閲覧し、または地図アプリケーションの情報推奨機能で「ケンタッキー(西直門店)」と「ケンタッキー(回龍観店)」を同時に閲覧する。そうすると、セマンティックグラフで地理的位置「ケンタッキー(西直門店)」と「ケンタッキー(回龍観店)」との間の関連付けを確立する。「ケンタッキー(西直門店)」は長く出現された地理的位置であるため、履歴クリック回数が多い。したがって、類似度モデルを確立するプロセス中に、「ケンタッキー(西直門店)」を正のサンプルとしてトレーニングするプロセス中に、「ケンタッキー(回龍観店)」も正のサンプルのベクトル表現に貢献し、「ケンタッキー(回龍観店)」も「ケンタッキー(西直門店)」の検索語「KFC」に関連付けを確立する。そうすると、ユーザが「KFC」を検索する時、類似度に基づいて検索結果に「ケンタッキー(回龍観店)」が出現することができるため、「ケンタッキー(回龍観店)」のコールドスタート問題を解決する。
【0072】
以上は、本開示により提供される方法に対して行う詳細の説明であり、以下は、実施例を組み合わせて本開示により提供される装置を詳細に説明する。
【0073】
実施例4、
図9は本開示の実施例により提供される地理的位置を検索する装置の構造図である。当該装置は、サーバ側にあるアプリケーションプログラム、またはサーバ側にあるアプリケーションプログラムのプラグインまたはソフトウェア開発キット(Software Development Kit、SDK)などの機能ユニットであってもよく、本開示の実施例はこれについて特に限定しない。図9に示すように、当該装置は、第1のベクトル決定ユニット01、第2のベクトル決定ユニット02、類似度決定ユニット03、および検索処理ユニット04を含むことができ、さらに、第1のモデルトレーニングユニット05または第2のモデルトレーニングユニット06を含むことができる。その中の各構成ユニットの主な機能は以下の通りである。
第1のベクトル決定ユニット01は、国際文字ベクトル表現辞書を使用して、ユーザによって入力された検索語における各文字のベクトル表現をそれぞれ決定するために用いられ、国際文字ベクトル表現辞書は、少なくとも2つの言語の文字を同一のベクトル空間にマッピングするために用いられる。
【0074】
第2のベクトル決定ユニット02は、検索語における各文字のベクトル表現を予めトレーニングされた第1のニューラルネットワークに入力して、検索語のベクトル表現を取得するために用いられる。
【0075】
類似度決定ユニット03は、検索語のベクトル表現と地図データベース内の各地理的位置のベクトル表現の類似度を決定するために用いられる。
【0076】
その中、地理的位置のベクトル表現は、上記の第1のベクトル決定ユニット01を多重化して国際文字ベクトル表現辞書を使用して地理的位置の記述テキスト内の各文字のベクトル表現を決定した後に、次に、上記の第2のベクトル決定ユニット02を多重化して地理的位置の記述テキスト内の各文字のベクトル表現を予めトレーニングされた第2のニューラルネットワークに入力することで取得される。地理的位置のベクトル表現は、地理的位置を検索するプロセス中にリアルタイムで決定することができるが、しかし、好ましい実施方式として、オフラインの方式を使用して予め取得することができ、次に、類似度決定ユニット03が検索プロセス中にオフラインで取得された地図データにおける地理的位置のベクトル表現をリアルタイムで呼び出すことができる。
【0077】
その中、地理的位置の記述テキストは、名称、ラベル、住所、評価、写真記述テキストのうちの少なくとも一つを含むことができる。
【0078】
検索処理ユニット04は、類似度に基づいて、検索された地理的位置を決定するために用いられる。
【0079】
具体的には、検索処理ユニット04は、類似度にしたがって各地理的位置を高い方から低い方へソートし、ソート結果によって検索された地理的位置を決定することができる。
【0080】
または、検索処理ユニット04は、類似度を使用して類似度特徴を決定し、類似度特徴を予めトレーニングされたソートモデルの入力ベクトルの一つとし、ソートモデルが各地理的位置に対するソート結果を使用して検索された地理的位置を決定することもできる。
【0081】
第1のモデルトレーニングユニット05と第2のモデルトレーニングユニット06は、上記の国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークによって構成された類似度モデルを予めトレーニングする。本開示には第1のモデルトレーニングユニット05と第2のモデルトレーニングユニット06のうちの一つを使用することができる。
【0082】
第1のモデルトレーニングユニット05は、
履歴クリックログからトレーニングデータを取得し、トレーニングデータは、検索語と、正のサンプルとする検索語に対応するクリックされた地理的位置と、負のサンプルとするクリックされていない地理的位置を含み、
トレーニングデータを使用して国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化するトレーニングプロセスを予め実行し、第1の類似度は、検索語のベクトル表現と正のサンプルのベクトル表現の類似度であり、第2の類似度は、検索語のベクトル表現と負のサンプルのベクトル表現の類似度である。
【0083】
具体的には、第1のモデルトレーニングユニット05は、トレーニングデータを使用して国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングする時に、
国際文字ベクトル表現辞書を使用して、トレーニングデータ内の各文字のベクトル表現をそれぞれ決定し、
検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得し、正のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現および負のサンプルの地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、正のサンプルのベクトル表現および負のサンプルのベクトル表現を取得し、
検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定し、
国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化することを実行する。
【0084】
第2のモデルトレーニングユニット06は、
履歴クリックログからトレーニングデータを取得し、トレーニングデータは、検索語と、正のサンプルとする検索語に対応するクリックされた地理的位置と、負のサンプルとするクリックされていない地理的位置を含み、
履歴閲覧ログを使用して、地理的位置間の閲覧共現関係に基づいて正のサンプルと負のサンプルを拡張し、
拡張した後のトレーニングデータを使用して国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化するトレーニングプロセスを予め実行するために用いられ、第1の類似度は、検索語のベクトル表現と正のサンプルのベクトル表現の類似度であり、第2の類似度は、検索語のベクトル表現と負のサンプルのベクトル表現の類似度である。
【0085】
具体的には、第2のモデルトレーニングユニット06は、セマンティックグラフからクリックされた地理的位置に閲覧共現関係が存在する各第1の地理的位置をそれぞれ取得して正のサンプルを拡張し、クリックされていない地理的位置に閲覧共現関係が存在する各第2の地理的位置をそれぞれ取得して負のサンプルを拡張することができる。
【0086】
その中、第2のモデルトレーニングユニット06は、拡張した後のトレーニングデータを使用して国際文字ベクトル表現辞書、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングする時、具体的には、
国際文字ベクトル表現辞書を使用して、トレーニングデータ内の各文字のベクトル表現をそれぞれ決定し、
検索語における各文字のベクトル表現を第1のニューラルネットワークに入力し、検索語のベクトル表現を取得し、クリックされた地理的位置の記述テキスト内の各文字のベクトル表現、および各第1の地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、正のサンプルのベクトル表現を取得し、クリックされていない地理的位置の記述テキスト内の各文字のベクトル表現、および各第2の地理的位置の記述テキスト内の各文字のベクトル表現を第2のニューラルネットワークにそれぞれ入力し、第2のニューラルネットワークによって出力された各地理的位置のベクトル表現をセマンティックグラフにおける対応する地理的位置間の関連パラメータに従って重み付け処理を行い、負のサンプルのベクトル表現を取得し、
検索語のベクトル表現と正のサンプルのベクトル表現の第1の類似度、および同一の検索語のベクトル表現と負のサンプルのベクトル表現の第2の類似度を決定し、
国際文字ベクトル表現辞書、セマンティックグラフ、第1のニューラルネットワーク、および第2のニューラルネットワークをトレーニングして、第1の類似度と第2の類似度の差を最大化することを実行することができる。
【0087】
第2のモデルトレーニングユニット06を使用する場合、当該装置は、セマンティックグラフ構築ユニット07をさらに含み、
セマンティックグラフ構築ユニット07は、履歴閲覧ログに基づいてセマンティックグラフを確立し、セマンティックグラフにおけるノードは地理的位置であり、閲覧共現関係が存在する地理的位置に対して対応するノード間の関連付けを確立するために用いられ、地理的位置間の関連パラメータは、最初に地理的位置間の共現状況に基づいて決定し、
これに対応して、第2のモデルトレーニングユニット06は、トレーニングプロセス中にセマンティックグラフにおける地理的位置間の関連パラメータを更新する。
【0088】
第2のモデルトレーニングユニット06は、履歴クリックログからトレーニングデータを取得する以外に、さらに、履歴閲覧ログから、閲覧共現関係に基づいてトレーニングデータ中の正のサンプルと負のサンプルを拡張することによって、クリック回数係数に対応する地理的位置検索のコールドスタート問題を解決する。したがって、本開示では第2のモデルトレーニングユニット06を優先的に使用するため、図9には第1のモデルトレーニングユニット05を破線を使用して表示する。
【0089】
本開示の実施例によれば、本開示は電子機器および読み取り可能な記憶媒体をさらに提供する。
【0090】
図10に示すように、本開示の実施例の地理的位置を検索する方法を実現するための電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、パーソナルデジタル処理、携帯電話、スマートフォン、ウェアラブル装置、他の同様のコンピューティング装置などの様々な形式のモバイル装置を表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本開示の実現を制限することを意図したものではない。
【0091】
図10に示すように、当該電子機器は、一つ又は複数のプロセッサ1001と、メモリ1002と、高速インターフェースと低速インターフェースを含む各コンポーネントを接続するためのインターフェースと、を含む。各コンポーネントは、異なるバスで相互に接続され、共通のマザーボードに取り付けられるか、又は必要に基づいて他の方式で取り付けることができる。プロセッサは、外部入力/出力装置(インターフェースに結合されたディスプレイ装置など)にGUIの図形情報をディスプレイするためにメモリに記憶されている命令を含む、電子機器内に実行される命令を処理することができる。他の実施方式では、必要であれば、複数のプロセッサ及び/又は複数のバスを、複数のメモリとともに使用することができる。同様に、複数の電子機器を接続することができ、各電子機器は、部分的な必要な操作(例えば、サーバアレイ、ブレードサーバ、又はマルチプロセッサシステムとする)を提供することができる。図10では、一つのプロセッサ1001を例とする。
【0092】
メモリ1002は、本開示により提供される非一時的なコンピュータ読み取り可能な記憶媒体である。その中、前記メモリには、少なくとも一つのプロセッサによって実行される命令を記憶して、前記少なくとも一つのプロセッサが本開示により提供される地理的位置を検索する方法を実行することができるようにする。本開示の非一時的なコンピュータ読み取り可能な記憶媒体は、コンピュータが本開示により提供される地理的位置を検索する方法を実行するためのコンピュータ命令を記憶する。
【0093】
メモリ1002は、非一時的なコンピュータ読み取り可能な記憶媒体として、本開示の実施例における地理的位置を検索する方法に対応するプログラム命令/モジュールように、非一時的なソフトウェアプログラム、非一時的なコンピュータ実行可能なプログラム及びモジュールを記憶するために用いられる。プロセッサ1001は、メモリ1002に記憶されている非一時的なソフトウェアプログラム、命令及びモジュールを実行することによって、サーバの様々な機能アプリケーション及びデータ処理を実行し、すなわち上記の方法の実施例における地理的位置を検索する方法を実現する。
【0094】
メモリ1002は、ストレージプログラム領域とストレージデータ領域とを含むことができ、その中、ストレージプログラム領域は、オペレーティングシステム、少なくとも一つの機能に必要なアプリケーションプログラムを記憶することができ、ストレージデータ領域は、当該電子機器の使用によって作成されたデータなどを記憶することができる。また、メモリ1002は、高速ランダムアクセスメモリを含むことができ、非一時的なメモリをさらに含むことができ、例えば、少なくとも一つのディスクストレージ装置、フラッシュメモリ装置、又は他の非一時的なソリッドステートストレージ装置である。いくつかの実施例では、メモリ1002は、プロセッサ1001に対して遠隔に設置されたメモリを含むことができ、これらの遠隔メモリは、ネットワークを介して当該電子機器に接続されることができる。上記のネットワークの例は、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、及びその組み合わせを含むが、これらに限定しない。
【0095】
地理的位置を検索する方法の電子機器は、入力装置1003と出力装置1004とをさらに含むことができる。プロセッサ1001、メモリ1002、入力装置1003、及び出力装置1004は、バス又は他の方式を介して接続することができ、図10では、バスを介して接続することを例とする。
【0096】
入力装置1003は、入力された数字又は文字情報を受信することができ、及び当該電子機器のユーザ設置及び機能制御に関するキー信号入力を生成することができ、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、指示杆、一つ又は複数のマウスボタン、トラックボール、ジョイスティックなどの入力装置である。出力装置1004は、ディスプレイ装置、補助照明装置(例えば、LED)、及び触覚フィードバック装置(例えば、振動モータ)などを含むことができる。当該ディスプレイ装置は、LCD(液晶ディスプレイ)、LED(発光ダイオード)ディスプレイ、及びプラズマディスプレイを含むことができるが、これらに限定しない。いくつかの実施方式では、ディスプレイ装置は、タッチスクリーンであってもよい。
【0097】
本明細書で説明されるシステムと技術の様々な実施方式は、デジタル電子回路システム、集積回路システム、特定用途向けASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施方式は、一つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該一つ又は複数のコンピュータプログラムは、少なくとも一つのプログラマブルプロセッサを含むプログラム可能なシステムで実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも一つの入力装置、及び少なくとも一つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも一つの入力装置、及び当該少なくとも一つの出力装置に伝送することができる。
【0098】
これらのコンピューティングプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれる)は、プログラマブルプロセッサの機械命令、高レベルのプロセス及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ/機械言語でこれらのコンピューティングプログラムを実施することを含む。本明細書に使用されるように、用語「機械読み取り可能な媒体」及び「コンピュータ読み取り可能な媒体」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、機器、及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、PLD(プログラマブルロジック装置))を指し、機械読み取り可能な信号である機械命令を受信する機械読み取り可能な媒体を含む。用語「機械読み取り可能な信号」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するための任意の信号を指す。
【0099】
ユーザとのインタラクションを提供するために、コンピュータ上でここで説明されているシステム及び技術を実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティング装置(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティング装置によって入力をコンピュータに提供することができる。他の種類の装置は、ユーザとのインタラクションを提供するために用いられることもでき、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0100】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバー)、又はフロントエンドコンポーネントを含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施方式とインタラクションする)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実施することができる。任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続されることができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークと、を含む。
【0101】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。
【0102】
上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本開示で開示されている技術案が所望の結果を実現することができれば、本明細書では限定されない。
【0103】
上記の具体的な実施方式は、本開示に対する保護範囲の制限を構成するものではない。当業者は、設計要求と他の要因に基づいて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができる。任意の本開示の精神と原則内で行われる修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれなければならない。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10