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

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

▶ メルカリ,インコーポレイテッドの特許一覧

<>
  • 特開-確率的アイテムマッチングおよび検索 図1
  • 特開-確率的アイテムマッチングおよび検索 図2
  • 特開-確率的アイテムマッチングおよび検索 図3
  • 特開-確率的アイテムマッチングおよび検索 図4
  • 特開-確率的アイテムマッチングおよび検索 図5
  • 特開-確率的アイテムマッチングおよび検索 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024041849
(43)【公開日】2024-03-27
(54)【発明の名称】確率的アイテムマッチングおよび検索
(51)【国際特許分類】
   G06F 16/903 20190101AFI20240319BHJP
【FI】
G06F16/903
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024000700
(22)【出願日】2024-01-05
(62)【分割の表示】P 2021518907の分割
【原出願日】2019-10-01
(31)【優先権主張番号】62/740,182
(32)【優先日】2018-10-02
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】62/740,165
(32)【優先日】2018-10-02
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/288,373
(32)【優先日】2019-02-28
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/288,379
(32)【優先日】2019-02-28
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.PYTHON
2.Elixir
(71)【出願人】
【識別番号】521138109
【氏名又は名称】メルカリ,インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】オ,ビョン モク
(72)【発明者】
【氏名】メロトラ,ドゥルーフ
(72)【発明者】
【氏名】大坂 千秋
(72)【発明者】
【氏名】牧野 直矢
(72)【発明者】
【氏名】ワイズマン,パトリック マイケル
(72)【発明者】
【氏名】田中 みなみ
(57)【要約】      (修正有)
【課題】確率的アイテムマッチングおよび検索のためのシステム、方法およびコンピュータプログラム製品を提供する。
【解決手段】少なくとも1つのプロセッサを含むシステムは、特定のアイテムに関連するデータポイントを受信し、データポイントに基づいてデータベースクエリを生成し、データベースクエリへの応答を受信する。応答は、特定のアイテムに関連する複数の候補アイテムを含む。システムはまた、特定のアイテムに関連する第1の入力を受信し、少なくとも第2の入力に基づいて、応答内の複数の候補アイテムのうちの少なくとも2つの候補アイテムの確率スコアを生成し、候補アイテムから選択アイテムを、選択アイテムの確率スコアに基づいて選択し、選択アイテムへの参照または選択アイテムを表す値を出力する。
【選択図】図4
【特許請求の範囲】
【請求項1】
少なくとも1つのコンピュータプロセッサによって、特定のアイテムに関連するデータポイントをロードすることと、
前記少なくとも1つのコンピュータプロセッサによって、前記データポイントに基づいてデータベースクエリを生成することと、
前記少なくとも1つのコンピュータプロセッサによって、前記データベースクエリへの応答を受信することであって、前記応答は、前記特定のアイテムに関連する複数の候補アイテムを含む、受信することと、
前記少なくとも1つのコンピュータプロセッサによって、前記特定のアイテムに関連する第1の入力を受信することと、
前記少なくとも1つのコンピュータプロセッサによって、少なくとも前記第1の入力に基づいて、前記応答内の前記複数の候補アイテムのうちの少なくとも2つの候補アイテムの確率スコアを生成することと、
前記少なくとも1つのコンピュータプロセッサによって、前記複数の候補アイテムから選択アイテムを、前記選択アイテムの前記確率スコアに基づいて選択することと、
前記少なくとも1つのコンピュータプロセッサによって、前記選択アイテムへの参照を出力することであって、前記選択アイテムは、一意の識別子にマッピングされている、出力することと、
を含む、コンピュータ実装方法。
【請求項2】
前記少なくとも1つのコンピュータプロセッサによって、前記特定のアイテムに関連する第2の入力を受信することと、
前記少なくとも1つのコンピュータプロセッサによって、少なくとも前記第2の入力に基づいて、前記複数の候補アイテムのうちの少なくとも1つの候補アイテムの前記確率スコアを更新することと、
をさらに含む、請求項1に記載の方法。
【請求項3】
前記少なくとも1つのコンピュータプロセッサによって、前記複数の候補アイテムのうちの前記少なくとも1つの候補アイテムの前記確率スコアを前記更新することに少なくとも基づいて、前記選択アイテムを異なる候補アイテムに対応するように変更することと、
前記少なくとも1つのプロセッサによって、前記変更された選択アイテムを出力することと、
をさらに含む、請求項2に記載の方法。
【請求項4】
前記応答、前記データポイント、または前記第1の入力のうちの少なくとも1つは、分類結果、画像認識結果、またはそれらの組み合わせを含む、請求項1に記載の方法。
【請求項5】
前記データベースクエリへの前記応答は、少なくとも1つのパブリックソースまたは少なくとも1つのサードパーティソースから得られる少なくとも1つのデータエントリを含む、請求項1に記載の方法。
【請求項6】
メモリと、
前記メモリに結合された少なくとも1つのプロセッサと、
を備え、前記少なくとも1つのプロセッサは、
特定のアイテムに関連するデータポイントを受信することと、
前記データポイントに基づいてデータベースクエリを生成することと、
前記データベースクエリへの応答を受信することであって、前記応答は、前記特定のアイテムに関連する複数の候補アイテムを含む、受信することと、
前記特定のアイテムに関連する第1の入力を受信することと、
少なくとも前記第1の入力に基づいて、前記応答内の前記複数の候補アイテムのうちの少なくとも2つの候補アイテムの確率スコアを生成することと、
前記複数の候補アイテムから選択アイテムを、前記選択アイテムの前記確率スコアに基づいて選択することと、
前記選択アイテムへの参照を出力することであって、前記選択アイテムは、一意の識別子にマッピングされている、出力することと、
を行うように構成される、システム。
【請求項7】
前記少なくとも1つのプロセッサは、
前記特定のアイテムに関連する第2の入力を受信することと、
少なくとも前記第2の入力に基づいて、前記複数の候補アイテムのうちの少なくとも1つの候補アイテムの前記確率スコアを更新することと、
を行うようにさらに構成される、請求項6に記載のシステム。
【請求項8】
前記少なくとも1つのプロセッサは、
前記複数の候補アイテムのうちの前記少なくとも1つの候補アイテムの前記更新された確率スコアに少なくとも基づいて、前記選択アイテムを異なる候補アイテムに対応するように変更することと、
前記変更された選択アイテムを出力することと、
を行うようにさらに構成される、請求項7に記載のシステム。
【請求項9】
前記応答、前記データポイント、または前記第1の入力のうちの少なくとも1つは、分類結果、画像認識結果、またはそれらの組み合わせを含む、請求項6に記載のシステム。
【請求項10】
前記データベースクエリへの前記応答は、少なくとも1つのパブリックソースまたは少なくとも1つのサードパーティソースから得られる少なくとも1つのデータエントリを含む、請求項6に記載のシステム。
【請求項11】
命令が記憶された非一時的コンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのコンピューティングデバイスによって実行された場合に、前記少なくとも1つのコンピューティングデバイスに動作を実行させ、前記動作は、
特定のアイテムに関連するデータポイントを受信することと、
前記データポイントに基づいてデータベースクエリを生成することと、
前記データベースクエリへの応答を受信することであって、前記応答は、前記特定のアイテムに関連する複数の候補アイテムを含む、受信することと、
前記特定のアイテムに関連する第1の入力を受信することと、
少なくとも前記第1の入力に基づいて、前記応答内の前記複数の候補アイテムのうちの少なくとも2つの候補アイテムの確率スコアを生成することと、
前記複数の候補アイテムから選択アイテムを、前記選択アイテムの前記確率スコアに基づいて選択することと、
前記選択アイテムへの参照を出力することであって、前記選択アイテムは、一意の識別子にマッピングされている、出力することと、
を含む、非一時的コンピュータ可読記憶媒体。
【請求項12】
前記動作は、
前記特定のアイテムに関連する第2の入力を受信することと、
少なくとも前記第2の入力に基づいて、前記複数の候補アイテムのうちの少なくとも1つの候補アイテムの前記確率スコアを更新することと、
をさらに含む、請求項11に記載の非一時的コンピュータ可読記憶媒体。
【請求項13】
前記動作は、
前記複数の候補アイテムのうちの前記少なくとも1つの候補アイテムの前記確率スコアを前記更新することに少なくとも基づいて、前記選択アイテムを異なる候補アイテムに対応するように変更することと、
前記変更された選択アイテムを出力することと、
をさらに含む、請求項12に記載の非一時的コンピュータ可読記憶媒体。
【請求項14】
前記応答、前記データポイント、または前記第1の入力のうちの少なくとも1つは、分類結果、画像認識結果、またはそれらの組み合わせを含む、請求項11に記載の非一時的コンピュータ可読記憶媒体。
【請求項15】
命令が記憶された非一時的コンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのコンピューティングデバイスによって実行された場合に、前記少なくとも1つのコンピューティングデバイスに動作を実行させ、前記動作は、
識別されたアイテムに関連する入力を受信することと、
前記入力に基づいてデータベースクエリを生成することと、
前記データベースクエリへの応答を受信することであって、前記応答は複数の同等アイテムを含み、前記複数の同等アイテムは前記識別されたアイテムに類似しており、前記応答は、前記複数の同等アイテムに対応する金額の範囲を含む、前記複数の同等アイテムの対応するメタデータをさらに含む、受信することと、
前記複数の同等アイテムの前記対応するメタデータに少なくとも基づいて、前記金額の範囲の少なくとも2つの金額の確率スコアを生成することと、
前記金額の範囲の前記少なくとも2つの金額の前記確率スコアを前記生成することに少なくとも基づいて、少なくとも提案金額を、さらなる入力を求めるプロンプトと共に出力することと、
を含む、非一時的コンピュータ可読記憶媒体。
【請求項16】
前記動作は、
前記金額の範囲の前記少なくとも2つの金額の前記確率スコアを前記生成することに少なくとも基づいて、少なくとも低い金額および高い金額を、さらなる入力を求める前記プロンプトと共に出力すること
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項17】
前記動作は、
前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
少なくとも前記さらなる入力に基づいて、前記金額の範囲の前記少なくとも2つの金額の時間値および前記確率スコアのうちの少なくとも一方を更新することと、
前記金額の範囲の前記少なくとも2つの金額のうちの1つの前記更新された確率スコアを少なくとも出力することと、
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項18】
前記動作は、
前記複数の同等アイテムの前記対応するメタデータと、前記金額の範囲の前記少なくとも2つの金額の前記確率スコアを前記生成することと、に少なくとも基づいて、時間値を出力すること
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項19】
前記動作は、
前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
少なくとも前記さらなる入力に基づいて、前記金額の範囲の前記少なくとも2つの金額の前記確率スコアを更新することと、
前記金額の範囲の前記少なくとも2つの金額のうちの1つの前記時間値および前記更新された確率スコアのうちの少なくとも一方を出力することと、
をさらに含む、請求項18に記載の非一時的コンピュータ可読記憶媒体。
【請求項20】
前記動作は、
少なくとも1つのメタデータエントリに基づいて、前記識別されたアイテムの検索ランキングを修正すること
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
[0001] 本出願は、2018年10月2日に出願された「Probabilistic Search Biasing and Recommendations」と題された米国特許出願第62/740,165号、2018年10月2日に出願された「Probabilistic Item Matching and Searching」と題された米国特許出願第62/740,182号、2019年2月28日に出願された「Probabilistic Search Biasing and Recommendations」と題された米国特許出願第16/288,373号、および2019年2月28日に出願された「Probabilistic Item Matching and Searching」と題された米国特許出願第16/288,379号の利益を主張し、また、2019年2月28日に出願された「Inventory Ingestion, Image Processing, and Market Descriptor Pricing System」と題された米国特許出願第16/288,199号、2019年2月28日に出願された「Inventory Ingestion and Pricing System」と題された米国特許出願第16/288,203号、2019年2月28日に出願された「Determining Sellability Score and Cancellability Score」と題された米国特許出願第16/288,158号、および2019年5月17日に出願された「Inventory Ingestion and Pricing, Including Enhanced New User Experience Embodiments」と題された米国特許出願第16/415,237号に関し、これらは全て、引用によりその全体が本明細書に組み込まれている。
【0002】
[0002] 本開示は、一般に、大規模なデータセットの確率的分析に基づいた、コンピュータで実装される検索および推奨の生成に関する。
【背景技術】
【0003】
[0003] しばしば、オンラインプラットフォームを介してアイテムを売買することに関心がある場合に、そのアイテムおよびそれに似たアイテムを見つけ出すことは、困難をもたらす場合がある。たとえば、同じアイテムに対して複数の異なる出品物(掲載物)が生じないように販売用アイテムを説明することは、ベンダーにとってもベンディングプラットフォームにとっても課題である場合がある。同様に、特定のアイテムを検索する買い手にとって、同じアイテムであり得るものに関して複数の異なる結果を受け取ると、混乱が生じる場合があり、その理由は、初回の取引時にアイテムの説明と合致しない購入アイテムを受け取ることになるためである。このように、購入者および販売者は、検索結果およびマッチするアイテムの正確性に苦労してきた。
【発明の概要】
【発明が解決しようとする課題】
【0004】
[0004] 関連する問題は、所与の売買用のプラットフォームのサービス利用規約または他の有意義な制約内で関連する検索結果を提供することおよび受け取ることに関するものである。たとえば、他の全てが同じであれば、購入者はアイテムをできるだけ早く受け取りたい場合があり、プラットフォームは、購入者を、できるだけ早くアイテムを発送して配達させることができる販売者とペアにするためのサービス品質(QoS)レベルまたはサービスレベル合意(SLA)を提供したい場合がある。同様に、販売者は、特定の時間ウィンドウ内でアイテムを動かすために、どのようにアイテムに価格設定すべきか、また、特定の利益のために、または売買を成立させる可能性を得るために、どのようにアイテムに価格設定すべきか、を推測するための信頼できる方法がない場合がある。消費者間(C2C)電子商取引を含むC2Cマーケットでは、購入者および販売者の両方が、マーケティングのこれらの側面を容易にし、これらのより簡単なソリューションをさらに透過的で労力の少ないものにするよりスマートなプラットフォームへの長年の必要性を感じてきた。
【課題を解決するための手段】
【0005】
[0005] 本明細書に組み込まれており、本明細書の一部を形成する添付の図面は、本開示の実施形態を示しており、本説明と共に、本開示の原理を説明し、当業者が実施形態を作成して使用できるようにするのにさらに役立つ。
【図面の簡単な説明】
【0006】
図1】[0006]いくつかの実施形態による、確率的アイテムマッチングおよび検索を含む方法を実装するのに有用な例示的なシステムを示す図である。
図2】[0007]いくつかの実施形態による、確率的検索バイアス付与および推奨を含む方法を実装するのに有用な例示的なシステムを示す図である。
図3】[0008]いくつかの実施形態による、金額の入力を求める例示的なプロンプトを含む例示的な画面表示を示す図である。
図4】[0009]いくつかの実施形態による、確率的アイテムマッチングおよび検索を含む方法を示すフローチャートである。
図5】[0010]いくつかの実施形態による、確率的検索バイアス付与および推奨を含む方法を示すフローチャートである。
図6】[0011]本開示の様々な態様を実行するために使用できる汎用コンピュータのブロック図である。
【発明を実施するための形態】
【0007】
[0012] 図面では、同様の参照番号は一般に同一または類似の要素を示す。さらに、一般に、参照番号の左端の桁は、その参照番号が最初に登場する図面を識別する。
【0008】
[0013] 本明細書では、確率的アイテムマッチング、検索、検索バイアス付与、推奨、および/またはそれらの任意の組み合わせを提供するための、システム、装置、デバイス、方法、および/またはコンピュータプログラム製品の実施形態、ならびに/あるいはそれらの組み合わせおよびサブコンビネーションを提供する。
【0009】
[0014] 図1は、いくつかの実施形態による、確率的アイテムマッチングおよび検索を含む方法を実装するのに有用な例示的なシステムを示す図である。
【0010】
[0015] 図1の左側にあるのは、販売者および販売アプリケーション(アプリ)の描写であり、このアプリは、いくつかの実施形態では、出品(掲載)された販売用アイテムを表示するため、および販売用アイテムの新しい出品物を作成するために使用することができる。これらの描写は、アプリのフロントエンドデザインを含み、これは、ウェブアプリ、モバイルアプリ(たとえば、ネイティブ、ウェブベース、またはハイブリッド)とすることができ、様々なレベルのユーザインタラクションを含むことができる。販売者ではなく購入者とのインタラクションは、いくつかの実施形態では、アプリとの同様のインタラクションを含むことができる。
【0011】
[0016] 図1の中央から右側にあるのは、一実施形態による、確率的アイテムマッチングおよび検索を実装するのに有用であり得る例示的なバックエンドアーキテクチャの描写である。全体として、図1に示すコンポーネントは、とりわけ、例示的なシステム100を構成するものとして扱うことができ、例示的なシステム100は、バックエンドでデータ(アイテムデータ、メタデータ、出品物、データベースなど)の記憶、取得、および/または計算の動作に対処し、フロントエンドで入力、出力、結果、および関連するインタラクションの処理に対処することができる。
【0012】
[0017] ユーザ(たとえば、購入者/販売者)とのインタラクション以外に、バックエンドは、ユーザおよび/または他の様々なソースからの入力を処理することができる。たとえば、販売者が新しい出品物用のアイテムに関する入力を提供した場合、バックエンドは、他の入力を介して、販売者が出品しようとしているものの識別を確認しようと努めることができる。他の入力は、いくつかの実施形態では、販売者に促すか、他のソースから自動的に導出するか、または両方の組み合わせとすることができる。
【0013】
[0018] 提案価格推奨を生成するために、バックエンドは、(1)同じプラットフォーム上などの、出品物のバックエンドデータベース内の古い出品物と照合することと、(2)同じプラットフォームとサードパーティプロバイダとの間のサブスクリプションサービスなどを介してデータパートナーのフィードデータと照合することと、(3)他のC2Cプラットフォーム、企業・消費者間(B2C)委託サイト、および/または小売プラットフォームを含む他の電子商取引ウェブサイトなどのパブリックソースからスクレイピングされた出品物と照合することと、(4)(1)、(2)、(3)、またはそれらの任意の組み合わせから取得された任意の情報が、販売者によると正しいか否かを確認するための入力を促すことを含めて、販売者に確認することと、のうちのいずれをも、任意の順序で実行することができる。
【0014】
[0019] 上記の説明に従って、アイテムに関するユーザ入力を受信して解析するか否かにかかわらず、または(1)、(2)、(3)のいずれか、もしくはそれらの任意の組み合わせをチェックするか否かにかかわらず、ここで説明しているそのような処理の任意の段階において、任意のマッチングを実行することができる。より具体的には、「マッチング」という用語は、テキスト文字列または他のデータシーケンスが一致することを判定する以上のことを指す場合がある。
【0015】
[0020] たとえば、上記のシナリオのいずれにおけるマッチングも、自然言語処理(NLP)技法の使用を含むことができ、これには、同義語(たとえば、同義語ライブラリまたはルックアップテーブルによる、任意の省略形、頭字語、短縮形、または非短縮形(expansion)を含む)を特定し、見つかった同義語に一致するものをさらに検索すること、他の任意の意味的に関連する単語を特定し、および/またはさらに検索して追加のマッチングを行うこと、最小の1つの言語および対応する形態規則セットに基づいて単語ステミングを実行すること、スペルミスを特定し、スペルミスを正しいスペルと同一視して(または別の方法でスペルミスを訂正して)追加のマッチングを行うこと、ならびに同様の処理のための同様のこと、が含まれる。このように、いくつかの実施形態では、マッチングは再帰的なものとすることができる。入力またはアイテム説明の同様の言語分析を使用して、修飾語、たとえば、サイズまたは色を説明する形容詞を、他の名称関連の識別語、たとえば、名前またはアイテムを指定する名詞から分離することができる。
【0016】
[0021] さらに、マッチングは、総称またはカテゴリ説明に対してだけでなく、固有名詞、たとえば、ブランド名、普通名称化された商標などに対しても実行することができる。いくつかの実施形態では、分類アルゴリズム、または他のニューラルネットワークもしくは人工知能を使用して、上記の(1)、(2)、または(3)から取得された検索クエリ、ユーザ入力、またはアイテム説明などの非構造化単語セットから関連語を抽出することができる。このように、所与の分類器は、所与の非構造化単語セットから、総称的な記述と比べてブランド名として意図され得る用語を「理解」することができ、たとえば、ブランド情報を総称と共に特定のカテゴリまたはサブカテゴリに含むように、任意のデータベース、ライブラリ、またはルックアップテーブルなどを更新するよう構成して、マッチングを改善することができる。マッチングアルゴリズムまたは任意のコンポーネントは、適合率または再現率に関してバイアス付与または調節することができる。
【0017】
[0022] いくつかの実施形態では、上述のようなマッチングは、クライアントデバイス、たとえば、パーソナルコンピュータ(PC)、またはスマートフォンもしくはタブレットコンピュータなどのモバイルデバイス上でローカルに、セルフホスト型サービス(専用サーバ、仮想プライベートサーバ(VPS)、またはオンプレミスクラウドを含む)インフラストラクチャ上でリモートで、サードパーティサービスを介してリモートで、あるいはそれらの任意の組み合わせで、実行することができる。複数のデバイスを介してマッチング動作を実行することができる実施形態では、特定のマッチング動作をローカルに実行し、中間結果をリモートサービスに送って、確認、検証、他のさらなる処理、またはそれらの任意の組み合わせを行うことができる。
【0018】
[0023] 一実施形態では、アイテムまたはアイテムのタイプを識別する1つの方法は、提案された新しい出品物を一意の識別子に対応するように解明することであってもよく、これは、たとえば、既に一意の識別子にマッピングされているアイテムとの比較などによって行う。そして、このようにして確認されたアイテムに関する情報は、たとえば、バックエンドデータベースに出品された他の同等アイテムの情報と、または他のソースと、より確実に相関することができる。それに応じて、検索バイアス付与および価格推奨を提供することができ、これについては、以下で図2および図5に関してさらに説明しており、また、上記で引用した、引用により本明細書に組み込まれている、「Probabilistic Search Biasing and Recommendations」と題された出願(米国出願第16/288,373号)にさらに記載されている。
【0019】
[0024] 同じタイプの他のアイテムに対応する一意の識別子を有さない場合がある非常にユニークなアイテム(たとえば、一点物のアイテム、カスタムメイドのアイテム、クラフトアイテム、パーソナライズされたアイテムなど)の中には、他の同様のアイテムがマッピングされた一意の識別子がない場合がある。そのような場合、バックエンドは、異なって進むことができ(図示せず)、たとえば、いくつかの例示的な実施形態では、重複した出品物について他のプラットフォーム(たとえば、カスタムまたはクラフトアイテムのもの)を自動的に参照するか、または直ちに販売者にそのような一意性を確認するように促す。
【0020】
[0025] 参照または値は、いくつかの実施形態では、所与のアイテムがマッピングされ得る、最小在庫管理単位(SKU)、統一商品コード(UPC)、統一資源識別子(URI)、統一資源位置指定子(URL)統一資源名(URN)、国際標準図書番号(ISBN)、Amazon標準商品番号(ASIN)などを含むがこれらに限定されない、統一された、汎用の、および/または一意の識別子とすることができる。追加的または代替的には、値は、たとえば、入力および出力を追跡する、ならびに/あるいは重複した入力を判定するための、第1の入力または第2の入力(たとえば、文字列のアイテム説明、ブランド名用の特定のテキストフィールド、サイズ、モデル年度などの列挙型のセレクタ)の少なくとも一方に対応するチェックサム、指紋、署名、ダイジェスト、ハッシュ、暗号化ハッシュなどを含むことができる。図1およびこれに付随する説明の目的で、所与のアイテムを一意の識別子にマッピングすることを、SKUレベルのマッチングまたはSKUレベルのデータと呼ぶこともある。
【0021】
[0026] 最初の入力段階、またはアクション(4)などの任意の後続の入力段階において、システム100は、たとえば、アプリを介して追加のユーザ入力を求めることができる。入力は、たとえば、文字列の形式のテキスト、写真画像、音声認識、他の特徴的な音または音声指紋とすることができる。アプリを介したテキストベースの入力は、全ての機能の網羅的な説明ではなく、販売用に出品するアイテムの幅広いカテゴリに応じてユーザに少数の情報フィールドを入力するように促すことができる。多くの場合、基本的なテキスト情報でさえ、バックエンドは、SKUレベルのデータを解明することが可能になり、または少なくとも、正しいアイテム識別の確認のために少数の可能性のある候補アイテムを販売者に提示することが可能になり得る。
【0022】
[0027] テキストベースの文字列または画像の他に、任意の表現での数学的署名(mathematical signature)または暗号署名を使用することもできる。バーコードまたは他のパターンもしくはシーケンスを使用することができる。他の可能なタイプの入力には、振動パターン、化学試料およびその分析、放射線、電気および/または磁気信号の測定値、あるいは他の任意の環境センサ入力などが含まれるが、これらに限定されない。
【0023】
[0028] 他のコンピュータプログラムまたはアルゴリズムからの出力、たとえば、ニューラルネットワーク出力、パーセプトロン出力、画像認識出力、分類出力、または他のタイプの出力など形式の、他の形式の入力を受信することができる。これらの出力は、他のユーザ入力、たとえば、写真データ、音声もしくはオーディオデータ、または他のサードパーティのリソース、フィードなどのものに基づくことができる。そのような入力のいずれかまたは全ては、いくつかの実施形態では、タブレットコンピュータまたはスマートフォンなどのモバイルデバイスによって生成することができる。
【0024】
[0029] 画像入力の場合、販売用の新しい出品物を作成しようとするユーザに、出品するアイテムの少なくとも1枚の写真を撮るように促すことができる。その写真の写真画像データは、アプリを実行しているデバイス上でローカルに処理することができ、あるいは初期処理および/またはさらなる処理のためにバックエンドまたはサードパーティに送信することができる。写真画像データの処理は、人工知能の使用を含むことができる。画像データの処理は、たとえば、ニューラルネットワーク、パーセプトロン、または分類器に画像データを供給することを含むことができる。いくつかの実施形態では、たとえば、少なくとも1つのコンピュータビジョンアルゴリズムを使用するなど、コンピュータで実装された画像認識を使用して、画像データを処理することができる。上記の技術またはそれらの同等物のいずれかを使用して、たとえば、いくつかの非限定的な例を挙げると、分類、物体認識、および/または逆画像検索などの動作を実行することができる。
【0025】
[0030] 本明細書に記載の任意のニューラルネットワークは、少なくとも1つの人工ニューラルネットワーク(ANN)を含むことができる。ANNは、いくつかの非限定的な例を挙げると、順伝播型ニューラルネットワーク、再帰型ニューラルネットワーク、モジュール型ニューラルネットワーク、またはメモリネットワークのうちの少なくとも1つを含むことができる。たとえば、順伝播型ニューラルネットワークの場合、これは、いくつかの実施形態では、畳み込みニューラルネットワーク、確率的ニューラルネットワーク、時間遅延ニューラルネットワーク、多層パーセプトロン、オートエンコーダ、またはそれらの任意の組み合わせのうちの少なくとも1つにさらに対応することができる。そのようなANNは複数の層を有することができ、いくつかの実施形態では、これらの層は密結合にすることができ、これは、たとえば、いくつかの実施形態では、特定の層から活性化関数を再利用できる場合、または特定の計算を解決するために1つもしくは複数の層の活性化がスキップされる場合などである。
【0026】
[0031] たとえば、畳み込みニューラルネットワーク(CNN)処理に基づくさらなる実施形態では、そのようなCNNは、少なくともいくつかのフィルタ(たとえば、エッジフィルタ、ホライズンフィルタ、カラーフィルタなど)をさらに統合することができる。これらのフィルタは、たとえば、エッジ検出アルゴリズム、カラーフィルタリングアルゴリズム、および/または所定の閾値のうちのいくつかを含むことができる。所望の結果のために、CNNを含む所与のANNは、たとえば、いくつかの実施形態では、いくつかの基準に従って様々な方法で設計、カスタマイズ、および/または修正することができる。
【0027】
[0032] ここでの画像認識は、いくつかの実施形態では、機械学習を活用することもできる。画像認識システムは、たとえば、バックエンドデータベースの出品物、データパートナーのフィードデータ、パブリックソースからスクレイピングされた出品物、または正確なトレーニングデータの他の任意のソースのいずれかを使用してトレーニングすることができる。画像認識は、バーコード、クイックレスポンス(QR)コード、ラベル、タグ、ロゴ、商標、および/またはアイテムの他の任意の決定的な特徴を検出して解釈するようにさらに構成することができる。いくつかの実施形態では、画像認識はさらに、光学式文字認識(OCR)を実行し、自然言語処理(NLP)を使用してテキストを解釈することができる。このように、画像認識を使用して、出品されるアイテムまたは少なくとも候補アイテムを識別することによって、確認および選択させることができ、後で様々な入力ソースを介して導入できる新しい情報および計算に基づいて選択アイテムを更新することができる。
【0028】
[0033] 上記で論じたように、システム100によって取られるアクション(1)~(4)は、他の任意の自動または手動の判定に基づいて任意のものを実施またはスキップして、任意の順序で実行することができる。しかしながら、信頼性、計算効率、時間、および場合によっては(たとえば、特定のプラットフォームにアクセスする)コストを考慮すると、1つのデフォルトの構成は、最初に(1)において同じプラットフォーム上のバックエンドデータベースに確認することであってもよく、(1)が十分に条件を満たす(たとえば、候補アイテムのリストのデータポイント、および/または選択アイテムを確認もしくは更新するための他のデータポイントを提供する)場合、アクション(2)~(4)をバイパスして、任意の更新または確認アクションまでスキップすることができる。さらに、後続のアクションは「スマート」にすることができ、あるいは以前のアクションからの応答または結果を、結果が利用可能になったときに考慮することができる。
【0029】
[0034] 同様に、(1)が条件を満たさない場合、またはさらなる入力が別途求められる場合、システム100は、アクション(2)または(3)の実行へ、どちらがより効率的であるかに応じて、または他の要因に応じて、進むことができる。追加的または代替的には、いくつかの実施形態では、より迅速になり得る解明のために、アクション(1)~(4)はいずれも並行して実行することができる。
【0030】
[0035] 所与のプラットフォームおよび/または所与の販売者に応じて、販売者の入力は、(1)~(3)のいずれかから収集された入力よりも信頼性が低いものとして扱うことができる。いくつかの実施形態では、(1)~(3)のいずれかまたは全てが何らかの理由で、または他の何らかの理由で依然として不十分である場合、任意選択により(4)を進めて、たとえば、追加の販売者の入力、確認、または調整を要求することができる。(4)で取られるアクションは、いくつかの実施形態では、出品するアイテムを説明するさらなる詳細、および/または選択アイテムもしくは他の候補アイテムが、出品するアイテムと一致し得るか否かの確認を含む、販売者からの入力を求めるさらなるプロンプトを提供することを含むことができる。
【0031】
[0036] 人工知能、画像認識、またはシステム100が利用可能な他の手段などによって、アイテムが何であるかをシステム100が「理解」すると、追加の計算を実行して、他のデータまたは対応するメタデータ、たとえば、価格、状態、市場性の傾向などに基づいて、アイテムを分析およびカテゴライズするなどすることができる。これらのさらなる計算に関するさらなる詳細については、以下で図2および図5に関して説明しており、また、引用によって組み込まれている「Probabilistic Search Biasing and Recommendations」と題された出願(米国出願第16/288,373号)にさらに記載されている。
【0032】
[0037] 図2は、いくつかの実施形態による、確率的検索バイアス付与および推奨を含む方法を実装するのに有用な例示的なシステムを示す図である。
【0033】
[0038] 図2の左側にあるのは、販売者および販売アプリケーション(アプリ)の描写であり、このアプリは、いくつかの実施形態では、出品された販売用アイテムを表示するため、および販売用アイテムの新しい出品物を作成するために使用することができる。これらの描写は、アプリのフロントエンドデザインを含み、これは、ウェブアプリ、モバイルアプリ(たとえば、ネイティブ、ウェブベース、またはハイブリッド)とすることができ、様々なレベルのユーザインタラクションを含むことができる。販売者ではなく購入者とのインタラクションは、いくつかの実施形態では、アプリとの同様のインタラクションを含むことができる。
【0034】
[0039] 図2の中央から右側にあるのは、一実施形態による、確率的検索バイアス付与および推奨を実装するのに有用であり得る例示的なバックエンドアーキテクチャの描写である。全体として、図2に示すコンポーネントは、とりわけ、例示的なシステム200を構成するものとして扱うことができ、例示的なシステム200は、バックエンドでデータ(アイテムデータ、メタデータ、出品物、データベースなど)の記憶、取得、および/または計算の動作に対処し、フロントエンドで入力、出力、結果、および関連するインタラクションの処理に対処することができる。
【0035】
[0040] ユーザ(たとえば、購入者/販売者)とのインタラクション以外に、バックエンドは、ユーザおよび/または他の様々なソースからの入力を処理することができる。たとえば、販売者が新しい出品物用のアイテムに関する入力を提供した場合、バックエンドは、他の入力を介して、販売者が出品しようとしているものの識別結果、およびその典型的なまたは同等の出品価格、たとえば、同じマーケットプラットフォーム、他のマーケットプラットフォーム、委託販売店、小売店、またはそれらの組み合わせでのものを確認しようと努めることができる。他の入力は、いくつかの実施形態では、販売者に促すか、他のソースから自動的に導出するか、または両方の組み合わせとすることができる。
【0036】
[0041] 一実施形態では、価格を収集する1つの方法は、データベース内の所与のアイテムと一致することが既に確認されているアイテムから始めることであってもよい。この一例は、本明細書では図1および図4に関して説明しており、また、引用により組み込まれている「Probabilistic Item Matching and Searching」と題された出願(米国出願第16/288,379号)にさらに記載されている。このように確認されたアイテムの場合、任意の対応する価格情報は、販売者が出品しようとしているアイテムと、より確実に相関すると期待することができる。それに応じて価格推奨を生成することができる。
【0037】
[0042] 逆に、同じタイプの他のアイテムに対応する一意の識別子を有さない場合があるユニークなアイテム(たとえば、一点物のアイテム、カスタムメイドのアイテム、クラフトアイテム、パーソナライズされたアイテムなど)については、バックエンドは異なって進むことができ(図示せず)、たとえば、いくつかの例示的な実施形態では、(たとえば、幅広いカテゴリのユーザ入力に基づいて)ユニークなアイテムの同じ幅広いカテゴリ内の出品物を販売者に紹介する、そのようなユニークな商品について幅広いカテゴリもしくは同等のプラットフォームに基づいて価格を自動的に生成する、および/または同等もしくは提案価格推奨を提供することを拒否する。
【0038】
[0043] 提案価格推奨を生成するために、バックエンドは、いくつかの実施形態では、(1)出品物のバックエンドデータベース内の古い出品物と照合することと、(2)同じプラットフォームとサードパーティプロバイダとの間のサブスクリプションサービスなどを介してデータパートナーのフィードデータと照合することと、(3)他のC2Cプラットフォーム、企業・消費者間(B2C)委託サイト、および/または小売プラットフォームを含む他の電子商取引ウェブサイトなどのパブリックソースからスクレイピングされた出品物と照合することと、(4)価格を確認するための、または販売者が価格の再調整を望み得る理由および金額に関する、バックエンドから自動的に生成されたアドバイスを場合により受けて価格を再調整するための入力を促すことを含めて、販売者に確認することと、のうちのいずれをも、任意の順序で実行することができる。
【0039】
[0044] システム200の工程(1)、(2)、または(3)のいずれにおいても、価格情報を収集し、他のパラメータまたは変数に関して統計的に分析することができ、他のパラメータまたは変数は、たとえば、価格に関する他の任意のデータまたはメタデータを含み、出品された状態(新品、新品同様、非常に良い、良い、普通、不良など)、カテゴリ、ブランド、サイズなどと相関し、これらは、同じプラットフォーム上のものであるか、またはサードパーティソースもしくはパブリックソースなどの他のプラットフォーム上のものであるかを問わず、他のプラットフォームで生じ得るメタデータの任意の違い(アイテム状態の等級、価格設定の地域変動、価格設定の季節変動など)について正規化されている。ここでの統計分析には、たとえば、これらのデータポイントまたはメタデータカテゴリの任意のセットの傾向の平均化または計算を含めることができる。
【0040】
[0045] 上記で論じたように、システム200によって取られるアクション(1)~(4)は、他の任意の自動または手動の判定に基づいて任意のものを実施またはスキップして、任意の順序で実行することができる。しかしながら、信頼性、計算効率、時間、および場合によっては(たとえば、特定のプラットフォームにアクセスする)コストを考慮すると、1つのデフォルトの構成は、最初に(1)において同じプラットフォーム上のバックエンドデータベースに確認することであってもよく、(1)が十分に条件を満たす(たとえば、候補アイテムのリストのデータポイント、および/または選択アイテムを確認もしくは更新するための他のデータポイントを提供する)場合、アクション(2)~(4)をバイパスして、任意の更新または確認アクションまでスキップすることができる。
【0041】
[0046] 同様に、(1)が条件を満たさない場合、またはさらなる入力が別途求められる場合、システム200は、アクション(2)または(3)の実行へ、どちらがより効率的であるかに応じて、または他の要因に応じて、進むことができる。追加的または代替的には、いくつかの実施形態では、より迅速になり得る解明のために、アクション(1)~(4)はいずれも並行して実行することができる。
【0042】
[0047] 所与のプラットフォームおよび/または所与の販売者に応じて、販売者の入力は、(1)~(3)のいずれかから収集された入力よりも信頼性が低いものとして扱うことができる。いくつかの実施形態では、(1)~(3)のいずれかまたは全てが何らかの理由で、または他の何らかの理由で依然として不十分である場合、任意選択により(4)を進めて、たとえば、追加の販売者の入力、確認、または調整を要求することができる。(4)で取られるアクションは、いくつかの実施形態では、販売者が価格の再調整を望み得る理由および金額に関する、バックエンドから自動的に生成されたアドバイスをさらに提供することを含むことができる。
【0043】
[0048] 検索結果の自動バイアス付与に関して、価格に関して考慮されたのと同じメタデータを、所与の検索結果セットのどこに、販売用の新規または既存の出品物を表示すべきかを決定する際に考慮することができる。価格、確率スコア(たとえば、アイテムが所与の期間内に売れる可能性に関するもの)、アイテム状態、地理、季節、時刻、周期的もしくは長期的な傾向、より大規模な傾向、ならびに/あるいは、(1)~(3)および/または(4)から収集できる他の任意の情報を含む様々な考慮事項に基づいて、場合によっては、検索結果のランキングを、アップグレードする(昇格させる、上昇させる、または別の方法で増加させる)か、またはダウングレードする(降格させる、下降させる、または別の方法で減少させる)ことができる。検索結果にバイアス付与する際の他の要因は、検索する個々の購入者、または検索を実施可能な、もしくは結果を取得可能なアプリケーションプログラミングインターフェース(API)もしくはメディアに依存することができる。
【0044】
[0049] バイアス付与のいくつかのユースケースは、遠距離の結果よりも近距離の結果にバイアス付与することによって、売れたアイテムの発送および/または配達の所要時間を改善することであってもよい。ここで、「近距離」とは、地理的な距離だけでなく、たとえば、「配送距離」、すなわち、特定のルートに沿った、または特定の地理的地域内/間の小包の平均輸送時間を指す場合がある。他の要因には、近距離の販売者からのものである場合がある異なるアイテムの類似性、所与のアイテムが販売用に出品されている期間、所与の購入者または他の購入者が(たとえば、所与のプラットフォームを介して)アイテムに関心を示しているか否かなどを含めることができる。場合によっては、検索バイアス付与に対するある程度の制御を販売者に与えることもでき、たとえば、いくつかの実施形態では、特定の期間中、または販売者の評価、行為(karma)、信用などに基づいて保証されたプロモーションなどがある。
【0045】
[0050] たとえば、世界中の複数のインスタンスに対する一意の識別子と一致し得る特定のアイテムを検索する購入者に対して、検索エンジンは、いくつかのケースでは、遠距離の販売者が、購入者が関心を持つ可能性のある他の属性を有し得る場合でも、遠距離の販売者よりも近距離の(配送距離が購入者に近い)販売者を浮上させることができる。いくつかの実施形態では、検索バイアス付与は、たとえば、既存のユーザ指定の検索フィルタまたは設定を無効にするか、またはそれらよりも重く重み付けするように構成することができる。
【0046】
[0051] 検索エンジンが考慮できる他の要因には、他の可能性の中でも、販売者および/またはプラットフォームにとっての送料、購入者および/またはプラットフォームにとっての消費税、販売者および/またはプラットフォームにとっての収益性を含めることができる。そのような検索バイアス付与技法は、C2Cプラットフォームに有益であり得るが、いくつかのユースケースでは、B2CプラットフォームまたはB2Bプラットフォームにも同様の利益をもたらすことができる。
【0047】
[0052] そのような優先的な検索バイアス付与は、さらなる例では、QoSを維持するため、またはSLAを順守するために、マーケットプラットフォームにさらに有用な場合がある。このように、本明細書に記載の強化された技法を少なくとも使用して、いくつかの実施形態では、取引されるアイテムに関する購入者および/または販売者の特定の属性に関して検索性を改善することができる。
【0048】
[0053] 図3は、いくつかの実施形態による、表示装置を含むコンピューティングデバイス上にレンダリングすることができる例示的なユーザインターフェースの画面表示300の例を示している。画面表示300は、テキスト値および/またはグラフィック要素を出力するための様々な領域、ならびに様々な形式での入力を求めるプロンプトを含むことができる。たとえば、ユーザ入力は、任意のグラフィカルユーザインターフェース(GUI)要素、テキストユーザインターフェース(TUI)、音声コマンド、加速度計、または他の環境センサなどを介して提供することができる。
【0049】
[0054] 図3に提供した画面表示は例示的なものにすぎず、本明細書に記載の確率的アイテムマッチング、検索、検索バイアス付与、および推奨の強化された技法に関連し得るいくつかの例示的な出力および入力を示すために提供している。関連技術の当業者は、本開示に従って適切な画面表示300を提供するために様々なアプローチをとることができることを理解するであろう。
【0050】
[0055] 画面表示300は、任意の適切な方法論、フレームワーク、ツールキット、ウィジェットセット、ガイドライン、設計言語などに従って表示および配置できる様々なインジケータおよび制御要素を含むことができる。例としては、フラットデザイン、階層デザイン、層状デザイン、WIMPデザイン(ウィンドウ、アイコン、メニュー、ポインタ)、ナチュラルユーザインターフェース(NUI)、リアリティベースのインターフェース(RBI)、ヘッドアップディスプレイ(HUD)などを用いた拡張現実(AR)、仮想ストアフロントなどを用いた仮想現実(VR)などが含まれる。ユーザ入力は、ポインティングデバイス、たとえば、マウス、トラックボール、ジョイスティック、タッチパッド、タッチスクリーンなど、ならびに他の形式のタッチ、空間ナビゲーション、視線追跡、音声コマンド、環境センサ、APIを介したスクリプトまたはプログラムによる入力などを使用して提供することができる。当技術分野で理解されている同等の入力手段を追加的または代替的に使用することができる。
【0051】
[0056] 画面表示300は、いくつかの実施形態では、図3の画面表示300の一番上に表示されているようなタイトルを含むことができる。画面表示300の他の領域には、たとえば、ユーザが任意の基礎となるハードウェアおよび/またはソフトウェアとやりとりするための他のGUI要素、ウィジェット、ノブ、スライダー、スクロールバー、ボタン、または関連する機能を提示することができる。
【0052】
[0057] さらに説明するために、図3に一例を示す。図3に示す例では、$990は、画面表示に出力される提案金額の一例を表す「提案価格」である。さらに、提案金額と共に、さらなる入力を求めるプロンプトが出力される。さらなる入力は、たとえば、ハードウェア(物理ボタン、ノブ、スライダーなど)、ソフトウェア(GUI、TUI、音声コマンドなど)、またはそれらの任意の組み合わせでの、ボタン(「掲載(出品)する」または「下書きを保存する」)を介して、および/またはスライダー、ノブ、もしくは同等の要素を介して、提供することができる。
【0053】
[0058] 図3に提案金額と同じフィールド内に示しているのは、GUIベースのスライダー要素の非限定的な例であり、ユーザはこれを調整して、販売するアイテムを出品する場合の実際の希望販売価格を変更することができる。さらなる入力に応答して、たとえば、いくつかの実施形態では、提案金額、および/または任意の範囲を定義するために使用できる少なくとも2つの金額のいずれかを含む上述の金額のうちのいずれかを更新し、同様に出力して、任意の既存の出力を更新することができる。任意の数のボタンまたはテキストフィールドを入力に使用することもできる。
【0054】
[0059] 「提案価格」の中央の提案金額の両側に「早く売る」提案および「ゆっくり売る」提案などのさらなる金額が表示され、これらは以下の508で説明する金額の確率スコアに基づいて決定することができる。この提案価格の組み合わせは、価格設定ガイドの一例を形成する。他の実施形態では、他のフォーマットおよび提案を任意の構成で提示して、同等の価格設定ガイドを作成するか、または出品価格以外に、もしくはこれに加えて他のパラメータを使用する他のガイドを作成することができる。
【0055】
[0060] 図3に示すように、画面表示300を介して出力できるさらなる金額は、たとえば、所与のプラットフォームによって決定できる可能な最低価格および最高価格を含む。手数料率またはコミッション率、ならびに画面表示300の要素を介して選択できる希望販売価格に基づく手数料またはコミッションの計算結果も表示することができる。計算された手数料またはコミッションに加えて、予想される売上からの残りの利益も表示することができる。
【0056】
[0061] 追加の出力のために、任意の数のテキストフィールドまたは画像を表示することができる。出力は、音、触覚フィードバック、発光ダイオード(LED)を含む外部の電子インジケータ、または追加の外部ディスプレイなどを含む、他の様々な手段によって実現することもできる。任意の数の出力および/または入力プロンプトを、任意の配置またはタイミングで同時にまたは順次的に表示することができる。
【0057】
[0062] 図3の画面表示300は1つの例示的な構成を示しているが、実際には、開発者およびユーザが、本明細書に記載の強化された技法を実装するインターフェースおよび装置またはシステムを設計、実装、構成、および使用するのを支援するための他の任意の構成が、本開示の範囲および趣旨内で可能である。
【0058】
[0063] 図4は、いくつかの実施形態による、確率的アイテムマッチングおよび検索を含む方法400を示すフローチャートである。方法400は、ハードウェア(たとえば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(たとえば、処理デバイス上で実行される命令)、またはそれらの組み合わせを含むことができる処理ロジックによって実行することができる。本明細書に開示した強化された技法を実行するために、全てのケースにおいて、方法400の全ての工程が必要でない場合がある。さらに、当業者によって理解されるように、方法400の一部の工程は同時に、または図4に示すものとは異なる順序で実行することができる。
【0059】
[0064] 方法400は、図1および図6を参照して説明するものとする。しかしながら、方法400は、それらの例示的な実施形態のみに限定されない。方法400の工程は、少なくとも1つのメモリデバイスに結合された少なくとも1つのコンピュータプロセッサによって実行することができる。例示的なプロセッサおよびメモリデバイスについては、以下で図6の604に関して説明する。いくつかの実施形態では、方法400は図1のシステム100を使用して実行することができ、これは少なくとも1つのプロセッサおよびメモリ、たとえば、図6のものなどをさらに含むことができる。
【0060】
[0065] 402において、プロセッサ604などの少なくとも1つのプロセッサは、特定のアイテムに関連するデータポイントをロードすることができる。たとえば、データポイントは、ユーザからの入力値とすることができ、これは、たとえば、特定のアイテムを識別する可能性があり得る文字列、数字、または他の情報を含み得る。任意のロードされたデータポイントまたは受信された入力は、たとえば、メインメモリ608などのメモリに記憶することができる。特定のアイテムに関連するユーザ入力またはデータポイントは、場合によっては、不完全または曖昧なことがある。いくつかの実施形態によれば、本明細書に記載した確率的マッチングおよび検索のための強化された技法を活用して、わずかな、不完全な、または曖昧な入力にもかかわらず適切な結果を提供することによって、本来得られる検索結果の精度を改善し、ユーザに求められる労力およびインタラクションのレベルを低減することができる。
【0061】
[0066] 402のさらなる例では、データポイントは、いくつかの実施形態では、ユーザによって任意に入力することができる、説明、タイトル、名前、あるいはアイテムを説明する簡潔な特徴描写もしくは文とすることができる。ユーザと、アイテムが属するカテゴリとに応じて、入力は特定のプロンプト(図示せず)などへの応答とすることができる。データポイントは、追加的または代替的には、他の入力または環境要因などに基づいて説明を生成するための、たとえば、センサ、カメラ、音声認識、人工知能、またはニューラルネットワークからの非テキストデータに基づくことができる。いくつかの実施形態では、データポイントは、必ずしもユーザからの手動入力によってではなく、たとえば、アプリケーションプログラミングインターフェース(API)などによって、プログラムで、および/または自動化された方法で生成および送受信することができる。
【0062】
[0067] 404において、プロセッサ604は、データポイントに基づいてデータベースクエリを生成することができる。データベースクエリは、従来の構造化データベースのクエリに限定されない。むしろ、本開示の目的では、データベースクエリは、データベースクエリのように機能することができる任意のクエリである。たとえば、他のデータとの一致を判定するために使用される任意の用語、表現、または値(またはそれらの任意の部分)は、本開示の目的でのデータベースクエリであると見なすことができる。同様に、いくつかの実施形態では、「データベース」内の任意のエントリは、アイテムデータまたは対応するメタデータを抽出、スクレイピング、解析、または別の方法で処理することができる任意の出品物、データ構造、ウェブページ、または他のエンティティに対応することができる。
【0063】
[0068] いくつかの実施形態では、クエリは、タイトルまたは説明などに対応する文字列リテラルなどとすることができる。いくつかの実施形態では、クエリは、リテラル入力文字列自体よりも多く一致することを目的とした特殊文字またはコンポーネントを有する正規表現または同様の入力とすることができる。いくつかの実施形態では、データベースクエリは、たとえば、SQLクエリなどの演算子および/または構文を含むことができる。しかしながら、そのようなクエリは、必ずしもSQLデータベースへのアクセスに限定されるものではなく、他のタイプのデータベース、データストア、データレイク、データプール、データフィード、データストリームなどを使用することができ、また、完全に構造化されていなくとも、全く構造化されていなくてもよく、部分的に構造化されていてもよい。いくつかの実施形態では、クエリは、たとえば、パブリックリソース、サードパーティリソース、ライブラリ、データベース、またはウェブ検索エンジンなどを用いたウェブ検索に使用することができる。
【0064】
[0069] 406において、プロセッサ604は、データベースクエリへの応答を受信することができ、応答は特定のアイテムに関連する複数の候補アイテムを含む。いくつかの実施形態では、受信された応答は、メモリ608などのメモリに記憶することができる。いくつかの場合において、応答が複数個未満の、すなわち、1個またはゼロ個の候補アイテムを有する可能性があり得るが、そのような場合、確率的検索およびマッチングをそのような場合に省いて、早期に終了させることができる。データベースクエリへの応答が複数の候補アイテムの結果を含む他の場合では、方法400の処理を継続して、たとえば、ある信頼度で、少なくとも1つの上位の結果を決定することができる。
【0065】
[0070] 408において、プロセッサ604は、特定のアイテムに関連する第1の入力を受信することができる。第1の入力は、たとえば、データポイントのタイプまたはフォーマットに関係なく、データポイントをさらに限定するために使用することができる。いくつかの実施形態では、データポイントがテキストオブジェクトであっても、第1の入力は異なるテキストオブジェクト(たとえば、文字列)とすることができ、データポイントおよび第1の入力は、たとえば、テキスト説明の異なる要素(たとえば、名前、型式、モデル、年度、サイズなど)を説明することができ、または同じ要素の異なる部分とすることができる。
【0066】
[0071] 他の場合では、第1の入力は異なるタイプとすることができ、たとえば、データポイントが文字列の形式のテキストであり得る場合、第1の入力は写真画像とすることができ、またはその逆とすることができる。他のタイプを使用することができ、たとえば、音声認識または他の特徴的な音もしくは音声指紋が含まれる。テキストベースの文字列の他に、任意の表現での数学的署名または暗号署名を使用することもできる。バーコードまたは他のパターンもしくはシーケンスを使用することができる。
【0067】
[0072] 他の可能なタイプの入力には、振動パターン、化学試料およびその分析、放射線、電気および/または磁気信号の測定値、あるいは他の任意の環境センサ入力などが含まれるが、これらに限定されない。他のコンピュータプログラムまたはアルゴリズムからの出力、たとえば、ニューラルネットワーク出力、パーセプトロン出力、画像認識出力、分類出力、または他のタイプの出力など形式の、他の形式の入力を受信することができる。これらの出力は、他のユーザ入力、たとえば、写真データ、音声もしくはオーディオデータ、または他のサードパーティのリソース、フィードなどのものに基づくことができる。
【0068】
[0073] 第1の入力は、たとえば、ネットワークを介した、および/または(確率的マッチングおよび検索を実行するデバイスに関するローカルもしくはリモートのプログラムのAPIを介した、他の可視または可聴インジケータによる、モバイルデバイスなどの画面上などの任意の様々なプロンプトに応答して、受信することができる。同様に、たとえば、任意の同様のまたは関連するプロンプトに応答して、第2の入力、第3の入力、または任意のさらなる入力を受信することができる。
【0069】
[0074] 410において、プロセッサ604は、少なくとも第1の入力に基づいて、応答内の複数の候補アイテムのうちの少なくとも2つの候補アイテムの確率スコアを生成することができる。確率スコアは、たとえば、絶対的な用語であってもよく、または他の候補に対する相対的な用語であってもよい。他の候補に対する相対的な用語の場合、他の候補は、データベースクエリに応答して受信される候補とすることができ、ならびに/あるいは、複数のクエリおよびそれらに対する応答(たとえば、少なくとも所定の時間枠内の過去のクエリおよび応答の履歴など)からの候補を表すことができる。複数のクエリまたは応答から確率スコア生成を行うこの後者の場合、確率スコア付けは、特定の期間および/または全期間にわたる累積的なものとすることができる。そのような累積的な確率スコア付けの場合、機械学習を含む追加のアルゴリズムは、いくつかの実施形態では、時間の経過に伴って、また、深層学習ネットワークなどによる機械学習の反復に伴って、確率スコアの精度を改善するのに有用な場合がある。
【0070】
[0075] 本明細書に記載の確率スコアは、クライアントデバイス、たとえば、PC、またはスマートフォンもしくはタブレットコンピュータなどのモバイルデバイス上でローカルに、セルフホスト型サービス(専用サーバ、VPS、またはオンプレミスクラウドを含む)インフラストラクチャ上でリモートで、サードパーティサービスを介してリモートで、またはそれらの任意の組み合わせで、生成することができる。複数のデバイスを介して確率スコア生成を実行することができる実施形態では、第1のデバイスが、構造化データクエリ(たとえば、マークアップ、シリアル化されたフォーマット、キー値ペアなどのもの)または他のデータ構造を第2のデバイスに送信するまたは渡すように構成することができ、処理を開始または継続して、その結果得られる確率スコアを生成し、たとえば、第1のデバイス、第2のデバイスのモジュール、または第3のデバイスのいずれかに返すことが可能になり得る。いくつかの実施形態では、クエリまたはデータ構造の全てのコンポーネントが、期待する動作のための構造化データを含まなくてもよい。
【0071】
[0076] いくつかの実施形態によれば、本明細書に記載のように生成することができる確率スコアに基づいて、アイテム出品物または検索結果にバイアス付与またはランク付けすることができる。このように、リモートデータベースまたはサードパーティのサービスプロバイダに依存して、一致するものおよび/または確率スコアを生成し、結果を返すいくつかのユースケースにおいて、スコア付けおよびランク付けの実装を実現することによって、スマートフォンまたはPC端末などのローカルデバイスにおける、SKUなどの特定の特定性のユーザ入力を必要とせずに、結果において比較的高いレベルの特定性を提供することができる。
【0072】
[0077] 412において、プロセッサ604は、複数の候補アイテムから選択アイテムを、選択アイテムの確率スコアに基づいて選択することができる。データポイントおよび第1の入力の少なくとも一方に基づいて、プロセッサ604は、候補アイテムを選択アイテムとして選択することができる。いくつかの実施形態では、プロセッサ604は、たとえば、対応する確率スコアが最も高い候補アイテムを、選択アイテムとして選択することができる。それに加えて、またはその代わりに、プロセッサ604は、他の実施形態では、他の任意の基準または条件に基づいて、選択アイテムを選択することができる。
【0073】
[0078] 任意のデータポイントをロードしたこと、または任意の第1の入力、第2の入力、第3の入力、もしくは任意のさらなる入力を受信したことに応答して、いくつかの実施形態では、確率スコアを更新するか、または別の方法で変更することができる。それに応答して、対応する確率スコアが最も高い候補アイテムも変化させることができる範囲内で、そのような変化を選択アイテムにも反映することができる。たとえば、プロセッサ604は、選択アイテムが、対応する確率スコアが最も高い候補アイテムと同じでなくなった場合、選択アイテムを、対応する確率スコアが最も高い候補アイテムに変更することができる。他の実施形態では、追加的または代替的には、選択アイテムを選択、更新、または別の方法で変更するための他の基準を使用することができる。
【0074】
[0079] 414において、プロセッサ604は、選択アイテムへの参照を出力することができる。具体的には、出力として、プロセッサ604は、いくつかの実施形態では、参照または他の何らかの値を結果として返すことができる。参照または値により、別個の機能、モジュール、デバイス、ユーザ、または他のエンティティは、結果的に得られた選択アイテムを認識または特定することが可能になり得る。参照または値は、いくつかの実施形態では、所与のアイテムがマッピングされ得る、SKU、UPC、URI、URL、URN、ISBN、ASINなどを含むがこれらに限定されない、統一された、汎用の、および/または一意の識別子とすることができる。追加的または代替的には、値は、たとえば、入力および出力を追跡する、ならびに/あるいは重複する入力を判定するための、データポイントまたは第2の入力の少なくとも一方に対応するチェックサム、指紋、署名、ダイジェスト、ハッシュ、または暗号化ハッシュを含むことができる。
【0075】
[0080] さらに、参照または値のいずれかによる414の出力は、さらなる方法、システム、および/またはデバイスへの入力として使用することができる。たとえば、選択アイテムに対応する参照または識別値は、以下でより詳細に説明する方法500および図5の502などにおけるさらなる推奨および/または検索結果のバイアス付与のための入力として、信頼性を持って使用することができる。そのような使用およびデータフローのさらなる詳細については、引用により本明細書に組み込まれている「Probabilistic Search Biasing and Recommendations」と題された出願(米国出願第16/288,373号)にさらに記載されている。414の出力は、それぞれが本出願と共に出願され、上記のように引用により組み込まれている「Inventory Ingestion, Image Processing, and Market Descriptor Pricing System」、「Inventory Ingestion and Pricing System」、および「System and Method for Determining Sellability Score and Cancellability Score」と題された出願(それぞれ、米国出願第16/288,199号、第16/288,203号、および第16/288,158号)に対して使用することもできる。
【0076】
[0081] 方法400は、図4のこの例示的な実施形態では上記に示す順序で開示している。しかしながら、実際には、上記に開示した動作は、他の動作と共に、任意の順序で順次実行されてもよく、もしくは代替的には、同時並行で実行されて、2つ以上の動作が同時に実行されてもよく、またはこれらの任意の組み合わせであってもよい。
【0077】
[0082] 図5は、いくつかの実施形態による、確率的アイテムマッチングおよび検索を含む方法500を示すフローチャートである。方法500は、ハードウェア(たとえば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(たとえば、処理デバイス上で実行される命令)、またはそれらの組み合わせを含むことができる処理ロジックによって実行することができる。本明細書に開示した強化された技法を実行するために、全てのケースにおいて、方法500の全ての工程が必要でない場合がある。さらに、当業者によって理解されるように、方法500の一部の工程は同時に、または図5に示すものとは異なる順序で実行することができる。
【0078】
[0083] 方法500は、図1および図6を参照して説明するものとする。しかしながら、方法400は、それらの例示的な実施形態のみに限定されない。方法400の工程は、少なくとも1つのメモリデバイスに結合された少なくとも1つのコンピュータプロセッサによって実行することができる。例示的なプロセッサおよびメモリデバイスについては、以下で図6の604に関して説明する。いくつかの実施形態では、方法400は図1のシステム100を使用して実行することができ、これは少なくとも1つのプロセッサおよびメモリ、たとえば、図6のものなどをさらに含むことができる。
【0079】
[0084] 502において、プロセッサ604などのプロセッサは、識別されたアイテムに関連する入力を受信することができる。識別されたアイテムは、いくつかの実施形態では、上記の図4に関する414などから出力された選択アイテムとすることができ、これはまた、上記で引用した、引用により本明細書に組み込まれている「Probabilistic Item Matching and Searching」と題された出願(米国出願第16/288,379号)に記載されている。方法500が、上記の方法400に関して説明した確率的アイテムマッチングおよび/または検索に加えて、またはその代わりに、アイテムを識別する任意の追加的または代替的な方法を利用できる限り、502で受信される入力は、たとえば、上記の402で受信された入力と同様のものとすることができる。
【0080】
[0085] これとは別に、502の他の実施形態では、入力は、たとえば、ユーザによって任意に入力することができる、説明、タイトル、名前、あるいはアイテムを説明する簡潔な特徴描写もしくは文とすることができる。ユーザと、アイテムが属するカテゴリとに応じて、入力は特定のプロンプト(図示せず)などへの応答とすることができる。入力は、追加的または代替的には、他の入力または環境要因などに基づいて説明を生成するための、たとえば、センサ、カメラ、音声認識、人工知能、またはニューラルネットワークからの非テキストデータに基づくことができる。入力は、必ずしもユーザからの手動入力によってではなく、たとえば、アプリケーションプログラミングインターフェース(API)などによって、プログラムで、および/または自動化された方法で生成および送受信することができる。
【0081】
[0086] 504において、プロセッサ604は、入力に基づいてデータベースクエリを生成することができる。データベースクエリは、従来の構造化データベースのクエリに限定されない。むしろ、本開示の目的では、データベースクエリは、データベースクエリのように機能することができる任意のクエリである。たとえば、他のデータとの一致を判定するために使用される任意の用語、表現、または値(またはそれらの任意の部分)は、本開示の目的でのデータベースクエリであると見なすことができる。同様に、いくつかの実施形態では、「データベース」内の任意のエントリは、アイテムデータまたは対応するメタデータを抽出、スクレイピング、解析、または別の方法で処理することができる任意の出品物、データ構造、ウェブページ、または他のエンティティに対応することができる。
【0082】
[0087] いくつかの実施形態では、クエリは、タイトルまたは説明などに対応する文字列リテラルなどとすることができる。いくつかの実施形態では、クエリは、リテラル入力文字列自体よりも多く一致することを目的とした特殊文字またはコンポーネントを有する正規表現または同様の入力とすることができる。いくつかの実施形態では、データベースクエリは、たとえば、SQLクエリなどの演算子および/または構文を含むことができる。しかしながら、そのようなクエリは、必ずしもSQLデータベースへのアクセスに限定されるものではなく、他のタイプのデータベース、データストア、データレイク、データプール、データフィード、データストリームなどを使用することができ、また、完全に構造化されていなくとも、全く構造化されていなくてもよく、または半構造化されていてもよい。いくつかの実施形態では、クエリは、たとえば、パブリックリソース、サードパーティリソース、ライブラリ、データベース、またはウェブ検索エンジンなどを用いたウェブ検索に使用することができる。
【0083】
[0088] 506において、プロセッサ604は、データベースクエリに対する応答を受信することができ、応答は複数の同等アイテムを含み、同等アイテムは識別されたアイテムに類似しており、応答は、複数の同等アイテムに対応する金額の範囲を含む複数の同等アイテムの対応するメタデータをさらに含む。いくつかの場合において、応答が複数個未満の、すなわち、1個またはゼロ個の同等アイテムを有する可能性があり得るが、そのような場合、確率的推奨をそのような場合に省いて、早期に終了させることができる。データベースクエリへの応答が複数の同等アイテムの結果を含む他の場合では、方法500の処理を継続することができる。
【0084】
[0089] 別物であるが関連する考慮事項として、特定の関心対象のメタデータフィールドが空白であるか、誤っているか、または所与の同等アイテムに関して別様に無益である場合、プロセッサ604は、場合によっては、同じ関心対象のメタデータフィールドに関するさらなる計算のために、対応する同等アイテムを無視することができる。1つの例示的なユースケースでは、所与のアイテムは、その説明の少なくともいくつかの要素が、502での入力の対応する要素に類似していることによって、同等アイテムであると判定することができる。しかしながら、たとえば、プロセッサ604が同等アイテムを比較して、入力アイテム(たとえば、502のもの)が所与のマーケットで売れる妥当な価格範囲を決定することができる場合、いくつかの実施形態によれば、プロセッサ604は特定の同等アイテムを、それらの対応する価格(メタ)データが欠落しているか、または統計的外れ値(無益または誤りである可能性が高いデータ)であった場合に、無視することができる。
【0085】
[0090] 508において、プロセッサ604は、複数の同等アイテムの対応するメタデータに少なくとも基づいて、金額の範囲の少なくとも2つの金額の確率スコアを生成することができる。すぐ上の例に倣って、プロセッサ604は、同等アイテムを比較して、入力アイテム(たとえば、502のもの)が所与のマーケットで売れる妥当な価格範囲を決定することができる。有意義な出力は、単一の金額でなくてもよく、他の要因に応じて、2つ以上の金額により反映されてもよい。追加的または代替的には、少なくとも2つの金額のうちの2つの金額は、たとえば、所与の金額の範囲を定義する、低い金額および高い金額を表すことができる。
【0086】
[0091] たとえば、2つの金額は、所与のアイテム(たとえば、502の入力)が所与の時間(期間および/または特定の日付)内に売れる特定の確率を少なくとも有する価格の範囲を定義することができる。これとは別に、時間に関係なく販売が完了する確率について、異なる価格の範囲を決定することができる。さらなる実施形態では、第1の金額は、時間に無関係な、所与の販売確率での最高価格を表すことができ、第2の金額は、所与の時間的制約内での、所与の販売確率での最高価格として決定することができる。
【0087】
[0092] 510において、プロセッサ604は、金額の範囲の少なくとも2つの金額に対して生成された確率スコアに少なくとも基づいて、少なくとも提案金額を、さらなる入力を求めるプロンプトと共に出力することができる。提案金額は、いくつかの実施形態では、上記で508に関して説明した少なくとも2つの金額のうちの1つとすることができる。他の実施形態では、提案金額は、たとえば、508の少なくとも2つの金額のいずれとも異なることができるが、場合によっては、上記で508に関して説明した少なくとも2つの金額のうちのいずれかから導出することができる。
【0088】
[0093] さらに説明するために、図3に一例を示す。図3に示す例では、$990は、画面表示に出力される提案金額の一例を表す「提案価格」である。さらに、提案金額と共に、さらなる入力を求めるプロンプトが出力される。さらなる入力は、たとえば、ハードウェア(物理ボタン、ノブ、スライダーなど)、ソフトウェア(GUI、TUI、音声コマンドなど)、またはそれらの任意の組み合わせでの、ボタン(「出品する」または「下書きを保存する」)を介して、および/またはスライダー、ノブ、もしくは同等の要素を介して、提供することができる。
【0089】
[0094] 図3に提案金額と同じフィールド内に示しているのは、GUIベースのスライダー要素の非限定的な例であり、ユーザはこれを調整して、販売するアイテムを出品するための実際の希望販売価格を変更することができる。さらなる入力に応答して、たとえば、いくつかの実施形態では、提案金額、および/または任意の範囲を定義するために使用できる少なくとも2つの金額のいずれかを含む上述の金額のうちのいずれかを更新し、同様に出力して、任意の既存の出力を更新することができる。
【0090】
[0095] 「提案価格」の中央の提案金額の両側に「早く売る」提案および「ゆっくり売る」提案などのさらなる金額が表示され、これらは上記の508で説明した金額の確率スコアに基づいて決定することができる。この提案価格の組み合わせは、価格設定ガイドの一例を形成する。他の実施形態では、他のフォーマットおよび提案を任意の構成で提示して、同等の価格設定ガイドを作成するか、または出品価格以外に、もしくはこれに加えて他のパラメータを使用する他のガイドを作成することができる。
【0091】
[0096] さらなる実施形態では、少なくとも1つの同等アイテムおよび対応するメタデータに基づいて、時間値(time value)を出力することができる。追加的または代替的には、時間値は、ユーザによってユーザの裁量で設定することができる。メモリ608に記憶することができる時間値を使用して、たとえば、少なくとも任意の時間依存の確率スコアでの、508で説明した少なくとも2つの金額のいずれかを計算することができる。さらなる例示として、時間値は、販売が所与の確率スコアを有する期間、たとえば、6時間、2日間、1週間などとすることができる。そのような時間値を記憶し、対応する確率スコアまたは他の値に関連付けることができるが、時間値は任意選択により、たとえば、他の任意の値と一緒にまたはその代わりに、ユーザに表示することもできる。
【0092】
[0097] 上述の確率スコア、提案金額、および他の値と同様に、いくつかの実施形態では、任意のユーザ入力(たとえば、第1の入力、第2の入力など)またはさらなるユーザ入力に応答して時間値を更新することができ、更新された時間値および/または確率スコアを出力して、任意の既存の出力を更新することができる。任意のユーザ入力および/または任意の定期的なリフレッシュ周期などに基づく更新またはリフレッシュの追加動作を、当技術分野で理解されている他の任意の関連技法に従って実行することができる。
【0093】
[0098] 方法500は、図5のこの例示的な実施形態では上記に示す順序で開示している。しかしながら、実際には、上記に開示した動作は、他の動作と共に、任意の順序で順次実行されてもよく、もしくは代替的には、同時並行で実行されて、2つ以上の動作が同時に実行されてもよく、またはこれらの任意の組み合わせであってもよい。
【0094】
例示的なコンピュータシステム
[0099] たとえば、図6に示すコンピュータシステム600などの1つまたは複数のコンピュータシステムを使用して、様々な実施形態を実装することができる。1つまたは複数のコンピュータシステム600を使用して、たとえば、本明細書で論じた実施形態のいずれか、ならびにそれらの組み合わせおよびサブコンビネーションを実装することができる。
【0095】
[0100] コンピュータシステム600は、プロセッサ604などの1つまたは複数のプロセッサ(中央処理装置またはCPUとも呼ばれる)を含むことができる。プロセッサ604は、バスまたは通信インフラストラクチャ606に接続することができる。
【0096】
[0101] コンピュータシステム600はまた、モニタ、キーボード、ポインティングデバイスなどのユーザ入力/出力デバイス603を含むことができ、これは、ユーザ入力/出力インターフェース602を介して通信インフラ606と通信することができる。
【0097】
[0102] プロセッサ604のうちの1つまたは複数は、グラフィックス処理ユニット(GPU)とすることができる。一実施形態では、GPUは、数学的に処理の多い(mathematically intensive)アプリケーションを処理するように設計された専用の電子回路であるプロセッサとすることができる。GPUは、たとえば、コンピュータグラフィックスアプリケーション、画像、ビデオ、ベクトル処理、アレイ処理など、ならびに暗号化(ブルートフォースクラッキングを含む)、暗号化ハッシュもしくはハッシュシーケンスの生成、部分的なハッシュ関数の逆問題(partial hash-inversion problem)の解決、および/または一部のブロックチェーンベースのアプリケーションに関する他のプルーフオブワーク計算の結果の生成に共通する、数学的に処理の多いデータなどの、大きなデータブロックの並列処理に効率的な並列構造を有することができる。グラフィックス処理ユニットによる汎用計算(GPGPU)の機能によって、GPUは、少なくとも本明細書に記載の画像認識および機械学習の態様において非常に有用な場合がある。
【0098】
[0103] さらに、プロセッサ604のうちの1つまたは複数は、ハードウェアで加速された暗号コプロセッサを含む、暗号計算または他の特殊な数学関数を加速するためのコプロセッサまたは他のロジックの実装を含むことができる。そのような加速されたプロセッサは、そのような加速を容易にするためのコプロセッサおよび/または他のロジックを使用した加速のための命令セットをさらに含むことができる。
【0099】
[0104] コンピュータシステム600はまた、ランダムアクセスメモリ(RAM)などのメインメモリまたは一次メモリ608を含むことができる。メインメモリ608は、1つまたは複数のレベルのキャッシュを含むことができる。メインメモリ608は、その中に制御ロジック(すなわち、コンピュータソフトウェア)および/またはデータを記憶することができる。
【0100】
[0105] コンピュータシステム600はまた、1つまたは複数の二次ストレージデバイスまたは二次メモリ610を含むことができる。二次メモリ610は、たとえば、メインストレージドライブ612および/またはリムーバブルストレージデバイスもしくはドライブ614を含むことができる。メインストレージドライブ612は、たとえば、ハードディスクドライブまたはソリッドステートドライブとすることができる。リムーバブルストレージドライブ614は、フロッピーディスクドライブ、磁気テープドライブ、コンパクトディスクドライブ、光ストレージデバイス、テープバックアップデバイス、および/または他の任意のストレージデバイス/ドライブとすることができる。
【0101】
[0106] リムーバブルストレージドライブ614は、リムーバブルストレージユニット618とやりとりすることができる。リムーバブルストレージユニット618は、コンピュータソフトウェア(制御ロジック)および/またはデータが記憶されたコンピュータ使用可能または読み取り可能なストレージデバイスを含むことができる。リムーバブルストレージユニット618は、フロッピーディスク、磁気テープ、コンパクトディスク、DVD、光ストレージディスク、および/または他の任意のコンピュータデータストレージデバイスとすることができる。リムーバブルストレージドライブ614は、リムーバブルストレージユニット618に対して読み書きを行うことができる。
【0102】
[0107] 二次メモリ610は、コンピュータプログラムならびに/あるいは他の命令および/またはデータがコンピュータシステム600によってアクセスされることを可能にするための他の手段、デバイス、コンポーネント、機器、または他のアプローチを含むことができる。そのような手段、デバイス、コンポーネント、機器、または他のアプローチは、たとえば、リムーバブルストレージユニット622およびインターフェース620を含むことができる。リムーバブルストレージユニット622およびインターフェース620の例には、プログラムカートリッジおよびカートリッジインターフェース(たとえば、ビデオゲームデバイスに見られるものなど)、リムーバブルメモリチップ(たとえば、EPROMまたはPROM)および関連するソケット、メモリスティックおよびUSBポート、メモリカードおよび関連するメモリカードスロット、ならびに/あるいは他の任意のリムーバブルストレージユニットおよび関連するインターフェースを含めることができる。
【0103】
[0108] コンピュータシステム600は、通信またはネットワークインターフェース624をさらに含むことができる。通信インターフェース624は、コンピュータシステム600が、(参照番号628によって個別におよび集合的に参照される)外部デバイス、外部ネットワーク、外部エンティティなどの任意の組み合わせと通信し、やりとりすることを可能にし得る。たとえば、通信インターフェース624は、コンピュータシステム600が、通信経路626を介して外部またはリモートデバイス628と通信することを可能にすることができ、通信経路626は、有線および/または無線(またはそれらの組み合わせ)とすることができ、LAN、WAN、インターネットなどの任意の組み合わせを含むことができる。通信経路626を介してコンピュータシステム600との間で制御ロジックおよび/またはデータを伝送することができる。
【0104】
[0109] コンピュータシステム600はまた、いくつかの非限定的な例を挙げると、携帯情報端末(PDA)、デスクトップワークステーション、ラップトップもしくはノートブックコンピュータ、ネットブック、タブレット、スマートフォン、スマートウォッチもしくは他のウェアラブル、電化製品、モノのインターネット(IoT)の一部、および/または組み込みシステムのうちのいずれか、あるいはそれらの任意の組み合わせとすることができる。
【0105】
[0110] 本明細書に記載のフレームワークは、方法、処理、装置、システム、または製造品、たとえば、非一時的コンピュータ可読媒体もしくはデバイスとして実装できることを理解されたい。説明の目的で、本フレームワークは、公開されている、または少なくとも信頼できない第三者が利用可能な分散型台帳の状況で説明している場合がある。最新のユースケースとしての一例は、ブロックチェーンベースのシステムを用いたものである。しかしながら、本フレームワークは、機密または秘密情報が信頼できない第三者の手によって、またはそれを介して渡す必要があり得る他の状況にも適用できること、また、本技術が決して分散型台帳またはブロックチェーンの用途に限定されないことを理解されたい。
【0106】
[0111] コンピュータシステム600は、リモートもしくは分散型のクラウドコンピューティングソリューション、ローカルもしくはオンプレミスのソフトウェア(たとえば、「オンプレミス」のクラウドベースのソリューション)、「サービスとしての」モデル(たとえば、サービスとしてのコンテンツ(CaaS)、サービスとしてのデジタルコンテンツ(DCaaS)、サービスとしてのソフトウェア(SaaS)、サービスとしての管理対象ソフトウェア(MSaaS)、サービスとしてのプラットフォーム(PaaS)、サービスとしてのデスクトップ(DaaS)、サービスとしてのフレームワーク(FaaS)、サービスとしてのバックエンド(BaaS)、サービスとしてのモバイルバックエンド(MBaaS)、サービスとしてのインフラストラクチャ(IaaS)、サービスとしてのデータベース(DBaaS)、など)、および/または前述の例の任意の組み合わせを含むハイブリッドモデル、あるいは他のサービスもしくは配信パラダイムを含むがこれらに限定されない任意の配信パラダイムを介して任意のアプリケーションおよび/またはデータにアクセスするかまたはこれらをホストするクライアントまたはサーバとすることができる。
【0107】
[0112] 任意の適用可能なデータ構造、ファイルフォーマット、およびスキーマは、JavaScriptオブジェクト表記(JSON)、拡張マークアップ言語(XML)、さらに別のマークアップ言語(YAML)、拡張ハイパーテキストマークアップ言語(XHTML)、ワイヤレスマークアップ言語(WML)、MessagePack、XMLユーザインターフェース言語(XUL)、または他の機能的に類似した表現を含むがこれらに限定されない規格から、単独でまたは組み合わせによって導出することができる。あるいは、独自のデータ構造、フォーマット、またはスキーマを、排他的に、または知られている規格もしくはオープン規格と組み合わせて使用することができる。
【0108】
[0113] 任意の関連するデータ、ファイル、および/またはデータベースは、人間が読めるフォーマット、たとえば、数値、テキスト、グラフィック、またはマルチメディアのフォーマットで、さらには、他の可能なフォーマットの中でもとりわけ、様々なタイプのマークアップ言語などで、記憶、取得、アクセス、および/または伝送することができる。代替的には、または上記のフォーマットと組み合わせて、データ、ファイル、および/またはデータベースは、バイナリの、エンコードされた、圧縮された、および/または暗号化されたフォーマット、あるいは他の任意の機械可読フォーマットで、記憶、検索、アクセス、および/または伝送することができる。
【0109】
[0114] 様々なシステムおよびレイヤ間のインターフェースまたは相互接続は、任意の数のメカニズム、たとえば、任意の数のプロトコル、プログラムフレームワーク、フロアプラン、またはアプリケーションプログラミングインターフェース(API)、たとえば、限定はしないが、ドキュメントオブジェクトモデル(DOM)、ディスカバリサービス(DS)、NSUserDefaults、ウェブサービス記述言語(WSDL)、メッセージ交換パターン(MEP)、ウェブ分散データ交換(WDDX)、ウェブハイパーテキストアプリケーションテクノロジーワーキンググループ(WHATWG)HTML5ウェブメッセージング、表現状態転送(RESTまたはRESTfulウェブサービス)、拡張可能ユーザインターフェースプロトコル(XUP)、シンプルオブジェクトアクセスプロトコル(SOAP)、XMLスキーマ定義(XSD)、XMLリモートプロシージャコール(XML-RPC)、または同様の機能および結果を実現し得るオープンもしくは独自の他の任意のメカニズムを使用することができる。
【0110】
[0115] そのようなインターフェースまたは相互接続は、統一資源識別子(URI)を利用することもでき、これは、統一資源位置指定子(URL)または統一資源名(URN)をさらに含むことができる。他の形式の統一されたおよび/または一意の識別子、位置指定子、または名前を、排他的に、または上記のような形式と組み合わせて使用することができる。
【0111】
[0116] 上記のプロトコルまたはAPIはいずれも、手続き型、関数型、またはオブジェクト指向の任意のプログラミング言語とインターフェースするかまたはこれで実装することができ、コンパイルまたは解釈実行することができる。非限定的な例は、C、C++、C#、Objective-C、Java(登録商標)、Scala、Clojure、Elixir、Swift(登録商標)、Go、Perl、PHP、Python、Ruby、JavaScript(登録商標)、WebAssembly、または実質的に任意の他の言語を、他の多くの非限定的な例の中でもとりわけ、Node.js、V8、Knockout、jQuery、Dojo(登録商標)、Dijit、OpenUI5、AngularJS、Express.js、Backbone.js、Ember.js、DHTMLX、Vue、React、Electronなどを含むがこれらに限定されない、任意の種類のフレームワーク、実行時環境、仮想マシン、インタープリタ、スタック、エンジン、または同様のメカニズムにおける、他の任意のライブラリまたはスキーマと共に含む。
【0112】
[0117] いくつかの実施形態では、制御ロジック(ソフトウェア)が記憶された有形の非一時的なコンピュータが使用可能または読み取り可能な媒体を含む有形の非一時的な装置または製造品を、本明細書ではコンピュータプログラム製品またはプログラムストレージデバイスと呼ぶこともある。これには、コンピュータシステム600、メインメモリ608、二次メモリ610、リムーバブルストレージユニット618および622、ならびに前述の任意の組み合わせを具現化する有形の製造品が含まれるが、これらに限定されない。そのような制御ロジックは、1つまたは複数のデータ処理デバイス(たとえば、コンピュータシステム600)によって実行された場合に、そのようなデータ処理デバイスに、本明細書に記載のように動作させることができる。
【0113】
[0118] 本開示に含まれる教示に基づいて、図6に示したもの以外のデータ処理デバイス、コンピュータシステム、および/またはコンピュータアーキテクチャを使用して本開示の実施形態を作成および使用する方法は、関連技術の当業者には明らかであろう。具体的には、実施形態は、本明細書に記載したもの以外のソフトウェア、ハードウェア、および/またはオペレーティングシステムの実装を用いて動作することができる。
【0114】
結論
[0119] 発明を実施するための形態のセクションは、特許請求の範囲を解釈するために使用されることを意図しているが、他の全てのセクションについてはそうではないことを理解されたい。他のセクションは、発明者が企図した1つまたは複数であって全てではない例示的な実施形態を記載している場合があり、したがって、決して本開示または添付の特許請求の範囲を限定することを意図したものではない。
【0115】
[0120] 本開示では例示的な分野および用途の例示的な実施形態を説明しているが、本開示がそれらに限定されないことを理解されたい。他の実施形態およびそれらの修正が可能であり、本開示の範囲および趣旨内にある。たとえば、この段落の一般性を制限することなく、実施形態は、図示したおよび/または本明細書で説明したソフトウェア、ハードウェア、ファームウェア、および/またはエンティティに限定されない。さらに、実施形態は(本明細書に明示的に記載しているか否かにかかわらず)、本明細書に記載した例以外の分野および用途に多大な有用性を有する。
【0116】
[0121] 本明細書では、指定された機能およびそれらの関係の実装を示す機能的構成ブロックを用いて、実施形態を説明している。これらの機能的構成ブロックの境界は、説明の便宜上、本明細書では任意に規定している。指定された機能および関係(またはそれらの同等物)が適切に実行される限り、代替の境界を規定することができる。また、代替の実施形態は、本明細書に記載したものとは異なる順序を使用して、機能ブロック、工程、動作、方法などを実行することができる。
【0117】
[0122] 本明細書における「一実施形態」、「実施形態」、「例示的な一実施形態」、「いくつかの実施形態」、または同様の句への言及は、記載した実施形態が特定の特徴、構造、または特性を含むことができるが、全ての実施形態が必ずしもその特定の特徴、構造、または特性を含むことができるとは限らないということを示している。さらに、そのような句は、必ずしも同一の実施形態を指すとは限らない。さらに、特定の特徴、構造、または特性を一実施形態に関連して説明している場合、そのような特徴、構造、または特性を他の実施形態に組み込むことは、本明細書で明示的に言及または説明しているか否かにかかわらず、関連技術の当業者の知識の範囲内にあろう。
【0118】
[0123] さらに、いくつかの実施形態は、「結合された」および「接続された」という表現、ならびにそれらの派生語を使用して、説明している場合がある。これらの用語は、必ずしも互いに同義語であることを意図しているわけではない。たとえば、いくつかの実施形態は、2つ以上の要素が互いに直接的に物理的または電気的に接触していることを示すために、「接続された」および/または「結合された」という用語を使用して説明している場合がある。しかしながら、「結合された」という用語は、2つ以上の要素が互いに直接的に接触していないが、それでも互いに協力または相互作用することを意味する場合もある。
【0119】
[0124] 本開示の幅広さおよび範囲は、上述の例示的な実施形態のいずれによっても限定されるべきではなく、以下の特許請求の範囲およびそれらの均等物に従ってのみ定義されるべきである。
図1
図2
図3
図4
図5
図6
【手続補正書】
【提出日】2024-01-25
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
少なくとも1つのコンピュータプロセッサによって、
識別されたアイテムに関連する入力を受信することと、
前記入力に基づいてデータベースクエリを生成することと、
前記少なくとも1つのコンピュータプロセッサによって、前記データベースクエリへの応答を受信することであって、前記応答は、複数の同等アイテムを含み、前記複数の同等アイテムは前記識別されたアイテムに類似しており、前記応答は、前記複数の同等アイテムに対応する値の範囲を含む、前記複数の同等アイテムの対応するメタデータをさらに含む、受信することと、
前記少なくとも1つのコンピュータプロセッサによって、前記複数の同等のアイテムの前記対応するメタデータに少なくとも基づいて、前記値の範囲の少なくとも2つのの確率スコアを生成することと、
前記少なくとも1つのコンピュータプロセッサによって、前記値の範囲の前記少なくとも2つの値の前記確率スコアを前記生成することに少なくとも基づいて、少なくとも提案値を、さらなる入力を求めるプロンプトと共に出力することと、
を含む、コンピュータ実装方法。
【請求項2】
前記少なくとも1つのコンピュータプロセッサによって、前記値の範囲の前記少なくとも2つの値の前記確率スコアを前記生成することに少なくとも基づいて、少なくとも低い値及び高い値を、さらなる入力を求めるプロンプトと共に出力すること、
をさらに含む、請求項1に記載の方法。
【請求項3】
前記少なくとも1つのコンピュータプロセッサによって、前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
前記少なくとも1つのコンピュータプロセッサによって、少なくとも前記さらなる入力に基づいて、前記値の範囲の前記少なくとも2つの値の前記確率スコアを更新することと、
前記少なくとも1つのコンピュータプロセッサによって、前記値の範囲の前記少なくとも2つの値のうちの1つの前記更新された確率スコアを少なくとも出力することと、
をさらに含む、請求項1に記載の方法。
【請求項4】
前記少なくとも1つのコンピュータプロセッサによって、前記複数の同等アイテムの前記対応するメタデータと、前記値の範囲の前記少なくとも2つの値の前記確率スコアを前記生成することと、に少なくとも基づいて、時間値を出力すること、をさらに含む、請求項1に記載の方法。
【請求項5】
前記少なくとも1つのコンピュータプロセッサによって、前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
前記少なくとも1つのコンピュータプロセッサによって、前記さらなる入力に基づいて、前記値の範囲の前記少なくとも2つの値の前記確率スコアと前記時間値の少なくとも一方を更新することと、
前記少なくとも1つのコンピュータプロセッサによって、前記値の範囲の前記少なくとも2つの値のうちの1つの前記更新された確率スコアと前記時間値との少なくとも1つを出力することと、
をさらに含む、請求項4に記載の方法。
【請求項6】
前記少なくとも1つのコンピュータプロセッサによって、少なくとも1つのメタデータエントリに基づいて、前記識別されたアイテムの検索ランキングを修正すること、をさらに含む、請求項1に記載の方法。
【請求項7】
前記データベースクエリへの前記応答は、少なくとも1つのパブリックソースまたは少なくとも1つのサードパーティソースから得られる少なくとも1つのデータエントリを含む、請求項1に記載の方法。
【請求項8】
メモリと、
前記メモリに結合された少なくとも1つのプロセッサと、
を備え、前記少なくとも1つのプロセッサは、
識別されたアイテムに関連する入力を受信することと、
前記入力に基づいてデータベースクエリを生成することと、
前記少なくとも1つのコンピュータプロセッサによって、前記データベースクエリへの応答を受信することであって、前記応答は、複数の同等アイテムを含み、前記複数の同等アイテムは前記識別されたアイテムに類似しており、前記応答は、前記複数の同等アイテムに対応する値の範囲を含む、前記複数の同等アイテムの対応するメタデータをさらに含む、受信することと、
前記少なくとも1つのコンピュータプロセッサによって、前記複数の同等のアイテムの前記対応するメタデータに少なくとも基づいて、前記値の範囲の少なくとも2つのの確率スコアを生成することと、
前記少なくとも1つのコンピュータプロセッサによって、前記値の範囲の前記少なくとも2つの値の前記確率スコアを前記生成することに少なくとも基づいて、少なくとも提案値を、さらなる入力を求めるプロンプトと共に出力することと、
を行うように構成される、システム。
【請求項9】
前記少なくとも1つのコンピュータプロセッサは、
前記値の範囲の前記少なくとも2つの値の前記確率スコアを前記生成することに少なくとも基づいて、少なくとも低い値及び高い値を、さらなる入力を求めるプロンプトと共に出力すること、
をさらに含む、請求項8に記載のシステム。
【請求項10】
前記少なくとも1つのコンピュータプロセッサは、
前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
少なくとも前記さらなる入力に基づいて、前記値の範囲の前記少なくとも2つの値の前記確率スコアを更新することと、
前記値の範囲の前記少なくとも2つの値のうちの1つの前記更新された確率スコアを少なくとも出力することと、
をさらに含む、請求項8に記載のシステム。
【請求項11】
前記少なくとも1つのコンピュータプロセッサは、
前記複数の同等アイテムの前記対応するメタデータと、前記値の範囲の前記少なくとも2つの値の前記確率スコアを前記生成することと、に少なくとも基づいて、時間値を出力すること、をさらに含む、請求項8に記載のシステム。
【請求項12】
前記少なくとも1つのコンピュータプロセッサは、
前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
前記さらなる入力に基づいて、前記値の範囲の前記少なくとも2つの値の前記確率スコアと前記時間値の少なくとも一方を更新することと、
前記値の範囲の前記少なくとも2つの値のうちの1つの前記更新された確率スコアと前記時間値との少なくとも1つを出力することと、
をさらに含む、請求項11に記載のシステム。
【請求項13】
前記少なくとも1つのコンピュータプロセッサは、
少なくとも1つのメタデータエントリに基づいて、前記識別されたアイテムの検索ランキングを修正すること、をさらに含む、請求項8に記載のシステム。
【請求項14】
前記データベースクエリへの前記応答は、少なくとも1つのパブリックソースまたは少なくとも1つのサードパーティソースから得られる少なくとも1つのデータエントリを含む、請求項8に記載のシステム。
【請求項15】
命令が記憶された非一時的コンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのコンピューティングデバイスによって実行された場合に、前記少なくとも1つのコンピューティングデバイスに動作を実行させ、前記動作は、
識別されたアイテムに関連する入力を受信することと、
前記入力に基づいてデータベースクエリを生成することと、
前記データベースクエリへの応答を受信することであって、前記応答は複数の同等アイテムを含み、前記複数の同等アイテムは前記識別されたアイテムに類似しており、前記応答は、前記複数の同等アイテムに対応するの範囲を含む、前記複数の同等アイテムの対応するメタデータをさらに含む、受信することと、
前記複数の同等アイテムの前記対応するメタデータに少なくとも基づいて、前記の範囲の少なくとも2つのの確率スコアを生成することと、
前記の範囲の前記少なくとも2つのの前記確率スコアを前記生成することに少なくとも基づいて、少なくとも提案を、さらなる入力を求めるプロンプトと共に出力することと、
を含む、非一時的コンピュータ可読記憶媒体。
【請求項16】
前記動作は、
前記の範囲の前記少なくとも2つのの前記確率スコアを前記生成することに少なくとも基づいて、少なくとも低いおよび高いを、さらなる入力を求める前記プロンプトと共に出力すること、
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項17】
前記動作は、
前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
少なくとも前記さらなる入力に基づいて、前記の範囲の前記少なくとも2つのの時間値および前記確率スコアのうちの少なくとも一方を更新することと、
前記の範囲の前記少なくとも2つののうちの1つの前記更新された確率スコアを少なくとも出力することと、
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項18】
前記動作は、
前記複数の同等アイテムの前記対応するメタデータと、前記の範囲の前記少なくとも2つのの前記確率スコアを前記生成することと、に少なくとも基づいて、時間値を出力すること
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【請求項19】
前記動作は、
前記さらなる入力を求める前記プロンプトに応じた前記さらなる入力を受信することと、
少なくとも前記さらなる入力に基づいて、前記の範囲の前記少なくとも2つのの前記確率スコアを更新することと、
前記の範囲の前記少なくとも2つの金額のうちの1つの前記時間値および前記更新された確率スコアのうちの少なくとも一方を出力することと、
をさらに含む、請求項18に記載の非一時的コンピュータ可読記憶媒体。
【請求項20】
前記動作は、
少なくとも1つのメタデータエントリに基づいて、前記識別されたアイテムの検索ランキングを修正すること
をさらに含む、請求項15に記載の非一時的コンピュータ可読記憶媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0111
【補正方法】変更
【補正の内容】
【0111】
[0116] 上記のプロトコルまたはAPIはいずれも、手続き型、関数型、またはオブジェクト指向の任意のプログラミング言語とインターフェースするかまたはこれで実装することができ、コンパイルまたは解釈実行することができる。非限定的な例は、C、C++、C#、Objective-C、Java(登録商標)、Scala、Clojure、Elixir、Swift(登録商標)、Go、Perl、PHP、Python、Ruby、JavaScript(登録商標)、WebAssembly、または実質的に任意の他の言語を、他の多くの非限定的な例の中でもとりわけ、Node.js、V8、Knockout、jQuery、Dojo(登録商標)、Dijit、OpenUI5、AngularJS、Express.js、Backbone.js、Ember.js、DHTMLX、Vue、React、Electronなどを含むがこれらに限定されない、任意の種類のフレームワーク、実行時環境、仮想マシン、インタープリタ、スタック、エンジン、または同様のメカニズムにおける、他の任意のライブラリまたはスキーマと共に含む。
【外国語明細書】