JP2019537120A - 画像解析および予測に基づく視覚検索 - Google Patents

画像解析および予測に基づく視覚検索 Download PDF

Info

Publication number
JP2019537120A
JP2019537120A JP2019520457A JP2019520457A JP2019537120A JP 2019537120 A JP2019537120 A JP 2019537120A JP 2019520457 A JP2019520457 A JP 2019520457A JP 2019520457 A JP2019520457 A JP 2019520457A JP 2019537120 A JP2019537120 A JP 2019537120A
Authority
JP
Japan
Prior art keywords
image
publications
publication
signature
interest
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019520457A
Other languages
English (en)
Other versions
JP6867479B2 (ja
Inventor
ゴラクナート ケール、アジンキャ
ゴラクナート ケール、アジンキャ
ヤン、ファン
ワン、チャオソン
キアプル、モハンマドハディ
ピラムトゥ、ロビンソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
eBay Inc
Original Assignee
eBay Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by eBay Inc filed Critical eBay Inc
Publication of JP2019537120A publication Critical patent/JP2019537120A/ja
Priority to JP2021065950A priority Critical patent/JP2021108188A/ja
Application granted granted Critical
Publication of JP6867479B2 publication Critical patent/JP6867479B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/532Query formulation, e.g. graphical querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • G06F18/2113Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/46Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
    • G06V10/462Salient features, e.g. scale invariant feature transforms [SIFT]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/771Feature selection, e.g. selecting representative features from a multi-dimensional feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Abstract

ネットワークサービスに新しい機能を追加するための方法、システムおよびコンピュータプログラムが提示されている。方法は、関心対象を表す画像を受信することを含む。カテゴリセットは、関心対象について決定され、画像シグネチャは、画像について生成される。カテゴリセットおよび画像シグネチャを使用して、方法により、パブリケーションデータベース内のパブリケーションのセットが識別され、各パブリケーションに順位が割り当てられる。方法により、コンピューティングデバイスにおいてパブリケーションの順位付けリストを提示させる。画像は、コンピューティングデバイスから受信されたものである。

Description

本明細書に開示される主題は、全般的には、ネットワークサービス内の画像処理および認識を容易にする特殊用途機械の技術分野に関し、そのような特殊用途機械のソフトウェア構成のコンピュータ化された変形形態およびそのような変形形態に対する改良を含むもので、そのような特殊用途機械が画像認識、画像シグネチャおよびカテゴリ予測に基づいて画像を識別することを容易にする他の特殊用途機械と比較して改良されるようになる技術に関する。
従来の画像検索では時間がかかるのは、現在の検索ツールは、柔軟性がなく限定された検索ユーザインタフェースを提供するためである。選択が多すぎて時間がかかりすぎると、ページおよび結果のページを閲覧するのに無駄が生じる場合がある。従来のツールの技術的限界によりとらわれた場合、単一の画像または一組の画像を使用してユーザが望むもの、たとえば、ユーザの意図をユーザが簡単に伝えることが難しいかもしれない。
現在の解決策は、検索に利用可能なドキュメントの規模に合わせて構成されておらず、検索のために供給された画像に対するコンテキストおよび適合性を提供するために、ユーザ提供の用語を使用している場合が多い。無関係な結果が表示されることがよくあると同時に、何千もの検索結果によって生じるノイズの中に最良の結果が埋もれている場合がある。
いくつかの例示的な実施形態による、ネットワーク化システムを示すブロック図である。 いくつかの例示的な実施形態による、インテリジェントアシスタントの動作を示す図である。 いくつかの例示的な実施形態による、人工知能(AI)フレームワークの特徴を示す図である。 いくつかの例示的な実施形態による、サービスアーキテクチャを示す図である。 いくつかの例示的な実施形態による、AIフレームワークを実施するためのブロック図である。 いくつかの例示的な実施形態による、例示的なコンピュータビジョンコンポーネントのブロック図である。 いくつかの例示的な実施形態による、画像認識、画像シグネチャおよびカテゴリ予測に基づいて一組の画像を識別するための方法のフローチャートである。 いくつかの例示的な実施形態による、インテリジェントアシスタントのユーザインタフェース画面を示す例示的なインタフェースの図である。 いくつかの例示的な実施形態による、インテリジェントアシスタントのユーザインタフェース画面を示す例示的なインタフェースの図である。 いくつかの例示的な実施形態による、画像認識、画像シグネチャおよびカテゴリ予測に基づいて一組の画像を識別するための方法のフローチャートである。 いくつかの例示的な実施形態による、画像認識、画像シグネチャおよびカテゴリ予測に基づいて一組の画像を識別するための方法のフローチャートである。 いくつかの例示的な実施形態による、画像認識、画像シグネチャおよびカテゴリ予測に基づいて一組の画像を識別するための方法のフローチャートである。 いくつかの例示的な実施形態による、機械にインストールしてもよいソフトウェアアーキテクチャの一例を示すブロック図である。
例示的な方法、システムおよびコンピュータプログラムは、入力画像から実行された画像認識、画像シグネチャ生成およびカテゴリ予測などの新しい機能をネットワークサービスに追加することを対象とする。複数の例は、可能性のある変形例の単なる代表例である。特に明示的に述べられていない限り、構成要素および機能は、任意選択的であり、組み合わせるかまたはさらに分割してもよく、動作は、次々に変化してもよく、または組み合わせるかもしくはさらに分割してもよい。以下の記載では、説明を目的として、その完全な理解を与えるため、様々な具体的な詳細について記載している。しかしながら、本主題がこれらの具体的な詳細なしで実施されてもよいことは当業者には明らかであろう。
全般的には、インテリジェントパーソナルアシスタントシステムを可能にすることは、本明細書で「ボット(bot)」と呼ばれるインテリジェントオンラインパーソナルアシスタントを提供するために既存のメッセージングプラットフォームのファブリックに浸透する、AIアーキテクチャとも呼ばれるスケーラブル人工知能(AI)フレームワークを含む。AIフレームワークは、人間のユーザとインテリジェントオンラインパーソナルアシスタントとの間のコミュニケーションの予測順で、インテリジェントな個人向けの答えを提供する。
オーケストレータコンポーネント(orchestrator component)は、AIアーキテクチャ内の構成要素の特定の統合および相互作用をもたらす。オーケストレータは、複数のサービスによって提供される機能を統合するコンダクタ(conductor)として機能する。一態様では、オーケストレータコンポーネントは、AIフレームワークのどの部分を起動するかを決定する(たとえば、画像入力についてはコンピュータビジョンサービスを起動し、入力音声については音声認識を起動する)。
全体的な態様は、オーケストレータサーバによって処理および検索のための入力画像を受信するための動作を含む方法を含む。入力画像は、単一の画像、一組の画像またはビデオストリーム内の一組のフレームであってもよい。ユーザは、ユーザデバイス上のアプリケーションを介してオーケストレータサーバにアクセスし、アイテム(たとえば、関心対象、関心対象の一部または製品)を含む画像またはビデオストリームを取得する。オーケストレータサーバは、コンピュータビジョンコンポーネントを使用して画像を処理し、画像シグネチャ(image signature)および画像内のアイテムの一組のカテゴリを生成する。次いで、オーケストレータサーバは、画像シグネチャおよび一組のカテゴリを、オーケストレータサーバによってアクセス可能な一組のパブリケーションと照合する。次いで、オーケストレータサーバは、一組のパブリケーションをユーザデバイスの順序付きリストに提示する。オーケストレータサーバは、画像シグネチャおよび一組のカテゴリを生成し、一組のパブリケーションを識別し、さらなるユーザ対話なしに自動的に順序付きリストをユーザデバイスに提示してもよい。画像がビデオの一組のフレーム内にあるとき、オーケストレータサーバは、画像シグネチャおよび一組のカテゴリを生成し、一組のパブリケーションを識別し、ビデオがキャプチャされている間にリアルタイムで順序付きリストを提示してもよい。
いくつかの実施形態では、オーケストレータサーバは、ユーザとネットワークサービスとの間の対話の種類を識別するユーザアクティビティのためのシーケンス仕様(sequence specification)を受信する。ネットワークサービスは、オーケストレータサーバおよび1つまたは複数のサービスサーバを含み、シーケンス仕様は、ユーザアクティビティを実行するための1つまたは複数のサービスサーバからの、オーケストレータサーバと1つまたは複数の送信先サーバの組との間の一連の対話を含む。方法はまた、ユーザアクティビティが検出されたときにシーケンス仕様を実行するようにオーケストレータサーバを構成すること、ユーザ入力を処理してユーザ入力に関連付けられたユーザの意図を検出すること、ユーザの意図がユーザアクティビティに対応すると判断すること、を含む。オーケストレータサーバは、シーケンス仕様の1つまたは複数のサービスサーバの組を呼び出すことによってシーケンス仕様を実行し、シーケンス仕様の実行により、ユーザ入力において検出されたユーザの意図に応じた結果がユーザに提示される。
全体的な態様は、複数の命令を有するメモリおよび1つまたは複数のコンピュータプロセッサを含むオーケストレータサーバを含む。複数の命令は、1つまたは複数のコンピュータプロセッサによって実行されるとき、1つまたは複数のコンピュータプロセッサに、ユーザとネットワークサービスとの間の対話の種類を識別するユーザアクティビティのシーケンス仕様の受信を含む動作を実行させる。ネットワークサービスは、オーケストレータサーバおよび1つまたは複数のサービスサーバを含み、シーケンス仕様は、ユーザアクティビティを実行するための1つまたは複数のサービスサーバからの、オーケストレータサーバと1つまたは複数のサービスサーバの組との間の一連の対話を含む。動作はまた、ユーザアクティビティが検出されたときにシーケンス仕様を実行するようにオーケストレータサーバを構成すること、ユーザ入力を処理してユーザ入力に関連付けられたユーザの意図を検出すること、ユーザの意図がユーザアクティビティに対応すると判断すること、を含む。オーケストレータサーバは、シーケンス仕様の1つまたは複数のサービスサーバの組を呼び出すことによってシーケンス仕様を実行し、シーケンス仕様の実行により、ユーザ入力において検出されたユーザの意図に応じた結果がユーザに提示される。
全体的な一態様は、機械によって実行されるとき、オーケストレータサーバによって、ユーザとネットワークサービスとの間の対話の種類を識別するユーザアクティビティのシーケンス仕様を受信することを含む動作を機械に実行させる複数の命令を含む機械可読記憶媒体を含む。ネットワークサービスは、オーケストレータサーバおよび1つまたは複数のサービスサーバを含み、シーケンス仕様は、ユーザアクティビティを実行するための1つまたは複数のサービスサーバからの、オーケストレータサーバと1つまたは複数のサービスサーバの組との間の一連の対話を含む。動作はまた、ユーザアクティビティが検出されたときにシーケンス仕様を実行するようにオーケストレータサーバを構成すること、ユーザ入力を処理してユーザ入力に関連付けられたユーザの意図を検出すること、ユーザの意図がユーザアクティビティに対応すると判断すること、を含む。オーケストレータサーバは、シーケンス仕様の1つまたは複数のサービスサーバの組を呼び出すことによってシーケンス仕様を実行し、シーケンス仕様の実行により、ユーザ入力において検出されたユーザの意図に応じた結果がユーザに提示される。
添付の図面の様々な図面は、本開示の例示的な実施形態を単に例示するものであり、その範囲を限定すると見なすことはできない。
図1は、いくつかの例示的な実施形態による、ネットワーク化システムを示すブロック図である。図1を参照すると、高レベルのクライアントサーバベースのネットワークアーキテクチャ100の例示的な実施形態が示されている。ネットワーク化システム102は、ネットワークベースのマーケットプレイスまたは支払いシステムの例示的な形態では、ネットワーク104(たとえば、インターネットまたはワイドエリアネットワーク(WAN))を介して1つまたは複数のクライアントデバイス110にサーバ側機能を提供する。図1は、たとえば、クライアントデバイス110上で実行するウェブクライアント112(たとえば、Microsoft(登録商標)Corporation(ワシントン州レドモンド)によって開発されたInternet Explorer(登録商標)ブラウザなどのブラウザ)、アプリケーション114およびプログラマチッククライアント116を示す。
クライアントデバイス110は、携帯電話、デスクトップコンピュータ、ラップトップ、携帯情報端末(PDA)、スマートフォン、タブレット、ウルトラブック、ネットブック、ラップトップ、マルチプロセッサシステム、マイクロプロセッサベースもしくはプログラム可能な家庭用電化製品、ゲーム機、セットトップボックスまたはユーザがネットワーク化システム102にアクセスするために利用することができる他の任意の通信デバイスを含んでもよいが、これらに限定されない。いくつかの実施形態では、クライアントデバイス110は、(たとえば、ユーザインタフェースの形態で)情報を表示するための表示モジュール(図示せず)を含んでもよい。さらなる実施形態では、クライアントデバイス110は、タッチスクリーン、加速度計、ジャイロスコープ、カメラ、マイクロフォン、全地球測位システム(GPS)デバイスなどのうちの1つまたは複数を含んでもよい。クライアントデバイス110は、ネットワーク化システム102内のデジタルアイテムを含む取引を実行するために使用されるユーザのデバイスであってもよい。一実施形態では、ネットワーク化システム102は、製品リストの要求に応答し、ネットワークベースのマーケットプレイスで入手可能な製品のアイテムリストを含むパブリケーション(publication)を発行し、これらのマーケットプレイス取引に対する支払いを管理するネットワークベースのマーケットプレイスである。1つまたは複数のユーザ106は、人、機械またはクライアントデバイス110と対話する他の手段であってもよい。実施形態では、ユーザ106は、ネットワークアーキテクチャ100の一部ではないが、クライアントデバイス110または他の手段を介してネットワークアーキテクチャ100と対話することができる。たとえば、ネットワーク104の1つまたは複数の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、無線LAN(WLAN)、ワイドエリアネットワーク(WAN)、無線WAN(WWAN)、メトロポリタンエリアネットワーク(MAN)、インターネットの一部、公衆交換電話網(PSTN)の一部、携帯電話ネットワーク、無線ネットワーク、WiFiネットワーク、WiMaxネットワーク、他の種類のネットワークまたは2つ以上のそのようなネットワークの組み合わせであってもよい。
クライアントデバイス110のそれぞれは、ウェブブラウザ、メッセージングアプリケーション、電子メール(eメール)アプリケーション、電子商取引サイトアプリケーション(マーケットプレイスアプリケーションとも称する)などの1つまたは複数のアプリケーション(「アプリ」とも称する)を含んでもよいが、これらに限定されない。いくつかの実施形態では、電子商取引サイトアプリケーションがクライアントデバイス110のうちの所与の1つに含まれる場合、このアプリケーションは、必要に応じて、ローカルに利用可能ではないデータまたは処理能力(たとえば、販売可能なアイテムのデータベースへのアクセス、ユーザの認証、支払い方法の検証など)について、ネットワーク化システム102と通信するように構成されたアプリケーションと共にユーザインタフェースおよび少なくともいくつかの機能をローカルに提供するように構成される。逆に、電子商取引サイトアプリケーションがクライアントデバイス110に含まれていない場合、クライアントデバイス110は、そのウェブブラウザを使用してネットワーク化システム102上でホストされている電子商取引サイト(またはその別形式)にアクセスすることができる。
1つまたは複数のユーザ106は、人、機械またはクライアントデバイス110と対話する他の手段であってもよい。例示的な実施形態では、ユーザ106は、ネットワークアーキテクチャ100の一部ではないが、クライアントデバイス110または他の手段を介してネットワークアーキテクチャ100と対話することができる。たとえば、ユーザは、入力(たとえば、タッチスクリーン入力または英数字入力)をクライアントデバイス110に提供し、その入力は、ネットワーク104を介してネットワーク化システム102に伝達される。この事例では、ネットワーク化システム102は、ユーザからの入力を受信したことに応答して、ユーザに提示されるべき情報をネットワーク104を介してクライアントデバイス110に伝達する。このようにして、ユーザは、クライアントデバイス110を使用してネットワーク化システム102と対話することができる。
アプリケーションプログラムインタフェース(API)サーバ120およびウェブサーバ122は、1つまたは複数のアプリケーションサーバ140に接続され、それぞれにプログラマチックインタフェースおよびウェブインタフェースを提供する。アプリケーションサーバ140は、インテリジェンスフレームワーク144を含むインテリジェントパーソナルアシスタントシステム142をホストし、それらのそれぞれは、1つまたは複数のモジュールまたはアプリケーションを含んでもよく、それらのそれぞれは、ハードウェア、ソフトウェア、ファームウェアまたはそれらの任意の組み合わせとして実施されてもよい。
アプリケーションサーバ140は、次に、1つまたは複数の情報記憶リポジトリまたはデータベース126へのアクセスを容易にする1つまたは複数のデータベースサーバ124に接続されていることが示されている。例示的な実施形態では、データベース226は、パブリケーションシステム242にポストされる(posted)こととなる情報(たとえば、パブリケーションまたはリスト)を記憶する記憶装置である。データベース226はまた、例示的な実施形態に従ってデジタルアイテム情報を記憶してもよい。
加えて、サードパーティサーバ130上で実行するサードパーティアプリケーション132は、APIサーバ120によって提供されるプログラマチックインタフェース(programmatic interface)を介してネットワーク化システム102へのプログラムによるアクセスを有するものとして示されている。たとえば、ネットワーク化システム102から検索された情報を利用するサードパーティアプリケーション132は、サードパーティによってホストされているウェブサイト上の1つまたは複数の特徴または機能をサポートする。たとえば、サードパーティウェブサイトは、ネットワーク化システム102の関連アプリケーションによってサポートされている1つまたは複数の販売促進機能、マーケットプレイス機能または支払い機能を提供する。
さらに、図1に示されているクライアントサーバベースのネットワークアーキテクチャ100は、クライアントサーバアーキテクチャを採用しているが、本発明の主題は、当然ながらそのようなアーキテクチャに限定されず、たとえば、分散型またはピアツーピアのアーキテクチャシステムにおける適用も同様によく見出すことができるであろう。様々なパブリケーションシステム102および人工知能フレームワークシステム144はまた、必ずしもネットワーキング機能を有するわけではない、独立型ソフトウェアプログラムとして実施することもできるであろう。
ウェブクライアント112は、ウェブサーバ122によってサポートされるウェブインタフェースを介してインテリジェントパーソナルアシスタントシステム142にアクセスしてもよい。同様に、プログラマチッククライアント116は、APIサーバ216によって提供されるプログラマチックインタフェースを介してインテリジェントパーソナルアシスタントシステム142によって提供される様々なサービスおよび機能にアクセスする。
加えて、サードパーティサーバ130上で実行されているサードパーティアプリケーション132は、APIサーバ120によって提供されるプログラマチックインタフェースを介してネットワーク化システム102へのプログラムによるアクセスを有するものとして示されている。たとえば、ネットワーク化システム102から検索された情報を利用するサードパーティアプリケーション132は、サードパーティによってホストされているウェブサイト上の1つまたは複数の特徴または機能をサポートしてもよい。サードパーティウェブサイトは、たとえば、ネットワーク化システム102の関連アプリケーションによってサポートされる1つまたは複数の販売促進機能、マーケットプレイス機能または支払い機能を提供してもよい。
図2は、いくつかの例示的な実施形態による、インテリジェントアシスタントの動作を示す図である。今日のオンラインショッピングは、人間味がなく単方向性で、会話的ではない。購入者は、自分の希望を伝えるために平易な言葉で話すことができず、意図を伝えることが困難になっている。商取引サイトでの買い物は、通常、製品について販売員や友人と話すよりも困難であるため、購入者が欲しい製品を見つけるのに苦労することがよくある。
一実施形態は、買物客との双方向通信をサポートして買物客のコンテキストを構築し、買物客の意図を理解し、より優れた個別化された買物結果を提供することを可能にする、インテリジェントアシスタントとも称する、パーソナルショッピングアシスタントを提示する。インテリジェントアシスタントは、人間のような自然な対話をし、購入者を容易に助け、将来の購入のために購入者がインテリジェントアシスタントを再利用する可能性を高める。
人工知能フレームワーク144は、ユーザおよび利用可能な在庫を理解して自然言語クエリに応答し、顧客および顧客のニーズを予測し理解することにおいて漸進的な改善をもたらす能力を有する。
人工知能フレームワーク(artificial intelligence framework : AIF)144は、ダイアログマネージャ204、自然言語理解(natural language understanding : NLU)206、コンピュータビジョン(computer vision)208、音声認識210、検索218およびオーケストレータ220を含む。AIF144は、テキスト入力212、画像入力214および音声入力216などの異なる種類の入力を受信して、関連する結果222を生成することができる。本明細書で使用されるとき、AIF144は、対応するサーバによって実施される複数のサービス(たとえば、NLU206、コンピュータビジョン208)を含み、サービスまたはサーバという用語は、サービスおよび対応するサーバを識別するために利用されてもよい。
自然言語理解(NLU)206ユニットは、敬語および口語の両方の自然言語テキスト入力212を処理し、テキストの意図を検出し、関心対象および関心対象の属性などの有用な情報を抽出する。したがって、自然言語ユーザ入力は、追加の知識からの豊富な情報を使用して構造化クエリに変換され、クエリをなおさらに強化することができる。次いで、この情報は、ユーザまたはシステム全体の他の構成要素とのさらなるアクションのためにオーケストレータ220を介してダイアログマネージャ204に渡される。構造化かつ強化されたクエリはまた、照合を改善するために検索218によって取り込まれる。テキスト入力は、製品に対するクエリ、以前のクエリに対する改善または適合するオブジェクトに対する他の情報(たとえば、靴のサイズ)であってもよい。
コンピュータビジョン208は、画像を入力として受け取り、画像認識を実行して画像の特性(たとえば、ユーザが出荷したいアイテム)を識別し、次いでその特性を処理のためにNLU206に転送する。音声認識210は、音声216を入力として受け取り、言語認識を実行して音声をテキストに変換し、次いでそのテキストを処理のためにNLUに転送する。
NLU206は、オブジェクト、そのオブジェクトに関連付けられたアスペクト、検索インタフェース入力を作成する方法および応答を生成する方法を決定する。たとえば、AIF144は、ユーザが探しているものを明確にするためにユーザに質問をしてもよい。これは、AIF144が結果を生成するだけでなく、最適なまたは最適に近い結果222に到達するための一連の対話型動作を作り出してもよいことを意味する。
たとえば、「ナイキの赤い靴はありますか?」という質問に応答して、AIF144は、パラメータ<intent:shopping, statement−type:question, dominant−object:shoes, target:self, color:red, brand:nike>を生成してもよい。「私は妻にサングラスを探しています」という質問に対して、NLUは、<intent:shopping, statement−type:statement, dominant−object:sunglasses, target:wife, target−gender:female>を生成してもよい。
ダイアログマネージャ204は、ユーザのクエリを分析して意味を抽出し、クエリを検索218に送る前に、クエリを改善するために尋ねる必要がある質問があるかどうかを判定するモジュールである。ダイアログマネージャ204は、ユーザと人工知能フレームワーク144との間の以前の通信のコンテキストにおいて現在の通信を使用する。質問は、(たとえば、知識グラフによって提供される)蓄積された知識と、検索が在庫から何を抽出することができるかとの組み合わせに応じて、自動的に生成される。ダイアログマネージャのジョブは、ユーザに対する応答を作成することである。たとえば、ユーザが「こんにちは」と言った場合、ダイアログマネージャ204は、「こんにちは、私の名前はボットです」という応答を生成する。
オーケストレータ220は、人工知能フレームワーク144内の他のサービス間の対話を調整する。オーケストレータ220と他のサービスとの対話について、図5を参照して以下にさらに詳細に説明する。
図3は、いくつかの例示的な実施形態による、人工知能フレームワーク(AIF)144の特徴を示す。AIF144は、ネイティブコマースアプリケーション、チャットアプリケーション、ソーシャルネットワーク、ブラウザなどのいくつかの入力チャネル304と対話することができる。加えて、AIF144は、ユーザによって表現された意図(intent)306を理解する。たとえば、その意図は、良い取引を探しているユーザ、贈り物を探しているユーザ、または特定の製品を買う役目を負ったユーザ、お勧めを探しているユーザなどを含んでもよい。
さらに、AIF144は、ソーシャルネットワーク、電子メール、カレンダー、ニュース、市場動向などの複数のソースから事前データ抽出310を実行する。AIF144は、ユーザの好み、所望の価格帯、サイズ、類似性などのユーザ詳細312について承知している。AIF144は、製品検索、個人化、推奨、チェックアウト機能などのサービスネットワーク内の複数のサービスを容易にする。出力308は、推奨、結果などを含んでもよい。
AIF144は、ユーザの意図(たとえば、ターゲットを絞った検索、比較、買い物、閲覧)、必須パラメータ(たとえば、製品、製品カテゴリ、アイテム)、任意のパラメータ(たとえば、アイテムのアスペクト(aspect)、色、サイズ、場面)および暗黙の情報(たとえば、地理的位置、個人の好み、年齢、性別)を理解するインテリジェントかつ親切なシステムである。AIF144は、平易な言葉で適切に設計された応答で応答する。
たとえば、AIF144は、以下のような入力クエリを処理することができる。「ねえ!ガールフレンドに薄いピンクの靴を探してくれますか?ヒールあり。200ドルまで。よろしく」、「最近、クラシックなジェームス・ディーン風のメンズレザージャケットを検索しました。新しいスターウォーズ映画のほぼハリソン・フォードを想像して。ただし200〜300ドルの価格帯で良質なものを探しています。それは無理かもしれないけれど、見てみたかった!」、または「ノースフェイスの黒いサーモボールジャケットを探しています。」
ハードコードされたシステムの代わりに、AIF144は、継続的な改善のための機械学習機能を備えた設定可能で柔軟なインタフェースを提供する。AIF144は、(ユーザをユーザが望むものに結び付ける)価値、(ユーザおよびユーザの行動から知り学習して正しいアイテムを推薦する)知能、(複数のユーザインタフェースを提供する)利便性、使いやすさ、および(ユーザの時間とお金を節約する)効率性を提供するコマースシステムをサポートする。
図4は、いくつかの実施形態による、サービスアーキテクチャ400を示す図である。サービスアーキテクチャ400は、サービスアーキテクチャが様々なデータセンタまたはクラウドサービスにどのように配置され得るかを説明するために、サービスアーキテクチャの様々な表示を提示する。アーキテクチャ400は、本明細書に記載の実施形態を実施するための好適な環境を表す。
サービスアーキテクチャ402は、クラウドアーキテクチャが通常はユーザ、開発者などにどのように見えるかを表す。アーキテクチャは、概ね、図1の他の表示に表されている、実際の基礎的アーキテクチャ実装の抽象表現である。たとえば、サービスアーキテクチャ402は、サービスアーキテクチャ402に関連付けられた異なる機能およびサービスの両方またはいずれかを表す複数の層を含む。
エクスペリエンスサービス層404は、プラットフォーム(携帯電話、デスクトップなど)の上で実行されるアプリケーション、ウェブベースのプレゼンテーション(モバイルウェブ、デスクトップウェブブラウザなど)などの異なるクライアントプラットフォームにまたがって構築された、エンドカスタマーの観点からのサービスおよび機能の論理グループ分けを表す。これには、ユーザインタフェースをレンダリングすること、適切なユーザインタフェースをレンダリングできるようにクライアントプラットフォームに情報を提供すること、クライアント入力を取得することなどが挙げられる。マーケットプレイスのコンテキストでは、この層に存在するであろうサービスの例は、ホームページ(たとえば、ホームビュー)、アイテムリストの閲覧、検索/検索結果の表示、ショッピングカート、ユーザインタフェースおよび関連サービスの購入、ユーザインタフェースおよび関連サービス販売、販売後の経験(取引の投稿、フィードバックなど)などである。他のシステムのコンテキストでは、経験サービス層404は、システムによって具現化されるそれらのエンドユーザのサービスおよび経験を組み込むと考えられる。
API層406は、ビジネスプロセスおよびコア層との対話を可能にするAPIを含む。これは、サービスアーキテクチャ402に対するサードパーティの開発を可能にし、サードパーティがサービスアーキテクチャ402に加えて追加のサービスを開発することを可能にする。
ビジネスプロセスサービス層408は、提供されたサービスに対するビジネスロジックが存在する場所である。マーケットプレイスのコンテキストでは、この層は、ユーザ登録、ユーザサインイン、リスト作成および公開、ショッピングカートへの追加、希望価格の提示、チェックアウト、請求書の送信、ラベルの印刷、アイテムの出荷、返品などのサービスが実施されると考えられる場所である。ビジネスプロセスサービス層408はまた、様々なビジネスロジックとデータエンティティとの間で調整し、それ故に、共有サービスの構成を表す。この層のビジネスプロセスはまた、一部のクラウドサービスアーキテクチャとの互換性を高めるためにマルチ・テナンシー(multi-tenancy)をサポートすることができる。
データエンティティサービス層410は、直接的なデータアクセスの周囲の分離を強要し、より高いレベルの層が依拠するサービスを含む。したがって、マーケットプレイスのコンテキストでは、この層は、注文管理、金融機関管理、ユーザアカウントサービスなどの基本的なサービスを含むことができる。この層のサービスは、通常、マルチ・テナンシーをサポートする。
インフラストラクチャサービス層412は、実施されているサービスアーキテクチャの種類に特有ではないこれらのサービスを含む。したがって、マーケットプレイスのコンテキストでは、この層のサービスは、マーケットプレイスに特有ではないまたは固有ではないサービスである。したがって、暗号化機能、鍵管理、CAPTCHA、認証および許可、構成管理、ロギング、トラッキング、文書化および管理などの機能がこの層に存在する。
本開示の実施形態は、通常、これらの層のうちの1つまたは複数において実施されることとなる。特に、AIF144ならびにオーケストレータ220およびAIF144の他のサービス。
データセンタ414は、構成スケールユニットと共に様々なリソースプール416を表す。このデータセンタの表示は、クラウドコンピューティングモデルにおけるサービスアーキテクチャ402の実施に伴うスケーリングおよび弾性を示す。リソースプール416は、サーバ(または計算)スケールユニット420、ネットワークスケールユニット418およびストレージスケールユニット422からなる。スケールユニットは、データセンタ内に配置可能な最小のユニットであるサーバ、ネットワークおよび/またはストレージユニットである。スケールユニットにより、必要性が増減するにつれて、より多くの容量を配置または除去することが可能になる。
ネットワークスケールユニット418は、配置することができる1つまたは複数のネットワーク(ネットワークインタフェースユニットなど)を含む。ネットワークは、たとえば、仮想LANを含むことができる。計算スケールユニット420は、通常、プロセッサなどの複数の処理ユニットを含むユニット(サーバなど)を含む。ストレージスケールユニット422は、ディスク、ストレージ接続ネットワーク(SAN)、ネットワーク接続ストレージ(NAS)デバイスなどの1つまたは複数の記憶装置を含む。以下の説明では、これらをまとめてSANとして示す。各SANは、1つまたは複数のボリューム、ディスクなどを含んでもよい。
図4の残りの図は、サービスアーキテクチャ400の他の例を示す。この図は、よりハードウェア重視であり、図4の他の表示においてより論理的なアーキテクチャの基礎となるリソースを示す。クラウドコンピューティングアーキテクチャは、通常、複数のサーバまたは他のシステム424、426を有する。これらのサーバは、複数の実サーバおよび/または仮想サーバを含む。したがって、サーバ424は、仮想サーバ1A、1B、1Cなどと共にサーバ1を含む。
サーバは、ネットワークA428および/またはネットワークB430などの1つまたは複数のネットワークに接続かつ/または相互接続される。サーバはまた、SAN1(436)、SAN2(438)などの複数の記憶装置に接続される。SANは、通常、SANアクセスA432および/またはSANアクセスB434などのネットワークを介してサーバに接続される。
計算スケールユニット420は、通常、プロセッサおよびプロセッサに関連付けられた他のハードウェアのように、サーバ424および/または426のある態様である。ネットワークスケールユニット418は、通常、図示されているネットワークA(428)およびB(432)を含むかまたはそれらを少なくとも利用する。ストレージスケールユニットは、通常、SAN1(436)および/またはSAN2(438)のある態様を含む。したがって、論理サービスアーキテクチャ402は、物理アーキテクチャにマッピングすることができる。
本明細書に記載の実施形態のサービスおよび他の実施は、サーバまたは仮想サーバ上で動作し、様々なハードウェアリソースを利用して、開示された実施形態を実施することとなる。
図5は、いくつかの例示的な実施形態による、AIF144を実装するためのブロック図である。具体的には、図2のインテリジェントパーソナルアシスタントシステム142は、フロントエンドコンポーネント502(front end component : FE)を含むように示され、フロントエンドコンポーネント502によって、インテリジェントパーソナルアシスタントシステム142は、(たとえば、ネットワーク104を介して)ネットワークアーキテクチャ100内の他のシステムと通信する。フロントエンドコンポーネント502は、既存のメッセージングシステムのファブリックと通信することができる。本明細書で使用されるとき、メッセージングファブリックという用語は、Facebookメッセンジャー、Microsoft Cortanaおよび他の「ボット」などのサードパーティプラットフォームに機能を提供することができるAPIおよびサービスの集合体を指す。一例では、メッセージングファブリックは、ユーザが商業目的で対話することを可能にするオンラインコマースエコシステムをサポートすることができる。フロントエンドコンポーネント502の出力は、図1のクライアントデバイス110などのクライアントデバイスのディスプレイに、インテリジェントパーソナルアシスタントとのインタフェースの一部としてレンダリングすることができる。
インテリジェントパーソナルアシスタントシステム142のフロントエンドコンポーネント502は、フロントエンドコンポーネント502をAIF144とリンクするように動作するフロントエンド用のバックエンドコンポーネント504(back end component : BFF)に接続される。人工知能フレームワーク144は、以下に論じるいくつかの構成要素を含む。
一実施形態例では、オーケストレータ220は、人工知能フレームワーク144の内外の構成要素の通信を調整する。AIオーケストレータ220に対する入力モダリティは、コンピュータビジョンコンポーネント208、音声認識コンポーネント210および音声認識コンポーネント210の一部を形成してもよいテキスト正規化コンポーネントから導出される。コンピュータビジョンコンポーネント208は、視覚入力(たとえば、写真)からオブジェクトおよび属性を識別することができる。音声認識コンポーネント210は、音声信号(たとえば、話された発話)をテキストに変換する。テキスト正規化コンポーネントは、たとえば、絵文字をテキストにレンダリングすることによる言語正規化などの入力正規化を行うように動作する。正字法正規化、外国語正規化、会話型テキスト正規化などの他の正規化も可能である。
人工知能フレームワーク144は、ユーザの意図および意図パラメータ(たとえば、必須または任意選択的なパラメータ)を解析かつ抽出するように動作する、自然言語理解(NLU)コンポーネント206をさらに含む。NLUコンポーネント206は、スペル修正機能(スペラ(speller))、パーサ(parser)、名前付きエンティティ認識(named entity recognition : NER)サブコンポーネント、知識グラフおよびワードセンス検出器(word sense detector : WSD)などのサブコンポーネントを含むように示されている。
人工知能フレームワーク144は、(たとえば、検索クエリまたは発話などの入力の)「特異性の完全性」を理解し、次のアクションタイプおよびパラメータ(たとえば、「検索」または「ユーザに追加情報を要求する」)について決定するように動作するダイアログマネージャ204をさらに含む。一例では、ダイアログマネージャ204は、コンテキストマネージャ518および自然言語生成(NLG)コンポーネント512と共同して動作する。コンテキストマネージャ518は、オンラインパーソナルアシスタント(または「ボット」)およびアシスタントの関連人工知能に関するユーザのコンテキストおよび通信を管理する。コンテキストマネージャ518は、2つの部分、すなわち長期履歴および短期記憶を含む。これらの部分の一方または両方へのデータ入力は、たとえば、所定の入力、ボット対話または通信の順番の関連する意図および全てのパラメータおよび全ての関連結果を含むことができる。NLGコンポーネント512は、AIメッセージから自然言語発話を構成するように動作して、インテリジェントボットと対話するユーザに提示する。
検索コンポーネント218もまた人工知能フレームワーク144内に含まれる。図示のように、検索コンポーネント218は、フロントエンドユニットおよびバックエンドユニットを有する。バックエンドユニットは、アイテムおよび製品の在庫を管理し、在庫に対して検索する機能を提供して、意図および意図パラメータの特定のタプルに対して最適化する。人工知能フレームワーク144の一部を形成してもしなくてもよいアイデンティティサービス522コンポーネントは、ユーザプロファイル、たとえば、ユーザ属性の形式の明示的情報(たとえば、「名前」、「年齢」、「性別」、「地理的位置」)だけでなく、「ユーザの関心事」または「類似のペルソナ」などの「情報抽出物」などの形式の暗黙の情報も管理するように動作する。アイデンティティサービス522は、一組のポリシー、APIおよび全てのユーザ情報をエレガントに集中化するサービスを含み、AIF144は、ユーザの希望に対する洞察を得ることが可能になる。さらに、アイデンティティサービス522は、コマースシステムおよびそのユーザを、詐欺または個人情報の悪意ある使用から保護する。
人工知能フレームワーク144の機能は、複数の部分、たとえば、意思決定部分およびコンテキスト部分に設定することができる。一例では、意思決定部は、オーケストレータ220、NLUコンポーネント206およびそのサブコンポーネント、ダイアログマネージャ204、NLGコンポーネント512、コンピュータビジョンコンポーネント208および音声認識コンポーネント210による動作を含む。AI機能性のコンテキスト部分は、ユーザの周囲の(暗黙的および明示的)パラメータおよび伝達された意図(たとえば、所与の在庫に向けた、またはそれ以外の場合)に関する。経時的にAI品質を測定して改善するために、いくつかの例示的な実施形態では、人工知能フレームワーク144は、サンプルクエリ(たとえば、開発セット)を使用してトレーニングされ、異なる一組のクエリ(たとえば、[0001]評価セット)でテストされ、両方のセットは、ヒューマンキュレーションによって、または使用データから開発されるべきである。また、人工知能フレームワーク144は、経験豊富なキュレーション専門家またはヒューマンオーバーライド524によって定義された取引および対話フローについてトレーニングされるべきである。人工知能フレームワーク144の様々な構成要素内にコード化されたフローおよび論理は、識別されたユーザの意図に基づいてインテリジェントアシスタントによって行われるフォローアップ発話または提示の内容(たとえば、質問、一組の結果)を定義する。
インテリジェントパーソナルアシスタントシステム142は、ユーザの意図(たとえば、ターゲット検索、比較、買い物、閲覧など)、必須パラメータ(たとえば、製品、製品カテゴリ、アイテムなど)および任意のパラメータ(たとえば、明示的な情報、たとえば、アイテム/製品のアスペクト、場面など)ならびに暗黙的な情報(たとえば、地理的位置、個人的な好み、年齢および性別など)を理解し、ユーザに内容が豊かでインテリジェントな応答で応答しようと努める。明示的入力モダリティには、テキスト、音声および視覚的入力を挙げることができ、ユーザの暗黙の知識(たとえば、地理的位置、性別、出生地、以前の閲覧履歴など)で強化することができる。出力モダリティには、テキスト(スピーチ、自然言語文または製品関連情報など、およびスマートデバイス、たとえばクライアントデバイス110の画面上の画像など)を含むことができる。したがって、入力モダリティは、ユーザがボットとコミュニケーションをとることができる様々な方法を指す。入力モダリティには、キーボードまたはマウスによるナビゲーション、タッチセンサ式ジェスチャなどもまた挙げることができる。
コンピュータビジョンコンポーネント208用のモダリティに関して、写真は、テキストよりも良好にユーザが探しているものを表すことが多い。また、コンピュータビジョンコンポーネント208を使用して、出荷されるアイテムの画像に基づいて出荷パラメータを形成することができる。ユーザは、アイテムが何と呼ばれるのか知らない場合があるか、あるいは、専門家が知っている場合がある細かい詳細情報、たとえば、アパレルにおける複雑なパターンもしくは家具における特定のスタイルについてテキストを使用することは困難であるかまたは不可能でさえあるかもしれない。さらに、携帯電話で複雑なテキストクエリをタイプ入力することは不便であり、長いテキストクエリは、通常、再現能力度が低い。コンピュータビジョンコンポーネント208の重要な機能には、オブジェクト位置特定、オブジェクト認識、光学式文字認識(OCR)および画像またはビデオに由来する視覚的合図に基づく在庫に対する照合が挙げられる。コンピュータビジョンを有効にしたボットは、内蔵カメラを備えたモバイルデバイスで実行するときに有利である。能力が高いディープニューラルネットワークは、コンピュータビジョンアプリケーションを有効化するために使用することができる。
音声認識コンポーネント210を参照すると、特徴抽出コンポーネントは、生の音声波形を、その音を表す数値の数次元のベクトルに変換するように動作する。この構成要素は、ディープラーニングを使用して生の信号を高次元の意味空間(high-dimensional semantic space)に投影する。音響モデルコンポーネントは、音素および異音などの音声単位の統計モデルをホストするように動作する。ディープニューラルネットワークの使用は可能であるが、これらには混合ガウスモデル(Gaussian Mixture Models : GMM)を挙げることができる。言語モデルコンポーネントは、文法の統計モデルを使用して、単語を文にまとめる方法を定義する。このようなモデルには、nグラムベースのモデルまたは単語埋め込みに基づいて構築されたディープニューラルネットワークを挙げることができる。音声テキスト変換(speech-to-text : STT)デコーダコンポーネントは、特徴シーケンスから単語シーケンスを導出するために、隠れマルコフモデル(Hidden Markov Model : HMM)フレームワークにおける特徴抽出コンポーネント、音響モデルコンポーネントおよび言語モデルコンポーネントを使用して、音声発話を生の信号から導出された特徴を通常活用する単語のシーケンスに変換する。一例では、クラウド内の音声テキスト変換サービスは、音声サンプルを音声発話用にポストし(posted)、対応する単語シーケンスを検索することを可能にするAPIを有するクラウドフレームワーク内にこれらの構成要素を配置する。制御パラメータは、音声テキスト変換プロセスをカスタマイズするためにまたは影響を与えるために利用可能である。
機械学習アルゴリズムは、AIF144サービスによる照合、適合性および最終的な再順位付けのために使用されてもよい。機械学習は、明示的にプログラムすることなく学習する能力をコンピュータに付与する研究の分野である。機械学習では、データから学習し、データに対して予測を行うことができるアルゴリズムの研究および構築を探る。そのような機械学習アルゴリズムは、データ駆動型予測または決定を出力として表現するために、例示的な入力からモデルを構築することによって動作する。機械学習アルゴリズムを使用して、プロセスの実装方法を教えてもよい。
ディープラーニングモデル、ディープニューラルネットワーク(deep neural network : DNN)、リカレントニューラルネットワーク(recurrent neural network : RNN)、畳み込みニューラルネットワーク(convolutional neural network : CNN)および長期短期CNNならびにその他のMLモデルおよびIRモデルを使用してもよい。たとえば、検索218は、nグラム、エンティティおよび意味ベクトルベースのクエリを製品照合に使用してもよい。ディープラーニングされた意味ベクトルは、製品を非テキスト入力と直接照合する能力を与える。多層関連性フィルタ処理は、BM25、予測されたクエリリーフカテゴリ+製品リーフカテゴリ、クエリと製品との間の意味ベクトル類似性および他のモデルを使用して、最終再順位付けアルゴリズムのための上位候補製品を選んでもよい。
予測したクリック率およびコンバージョン率ならびにGMVは、最終的な再順位付け方式を構成して、特定のビジネス目標、より多くのショッピングへの関与、より多くの購入製品またはより多くのGMVに向けて機能を微調整する。クリック予測モデルおよびコンバージョン予測モデルは両方とも、入力信号としてクエリ、ユーザ、売り手および製品を取り入れる。ユーザプロファイルは、オンボーディング、サイドボーディングおよびユーザの行動から学習することによって強化され、個々のユーザの照合段階、適合性段階および順位付け段階のそれぞれにより使用されるモデルの精度を高める。モデル改善の速度を上げるために、オンラインA/Bテストの前にオフライン評価パイプラインが使用される。
人工知能フレームワーク144の一例では、音声認識コンポーネント210のための2つの追加部分、すなわち話者適応コンポーネントおよびLM適応コンポーネントが提供される。話者適応コンポーネントは、STTシステムのクライアント(たとえば、音声認識コンポーネント210)が各話者について特徴抽出コンポーネントおよび音響モデルコンポーネントをカスタマイズすることを可能にする。これが重要であるのは、ほとんどの音声テキスト変換システムは、ターゲット域の話者の代表的集団からのデータに基づいてトレーニングされ、通常、システムの精度は、ターゲット話者とトレーニングプールの話者の一致度に大きく依存するからである。話者適応コンポーネントは、ユーザのイントネーション、発音、アクセントおよび他の音声ファクタの特異性を継続的に学習することによって音声認識コンポーネント210(およびその結果として人工知能フレームワーク144)が話者のばらつきに対してロバストになり、それらの話者のばらつきを音声依存コンポーネント、たとえば、特徴抽出コンポーネントおよび音響モデルコンポーネントに適用することを可能にする。このアプローチでは、話者ごとに作成して存続することとなる非有意サイズの音声プロファイルを使用するが、一般的には、精度の期待される利点は、ストレージの欠点をはるかに上回る。
言語モデル(language model : LM)適応コンポーネントは、ターゲットドメイン、たとえば、在庫カテゴリまたはユーザのペルソナからの新しい語および代表文を用いて、言語モデルコンポーネントおよび音声テキスト変換語彙をカスタマイズするように動作する。この能力は、新しいカテゴリおよびペルソナ(persona)がサポートされるときに人工知能フレームワーク144をスケーラブルにすることを可能にする。
AIFの目標は、AI用のスケーラブルかつ拡張可能なフレームワークを提供することであり、本明細書では役目とも称するその中の1つの新しいアクティビティを、特定の自然言語処理機能を実行するサービスを使用して動的に達成することができる。新しいサービスを追加しても、システム全体を再設計する必要はない。代わりに、サービスは、(たとえば、機械学習アルゴリズムを使用して)必要に応じて準備され、オーケストレータは、新しいアクティビティに関連する新しいシーケンスで構成される。シーケンスの構成に関するさらなる詳細は、図6〜図13を参照して以下に提供される。
本明細書で提示される実施形態は、オーケストレータ220の動的構成を提供して、新しい意図およびその新しい意図に応答する方法を学習する。いくつかの例示的な実施形態では、オーケストレータ220は、新しいアクティビティに関連付けられた新しいシーケンスの構成を受信することによって新しいスキルを「学習」する。シーケンス仕様は、オーケストレータ220とAIF144からの1つまたは複数のサービスサーバの組との間の一連の対話を含む。いくつかの例示的な実施形態では、シーケンスの各対話は、(少なくとも)サービスサーバの識別、識別されたサービスサーバへの呼(call)と共に渡される呼パラメータ定義および識別されたサービスサーバによって返される応答パラメータ定義を含む。
いくつかの例示的な実施形態では、オーケストレータ220を除いて、AIF144内のサービスは、互いを認識していない、たとえば、それらは互いに直接対話していない。オーケストレータ220は、他のサーバとの全ての対話を管理する。中央調整リソースを有することは、他のサービスによって提供されるインタフェース(たとえば、API)を認識する必要がない他のサービスの実施を単純化する。当然ながら、直接インタフェースがサービスのペア間でサポートされてもよいいくつかの場合もあり得る。
図6は、いくつかの例示的な実施形態による、コンピュータビジョンコンポーネント208の構成要素を示すブロック図である。コンピュータビジョンコンポーネント208は、(たとえば、バス、共有メモリまたはスイッチを介して)互いに通信するように全てが構成された、画像コンポーネント610、画像解釈コンポーネント620、シグネチャ照合コンポーネント630、アスペクト順位付けコンポーネント640およびインタフェースコンポーネント650を含むように示されている。本明細書で説明されるモジュールのうちの任意の1つまたは複数は、ハードウェア(たとえば、機械の1つまたは複数のプロセッサ)またはハードウェアとソフトウェアとの組み合わせを使用して実装されてもよい。たとえば、本明細書で説明される任意のモジュールは、そのモジュールが設計されている動作を実行するように(たとえば、機械の1つまたは複数のプロセッサ間で)プロセッサを構成してもよい。さらに、これらのモジュールのうちの任意の2つ以上を単一のモジュールに組み合わせてもよく、単一のモジュールについて本明細書で説明した機能は、複数のモジュール間で細分化してもよい。さらに、様々な例示的な実施形態によれば、単一の機械、データベース(複数可)126またはデバイス(たとえば、クライアントデバイス110)内に実装されるものとして本明細書で説明されるモジュールは、複数の機械、データベース(複数可)126またはデバイスまたがって割り当てられてもよい。
図7は、いくつかの例示的な実施形態による、画像認識、画像シグネチャおよびカテゴリ予測に基づいて一組の画像を識別する方法700を実行する際のコンピュータビジョンコンポーネント208の動作のフローチャートである。このフローチャートの様々な動作が順次提示され説明されているが、当業者は、動作の一部または全部が異なる順序で実行され、組み合わされもしくは省略され、または並列に実行され得ることを理解するだろう。方法700における動作は、図6に関して上述した構成要素を使用して、コンピュータビジョンコンポーネント208によって実行されてもよい。いくつかの実施形態では、方法700の動作は、コンピュータビジョンコンポーネント208の構成要素および人工知能フレームワーク144の構成要素によって、またはそれらと共に実行される。
動作710では、画像コンポーネント610は、関心対象の少なくとも一部分を表す少なくとも1つの画像を受信する。いくつかの実施形態では、画像コンポーネント610は、パブリケーションシステム102(たとえば、ネットワーク化システム102)のユーザに関連付けられたユーザデバイスから少なくとも1つの画像を受信する。たとえば、ユーザデバイスは、画像キャプチャデバイス(たとえば、カメラ)、モバイルコンピューティングデバイス(たとえば、ラップトップ、スマートフォン、タブレット)、デスクトップコンピューティングデバイス(たとえばパーソナルコンピュータ)、または任意の他の好適なユーザデバイスであってもよい。これらの実施形態では、コンピュータビジョンコンポーネント208に関連付けられたアプリケーションは、静止画像のキャプチャ時に画像コンポーネント610が画像を受信するように、少なくとも1つの画像のキャプチャを促してもよい。少なくとも1つの画像がビデオ内の一組のフレームである場合、コンピュータビジョンコンポーネント208用のアプリケーションは、少なくとも1つの画像のキャプチャを促してもよく、ビデオが(たとえば、リアルタイムまたはほぼリアルタイムで)キャプチャされていると同時に、画像コンポーネント610は、ビデオ内の一組のフレームを受信する。一組のフレームはまた、キャプチャセッションの終了後に画像コンポーネント610によって受信されてもよいため、ビデオの一組のフレームはキャプチャ済みであり、ビデオストリームの代わりに、終了した一組の画像としてアクセスコンポーネント610によって受信される。たとえば、ユーザデバイス上でアプリケーションを開くと、ユーザインタフェース要素(たとえば、アプリケーション、画像コンポーネント610またはインタフェースコンポーネント650のユーザインタフェース要素)は、ユーザに関連付けられた画像キャプチャデバイスにアクセスし、アプリケーションのユーザインタフェース内に画像キャプチャデバイスの視野を提示させてもよい。アプリケーションのユーザインタフェースとの対話により、画像キャプチャデバイスは、視野内の1つまたは複数の画像のキャプチャを開始し、ユーザデバイスに1つまたは複数の画像を画像コンポーネント610へ送信させる。これらの事例では、コンピュータビジョンコンポーネント208は、ユーザデバイス上のアプリケーションの動作によって、画像コンポーネント610による受信のための少なくとも1つの画像または一組のフレームのキャプチャおよび送信において、ユーザデバイスを制御または少なくとも部分的に制御してもよい。
いくつかの実施形態では、画像コンポーネント610は、データ記憶装置から少なくとも1つの画像を受信する。たとえば、コンピュータビジョンコンポーネント208のアプリケーションを開くと、ユーザインタフェース要素は、データ記憶装置上に一組の画像を提示させてもよい。データ記憶装置は、直接接続(たとえば、ハードドライブのようなオンボードデータ記憶装置)またはリモート接続(たとえば、サーバ、クラウド記憶装置またはユーザデバイスによってアクセス可能な他の機械に実装されたデータ記憶装置)によってユーザデバイスと関連付けられてもよい。ユーザインタフェース要素は、ユーザデバイスをデータ記憶装置にアクセスさせ、一組の画像をユーザインタフェース要素に移入させることによって一組の画像を提示させてもよい。たとえば、ユーザインタフェース要素のコンピュータ実行可能命令、または画像コンポーネント610もしくはインタフェースコンポーネント650によって送信されるコンピュータ実行可能命令は、ユーザインタフェースに、ファイルフォルダもしくはユーザデバイスにローカルに格納された一組の画像にアクセスして開かせてもよく、またはファイルフォルダもしくはリモートデータ記憶場所(たとえば、クラウド記憶装置またはネットワークベースのサーバ)内に格納された一組の画像にアクセスさせてもよい。ローカルまたはリモートに保存された一組の画像にアクセスした後、実行可能命令は、ユーザデバイスに対しアプリケーションのユーザインタフェース内に一組の画像の表示(たとえば、サムネイル、タイルまたはファイル名)を提示させる。
いくつかの例示的な実施形態では、画像コンポーネント610は、ユーザデバイスからの要求でデータ記憶装置から少なくとも1つの画像を受信する。これらの事例では、コンピュータビジョンコンポーネント208のアプリケーションは、一度開かれると、画像コンポーネント610によって受信される画像のデータ記憶場所(たとえば、ネットワークアドレス)の表示を受信する。要求を受信したことに応答して、画像コンポーネント610は、要求を生成してデータ記憶装置に送信する。画像コンポーネント610からの要求は、少なくとも1つの画像のデータ記憶場所および識別情報を含んでもよい。次いで、画像コンポーネント610は、要求に応答してデータ記憶装置から少なくとも1つの画像を受信してもよい。
動作720では、画像解釈コンポーネント620は、関心対象に対するカテゴリセットを決定する。いくつかの実施形態では、画像解釈コンポーネント620は、少なくとも1つの画像およびその少なくとも1つの画像内に描かれた関心対象またはその一部に対して画像分析を実行するための、1つまたは複数の機械学習プロセスを含む。いくつかの事例では、1つまたは複数の機械学習プロセスは、ニューラルネットワークを含む。たとえば、後述するように、いくつかの実施形態では、画像解釈コンポーネント620は、ディープレジデュアルネットワーク(deep residual network)の複数の層を含み、その層を使用して画像処理を実行し、カテゴリセットを決定するために分析する。ディープレジデュアルネットワークは、完全接続された畳み込みニューラルネットワークであってもよい。
ディープレジデュアルネットワークに関して説明したが、画像解釈コンポーネント620は、本明細書に記載の画像解釈コンポーネント620の機能を実行するための任意の好適な画像処理および分析の機能を含んでもよいことを理解されたい。たとえば、画像解釈コンポーネント620は、ニューラルネットワーク、部分接続ニューラルネットワーク、完全接続ニューラルネットワーク、畳み込みニューラルネットワーク、一組の機械学習コンポーネント、一組の画像認識コンポーネント、一組のパターン認識コンポーネント、一組のコンピュータビジョンコンポーネント、または本明細書に記載の画像解釈コンポーネント620の機能のうちの1つもしくは複数を実行することができる任意の他の好適な命令、モジュール、構成要素もしくはプロセスを含んでもよい。
いくつかの事例では、画像解釈コンポーネント620は、1つまたは複数の画像認識プロセスを使用して、関心対象またはその一部に対するカテゴリセットを決定する。いくつかの実施形態では、画像認識プロセスは、パターン認識、エッジ検出、アウトライン認識、テキスト認識、特徴認識または検出、特徴抽出、固有ベクトル、顔認識、機械学習に基づく画像認識、ニューラルネットワークに基づく画像認識、および少なくとも1つの画像内の関心対象を識別かつ特徴付けるように構成された他の好適な動作を含む。画像解釈コンポーネント620は、画像コンポーネント610から少なくとも1つの画像を受信してもよい。いくつかの実施形態では、少なくとも1つの画像を受信することに応答して、画像解釈コンポーネント620は、少なくとも1つの画像内の関心対象を識別かつ分類する。画像解釈コンポーネント620は、関心対象の識別および分類を表すカテゴリセットに対して1つまたは複数のカテゴリを選択する。
いくつかの例示的な実施形態では、カテゴリセットに含まれるカテゴリは、パブリケーションコーパス(publication corpus)の1つまたは複数のパブリケーションに関連付けられる。カテゴリ階層ツリーは、パブリケーションコーパスの各パブリケーションを合致させて階層に配置してもよい。いくつかの例示的な実施形態では、パブリケーションカテゴリは、次いで、より一般的なカテゴリがより具体的なカテゴリを含むように、階層(たとえば、地図またはツリー)に編成される。ツリーまたはマップ内の各ノードは、親カテゴリ(たとえば、そのパブリケーションカテゴリが関連付けられているより一般的なカテゴリ)と、潜在的に1つまたは複数の子カテゴリ(たとえば、そのパブリケーションに関連付けられている狭いカテゴリまたはより具体的なカテゴリ)とを有するパブリケーションカテゴリである。各パブリケーションカテゴリは、特定の静的ウェブページに関連付けられる。
いくつかの例示的な実施形態によれば、複数のパブリケーションは、パブリケーションカテゴリにまとめられる。例として、各カテゴリは、文字でラベル付けされている(たとえば、カテゴリA〜カテゴリAJ)。さらに、全てのパブリケーションカテゴリは、カテゴリの階層の一部として編成されている。この例では、カテゴリAは、他の全てのパブリケーションカテゴリの派生元である一般的な製品カテゴリである。次いで、カテゴリAのパブリケーションは、少なくとも2つの異なるパブリケーションカテゴリである、カテゴリBおよびカテゴリCに分けられる。各親カテゴリ(この場合、カテゴリAは、カテゴリBとカテゴリCの両方の親カテゴリである)は、多数の子カテゴリ(たとえば、サブカテゴリ)を含んでもよいことに留意されたい。この例では、パブリケーションカテゴリBおよびCの両方には、サブカテゴリ(または子カテゴリ)がある。たとえば、カテゴリAが衣類パブリケーションである場合、カテゴリBは、紳士服パブリケーションであり、カテゴリCは、婦人服パブリケーションであり得る。カテゴリBのサブカテゴリは、カテゴリD、カテゴリEおよびカテゴリFを含む。サブカテゴリD、EおよびFのそれぞれは、各サブカテゴリで扱われるパブリケーションの具体的な詳細に応じて、異なる数のサブカテゴリを含む。
たとえば、カテゴリDがアクティブウェアパブリケーション、カテゴリEがフォーマルウェアパブリケーション、カテゴリFがアウトドアウェアパブリケーションである場合、各サブカテゴリは、異なる数および種類のサブカテゴリを含む。たとえば、カテゴリD(この例ではアクティブウェアパブリケーション)は、サブカテゴリIおよびJを含む。サブカテゴリIは、(この例では)アクティブフットウェアパブリケーションを含み、サブカテゴリJは、Tシャツパブリケーションを含む。これら2つのサブカテゴリ間の相違の結果として、サブカテゴリIは、4つの追加のサブカテゴリ(サブカテゴリK〜N)を含み、異なる種類のアクティブフットウェアパブリケーション(たとえば、ランニングシューズパブリケーション、バスケットボールシューズパブリケーション、クライミングシューズパブリケーションおよびテニスシューズパブリケーション)を表す。対照的に、サブカテゴリJ(この例ではTシャツパブリケーション用)は、いかなるサブカテゴリも含まない(ただし実際の製品データベースでは、Tシャツパブリケーションカテゴリは、サブカテゴリを含む可能性がある)。したがって、各カテゴリは、より一般的なパブリケーションのカテゴリを表す(最上位の製品カテゴリを除く)親カテゴリおよび1つもしくは複数の子カテゴリまたはサブカテゴリ(より一般的なカテゴリ内のより具体的なパブリケーションカテゴリ)を有する。したがって、カテゴリEには、OおよびPの2つのサブカテゴリがあり、各サブカテゴリには、それぞれ2つの子製品カテゴリ、すなわちカテゴリQおよびRならびにカテゴリSおよびTがある。同様に、カテゴリFには、3つのサブカテゴリ(U、VおよびW)がある。カテゴリCは、カテゴリAをその親とする製品カテゴリであり、2つの追加サブカテゴリ(GおよびH)がある。カテゴリGは、2つの子(XおよびAF)を含む。カテゴリXは、サブカテゴリYおよびZを含み、Yは、AA〜AEを含む。カテゴリHは、サブカテゴリAGおよびAHを含む。カテゴリAGは、カテゴリAIおよびAJを含む。
いくつかの実施形態では、パブリケーションコーパスのパブリケーションの代表的画像またはパブリケーションに含まれる全ての画像は、カテゴリ内にクラスタ化される。これらの事例では、類似の画像シグネチャ、アスペクト、視覚的外観要素、特性、メタデータおよび他の属性を有する画像が割り当てられるか、またはそれ以外の場合には類似のカテゴリ内にクラスタ化される。画像クラスタは、1つまたは複数のカテゴリに関連付けられてもよい。いくつかの事例では、画像クラスタは、サブクラスタを含むため、階層カテゴリは、親カテゴリのクラスタ内のサブクラスタによって表される。いくつかの実施形態では、画像は、アイコン画像(たとえば、カテゴリに対する共通の代表的画像)にアクセスすることによってカテゴリ内でクラスタ化される。画像解釈コンポーネント620は、入力意味ベクトル(input semantic vector)とアイコン画像のアイコン意味ベクトル(iconic semantic vector)との間の最も近い一致を判定する。処理速度を上げるために、アイコンではない画像を無視してもよい。最もよく一致するクラスタが以前に誤って分類された画像のクラスタであることに応じて、入力画像がこのカテゴリを有する確率は、減少する。不均衡なクラスタに応じて、クラスタは、再均衡化される。これは、比較可能な数の画像が各クラスタ内にあるように、クラスタが平衡化されるかまたはより平衡化されるまで繰り返すことができる。
いくつかの例示的な実施形態では、動作720は、1つまたは複数のサブ動作を使用して実行される。これらの実施形態では、入力画像(たとえば、少なくとも1つの画像)は、ユーザによって操作されるデバイスから送信される。ユーザは、パブリケーションコーパス内のパブリケーションを検索していてもよい。ユーザは、パブリケーション画像と共に新しいパブリケーションを投稿していてもよく、プロセスフローを信頼してカテゴリを提供するのに役立ててもよい。入力画像に対応する入力意味ベクトルがアクセスされる。後述するように、入力意味ベクトルは、入力画像または少なくとも1つの画像に対する画像シグネチャであってもよい。入力意味ベクトルを有する画像解釈コンポーネント620は、入力意味ベクトルを、パブリケーションコーパスのパブリケーションカテゴリの各カテゴリに関連付けられた意味ベクトルと比較してもよい。いくつかの実施形態では、各カテゴリに関連付けられた意味ベクトルは、各カテゴリに関連付けられた一組の画像および各カテゴリに関連付けられた一組のメタデータもしくは記述用語のうちの1つまたは複数を使用して生成された代表的な意味ベクトルである。いくつかの事例では、入力画像は、カテゴリメタデータを欠いている。欠けているカテゴリメタデータは、最小閾値を超えるカテゴリ確率に応答して入力画像に追加される。別の実施形態では、メタデータを二重チェックするために、欠けているメタデータではなかった入力画像に対して少なくとも1つのカテゴリ確率が提供される。画像解釈コンポーネント620がカテゴリおよびサブカテゴリ別にクラスタ化された画像クラスタ内の画像を分析する場合、入力画像(たとえば、少なくとも1つの画像)は、画像のクラスタまたは画像クラスタに対して選択されたアイコン画像と高い意味的類似性を有し、画像解釈コンポーネント620は、アイコン画像に関連付けられた1つまたは複数のカテゴリが入力画像に関連するより高い確率を割り当てることとなる。したがって、画像解釈コンポーネント620は、一組のカテゴリに含めるためのカテゴリとして、アイコン画像または画像クラスタのカテゴリを選択する可能性がより高い。
いくつかの例示的な実施形態では、画像解釈コンポーネント620は、機械学習モデルとして動作し、入力画像を使用してトレーニングされてもよい。これらの事例では、トレーニング画像は、機械学習モデルに入力される。トレーニング画像は、機械学習モデル(たとえば、画像解釈コンポーネント620)を用いて処理される。トレーニングカテゴリは、機械学習モデルから出力される。機械学習モデルは、トレーニングカテゴリ出力が正しかったかどうかにかかわらず、機械学習モデルにフィードバックすることによってトレーニングされる。
例示的な実施形態では、機械学習モデルを使用して、所与のリスティングタイトル(listing title)の潜在的意味の深い意味を埋め込み、それを共有意味ベクトル空間(shared semantic vector space)に投影する。ベクトル空間は、ベクトルと呼ばれるオブジェクトの集合と称することができる。ベクトル空間は、その次元によって特徴付けることができ、その次元は、空間内の独立した方向の数を指定する。意味ベクトル空間は、語句および文を表すことができ、画像検索および画像特徴付けタスクのための意味論(semantics)を取り込むことができる。さらなる実施形態では、意味ベクトル空間は、音声、フレーズまたは音楽、ビデオクリップおよび画像を表すことができ、画像検索および画像特徴付けタスクのための意味論を取り込むことができる。
様々な実施形態では、機械学習を使用して、ソース(X)、たとえば、リスティングタイトルと、ターゲット(Y)、検索クエリとの間の類似性を最大化する。機械学習モデルは、ディープニューラルネットワーク(DNN)または畳み込みニューラルネットワーク(CNN)に基づいてもよい。DNNは、入力層と出力層との間にユニットの隠れ層が複数ある人工ニューラルネットワークである。DNNは、ディープラーニングアーキテクチャをリカレントニューラルネットワークに適用することができる。CNNは、(一般的な人工ニューラルネットワークに適合するもののような)完全に接続された層を上位に有する1つまたは複数の畳み込み層からなる。CNNはまた、重み共有およびプーリング層を使用する。DNNおよびCNNの両方は、標準的なバックプロパゲーションアルゴリズムでトレーニングすることができる。
機械学習モデルを特定の<source, target>ペアのマッピングに適用するとき、関連する<source, target>ペアのベクトル表現距離が近くなるように、機械学習ソースモデルおよび機械学習ターゲットモデルのパラメータが最適化される。次の式は、最小距離を計算するために使用することができる。
上記の式では、ScrSeq=ソースシーケンス、TgtSeq=ターゲットシーケンス、SrcMod=ソース機械学習モデル、TgtMod=ターゲット機械学習モデル、SrcVec=ソースシーケンスに対する連続ベクトル表現(ソースの意味ベクトルとも称する)、TgtVec=ターゲットシーケンスに対する連続ベクトル表現(ターゲットの意味ベクトルとも称する)である。ソース機械学習モデルは、ソースシーケンスを連続ベクトル表現にコード化する。ターゲット機械学習モデルは、ターゲットシーケンスを連続ベクトル表現にコード化する。例示的な実施形態では、ベクトルはそれぞれ、約100の次元を有する。
他の実施形態では、任意の数の次元を使用してもよい。例示的な実施形態では、意味ベクトルの次元は、KD木構造に格納される。KD木構造は、KD空間内の点を編成するための空間分割データ構造と称することができる。KD木を使用して最近傍検索を実行することができる。したがって、空間内のソース点が与えられると、最近傍検索を使用してソース点に最も近い点を識別してもよい。
上述のように、画像解釈コンポーネント620は、機械学習コンポーネントであってもよい。いくつかの例示的な実施形態では、画像解釈コンポーネント620は、ディープレジデュアルネットワーク(たとえば、一種のニューラルネットワーク)である。これらの実施形態では、画像解釈コンポーネント620は、一組のニューラルネットワーク層を使用して少なくとも1つの画像を処理する。ニューラルネットワーク層は、1つまたは複数のネットワークカーネルを使用して生成してもよい。いくつかの事例では、1つまたは複数のネットワークカーネルは、畳み込みカーネル、プーリングカーネル、マージカーネル、微分カーネル、他の任意の好適なカーネルまたはそれらの組み合わせを含む。畳み込みカーネルは、領域、重複領域または画像内の一組のピクセルを対話的に処理することによって入力画像を処理してもよい。畳み込みカーネルは、画像フィルタリング、画像認識または他の画像処理のうちの1つまたは複数のための基礎として機能してもよい。たとえば、畳み込みカーネルは、マージカーネル(たとえば、画像の少なくとも一部をぼかす)、微分カーネル(たとえば、エッジ検出を支援する)または他の任意の好適なカーネルプロセスのうちの1つまたは複数として機能してもよい。ニューラルネットワークの層の一部は、畳み込みカーネルを使用してもよく、小さな領域または個々のピクセルに適用されてもよい。層の一部は、プーリング層であってもよい。プーリング層は、画像から値をサブサンプリングして、非線形ダウンサンプリングを実行してもよい。たとえば、プーリング層は、少なくとも1つの画像を一組の領域に分割し、各領域について最大値または平均値を出力してもよい。分割として説明されているが、いくつかの事例では、プーリング層は、以前に決定された分割の指示を受信し、所定の領域分割を使用してダウンサンプリングしてもよい。
動作720は、1つまたは複数のサブ動作を含む。いくつかの例示的な実施形態では、画像解釈コンポーネント620は、少なくとも1つの画像内の関心対象の1つまたは複数の属性を表す一組のアスペクトを識別する。少なくとも1つの画像を識別かつ分類する際に、画像解釈コンポーネント620は、上記の1つまたは複数の機能を使用して、関心対象の視覚的外観の要素を構成する1つまたは複数の属性を識別する。各アスペクトは、属性(たとえば、視覚的外観の要素)のうちの少なくとも1つおよび指定された属性に関連付けられた記述語に対応する。たとえば、画像解釈コンポーネント620は、少なくとも1つの画像内の関心対象として赤いズボンを識別してもよい。画像解釈コンポーネント620は、予測されたスタイル(たとえば、長さが足首まであるズボン)、色(たとえば、赤)、パターン(たとえば、ソリッド)、ブランド、材料(たとえば、デニム)、季節(たとえば、ズボンを着用するのに好適な季節または年の一時期)および衣類の種類(たとえば、カジュアル衣類および「ボトムス」)を含む属性を含むものとして、一組のアスペクトを識別してもよい。各属性は、ズボン、赤、ソリッド、デニム、秋、カジュアル衣類およびボトムスなどの記述語によって表してもよい。この例では、各記述語は、関心対象の視覚的外観の要素の表現である。
いくつかの実施形態では、画像解釈コンポーネント620は、入力画像に対応する入力意味ベクトル(たとえば、単語、語句、記述用語、特性または一組のアスペクト)を生成することによってアスペクトを識別する。入力意味ベクトルまたはその一部は、画像シグネチャを、類似の画像シグネチャについて以前に決定された意味ベクトルと照合することによって識別することができる。最も近い一致は、入力意味ベクトルと複数のアスペクトを表すパブリケーション画像ベクトルとの間で識別される。入力意味ベクトル(たとえば、一組の記述用語)またはその一部は、一致すると判定された1つまたは複数のパブリケーション意味ベクトルの中から選択されてもよい。機械学習モデルは、速度のためにXOR演算と共に使用されてもよい。XOR演算からの共通ビットの数は、類似性の尺度として使用してもよい。いくつかの事例では、意味ベクトル空間内で最近傍を見つけることによって、入力意味ベクトルと複数のアスペクトを表すパブリケーション画像ベクトルとの間で最も近い一致が識別される。前述のプロセスのいずれかの後、機械学習モデルに基づいて複数のアスペクト確率が提供され、一組のアスペクトは、複数のアスペクト確率に基づいて識別される。たとえば、確率閾値を超えていることに基づいて、アスペクトを、一組のアスペクトに含めるために選択してもよい。
続く動作720のサブ動作では、画像解釈コンポーネント620は、カテゴリセットに含めるために一組のアスペクトのうちの少なくとも1つのアスペクトに関連付けられた1つまたは複数のカテゴリを決定する。画像解釈コンポーネント620は、一組のアスペクトをグローバルカテゴリセットと比較してもよく、カテゴリセットに含めるために1つまたは複数のカテゴリを選択する。いくつかの実施形態では、グローバルカテゴリセットの各カテゴリは、1つまたは複数のキーワード、記述子または視覚的外観の要素に関連付けられている。画像解釈コンポーネント620は、一組のアスペクトを1つまたは複数のカテゴリに関連付けられたキーワードと照合し、カテゴリセットに含めるために1つまたは複数のカテゴリを選択する。いくつかの事例では、画像解釈コンポーネント620は、カテゴリセットに含まれる各カテゴリについての確率を識別する。確率は、一組のアスペクトに一致するカテゴリに関連付けられたキーワードの数、カテゴリのキーワードに一致するかもしくは意味的に関連すると識別された一組のアスペクトの割合、または任意の他の好適な方法を使用して決定されてもよい。
動作730では、画像解釈コンポーネント620は、少なくとも1つの画像に対する画像シグネチャを生成する。画像シグネチャは、少なくとも1つの画像のベクトル表現を含む。いくつかの実施形態では、画像シグネチャは、少なくとも1つの画像のバイナリベクトル表現であり、ベクトルの各値は、1または0のいずれかである。画像解釈コンポーネント620がニューラルネットワークまたはディープレジデュアルネットワークを含む場合、画像解釈コンポーネント620は、ニューラルネットワークのハッシュ層を使用して画像シグネチャを生成する。ハッシュ層は、ディープレジデュアルニューラルネットワークの接続された層のうちの1つまたは複数のから浮動小数点値を受信してもよい。ハッシュ層は、浮動小数点値を使用してベクトル表現を生成してもよい。いくつかの実施形態では、浮動小数点値は、1〜0の値である。画像シグネチャがバイナリハッシュである場合、ハッシュ層は、浮動小数点値を閾値と比較して、浮動小数点値をバイナリ値に変換してもよい。たとえば、ベクトルは、4096次元のベクトルであってもよい。ベクトルの値は、1〜0である。ベクトルを生成すると、ハッシュ層は、そのベクトルをバイナリベクトルに変換して、バイナリ画像シグネチャを生成してもよい。ベクトルの値は、0.5などの閾値と比較してもよい。閾値を超える値は、バイナリ画像シグネチャにおいて1の値に変換されてもよく、閾値を下回る値は、バイナリ画像シグネチャにおいて0の値に変換されてもよい。
動作740では、シグネチャ照合コンポーネント630は、パブリケーションデータベース内の一組のパブリケーションを識別する。シグネチャ照合コンポーネント630は、カテゴリセットおよび少なくとも1つの画像に対する画像シグネチャを使用して一組のパブリケーションを識別する。いくつかの実施形態では、シグネチャ照合コンポーネント630は、画像解釈コンポーネント620からカテゴリセットおよび画像シグネチャを受信すると自動的に、一組のパブリケーションを識別する。シグネチャ照合コンポーネント630は、カテゴリセットおよび画像シグネチャを使用してパブリケーションデータベースを検索することによって一組のパブリケーションを識別する。いくつかの実施形態では、パブリケーションデータベースのパブリケーションは、区分化されているかまたはそれ以外の場合にはカテゴリ別に編成されている。これらの事例では、シグネチャ照合コンポーネント630は、パブリケーションデータベースの1つまたは複数のカテゴリを少なくとも1つの画像について識別されたカテゴリセットと照合する。シグネチャ照合コンポーネント630は、カテゴリセットのカテゴリと一致する1つまたは複数のカテゴリに関連付けられたパブリケーションの一部分のみを検索してもよい。
パブリケーションの一部分が識別されると、シグネチャ照合コンポーネント630は、パブリケーションの一部分のパブリケーションに含まれる画像に関連付けられたパブリケーション画像シグネチャを識別してもよい。シグネチャ照合コンポーネント630は、少なくとも1つの画像に対して生成された画像シグネチャをパブリケーション画像シグネチャと比較する。いくつかの事例では、シグネチャ照合コンポーネント630は、少なくとも1つの画像の画像シグネチャと、パブリケーションの一部分の各パブリケーションに関連付けられた、またはそれに含まれる画像についての各パブリケーション画像シグネチャとの間のハミング距離を決定する。
動作750では、シグネチャ照合コンポーネント630は、画像シグネチャに基づいて一組のパブリケーションの各パブリケーションに順位を割り当てる。シグネチャ照合コンポーネント630は、各パブリケーションに割り当てられた順位を使用してパブリケーションの順位付けリストを生成する。パブリケーションの順位付けリストは、一組のパブリケーションの少なくとも一部を含む。シグネチャ照合コンポーネント630が少なくとも1つの画像の画像シグネチャと各パブリケーション画像シグネチャとの間のハミング距離を判定する実施形態では、シグネチャ照合コンポーネント630は、順位付けスコアとして各パブリケーション画像シグネチャの計算ハミング距離を使用する。シグネチャ照合コンポーネント630は、順位付けスコア(たとえば、各パブリケーション画像シグネチャについて計算されたハミング距離)に基づいて各パブリケーションに順位を割り当て、ハミング距離の昇順でパブリケーションを順序付ける。これらの事例では、より小さいハミング距離を有するパブリケーションは、より大きいハミング距離を有するパブリケーションよりも、パブリケーションの順位付けリスト(たとえば、順序付きリスト)においてより上位に配置される。
動作760では、インタフェースコンポーネント650は、ユーザに関連付けられたコンピューティングデバイスにおいてパブリケーションの順位付けリストを提示させる。いくつかの実施形態では、コンピューティングデバイスは、デバイス(たとえば、スマートフォンなどのモバイルコンピューティングデバイス)であり、少なくとも1つの画像は、コンピューティングデバイスから受信されたものである。インタフェースコンポーネント650は、コンピューティングデバイスのユーザインタフェース内にパブリケーションの順位付けリストを提示させるか、またはコンピューティングデバイスにアクセス可能にさせる。順位付けリスト内に提示された各パブリケーションは、画像と関連付けられ、その画像の画像シグネチャは、パブリケーションを少なくとも1つの画像と照合するために動作750で使用される。
いくつかの実施形態では、パブリケーションの順位付けリストの各パブリケーションは、パブリケーション識別(たとえば、タイトルまたは記述語もしくは語句)およびパブリケーションの識別および順位付けに使用される画像シグネチャに関連付けられた画像の表示を使用して提示される。たとえば、図8に示すように、インタフェースコンポーネント650は、動作710で受信された少なくとも1つの画像810およびパブリケーションの順位付けリスト820を提示させる。パブリケーションの順位付けリストは、パブリケーションのタイトル(たとえば、パブリケーション識別)およびパブリケーションのための代表的画像(たとえば、パブリケーションを照合かつ順位付けするために使用される画像シグネチャに関連付けられた画像)を含む選択可能なユーザインタフェース要素内に提示される。順位付けリスト内のパブリケーションに対するユーザインタフェース要素の選択により、パブリケーション識別、1つまたは複数の画像およびパブリケーションのための追加の詳細を含む完全なパブリケーションを提示させてもよい。
いくつかの実施形態では、追加の詳細は、パブリケーションの一組のカテゴリ、パブリケーションに関連付けられた電子商取引システムもしくはウェブサイトのアイテムリスト、パブリケーションに関連付けられた場所または任意の他の好適な詳細のうちの1つまたは複数を含む。パブリケーションがアイテムリストである場合、パブリケーションの追加の詳細は、アイテム状態、パターン、アイテムの製品識別情報、ブランド、スタイル、サイズ、販売者識別情報、色、入手可能な数量、価格(たとえば、定価、販売価格または現在のオークション価格もしくは入札価格)、以前に販売したアイテムの数、および販売、購入またはアイテムリストとの対話に関連する他の好適な情報のうちの1つまたは複数を含む情報を含んでもよい。
図8では、いくつかの例示的な実施形態では、パブリケーションの順位付けリストは、そのパブリケーションの代表的画像830に基づいて提示される。代表的画像は、順位付けリストに含まれるパブリケーションの各順位を示す方法で提示されてもよい。たとえば、画像は、リスト内の第1の位置(たとえば、最上位置または最左位置)により近い位置に提示されているより高い順位を有するパブリケーションを用いて線形フォーマットで提示されてもよい。いくつかの事例では、図9に示すように、代表的画像910は、タイル形式で表示される。タイル形式は、各パブリケーションの順位を表してもよい。たとえば、画像の相対配置、画像のサイズ、画像の強調表示、それらの組み合わせまたは任意の他の好適な提示スキームは、順位付けリスト内のパブリケーションの相対位置を示してもよい。これらの例では、パブリケーションの順位は、画像のサイズ(たとえば、より順位の高いパブリケーションに関連付けられたより大きな画像)、画像の相対配置(たとえば、より高い位置にある画像、またはそれ以外の場合にはより目立つようにより順位が高い画像に関連付けられる)、または画像の強調表示(たとえば、バンドで囲まれた画像または指定されたカラーコードを有する画像は、上位のパブリケーションに関連付けられる)によって示されてもよい。
図10は、いくつかの例示的な実施形態による、画像認識、画像シグネチャ、カテゴリ予測およびアスペクト予測に基づいて一組の画像を識別する方法1000を実行する際のコンピュータビジョンコンポーネント208の動作のフローチャートである。このフローチャートの様々な動作が順次提示され説明されているが、当業者は、動作の一部または全部が異なる順序で実行され、組み合わされ、または省略され、または並列に実行され得ることを理解するだろう。方法1000における動作は、図6に関して上述した構成要素を使用して、コンピュータビジョンコンポーネント208によって実行してもよい。いくつかの実施形態では、方法1000の動作は、コンピュータビジョンコンポーネント208の構成要素および人工知能フレームワーク144の構成要素によって、またはそれらと共に実行される。いくつかの実施形態では、方法1000の動作は、方法1000の一部またはサブ動作を形成する。いくつかの事例では、方法1000の1つまたは複数の動作は、方法1000の1つまたは複数の動作の一部またはサブ動作として実行される。
動作1010では、画像解釈コンポーネント620は、少なくとも1つの画像内の関心対象の1つまたは複数の属性を表す一組のアスペクトを識別する。いくつかの実施形態では、関心対象の1つまたは複数の属性は、関心対象の外観の要素である。これらの実施形態では、各アスペクトは、指定された属性に関連付けられた記述語である。いくつかの実施形態では、一組のアスペクトは、エッジ検出、オブジェクト認識、色認識、パターン認識および他の好適なコンピュータビジョンプロセスのうちの1つまたは複数を使用して、画像解釈コンポーネント620によって判定される。たとえば、画像解釈コンポーネント620は、コンピュータビジョンプロセスを使用して、少なくとも1つの画像内の関心対象について色(たとえば、赤)、パターン(たとえば、花柄)およびオブジェクトの種類(たとえば、ドレス)を識別してもよい。色、パターンおよびオブジェクトの種類についての説明的な用語、またはその表現は、一組のアスペクトに含まれてもよい。いくつかの事例では、一組のアスペクトは、動作720に関して上述した方法と同様または同一の方法で判定される。
動作1020では、一組のアスペクトの各アスペクトについて、画像解釈コンポーネント620は、少なくとも1つの画像内の関心対象が指定されたアスペクトを含む確率を決定する。各アスペクトについて決定された確率を使用して、画像解釈コンポーネント620は、各アスペクトについて信頼スコアを生成する。一組のアスペクトの各アスペクトについての確率は、少なくとも1つの画像の画像シグネチャの照合部分(たとえば、パブリケーションシグネチャに一致する画像シグネチャの割合、またはパブリケーションシグネチャの一組のビットに一致する画像シグネチャ内の一組のビットの位置)に基づいて決定してもよい。いくつかの事例では、各アスペクトの確率は、画像シグネチャ、少なくとも1つの画像のメタデータ、パブリケーション画像シグネチャおよびパブリケーションに関連付けられたメタデータのうちの1つまたは複数を使用して生成される類似性スコアに基づいて決定される。確率はまた、動作720に関して上記で説明されたのと同様にまたは同じく決定されてもよい。
動作1030では、一組のパブリケーションの各パブリケーションについて、アスペクト順位付けコンポーネント640は、一組のメタデータ記述子を識別する。メタデータ記述子は、一組のパブリケーションの各パブリケーション内の、またはそれに関連付けられた暗黙的もしくは明示的な記述用語である。いくつかの例示的な実施形態では、パブリケーションのメタデータ記述子は、著者提供の用語である。これらの例では、パブリケーションに責任を負うかまたはパブリケーションに関連付けられた当事者もしくは団体(たとえば、著者、作成者、管理者または販売者)は、パブリケーションの作成中または作成後にパブリケーションのメタデータ記述子を生成するかまたはそれ以外の場合には提供する。たとえば、パブリケーションが電子商取引システムまたはウェブサイトのアイテムリストである場合、販売者は、カテゴリ指定、アイテム説明情報(たとえば、ブランド、色、パターン、製品、スタイル、サイズまたは条件指定)またはアイテムリストによって表されるアイテムを説明するための他の記述語、語句もしくはユーザインタフェースの選択を含んでもよい。メタデータ記述子は、明示的であってもよいため、一組のメタデータ記述子を含む用語は、パブリケーションと対話するユーザによって閲覧可能である。メタデータ記述子はまた、暗黙的であってもよいため、用語は、パブリケーションに関連付けられているが、パブリケーションの提示内に提示されない。たとえば、暗黙的メタデータ記述子は、パブリケーションに関連付けられたメタデータファイル内、またはパブリケーションシステム上のパブリケーション内に含まれるメタデータセクションに含まれてもよい。
動作1040では、アスペクト順位付けコンポーネント640は、一組のパブリケーションの各パブリケーションについてアスペクト順位付けスコアを生成する。アスペクト順位付けスコアは、関心対象の一組のアスペクトと一組のメタデータ記述子との重み付け比較を実行することによって生成される。いくつかの実施形態では、各パブリケーションの各メタデータ記述子に値が割り当てられる。少なくとも1つの画像について識別された一組のアスペクトは、一組のパブリケーションの各パブリケーションについてメタデータ記述子と比較される。メタデータ記述子に一致する一組のアスペクトの各アスペクトに対して、アスペクト順位付けコンポーネント640は、メタデータ記述子に割り当てられた値を検索する。次いで、各パブリケーションには、アスペクトに一致する各メタデータ記述子の値の組み合わせとしてアスペクト順位付けスコアを割り当ててもよい。いくつかの実施形態では、アスペクト順位付けコンポーネント640は、一致した各メタデータ記述子の値を加算し、その合計をパブリケーションのアスペクト順位スコアとして割り当てる。アスペクト順位付けコンポーネント640は、一組のパブリケーションの各パブリケーションについてアスペクト順位スコアを同様に生成して割り当ててもよい。アスペクト順位付けコンポーネント640は、一組のパブリケーションについて順番にまたは同時にアスペクト順位スコアを生成して割り当ててもよい。
いくつかの実施形態では、一組のパブリケーションの各パブリケーションについて、アスペクト順位付けコンポーネント640は、一致したメタデータ記述子に対する値を検索して合計する。アスペクト順位付けコンポーネント640は、パブリケーションに関連付けられた一組のメタデータ記述子に対する合計値を識別する。合計値は、一組のメタデータ記述子内の各メタデータ記述子に対する値を加算することによって計算してもよい。これらの実施形態では、アスペクト順位付けコンポーネント640は、一致したメタデータ記述子に対する値の総和を、パブリケーションに関連付けられたメタデータ記述子に対する合計値で除算する。値の総和を合計値で除算した結果得られる商は、パブリケーションのアスペクト順位付けスコアである。
アスペクト順位付けスコアが重み付け比較によって生成される実施形態では、アスペクト順位付けコンポーネント640は、動作750において決定された各パブリケーションについての順位付けスコアを検索する。順位付けスコアは、少なくとも1つの画像に対する画像シグネチャと各パブリケーションの代表的画像とを比較することによって生成される外観スコアとして機能する。各パブリケーションについて、アスペクト順位付けコンポーネント640は、アスペクト順位付けスコアおよび外観スコアをして、重み付け方式により組み合わせスコアを生成する。いくつかの実施形態では、順位付け方式は、アスペクト順位付けスコアおよび外観スコアに対する1つまたは複数の所定の重みを含む。所定の重みは、外観スコアに対する第1の重みおよびアスペクト順位付けスコアに対する第2の重みを含んでもよい。第1の重みは、第2の重みよりも大きくてもよいため、外観スコアは、アスペクト順位付けスコアよりも組み合わせスコアの比較的大きな部分を占める。
いくつかの実施形態では、重み付け方式は、1つまたは複数の動的重みを含む。動的重みは、1つまたは複数の機械学習動作を使用して生成してもよい。機械学習動作は、教師あり学習、教師なし学習、強化学習、ニューラルネットワーク、ディープニューラルネットワーク、部分接続ニューラルネットワーク、完全接続ニューラルネットワーク、または任意の他の適切な機械学習プロセス、動作、モデルもしくはアルゴリズムを含んでもよい。機械学習動作は、履歴検索および順位付け情報と共にユーザインタラクションデータにアクセスしてもよい。履歴検索および順位付け情報は、複数の以前の検索で使用された画像または画像シグネチャ、複数の検索で識別されたパブリケーション、ならびに順位付けを生成するのに使用されたパブリケーションおよびメタデータ記述子およびアスペクトの各順位付けを含む。ユーザ対話データは、検索を実行している特定のユーザへのパブリケーションの提示時に受信されたユーザ選択の指示を含む。機械学習アルゴリズムは、検索に使用された画像タイプに与えられたユーザ対話の確率、ならびに検索によって検索されたパブリケーションについて生成された外観スコアおよびアスペクト順位付けスコアに基づいて1つまたは複数の動的重みを修正する。
動作1050では、アスペクト順位付けコンポーネント640は、アスペクト順位付けスコアと画像シグネチャに基づく順位との組み合わせを反映する第2の序列に従って編成されたパブリケーションの修正順位付けリストを生成する。いくつかの実施形態では、アスペクト順位付けコンポーネント640は、動作750に関して上記で説明した方法と同様に、修正順位付けリストを生成する。アスペクト順位付けコンポーネント640は、アスペクト順位付けスコアに従って、動作750で生成された順位付けリストを第1の順序から第2の順序に並べ替えることによって修正順位付けリストを生成してもよい。いくつかの例示的な実施形態では、アスペクト順位付けコンポーネント640は、外観スコアとアスペクト順位付けスコアとの組み合わせまたは重み付けされた組み合わせから生成された組み合わせスコアに従って修正順位付けリストを生成する。
図11は、いくつかの例示的な実施形態による、画像認識、画像シグネチャおよびカテゴリ予測に基づいて一組の画像を識別する方法1100を実行する際のコンピュータビジョンコンポーネント208の動作のフローチャートである。このフローチャートの様々な動作が順次提示され説明されているが、当業者は、動作のいくつかまたは全てが異なる順序で実行され、組み合わされ、または省略され、または並列に実行されてもよいことを理解するであろう。方法1100における動作は、図6に関して上述した構成要素を使用して、コンピュータビジョンコンポーネント208によって実行してもよい。いくつかの実施形態では、方法1100の動作は、コンピュータビジョンコンポーネント208の構成要素および人工知能フレームワーク144の構成要素によって、またはそれらと共に実行される。いくつかの実施形態では、方法1100の動作は、動作740の一部またはサブ動作を形成する。
動作1110では、シグネチャ照合コンポーネント630は、カテゴリセットのうちの1つまたは複数のカテゴリに関連付けられたクエリパブリケーションを選択する。いくつかの実施形態では、シグネチャ照合コンポーネント630は、1つまたは複数のカテゴリに関連付けられているデータ構造またはクラスタを識別することによってクエリパブリケーションを選択してもよい。いくつかの事例では、シグネチャ照合コンポーネント630は、パブリケーションの初期検索を実行することによって1つまたは複数のカテゴリに関連付けられたクエリパブリケーションを選択して、パブリケーション内のカテゴリまたはパブリケーションに関連付けられたメタデータに含まれるカテゴリを識別する。パブリケーションが、そのパブリケーションの説明またはメタデータ内に、一組のカテゴリの1つまたは複数のカテゴリに一致するカテゴリを含む場合、そのパブリケーションは、検索に含めるために選択される。
いくつかの例示的な実施形態では、シグネチャ照合コンポーネント630は、2つ以上の検索ノードにわたって分散されている。検索ノードは、検索に使用できるパブリケーションの総数を含むパブリケーションデータベースにアクセスする。各検索ノードは、少なくとも1つの画像に対するカテゴリセットおよび画像シグネチャのうちの少なくとも1つを含む要求を受信する。各ノードは、パブリケーションデータベースに格納されているパブリケーションの一部分を検索するために割り当てられる。要求を受信すると、各ノードは、ノードに割り当てられたパブリケーションの一部分が一組のカテゴリの少なくとも1つのカテゴリ内に含まれているかどうかを判定する。ノードに割り当てられたパブリケーションの一部分のうちの一部が少なくとも1つのカテゴリ内に含まれる場合、ノードは、パブリケーションの一部分の各パブリケーションに対する画像シグネチャを識別する。各パブリケーションの画像シグネチャは、パブリケーションの代表的画像と関連付けられてもよい。
動作1120では、シグネチャ照合コンポーネント630は、少なくとも1つの画像に対する画像シグネチャをクエリパブリケーションに関連付けられた一組の画像シグネチャと比較して、1つまたは複数の類似の画像シグネチャを決定する。シグネチャ照合コンポーネント630は、クエリパブリケーション内の各パブリケーションの少なくとも1つの画像(たとえば、代表的画像または代表的画像シグネチャ)について画像シグネチャを比較してもよい。シグネチャ照合コンポーネント630が2つ以上の検索ノードにわたって分散されている例示的な実施形態では、シグネチャ照合コンポーネント630の各ノードは、少なくとも1つの画像の画像シグネチャと、ノードに割り当てられ、カテゴリセットの少なくとも1つのカテゴリに一致するパブリケーションの一部分のうちの一部に対する画像シグネチャとを比較する。シグネチャ照合コンポーネント630は、動作740で上述した方法と同様にまたは同じ方法で画像シグネチャを比較してもよい。
動作1130では、シグネチャ照合コンポーネント630は、一組のパブリケーションを、1つまたは複数の類似の画像シグネチャに関連付けられたクエリパブリケーションの一部分として識別する。いくつかの実施形態では、シグネチャ照合コンポーネント630は、少なくとも1つの画像の画像シグネチャと少なくとも部分的に一致する画像シグネチャを有するパブリケーションを識別する。シグネチャ照合コンポーネント630は、動作750に関して説明した方法と同様または同一の方法で、パブリケーションに順位を割り当てる。いくつかの実施形態では、シグネチャ照合コンポーネント630は、指定された閾値を超える順位付けスコア(たとえば、外観スコア)を有する一組のパブリケーションに含めるためのパブリケーションを選択する。指定された閾値は、予め定められているかまたは動的であってもよい。閾値が動的である場合、閾値は、検索要求に含まれる選択、ネットワークトラフィックメトリック、ユーザの嗜好、動作1120で識別されたパブリケーションの数の比率もしくは割合、それらの組み合わせ、または他の好適な測定基準のうちの1つもしくは複数によって決定されてもよい。
図12は、いくつかの例示的な実施形態による、画像認識、画像シグネチャおよびカテゴリ予測に基づいて一組の画像を識別する方法1200を実行する際のコンピュータビジョンコンポーネント208の動作のフローチャートである。このフローチャートの様々な動作が順次提示され説明されているが、当業者は、動作の一部または全部が異なる順序で実行され、組み合わされ、または省略され、または並列に実行され得ることを理解するだろう。方法1200における動作は、図6に関して上述した構成要素を使用して、コンピュータビジョンコンポーネント208によって実行してもよい。いくつかの実施形態では、方法1200の動作は、コンピュータビジョンコンポーネント208の構成要素および人工知能フレームワーク144の構成要素によって、またはそれらと共に実行される。いくつかの実施形態では、方法1200の動作は、方法700、1000または1100の一部またはサブ動作を形成する。
動作1210では、画像コンポーネント610は、ビデオを含む一組のフレームを受信する。一組のフレームは、少なくとも1つの画像を含む。いくつかの実施形態では、一組のフレームは、画像キャプチャデバイスによる一組のフレームのキャプチャ中に受信される。これらの事例では、画像コンポーネント610に関連付けられたアプリケーションは、ユーザデバイス上で動作しており、画像キャプチャデバイス(たとえば、カメラ)に一組のフレームをキャプチャさせ、リアルタイムまたはほぼリアルタイムで一組のフレームを画像コンポーネント610へ送信させる。たとえば、ユーザデバイス上でアプリケーションを開くと、アプリケーションは、画像キャプチャデバイスのアクセスを可能にする1つまたは複数のユーザインタフェース要素を提示させ、アプリケーション内の一組のフレームをキャプチャするための1つまたは複数のプロセスを開始させてもよい。いくつかの事例では、アプリケーションは、一組のフレームが画像コンポーネント610に送信されるのと同時に、一組のフレームがキャプチャされているときに一組のフレームを提示させるユーザインタフェース要素を含む。いくつかの事例では、アプリケーションのユーザインタフェース内での一組のフレームのキャプチャおよび提示と、画像コンポーネント610への一組のフレームの送信との間に時間遅延が存在する。
いくつかの実施形態では、画像コンポーネント610は、以前にキャプチャされた一組のフレームを受信するため、ユーザデバイス上の画像コンポーネント610に関連付けられたアプリケーションは、データ記憶装置上の一組のフレームにアクセスするか、または一組のフレームを画像コンポーネント610へ送信する前に、一組のフレームのキャプチャを終了する。たとえば、アプリケーションは、スマートフォン(たとえばユーザデバイス)上のカメラロールまたはクラウドサービスからの以前にキャプチャされたビデオの選択を可能にする1つまたは複数のユーザインタフェース要素を提供してもよい。
動作1220では、画像解釈コンポーネント620は、第1の画像内の関心対象に対する第1のカテゴリセットおよび第2の画像内の関心対象に対する第2のカテゴリセットを決定する。第1の画像および第2の画像は、ビデオの一組のフレームに由来する個々のフレームであってもよい。いくつかの実施形態では、画像解釈コンポーネント620は、動作720のうちの1つまたは複数において上述した方法と同様または同じ方法で、第1のカテゴリセットおよび第2のカテゴリセットを決定する。第1の画像に対する第1のカテゴリセットおよび第2の画像に対する第2のカテゴリセットを参照して説明したが、画像解釈コンポーネント620は、一組のフレーム内に含まれる任意の数の画像に対する任意の数のカテゴリセットを決定してもよい。たとえば、画像解釈コンポーネント620は、一組の画像のうちの総数の画像までを含む複数の画像に対する複数のカテゴリセットを決定してもよい。
第1のカテゴリセットおよび第2のカテゴリセットに関して説明したが、画像コンポーネント610が一組の画像を受信する場合、画像解釈コンポーネント620は、一組のフレームを含む画像の組み合わせに対する組み合わせカテゴリセットを決定する。画像解釈コンポーネント620は、一組のフレームを含む2つ以上の画像の合成画像を生成してもよい。合成画像は、2つ以上の画像の各画像の複数の視覚的属性、アスペクトおよび特性を組み込んでもよい。画像解釈コンポーネント620は、動作720に関して上述した方法と同様または同じ方法で合成画像から合成画像カテゴリセットを決定してもよい。
動作1230では、画像解釈コンポーネント620は、第1の画像の第1のベクトル表現を含む第1の画像シグネチャおよび第2の画像の第2のベクトル表現を含む第2の画像シグネチャを生成する。いくつかの実施形態では、画像解釈コンポーネント620は、動作730に関して上述した方法と同様または同一の方法で、第1の画像に対する第1の画像シグネチャおよび第2の画像に対する第2の画像シグネチャを生成する。画像解釈コンポーネント620が一組のフレームの2つ以上の画像から合成画像を生成する実施形態では、画像解釈コンポーネント620は、合成画像のベクトル表現を含む合成画像シグネチャを生成する。いくつかの事例では、ベクトル表現は、第1の値(たとえば、0)と第2の値(たとえば、1)との間の浮動小数点値で一組のある値を含む。いくつかの実施形態では、ベクトル表現は、1または0のいずれかで一組のある値を含むバイナリベクトル表現である。画像解釈コンポーネント620が、一組のフレームの画像の組み合わせに対して組み合わせカテゴリセットを識別する場合、画像解釈コンポーネント620は、一組のフレームの中の画像の組み合わせに対する組み合わせ画像シグネチャを生成する。いくつかの例示的な実施形態では、組み合わせカテゴリセットを識別する画像解釈コンポーネント620は、一組のフレーム内の画像の組み合わせの各画像に対する画像シグネチャを生成するため、各画像は、独立した、場合によっては明確に区別された、画像シグネチャに関連付けられてもよい。
いくつかの実施形態では、画像解釈コンポーネント620は、第1の画像内の関心対象の1つまたは複数の属性を表す一組の第1のアスペクトおよび第2の画像内の関心対象の1つまたは複数の属性を表す一組の第2のアスペクトを識別する。画像解釈コンポーネント620が合成画像を生成する場合、画像解釈コンポーネント620は、合成画像内の関心対象の1つまたは複数の属性を表すアスペクトの合成画像セットを生成する。画像解釈コンポーネント620は、動作1010(すなわち、一組のアスペクトの識別)および動作1020(すなわち、一組のアスペクトのうちの各アスペクトに対する確率の識別)に関して説明した方法と同様または同一の方法で、一組の第1のアスペクト、一組の第2のアスペクトまたはアスペクトの合成画像セットを生成する。
動作1240では、シグネチャ照合コンポーネント630は、パブリケーションデータベース内の一組のパブリケーションを識別する。シグネチャ照合コンポーネント630は、第1のカテゴリセット、第2のカテゴリセット、第1の画像シグネチャおよび第2の画像シグネチャを使用して一組のパブリケーションを識別する。画像解釈コンポーネント620が組み合わせカテゴリセットおよび組み合わせ画像シグネチャを識別する場合、シグネチャ照合コンポーネント630は、一組のフレーム内の画像の組み合わせに対する組み合わせカテゴリセットおよび組み合わせ画像シグネチャを使用して一組のパブリケーションを識別する。画像解釈コンポーネント620が、一組のフレーム内の画像の組み合わせの各画像について組み合わせカテゴリセットおよび個別の画像シグネチャを識別する場合、シグネチャ照合コンポーネント630は、画像の組み合わせの各画像に対する組み合わせカテゴリセットおよび個別の画像シグネチャを使用して一組のパブリケーションを識別する。これらの事例では、一組のパブリケーションは、各画像シグネチャに対して識別され、したがって、画像の組み合わせの各画像に対して識別される。画像解釈コンポーネント620が合成画像を生成し、合成画像カテゴリセットを識別し、合成画像シグネチャを決定する実施形態では、シグネチャ照合コンポーネント630は、合成画像カテゴリセットおよび合成画像シグネチャを使用して一組のパブリケーションを識別する。上述の実施形態のうちの1つまたは複数では、シグネチャ照合コンポーネント630は、動作740または動作1110〜1130に関して上述した方法と同様または同一の方法で一組のパブリケーションを識別する。
動作1250では、シグネチャ照合コンポーネント630は、第1の画像シグネチャおよび第2の画像シグネチャのうちの1つまたは複数に基づいて一組のパブリケーションの各パブリケーションに順位を割り当てる。順位を各パブリケーションに割り当てることによって、シグネチャ照合コンポーネント630は、パブリケーションの順位付けリストを生成し、順位付けリストは、割り当てられたパブリケーションの順位に従って順序付けられた一組のパブリケーションの少なくとも一部を含む。シグネチャ照合コンポーネント630が組み合わせカテゴリセットおよび組み合わせ画像シグネチャに対する一組のパブリケーションを識別する場合、シグネチャ照合コンポーネント630は、組み合わせ画像シグネチャに基づいて各パブリケーションに順位を割り当てる。シグネチャ照合コンポーネント630が組み合わせカテゴリに対する一組のパブリケーションおよび画像の組み合わせの各画像に対する個別の画像シグネチャを識別する場合、シグネチャ照合コンポーネント630は、パブリケーションおよびパブリケーションの各組を識別するために使用された個別の画像シグネチャに基づいて各パブリケーションに順位を割り当てる。シグネチャ照合コンポーネント630が合成画像カテゴリセットおよび合成画像シグネチャを使用して一組のパブリケーションを識別する実施形態では、シグネチャ照合コンポーネント630は、合成画像シグネチャを使用して一組のパブリケーションの各パブリケーションに順位を割り当てる。上記で参照された実施形態のうちの1つまたは複数では、シグネチャ照合コンポーネント630は、動作750または動作1130に関して上述した方法と同様または同一の方法で各パブリケーションに順位を割り当てる。
画像解釈コンポーネント620が一組のフレームの画像の属性を表す一組のアスペクトを識別する実施形態では、アスペクト順位付けコンポーネント640は、一組のパブリケーションの各パブリケーションについて一組のメタデータ記述子を識別し、各パブリケーションのアスペクト順位付けスコアを生成し、アスペクト順位付けスコアと、一組のパブリケーションを識別するために部分的に使用された画像シグネチャに基づく順位との組み合わせを反映する第2の序列に従ってパブリケーションの修正順位付けリストを生成する。画像解釈コンポーネント620が第1の画像を表す一組の第1のアスペクトおよび一組の第2の画像を表す第2のアスペクトを識別する場合、アスペクト順位付けコンポーネント640は、第1の画像および第2の画像について識別された一組のパブリケーションの各パブリケーションに対する一組のメタデータ記述子を識別し、各パブリケーションのアスペクト順位付けスコアを生成し、アスペクト順位付けスコアと、一組のパブリケーションを識別するために部分的に使用された画像シグネチャに基づく順位との組み合わせを反映する第2の序列に従ってパブリケーションの修正順位付けリストを生成する。画像解釈コンポーネント620が合成画像を表す合成画像セットのアスペクトを識別する場合、アスペクト順位付けコンポーネント640は、合成画像について識別された一組のパブリケーションの各パブリケーションに対して一組のメタデータ記述子を識別し、各パブリケーションのアスペクト順位付けスコアを生成し、アスペクト順位付けスコアと合成画像シグネチャに基づく順位との組み合わせを反映する第2の序列に従ってパブリケーションの修正順位付けリストを生成する。上記で参照した実施形態または事例のうちの1つまたは複数では、アスペクト順位付けコンポーネント640は、動作1030に関して上述した方法と同様または同一の方法で、一組のメタデータ記述子を識別し、動作1040に関して上述した方法と同様または同一の方法でアスペクト順位付けスコアを生成し、動作1050に関して説明した方法と同様または同一の方法で、パブリケーションの修正順位付けリストを生成する。
図13は、いくつかの例示的な実施形態による、機械可読媒体(たとえば、機械可読記憶媒体)から命令を読み込み、本明細書で論じる方法論のうちの任意の1つまたは複数を実行することができる機械1300の構成要素を示すブロック図である。具体的には、図13は、コンピュータシステムの例示的形態における機械1300の図表示を示しており、そのコンピュータシステム内で、本明細書で論じる方法論のうちの任意の1つまたは複数を機械1300に実施させるための命令1310(たとえば、ソフトウェア、プログラム、アプリケーション、アプレット、アプリまたは他の実行可能コード)が実行されてもよい。たとえば、命令1310は、機械1300に図4、図7、図8および図9のフローチャートを実行させてもよい。追加的または代替的に、命令1310は、図1〜図6のサービスおよび構成要素などに関連付けられたサーバを実装してもよい。命令1310は、一般的なプログラムされていない機械1300を、記載の方法で説明かつ図示された機能を実行するようにプログラムされた特定の機械1300に変換する。
代替実施形態では、機械1300は、独立型デバイスとして動作するかまたは他の機械に接続(たとえば、ネットワーク化)されてもよい。ネットワーク化された配置では、機械1300は、サーバマシンもしくはサーバ・クライアントネットワーク環境内のクライアントマシンの能力内で、またはピアツーピア(もしくは分散型)ネットワーク環境内のピアマシンとして動作してもよい。機械1300は、スイッチ、コントローラ、サーバコンピュータ、クライアントコンピュータ、パーソナルコンピュータ(PC)、タブレットコンピュータ、ラップトップコンピュータ、ネットブック、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、エンタテインメントメディアシステム、携帯電話、スマートフォン、モバイルデバイス、ウェアラブルデバイス(たとえば、スマートウォッチ)、スマートホームデバイス(たとえば、スマート家電)、他のスマートデバイス、ウェブアプライアンス、ネットワークルータ、ネットワークスイッチ、ネットワークブリッジ、または順次または別の方法で、機械1300によってとられるべき動作を指定する命令1310を実行することができる任意の機械を含んでもよいが、これらに限定されない。さらに、単一の機械1300のみが示されているが、「機械」という用語は、本明細書で論じる方法論のうちの任意の1つまたは複数を行うために個別にまたは共同で命令1310を実行する機械1300の集合体も含むものとする。
機械1300は、バス1302を介するなどで互いに通信するように構成されてもよい、プロセッサ1304、メモリ/記憶装置1306およびI/Oコンポーネント1318を含んでもよい。例示的な実施形態では、プロセッサ1304(たとえば、中央処理装置(CPU)、縮小命令セット計算(RISC)プロセッサ、複合命令セット計算(CISC)プロセッサ、グラフィック処理装置(GPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、無線周波数集積回路(RFIC)、他のプロセッサまたはそれらの任意の好適な組み合わせ)は、たとえば、命令1310を実行してもよいプロセッサ1308およびプロセッサ1312を含んでもよい。「プロセッサ」という用語は、命令を同時に実行してもよい2つ以上の独立したプロセッサ(場合により「コア」と称する)を含んでもよいマルチコアプロセッサを含むことを意図している。図13は、マルチプロセッサ1304を示すが、機械1300は、シングルコアを有するシングルプロセッサ、マルチコアを有するシングルプロセッサ(たとえば、マルチコアプロセッサ)、シングルコアを有するマルチプロセッサ、マルチプルコアを有するマルチプロセッサまたはそれらの任意の組み合わせを含んでもよい。
メモリ/記憶装置1306は、メインメモリなどのメモリ1314、または他のメモリ記憶装置、およびストレージユニット1316を含んでもよく、両方ともバス1302などを介してプロセッサ1304にアクセス可能である。ストレージユニット1316およびメモリ1314は、本明細書に記載の方法論または機能のうちの任意の1つまたは複数を具体化する命令1310を格納する。命令1310はまた、機械1300によって命令を実行している間、完全にまたは部分的に、メモリ1314内、ストレージユニット1316内、少なくとも1つのプロセッサ1304内(たとえば、プロセッサのキャッシュメモリ内)またはそれらの任意の好適な組み合わせ内に存在してもよい。したがって、メモリ1314、ストレージユニット1316およびプロセッサ1304のメモリは、機械可読媒体の例である。
本明細書で使用されるとき、「機械可読記憶媒体」は、命令およびデータを一時的または恒久的に記憶することができる装置を意味し、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、バッファメモリ、フラッシュメモリ、光媒体、磁気媒体、キャッシュメモリ、他の種類のストレージ(たとえば、消去可能プログラマブル読み出し専用メモリ(EEPROM))および/またはそれらの任意の好適な組み合わせを含んでもよいが、これらに限定されない。「機械可読記憶媒体」という用語は、命令1310を記憶することができる単一の媒体または複数の媒体(たとえば、集中型もしくは分散型データベースまたは関連するキャッシュおよびサーバ)を含むように解釈されるべきである。「機械可読記憶媒体」という用語はまた、機械(たとえば、機械1300)による実行のための命令(たとえば、命令1310)を記憶することができる任意の媒体または複数の媒体の組み合わせを含むと解釈されるべきであるため、命令は、機械の1つまたは複数のプロセッサ(たとえば、プロセッサ1304)によって実行されるとき、機械に本明細書に記載の方法論のうちの任意の1つまたは複数の方法を実行させる。したがって、「機械可読記憶媒体」は、単一の記憶装置またはデバイス、ならびに複数の記憶装置またはデバイスを含む「クラウドベースの」ストレージシステムまたはストレージネットワークを指す。「機械可読媒体」という用語は、機械可読記憶信号を含む。
I/Oコンポーネント1318は、入力を受信し、出力を提供し、出力を生成し、情報を送信し、情報を交換し、測定値を取り込むなどのための多種多様な構成要素を含んでもよい。特定の機械に含まれる特定のI/Oコンポーネント1318は、機械の種類に依存することとなる。たとえば、携帯電話などの携帯デバイスは、タッチ入力デバイスまたは他のそのような入力機構を含む可能性がある一方で、ヘッドレスサーバデバイスは、そのようなタッチ入力デバイスを含まない可能性がある。I/Oコンポーネント1318は、図13には示されていない他の多くの構成要素を含んでもよいことが理解されよう。I/Oコンポーネント1318は、単に以下の説明を単純化するために機能に従ってグループ化され、グループ化は、決して限定的ではなく、様々な例示的な実施形態では、I/Oコンポーネント1318は、出力コンポーネント1326および入力コンポーネント1328を含んでもよい。出力コンポーネント1326は、視覚的構成要素(たとえば、プラズマディスプレイパネル(PDP)、発光ダイオード(LED)ディスプレイ、液晶ディスプレイ(LCD)、プロジェクタまたはブラウン管(CRT)などのディスプレイ)、音響構成要素(たとえば、スピーカ)、触覚構成要素(たとえば、振動モータ、抵抗機構)、他の信号発生器などを含んでもよい。入力コンポーネント1328は、英数字入力コンポーネント(たとえば、キーボード、英数字入力を受信するように構成されたタッチスクリーン、光学式キーボードまたは他の英数字入力コンポーネント)、ポイントベースの入力コンポーネント(たとえば、マウス、タッチパッド、トラックボール、ジョイスティック、モーションセンサまたは他のポインティングデバイス)、触覚入力コンポーネント(たとえば、物理的ボタン、タッチの位置および/または力を提供するタッチスクリーン、または他の触覚入力コンポーネント)、音声入力コンポーネント(たとえば、マイクロフォン)などを含んでもよい。
さらなる例示的な実施形態では、I/Oコンポーネント1318は、他の多様な構成要素の中から、バイオメトリックコンポーネント1330、動きコンポーネント1334、環境コンポーネント1336または位置コンポーネント1338を含んでもよい。たとえば、バイオメトリックコンポーネント1330は、表情(たとえば、手の表現、顔の表情、声の調子、身体のジェスチャまたはアイトラッキング)を検出し、生体信号(たとえば、血圧、心拍数、体温、発汗または脳波)を測定し、人物を識別する(たとえば、音声識別、網膜識別、顔識別、指紋識別または脳波図に基づく識別)などの構成要素を含んでもよい。動きコンポーネント1334は、加速度センサコンポーネント(たとえば、加速度計)、重力センサコンポーネント、回転センサコンポーネント(たとえば、ジャイロスコープ)などを含んでもよい。環境コンポーネント1336は、たとえば、照度センサコンポーネント(たとえば、光度計)、温度センサコンポーネント(たとえば、周囲温度を検出する1つまたは複数の温度計)、湿度センサコンポーネント、圧力センサコンポーネント(たとえば、気圧計)、音響センサコンポーネント(たとえば、バックグラウンドノイズを検出する1つまたは複数のマイクロフォン)、近接センサコンポーネント(たとえば、近くの物体を検出する赤外線センサ)、ガスセンサ(たとえば、安全のために有害ガスの濃度を検出するか大気中の汚染物質を測定するためのガス検出センサ)または周囲の物理的環境に対応する指標、測定値もしくは信号を提供してもよい他の構成要素を含んでもよい。位置コンポーネント1338は、位置センサコンポーネント(たとえば、全地球測位システム(GPS)受信機コンポーネント)、高度センサコンポーネント(たとえば、高度計または高度を導出してもよい気圧を検出する気圧計)、方位センサコンポーネント(たとえば、磁力計)などを含んでもよい。
通信は、多種多様な技術を使用して実施してもよい。I/Oコンポーネント1318は、カップリング1324およびカップリング1322を介して、それぞれネットワーク1332またはデバイス1320に機械1300を接続するように動作可能な通信コンポーネント1340を含んでもよい。たとえば、通信コンポーネント1340は、ネットワーク1332とインタフェースするためのネットワークインタフェースコンポーネントまたは他の好適なデバイスを含んでもよい。さらなる例では、通信コンポーネント1340は、有線通信コンポーネント、無線通信コンポーネント、セルラ方式通信コンポーネント、近距離通信(NFC)コンポーネント、Bluetooth(登録商標)コンポーネント(たとえば、Bluetooth(登録商標)Low Energy)、Wi−Fi(登録商標)コンポーネント、および他のモダリティを介した通信を提供するための他の通信コンポーネントを含んでもよい。デバイス1320は、他の機械または多種多様な周辺デバイス(たとえば、USBを介して接続された周辺デバイス)のうちのいずれかであってもよい。
さらに、通信コンポーネント1340は、識別子を検出してもよいか、または識別子を検出するように動作可能な構成要素を含んでもよい。たとえば、通信コンポーネント1340は、無線周波数識別(RFID)タグリーダコンポーネント、NFCスマートタグ検出コンポーネント、光学式リーダコンポーネント(たとえば、ユニバーサルプロダクトコード(UPC)バーコードなどの一次元バーコードを検出するための光学センサ、クイックレスポンス(QR)コード、Aztecコード、Data Matrix、Dataglyph、MaxiCode、PDF417、Ultra Code、UCC RSS−2Dバーコード、他の光学コードなどの多次元バーコード)、または音響検出コンポーネント(たとえば、タグ付き音声信号を識別するためのマイクロフォン)を含んでもよい。加えて、インターネットプロトコル(IP)地理的位置情報による位置、Wi−Fi(登録商標)信号三角測量による位置、特定の位置を示してもよいNFCビーコン信号を検出することによる位置など、様々な情報は、通信コンポーネント1340を介して導出されてもよい。
様々な例示的な実施形態では、ネットワーク1332の1つまたは複数の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想私設ネットワーク(VPN)、ローカルエリアネットワーク(LAN)、無線LAN(WLAN)、ワイドエリアネットワーク(WAN)、ワイヤレスWAN(WW AN)、メトロポリタンエリアネットワーク(MAN)、インターネット、インターネットの一部、公衆交換電話網(PSTN)の一部、従来の電話回線サービス(POTS)ネットワーク、携帯電話ネットワーク、無線ネットワーク、Wi−Fi(登録商標)ネットワーク、別の種類のネットワーク、または2つ以上のそのようなネットワークの組み合わせであってもよい。たとえば、ネットワーク1332またはネットワーク1332の一部は、無線ネットワークまたはセルラネットワークを含んでもよく、カップリング1324は、符号分割多元接続(CDMA)接続、移動体通信用グローバルシステム(GSM)接続または別の種類のセルラカップリングもしくはワイヤレスカップリングであってもよい。この例では、カップリング1324は、シングルキャリア無線伝送技術(1xRTT)、エボリューションデータ最適化(EVDO)技術、汎用パケット無線サービス(GPRS)技術、GSM進化型高速データレート(EDGE)技術、3Gを含む第3世代パートナーシッププロジェクト(3GPP)、第4世代無線(4G)ネットワーク、ユニバーサル・モバイル・テレコミュニケーション・システム(UMTS)、高速パケットアクセス(HSPA)、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMAX)、ロングタームエボリューション(LTE)規格、他の規格設定団体によって定義された他の規格、他の長距離プロトコル、または他のデータ転送技術を実装してもよい。
命令1310は、ネットワークインタフェースデバイス(たとえば、通信コンポーネント1340に含まれるネットワークインタフェースコンポーネント)を介して伝送媒体を使用し、いくつかの周知の転送プロトコル(たとえば、ハイパーテキスト転送プロトコル(HTTP))のいずれか1つを利用して、ネットワーク1332を介して送信または受信されてもよい。同様に、命令1310は、カップリング1322(たとえば、ピアツーピアカップリング)を介して伝送媒体を使用してデバイス1320に送信または受信されてもよい。「伝送媒体」という用語は、機械1300による実行のために命令1310を格納、コード化または搬送することができ、そのようなソフトウェアの通信を容易にするためのデジタルもしくはアナログ通信信号または他の無形媒体を含む、任意の無形媒体を含むと解釈されるものとする。伝送媒体は、機械可読媒体の一実施形態である。
以下の番号付き実施例は、実施形態である。
(実施例1)
サーバの少なくとも1つのプロセッサによって、関心対象の少なくとも一部を表す少なくとも1つの画像を受信することと、前記少なくとも1つのプロセッサによって、前記関心対象に対するカテゴリセットを決定することと、前記少なくとも1つのプロセッサによって、前記少なくとも1つの画像に対する画像シグネチャを生成することであって、前記画像シグネチャは、前記少なくとも1つの画像のベクトル表現を含む、ことと、前記カテゴリセットおよび前記少なくとも1つの画像に対する前記画像シグネチャを使用して、前記少なくとも1つのプロセッサによって、パブリケーションデータベース内の一組のパブリケーションを識別することと、前記画像シグネチャに基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成することと、コンピューティングデバイスにおいて前記パブリケーションの順位付けリストを提示させることであって、前記少なくとも1つの画像は、前記コンピューティングデバイスから受信されたものであることと、を含む、方法。
(実施例2)
前記少なくとも1つのプロセッサによって、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別することと、前記一組のアスペクトの各アスペクトについて、前記少なくとも1つの画像内の前記関心対象が指定されたアスペクトを含む確率を決定して、アスペクト毎に信頼性スコアを生成することと、をさらに含む、実施例1に記載の方法。
(実施例3)
前記1つまたは複数の属性は、前記関心対象の外観の要素であり、前記一組のアスペクトの各アスペクトは、指定された属性に関連付けられた記述語である、実施例2に記載の方法。
(実施例4)
前記順位付けリストは、第1の序列に従って編成され、前記方法は、前記一組のパブリケーションの各パブリケーションについて、一組のメタデータ記述子を識別することと、前記一組のパブリケーションの各パブリケーションについてアスペクト順位付けスコアを生成することであって、前記アスペクト順位付けスコアは、前記関心対象の前記一組のアスペクトと前記一組のメタデータ記述子との重み付け比較を実行することによって生成される、ことと、前記アスペクト順位付けスコアと前記画像シグネチャに基づく前記順位との組み合わせを反映する第2の序列に従って編成されたパブリケーションの修正順位付けリストを生成することと、をさらに含む、実施例2または3に記載の方法。
(実施例5)
前記関心対象に対する前記一組のカテゴリを決定することは、前記少なくとも1つのプロセッサによって、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別することと、前記一組のカテゴリに含めるために、前記一組のアスペクトのうちの少なくとも1つのアスペクトに関連付けられた1つまたは複数のカテゴリを決定することと、をさらに含む、実施例1〜4のいずれか1つに記載の方法。
(実施例6)
前記一組のカテゴリおよび前記画像シグネチャを使用して前記一組のパブリケーションを識別することは、前記一組のカテゴリの1つまたは複数のカテゴリに関連付けられたクエリパブリケーションを選択することと、前記少なくとも1つの画像に対する前記画像シグネチャを前記クエリパブリケーションに関連付けられた一組の画像シグネチャと比較して、1つまたは複数の類似の画像シグネチャを決定することと、前記一組のパブリケーションを前記1つまたは複数の類似の画像シグネチャに関連付けられた前記クエリパブリケーションの一部分として識別することと、をさらに含む、実施例1〜5のいずれか1つに記載の方法。
(実施例7)
前記少なくとも1つの画像は、ビデオを含む一組のフレームであり、前記方法は、前記少なくとも1つのプロセッサによって、第1の画像における前記関心対象に対する前記第1のカテゴリセットおよび第2の画像における前記関心対象に対する第2のカテゴリセットを決定することであって、前記第1の画像および前記第2の画像は、前記ビデオの前記一組のフレームから選択される、ことと、前記少なくとも1つのプロセッサによって、前記第1の画像の第1のベクトル表現を含む第1の画像シグネチャおよび前記第2の画像の第2のベクトル表現を含む第2の画像シグネチャを生成することと、前記第1カテゴリセット、前記第2カテゴリセット、前記第1の画像シグネチャおよび前記第2の画像シグネチャを使用して、前記少なくとも1つのプロセッサによって、前記パブリケーションデータベース内の前記一組のパブリケーションを識別することと、前記第1の画像シグネチャおよび前記第2の画像シグネチャのうちの1つまたは複数に基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成することと、をさらに含む、実施例1〜6のいずれか1つに記載の方法。
(実施例8)
1つまたは複数のハードウェアプロセッサと、前記1つまたは複数のハードウェアプロセッサによって実行されるとき、前記1つまたは複数のハードウェアプロセッサに、サーバの1つまたは複数のプロセッサによって、関心対象の少なくとも一部を表す少なくとも1つの画像を受信することと、前記1つまたは複数のプロセッサによって、前記関心対象に対するカテゴリセットを決定することと、前記1つまたは複数のプロセッサによって、前記少なくとも1つの画像に対する画像シグネチャを生成することであって、前記画像シグネチャは、前記少なくとも1つの画像のベクトル表現を含む、ことと、前記少なくとも1つの画像に対する前記カテゴリセットおよび前記画像シグネチャに基づいて、前記1つまたは複数のプロセッサによって、パブリケーションデータベース内の一組のパブリケーションを識別することと、前記画像シグネチャに基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成することと、コンピューティングデバイスにおいて前記パブリケーションの順位付けリストを提示させることであって、前記少なくとも1つの画像は、前記コンピューティングデバイスから受信されたものであることと、を含む、動作を実行させる命令を含む機械可読記憶媒体と、を含むシステム。
(実施例9)
前記動作は、前記1つまたは複数のプロセッサによって、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別することと、前記一組のアスペクトの各アスペクトについて、前記少なくとも1つの画像内の前記関心対象が指定されたアスペクトを含む確率を決定して、アスペクト毎に信頼性スコアを生成することと、をさらに含む、実施例8に記載のシステム。
(実施例10)
前記1つまたは複数の属性は、前記関心対象の外観の要素であり、前記一組のアスペクトの各アスペクトは、指定された属性に関連付けられた記述語である、実施例9に記載のシステム。
(実施例11)
前記順位付けリストは、第1の序列に従って編成され、前記動作は、前記一組のパブリケーションの各パブリケーションについて、一組のメタデータ記述子を識別することと、前記一組のパブリケーションの各パブリケーションについてアスペクト順位付けスコアを生成することであって、前記アスペクト順位付けスコアは、前記関心対象の前記一組のアスペクトと前記一組のメタデータ記述子との重み付け比較を実行することによって生成される、ことと、前記アスペクト順位付けスコアと前記画像シグネチャに基づく前記順位との組み合わせを反映する第2の序列に従って編成されたパブリケーションの修正順位付けリストを生成することと、をさらに含む、実施例9または10に記載のシステム。
(実施例12)
前記関心対象に対する前記カテゴリセットを決定することは、前記1つまたは複数のプロセッサによって、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別することと、前記カテゴリセットに含めるために、前記一組のアスペクトのうちの少なくとも1つのアスペクトに関連付けられた1つまたは複数のカテゴリを決定することと、をさらに含む、実施例8〜11のいずれか1つに記載のシステム。
(実施例13)
前記カテゴリセットおよび前記画像シグネチャを使用して前記一組のパブリケーションを識別することは、前記カテゴリセットの1つまたは複数のカテゴリに関連付けられたクエリパブリケーションを選択することと、前記少なくとも1つの画像に対する前記画像シグネチャを前記クエリパブリケーションに関連付けられた一組の画像シグネチャと比較して、1つまたは複数の類似の画像シグネチャを決定することと、前記一組のパブリケーションを前記1つまたは複数の類似の画像シグネチャに関連付けられた前記クエリパブリケーションの一部分として識別することと、をさらに含む、実施例8〜12のいずれか1つに記載のシステム。
(実施例14)
前記少なくとも1つの画像は、ビデオを含む一組のフレームであり、前記動作は、前記1つまたは複数のプロセッサによって、第1の画像における前記関心対象に対する前記第1のカテゴリセットおよび第2の画像における前記関心対象に対する第2のカテゴリセットを決定することであって、前記第1の画像および前記第2の画像は、前記ビデオの前記一組のフレームから選択される、ことと、前記1つまたは複数のプロセッサによって、前記第1の画像の第1のベクトル表現を含む第1の画像シグネチャおよび前記第2の画像の第2のベクトル表現を含む第2の画像シグネチャを生成することと、前記第1カテゴリセット、前記第2カテゴリセット、前記第1の画像シグネチャおよび前記第2の画像シグネチャを使用して、前記1つまたは複数のプロセッサによって、前記パブリケーションデータベース内の前記一組のパブリケーションを識別することと、前記第1の画像シグネチャおよび前記第2の画像シグネチャのうちの1つまたは複数に基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成することと、をさらに含む、実施例8〜13のいずれか1つに記載のシステム。
(実施例15)
機械の1つまたは複数のプロセッサによって実行されるとき、前記機械に、前記の前記1つまたは複数のプロセッサによって、関心対象の少なくとも一部を表す少なくとも1つの画像を受信することと、前記1つまたは複数のプロセッサによって、前記関心対象に対するカテゴリセットを決定することと、前記1つまたは複数のプロセッサによって、前記少なくとも1つの画像に対する画像シグネチャを生成することであって、前記画像シグネチャは、前記少なくとも1つの画像のベクトル表現を含む、ことと、前記少なくとも1つの画像に対する前記カテゴリセットおよび前記画像シグネチャに基づいて、前記1つまたは複数のプロセッサによって、パブリケーションデータベース内の一組のパブリケーションを識別することと、前記画像シグネチャに基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成することと、コンピューティングデバイスにおいて前記パブリケーションの順位付けリストを提示させることであって、前記少なくとも1つの画像は、前記コンピューティングデバイスから受信されたものであることと、を含む、動作を実行させる命令を含む、機械可読記憶媒体。
(実施例16)
前記動作は、前記1つまたは複数のプロセッサによって、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別することと、前記一組のアスペクトの各アスペクトについて、前記少なくとも1つの画像内の前記関心対象が指定されたアスペクトを含む確率を決定して、アスペクト毎に信頼性スコアを生成することと、をさらに含む、実施例15に記載の機械可読記憶媒体。
(実施例17)
前記順位付けリストは、第1の序列に従って編成され、前記動作は、前記一組のパブリケーションの各パブリケーションについて、一組のメタデータ記述子を識別することと、前記一組のパブリケーションの各パブリケーションについてアスペクト順位付けスコアを生成することであって、前記アスペクト順位付けスコアは、前記関心対象の前記一組のアスペクトと前記一組のメタデータ記述子との重み付け比較を実行することによって生成される、ことと、前記アスペクト順位付けスコアと前記画像シグネチャに基づく前記順位との組み合わせを反映する第2の序列に従って編成されたパブリケーションの修正順位付けリストを生成することと、をさらに含む、実施例16に記載の機械可読記憶媒体。
(実施例18)
前記関心対象に対する前記カテゴリセットを決定することは、前記1つまたは複数のプロセッサによって、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別することと、前記カテゴリセットに含めるために、前記一組のアスペクトのうちの少なくとも1つのアスペクトに関連付けられた1つまたは複数のカテゴリを決定することと、をさらに含む、実施例15〜17のいずれか1つに記載の機械可読記憶媒体。
(実施例19)
前記カテゴリセットおよび前記画像シグネチャを使用して前記一組のパブリケーションを識別することは、前記カテゴリセットの1つまたは複数のカテゴリに関連付けられたクエリパブリケーションを選択することと、前記少なくとも1つの画像に対する前記画像シグネチャを前記クエリパブリケーションに関連付けられた一組の画像シグネチャと比較して、1つまたは複数の類似の画像シグネチャを決定することと、前記一組のパブリケーションを前記1つまたは複数の類似の画像シグネチャに関連付けられた前記クエリパブリケーションの一部分として識別することと、をさらに含む、実施例15〜18のいずれか1つに記載の機械可読記憶媒体。
(実施例20)
前記少なくとも1つの画像は、ビデオを含む一組のフレームであり、前記動作は、前記1つまたは複数のプロセッサによって、第1の画像における前記関心対象に対する前記第1のカテゴリセットおよび第2の画像における前記関心対象に対する第2のカテゴリセットを決定することであって、前記第1の画像および前記第2の画像は、前記ビデオの前記一組のフレームから選択される、ことと、前記1つまたは複数のプロセッサによって、前記第1の画像の第1のベクトル表現を含む第1の画像シグネチャおよび前記第2の画像の第2のベクトル表現を含む第2の画像シグネチャを生成することと、前記第1カテゴリセット、前記第2カテゴリセット、前記第1の画像シグネチャおよび前記第2の画像シグネチャを使用して、前記1つまたは複数のプロセッサによって、前記パブリケーションデータベース内の前記一組のパブリケーションを識別することと、前記第1の画像シグネチャおよび前記第2の画像シグネチャのうちの1つまたは複数に基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成することと、をさらに含む、実施例15〜19のいずれか1つに記載の機械可読記憶媒体。
(実施例21)
機械の1つまたは複数のプロセッサによって実行されるとき、前記機械に実施例1〜7のいずれか1つに記載の方法を実行させる命令を記憶している、機械可読媒体。
本明細書を通して、複数のインスタンスは、単一のインスタンスとして説明されている構成要素、動作または構造を実装してもよい。1つまたは複数の方法の個々の動作は、別々の動作として図示および説明されているが、個々の動作のうちの1つまたは複数は、同時に実行されてもよく、動作が図示の順序で実行される必要はない。例示的な構成において別々の構成要素として提示された構造および機能は、組み合わされた構造または構成要素として実装されてもよい。同様に、単一の構成要素として提示された構造および機能は、別々の構成要素として実装されてもよい。これらおよび他の変形、修正、追加および改良は、本明細書の主題の範囲内に含まれる。
本明細書に示された実施形態は、当業者が開示された教示を実施することを可能にするために十分に詳細に記載されている。本開示の範囲を逸脱することなく、構造上ならびに論理上の置き換えおよび変更を行い得るように、上記の記載から他の実施形態を利用し、引き出すことができる。したがって、詳細な説明は、限定的な意味で解釈されるべきではなく、様々な実施形態の範囲は添付の特許請求の範囲とそのような特許請求の範囲が権利を与える等価物の全範囲によってのみ定義される。
本明細書で使用されるとき、「または」という用語は、包括的または排他的な意味で解釈されてもよい。さらに、本明細書で単一インスタンスとして説明されているリソース、動作または構造のために複数インスタンスを提供することができる。加えて、様々なリソース、動作、モジュール、エンジンおよびデータストアの間の境界は、若干任意であり、特定の動作は、特定の例示的な構成の文脈で示されている。機能の他の割り当てが想定され、本開示の様々な実施形態の範囲内にあってもよい。一般に、例示的な構成において別々のリソースとして提示された構造および機能は、組み合わされた構造またはリソースとして実装されてもよい。同様に、単一のリソースとして提示された構造および機能は、別々のリソースとして実装されてもよい。これらおよび他の変形形態、修正形態、追加形態および改良形態は、添付の特許請求の範囲によって表される本開示の実施形態の範囲内に含まれる。したがって、本明細書および図面は、限定的な意味ではなく、例示的なものとして認識されるべきである。

Claims (21)

  1. 方法であって、
    サーバの少なくとも1つのプロセッサが、関心対象の少なくとも一部分を表す少なくとも1つの画像を受信すること、
    前記少なくとも1つのプロセッサが、前記関心対象に対するカテゴリセットを決定すること、
    前記少なくとも1つのプロセッサが、前記少なくとも1つの画像に対する画像シグネチャを生成することであって、前記画像シグネチャは、前記少なくとも1つの画像のベクトル表現を含む、前記生成すること、
    前記少なくとも1つのプロセッサが、前記カテゴリセットおよび前記少なくとも1つの画像に対する前記画像シグネチャを使用して、パブリケーションデータベース内の一組のパブリケーションを識別すること、
    前記画像シグネチャに基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成すること、
    コンピューティングデバイスにおいて前記パブリケーションの順位付けリストを提示させること、を備え、
    前記少なくとも1つの画像は、前記コンピューティングデバイスから受信されたものである、方法。
  2. 前記少なくとも1つのプロセッサが、前記少なくとも1つの画像内の関心対象の1つまたは複数の属性を表す一組のアスペクトを識別すること、
    前記一組のアスペクトの各アスペクトについて、前記少なくとも1つの画像内の関心対象が指定されたアスペクトを含む確率を判定して、アスペクト毎に信頼性スコアを生成すること、をさらに備える請求項1に記載の方法。
  3. 前記1つまたは複数の属性は、前記関心対象の外観の要素であり、前記一組のアスペクトの各アスペクトは、指定された属性に関連付けられた記述語である、請求項2に記載の方法。
  4. 前記順位付けリストは、第1の序列に従って編成され、
    前記一組のパブリケーションの各パブリケーションについて、一組のメタデータ記述子を識別すること、
    前記一組のパブリケーションの各パブリケーションについてアスペクト順位付けスコアを生成することであって、前記アスペクト順位付けスコアは、前記関心対象の一組のアスペクトと前記一組のメタデータ記述子との重み付け比較を実行することによって生成される、前記生成すること、
    前記アスペクト順位付けスコアと前記画像シグネチャに基づく前記順位との組み合わせを反映する第2の序列に従って編成されたパブリケーションの修正順位付けリストを生成すること、をさらに備える請求項2に記載の方法。
  5. 前記関心対象に対する前記カテゴリセットを決定することは、
    前記少なくとも1つのプロセッサが、前記少なくとも1つの画像内の関心対象の1つまたは複数の属性を表す一組のアスペクトを識別すること、
    前記カテゴリセットに含めるために、前記一組のアスペクトのうちの少なくとも1つのアスペクトに関連付けられた1つまたは複数のカテゴリを決定すること、をさらに含む、請求項1に記載の方法。
  6. 前記カテゴリセットおよび前記画像シグネチャを使用して前記一組のパブリケーションを識別することは、
    前記カテゴリセットの1つまたは複数のカテゴリに関連付けられた複数のクエリパブリケーションを選択すること、
    前記少なくとも1つの画像に対する前記画像シグネチャを前記クエリパブリケーションに関連付けられた一組の画像シグネチャと比較して、1つまたは複数の類似の画像シグネチャを決定すること、
    前記一組のパブリケーションを前記1つまたは複数の類似の画像シグネチャに関連付けられた前記クエリパブリケーションの一部分として識別すること、をさらに含む、請求項1に記載の方法。
  7. 前記少なくとも1つの画像は、ビデオを含む一組のフレームであり、
    前記少なくとも1つのプロセッサが、第1の画像における前記関心対象に対する第1のカテゴリセットおよび第2の画像における前記関心対象に対する第2のカテゴリセットを決定することであって、前記第1の画像および前記第2の画像は、前記ビデオの一組のフレームから選択される、前記判定すること、
    前記少なくとも1つのプロセッサが、前記第1の画像の第1のベクトル表現を含む第1の画像シグネチャおよび前記第2の画像の第2のベクトル表現を含む第2の画像シグネチャを生成すること、
    前記少なくとも1つのプロセッサが、前記第1のカテゴリセット、前記第2のカテゴリセット、前記第1の画像シグネチャおよび前記第2の画像シグネチャを使用して、前記パブリケーションデータベース内の一組のパブリケーションを識別すること、
    前記第1の画像シグネチャおよび前記第2の画像シグネチャのうちの1つまたは複数に基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成すること、をさらに備える請求項1に記載の方法。
  8. システムであって、
    1つまたは複数のハードウェアプロセッサと、
    複数の命令を含む機械可読記憶媒体と、を備え、
    前記1つまたは複数のハードウェアプロセッサによって実行されるとき、前記複数の命令は、前記1つまたは複数のハードウェアプロセッサに複数の動作を実行させ、
    前記複数の動作は、
    サーバの1つまたは複数のプロセッサが、関心対象の少なくとも一部分を表す少なくとも1つの画像を受信すること、
    前記1つまたは複数のプロセッサが、前記関心対象に対するカテゴリセットを決定すること、
    前記1つまたは複数のプロセッサが、前記少なくとも1つの画像に対する画像シグネチャを生成することであって、前記画像シグネチャは、前記少なくとも1つの画像のベクトル表現を含む、前記生成すること、
    前記少なくとも1つの画像に対する前記カテゴリセットおよび前記画像シグネチャに基づいて、前記1つまたは複数のプロセッサが、パブリケーションデータベース内の一組のパブリケーションを識別すること、
    前記画像シグネチャに基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成すること、
    コンピューティングデバイスにおいて前記パブリケーションの順位付けリストを提示させること、を含み、
    前記少なくとも1つの画像は、前記コンピューティングデバイスから受信されたものである、システム。
  9. 前記複数の動作は、
    前記1つまたは複数のプロセッサが、前記少なくとも1つの画像内の関心対象の1つまたは複数の属性を表す一組のアスペクトを識別すること、
    前記一組のアスペクトの各アスペクトについて、前記少なくとも1つの画像内の前記関心対象が指定されたアスペクトを含む確率を決定して、アスペクト毎に信頼性スコアを生成すること、をさらに含む、請求項8に記載のシステム。
  10. 前記1つまたは複数の属性は、前記関心対象の外観の要素であり、前記一組のアスペクトの各アスペクトは、指定された属性に関連付けられた記述語である、請求項9に記載のシステム。
  11. 前記順位付けリストは、第1の序列に従って編成され、
    前記複数の動作は、
    前記一組のパブリケーションの各パブリケーションについて、一組のメタデータ記述子を識別すること、
    前記一組のパブリケーションの各パブリケーションについてアスペクト順位付けスコアを生成することであって、前記アスペクト順位付けスコアは、前記関心対象の一組のアスペクトと前記一組のメタデータ記述子との重み付け比較を実行することによって生成される、前記生成すること、
    前記アスペクト順位付けスコアと前記画像シグネチャに基づく前記順位との組み合わせを反映する第2の序列に従って編成されたパブリケーションの修正順位付けリストを生成すること、をさらに含む、請求項9に記載のシステム。
  12. 前記関心対象に対する前記カテゴリセットを決定することは、
    前記1つまたは複数のプロセッサが、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別すること、
    前記カテゴリセットに含めるために、前記一組のアスペクトのうちの少なくとも1つのアスペクトに関連付けられた1つまたは複数のカテゴリを決定すること、をさらに含む、請求項8に記載のシステム。
  13. 前記カテゴリセットおよび前記画像シグネチャを使用して前記一組のパブリケーションを識別することは、
    前記カテゴリセットの1つまたは複数のカテゴリに関連付けられたクエリパブリケーションを選択すること、
    前記少なくとも1つの画像に対する前記画像シグネチャを前記クエリパブリケーションに関連付けられた一組の画像シグネチャと比較して、1つまたは複数の類似の画像シグネチャを決定すること、
    前記一組のパブリケーションを前記1つまたは複数の類似の画像シグネチャに関連付けられた前記クエリパブリケーションの一部分として識別すること、をさらに含む、請求項8に記載のシステム。
  14. 前記少なくとも1つの画像は、ビデオを含む一組のフレームであり、
    前記複数の動作は、
    前記1つまたは複数のプロセッサが、第1の画像における前記関心対象に対する第1のカテゴリセットおよび第2の画像における前記関心対象に対する第2のカテゴリセットを決定することであって、前記第1の画像および前記第2の画像は、前記ビデオのフレームのセットから選択される、前記決定すること、
    前記1つまたは複数のプロセッサが、前記第1の画像の第1のベクトル表現を含む第1の画像シグネチャおよび前記第2の画像の第2のベクトル表現を含む第2の画像シグネチャを生成すること、
    前記1つまたは複数のプロセッサが、前記第1のカテゴリセット、前記第2のカテゴリセット、前記第1の画像シグネチャおよび前記第2の画像シグネチャを使用して、前記パブリケーションデータベース内の一組のパブリケーションを識別すること、
    前記第1の画像シグネチャおよび前記第2の画像シグネチャのうちの1つまたは複数に基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成すること、をさらに含む、請求項8に記載のシステム。
  15. 複数の命令を含む機械可読記憶媒体であって、
    機械の1つまたは複数のプロセッサによって実行されるとき、前記複数の命令は、前記機械に複数の動作を実行させ、
    前記複数の動作は、
    前記機械の1つまたは複数のプロセッサが、関心対象の少なくとも一部分を表す少なくとも1つの画像を受信すること、
    前記1つまたは複数のプロセッサが、前記関心対象に対するカテゴリセットを決定すること、
    前記1つまたは複数のプロセッサが、前記少なくとも1つの画像に対する画像シグネチャを生成することであって、前記画像シグネチャは、前記少なくとも1つの画像のベクトル表現を含む、前記生成すること、
    前記少なくとも1つの画像に対する前記カテゴリセットおよび前記画像シグネチャに基づいて、前記1つまたは複数のプロセッサが、パブリケーションデータベース内の一組のパブリケーションを識別すること、
    前記画像シグネチャに基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成すること、
    コンピューティングデバイスにおいて前記パブリケーションの順位付けリストを提示させること、を含み、
    前記少なくとも1つの画像は、前記コンピューティングデバイスから受信されたものである、機械可読記憶媒体。
  16. 前記複数の動作は、
    前記1つまたは複数のプロセッサが、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別すること、
    前記一組のアスペクトの各アスペクトについて、前記少なくとも1つの画像内の前記関心対象が指定されたアスペクトを含む確率を決定して、アスペクト毎に信頼性スコアを生成すること、をさらに含む、請求項15に記載の機械可読記憶媒体。
  17. 前記順位付けリストは、第1の序列に従って編成され、
    前記複数の動作は、
    前記一組のパブリケーションの各パブリケーションについて、一組のメタデータ記述子を識別すること、
    前記一組のパブリケーションの各パブリケーションについてアスペクト順位付けスコアを生成することであって、前記アスペクト順位付けスコアは、前記関心対象の一組のアスペクトと前記一組のメタデータ記述子との重み付け比較を実行することによって生成される、前記生成すること、
    前記アスペクト順位付けスコアと前記画像シグネチャに基づく前記順位との組み合わせを反映する第2の序列に従って編成されたパブリケーションの修正順位付けリストを生成すること、をさらに含む、請求項16に記載の機械可読記憶媒体。
  18. 前記関心対象に対する前記カテゴリセットを決定することは、
    前記1つまたは複数のプロセッサが、前記少なくとも1つの画像内の前記関心対象の1つまたは複数の属性を表す一組のアスペクトを識別すること、
    前記カテゴリセットに含めるために、前記一組のアスペクトのうちの少なくとも1つのアスペクトに関連付けられた1つまたは複数のカテゴリを決定すること、をさらに含む、請求項15に記載の機械可読記憶媒体。
  19. 前記カテゴリセットおよび前記画像シグネチャを使用して前記一組のパブリケーションを識別することは、
    前記カテゴリセットの1つまたは複数のカテゴリに関連付けられたクエリパブリケーションを選択すること、
    前記少なくとも1つの画像に対する前記画像シグネチャを前記クエリパブリケーションに関連付けられた一組の画像シグネチャと比較して、1つまたは複数の類似の画像シグネチャを決定すること、
    前記一組のパブリケーションを前記1つまたは複数の類似の画像シグネチャに関連付けられた前記クエリパブリケーションの一部分として識別すること、をさらに含む、請求項15に記載の機械可読記憶媒体。
  20. 前記少なくとも1つの画像は、ビデオを含む一組のフレームであり、
    前記複数の動作は、
    前記1つまたは複数のプロセッサが、第1の画像における前記関心対象に対する第1のカテゴリセットおよび第2の画像における前記関心対象に対する第2のカテゴリセットを決定することであって、前記第1の画像および前記第2の画像は、前記ビデオの一組のフレームから選択される、前記決定すること、
    前記1つまたは複数のプロセッサが、前記第1の画像の第1のベクトル表現を含む第1の画像シグネチャおよび前記第2の画像の第2のベクトル表現を含む第2の画像シグネチャを生成すること、
    前記1つまたは複数のプロセッサが、前記第1のカテゴリセット、前記第2のカテゴリセット、前記第1の画像シグネチャおよび前記第2の画像シグネチャを使用して、前記パブリケーションデータベース内の一組のパブリケーションを識別すること、
    前記第1の画像シグネチャおよび前記第2の画像シグネチャのうちの1つまたは複数に基づいて前記一組のパブリケーションの各パブリケーションに順位を割り当てて、パブリケーションの順位付けリストを生成すること、をさらに含む、請求項15に記載の機械可読記憶媒体。
  21. 機械の1つまたは複数のプロセッサによって実行されるとき、前記機械に請求項1〜7のいずれか一項に記載の方法を実行させる命令を記憶している機械可読媒体。
JP2019520457A 2016-10-16 2017-10-13 画像解析および予測に基づく視覚検索 Active JP6867479B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021065950A JP2021108188A (ja) 2016-10-16 2021-04-08 画像解析および予測に基づく視覚検索

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/294,773 2016-10-16
US15/294,773 US10860898B2 (en) 2016-10-16 2016-10-16 Image analysis and prediction based visual search
PCT/US2017/056532 WO2018071779A1 (en) 2016-10-16 2017-10-13 Image analysis and prediction based visual search

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021065950A Division JP2021108188A (ja) 2016-10-16 2021-04-08 画像解析および予測に基づく視覚検索

Publications (2)

Publication Number Publication Date
JP2019537120A true JP2019537120A (ja) 2019-12-19
JP6867479B2 JP6867479B2 (ja) 2021-04-28

Family

ID=61904566

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019520457A Active JP6867479B2 (ja) 2016-10-16 2017-10-13 画像解析および予測に基づく視覚検索
JP2021065950A Pending JP2021108188A (ja) 2016-10-16 2021-04-08 画像解析および予測に基づく視覚検索

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021065950A Pending JP2021108188A (ja) 2016-10-16 2021-04-08 画像解析および予測に基づく視覚検索

Country Status (6)

Country Link
US (4) US10860898B2 (ja)
EP (1) EP3526678A4 (ja)
JP (2) JP6867479B2 (ja)
KR (1) KR102241923B1 (ja)
CN (2) CN109844767B (ja)
WO (1) WO2018071779A1 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180111979A (ko) 2016-02-11 2018-10-11 이베이 인크. 의미론적 카테고리 분류법
US11748978B2 (en) 2016-10-16 2023-09-05 Ebay Inc. Intelligent online personal assistant with offline visual search database
US10860898B2 (en) 2016-10-16 2020-12-08 Ebay Inc. Image analysis and prediction based visual search
US11004131B2 (en) 2016-10-16 2021-05-11 Ebay Inc. Intelligent online personal assistant with multi-turn dialog based on visual search
WO2018078590A2 (en) * 2016-10-27 2018-05-03 Voodoo Manufacturing, Inc. Automated manufacturing system
US10970768B2 (en) 2016-11-11 2021-04-06 Ebay Inc. Method, medium, and system for image text localization and comparison
CN108075959B (zh) * 2016-11-14 2021-03-12 腾讯科技(深圳)有限公司 一种会话消息处理方法和装置
US10747994B2 (en) * 2016-12-28 2020-08-18 Captricity, Inc. Identifying versions of a form
US10417524B2 (en) * 2017-02-16 2019-09-17 Mitsubishi Electric Research Laboratories, Inc. Deep active learning method for civil infrastructure defect detection
US10248663B1 (en) * 2017-03-03 2019-04-02 Descartes Labs, Inc. Geo-visual search
US10699295B1 (en) 2017-05-05 2020-06-30 Wells Fargo Bank, N.A. Fraudulent content detector using augmented reality platforms
US20190027141A1 (en) * 2017-07-21 2019-01-24 Pearson Education, Inc. Systems and methods for virtual reality-based interaction evaluation
KR101977174B1 (ko) * 2017-09-13 2019-05-10 이재준 영상 분석 방법, 장치 및 컴퓨터 프로그램
US10685655B2 (en) * 2018-03-07 2020-06-16 International Business Machines Corporation Leveraging natural language processing
US10902051B2 (en) * 2018-04-16 2021-01-26 Microsoft Technology Licensing, Llc Product identification in image with multiple products
US10824909B2 (en) * 2018-05-15 2020-11-03 Toyota Research Institute, Inc. Systems and methods for conditional image translation
JP7091844B2 (ja) * 2018-05-30 2022-06-28 沖電気工業株式会社 画像処理装置、画像処理方法およびプログラム
WO2020010691A1 (zh) * 2018-07-12 2020-01-16 北京奇虎科技有限公司 从图像中提取哈希码的方法、装置及图像检索方法、装置
US11698921B2 (en) * 2018-09-17 2023-07-11 Ebay Inc. Search system for providing search results using query understanding and semantic binary signatures
US11501191B2 (en) * 2018-09-21 2022-11-15 International Business Machines Corporation Recommending machine learning models and source codes for input datasets
US11875790B2 (en) 2019-03-01 2024-01-16 Google Llc Dynamically adapting assistant responses
US20220188345A1 (en) * 2019-03-26 2022-06-16 Nippon Telegraph And Telephone Corporation Search apparatus, training apparatus, search method, training method, and program
CN111831844A (zh) * 2019-04-17 2020-10-27 京东方科技集团股份有限公司 图像检索方法、图像检索装置、图像检索设备及介质
CN110458067B (zh) * 2019-07-31 2022-04-22 卓尔智联(武汉)研究院有限公司 刻画用户画像的方法、计算机装置及可读存储介质
WO2021042763A1 (en) * 2019-09-03 2021-03-11 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Image searches based on word vectors and image vectors
US11687778B2 (en) 2020-01-06 2023-06-27 The Research Foundation For The State University Of New York Fakecatcher: detection of synthetic portrait videos using biological signals
US11915097B1 (en) * 2020-01-14 2024-02-27 Apple Inc. Visual marker with user selectable appearance
US10984305B1 (en) 2020-01-15 2021-04-20 Capital One Services, Llc Synthetic clickstream testing using a neural network
CN113282779A (zh) 2020-02-19 2021-08-20 阿里巴巴集团控股有限公司 图像搜索方法、装置、设备
KR102346705B1 (ko) * 2020-02-24 2022-01-03 군산대학교산학협력단 이미지 데이터베이스 생성 방법 및 이미지 데이터 검색 방법
CN111488476B (zh) * 2020-04-03 2023-06-27 北京爱芯科技有限公司 图像推送方法、模型训练方法及对应装置
US11468491B2 (en) * 2020-05-01 2022-10-11 Walmart Apollo, Llc Systems and methods of product identification within an image
US11379697B2 (en) 2020-05-20 2022-07-05 Bank Of America Corporation Field programmable gate array architecture for image analysis
US11295430B2 (en) 2020-05-20 2022-04-05 Bank Of America Corporation Image analysis architecture employing logical operations
CN111931854B (zh) * 2020-08-12 2021-03-23 北京建筑大学 一种提高图像识别模型可移植性能的方法
EP3961434A1 (en) * 2020-08-27 2022-03-02 Samsung Electronics Co., Ltd. Method and apparatus for concept matching
TW202223834A (zh) * 2020-08-28 2022-06-16 加拿大商光譜優化股份有限公司 神經嵌入之攝影機影像視訊處理管道及神經網路訓練系統
WO2022088043A1 (zh) * 2020-10-30 2022-05-05 京东方科技集团股份有限公司 图像识别方法及装置、训练方法、电子设备和存储介质
US11803421B2 (en) 2021-02-09 2023-10-31 International Business Machines Corporation Monitoring health status of a large cloud computing system
US20230048742A1 (en) * 2021-08-10 2023-02-16 Verizon Media Inc. Search query generation based upon received text
CN114782881B (zh) * 2022-06-22 2022-09-02 青岛恒天翼信息科技有限公司 Ai影像训练实现船舶识别的方法、系统和设备
DE102022121132A1 (de) 2022-08-22 2024-02-22 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Verfahren zur Entwicklung eines technischen Bauteils

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045122A (ja) * 2011-08-22 2013-03-04 Seiko Epson Corp 画像検索装置、画像検索方法、およびプログラム
JP2014041560A (ja) * 2012-08-23 2014-03-06 Canon Inc 画像処理装置、画像処理方法

Family Cites Families (165)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5752245Y2 (ja) 1978-06-15 1982-11-13
US5579471A (en) 1992-11-09 1996-11-26 International Business Machines Corporation Image query system and method
US6363378B1 (en) 1998-10-13 2002-03-26 Oracle Corporation Ranking of query feedback terms in an information retrieval system
DE59907629D1 (de) 1999-06-21 2003-12-11 Grapha Holding Ag Anordnung zum Zwischenlagern von Paketen
US20090234712A1 (en) 1999-06-28 2009-09-17 Musicip Corporation Method and apparatus for automated selection, organization, and recommendation of items based on user preference topography
US7953671B2 (en) 1999-08-31 2011-05-31 American Express Travel Related Services Company, Inc. Methods and apparatus for conducting electronic transactions
US6901378B1 (en) 2000-03-02 2005-05-31 Corbis Corporation Method and system for automatically displaying an image and a product in a page based on contextual interaction and metadata
WO2001067225A2 (en) 2000-03-06 2001-09-13 Kanisa Inc. A system and method for providing an intelligent multi-step dialog with a user
US20020038299A1 (en) * 2000-03-20 2002-03-28 Uri Zernik Interface for presenting information
US6609005B1 (en) 2000-03-28 2003-08-19 Leap Wireless International, Inc. System and method for displaying the location of a wireless communications device wiring a universal resource locator
US6578022B1 (en) 2000-04-18 2003-06-10 Icplanet Corporation Interactive intelligent searching with executable suggestions
US20030217052A1 (en) 2000-08-24 2003-11-20 Celebros Ltd. Search engine method and apparatus
US7257537B2 (en) 2001-01-12 2007-08-14 International Business Machines Corporation Method and apparatus for performing dialog management in a computer conversational interface
US20030063779A1 (en) * 2001-03-29 2003-04-03 Jennifer Wrigley System for visual preference determination and predictive product selection
US7590642B2 (en) 2002-05-10 2009-09-15 Oracle International Corp. Enhanced K-means clustering
WO2004066201A2 (en) 2003-01-16 2004-08-05 Schrenk Robert A Graphical internet search system and methods
US20050225678A1 (en) * 2004-04-08 2005-10-13 Andrew Zisserman Object retrieval
KR100738069B1 (ko) 2004-10-04 2007-07-10 삼성전자주식회사 디지털 사진 앨범의 카테고리 기반 클러스터링 방법 및시스템
US7657126B2 (en) 2005-05-09 2010-02-02 Like.Com System and method for search portions of objects in images and features thereof
US20080177640A1 (en) 2005-05-09 2008-07-24 Salih Burak Gokturk System and method for using image analysis and search in e-commerce
US7809722B2 (en) 2005-05-09 2010-10-05 Like.Com System and method for enabling search and retrieval from image files based on recognized information
US7660468B2 (en) 2005-05-09 2010-02-09 Like.Com System and method for enabling image searching using manual enrichment, classification, and/or segmentation
US8200687B2 (en) 2005-06-20 2012-06-12 Ebay Inc. System to generate related search queries
US7428516B2 (en) 2005-06-23 2008-09-23 Microsoft Corporation Handwriting recognition using neural networks
US9087049B2 (en) 2005-10-26 2015-07-21 Cortica, Ltd. System and method for context translation of natural language
US20070136140A1 (en) * 2005-12-13 2007-06-14 Microsoft Corporation Provision of shopping information to mobile devices
US8571932B2 (en) * 2005-12-30 2013-10-29 Google Inc. Using search query information to determine relevant ads for a landing page of an ad
US7813561B2 (en) * 2006-08-14 2010-10-12 Microsoft Corporation Automatic classification of objects within images
US8233702B2 (en) 2006-08-18 2012-07-31 Google Inc. Computer implemented technique for analyzing images
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7949191B1 (en) 2007-04-04 2011-05-24 A9.Com, Inc. Method and system for searching for information on a network in response to an image query sent by a user from a mobile communications device
US8060609B2 (en) * 2008-01-04 2011-11-15 Sling Media Inc. Systems and methods for determining attributes of media items accessed via a personal media broadcaster
US10320717B2 (en) 2008-01-24 2019-06-11 Ebay Inc. System and method of using conversational agent to collect information and trigger actions
JP2009193532A (ja) 2008-02-18 2009-08-27 Oki Electric Ind Co Ltd 対話管理装置、方法及びプログラム、並びに意識抽出システム
US20090216755A1 (en) 2008-02-21 2009-08-27 Einav Itamar Indexing Method For Multimedia Feature Vectors Using Locality Sensitive Hashing
US8160936B2 (en) 2008-03-17 2012-04-17 Kamruddin Imtiaz Ali Patriotic American shopping network
US8275803B2 (en) 2008-05-14 2012-09-25 International Business Machines Corporation System and method for providing answers to questions
US9734460B1 (en) 2008-06-13 2017-08-15 Google Inc. Adjusting participation of content in a selection process
US8504374B2 (en) 2009-02-02 2013-08-06 Jerry Lee Potter Method for recognizing and interpreting patterns in noisy data sequences
US9195898B2 (en) 2009-04-14 2015-11-24 Qualcomm Incorporated Systems and methods for image recognition using mobile devices
US8719249B2 (en) 2009-05-12 2014-05-06 Microsoft Corporation Query classification
US8341160B2 (en) * 2009-07-23 2012-12-25 Ebay Inc. Methods and systems for a closet match search
US9384214B2 (en) 2009-07-31 2016-07-05 Yahoo! Inc. Image similarity from disparate sources
US8245249B2 (en) 2009-10-09 2012-08-14 The Nielson Company (Us), Llc Methods and apparatus to adjust signature matching results for audience measurement
US9405841B2 (en) 2009-10-15 2016-08-02 A9.Com, Inc. Dynamic search suggestion and category specific completion
US8761512B1 (en) * 2009-12-03 2014-06-24 Google Inc. Query by image
US20120154633A1 (en) * 2009-12-04 2012-06-21 Rodriguez Tony F Linked Data Methods and Systems
US8775424B2 (en) * 2010-01-26 2014-07-08 Xerox Corporation System for creative image navigation and exploration
US20110191336A1 (en) * 2010-01-29 2011-08-04 Microsoft Corporation Contextual image search
US8861844B2 (en) * 2010-03-29 2014-10-14 Ebay Inc. Pre-computing digests for image similarity searching of image-based listings in a network-based publication system
US20110246330A1 (en) * 2010-04-01 2011-10-06 Anup Tikku System and method for searching content
US8433142B2 (en) * 2010-04-05 2013-04-30 The Nielsen Company (Us), Llc Methods and apparatus to detect differences between images
US8386495B1 (en) 2010-04-23 2013-02-26 Google Inc. Augmented resource graph for scoring resources
US20110286628A1 (en) * 2010-05-14 2011-11-24 Goncalves Luis F Systems and methods for object recognition using a large database
WO2012009832A1 (en) 2010-07-23 2012-01-26 Ebay Inc. Instant messaging robot to provide product information
US9043296B2 (en) * 2010-07-30 2015-05-26 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
US9043232B1 (en) 2010-08-09 2015-05-26 Amazon Technologies, Inc. Associating item images with item catalog data
US8924314B2 (en) * 2010-09-28 2014-12-30 Ebay Inc. Search result ranking using machine learning
US20120084135A1 (en) 2010-10-01 2012-04-05 Smartslips Inc. System and method for tracking transaction records in a network
US8675957B2 (en) * 2010-11-18 2014-03-18 Ebay, Inc. Image quality assessment to merchandise an item
US9229956B2 (en) * 2011-01-10 2016-01-05 Microsoft Technology Licensing, Llc Image retrieval using discriminative visual features
US20120209751A1 (en) * 2011-02-11 2012-08-16 Fuji Xerox Co., Ltd. Systems and methods of generating use-based product searching
US9245056B2 (en) 2011-02-23 2016-01-26 Novell, Inc. Structured relevance—a mechanism to reveal why data is related
US20120232987A1 (en) 2011-03-10 2012-09-13 Everingham James R Image-based search interface
WO2012154216A1 (en) 2011-05-06 2012-11-15 Sti Medical Systems, Llc Diagnosis support system providing guidance to a user by automated retrieval of similar cancer images with user feedback
US8977629B2 (en) 2011-05-24 2015-03-10 Ebay Inc. Image-based popularity prediction
JP5752245B2 (ja) 2011-05-26 2015-07-22 株式会社日立製作所 情報検索方法、情報検索装置及び記憶媒体
US8903198B2 (en) * 2011-06-03 2014-12-02 International Business Machines Corporation Image ranking based on attribute correlation
CA2847187A1 (en) 2011-08-04 2013-02-07 Krasimir POPOV Searching for and creating an adaptive content
GB201113633D0 (en) * 2011-08-08 2011-09-21 Vision Semantics Ltd User-primed iterative discovery of object associations in distributed multi-source data
US9495331B2 (en) 2011-09-19 2016-11-15 Personetics Technologies Ltd. Advanced system and method for automated-context-aware-dialog with human users
US9075825B2 (en) 2011-09-26 2015-07-07 The University Of Kansas System and methods of integrating visual features with textual features for image searching
US8737728B2 (en) 2011-09-30 2014-05-27 Ebay Inc. Complementary item recommendations using image feature data
KR20140093957A (ko) 2011-11-24 2014-07-29 마이크로소프트 코포레이션 상호작용 멀티-모달 이미지 검색 기법
US8917910B2 (en) * 2012-01-16 2014-12-23 Xerox Corporation Image segmentation based on approximation of segmentation similarity
US8346563B1 (en) 2012-04-10 2013-01-01 Artificial Solutions Ltd. System and methods for delivering advanced natural language interaction applications
US9223537B2 (en) 2012-04-18 2015-12-29 Next It Corporation Conversation user interface
US9424233B2 (en) 2012-07-20 2016-08-23 Veveo, Inc. Method of and system for inferring user intent in search input in a conversational interaction system
US8756110B2 (en) 2012-07-25 2014-06-17 Traina Interactive Corp. Methods of processing information and transactions involving digital content and/or experiences associated with celebrities and networked users
US9465833B2 (en) 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US9390174B2 (en) 2012-08-08 2016-07-12 Google Inc. Search result ranking and presentation
US20160321305A9 (en) * 2012-08-31 2016-11-03 CKS Group, LLC System and method for tracking items at an event
US20140083963A1 (en) 2012-09-27 2014-03-27 Janet Wyner Lawn Mower Storage Device with Stair Step Storage Area
KR20140050217A (ko) 2012-10-18 2014-04-29 에스케이플래닛 주식회사 키워드 연관 관계 시각화 제공 시스템 및 방법과, 이를 지원하는 장치
US9798799B2 (en) 2012-11-15 2017-10-24 Sri International Vehicle personal assistant that interprets spoken natural language input based upon vehicle context
US20140152847A1 (en) 2012-12-03 2014-06-05 Google Inc. Product comparisons from in-store image and video captures
US9025811B1 (en) 2013-01-02 2015-05-05 Google Inc. Performing image similarity operations using semantic classification
US20170270159A1 (en) 2013-03-14 2017-09-21 Google Inc. Determining query results in response to natural language queries
US9122681B2 (en) 2013-03-15 2015-09-01 Gordon Villy Cormack Systems and methods for classifying electronic information using advanced active learning techniques
US9153231B1 (en) 2013-03-15 2015-10-06 Amazon Technologies, Inc. Adaptive neural network speech recognition models
US9336277B2 (en) 2013-05-31 2016-05-10 Google Inc. Query suggestions based on search data
WO2014205231A1 (en) 2013-06-19 2014-12-24 The Regents Of The University Of Michigan Deep learning framework for generic object detection
CN104346622A (zh) 2013-07-31 2015-02-11 富士通株式会社 卷积神经网络分类器及其分类方法和训练方法
CN104346370B (zh) * 2013-07-31 2018-10-23 阿里巴巴集团控股有限公司 图像搜索、获取图像文本信息的方法及装置
US9594983B2 (en) * 2013-08-02 2017-03-14 Digimarc Corporation Learning systems and methods
ES2530687B1 (es) * 2013-09-04 2016-08-19 Shot & Shop. S.L. Método implementado por ordenador para recuperación de imágenes por contenido y programa de ordenador del mismo
US9519859B2 (en) 2013-09-06 2016-12-13 Microsoft Technology Licensing, Llc Deep structured semantic model produced using click-through data
US10489842B2 (en) 2013-09-30 2019-11-26 Ebay Inc. Large-scale recommendations for a dynamic inventory
US9792301B2 (en) 2014-09-26 2017-10-17 Conduent Business Services, Llc Multi-query privacy-preserving parking management system and method
CN103559504B (zh) 2013-11-04 2016-08-31 北京京东尚科信息技术有限公司 图像目标类别识别方法及装置
US10482139B2 (en) 2013-11-05 2019-11-19 Google Llc Structured user graph to support querying and predictions
US9189742B2 (en) 2013-11-20 2015-11-17 Justin London Adaptive virtual intelligent agent
US20150142804A1 (en) 2013-11-21 2015-05-21 Here Global B.V. Methods, apparatuses and computer program products for utilizing subtyping to support evolution of data types
US9129191B2 (en) 2013-12-16 2015-09-08 Adobe Systems Incorporated Semantic object selection
US9524449B2 (en) 2013-12-16 2016-12-20 Adobe Systems Incorporated Generation of visual pattern classes for visual pattern recognition
PL3066591T3 (pl) * 2014-02-10 2020-04-30 Geenee Gmbh Systemy i sposoby rozpoznawania oparte na obrazie
US9477782B2 (en) 2014-03-21 2016-10-25 Microsoft Corporation User interface mechanisms for query refinement
US9384422B2 (en) 2014-04-04 2016-07-05 Ebay Inc. Image evaluation
US9830631B1 (en) 2014-05-02 2017-11-28 A9.Com, Inc. Image recognition result culling
CA2948922C (en) 2014-05-16 2023-05-09 Nextwave Software Inc. Method and system for conducting ecommerce transactions in messaging via search, discussion and agent prediction
US10726831B2 (en) 2014-05-20 2020-07-28 Amazon Technologies, Inc. Context interpretation in natural language processing using previous dialog acts
US20150363660A1 (en) 2014-06-12 2015-12-17 Asap54.Com Ltd System for automated segmentation of images through layout classification
KR101761999B1 (ko) 2014-06-12 2017-07-28 경희대학교 산학협력단 관계 유형을 고려한 코칭 방법 및 시스템
US10290125B2 (en) 2014-07-02 2019-05-14 Microsoft Technology Licensing, Llc Constructing a graph that facilitates provision of exploratory suggestions
US9826133B2 (en) 2014-07-23 2017-11-21 Orcam Technologies Ltd. Wearable apparatus with wide viewing angle image sensor
US20160034514A1 (en) * 2014-08-04 2016-02-04 Regents Of The University Of Minnesota Providing search results based on an identified user interest and relevance matching
US9740963B2 (en) 2014-08-05 2017-08-22 Sri International Multi-dimensional realization of visual content of an image collection
US9558268B2 (en) 2014-08-20 2017-01-31 Mitsubishi Electric Research Laboratories, Inc. Method for semantically labeling an image of a scene using recursive context propagation
US20160071182A1 (en) 2014-09-10 2016-03-10 Microsoft Corporation Multimedia recommendation based on artist similarity
US20160092556A1 (en) * 2014-09-30 2016-03-31 Apple Inc. Generation of data for a dendrogrammatic tree data structure
US10540347B2 (en) 2014-10-27 2020-01-21 Nuance Communications, Inc. Contextual search disambiguation
US10387773B2 (en) 2014-10-27 2019-08-20 Ebay Inc. Hierarchical deep convolutional neural network for image classification
US9569700B1 (en) 2014-12-17 2017-02-14 Amazon Technologies, Inc. Identification of item attributes using artificial intelligence
US9858484B2 (en) 2014-12-30 2018-01-02 Facebook, Inc. Systems and methods for determining video feature descriptors based on convolutional neural networks
US20160189034A1 (en) 2014-12-30 2016-06-30 Cirrus Shakeri Computer automated learning management systems and methods
US20160217157A1 (en) 2015-01-23 2016-07-28 Ebay Inc. Recognition of items depicted in images
US9922271B2 (en) 2015-03-20 2018-03-20 Netra, Inc. Object detection and classification
CN115795147A (zh) * 2015-05-20 2023-03-14 电子湾有限公司 用于进行搜索的方法和系统
US20160350336A1 (en) 2015-05-31 2016-12-01 Allyke, Inc. Automated image searching, exploration and discovery
KR20160144665A (ko) 2015-06-09 2016-12-19 에스케이플래닛 주식회사 객체 인식 및 데이터베이스 매칭 결과를 표시하는 사용자 장치, 그의 제어 방법 및 컴퓨터 프로그램이 기록된 기록매체
FR3037691B1 (fr) 2015-06-16 2018-04-20 Solystic Appariement d'images d'articles postaux avec des descripteurs de singularites du champ de gradient
US10586156B2 (en) 2015-06-25 2020-03-10 International Business Machines Corporation Knowledge canvassing using a knowledge graph and a question and answer system
US9390315B1 (en) * 2015-06-25 2016-07-12 A9.Com, Inc. Image match for featureless objects
CN108431829A (zh) 2015-08-03 2018-08-21 奥兰德股份公司 用于在目录中搜索产品的系统和方法
US20170060867A1 (en) * 2015-08-31 2017-03-02 Adfamilies Publicidade, SA Video and image match searching
US10157333B1 (en) 2015-09-15 2018-12-18 Snap Inc. Systems and methods for content tagging
US10664757B2 (en) 2015-09-16 2020-05-26 International Business Machines Corporation Cognitive operations based on empirically constructed knowledge graphs
US20170083963A1 (en) 2015-09-18 2017-03-23 Rovi Guides, Inc. Methods and systems for providing gift recommendations
US10387915B2 (en) * 2015-10-29 2019-08-20 Flipboard, Inc. Digital magazine recommendations by topic
US20170124618A1 (en) * 2015-10-30 2017-05-04 DirectBuy, Inc. Methods and Systems for Image-Based Searching of Product Inventory
US20170193074A1 (en) 2015-12-30 2017-07-06 Yahoo! Inc. Finding Related Articles for a Content Stream Using Iterative Merge-Split Clusters
US11113714B2 (en) 2015-12-30 2021-09-07 Verizon Media Inc. Filtering machine for sponsored content
US10417346B2 (en) 2016-01-23 2019-09-17 Microsoft Technology Licensing, Llc Tool for facilitating the development of new language understanding scenarios
US9424494B1 (en) 2016-01-28 2016-08-23 International Business Machines Corporation Pure convolutional neural network localization
US20170262583A1 (en) * 2016-03-11 2017-09-14 International Business Machines Corporation Image processing and text analysis to determine medical condition
US10489410B2 (en) 2016-04-18 2019-11-26 Google Llc Mapping images to search queries
US20170344711A1 (en) 2016-05-31 2017-11-30 Baidu Usa Llc System and method for processing medical queries using automatic question and answering diagnosis system
US10762548B1 (en) 2016-06-14 2020-09-01 Salesforce.Com, Inc. Digital data processing methods and apparatus for personalized user interface generation through personalized sorting
US10402643B2 (en) * 2016-06-15 2019-09-03 Google Llc Object rejection system and method
US20170372398A1 (en) * 2016-06-24 2017-12-28 Ebay Inc. Vector representation of descriptions and queries
US10133958B2 (en) * 2016-08-16 2018-11-20 Ebay Inc. Determining an item that has confirmed characteristics
US20180052842A1 (en) 2016-08-16 2018-02-22 Ebay Inc. Intelligent online personal assistant with natural language understanding
US20180052913A1 (en) 2016-08-16 2018-02-22 Ebay Inc. Selecting next user prompt types in an intelligent online personal assistant multi-turn dialog
US20180052885A1 (en) 2016-08-16 2018-02-22 Ebay Inc. Generating next user prompts in an intelligent online personal assistant multi-turn dialog
US20180052884A1 (en) 2016-08-16 2018-02-22 Ebay Inc. Knowledge graph construction for intelligent online personal assistant
US10512937B2 (en) 2016-09-14 2019-12-24 Nidec Seimitsu Corporation Vibration motor
US20180081880A1 (en) * 2016-09-16 2018-03-22 Alcatel-Lucent Canada Inc. Method And Apparatus For Ranking Electronic Information By Similarity Association
US20180107682A1 (en) 2016-10-16 2018-04-19 Ebay Inc. Category prediction from semantic image clustering
US11004131B2 (en) 2016-10-16 2021-05-11 Ebay Inc. Intelligent online personal assistant with multi-turn dialog based on visual search
US11748978B2 (en) * 2016-10-16 2023-09-05 Ebay Inc. Intelligent online personal assistant with offline visual search database
US10860898B2 (en) 2016-10-16 2020-12-08 Ebay Inc. Image analysis and prediction based visual search
US11392598B2 (en) * 2016-10-19 2022-07-19 Ebay Inc. Applying a quantitative range for qualitative terms
US10970768B2 (en) 2016-11-11 2021-04-06 Ebay Inc. Method, medium, and system for image text localization and comparison
US10503775B1 (en) 2016-12-28 2019-12-10 Shutterstock, Inc. Composition aware image querying
US10521691B2 (en) 2017-03-31 2019-12-31 Ebay Inc. Saliency-based object counting and localization

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045122A (ja) * 2011-08-22 2013-03-04 Seiko Epson Corp 画像検索装置、画像検索方法、およびプログラム
JP2014041560A (ja) * 2012-08-23 2014-03-06 Canon Inc 画像処理装置、画像処理方法

Also Published As

Publication number Publication date
CN109844767B (zh) 2023-07-11
US11914636B2 (en) 2024-02-27
JP6867479B2 (ja) 2021-04-28
US20180107902A1 (en) 2018-04-19
WO2018071779A1 (en) 2018-04-19
US20210166086A1 (en) 2021-06-03
KR102241923B1 (ko) 2021-04-19
EP3526678A1 (en) 2019-08-21
CN116863129A (zh) 2023-10-10
CN109844767A (zh) 2019-06-04
US10860898B2 (en) 2020-12-08
US11604951B2 (en) 2023-03-14
US20230018383A1 (en) 2023-01-19
EP3526678A4 (en) 2019-08-21
US20240004920A1 (en) 2024-01-04
JP2021108188A (ja) 2021-07-29
KR20190067870A (ko) 2019-06-17

Similar Documents

Publication Publication Date Title
US11914636B2 (en) Image analysis and prediction based visual search
US11775844B2 (en) Visual aspect localization presentation
US11423636B2 (en) Saliency-based object counting and localization
US11907309B2 (en) Expandable service architecture with configurable dialogue manager
US20180157681A1 (en) Anchored search
US11704926B2 (en) Parallel prediction of multiple image aspects
US20180107682A1 (en) Category prediction from semantic image clustering
US10606873B2 (en) Search index trimming
US11126685B2 (en) Preview and optimization of publication for target computing device
US20180053233A1 (en) Expandable service architecture with configurable orchestrator

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190425

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200714

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200914

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210309

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210408

R150 Certificate of patent or registration of utility model

Ref document number: 6867479

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150