特開2021-179987(P2021-179987A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ネイバー コーポレーションの特許一覧

特開2021-179987ショッピング検索結果の拡張方法およびシステム
<>
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000009
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000010
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000011
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000012
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000013
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000014
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000015
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000016
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000017
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000018
  • 特開2021179987-ショッピング検索結果の拡張方法およびシステム 図000019
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2021-179987(P2021-179987A)
(43)【公開日】2021年11月18日
(54)【発明の名称】ショッピング検索結果の拡張方法およびシステム
(51)【国際特許分類】
   G06Q 30/06 20120101AFI20211022BHJP
   G06Q 50/10 20120101ALI20211022BHJP
   G06Q 10/04 20120101ALI20211022BHJP
【FI】
   G06Q30/06 300
   G06Q50/10
   G06Q10/04
【審査請求】有
【請求項の数】20
【出願形態】OL
【全頁数】29
(21)【出願番号】特願2021-79106(P2021-79106)
(22)【出願日】2021年5月7日
(31)【優先権主張番号】10-2020-0056192
(32)【優先日】2020年5月11日
(33)【優先権主張国】KR
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ZIGBEE
3.レーザーディスク
(71)【出願人】
【識別番号】505205812
【氏名又は名称】ネイバー コーポレーション
【氏名又は名称原語表記】NAVER Corporation
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ソン イルヒョン
(72)【発明者】
【氏名】ソン デヌン
(72)【発明者】
【氏名】イ ウンキ
(72)【発明者】
【氏名】イ ジョンヒョン
(72)【発明者】
【氏名】イ ジョンテ
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049AA04
5L049BB44
5L049CC12
(57)【要約】      (修正有)
【課題】ショッピング検索結果の拡張方法、コンピュータプログラムおよび装置及びシステム並びにショッピング検索サービスに特化した学習データを生成するための方法、記録媒体に格納されたコンピュータプログラム、装置及びシステムを提供する。
【解決手段】情報処理システムが複数のユーザー端末と通信可能に連結された構成において、ショッピング検索結果の拡張方法は、ユーザー端末からショッピング検索クエリを受信するステップと、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換するステップと、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索結果をユーザー端末に転送するステップを含む。
【選択図】図7
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサによって遂行されるショッピング検索結果の拡張方法であって、
ユーザー端末からショッピング検索クエリを受信するステップと、
ショッピング検索クエリ拡張モデルを利用して前記ショッピング検索クエリを拡張クエリに変換するステップと、
前記ショッピング検索クエリまたは前記拡張クエリのうち少なくとも1つに基づいたショッピング検索結果を前記ユーザー端末に転送するステップと、
を含むショッピング検索結果の拡張方法。
【請求項2】
予め格納された事前ルール内に前記ショッピング検索クエリが含まれたと判定することに応答して、
前記ショッピング検索クエリを前記事前ルールに基づいて校正クエリに変換するステップと、
前記校正クエリに基づいたショッピング検索結果を前記ユーザー端末に転送するステップと、
をさらに含む請求項1に記載のショッピング検索結果の拡張方法。
【請求項3】
前記事前ルール内に前記ショッピング検索クエリが含まれていないと判定することに応答して、前記ショッピング検索クエリ拡張モデルを利用して前記ショッピング検索クエリを前記拡張クエリに変換する、請求項2に記載のショッピング検索結果の拡張方法。
【請求項4】
前記ショッピング検索クエリによって検索される商品がないと判定することに応答して、前記ショッピング検索クエリ拡張モデルを利用して前記ショッピング検索クエリを前記拡張クエリに変換する、請求項1〜3のいずれか1項に記載のショッピング検索結果の拡張方法。
【請求項5】
前記ショッピング検索クエリのCTR(Click-Through Rate)が予め決定されたしきい値以下であると判定することに応答して、前記ショッピング検索クエリ拡張モデルを利用して前記ショッピング検索クエリを前記拡張クエリに変換する、請求項1〜4のいずれか1項に記載のショッピング検索結果の拡張方法。
【請求項6】
前記ショッピング検索クエリまたは前記拡張クエリのうち少なくとも1つに基づいたショッピング検索結果を前記ユーザー端末に転送するステップは、
前記ショッピング検索クエリによって検索される商品が存在しないと判定することに応答して、前記拡張クエリに基づいたショッピング検索結果を前記ユーザー端末に転送するステップを含む、請求項1〜5のいずれか1項に記載のショッピング検索結果の拡張方法。
【請求項7】
前記ショッピング検索クエリまたは前記拡張クエリのうち少なくとも1つに基づいたショッピング検索結果を前記ユーザー端末に転送するステップは、
前記ショッピング検索クエリによって検索される商品が存在すると判定することに応答して、前記ショッピング検索クエリによって検索される商品と前記拡張クエリによって検索される商品の表示順位を決定するステップを含む、請求項1〜5のいずれか1項に記載のショッピング検索結果の拡張方法。
【請求項8】
前記ショッピング検索クエリによって検索される商品と前記拡張クエリによって検索される商品の表示順位を決定するステップは、
前記拡張クエリによって検索される商品の表示順位に負の重みを適用するステップ、または
前記ショッピング検索クエリによって検索される商品の表示順位に正の重みを適用するステップのうち少なくとも1つを含む、請求項7に記載のショッピング検索結果の拡張方法。
【請求項9】
前記ショッピング検索クエリ拡張モデルを利用して前記ショッピング検索クエリを拡張クエリに変換するステップは、
前記ショッピング検索クエリを音節単位または形態素単位のうち少なくとも1つに分割して複数の部分クエリを生成するステップと、
予め格納された言語モデルを利用して、前記ショッピング検索クエリおよび前記複数の部分クエリに基づいて複数の拡張クエリ候補を生成するステップと、
前記複数の拡張クエリ候補のそれぞれに対する信頼度スコアを算出するステップと、
前記複数の拡張クエリ候補のうち最も高い信頼度スコアを有する拡張クエリ候補を前記拡張クエリとして使用するステップとを含む、請求項1〜8のいずれか1項に記載のショッピング検索結果の拡張方法。
【請求項10】
前記信頼度スコアは、前記言語モデルを利用して算出された前記ショッピング検索クエリと各拡張クエリ候補の間のマッチングスコア、そして各拡張クエリ候補のクエリ発生確率に基づいて算出される、請求項9に記載のショッピング検索結果の拡張方法。
【請求項11】
請求項1〜10のいずれかに記載のショッピング検索結果の拡張方法をコンピュータで実行するためのコンピュータプログラム。
【請求項12】
ショッピング検索結果の拡張システムであって、
メモリと、
前記メモリと連結され、前記メモリに含まれたコンピュータ読み取り可能な少なくとも1つのプログラムを実行するように構成された少なくとも1つのプロセッサを含み、
前記少なくとも1つのプログラムは、
ショッピング検索クエリを受信し、
ショッピング検索クエリ拡張モデルを利用して前記ショッピング検索クエリを拡張クエリに変換し、
前記ショッピング検索クエリまたは前記拡張クエリのうち少なくとも1つに基づいたショッピング検索結果を転送するための命令語を含む、ショッピング検索結果の拡張システム。
【請求項13】
少なくとも1つのプロセッサによって遂行される学習データの生成方法であって、
1つの検索セッションの間に入力された第1のクエリおよび第2のクエリを含むショッピング検索ログデータを受信するステップであって、前記第1のクエリが前記第2のクエリより先に入力される、ステップと、
前記第1のクエリおよび前記第2のクエリの間の検索拡張スコアを算出するステップと、
前記検索拡張スコアが予め決定されたしきい値以上であると判定することに応答して、前記第1のクエリおよび前記第2のクエリを学習データのペアで抽出するステップとを含む、学習データの生成方法。
【請求項14】
前記第1のクエリおよび前記第2のクエリの間の検索拡張スコアを算出するステップは、
前記第1のクエリの入力時間と前記第2のクエリの入力時間の差を算出するステップ、または
前記第1のクエリと前記第2のクエリの間のテキスト類似度を算出するステップのうち少なくとも1つを含む、請求項13に記載の学習データの生成方法。
【請求項15】
前記第1のクエリと前記第2のクエリの間のテキスト類似度は、前記第1のクエリと前記第2のクエリの間の書記素編集距離または音節編集距離のうち少なくとも1つに基づいて算出される、請求項14に記載の学習データの生成方法。
【請求項16】
前記第1のクエリおよび前記第2のクエリの間の検索拡張スコアを算出するステップは、
前記第1のクエリのクエリ発生確率と前記第2のクエリのクエリ発生確率の間の差を算出するステップと、
前記第1のクエリによって検索される商品の数と前記第2のクエリによって検索される商品の数の差を算出するステップ、または
前記第1のクエリのCTR(Click-Through Rate)と前記第2のクエリのCTRの差を算出するステップのうち少なくとも1つをさらに含む、請求項14または15に記載の学習データの生成方法。
【請求項17】
前記第1のクエリを音節単位または形態素単位のうち少なくとも1つに分割して複数の部分クエリを生成するステップと、
前記第2のクエリを前記複数の部分クエリのそれぞれに関連付けて拡張された学習データのペアを生成するステップとをさらに含む、請求項13〜16のいずれか1項に記載の学習データの生成方法。
【請求項18】
前記学習データのペア、前記拡張された学習データのペア、そして商品データベース内のテキストデータに基づいて統計ベースの言語モデルまたはディープラーニングベースの言語モデルを学習するステップをさらに含む、請求項17に記載の学習データの生成方法。
【請求項19】
請求項13〜18のいずれかに記載の学習データの生成方法をコンピュータで実行するためのコンピュータプログラム。
【請求項20】
学習データの生成システムであって、
メモリと、
前記メモリと連結され、前記メモリに含まれたコンピュータ読み取り可能な少なくとも1つのプログラムを実行するように構成された少なくとも1つのプロセッサを含み、
前記少なくとも1つのプログラムは、
1つの検索セッションの間に入力された第1のクエリおよび第2のクエリを含むショッピング検索ログデータを受信し、前記第1のクエリが前記第2のクエリより先に入力され、
前記第1のクエリおよび前記第2のクエリの間の検索拡張スコアを算出し、
前記検索拡張スコアが予め決定されたしきい値以上であると判定することに応答して、前記第1のクエリおよび前記第2のクエリを学習データのペアで抽出するための命令語を含む、学習データの生成システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ショッピング検索結果の拡張方法およびシステム、そして学習データの生成方法およびシステムに関するもので、具体的にはショッピング検索サービスの提供時にカバレッジが拡張されたショッピング検索結果を提供できる方法およびシステムに関するものである。
【背景技術】
【0002】
最近、インターネットやモバイル環境においてショッピング、ゲーム、映画、音楽などのような様々なサービスがオンラインで提供されている。特に、オンラインショッピングは、商品購入時間に対する制約を受けず、また直接商品の販売場所を訪問しなくても商品を選択および購入できるメリットがあるため、多くのユーザーによって利用されている。
【0003】
このようなオンラインショッピングの利便性により、オンラインショッピングを利用するユーザーが増加し、その結果、オンライン上で販売または扱われる商品の数や商品の種類もまた急激に増加している。これにより、ユーザーは、オンライン上で販売される様々な商品のうち、自分の意図と一致する商品を検索するための正確なクエリをすべて認知するのが難しいという問題がある。
【0004】
一方、ユーザーがオンラインショッピングシステムに接続して希望する商品を検索するためのクエリを入力すると、そのクエリに関連した商品情報、購入先に対するアクセス情報などを含む商品検索結果のリストの提供を受けることができる。このようなオンラインショッピングシステムは、ユーザーが入力したクエリに基づいて商品データベースから商品情報の検索結果を抽出する。したがって、ユーザーが入力したクエリが希望する商品を検索するのに適するクエリと一部相違すると、ユーザーの意図と一致する商品検索結果を導出するのが難しい場合がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】韓国公開特許公報10-2018-0108022号
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示は、前記のような問題点を解決するためのショッピング検索結果の拡張方法、コンピュータプログラムおよび装置(システム)を提供する。また、本開示は、ショッピング検索サービスに特化した学習データを生成するための方法、記録媒体に格納されたコンピュータプログラムおよび装置(システム)を提供する。
【課題を解決するための手段】
【0007】
本開示は、方法、システムまたはコンピュータプログラムを含む多様な方式で実装されることができる。
【0008】
本開示の一実施例に係る少なくとも1つのプロセッサによって遂行されるショッピング検索結果の拡張方法は、ユーザー端末からショッピング検索クエリを受信するステップと、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換するステップと、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索結果をユーザー端末に転送するステップとを含む。
【0009】
本開示の一実施例に係る上述したショッピング検索結果の拡張方法をコンピュータで実行するためのコンピュータプログラムが提供される。
【0010】
本開示の一実施例に係るショッピング検索結果の拡張システムは、メモリと、メモリと連結され、メモリに含まれたコンピュータ読み取り可能な少なくとも1つのプログラムを実行するように構成された少なくとも1つのプロセッサを含む。少なくとも1つのプログラムは、ショッピング検索クエリを受信し、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換し、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索結果を転送するための命令語を含む。
【0011】
本開示の一実施例に係る少なくとも1つのプロセッサによって遂行される学習データの生成方法は、1つの検索セッションの間に入力された第1のクエリおよび第2のクエリを含むショッピング検索ログデータを受信するステップであって、第1のクエリが第2のクエリより先に入力される、ステップと、第1のクエリおよび第2のクエリの間の検索拡張スコアを算出するステップと、検索拡張スコアが予め決定されたしきい値以上であると判定することに応答して、第1のクエリおよび第2のクエリを学習データのペアで抽出するステップとを含む。
【0012】
本開示の一実施例に係る上述した学習データの生成方法をコンピュータで実行するためのコンピュータプログラムが提供される。
【0013】
本開示の一実施例に係る学習データの生成システムは、メモリと、メモリと連結され、メモリに含まれたコンピュータ読み取り可能な少なくとも1つのプログラムを実行するように構成された少なくとも1つのプロセッサを含む。少なくとも1つのプログラムは、1つの検索セッションの間に入力された第1のクエリおよび第2のクエリを含むショッピング検索ログデータを受信し、第1のクエリが第2のクエリより先に入力され、第1のクエリおよび第2のクエリの間の検索拡張スコアを算出し、検索拡張スコアが予め決定されたしきい値以上であると判定することに応答して、第1のクエリおよび第2のクエリを学習データのペアで抽出するための命令語を含む。
【発明の効果】
【0014】
本開示の多様な実施例においては、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することによって、ショッピング検索結果のカバレッジを拡張して、顧客満足度の高いショッピング検索サービスを提供することができる。
【0015】
本開示の多様な実施例においては、ショッピング検索サービスに特化したクエリ変換(query reformulation)機能を提供することにより、ショッピング検索結果の再現率(recall)を高め、ユーザーの満足度を向上させることができる。
【0016】
本開示の多様な実施例においては、検索拡張スコアを利用してショッピング検索ログデータ内で変換対象と変換結果のペアを認識し、ショッピング検索に特化した複数の学習データのペアを自動的に抽出することができる。
【図面の簡単な説明】
【0017】
図1】本開示の一実施例に係るオンラインショッピング検索サービスを提供するために、ユーザー端末、商品検索サーバーおよび露出順位決定サーバーが通信可能に連結された構成を示す概要図である。
図2】本開示の一実施例に係るショッピング検索サービスを提供するために、情報処理システムが複数のユーザー端末と通信可能に連結された構成を示す概要図である。
図3】本開示の一実施例に係るユーザー端末および情報処理システムの内部構成を示すブロック図である。
図4】本開示の一実施例により、ユーザーが入力したショッピング検索クエリが変換される例示的な方法を示す図面である。
図5】本開示の一実施例により、ショッピング検索クエリが拡張クエリに変換される例示を示す図面である。
図6】本開示の一実施例により、ショッピング検索結果のカバレッジが拡張される例示を示す図面である。
図7】本開示の一実施例に係るショッピング検索結果の拡張方法を示すフローチャートである。
図8】本開示の一実施例により、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索結果をユーザー端末に転送する例示的な方法を示すフローチャートである。
図9】本開示の一実施例に係るショッピング検索ログデータから複数の学習データのペアを抽出する例示を示す図面である。
図10】本開示の一実施例により、学習データデータベースと商品データベースに基づいて言語モデルを学習する例示を示す図面である。
図11】本開示の一実施例に係る学習データの生成方法を示すフローチャートである。
【発明を実施するための形態】
【0018】
以下では、本開示の実施のための具体的な内容を添付された図面を参照して詳細に説明する。ただし、以下の説明において、本開示の要旨を不必要に曖昧にする恐れがある場合には、広く知られた機能や構成に関する具体的な説明は省略することにする。
【0019】
添付された図面において、同一または対応する構成要素には同一の参照符号が付与されている。また、以下の実施例の説明において、同一または対応する構成要素を重複して記述することは省略され得る。しかし、構成要素に関する記述が省略されても、そのような構成要素がある実施例に含まれないものと意図されるのではない。
【0020】
開示された実施例の利点および特徴、そしてそれらを達成する方法は、添付される図面と共に後述されている実施例を参照すると明確になるだろう。しかし、本開示は、以下で開示される実施例に限定されるものではなく、互いに異なる多様な形態で具現されることができ、単に本実施例は本開示が完全であるようにし、本開示が通常の技術者に発明の範疇を完全に知らせるために提供されるだけのものである。
【0021】
本明細書において使用される用語について簡略に説明し、開示された実施例について具体的に説明する。本明細書において使用される用語は、本開示における機能を考慮しながら可能な限り現在広く使用される一般的な用語を選択したが、これは関連分野に携わる技術者の意図または判例、新しい技術の出現などによって変わることができる。また、特定の場合は出願人が任意に選定した用語もあり、この場合、該当する発明の説明部分で詳細にその意味を記載する。したがって、本開示において使用される用語は、単純な用語の名称ではなく、その用語が有する意味と本開示の全般にわたる内容に基づいて定義されるべきである。
【0022】
本明細書での単数の表現は、文脈上明らかに単数のものであると特定しない限り、複数の表現を含む。また、複数の表現は、文脈上明らかに複数のものであると特定しない限り、単数の表現を含む。明細書全体においてある部分がある構成要素を「含む」とするとき、これは特に反対の記載がない限り、他の構成要素を除外するのではなく、他の構成要素をさらに含むことが可能であることを意味する。
【0023】
また、明細書において使用される「モジュール」または「部」という用語は、ソフトウェアまたはハードウェア構成要素を意味し、「モジュール」または「部」は、ある役割を遂行する。しかしながら、「モジュール」または「部」は、ソフトウェアまたはハードウェアに限定される意味ではない。「モジュール」または「部」は、アドレッシングできる格納媒体にあるように構成されることもでき、1つまたはそれ以上のプロセッサを再生させるように構成されることもできる。したがって、一例として、「モジュール」または「部」は、ソフトウェア構成要素、オブジェクト指向ソフトウェア構成要素、クラス構成要素およびタスク構成要素のような構成要素と、プロセス、関数、属性、プロシージャ、サブルーチン、プログラムコードのセグメント、ドライバ、ファームウェア、マイクロコード、回路、データ、データベース、データ構造、テーブル、アレイまたは変数のうち少なくとも1つを含むことができる。構成要素と「モジュール」または「部」は、もっと小さい数の構成要素および「モジュール」または「部」で結合されたり、追加の構成要素と「モジュール」または「部」にさらに分離されたりすることができる。
【0024】
本開示の一実施例によると、「モジュール」または「部」は、プロセッサおよびメモリで実装されることができる。「プロセッサ」は、汎用プロセッサ、中央処理装置(CPU)、マイクロプロセッサ、デジタル信号プロセッサ(DSP)、コントローラ、マイクロコントローラ、状態マシンなどを含むように広く解釈されるべきである。いくつかの環境において、「プロセッサ」は、注文型半導体(ASIC)、プログラム可能な論理デバイス(PLD)、フィールドプログラム可能ゲートアレイ(FPGA)などを指すこともできる。「プロセッサ」は、例えば、DSPとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサの組み合わせ、DSPコアと結合した1つ以上のマイクロプロセッサの組み合わせ、または任意の他のそのような構成の組み合わせのような処理デバイスの組み合わせを指すこともできる。また、「メモリ」は、電子情報を格納可能な任意の電子コンポーネントを含むように広く解釈されるべきである。「メモリ」は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、プログラム可能な読み出し専用メモリ(PROM)、消去可能プログラム可能な読み出し専用メモリ(EPROM)、電気的に消去可能なPROM(EEPROM)、フラッシュメモリ、磁気または光学データ格納装置、レジスタなどのようなプロセッサ読み出し可能な媒体の多様なタイプを指すこともできる。プロセッサがメモリから情報を読み出して/読み出したり、メモリに情報を記録することができれば、メモリは、プロセッサと電子通信状態にあると言われる。プロセッサに集積されたメモリは、プロセッサと電子通信状態にある。
【0025】
本開示において、「ショッピング検索」は、ショッピング検索クエリ、変換クエリまたは校正クエリに関連した商品を商品データベースから抽出することを指すことができる。ショッピング検索の結果として、抽出された商品がユーザー端末のディスプレイ上に順位に応じて表示されることができる。
【0026】
本開示において、「言語モデル」(Language Model)は、単語のシーケンスに確率を割り当てるモデルであって、統計を利用したモデルと人工ニューラルネットワークを利用したモデルを含むことができる。言語モデルは、確率を利用して、1つの単語のシーケンスと他の単語のシーケンスの間のマッチングスコアを確率的に計算することができる。また、言語モデルを利用して与えられた単語のシーケンスの確率を計算することができる。
【0027】
本開示において、「CTR」(Click-Through Rate)は、検索回数に対してクリックされる回数を指すことができる。例えば、ショッピング検索クエリに対するCTRは、クエリの入力回数に対する検索結果クリック数(検索結果クリック数/クエリの入力回数)として計算することができる。CTRが低いクエリは、ユーザーが希望する商品が検索されなかった確率が高いことを意味することができる。他の例として、商品に対するCTRは、商品が検索結果として露出される回数に対するその商品のクリック数(商品のクリック数/商品が検索結果として露出される回数)として計算することができる。CTRが低い商品は、商品の人気度が低いことを意味することができる。
【0028】
本開示において、「ショッピング検索結果の拡張システム」と「学習データの生成システム」は、情報提供システムを指すことができる。
【0029】
図1は、本開示の一実施例に係るオンラインショッピング検索サービスを提供するために、ユーザー端末(110)、商品検索サーバー(130)および露出順位決定サーバー(140)が通信可能に連結された構成を示す概要図である。図示されたように、ユーザー端末(110)は、ネットワーク(120)を介して商品検索サーバー(130)および露出順位決定サーバー(140)と通信することができる。ネットワーク(120)は、設置環境に応じて、例えば、イーサネット(Ethernet)、有線ホームネットワーク(Power Line Communication)、電話線通信装置およびRS-serial通信などの有線ネットワーク、移動通信網、WLAN(Wireless LAN)、 Wi-Fi、BluetoothおよびZigBeeなどのような無線ネットワークまたはその組み合わせで構成されることができる。通信方式は制限されず、ネットワーク(120)が含むことのできる通信網(例えば、移動通信網、有線インターネット、無線インターネット、放送網、衛星網など)を活用する通信方式だけでなく、端末/サーバー間の近距離無線/有線通信もまた含まれることができる。
【0030】
一実施例において、ユーザー端末(110)は、オンライン上で販売する商品を検索するためのショッピング検索クエリをユーザーから入力を受けることができる。例えば、ユーザーは、ユーザー端末(110)で実行される検索アプリケーション、ショッピングアプリケーション、ウェブブラウザアプリケーションなどで表示されるショッピング検索ウィンドウにショッピング検索クエリをテキストで入力することができる。ここでショッピング検索ウィンドウに入力されるテキストは、ユーザーが検索しようとする商品に対する情報を含むことができる。例えば、ユーザーは、購入を希望する商品の商品名、カテゴリ、購入先、ブランド、用途などを示すテキストをショッピング検索ウィンドウに入力することができる。ユーザー端末(110)は、ユーザーから受信したショッピング検索クエリをネットワーク(120)を介して商品検索サーバー(130)に転送することができる。
【0031】
ショッピング検索クエリを受信することに応答して、商品検索サーバー(130)は、商品データベース内に格納された商品のうちショッピング検索クエリに関連した商品を検索することができる。一実施例において、商品検索サーバー(130)は、ショッピング検索結果のカバレッジを拡張するために、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することができる。例えば、拡張クエリは、ショッピング検索クエリ内の誤脱字を校正したクエリ、ショッピング検索クエリ内のブランド、メーカー、商品名などのようなキーワード(または語彙)などを抽出した部分クエリ、ショッピング検索クエリ内の(タイプミスがない)一部単語を検索される商品の数がより多い同じ意味の他の単語に変換したクエリであることができる。これにより、ショッピング検索クエリによって検索される商品の数よりも拡張クエリによって検索される商品の数が多いことができる。追加的または代案的に、ショッピング検索クエリのCTRよりも拡張クエリのCTRが高いことができる。追加的または代案的に、ショッピング検索クエリのクエリ発生確率よりも拡張クエリのクエリ発生確率が高いことができる。ショッピング検索クエリ拡張モデルは、図9〜11で詳細に説明される言語モデル(統計ベースの言語モデル、ディープラーニングベースの言語モデルなど)に基づいて生成されたモデルであることができる。
【0032】
一実施例において、商品検索サーバー(130)は、ショッピング検索クエリのCTRが予め決定されたしきい値以下である場合、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することができる。追加的または代案的に、商品検索サーバー(130)は、ショッピング検索クエリによって検索される商品がないと判定することに応答して、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することができる。他の実施例において、商品検索サーバー(130)は、受信されるすべてのショッピング検索クエリをショッピング検索クエリ拡張モデルを利用して拡張クエリに変換することができる。
【0033】
その後、商品検索サーバー(130)は、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索を遂行することができる。一実施例において、商品検索サーバー(130)は、ショッピング検索クエリに基づいたショッピング検索と、拡張クエリに基づいたショッピング検索をそれぞれ遂行することができる。ショッピング検索クエリによって検索される商品が存在しない場合、拡張クエリに基づいたショッピング検索結果がユーザー端末(110)に転送されることができる。ショッピング検索クエリによって検索される商品が存在する場合、ショッピング検索クエリによって検索された商品と拡張クエリによって検索された商品のリストがショッピング検索結果としてユーザー端末(110)に転送されることができる。
【0034】
一実施例において、商品検索サーバー(130)は、検索された商品の表示順位を決定するために、検索結果を露出順位決定サーバー(140)に転送することができる。ここで、表示順位は、検索された商品がユーザー端末(110)のディスプレイ上に表示される順序を意味することができる。例えば、露出順位決定サーバー(140)は、クエリ(ショッピング検索クエリおよび/または拡張クエリ)と検索された商品の間のテキスト類似度、検索された商品の人気度などに基づいて、各商品別に表示順位スコアを算出することができる。
【0035】
ショッピング検索クエリによって検索される商品が存在しない場合、露出順位決定サーバー(140)は、拡張クエリによって検索される商品の順位を決定し、順位化された商品のリストをショッピング検索結果としてユーザー端末(110)に転送することができる。ショッピング検索クエリによって検索される商品が存在する場合、ユーザーの検索意図を優先的に反映するために、露出順位決定サーバー(140)は、拡張クエリによって検索される商品の順位に負の重み(negative weight)を適用したり/適用して、ショッピング検索クエリによって検索される商品の順位に正の重み(positive weight)を適用することができる。その後、露出順位決定サーバー(140)は、順位化された商品のリストをショッピング検索結果としてユーザー端末(110)に転送することができる。
【0036】
ユーザー端末(110)は、順位化されたショッピング検索結果を受信し、ディスプレイを介して検索結果をユーザーに提供することができる。ここで、ショッピング検索結果は、拡張クエリによって検索された商品も含むことができるので、ユーザーは、カバレッジが拡張されたショッピング検索結果の提供を受けることができる。ユーザーは、ユーザー端末(110)のディスプレイに表示されるショッピング検索結果を確認し、希望する商品を選択してオンラインショッピングをすることができる。
【0037】
上述したように、ショッピング検索サービスに特化したクエリ変換(query reformulation)機能を提供することによって、ショッピング検索結果の再現率(recall)を高め、ユーザーの満足度を向上させることができる。一実施例によると、ショッピング検索結果が0件で表示される場合を30%ほど減少させ、キーワードの長さが長いlong-tailクエリのCTRを15%ほど増加させることができる。
【0038】
商品検索サーバー(130)がショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換するものとして上述されたが、これに限定されない。例えば、別途の1つ以上のサーバーがショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することができる。また、図1には、商品検索サーバー(130)と露出順位決定サーバー(140)が別途のサーバーとして図示されているが、これに限定されない。例えば、商品検索サーバー(130)と露出順位決定サーバー(140)の機能が1つのサーバー(例えば、図2の情報処理システム230)によって提供されることができる。
【0039】
図2は、本開示の一実施例に係るショッピング検索サービスを提供するために、情報処理システム(230)が複数のユーザー端末(210_1、210_2、210_3)と通信可能に連結された構成を示す概要図である。情報処理システム(230)は、ネットワーク(120)を介してショッピング検索サービス(ショッピング検索クエリ拡張サービスを含む)を提供できるシステムを含むことができる。一実施例において、情報処理システム(230)は、拡張されたショッピング検索結果を提供するように設計されたコンピュータ実行可能なプログラム(例えば、ダウンロード可能なアプリケーション)およびデータを格納、提供および実行できる1つ以上のサーバー装置および/またはデータベース、またはクラウドコンピューティングサービス基盤の1つ以上の分散コンピューティングデバイスおよび/または分散データベースを含むことができる。情報処理システム(230)によって提供されるショッピング検索サービスは、複数のユーザー端末(210_1、210_2、210_3)のそれぞれにインストールされた検索アプリケーション、ショッピングアプリケーション、ウェブブラウザアプリケーションなどを介してユーザーに提供されることができる。
【0040】
複数のユーザー端末(210_1、210_2、210_3)は、ネットワーク(120)を介して情報処理システム(230)と通信することができる。図2において携帯電話端末(210_1)、タブレット端末(210_2)およびPC端末(210_3)がユーザー端末の例として図示されたが、これに限定されず、ユーザー端末(210_1、210_2、210_3)は、有線および/または無線通信が可能で、検索アプリケーション、ショッピングアプリケーション、ウェブブラウザアプリケーションなどがインストールされて実行され得る任意のコンピューティングデバイスであることができる。例えば、ユーザー端末は、スマートフォン、携帯電話、ナビゲーション、コンピュータ、ラップトップ、デジタル放送用端末、PDA(Personal Digital Assistants)、PMP(Portable Multimedia Player)、タブレットPC、ゲームコンソール(game console)、ウェアラブルデバイス(wearable device)、IoT(internet of things)デバイス、VR(virtual reality)デバイス、AR(augmented reality)デバイスなどを含むことができる。また、図2には、3つのユーザー端末(210_1、210_2、210_3)がネットワーク(120)を介して情報処理システム(230)と通信するものとして図示されているが、これに限定されず、異なる数のユーザー端末がネットワーク(120)を介して情報処理システム(230)と通信するように構成されることもできる。
【0041】
情報処理システム(230)は、ネットワーク(120)を介してユーザー端末(210_1、210_2、210_3)から入力されたショッピング検索クエリを受信することができる。この場合、情報処理システム(230)は、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換し、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索結果をユーザー端末(210_1、210_2、 210_3)に転送することができる。一実施例において、ショッピング検索クエリによって検索される商品が存在する場合、情報処理システム(230)は、以下の式に基づいて拡張クエリによって検索された商品の順位にペナルティを適用した後、順位化された検索結果をユーザー端末(210_1、210_2、210_3)に転送することができる。
【0042】
【数1】

ここで、q1はショッピング検索クエリ、q2は拡張クエリ、SRESULTはクエリによって検索される商品を返還するモデル、RankModelは検索結果を順位化するモデル、DISCOUNT_FACTORはペナルティ定数を示す。一方、ショッピング検索クエリによって検索される商品がない場合、情報処理システム(230)は、以下の式に基づいて拡張クエリによって検索される商品のみを順位化し、検索結果をユーザー端末(210_1、210_2、210_3)に転送することができる。
【0043】
【数2】

図3は、本開示の一実施例に係るユーザー端末(210)および情報処理システム(230)の内部構成を示すブロック図である。ユーザー端末(210)は、ショッピングアプリケーションまたはウェブブラウザが実行可能で、有線/無線通信が可能な任意のコンピューティングデバイスを指すことができ、例えば、図2の携帯電話端末(210_1)、タブレット端末(210_2)、PC端末(210_3)などを含むことができる。図示されたように、ユーザー端末(210)は、メモリ(312)、プロセッサ(314)、通信モジュール(316)および入出力インターフェース(318)を含むことができる。これと類似して、情報処理システム(230)は、メモリ(342)、プロセッサ(344)、通信モジュール(346)および入出力インターフェース(348)を含むことができる。一実施例において、プロセッサ(344)は、複数のプロセッサで構成されることができる。図3に図示されたように、ユーザー端末(210)および情報処理システム(230)は、それぞれの通信モジュール(316、346)を利用して、ネットワーク(120)を介して情報および/またはデータを通信するように構成されることができる。また、入出力デバイス(320)は、入出力インターフェース(318)を介してユーザー端末(210)に情報および/またはデータを入力したり、ユーザー端末(210)から生成された情報および/またはデータを出力したりするように構成されることができる。
【0044】
メモリ(312、342)は、非一時的な任意のコンピュータ読み取り可能な記録媒体を含むことができる。一実施例によると、メモリ(312、342)は、RAM(random access memory)、ROM(read only memory)、ディスクドライブ、SSD(solid state drive)、フラッシュメモリ(flash memory)などのような不揮発性の大容量格納装置(permanent mass storage device)を含むことができる。他の例として、ROM、SSD、フラッシュメモリ、ディスクドライブなどのような不揮発性の大容量格納装置は、メモリとは区別される別途の永久格納装置として、ユーザー端末(210)または情報処理システム(230)に含まれることができる。また、メモリ(312、342)には、オペレーティングシステムと少なくとも1つのプログラムコード(例えば、ユーザー端末(210)にインストールされて駆動されるショッピングアプリケーション、検索アプリケーション、ウェブブラウザアプリケーションなどのためのコード)が格納されることができる。
【0045】
このようなソフトウェアコンポーネントは、メモリ(312、342)とは別途のコンピュータ読み取り可能な記録媒体からロードされることができる。このような別途のコンピュータ読み取り可能な記録媒体は、これらのユーザー端末(210)および情報処理システム(230)に直接連結可能な記録媒体を含むことができ、例えば、フロッピードライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含むことができる。他の例として、ソフトウェアコンポーネントは、コンピュータ読み取り可能な記録媒体ではなく、通信モジュールを介してメモリ(312、342)にロードされることもできる。例えば、少なくとも1つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システムがネットワーク(120)を介して提供するファイルによってインストールされるコンピュータプログラム(例えば、ショッピング検索サービスを提供するアプリケーション)に基盤してメモリ(312、342)にロードされることができる。
【0046】
プロセッサ(314、344)は、基本的な算術、ロジックおよび入出力演算を遂行することにより、コンピュータプログラムの命令を処理するように構成されることができる。命令は、メモリ(312、342)または通信モジュール(316、346)によってプロセッサ(314、344)に提供されることができる。例えば、プロセッサ(314、344)は、メモリ(312、342)のような記録装置に格納されたプログラムコードに基づいて受信された命令を実行するように構成されることができる。
【0047】
通信モジュール(316、346)は、ネットワーク(120)を介してユーザー端末(210)と情報処理システム(230)が互いに通信するための構成または機能を提供することができ、ユーザー端末(210)および/または情報処理システム(230)が他のユーザー端末または他のシステム(例えば、別途のクラウドシステムなど)と通信するための構成または機能を提供することができる。一例として、ユーザー端末(210)のプロセッサ(314)がメモリ(312)などのような記録装置に格納されたプログラムコードに基づいて生成した要請またはデータ(例えば、ショッピング検索クエリに対するショッピング検索要請など)は、通信モジュール(316)の制御によってネットワーク(120)を介して情報処理システム(230)に伝達されることができる。逆に、情報処理システム(230)のプロセッサ(344)の制御に基づいて提供される制御信号や命令が通信モジュール(346)とネットワーク(120)を経てユーザー端末(210)の通信モジュール(316)を介してユーザー端末(210)に受信されることができる。例えば、ユーザー端末(210)は、情報処理システム(230)から通信モジュール(316)を介してショッピング検索結果などを受信することができる。
【0048】
入出力インターフェース(318)は、入出力デバイス(320)とのインターフェースのための手段であることができる。一例として、入力デバイスは、オーディオセンサおよび/またはイメージセンサを含むカメラ、キーボード、マイクロフォン、マウスなどのデバイスを、そして出力デバイスは、ディスプレイ、スピーカー、触覚フィードバックデバイス(haptic feedback device)などのようなデバイスを含むことができる。他の例として、入出力インターフェース(318)は、タッチスクリーンなどのように入力と出力を遂行するための構成または機能が1つに統合されたデバイスとのインターフェースのための手段であることができる。例えば、ユーザー端末(210)のプロセッサ(314)がメモリ(312)にロードされたコンピュータプログラムの命令を処理するにおいて、情報処理システム(230)が提供する情報および/またはデータを利用して構成されているサービス画面(例えば、ショッピング検索結果による商品情報が提供される画面)が入出力インターフェース(318)を介してディスプレイに表示されることができる。図3には、入出力デバイス(320)がユーザー端末(210)に含まれないように図示されているが、これに限定されず、ユーザー端末(210)と1つのデバイスで構成されることができる。また、情報処理システム(230)の入出力インターフェース(348)は、情報処理システム(230)と連結されたり、情報処理システム(230)を含むことができる入力または出力のためのデバイス(図示せず)とのインターフェースのための手段であったりすることができる。図3には、入出力インターフェース(318、348)がプロセッサ(314、344)と別途に構成された要素として図示されたが、これに限定されず、入出力インターフェース(318、348)がプロセッサ(314、344)に含まれるように構成されることができる。
【0049】
ユーザー端末(210)および情報処理システム(230)は、図3の構成要素よりも多くの構成要素を含むことができる。しかし、大部分の従来技術的構成要素を明確に図示する必要性はない。一実施例によると、ユーザー端末(210)は、上述された入出力デバイス(320)のうち少なくとも一部を含むように実装されることができる。また、ユーザー端末(210)は、トランシーバ、GPS(Global Positioning system)モジュール、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含むことができる。例えば、ユーザー端末(210)がスマートフォンである場合、一般的にスマートフォンが含んでいる構成要素を含むことができ、例えば、加速度センサ、ジャイロセンサ、カメラモジュール、各種の物理的なボタン、タッチパネルを利用したボタン、入出力ポート、振動のためのバイブレーターなどの多様な構成要素がユーザー端末(210)にさらに含まれるように実装されることができる。
【0050】
一実施例によると、ユーザー端末(210)のプロセッサ(314)は、ショッピング検索サービスを提供する検索アプリケーション、ショッピングアプリケーション、ウェブブラウザアプリケーションなどが動作するように構成されることができる。このとき、該当のアプリケーションに関連したプログラムコードがユーザー端末(210)のメモリ(312)にロードされることができる。アプリケーションが動作される間に、ユーザー端末(210)のプロセッサ(314)は、入出力デバイス(320)から提供された情報および/またはデータを入出力インターフェース(318)を介して受信したり、通信モジュール(316)を介して情報処理システム(230)から情報および/またはデータを受信したりすることができ、受信された情報および/またはデータを処理してメモリ(312)に格納することができる。また、このような情報および/またはデータは、通信モジュール(316)を介して情報処理システム(230)に提供することができる。
【0051】
アプリケーションが動作される間に、プロセッサ(314)は、入出力インターフェース(318)と連結されたタッチスクリーン、キーボード、オーディオセンサおよび/またはイメージセンサを含むカメラ、マイクロフォンなどの入力デバイスを介して入力されたり、選択されたテキスト、画像、映像などを受信したりすることができ、受信されたテキスト、画像および/または映像などをメモリ(312)に格納したり、通信モジュール(316)およびネットワーク(120)を介して情報処理システム(230)に提供したりすることができる。一実施例において、プロセッサ(314)は、入力デバイスを介して受信したショッピング検索クエリをネットワーク(120)および通信モジュール(316)を介して情報処理システム(230)に提供することができる。代案的に、プロセッサ(314)は、入力デバイスを介して受信した画像などをテキストに変換し、変換されたテキストを通信モジュール(316)およびネットワーク(120)を介して情報処理システム(230)に提供することができる。
【0052】
情報処理システム(230)のプロセッサ(344)は、複数のユーザー端末および/または複数の外部システムから受信された情報および/またはデータを管理、処理および/または格納するように構成されることができる。一実施例において、プロセッサ(344)は、ユーザー端末(210)から受信したショッピング検索クエリを拡張クエリに変換することができる。また、プロセッサ(344)は、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいてショッピング検索を遂行することができる。
【0053】
図4は、本開示の一実施例により、ユーザーが入力したショッピング検索クエリ(q1)が変換される例示的な方法を示す図面である。図示されたように、情報処理システム(例えば、図2の230、または情報処理システムの少なくとも1つのプロセッサ)は、予め格納された事前ルール(410)を利用してショッピング検索クエリ(q1)を校正クエリ(cq)に変換したり、ショッピング検索クエリ拡張モデル(420)を利用してショッピング検索クエリ(q1)を拡張クエリ(q2)に変換したりすることができる。事前ルール(410)は、ショッピング検索クエリ拡張モデル(420)で処理できないケース、確実な正解があるケースなどを迅速に処理するために校正対象クエリとそれに対応する校正クエリのペアを関連付けて予め格納したデータベースであることができる。例えば、ショッピング検索クエリ拡張モデル(420)でクエリを誤変換する問題が発見される場合、発見された問題を迅速に解決するために校正対象クエリとそれに対応する校正クエリのペアを事前ルール(410)に追加することができる。
【0054】
一実施例において、ショッピング検索クエリ(q1)を受信することに応答して、情報処理システムは、受信されたショッピング検索クエリ(q1)が事前ルール(410)に含まれているか否かを判定することができる。ショッピング検索クエリ(q1)が事前ルール(410)に含まれた場合、情報処理システムは、事前ルール(410)を利用してショッピング検索クエリ(q1)を校正クエリ(cq)に変換することができる。つまり、ショッピング検索クエリ(q1)が事前ルール(410)に格納された校正対象クエリのうち1つに該当する場合、情報処理システムは、ショッピング検索クエリ(q1)を校正対象クエリに対応する校正クエリ(cq)に変換することができる。例えば、事前ルール(410)内に校正対象クエリ「odio」と対応する校正クエリ「audio」が1つのペアで予め格納された場合、情報処理システムは、ショッピング検索クエリとして受信された「odio」を事前ルール(410)に基づいて「audio」に校正することができる。この場合、情報処理システムは、校正クエリ(cq)によって検索される商品のみを順位化してユーザーに提供することができる。
【0055】
一方、ショッピング検索クエリ(q1)が事前ルール(410)に含まれていない場合、情報処理システムは、ショッピング検索クエリ拡張モデル(420)を利用してショッピング検索クエリ(q1)を拡張クエリ(q2)に変換することができる。例えば、情報処理システムは、「シャオミミマウス」をショッピング検索クエリ(q1)として受信する場合、事前ルール(410)内に格納された校正対象クエリに該当しないと判定し、「シャオミミマウス」をショッピング検索クエリ拡張モデル(420)に入力することができる。この場合、「シャオミミマウス」に誤脱字またはスペルミスがなくても、ショッピング検索クエリ拡張モデル(420)は、ユーザー満足度の高い拡張された検索結果を提供するために「シャオミミマウス」を「シャオミマウス」に変換することができる。
【0056】
一実施例において、情報処理システムは、受信されたショッピング検索クエリ(q1)のCTRが予め決定されたしきい値以下である場合、ショッピング検索クエリ拡張モデル(420)を利用してショッピング検索クエリ(q1)を拡張クエリ(q2)に変換することができる。追加的または代案的に、情報処理システムは、ショッピング検索クエリ(q1)によって検索される商品がない場合または予め決められた数より少ない場合に、ショッピング検索クエリ拡張モデル(420)を利用してショッピング検索クエリ(q1)を拡張クエリ(q2)に変換することができる。他の実施例において、情報処理システムは、受信されるすべてのショッピング検索クエリ(q1)をショッピング検索クエリ拡張モデル(420)を利用して拡張クエリ(q2)に変換することができる。ショッピング検索クエリ(q1)を拡張クエリ(q2)に変換した後、情報処理システムは、ショッピング検索クエリ(q1)または拡張クエリ(q2)のうち少なくとも1つに基づいてショッピング検索を遂行することができる。
【0057】
図5は、本開示の一実施例により、ショッピング検索クエリ(q1)が拡張クエリ(q2)に変換される例示を示す図面である。図示されたように、ショッピング検索クエリ拡張モデル(420)は、部分クエリ生成部(510)、拡張クエリ候補生成部(520)および信頼度スコア算出部(530)を含むことができる。拡張クエリ候補生成部(520)と信頼度スコア算出部(530)は、図9〜11で詳細に説明される言語モデルを利用して構築されることができる。
【0058】
ショッピング検索クエリ(q1)を受信することに応答して、ショッピング検索クエリ拡張モデル(420)は、受信されたショッピング検索クエリ(q1)を部分クエリ生成部(510)、拡張クエリ候補生成部(520)および信頼度スコア算出部(530)に伝達することができる。部分クエリ生成部(510)は、ショッピング検索クエリ(q1)を音節単位(例えば、1音節単位、2音節単位、3音節単位など)または形態素単位のうち少なくとも1つに分割することによって、ショッピング検索クエリ(q1)に対する部分クエリ(q11、q12、... q1n)を生成することができる。例えば、部分クエリ生成部(510)は、「オクドンジャとんかつ」が入力されると、「オクドンジャとんかつ」を3音節単位に分割して「オクドンジャ」、「ドンジャとん」、「ジャとんか」、「とんかつ」を部分クエリとして出力することができる。
【0059】
拡張クエリ候補生成部(520)は、ショッピング検索クエリ(q1)、そして部分クエリ生成部(510)から伝達された部分クエリ(q11、q12、... q1n)に基づいて拡張クエリ候補(q21、q22、 q23、... q2n+1)を生成することができる。このような構成により、ショッピング検索クエリ(q1)に一部誤脱字が含まれた場合でも、適切な拡張クエリ(q2)を生成することが可能である。図示されたように、拡張クエリ候補生成部(520)は、入力されるクエリごとに対応する1つの拡張クエリ候補を生成することができる。他の実施例において、拡張クエリ候補生成部(520)は、入力されるクエリごとに対応する2以上の拡張クエリ候補を生成することができる。例えば、拡張クエリ候補生成部(520)は、言語モデルを利用して入力されるクエリとマッチングスコア(またはマッチング確率)が最も高いi個(iは自然数)の単語シーケンスのうち予め決められたしきい値以上のマッチングスコアを有する単語シーケンスを拡張クエリ候補として出力することができる。例えば、拡張クエリ候補生成部(520)は、「オクドンジャとんかつ」の拡張クエリ候補として「オクジュブとんかつ」、「オクドンジャ」の拡張クエリ候補として「オクドンジャアイスクリーム」、とんかつの拡張クエリ候補として「ホームショッピングとんかつ」を出力することができる。
【0060】
信頼度スコア算出部(530)は、拡張クエリ候補生成部(520)で生成された拡張クエリ候補(q21、q22、q23 ... q2n+1)のそれぞれに対する信頼度スコアを算出し、最も高い信頼度スコアを有する拡張クエリ候補を拡張クエリ(q2)として出力することができる。代案的に、信頼度スコア算出部(530)は、信頼度スコアが最も高いk個(kは自然数)の拡張クエリ候補のうち予め決められたしきい値以上の信頼度スコアを有する拡張クエリ候補を拡張クエリとして出力することができる。
【0061】
一実施例において、信頼度スコア算出部(530)は、以下の式に基づいて拡張クエリ候補のそれぞれに対する信頼度スコアを算出することができる。
【0062】
【数3】
ここで、mは任意の自然数、q2m発生確率は情報処理システムに格納されたショッピング検索ログ内で拡張クエリ候補(q2m)が入力された頻度によって計算される発生確率、LM(q2m)は言語モデルを利用して算出される拡張クエリ候補(q2m)のスコア(または確率)、LM(q2m|q1)は言語モデルを利用して算出されるショッピング検索クエリ(q1)と拡張クエリ候補(q2m)の間のマッチングスコア(またはマッチング確率)を示す。
【0063】
他の実施例において、信頼度スコア算出部(530)は、以下の式に基づいて拡張クエリ候補のそれぞれに対する信頼度スコアを算出することができる。
【0064】
【数4】
ここで、User_Sat(q2m|q1)はショッピング検索クエリ(q1)が拡張クエリ候補(q2m)に変換されたときのユーザー満足度を示す。一実施例において、ユーザー満足度は、ショッピング検索クエリ(q1)と拡張クエリ候補(q2m)の間のテキスト類似度(例えば、書記素編集距離、音節編集距離など)、ショッピング検索クエリ(q1)の発生確率と拡張クエリ候補(q2m)の発生確率、ショッピング検索クエリ(q1)によって検索される商品の数と拡張クエリ候補(q2m)によって検索される商品の数、ショッピング検索クエリ(q1)のCTRと拡張クエリ候補(q2m)のCTRなどに基づいて算出されることができる。例えば、ショッピング検索クエリ(q1)と拡張クエリ候補(q2m)のテキストが類似するほど、拡張クエリ候補(q2m)の発生確率がショッピング検索クエリ(q1)の発生確率よりも大きいほど、拡張クエリ候補(q2m)によって検索される商品の数がショッピング検索クエリ(q1)によって検索される商品の数よりも多いほど、拡張クエリ候補(q2m)のCTRがショッピング検索クエリ(q1)のCTRよりも大きいほど、ユーザー満足度が高く算出されることができる。
【0065】
上述したように、拡張クエリ候補(q2m)の信頼度スコアは、ショッピング検索クエリ(q1)と拡張クエリ候補(q2m)の間のスコアだけでなく、拡張クエリ候補(q2m)自体に対するスコアも反映されるため、ショッピング検索クエリ(q1)と拡張クエリ候補(q2m)の間のマッチングスコアが高くても、拡張クエリ候補(q2m)が商品データベースに含まれないクエリであったり、ユーザーがよく検索しないクエリであったり、ユーザーの満足度が低いクエリであったりする場合には、拡張クエリ候補(q2m)の信頼度スコアが低く算出されることができる。例えば、「オクジュブとんかつ」の信頼度スコアが0.952、「ホームショッピングとんかつ」の信頼度スコアが0.321、「オクドンジャアイスクリーム」の信頼度スコアが0.109で計算され、「オクドンジャとんかつ」の拡張クエリとして「オクジュブとんかつ」が出力されることができる。
【0066】
図6は、本開示の一実施例により、ショッピング検索結果のカバレッジが拡張される例示を示す図面である。画面(610)は、ショッピング検索サービスにショッピング検索クエリ拡張が適用されていない例示であり、画面(620)は、ショッピング検索サービスにショッピング検索クエリ拡張が適用された例示である。図示されたように、ユーザーは、ユーザー端末で実行される検索アプリケーション、ショッピングアプリケーション、ウェブブラウザアプリケーションなどで表示されるショッピング検索ウィンドウ(612、614)に「studio tolv」をショッピング検索クエリとして入力することができる。ここで、「studio tolv」は、ユーザーがブランド名である「sudio」を間違って「studio」で入力したものである。
【0067】
一般的な情報検索の状況では、「studio tolv」において「studio」は誤脱字がないため校正対象ではない。したがって、ショッピング検索クエリ拡張を適用せずに「studio tolv」でショッピング検索を遂行すると、画面(610)のように検索結果がない場合があり得る。つまり、「studio tolv」をショッピング検索クエリで入力する場合に、商品データベース内にマッチングされる語彙が不足し、ユーザーが希望する商品をショッピング検索結果として出力することができない。
【0068】
一方、画面(620)は、ショッピング検索クエリ拡張を適用した場合であるため、ショッピング検索クエリ(「studio tolv」)、ショッピング検索クエリ拡張モデルを利用して生成された拡張クエリ(「sudio tolv」)に基づいたショッピング検索結果を含むことができる。画面(610)に表示されたように、「studio tolv」で検索される商品がないため、画面(620)には、拡張クエリである「sudio tolv」で検索される商品(624)のみ順位化されて表示されることができる。
【0069】
ショッピング検索クエリ拡張モデルは「studio tolv」のように間違った商品名(タイプミスではない)を含むクエリを校正すること以外にも、タイプミスのクエリを校正したり、ショッピング検索クエリ内のキーワード(または語彙)などを抽出したり、ショッピング検索クエリ内の(タイプミスがない)一部単語を検索される商品の数がより多い同じ意味の他の単語に変換することができる。例えば、ショッピング検索クエリ拡張モデルは、「きれいなピンクワンピース」を「ピンクワンピース」に変換してショッピング検索結果のカバレッジを拡張することができる。他の例示として、ショッピング検索クエリ拡張モデルは、「携帯電話充電器」のうち「携帯電話」を類義語である「スマートフォン」に変換し、「携帯電話充電器」によって検索される商品と「スマートフォン充電器」によって検索される商品がユーザーに一緒に提供されるようにすることができる。この場合、ユーザーの検索意図を反映するために、検索された商品の表示順位を決定する時、ユーザーが入力した「携帯電話充電器」で検索された商品の順位に正の重みを適用したり/適用し、「スマートフォン充電器」によって検索される商品の順位に負の重みを適用することができる。
【0070】
図7は、本開示の一実施例に係るショッピング検索結果の拡張方法(700)を示すフローチャートである。一実施例において、ショッピング検索結果の拡張方法(700)は、プロセッサ(例えば、情報処理システムの少なくとも1つのプロセッサ)によって遂行されることができる。図示されたように、ショッピング検索結果の拡張方法(700)は、プロセッサがユーザー端末からショッピング検索クエリを受信することによって開始されることができる(S710)。ここで、ショッピング検索クエリは、ユーザーがオンライン上で販売する商品を検索するためにユーザー端末で動作するショッピングアプリケーション、ウェブブラウザアプリケーションなどの検索ウィンドウに入力したテキストであることができる。
【0071】
一実施例において、プロセッサは、予め格納された事前ルール内にショッピング検索クエリが含まれるか否かを判定することができる。予め格納された事前ルール内にショッピング検索クエリが含まれていると判定することに応答して、プロセッサは、ショッピング検索クエリを事前ルールに基づいて校正クエリに変換することができる。その後、プロセッサは、校正クエリに基づいたショッピング検索結果をユーザー端末に転送することができる。
【0072】
一方、事前ルール内にショッピング検索クエリが含まれていないと判定することに応答して、プロセッサは、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することができる(S720)。一実施例において、プロセッサは、ショッピング検索クエリによって検索される商品がないと判定することに応答して、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することができる。追加的または代案的に、プロセッサは、ショッピング検索クエリのCTRが予め決定されたしきい値以下であると判定することに応答して、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することができる。
【0073】
一実施例において、プロセッサは、ショッピング検索クエリを音節単位または形態素単位のうち少なくとも1つに分割して複数の部分クエリを生成し、予め格納された言語モデルを利用して、ショッピング検索クエリおよび複数の部分クエリに基づいて複数の拡張クエリ候補を生成することができる。その後、プロセッサは、複数の拡張クエリ候補のそれぞれに対する信頼度スコアを算出し、複数の拡張クエリ候補のうち最も高い信頼度スコアを有する拡張クエリ候補を拡張クエリとして使用することができる。ここで、信頼度スコアは、言語モデルを利用して算出されたショッピング検索クエリと各拡張クエリ候補の間のマッチングスコア、そして各拡張クエリ候補のクエリ発生確率に基づいて算出されることができる。
【0074】
その後、プロセッサは、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索結果をユーザー端末に転送することができる(S730)。上述したように、ショッピング検索クエリ拡張モデルを利用してショッピング検索クエリを拡張クエリに変換することによって、ショッピング検索結果のカバレッジを拡張し、顧客満足度の高いショッピング検索サービスを提供することができる。また、事前ルールを使用してショッピング検索クエリを校正クエリに変換することによって、ショッピング検索クエリ拡張モデルで処理できないケース、確実な正解があるケースなどを迅速に処理することができる。
【0075】
図8は、本開示の一実施例により、ショッピング検索クエリまたは拡張クエリのうち少なくとも1つに基づいたショッピング検索結果をユーザー端末に転送する例示的な方法(S730)を示すフローチャートである。一実施例において、方法(S730)は、プロセッサ(例えば、情報処理システムの少なくとも1つのプロセッサ)によって遂行されることができる。方法(S730)は、プロセッサがショッピング検索クエリによって検索される商品が存在するか否かを判定することで開始されることができる(S810)。
【0076】
ショッピング検索クエリによって検索される商品が存在しないと判定することに応答して、プロセッサは、拡張クエリに基づいたショッピング検索結果をユーザー端末に転送することができる。つまり、プロセッサは、拡張クエリによって検索される商品の表示順位を決定し(S820)、順位化されたショッピング検索結果をユーザー端末に送信することができる(S850)。ここで、表示順位は、検索される商品がユーザー端末のディスプレイ上に露出される順序を示すことができる。例えば、プロセッサは、検索された商品の人気度、CTR、クエリ(ショッピング検索クエリまたは拡張クエリ)と検索された商品の間のテキスト類似度などに基づいて表示順序を決定することができる。
【0077】
一方、ショッピング検索クエリによって検索される商品が存在すると判定されることに応答して、プロセッサは、ショッピング検索クエリによって検索される商品と拡張クエリによって検索される商品の表示順位を決定することができる(S830)。一実施例において、ユーザーがショッピング検索クエリを入力した意図を反映するために、プロセッサは、拡張クエリによって検索される商品の順位にペナルティを付与(S840)することができる。例えば、プロセッサは、拡張クエリによって検索される商品の表示順位に負の重みを適用したり/適用し、ショッピング検索クエリによって検索される商品の表示順位に正の重みを適用することができる。その後、プロセッサは、順位化された検索結果をユーザー端末に転送することができる(S850)。
【0078】
図9は、本開示の一実施形態に係るショッピング検索ログデータ(910)から複数の学習データのペア(920)を抽出する例示を示す図面である。ショッピング検索ログデータ(910)から抽出された複数の学習データのペア(920)は、図10で詳細に説明するように、言語モデルを学習するのに使用されることができる。ショッピング検索ログデータ(910)は、情報処理システムがユーザーから受信するショッピング検索クエリに関連した情報を記録したデータであることができる。一実施例において、ショッピング検索ログデータ(910)は、ショッピング検索サービスを提供する情報処理システムに格納されることができる。他の実施例において、ショッピング検索ログデータ(910)は、情報処理システムではない他の外部デバイスに格納されることができる。
【0079】
一実施例において、情報処理システム(または外部デバイス)の少なくとも1つのプロセッサは、1つの検索セッションの間に入力された最初のクエリ(Q1)と後続のクエリ(Q2)の間の検索拡張スコアを下記の式に基づいて算出することができる。検索拡張スコアは、最初のクエリ(Q1)が後続のクエリ(Q2)に変わることによるユーザーが感じる検索結果に対する満足度を数値化したスコアであることができる。
【0080】
【数5】
ここで、x1は2つのクエリの間の入力時間差に基づいたスコア、x2は2つのクエリの間のテキスト類似度に基づいたスコア、x3は2つのクエリの間のクエリ発生確率の差に基づいたスコア、x4は2つのクエリの間の検索結果商品数の差に基づいたスコア、x5は2つのクエリの間のCTR差に基づいたスコアを示す。また、Wa、Wb、Wc、Wd、Weは、各項目に対する加重値を調整するための定数を示す。上述した項目以外にも、プロセッサは、後続のクエリ(Q2)が最初のクエリ(Q1)の部分検索語であるか否かなどの多様な基準をさらに考慮して検索拡張スコアを算出することができる。
【0081】
一実施例において、プロセッサは、2つのクエリの間の入力時間差が予め決められた値(例えば、10秒)に近いほど高いx1スコアを付与することができる。代案的に、プロセッサは、2つのクエリの間の入力時間差が大きいほど高いx1スコアを付与することができる。代案的に、プロセッサは、2つのクエリの間の入力時間差が小さいほど高いx1スコアを付与することができる。
【0082】
さらに、プロセッサは、後続のクエリ(Q2)と最初のクエリ(Q1)の間のテキスト類似度が高いほど高いx2スコアを付与し、後続のクエリ(Q2)のクエリ発生確率が最初のクエリ(Q1)の発生確率より大きいほど高いx3スコアを付与し、後続のクエリ(Q2)によって検索される商品の数が最初のクエリ(Q1)によって検索される商品の数より大きいほど高いx4スコアを付与し、後続のクエリ(Q2)のCTRが最初のクエリ(Q1)のCTRより大きいほど高いx5スコアを付与することができる。
【0083】
算出された検索拡張スコアが予め決定されたしきい値以上である場合、プロセッサは、最初のクエリ(Q1)と後続のクエリ(Q2)を学習データのペアで抽出することができる。ここで、最初のクエリ(Q1)と後続のクエリ(Q2)は、それぞれ変換対象と変換結果を学習するために使用されることができる。上述した検索拡張スコアを利用して、プロセッサは、ショッピング検索ログデータ(910)内で変換対象と変換結果のペアを認識し、ショッピング検索に特化された複数の学習データのペア(920)を自動的に抽出することができる。
【0084】
一実施例において、後続のクエリ(Q2)のクエリ発生確率が最初のクエリ(Q1)のクエリ発生確率より小さい場合、プロセッサは、最初のクエリ(Q1)と後続のクエリ(Q2)を学習データのペアで抽出しないことができる。追加的または代案的に、後続のクエリ(Q2)によって検索される商品の数が最初のクエリ(Q1)によって検索される商品の数より少ない場合、プロセッサは、最初のクエリ(Q1)と後続のクエリ(Q2)を学習データのペアで抽出しないことができる。追加的または代案的に、後続のクエリ(Q2)のCTRが最初のクエリ(Q1)のCTRより小さい場合、プロセッサは、最初のクエリ(Q1)と後続のクエリ(Q2)を学習データのペアで抽出しないことができる。
【0085】
一実施例において、プロセッサは、最初のクエリ(Q1)を音節単位(1音節単位、2音節単位、3音節単位など)または形態素単位のうち少なくとも1つに分割して複数の部分クエリ(Q11、... Q1n)を生成することができる。その後、プロセッサは、後続のクエリ(Q2)を複数の部分クエリ(Q11、... Q1n)それぞれに関連付けて拡張された学習データのペア(Q11-Q2、... Q1n-Q2)を生成することができる(S1150)。学習データのペア(Q1-Q2)と拡張された学習データのペア(Q11-Q2、... Q1n-Q2)の全ては、言語モデルを学習するための学習データのペアとして使用されることができる。
【0086】
図示された例示において、プロセッサは、1つの検索セッション(bck1)の間に入力された最初のクエリ(Q1)と後続のクエリ(Q2)として「オクドンジャとんかつ」と「オクジュブとんかつ」を受信することができる。図示されたように、「オクドンジャとんかつ」と「オクジュブとんかつ」の入力時間差は3sであり、書記素編集距離は5、音節編集距離は2である高いテキスト類似度を有する。また、「オクジュブとんかつ」が「オクドンジャとんかつ」より高いクエリ発生確率、検索商品数、CTRを有するため、プロセッサは、「オクドンジャとんかつ」と「オクジュブとんかつ」の間の検索拡張スコアが予め決定されたしきい値以上であると判定し、「オクドンジャとんかつ」(変換対象Q1)と「オクジュブとんかつ」(変換結果Q2)を学習データのペアで抽出することができる。
【0087】
以下の表は、ショッピング検索ログデータ(910)から抽出されることができる学習データのペアの多様な例示を示す。
【0088】
【表1】
図10は、本開示の一実施例により、学習データデータベース(1010)と商品データベース(1020)に基づいて言語モデルを学習する例示を示す図面である。学習データデータベース(1010)は、複数の学習データのペア(例えば、図9の920)を含むことができる。各学習データのペアは、学習しようとする変換対象-変換結果のペアがあることができる。商品データベース(1020)は、多様なオンラインショッピングの商品に対する情報(例えば、テキスト情報)を含むことができる。
【0089】
図示されたように、情報処理システムのプロセッサは、学習データデータベース(1010)に含まれた複数の学習データのペアと商品データベース(1020)に含まれたテキストに基づいて言語モデルを学習することができる。一実施例において、言語モデルは、統計ベースの言語モデルまたはディープラーニングベースの言語モデルであることができる。例えば、プロセッサは、HMM(Hidden Markov Model)、CRF(Conditional Random Field)、IBM Translation Model、FFNN(Feed-forward Neural Network)、RNN(Recurrent Neural Network)、LSTM(Long Short-Term Memory)、TRANSFORMER 、BERT(Bidirectional Encoder Representations from Transformers)などを利用して言語モデルを学習することができる。
【0090】
上述したように、言語モデルを学習することによって、クエリ変換の精度を向上させ、カバレッジを増やすことが可能である。つまり、言語モデルを使用することによって、学習データデータベース(1010)に含まれていないユーザーのクエリも拡張クエリに変換することが可能である。図10には、学習データデータベース(1010)と商品データベース(1020)に基づいて言語モデルを学習するものとして図示されたが、これに限定されない。例えば、プロセッサは、学習データデータベース(1010)のみを使用して言語モデルを学習することができる。
【0091】
図11は、本開示の一実施例に係る学習データの生成方法(1100)を示すフローチャートである。一実施例において、学習データの生成方法(1100)は、プロセッサ(例えば、情報処理システムの少なくとも1つのプロセッサ)によって遂行されることができる。図示されたように、学習データの生成方法(1100)は、プロセッサが1つの検索セッションの間に入力された第1のクエリおよび第2のクエリを含むショッピング検索ログデータを受信することによって開始されることができる(S1110)。ここで、第1のクエリが第2のクエリより先に入力されたクエリであることができる。
【0092】
その後、プロセッサは、第1のクエリおよび第2のクエリの間の検索拡張スコアを算出することができる(S1120)。一実施例において、プロセッサは、検索拡張スコアを算出するために、ショッピング検索ログデータに記録された第1のクエリの入力時間と第2のクエリの入力時間の差を算出し、第1のクエリと第2のクエリの間のテキスト類似度を算出し、第1のクエリのクエリ発生確率と第2のクエリのクエリ発生確率の間の差を算出し、第1のクエリによって検索される商品の数と第2のクエリによって検索される商品の数の差を算出し、第1のクエリのCTRと第2のクエリのCTRの差を算出することができる。ここで、第1のクエリと第2のクエリの間のテキスト類似度は、第1のクエリと第2のクエリの間の書記素編集距離または音節編集距離のうち少なくとも1つに基づいて算出されることができる。プロセッサは、前記算出された値のうち少なくとも1つを利用して第1のクエリおよび第2のクエリの間の検索拡張スコアを算出することができる。
【0093】
第1のクエリおよび第2のクエリの間の検索拡張スコアが予め決定されたしきい値以上であると判定することに応答して、プロセッサは、第1のクエリおよび第2のクエリを学習データのペアで抽出することができる(S1130)。ここで、第1のクエリは変換対象クエリ、第2のクエリは拡張クエリとして使用されることができる。
【0094】
一実施例において、プロセッサは、第1のクエリを音節単位(1音節単位、2音節単位、3音節単位など)または形態素単位のうち少なくとも1つに分割して複数の部分クエリを生成することができる(S1140)。その後、プロセッサは、第2のクエリを複数の部分クエリのそれぞれに関連付けて拡張された学習データのペアを生成することができる(S1150)。プロセッサは、抽出された学習データのペア、拡張された学習データのペア、そして情報処理システム内に格納された商品データベース内のテキストデータに基づいて統計ベースの言語モデルまたはディープラーニングベースの言語モデルを学習することができる。
【0095】
上述されたショッピング検索結果の拡張方法は、コンピュータ読み取り可能な記録媒体にコンピュータ読み取り可能なコードで実装されることもできる。コンピュータ読み取り可能な記録媒体は、コンピュータシステムにより読み取り可能なデータが格納されるすべての種類の記録装置を含む。コンピュータ読み取り可能な記録媒体の例としては、ROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、光データ格納装置などがある。また、コンピュータ読み取り可能な記録媒体は、ネットワークに連結されたコンピュータシステムに分散され、分散方式でコンピュータ読み取り可能なコードが格納されて実行され得る。そして、前記実施例を実装するための機能的な(functional)プログラム、コードおよびコードセグメントは、本発明が属する技術分野のプログラマーによって容易に推論されることができる。
【0096】
本開示の方法、動作または技法は、多様な手段によって実装されることもできる。例えば、これらの技法は、ハードウェア、ファームウェア、ソフトウェア、またはこれらの組み合わせによって実装されることもできる。本願の開示と連携して説明された多様な例示的論理ブロック、モジュール、回路およびアルゴリズムのステップは、電子ハードウェア、コンピュータソフトウェア、または両者の組み合わせで実装され得るということを通常の技術者は理解できるであろう。ハードウェアおよびソフトウェアのこのような相互代替を明確に説明するために、多様な例示的構成要素、ブロック、モジュール、回路およびステップがそれらの機能的観点から一般的に上述された。そのような機能がハードウェアとして実装されるか否か、またはソフトウェアとして実装されるか否かは、特定のアプリケーションおよび全体システムに課される設計要求事項によって異なることになる。通常の技術者は、それぞれの特定のアプリケーションのために多様な方式で説明された機能を実装することもできるが、そのような実装は本開示の範囲を逸脱するものと解釈されてはならない。
【0097】
ハードウェアの具現において、技法を遂行するのに利用されるプロセッシングユニットは、1つ以上のASIC、DSP、デジタル信号プロセッシングデバイス(digital signal processing devices; DSPD)、プログラム可能な論理デバイス(programmable logic devices; PLD)、フィールドプログラム可能なゲートアレイ(field programmable gate arrays; FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本開示において説明された機能を遂行するように設計された他の電子ユニット、コンピュータ、またはこれらの組み合わせの中から実装されることもできる。
【0098】
したがって、本開示と連携して説明された多様な例示的論理ブロック、モジュール、および回路は、汎用プロセッサ、DSP、ASIC、FPGAや他のプログラム可能な論理デバイス、ディスクリートゲートやトランジスタロジック、ディスクリートハードウェアコンポーネント、または本願において説明された機能を遂行するように設計されたものの任意の組み合わせで実装されたり、遂行されたりすることもできる。汎用プロセッサは、マイクロプロセッサであることもできるが、代案として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態マシンであることもできる。プロセッサは、また、コンピューティングデバイスの組み合わせ、例えば、DSPとマイクロプロセッサ、複数のマイクロプロセッサ、DSPコアと連携した1つ以上のマイクロプロセッサ、または任意の他の構成の組み合わせで実装されることもできる。
【0099】
ファームウェアおよび/またはソフトウェアの実装において、技法は、ランダムアクセスメモリ(random access memory; RAM)、読み出し専用メモリ(read-only memory; ROM)、不揮発性RAM(non-volatile random access memory; NVRAM)、PROM(programmable read-only memory)、EPROM(erasable programmable read-only memory)、EEPROM(electrically erasable PROM)、フラッシュメモリ、コンパクトディスク(compact disc; CD)、磁気または光データストレージデバイスなどのようなコンピュータ読み取り可能な媒体上に格納された命令で実装されることもできる。命令は、1つ以上のプロセッサによって実行することもでき、プロセッサが本開示において説明された機能の特定の態様を遂行するようにすることもできる。
【0100】
ソフトウェアで実装される場合、前記の技法は、1つ以上の命令またはコードとしてコンピュータ読み取り可能な媒体上に格納されたり、またはコンピュータ読み取り可能な媒体を介して転送されたりすることもできる。コンピュータ読み取り可能な媒体は、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含み、コンピュータ格納媒体および通信媒体の両者を含む。格納媒体は、コンピュータによってアクセス可能な任意の利用可能な媒体であることもできる。非限定的な例として、これらのコンピュータ読み取り可能な媒体は、RAM、ROM、EEPROM、CD-ROMまたは他の光ディスクストレージ、磁気ディスクストレージまたは異なる磁気ストレージデバイス、または所望のプログラムコードを命令またはデータ構造の形態で移送または格納するために使用されることができ、コンピュータによってアクセス可能な任意の他の媒体を含むことができる。また、任意の接続がコンピュータ読み取り可能な媒体に適切に称される。
【0101】
例えば、ソフトウェアが同軸ケーブル、光ファイバーケーブル、撚線、デジタル加入者回線(DSL)、または赤外線、無線およびマイクロ波などのようなワイヤレス技術を使用して、ウェブサイト、サーバー、または他のリモートソースから転送されると、同軸ケーブル、光ファイバーケーブル、撚線、デジタル加入者回線、または赤外線、無線およびマイクロ波などのようなワイヤレス技術は、媒体の定義内に含まれる。本願において使用されたディスク(disk)とディスク(disc)は、CD、レーザーディスク、光ディスク、DVD(digital versatile disc)、フロッピーディスクおよびブルーレイディスクを含み、ここでディスク(disk)は、通常、磁気的にデータを再生し、一方ディスク(disc)は、レーザーを利用して光学的にデータを再生する。前記の組み合わせもコンピュータ読み取り可能な媒体の範囲内に含まれるべきである。
【0102】
ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、移動式ディスク、CD-ROM、または公知された任意の他の形態の格納媒体内に常駐することもできる。例示的な格納媒体は、プロセッサが格納媒体より情報を読み出したり、格納媒体に情報を記録したりすることができるように、プロセッサに連結されることができる。代案として、格納媒体は、プロセッサに統合されることもできる。プロセッサと格納媒体は、ASIC内に存在することもできる。ASICは、ユーザー端末内に存在することもできる。代案として、プロセッサと格納媒体は、ユーザー端末において個別のコンポーネントとして存在することもできる。
【0103】
以上で説明された実施例が1つ以上のスタンドアロンコンピュータシステムで現在開示された主題の態様を活用するものとして記述されたが、本開示はこれに限定されず、ネットワークや分散コンピューティング環境のような任意のコンピューティング環境と連携して実装されることもできる。さらに、本開示における主題の様相は、複数のプロセッシングチップやデバイスにおいて実装されることもでき、ストレージは、複数のデバイスにわたって同様に影響を受けることもできる。これらのデバイスは、PC、ネットワークサーバーおよびハンドヘルドデバイスを含むこともできる。
【0104】
本明細書において、本開示は一部実施例に関連して説明されたが、本開示の発明の属する技術分野の通常の技術者が理解できる本開示の範囲を逸脱しない範囲で多様な変形および変更が行われることができる。また、そのような変形および変更は、本明細書に添付された特許請求の範囲内に属するものとして考えられなければならない。
【0105】
本発明の実施形態は、更に以下の有利な効果を達成する。
【0106】
本開示の多様な実施例においては、ショッピング検索サービスに特化したクエリ変換(query reformulation)機能を提供することにより、ショッピング検索結果の再現率(recall)を高め、ユーザーの満足度を向上させることができる。一実施例によると、ショッピング検索結果が0件として表示される場合を30%ほど減少させ、キーワードの長さが長いlong-tailクエリのCTRを15%ほど増加させることができる。
【0107】
本開示の多様な実施例においては、事前ルールを使用してショッピング検索クエリを校正クエリに変換することによって、ショッピング検索クエリ拡張モデルにおいて処理できないケース、確実な正解があるケースなどを処理することができる。
【符号の説明】
【0108】
110:ユーザー端末
120:ネットワーク
130:商品検索サーバー
140:露出順位決定サーバー
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11