JP2016527646A - コンテキストキューを画像に相関付けることによる画像分類のシステム及び方法 - Google Patents

コンテキストキューを画像に相関付けることによる画像分類のシステム及び方法 Download PDF

Info

Publication number
JP2016527646A
JP2016527646A JP2016533290A JP2016533290A JP2016527646A JP 2016527646 A JP2016527646 A JP 2016527646A JP 2016533290 A JP2016533290 A JP 2016533290A JP 2016533290 A JP2016533290 A JP 2016533290A JP 2016527646 A JP2016527646 A JP 2016527646A
Authority
JP
Japan
Prior art keywords
image
images
module
user
classifier
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
JP2016533290A
Other languages
English (en)
Other versions
JP6612229B2 (ja
Inventor
ブルデブ、ルボミール
パルリ、バラマノハー
Original Assignee
フェイスブック,インク.
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 フェイスブック,インク. filed Critical フェイスブック,インク.
Publication of JP2016527646A publication Critical patent/JP2016527646A/ja
Application granted granted Critical
Publication of JP6612229B2 publication Critical patent/JP6612229B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24573Query processing with adaptation to user needs using data annotations, e.g. user-defined metadata
    • 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/5866Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, manually generated location and time information
    • 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/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/35Categorising the entire scene, e.g. birthday party or wedding scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19147Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/274Syntactic or semantic context, e.g. balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/10Recognition assisted with metadata
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/913Multimedia
    • Y10S707/915Image

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

画像群のサンプルセットが受信される。サンプルセット内の各画像に、1つ又は複数のソーシャルキューが関連付けられ得る。画像に関連付けられた1つ又は複数のソーシャルキューに基づいて、サンプルセット内の各画像の相関が画像クラスによりスコア付けされる。スコア付けに基づいて、分類器をトレーニングする画像群のトレーニングセットがサンプルセットから決定される。実施形態では、画像群の評価セットが画像クラスに相関する程度が特定される。この特定は、画像群の評価セットのトップスコアサブセットをランク付けすることを含み得る。

Description

本技術分野は、ソーシャルネットワークの分野に関する。より詳細には、技術分野は、ソーシャルネットワークでの画像分類技法に関する。
ソーシャルネットワークは、メンバを互いに結び付けるインタラクティブでコンテンツ豊富なオンラインコミュニティを提供し得る。ソーシャルネットワークのメンバは、互いにどのように関連するかを示し得る。例えば、ソーシャルネットワークのメンバは、友人、家族、仕事関係者、若しくは互いのフォロワーであることを示し得、又はメンバは、互いへの何らかの他の関係を指定することができる。ソーシャルネットワークにより、メンバは互いに伝言を送るか、又はオンラインコミュニティにメッセージを掲示することができ得る。
ソーシャルネットワークにより、メンバが互いにコンテンツを共有することも可能になり得る。例えば、メンバは、多数のプラットフォームにわたって見ることができるインタラクティブフィードを含む1つ又は複数のページを作成又は使用することができる。ページは、メンバがソーシャルネットワークの特定のメンバと共有しようとするか、又はソーシャルネットワーク全般に公開しようとする画像、ビデオ、及び他のコンテンツを含み得る。メンバは、ソーシャルネットワークを用いてコンテンツを他の方法で共有することもできる。画像の場合、例えば、メンバは、画像を画像ボードに公開し得、又はオンラインコミュニティによる検索に画像を利用可能にし得る。
システムは、少なくとも1つのプロセッサと、プロセッサに処理を実行させるための命令を記憶するメモリとを含み得る。命令は、1つ又は複数のソーシャルキューが各画像に関連付けられた画像群のサンプルセットを受信することをプロセッサに実行させる。画像に関連付けられた1つ又は複数のソーシャルキューに基づいて、サンプルセット内の各画像の相関が画像クラスによりスコア付けされる。スコア付けに基づいて、分類器をトレーニングする画像群のトレーニングセットがサンプルセットから決定され得る。
幾つかの実施形態では、画像クラスは指定され得る。幾つかの実施形態では、決定することは、スコア付けに基づいてサンプルセットからの各画像をランク付けすることを含み得る。決定することは、画像群のサンプルセットのトップスコアサブセットを選択することを含み得る。トップスコアサブセットは画像群のトレーニングセットであり得る。
様々な実施形態では、分類器が画像群のトレーニングセットに基づいてトレーニングされ得る。画像クラスに関連付けられた視覚的パターンテンプレートが生成され得る。分類器は、バッグオブビジュアルワード(bag of visual words)画像分類技法又はニューラルネットワーク画像分類技法を使用するように構成され得る。
幾つかの実施形態では、画像群の評価セットが画像クラスに相関する程度が特定され得る。画像群の評価セットは、画像群のサンプルセットと異なり得る。画像評価セットは、画像群のサンプルセットよりも大きい画像セットを含み得る。
様々な実施形態では、画像群の評価セットの各画像の相関が、画像クラスに関連付けられた視覚的パターンテンプレートによりスコア付けされ得る。評価セットの各画像は、画像群の評価セットの各画像の相関のスコア付けに基づいてランク付けされ得る。画像群の評価セットのトップスコアサブセットは画像クラスに関連付けられ得る。
幾つかの実施形態では、1つ又は複数のソーシャルキューは、1つ又は複数の画像タグを含み得る。画像に関連付けられた1つ又は複数の画像タグの総数の中から、特定の画像タグのインスタンス数が特定され得る。
幾つかの実施形態では、1つ又は複数のソーシャルキューは、画像群のサンプルセットの画像に関連付けられたロケーションデータ又は画像群のサンプルセットの画像のアップロード者、タグ付け者、若しくは所有者の識別情報のうちの1つ又は複数を含み得る。様々な実施形態では、1つ又は複数のソーシャルキューは、ソーシャルネットワーキングシステムによって受信され得る。
コンピュータ実施方法は、コンピュータシステムにより、画像群のサンプルセットを受信することを含み得る。サンプルセット内の各画像には1つ又は複数のソーシャルキューが関連付けられる。本方法は、コンピュータシステムにより、画像に関連付けられた1つ又は複数のソーシャルキューに基づいて、サンプルセット内の各画像の相関を画像クラスによりスコア付けすることを含み得る。本方法は、コンピュータシステムにより、スコア付けに基づいて、分類器をトレーニングする画像群のトレーニングセットをサンプルセットから決定することも含み得る。
実行時にコンピュータシステムにコンピュータ実施方法を実行させるコンピュータ実行可能命令を記憶するコンピュータ記憶媒体であって、コンピュータ実施方法は、1つ又は複数のソーシャルキューが各画像に関連付けられた画像群のサンプルセットを受信することを備える。本方法は、画像に関連付けられた1つ又は複数のソーシャルキューに基づいてサンプルセット内の各画像の相関を画像クラスによりスコア付けすることを含み得る。本方法は、スコア付けに基づいて、分類器をトレーニングする画像群のトレーニングセットをサンプルセットから決定することを含むこともできる。
他の特徴及び実施形態は、添付図面及び以下の詳細な説明から明らかとなる。
幾つかの実施形態によるコンテキスト画像分類システムの例を示す。 幾つかの実施形態による画像分類モジュールの例を示す。 幾つかの実施形態による画像分類モジュールの例を示す。 幾つかの実施形態による画像分類トレーニングモジュールの例を示す。 幾つかの実施形態による画像分類評価モジュールの例を示す。 幾つかの実施形態による分類器の例を示す。 幾つかの実施形態による画像を分類するプロセスの例を示す。 幾つかの実施形態による分類器をトレーニングするプロセスの例を示す。 幾つかの実施形態による画像を分類するプロセスの例を示す。 幾つかの実施形態による、画像グループに適用されるコンテキスト生成される画像フィルタのプレビューの例を示す。 幾つかの実施形態による、画像グループに適用されるコンテキスト生成される画像フィルタのプレビューの例を示す。 幾つかの実施形態による、ソーシャルネットワーキングシステム内のコンテキスト画像分類システムのネットワーク図の例を示す。 幾つかの実施形態による、本明細書に記載される実施形態の1つ又は複数の実施に使用され得るコンピュータシステムの例を示す。
図面は、単なる例示を目的として、本発明の様々な実施形態を示し、図面は同様の参照符号を使用して同様の要素を識別する。以下の考察から、図面に示される構造及び方法の代替の実施形態が、本明細書に記載される原理から逸脱せずに利用され得ることを当業者は容易に認識し得る。
[コンテキストキューの相関付けによる画像分類]
ソーシャルネットワーキングシステムは、コンテンツを生成し、友人と共有する能力をユーザに提供し得る。ソーシャルネットワーキングシステムの写真共有サービスのユーザは、画像(例えば、静止画像、ミーム)、ビデオ、又はインタラクティブコンテンツをモバイル電話で捕捉し、コンテンツをオンライン友人と共有することを楽しみ得る。同様に、ユーザは、例えば、インタラクティブフィードをホームページにアップデートすることにより、友人とコンテンツを共有することを楽しみ得る。
ソーシャルネットワーキングシステムは、コンテンツのアイテムについての情報又はコンテンツについての属性を示し、識別し、分類し、ラベル付けし、説明し、又は他の方法で提供する能力を提供又はサポートすることもできる。そのような情報を示す一方法は、コンテンツ又はコンテンツの属性の主題を識別するか、又は他の方法で関連し得るタグを通してである。そのような情報を示す別の方法は、アップロードのロケーション又はコンテンツが捕捉された場所を識別するユーザアップロードコンテンツの全地球測位システム(GPS)座標を通してである。本明細書により詳細に説明するように、ソーシャルネットワーキングシステムにおいてコンテンツについての情報を示す多くの他の方法がある。タグ(例えば、ハッシュタグ又は他のメタデータタグ)及びGPSシステム座標を含め、多くのそのようなインジケータは、非視覚的であり、コンテンツ内の視覚的データの自動分析に基づいていない。
特定の状況では、非視覚的インジケータは、主観的であり得、潜在的にミスリードするおそれがある。例えば、コンテンツ生成器が各自のコンテンツに適用すると選択したタグは、コンテンツ生成器の視点からコンテンツの主題を記述し得るが、タグは、他の視点から誤記述であり、又は無関係と判断され得る。例えば、ハロウィンでキャットウーマンの格好をした自分の写真を掲示するユーザは、「#猫」として写真をタグ付けし得るが、写真は家猫を含まない。「パリ」という名前の犬の写真を掲示するユーザは、タグ「#パリ」で写真をタグ付けし得るが、写真はフランスのパリを示していない。スーパーボウルサンデーにニューオーリンズのスーパーボウルで捕捉した家族の画像を掲示するユーザは、画像がスーパーボウルで捕捉されたことを示すGPS座標及び/又はタイムスタンプを有し得るが、画像自体の内容はフットボールの試合に関連しないことがある。
非視覚的インジケータの主観性は、ソーシャルネットワーキングシステムのユーザが、多種多様なコンテンツをクリエイティブに表現し共有するのに役立つが、非視覚的インジケータの主観性は、写真等のユーザアップロード画像の検索を難しくすることが多い。例えば、「猫」についてソーシャルネットワーキングシステムに掲示された画像を検索する試みは、ハロウィンでキャットウーマンのコスチュームを着たユーザの画像を明らかにし得る。フランスのパリのエッフェル塔の画像のグラフィカル検索を実行する試みは、「パリ」という名前の犬の画像に繋がり得る。スーパーボウルの写真を検索する試みは、フットボールの試合の目撃談を探している人物にとってあまり関連がないことがあるファンの家族の個人的な写真を明らかにし得る。ある意味では、これらの例で画像に関連付けられた非視覚的インジケータは、関連付けられた画像の内容を正確に反映しないことがあるという点で「ノイズ的」である。ソーシャルネットワーキングシステム内のユーザアップロードコンテンツを正確に検索することが望まれる。
図1は、幾つかの実施形態によるコンテキスト画像分類システム102の例を示す。コンテキスト画像分類システム102は、ソーシャルネットワーキングシステムに組み込まれ得、その例は図11に与えられる。図1の例では、コンテキスト画像分類システム102は、画像分類モジュール104及び画像適用モジュール106を含み得る。
画像分類モジュール104は、コンテンツ及びコンテンツの視覚的属性に関連付けられたコンテキストキューに基づいて、コンテンツの主題を認識し得る。コンテンツは、例えば、画像、ミーム、ビデオ、インタラクティブ視聴覚材料等を含み得る。視覚的属性は、画像内の視覚的パターン又はコンテンツに示された主題の特徴的属性を反映した画像セグメントを含み得る。視覚的属性は、例えば、外観、色、形状、レイアウト等の1つ又は組合せに基づき得る。
コンテキストキューは、コンテンツに示された主題の非視覚的インジケータを含み得る。コンテキストキューは、コンテンツの少なくとも一部の主題を反映又は示唆し得る。幾つかの実施形態では、コンテキストキューはコンテンツタグを含み得る。コンテキストキューは、ソーシャルキュー等のコンテンツ内の主題の他のタイプの非視覚的インジケータを含むこともできる。限定ではなく例として、コンテキストキューは、画像又はユーザのデジタルデバイスの全地球測位システム(GPS)座標、指定されたタグ以外のタグの数、指定されたタグが一連のタグ内で発生する程度、一連のタグ内の指定されたタグの順番、コンテンツのタグ付け者(例えば、文字列をコンテンツに関連付けるエンティティ)の識別情報、コンテンツのアップロード者(例えば、ソーシャルネットワーキングシステムのデータストアに記憶されるコンテンツを提供するエンティティ)の識別情報、コンテンツの所有者の識別情報、コンテンツのアップロード時刻、タグ付け者(又はアップロード者又は所有者)のコネクション及びコネクションのタイプ(例えば、友人)、タグ付け者(又はアップロード者又は所有者)のステータス又はプロフィール、コンテンツに関連付けられたメタデータ、所与のタイプのコンテンツを閲覧するか、又は好きな人々の識別子、交換可能イメージファイル(EXIF:Exchangeable Image File)情報等を含み得る。
幾つかの実施形態では、画像分類モジュール104は、画像群のサンプルセットから収集されたコンテキストキューに基づいて画像クラスの視覚的属性を認識するように、分類器をトレーニングし得る。画像群のサンプルセットは、分類器をトレーニングするトレーニングセットが選択される画像群を含み得る。画像群のサンプルセットは、分類器による正確な結果を保証するのに十分に多数の画像を含み得る。分類器は、コンテンツの各アイテムに、コンテンツが特定の画像クラス内に入る程度に対応する統計学的スコアを割り当て得る。幾つかの実施形態では、分類器は、階層分類器、線形分類器、又は他の分類器を組み込み得る。分離器の例を図5に提供する。幾つかの実施形態では、分類器は、まず、ソーシャルネットワーキングシステムによって保持される画像の選択されたサブセットに基づいてトレーニングされ得る。分類器は、様々な状況下で再トレーニングされ得る。例えば、分類器は、選択された頻度で定期的に又は画像が分類器に提供される際、非定期的に再トレーニングされ得る。別の例として、分類器は、多数の画像がソーシャルネットワーキングシステムにアップロードさせる可能性が高いイベント(例えば、スーパーボウル)等の特定のイベントの発生時に再トレーニングされ得る。更に別の例として、分類器は、ソーシャルネットワーキングシステムが閾値数の新しい画像を受信する場合、再トレーニングされ得る。これら及び他の状況での再トレーニングは、画像クラスの視覚的属性を認識する分類器の能力を改善することができる。
画像クラスは、例えば、物体(例えば、猫、車、人、財布等)、ブランド又はブランドに関連付けられた物体(例えば、コカコーラ(Coca-Cola)(商標登録)、フェラーリ(Ferrari)(商標登録))、プロスポーツチーム(例えば、ゴールデンステートウォリアーズ(Golden State Warriors)(商標登録)、ロケーション(例えば、エベレスト山)、アクティビティ(例えば、水泳)、語句又は概念(例えば、赤いドレス、幸せ)、及びコンテンツに関連付けることができる任意の他のこと、行動、又は観念を含み得る。本明細書に提供される多くの例は、単一の「画像クラス」を参照し得るが、画像クラスが、物体、ブランド、プロスポーツチーム、ロケーション等の混合を含む複数の画像クラス又は1つ若しくは複数の画像クラスを参照し得ることに留意する。
幾つかの実施形態では、画像分類モジュール104は、トレーニングされた分類器を使用して、画像群の評価セットの視覚的属性を画像クラスの視覚的属性と比較し、画像群の評価セット内の視覚的属性が、画像クラスの視覚的属性に十分に相関付けることができるか否かを判断し得る。画像群の評価セットは、分類器による分類に選択された画像群を含み得る。様々な実施形態では、画像群の評価セットは、データストア内の画像の全て若しくは部分又はソーシャルネットワーキングシステム内の画像の全て若しくは部分を含み得る。実施形態では、分類器は、機械学習等の任意の適する技法によってトレーニングされ得る。
様々な実施形態では、画像分類モジュール104は、分類されたコンテンツを画像適用モジュール106に提供し得る。分類されたコンテンツは、分類器によってランク付けされ、且つ/又はスコア付けされたコンテンツを含み得る。逆に、未処理のコンテンツ又は未分類のコンテンツは、分類器によってランク付けされ、且つ/又はスコア付けされていないか、又は1つ若しくは複数の画像クラスに関連付けられていないコンテンツを含み得る。分類されたコンテンツは、分類されたコンテンツが画像クラスに一致する程度を示すスコアを有し得る。分類されたコンテンツのスコアの高いアイテムほど、画像クラスの視覚的属性に相関する高い程度を有し得る。その結果、様々な実施形態では、画像分類モジュール104は、スコア付けに基づいて分類されたコンテンツの効率的な検索を可能にし得る。
分類のための画像群の評価セットの分析中の分類器の使用は、様々なときに行われ得る。例えば、分類器は、選択された頻度で、又は画像が分類器に提供される際に非定期的に画像群の評価セットを分析し得る。分類器は、多数の画像をソーシャルネットワーキングシステムにアップロードさせる可能性が高いイベント等の特定のイベントの発生時に画像群の評価セットを分析することもできる。分類器は、ソーシャルネットワーキングシステムが閾値数の新しい画像を受信する場合、画像群の評価セットを分析し得る。更に別の例として、分類器は、予期される画像検索が実行される前、分類のために画像群の評価セットを分類し得る。
画像適用モジュール106は、ソーシャルネットワーキングシステムで使用するように、分類されたコンテンツを適合させ得る。幾つかの実施形態では、画像適用モジュール106は、検索適用プログラミングインターフェース(API)とインターフェースして、画像クラスに従って分類されたコンテンツの各アイテムを検索可能にし得る。例えば、画像適用モジュール106は、ユーザがソーシャルネットワーキングシステムにアップロードした、分類画像を検索する検索モジュールとインターフェースし得る。別の例として、画像適用モジュール106は、ユーザがフィードに掲示した分類画像又はミームについてソーシャルネットワーキングシステムのフィードを検索する検索モジュールとインターフェースし得る。画像適用モジュール106は、検索クエリに応答して、分類されたコンテンツを提供することもできる。幾つかの実施形態では、画像適用モジュール106は、主題ディクショナリ、カテゴリツリー、及びトピックタグ付け技法を使用して、画像分類モジュール104によって提供された分類画像に関連付けられたトピックを抽出し得る。
図2Aは、幾つかの実施形態による画像分類モジュール104の例を示す。画像分類モジュール104は、未分類画像データストア202、画像分類トレーニングモジュール204、及び分類器208を含み得る。図2Aに示される構成要素に加えて、画像分類モジュール104は、図2Bに示された構成要素を含むこともできる。図2A及び図2Bにおける同様の要素が同様の参照符号を有し得ることに留意する。
未分類画像データストア202は、画像分類トレーニングモジュール204及び画像分類評価モジュール206に結合され得る。未分類画像データストア202は、未分類画像を含み得る。未分類画像は、関連付けられたコンテキストキューを有し得る。データストアは、テーブル、カンマ区切り値(CSV)ファイル、従来のデータベース(例えば、SQL)、又は他の既知若しくは従来の編成フォーマットを含め、任意の編成のデータを含み得る。幾つかの実施形態では、未分類画像データストア202は、タグ又は他のキュー等の画像に関連付けられたコンテキストキューのセットを記憶することもできる。幾つかの実施形態では、未分類画像データストア202は、ソーシャルネットワーキングシステムにおいて未分類画像の部分又は全てを表し得る。
画像分類トレーニングモジュール204は、未分類画像データストア202及び分類器208に結合され得る。幾つかの実施形態では、画像分類トレーニングモジュール204は、トレーニングフェーズを実施し得る。トレーニングフェーズは、画像分類トレーニングモジュール204が、画像群のサンプルセットから選択された画像の視覚的属性を認識するように分類器208をトレーニングする画像分類モジュール104のフェーズを含み得る。トレーニングフェーズ中、画像分類トレーニングモジュール204は、未分類画像データストア202からサンプルセット画像を取得し得る。画像分類トレーニングモジュール204は、取得された各未分類画像に関連付けられたコンテキストキューのセットを収集することもできる。コンテキストキューのセットに基づいて、画像群のサンプルセットから選択された画像群のトレーニングセットが使用されて、視覚的パターンを認識するように分類器208をトレーニングし得る。未分類画像及び/又はコンテキストキューは、関連情報について未分類画像データストア202に問い合わせて、画像群のサンプルセットから画像群のトレーニングセットを決定することによって取得され得る。
トレーニングフェーズ中、画像分類トレーニングモジュール204は、分類器208のトレーニングに用いる1つ又は複数の画像クラスを指定するように構成され得る。画像クラスを指定するために、画像分類トレーニングモジュール204は、画像クラスを定義する自動入力を受信し得る。画像クラスを指定することは、画像の分類を遂行する管理者等の人からの手動入力を含むこともできる。
トレーニングフェーズ中、画像分類トレーニングモジュール204は、画像クラスに対応するコンテキストキューを識別し選択するように構成され得る。様々な実施形態では、画像分類トレーニングモジュール204は、特定の画像クラスの属性を評価し得、特定のコンテキストキューがその画像クラスに関連付けられる可能性が高いか否かを判断し得る。例えば、画像分類トレーニングモジュール204は、あるタイプのタグが、家猫の写真に添えられている可能性が高く、一方、別のタイプのタグが、ハロウィンでキャットウーマンのコスチュームを着たユーザの写真に添えられている可能性が高いと判断し得る。そのような場合、画像分類トレーニングモジュール204は、家猫の写真に添えられた可能性が高いタグのタイプを、猫の画像クラスに対応するものとして選択し得る。本明細書においてより詳細に考察するように、コンテキストキューが特定の画像クラスに該当するか否かの検討は、タグ(例えば、タグ「#猫」、タグ「#ハロウィン」等)、タグの順番、特定のタグに他のタグが付随しているか否か(例えば、タグ「#猫」にタグ「#動物」が付随しているか否か又はタグ「#猫」にタグ「#ハロウィン」が付随するか否か)等の多くの考慮事項に基づき得る。画像分類トレーニングモジュール204は、特定の画像に関連付けられたコンテキストキューが特定の画像キューに対応する程度をランク付け、且つ/又はスコア付けするように構成されることもできる。
コンテキストキューは分析されて、画像群のサンプルセットから画像群のトレーニングセットを識別する。画像群のトレーニングセットは、画像クラスに最も密に相関する画像を表す。トレーニングフェーズ中、画像分類トレーニングモジュール204は、画像クラスに関連付けられた視覚的属性を識別するために、画像群のトレーニングセットを分類器208に提供し得る。幾つかの実施形態では、画像分類トレーニングモジュール204は、特定の画像クラスに対応する視覚的パターンのテンプレートを作成するように、分類器208に命令し得る。幾つかの実施形態では、画像分類トレーニングモジュール204は、必要に応じて、分類画像データストア210等のロケーションに分類画像及び/又は関連する視覚的パターンテンプレートを記憶し得る。画像分類トレーニングモジュール204は、手動注釈器を更に使用して、画像群のトレーニングセットの選択を促進し得る。画像分類トレーニングモジュール204については、図3及び図7の状況で更に考察する。
分類器208は、画像分類トレーニングモジュール204及び分類画像データストア(例えば、図2Bに示される分類画像データストア210)に結合され得る。分類器は、画像分類トレーニングモジュール204から画像を受信し得る。トレーニングフェーズにおいて、分類器208は、特定の視覚的パターンの存在について画像群のトレーニングセットを評価し得る。分類器208は、特定の視覚的パターンに画像クラスを関連付け得、視覚的パターンテンプレートを作成し得、視覚的パターンテンプレートを記憶させ得る。トレーニングフェーズにおいて、分類器208は、トレーニングに使用された画像を画像分類トレーニングモジュール204に戻し得る。幾つかの実施形態では、分類器208は、画像分類トレーニングモジュール204への戻り接続(例えば、フィードバックループを介して)を含み得る。その結果、分類器208は、画像分類トレーニングモジュール204の正確性を支援し得る。そのような戻り接続は、分類及びトレーニングの改善を更に支援し得る。分類器208については、図5の状況で更に考察する。
図2Bは、幾つかの実施形態による画像分類モジュール104の例を示す。画像分類モジュール104は、未分類画像データストア212、画像分類評価モジュール206、分類器208、及び分類画像データストア210を含み得る。未分類画像データストア212は、画像分類評価モジュール206に結合され得る。未分類画像データストア212は、未分類画像を記憶し得る。未分類画像データストア212は、図2Aに示される未分類画像データストア202と同じであり得るが、そうである必要はない。
画像分類評価モジュール206は、未分類画像データストア212及び分類器208に結合され得る。幾つかの実施形態では、画像分類評価モジュール206は、評価フェーズを実施し得る。評価フェーズは、画像分類評価モジュール206が分類器208を使用して、画像群の評価セット内の視覚的パターンを認識する画像分類モジュール104のフェーズを含み得る。実施形態では、画像群の評価セットは、未分類画像データストア212から選択され得る。
評価フェーズ中、画像分類評価モジュール206は、未分類画像データストア212からの画像群の評価セットを分類器208に提供し得る。様々な実施形態では、画像分類トレーニングモジュール204は、トレーニングフェーズにおいて、画像クラスに関連付けられた画像群のトレーニングセットの視覚的属性を認識するように分類器208をトレーニングし得る。画像群の評価セットは、画像群のサンプルセット及び画像群のトレーニングセットとは異なる画像のセットを含み得る。幾つかの実施形態では、画像分類評価モジュール206は、分類器208が、画像群の評価セットと比較すべき画像を分類器208に提供することもできる。様々な実施形態では、画像分類評価モジュール206は、画像クラスとの相関に基づいて、画像群の評価セットをランク付けし、且つ/又はスコア付けるように分類器208に命令し得る。画像分類評価モジュール206は、画像(すなわち、画像クラスとの相関に基づいてスコア付けられた画像)のランク及び/又はスコアを分類画像データストア210に記憶することもできる。画像分類評価モジュール206について、図4及び図8の状況で更に考察する。
分類器208は、画像分類トレーニングモジュール204及び画像分類評価モジュール206に結合され得る。分類器208は、画像分類評価モジュール206から画像を受信し得る。評価フェーズにおいて、分類器208は、画像群の評価セットに対して視覚的パターン認識を実行して、各画像と、関心のある画像クラスに関連付けられた視覚的パターンテンプレートとの相関をスコア付けし得る。評価フェーズにおいて、分類器208は、評価に使用された画像を画像分類評価モジュール206に戻し得る。分類器208については、図5の状況で更に考察する。
分類画像データストア210は、分類器208及び画像適用モジュール106に結合され得る。分類画像データストア210は、分類画像、画像クラス、視覚的パターンテンプレート、及び他の情報を含む情報を記憶し得る。幾つかの実施形態では、分類画像データストア210は、インデックス付けされて、分類画像へのアクセスを求めるAPIによる分類画像の効率的な検索に役立ち得る。例えば、分類画像データストア210は、分類画像へのアクセスを求める画像適用モジュール106に結合された検索モジュールと互換性を有するように構成され得る。
図3は、幾つかの実施形態による画像分類トレーニングモジュール204の例を示す。画像分類トレーニングモジュール204は、トレーニング画像選択モジュール301、トレーニング画像データストア309、及び分類器トレーニングモジュール310を含み得る。
トレーニング画像選択モジュール301は、未分類画像データストア202及びトレーニング画像データストア309に結合され得る。トレーニング画像選択モジュール301は、画像群のサンプルセットから画像群のトレーニングセットを識別し得る。トレーニング画像選択モジュール301は、画像群のトレーニングセットをトレーニング画像データストア309に記憶することもできる。トレーニング画像選択モジュール301は、トレーニング画像収集モジュール302、コンテキストキュー抽出モジュール304、画像クラス指定モジュール306、及び画像クラス相関付けモジュール308を含み得る。
トレーニング画像収集モジュール302は、トレーニング画像選択モジュール301のその他のモジュールに結合され得る。幾つかの実施形態では、トレーニング画像収集モジュール302は、画像群のサンプルセットに関連付けられたコンテキストキューと共に、画像群のサンプルセットを収集し得る。画像群のサンプルセット及び関連付けられたコンテキストキューは、未分類画像データストア202から検索し得る。
コンテキストキュー抽出モジュール304は、トレーニング画像選択モジュール301のその他のモジュールに結合され得る。コンテキストキュー抽出モジュール304は、画像群のサンプルセットに関連付けられたコンテキストキューを抽出するように構成され得る。本明細書で考察するように、コンテキストキューは、画像の内容の非視覚的インジケータを含み得る。画像のコンテキストキューの例は、画像の画像タグ、画像を捕捉しているデバイスのGPS座標、画像のタグ付け者、アップロード者、及び所有者の識別情報、画像の所有者の識別情報、画像に直接又は間接的に関連する他の情報等を含み得る。幾つかの実施形態では、コンテキストキュー抽出モジュール304は、画像クラス相関付けモジュール308にコンテキストキューのセットを提供し得、それにより、画像クラス相関付けモジュール308は、コンテキストキューに画像クラスを相関付け得る。
画像クラス指定モジュール306は、トレーニング画像選択モジュール301のその他のモジュールに結合され得る。画像クラス指定モジュール306は、分類器208が認識するようにトレーニングされる画像クラスを指定するように構成され得る。幾つかの実施形態では、画像クラス指定モジュール306は、管理者から画像クラスを指定する命令を受信し得、管理者は人間であってもよく、又は自動であってもよい。様々な実施形態では、画像クラスの指定は、画像クラスが存在しない場合、画像クラスを作成すること、又はそのような画像クラスが存在する場合、画像クラスを指定することを含み得る。
画像クラス相関付けモジュール308は、トレーニング画像選択モジュール301のその他のモジュールに結合され得る。画像クラス相関付けモジュール308は、コンテキストキュー抽出モジュール304から、関連付けられたコンテキストキューと共に画像群のサンプルセットの1つ又は複数を受信し得、画像クラス指定モジュール306から、指定された画像クラスを受信し得る。画像クラス相関付けモジュール308は、特定の画像のコンテキストキューが特定の画像クラスに相関する程度を特定し得る。より具体的には、画像クラス相関付けモジュール308は、所与の画像が画像クラスに相関する確率を示すスコア又は値を各画像に割り当て得る。幾つかの実施形態では、画像クラス相関付けモジュール308は、各画像のスコアに基づいて画像群のサンプルセットのそれぞれをランク付けすることもできる。幾つかの実施形態では、画像クラス相関付けモジュール308は、画像群のサンプルセットの最高スコア画像等の画像群のサンプルセットからトレーニングセットを選択して、分類器トレーニングモジュール310に提供し得る。有利なことに、画像クラス相関付けモジュール308は、画像群のサンプルセット内の内容の任意の視覚的認識を実行する必要はない。
以下の考察は、画像クラス相関付けモジュール308が、画像に関連付けられたコンテキストキューに基づいて画像の可能性の高い内容をいかに特定し得るかの例を提供する。以下の考察で提供されるように、画像クラス相関付けモジュール308は、タグ自体、タグのシンタックスを分析し得るか、又はコンテキストキュー抽出モジュール304によって抽出されたコンテキストキューに他のタイプの分析を実行し得る。画像クラス相関付けモジュール308は、以下の例の任意の組合せを提供して、コンテキストキューに基づいて、画像群のサンプルセットを指定された画像クラスにより相関付けて、画像群のトレーニングセットを決定することもできる。
幾つかの実施形態では、画像クラス相関付けモジュール308は、画像群のサンプルセットの画像タグのシンタックスを分析し得る。画像クラス相関付けモジュール308は、特定のシンタックスが所与の画像クラスに相関する可能性がどの程度かを特定し得る。幾つかの実施形態では、画像タグのシンタックス分析は、画像タグの厳密な言葉に重みを割り当てることを含み得る。すなわち、画像クラス相関付けモジュール308は、画像に関連付けられたタグの厳密な文言が、タグが画像クラスに相関付けられるべきであることを示すと判断し得る。例えば、画像は、画像タグ「#家猫」がタグ付けされ得る。画像クラス相関付けモジュール308は、タグ「#家猫」が、家猫の画像についての画像クラスと高度に相関すると判断し得る。別の例として、画像クラス相関付けモジュール308は、「#国内家市場」が、家猫の画像クラスと低度に相関すると判断し得る。
画像クラス相関付けモジュール308は、画像に関連付けられた一連の画像タグ内の特定の画像タグの順番を分析することもできる。例えば、家猫の写真にタグ付けしようとしている人は、以下の一連のタグを含み得る:「#猫、#家で、#日曜日、#動物」。画像クラス相関付けモジュール308は、タグ「#猫」が一連のタグ内の最初のタグであり、したがって、画像が家猫の画像である可能性が高いことを識別し得る。画像クラス相関付けモジュール308は、画像を画像クラスに相関付ける際、一連のタグに重みを割り当て得る。なお、画像を画像クラスに相関付けるために、画像クラス相関付けモジュール308は、一連のタグ内の最初の位置以外の位置にあるタグを考慮することもできる。
画像クラス相関付けモジュール308は、複数の画像タグが互いに同義語であるか否かを分析することもできる。例えば、最初の画像が以下のようにタグ付けされたと考える:「#猫、#家で、#ハロウィン、#キャットウーマン、#コスチューム、#DCコミック(DC Comics)(登録商標)」。更に、2番目の画像が以下のようにタグ付けされたと考える:「#猫、#ほ乳類、#動物、#家猫、#雄猫、#猫科、#かわいい」。画像クラス相関付けモジュール308は、最初の画像のタグの幾つかに基づいて、一連のタグが互いに同義ではなく、最初の画像が家猫の画像を含む可能性が低いと判断し得る。画像クラス相関付けモジュール308は、2番目の画像のタグの幾つかに基づいて、一連のタグが同義であり(例えば、「猫」、「雄猫」、及び「猫科」)、2番目の画像が家猫の画像を含む可能性が最初の画像よりも高いと更に判断し得る。したがって、画像クラス相関付けモジュール308は、家猫の画像クラスに関して、最初の画像のスコアよりも高いスコアを2番目の画像に割り当て得る。
幾つかの実施形態では、画像クラス相関付けモジュール308は、反意語又は派生意味について、複数の画像タグを評価し得る。例えば、最初の画像が以下のようにタグ付けされると考える:「#黒い車」、「#白い車」、「#高級車」、「#私のメルセデス」。2番目の画像が以下のようにタグ付けされると考える:「#黒い車」、「#暗い色の車」、「#高級車」、「#私のメルセデス」。画像クラス相関付けモジュール308は、第2の一連のタグが「黒い車」の反意語を含まないことに基づいて、2番目の画像が、黒い車に対応する画像クラスに高度に相関すると判断し得る。画像クラス相関付けモジュール308は、黒い車の画像クラスに関して、第1の画像のスコアよりも高いスコアを2番目の画像に割り当て得る。
画像クラス相関付けモジュール308は、幾つかの実施形態では、オントロジー又は言語階層に基づいて画像タグの関係を評価し得る。例えば、画像クラス相関付けモジュール308は、オンラインソース(例えば、ワードネット(WordNet))から1つ又は複数の単語のオントロジーを作成し得、感情的な影響(例えば、「幸せ」、「悲しい」、「赤いドレス」、「黒い車」)を有する単語を見つけ得る。別の例として、画像が以下のようにタグ付けされたと考える:「#猫、#ほ乳類、#動物、#家猫、#雄猫、#猫科、#かわいい」。画像クラス相関付けモジュール308は、「猫」が、「ほ乳類」によって識別されるアイテム群の部分であり、「ほ乳類」が「動物」によって識別されるアイテム群の部分であると判断し得る。その結果、画像クラス相関付けモジュール308は、そのような例では、画像に示される家猫の信頼性の高いインジケータを提供するものとしてタグを識別し得る。次に、画像クラス相関付けモジュール308は、それに従って、家猫の画像クラスに関して画像をスコア付けし得る。
様々な実施形態では、画像クラス相関付けモジュール308は、タグの単語及び語句の他の自然言語分析を実行し得る。幾つかの実施形態では、画像クラス相関付けモジュール308は、タグの単語のスペルミスを考慮することができる。画像クラス相関付けモジュール308は、英語の相手方と併せて、非英語の単語の存在を探すことを含め(例えば、同じ一連のタグ内の「#猫(#cat)」及び「#猫(#gato)」)、英語以外の言語を考慮することもできる。これらの各例では、画像クラス相関付けモジュール308は、特定の画像クラスに関して画像群のセットを適宜スコア付けし得る。
画像タグのシンタックスの分析に加えて、画像クラス相関付けモジュール308は、画像の生成及び/又はタグ付けに関連するソーシャルキューを分析し得る。例えば、画像クラス相関付けモジュール308は、画像群のサンプルセットに関連付けられたロケーションデータを分析し得る。より具体的には、画像クラス相関付けモジュール308は、画像のGPS座標を評価し得る。例えば、GPS座標は、ユーザのモバイルデバイスのGPS送受信器からとられてもよく、又は画像がアップロードされたとき若しくは後の画像の地理的タグ付けからとられてもよい。特定の画像のロケーションデータを使用して、画像クラス相関付けモジュール308は、特定の画像クラスに関してスコアを特定の画像に割り当て得る。例えば、画像クラス相関付けモジュール308は、画像がサンフランシスコのゴールデンゲートブリッジ付近で撮影されたことをロケーションデータから特定し得る。次に、画像クラス相関付けモジュール308は、橋の画像クラスに関して画像にスコアを割り当て得る。
幾つかの実施形態では、画像クラス相関付けモジュール308は、画像群のサンプルセットの特定の画像の生成器の識別情報を含むソーシャルキューを分析し得る。画像クラス相関付けモジュール308は、特定のエンティティが、特定の画像クラス内の画像を生成する可能性が高いか否かに応じて、スコアを割り当て得る。例えば、エンティティが過去、特定の画像クラス内の多くの画像を生成していた場合、画像クラス相関付けモジュール308は、エンティティの特定の画像をスコア付けして、画像クラスとの高度の相関を反映し得る。
幾つかの実施形態では、画像クラス相関付けモジュール308は、画像群のサンプルセットの1つの所有者が、画像の生成者又は画像のタグ付け者であったか否かを示すソーシャルキューを分析し得る。幾つかの実施形態では、画像クラス相関付けモジュール308は、画像又は画像への知的財産権を所有するエンティティが画像を生成するか、又はタグ付けしたか否かを判断し得る。例えば、商標(例えば、コカコーラ(Coca−Cola)(登録商標)ロゴ)の画像クラスに関して、画像クラス相関付けモジュール308は、画像が、商標を所有するエンティティ(例えば、コカコーラ(Coca−Cola)(登録商標)社)によって生成又はタグ付けされた場合、高度の相関を反映したスコアを画像に提供し得る。そのような重み付け方式は、商標付き画像又はロゴの認識に特に利点を提供し得る。
幾つかの実施形態では、画像クラス相関付けモジュール308は、ソーシャルネットワーキングシステムでの人のステータス又はプロフィールを示すソーシャルキューを分析し得る。人は、画像群のサンプルセットの特定の画像の生成者及び/又はタグ付け者であり得る。例えば、画像クラス相関付けモジュール308は、人の活動(例えば、過去の掲示、ステータスアップデート、友人関係、メッセージング履歴、過去のタグ付け履歴、過去の画像生成履歴、閲覧履歴、オンラインプロフィール等)又は関係(例えば、友人)に基づいて、その人が信頼性の高い画像生成者及び/又はタグ付け者である可能性が高いと判断し得る。画像クラス相関付けモジュール308は、その人のステータス又はプロフィールが、その人が全般的に又は特に画像クラスにおいて信頼性の高い画像生成者及び/又はタグ付け者であることを示すか否かに基づいて、1つ又は複数の画像に様々なスコアを割り当て得る。
様々な実施形態では、画像クラス相関付けモジュール308は、他の画像クラスの有無を示すソーシャルキューを分析し得る。例えば、画像クラス相関付けモジュール308は、画像がボートを含み、その結果、画像が屋内である可能性が低いと判断し得る。コンテキストキュー(例えば、ハッシュタグ「#屋内」)の存在は、画像がボートを含む可能性が低いことを示し得る。別の例として、画像クラス相関付けモジュール308は、画像内のある物体の存在が、別の物体が画像に存在し得るか、又はしないことを意味し得ると判断し得る。例えば、画像内の牛を示すコンテキストキューの存在は、画像が牛及び航空機の両方を含む可能性が低いことを踏まえて、画像クラス相関付けモジュール308が航空機の負の相関を提供できるようにし得る。別の例として、画像内の一羽の鶏を示す1つのコンテキストキューの存在は、画像クラス相関付けモジュール308が、一羽の鶏を含む画像が他の鶏を含む可能性が高いことを踏まえて、画像内の他の鶏に正の相関を提供できるようにし得る。同様に、羊の存在は、牧羊犬に対する正の相関を示し得る。
画像クラス相関付けモジュール308は、限定ではないが、上述したソーシャルキュー及びアップロード者が画像の所有者であるか否か、画像のファイルタイプ、画像内又は画像に関連付けられたメタデータ、画像を気に入った人の識別情報、タグ又は画像を閲覧したユーザの洗練度又は経験、画像が以前に画像クラスに分類されたか否か(分類されたことがある場合、その画像クラスに関して画像のスコアが何であったか)等のうちの1つ又は複数を含め、様々なソーシャルキューを分析し得る。本明細書に明示的に考察されたソーシャルキューとは別に、他のソーシャルキーが、画像クラス相関付けモジュール308によって分析されて、画像を画像クラスにより相関付けて、スコア付けし得る。画像クラス相関付けモジュール308は、これらの画像のコンテキストキューが1つ又は複数の画像クラスに高度に相関する程度に基づいて、様々なスコアを様々な画像に割り当て得る。
画像へのスコアの割り当てに加えて、画像クラス相関付けモジュール308は、1つ又は複数の画像クラスに関して画像群のサンプルセットをランク付けすることもできる。例えば、画像クラス相関付けモジュール308は、画像クラスに関する各画像のスコアに基づいて、画像群のサンプルセットの各画像をランク付けし得る。ランク付けは、画像クラスとの各画像の相対的な相関を反映し得る。画像クラス相関付けモジュール308は、重み、スコア、及び/又はランクを使用して、画像群のトレーニングセットを生成し得る。
トレーニング画像データストア309は、トレーニング画像選択モジュール301から画像群のトレーニングセットを受信し得る。トレーニング画像データストア309は、画像群のトレーニングセットを記憶し得る。幾つかの実施形態では、トレーニング画像データストア309は、分類器トレーニングモジュール310が画像群のトレーニングセットにアクセスできるようにし得る。
分類器トレーニングモジュール310は、トレーニング画像データストア309及び分類器208に結合され得る。様々な実施形態では、分類器トレーニングモジュール310は、画像クラスを認識するように分類器208をトレーニングするために、画像群のトレーニングセットを提供し得る。画像群のトレーニングセットは、特定の画像クラスに関して、サンプルセットの閾値数の最高ランク画像に制限され得る。最高ランク画像の閾値数は値Kで表され得、Kは任意の整数値である。例えば、トレーニング画像収集モジュール302が、「家猫」の画像クラスを認識するように分類器208を最終的にトレーニングするために、画像群のサンプルセットとして1000の画像を収集したと考える。画像クラス相関付けモジュール308が、これらの画像のうちの200の画像に、残りの800の画像に割り当てられたスコアよりも高いスコアを割り当てたと更に考える。そのような場合、分類器トレーニングモジュール310は、画像群のトレーニングセットとして200の上位スコア画像のみを分類器208に提供し得、それにより、分類器208は、家猫の画像クラスに高く相関する画像の視覚的属性を効率的に特定することができる。
図4は、幾つかの実施形態による画像分類評価モジュール206の例を示す。画像分類評価モジュール206は、評価画像収集モジュール402、分類器入力モジュール404、視覚的パターンテンプレート収集モジュール405、分類器スコア受信モジュール406、視覚的属性ランク付けモジュール408、及び評価画像提供モジュール410を含み得る。
評価画像収集モジュール402は、画像分類評価モジュール206のその他のモジュールに結合され得る。幾つかの実施形態では、評価画像収集モジュール402は、未分類画像データストア202から画像分類のために画像群の評価セットを収集し得る。画像群の評価セットは、画像群のサンプルセット及び画像群のトレーニングセットと同じであってもよく、又は異なってもよい。画像群の評価セットは、画像群のサンプルセット及び画像群のトレーニングセットと異なる数(例えば、より多数の画像)を含み得る。様々な実施形態では、画像群の評価セットは、未分類画像データストア202からランダム又は選択的に取得され得る。
視覚的パターンテンプレート収集モジュール405は、画像分類評価モジュール206のその他のモジュール及び画像分類トレーニングモジュール204に結合され得る。幾つかの実施形態では、視覚的パターンテンプレート収集モジュール405は、画像分類トレーニングモジュール204から、特定の画像クラスに対応する視覚的パターンテンプレートを受信し得る。視覚的パターンテンプレート収集モジュール405は、視覚的パターンテンプレートを分類器入力モジュール404に更に提供し得る。
分類器入力モジュール404は、画像分類評価モジュール206のその他のモジュールに結合され得る。幾つかの実施形態では、分類器入力モジュール404は、評価画像収集モジュール402から画像群の評価セットを受信し得る。分類器入力モジュール404は、特定の画像クラスに対応する視覚的パターンテンプレートを視覚的パターンテンプレート収集モジュール405から受信することもできる。分類器入力モジュール404は、画像の各評価セット内の視覚的パターンテンプレートの認識を試みるように分類器208に命令し得る。
分類器スコア受信モジュール406は、画像分類評価モジュール206のその他のモジュールに結合され得る。幾つかの実施形態では、分類器スコア受信モジュール406は、画像群の評価セットの特定の画像が視覚的パターンテンプレートに相関する程度を示すスコアを分類器208から受信し得る。
視覚的属性ランク付けモジュール408は、画像分類評価モジュール206のその他のモジュールに結合され得る。様々な実施形態では、視覚的属性ランク付けモジュール408は、画像の各評価セットのスコアが視覚的パターンテンプレートに相関する程度に基づいて、画像群の評価セットをランク付けし得る。幾つかの実施形態では、視覚的属性ランク付けモジュール408は、インデックス付け又は検索のために画像の分類済セットを構成する再ランク付けされた画像セットを提供し得る。
評価画像提供モジュール410は、画像分類評価モジュール206のその他のモジュールに結合され得る。幾つかの実施形態では、評価画像提供モジュール410は、視覚的属性ランク付けモジュール408から再ランク付け又は分類された画像を受信し得る。評価画像提供モジュール410は、再ランク付けされた各画像が指定された画像クラスに相関する程度を反映したインデックス又は他の情報と共に、分類画像データストア210に再ランク付けされた画像を提供し得る。
図5は、幾つかの実施形態による分類器208の例を示す。分類器208は、視覚的パターン作成モジュール502、視覚的パターン認識モジュール504、及び分類画像インターフェースモジュール506を含み得る。
視覚的パターン作成モジュール502は、視覚的パターン認識モジュール504に結合され得る。視覚的パターン作成モジュール502は、分類器208のトレーニングフェーズ中、画像分類トレーニングモジュール204から画像群のトレーニングセットを受信し、画像クラスに関連付けられた画像群のトレーニングセットに共通する特徴の視覚的パターンテンプレートを作成し得る。視覚的パターンテンプレートを作成するために、視覚的パターン作成モジュール502は、画像の各トレーニングセット内の局所的画像特徴の語彙の発生をカウントするコンピュータビジョン又は技法でのバッグオブワードモデル等の視覚的パターン認識アルゴリズムを実施し得る。実施形態では、視覚的パターン作成モジュール502は、画像をセグメントに分割し得、視覚的特徴の存在について画像の各セグメントを評価し得る。視覚的パターン作成モジュール502は、画像の各セグメントで識別された視覚的特徴を更に抽出し得、視覚的特徴をベクトルとして表し得る。ベクトルを使用して、視覚的パターン作成モジュール502は、画像群のトレーニングセットに共通する特徴の視覚的パターンテンプレートを作成し得る。
様々な実施形態では、視覚的パターン作成モジュール502は、画像群のトレーニングセットで最も共通して見つけられた特徴に基づいて、視覚的パターンテンプレートを作成し得る。例えば、これらの実施形態では、画像分類トレーニングモジュール204は、整数「K」の画像を視覚的パターン作成モジュール502に提供し得、視覚的パターン作成モジュール502は、Kの画像内で最も共通して見つけられる画像を認識し得る。
視覚的パターン認識モジュール504は、視覚的パターン作成モジュール502に結合され得る。視覚的パターン認識モジュール504は、評価フェーズ中、画像分類評価モジュール206から画像群の評価セットを受信し得、画像の各評価セットが、画像クラスに関連付けられた特定の視覚的パターンテンプレートに相関する程度を識別し得る。幾つかの実施形態では、視覚的パターン認識モジュール504は、バッグオブワードアルゴリズム等の視覚的パターン認識を利用し得る。視覚的パターン認識は、幾つかの実施形態では、ニューラルネットワーク画像分類技法を含み得る。視覚的パターン認識モジュール504は、画像群の評価セット内の様々な視覚的特徴を特定し、各画像について、抽出された視覚的特徴を1組のベクトルとして表し得る。視覚的パターン認識モジュール504は、画像の各評価セットのベクトルを特徴の様々な視覚的パターンテンプレートと比較することもできる。幾つかの実施形態では、視覚的パターン認識モジュール504は、画像の各評価セットがトレーニングフェーズ中に生成された様々な視覚的パターンテンプレートに相関する程度をスコア付けし得る。
分類画像インターフェースモジュール506は、視覚的パターン作成モジュール502及び視覚的パターン認識モジュール504に結合され得る。幾つかの実施形態では、分類画像インターフェースモジュール506は、視覚的パターン認識モジュール504から分類画像をスコアと共に受信し得る。分類画像インターフェースモジュール506は、分類画像及び/又はスコアを分類画像データストア210に提供し得る。分類画像インターフェースモジュール506は、視覚的パターンテンプレートを分類画像データストア210に提供することもできる。
図6は、幾つかの実施形態による画像を分類するプロセス600の例を示す。プロセス600について、図2Aに示される画像分類モジュール104と併せて考察する。プロセス600は、トレーニングフェーズ600a及び評価フェーズ600bを含み得る。プロセス600のブロック602において、画像分類トレーニングモジュール204は、未分類画像データストア202から画像群のサンプルセットを収集し得る。ブロック604において、画像分類トレーニングモジュール204は、画像群のサンプルセットに関連付けられたコンテキストキューを収集し得る。ブロック606において、画像分類トレーニングモジュール204は、コンテキストキューを使用し、関心のある画像クラスとの相関に基づいて画像をスコア付けし、順序付けて、本明細書に考察するように、画像群のトレーニングセットを作成し得る。スコア付け及び順序付けに基づいて、画像群のトレーニングセットが決定され得る。ブロック607において、画像分類トレーニングモジュール204は、トレーニングセットに基づいて分類器208をトレーニングし得る。ブロック608において、画像分類評価モジュール206は、未分類画像データストア202から画像群の評価セットを収集し得る。ブロック610において、分類器208は、画像群の評価セットの視覚的属性を画像クラスに関連付けられた1組の視覚的パターンテンプレートと比較し得る。ブロック612において、分類器208は、比較に基づいて、画像群の評価セットの各画像がその画像クラスに入るか否かを判断し得る。
図7は、幾つかの実施形態による分類器をトレーニングするプロセス700の例を示す。プロセス700について、図3に示される画像分類トレーニングモジュール204と併せて考察する。ブロック701において、画像分類指定モジュール306は、認識するように分類器208をトレーニングするための画像クラスを指定し得る。ブロック702において、トレーニング画像収集モジュール302は、画像群のサンプルセットを受信し得、画像の各サンプルセットは、関連付けられたコンテキストキューを有する。ブロック704において、コンテキストキュー抽出モジュール304は、画像群のサンプルセットからコンテキストキューを抽出し得る。ブロック708において、画像クラス相関付けモジュール308は、画像に関連付けられた1つ又は複数のコンテキストキューに基づいて、画像群のサンプルセット内の各画像の相関を画像クラスによりスコア付け得る。ブロック710において、画像クラス相関付けモジュール308は、各画像のスコアに基づいて、画像群のサンプルセットをランク付け得る。ブロック712において、画像クラス相関付けモジュール308は、サンプルセットから、分類器208をトレーニングする画像群のトレーニングセットを決定し得る。幾つかの実施形態では、トレーニングセットの決定は、スコア付けに基づいてサンプルセット内の各画像をランク付けすることを含み得る。決定は、画像群のサンプルセットのトップスコアサブセットを選択することを含むこともできる。トップスコアサブセットは、画像群のトレーニングセットを含み得る。ブロック714において、分類器トレーニングモジュール310は、画像群のトレーニングセット内の共通の視覚的パターンを識別するように、分類器208をトレーニングし得る。
図8は、幾つかの実施形態による画像を分類するプロセス800の例を示す。プロセス800について、図4に示される画像分類評価モジュール206及び図5に示される分類器208と併せて考察する。ブロック802において、評価画像収集モジュール402は、未分類画像データストア202から画像群の評価セットを収集し得る。ブロック804において、評価画像収集モジュール402は、画像群の評価セットの視覚的属性を評価するための画像を決定し得る。幾つかの実施形態では、分類器入力モジュール404は、画像群の評価セット及び画像クラスを分類器208に提供し得る。ブロック806において、視覚的パターン認識モジュール504は、画像クラスに関連付けられた視覚的パターンテンプレートにより、画像群の評価セットの各画像の相関をスコア付けし得る。ブロック808において、視覚的パターン認識モジュール504は、画像群の評価セットの各画像のスコア付けされた相関に基づいて、画像群の評価セットの各画像をランク付けし得る。ブロック810において、視覚的パターン認識モジュール504は、画像群の評価セットのトップスコアサブセットに画像クラスを関連付け得る。幾つかの実施形態では、次に、分類画像インターフェースモジュール506は、トップスコアサブセットをソーシャルネットワーキングシステム内の様々な他のモジュールに提供し得る。
図9は、幾つかの実施形態による、画像分類モジュール104による画像群のコンテキスト生成分類のプレビュー900の例を示す。プレビュー900は、画像の未分類群902、画像の第1の分類群904、画像の第2の分類群906、画像の第3の分類群908、及び画像の第4の分類群910を含む。図9の例では、画像の未分類群902は、関連付けられたコンテキストキューを有する画像群を含む。コンテキストキューは、画像タグ及び他のコンテキスト情報を含み得る。画像の第1の分類群904、画像の第2の分類群906、画像の第3の分類群908、及び画像の第4の分類群910を生成するために、画像の未分類群902の1つ又は複数は、画像分類トレーニングモジュール204に提供されている。画像分類トレーニングモジュール204は、トレーニングフェーズ中、コンテキストキューに基づいてソートされた画像の未分類群902を使用して、4つの画像クラス、すなわち、合成的な見た目/感覚を有する画像の第1の画像クラス、クローズアップ画像の第2の画像クラス、屋外で撮影された画像の第3の画像クラス、及び水を示す画像の第4の画像クラスに関連付けられた視覚的属性を認識するように分類器208をトレーニングしている。画像分類評価モジュール206は、評価フェーズ中、画像の未分類群902を分類器208に提供しており、分類器208は、画像の未分類群902の視覚的属性を4つの画像クラスに関連付けられた視覚的パターンテンプレートと比較するようにトレーニングされている。分類器208の出力は、分類器208が認識するようにトレーニングされた4つの画像クラスに対応している。より具体的には、分類器208は、第1の画像クラスに対応する画像の第1の分類群904、第2の画像クラスに対応する画像の第2の分類群906、第3の画像クラスに対応する画像の第3の分類群908、及び第4の画像クラスに対応する画像の第4の分類群910を生成している。
図10は、幾つかの実施形態による、画像分類モジュール104による画像群のコンテキスト生成画像フィルタ分類のプレビュー1000の例を示す。プレビュー1000は、画像の未分類群1002及び画像の分類群1004を含む。画像の未分類群1002は、ソーシャルネットワーキングシステム内の未分類画像の部分を表し得る。画像群のサンプルセットにはタグ及び他のコンテキストキューが関連付けられている。コンテキストキューに基づいて、画像群のサンプルセットの各画像は、関心のある画像クラスとの相関に基づいてスコア付けされている。この例では、「猫」が関心のある画像クラスである。次に、画像群のサンプルセットの画像は、スコアに基づいてランク付けられている。この例では、画像群のサンプルセットの最高ランクの200の画像は、画像群のトレーニングセットとして指定されている。次に、画像群のトレーニングセットが適用されて、画像に示された共通の視覚的パターンが認識される。視覚的パターンテンプレートが、トレーニングセットに基づいて生成され、「猫」画像クラスが関連付けられている。画像の未分類群1002は、画像群の評価セットとして利用されている。画像群の評価セットは分類器に適用され、「猫」画像クラスに関連付けられた視覚的パターンテンプレートとの相関がスコア付けされている。画像群の評価セットのスコアはランク付けされ、画像群の評価セットからの最高ランク画像は、画像の分類群1004として選択されている。
[ソーシャルネットワーキングシステム−実施例]
図11は、幾つかの実施形態による、コンテキスト画像分類システム102を実施する例としてのソーシャルネットワーキングシステム1100のネットワーク図である。ソーシャルネットワーキングシステム1100は、1つ又は複数のユーザデバイス1110、1つ又は複数の外部システム1120、ソーシャルネットワーキングシステム1130、及びネットワーク1150を含む。実施形態では、上述した実施形態に関連して考察したソーシャルネットワーキングシステムは、ソーシャルネットワーキングシステム1130として実施され得る。例示のために、図11に示されるソーシャルネットワーキングシステム1100の実施形態は、単一の外部システム1120及び単一のユーザデバイス1110を含む。しかし、他の実施形態では、ソーシャルネットワーキングシステム1100は、より多数のユーザデバイス1110及び/又はより多数の外部システム1120を含み得る。特定の実施形態では、ソーシャルネットワーキングシステム1130は、ソーシャルネットワーキングシステムプロバイダによって運営され、一方、外部システム1120は、異なるエンティティによって運営され得るという点で、ソーシャルネットワーキングシステム1130とは別個である。しかし、様々な実施形態では、ソーシャルネットワーキングシステム1130及び外部システム1120は、併せて動作して、ソーシャルネットワーキングサービスをソーシャルネットワーキングシステム1130のユーザ(又はメンバ)に提供する。この意味では、ソーシャルネットワーキングシステム1130は、外部システム1120等の他のシステムが、インターネットにわたりソーシャルネットワーキングサービス及び機能をユーザに提供するために使用し得るプラットフォーム又はバックボーンを提供する。
ユーザデバイス1110は、ユーザから入力を受信し、ネットワーク1150を介してデータを受信することができる1つ又は複数の計算デバイスを含む。一実施形態では、ユーザデバイス1110は、例えば、マイクロソフトウィンドウズ(Microsoft Windows)(登録商標)互換性オペレーティングシステム)、アップル(Apple)(登録商標)OS−X、及び/又はリナックス(Linux)(登録商標)ディストリビューションを実行する従来のコンピュータシステムである。別の実施形態では、ユーザデバイス1110は、スマートフォン、タブレット、個人情報端末(PDA)、モバイル電話等のコンピュータ機能を有するデバイスとすることができる。ユーザデバイス1110は、ネットワーク1150を介して通信するように構成される。ユーザデバイス1110は、アプリケーション、例えば、ユーザデバイス1110のユーザがソーシャルネットワーキングシステム1130と対話できるようにするブラウザアプリケーションを実行することができる。別の実施形態では、ユーザデバイス1110は、iOS(登録商標)及びアンドロイド(ANDROID)(登録商標)等のユーザデバイス1110のネイティブオペレーティングシステムによって提供されるアプリケーションプログラミングインターフェース(API)を通して、ソーシャルネットワーキングシステム1130と対話する。ユーザデバイス1110は、ネットワーク1150を介して外部システム1120及びソーシャルネットワーキングシステム1130と通信するように構成され、ネットワーク1150は、有線及び/又は無線通信システムを使用するローカルエリアネットワーク及び/又は広域ネットワークの任意の組合せを含み得る。
一実施形態では、ネットワーク1150は、標準通信技術及びプロトコルを使用する。したがって、ネットワーク1150は、イーサネット(Ethernet)(登録商標)、802.11、ワールドワイドインターオペラビリティフォーマイクロウェーブアクセス(WiMAX)(登録商標)、3G、4G、CDMA、GSM(登録商標)、LTE、デジタル加入者回線(DSL)等の技術を使用するリンクを含むことができる。同様に、ネットワーク1150で使用されるネットワーキングプロトコルは、マルチプロトコルラベルスイッチング(MPLS)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ユーザデータグラムプロトコル(UDP)、ハイパーテキストトランスポートプロトコル(HTTP)、簡易メール転送プロトコル(SMTP)、ファイル転送プロトコル(FTP)等を含むことができる。ネットワーク1150を介して交換されるデータは、ハイパーテキストマークアップ言語(HTML)及び拡張可能マークアップ言語(XML)を含む技術及び/又はフォーマットを使用して表すことができる。加えて、全て又は幾つかのリンクは、セキュアソケットレイヤ(SSL)、トランスポートレイヤセキュリティ(TLS)、及びインターネットプロトコルセキュリティ(IPsec)等の従来の暗号化技術を使用して暗号化することができる。
一実施形態では、ユーザデバイス1110は、ブラウザアプリケーション1112を使用して外部システム1120及びソーシャルネットワーキングシステム1130から受信されるマークアップ言語ドキュメント1114を処理することにより、外部システム1120及び/又はソーシャルネットワーキングシステム1130からのコンテンツを表示し得る。マークアップ言語ドキュメント1114は、コンテンツと、コンテンツのフォーマット又はプレゼンテーションを記述する1つ又は複数の命令とを識別する。マークアップ言語ドキュメント1114に含まれる命令を実行することにより、ブラウザアプリケーション1112は、マークアップ言語ドキュメント1114によって記述されるフォーマット又はプレゼンテーションを使用して、識別されたコンテンツを表示する。例えば、マークアップ言語ドキュメント1114は、外部システム1120及びソーシャルネットワーキングシステム1130から検索されたテキスト及び/又は画像データを含む複数のフレームを有するウェブページを生成し表示する命令を含む。様々な実施形態において、マークアップ言語ドキュメント1114は、拡張可能マークアップ言語(XML)データ、拡張可能ハイパーテキストマークアップ言語(XHTML)データ、又は他のマークアップ言語データを含むデータファイルを含む。更に、マークアップ言語ドキュメント1114は、外部システム1120とユーザデバイス1110との間でのデータ交換を促進するために、ジャバスクリプト(JavaScript)(登録商標)オブジェクト表記(JSON)データ、パディングを有するJSON(JSONP)、及びジャバスクリプト(JavaScript)(登録商標)データを含み得る。ユーザデバイス1110のブラウザアプリケーション1112は、ジャバスクリプト(JavaScript)(登録商標)コンパイラを使用して、マークアップ言語ドキュメント1114を復号化し得る。
マークアップ言語ドキュメント1114は、フラッシュ(FLASH)(商標)又はユニティ(Unity)(商標)アプリケーション、シルバーライト(SilverLight)(商標)アプリケーションフレームワーク等のアプリケーション又はアプリケーションフレームワークを含むか、又はそれらにリンクすることもできる。
一実施形態では、ユーザデバイス1110は、ユーザデバイス1110のユーザがソーシャルネットワーキングシステム1130にログインするか否かを示すデータを含む1つ又は複数のクッキー1116も含み、クッキーは、ソーシャルネットワーキングシステム1130からユーザデバイス1110に通信されるデータの変更を可能にし得る。
外部システム1120は、1つ又は複数のウェブページ1122a、1122bを含む1つ又は複数のウェブサーバを含み、ウェブページは、ネットワーク1150を使用してユーザデバイス1110に通信される。外部システム1120は、ソーシャルネットワーキングシステム1130とは別個である。例えば、外部システム1120には第1のドメインが関連付けられ、一方、ソーシャルネットワーキングシステム1130には別個のソーシャルネットワーキングドメインが関連付けられる。外部システム1120に含まれるウェブページ1122a、1122bは、コンテンツを識別し、識別されたコンテンツのフォーマット又はプレゼンテーションを指定する命令を含むマークアップ言語ドキュメント1114を含む。
ソーシャルネットワーキングシステム1130は、複数のユーザを含み、ソーシャルネットワーキングシステムの他のユーザと通信し、対話する能力をソーシャルネットワーキングシステムのユーザに提供する、ソーシャルネットワーキングシステムの1つ又は複数の計算デバイスを含む。幾つかの場合、ソーシャルネットワーキングシステムは、グラフ、すなわち、エッジ及びノードを含むデータ構造によって表すことができる。ソーシャルネットワーキングシステムを表すために、データベース、オブジェクト、クラス、メタ要素、ファイル、又は任意の他のデータ構造を含むが、これらに限定されない他のデータ構造を使用することもできる。ソーシャルネットワーキングシステム1130は、オペレータによって監督され、管理され、又は制御され得る。ソーシャルネットワーキングシステム1130のオペレータは、人間、自動アプリケーション、又はコンテンツを管理し、ポリシーを調整し、ソーシャルネットワーキングシステム1130内の使用尺度を収集する一連のアプリケーションとし得る。任意のタイプのオペレータが使用され得る。
ユーザは、ソーシャルネットワーキングシステム1130に加わり、次に、結び付きたいソーシャルネットワーキングシステム1130の任意の数の他のユーザへのコネクションを追加し得る。本明細書で使用される場合、「友人」という用語は、ユーザがソーシャルネットワーキングシステム1130を介してコネクション、関連、又は関係を形成したソーシャルネットワーキングシステム1130の任意の他のユーザを指す。例えば、実施形態では、ソーシャルネットワーキングシステム1130内のユーザが、ソーシャルグラフ内のノードとして表される場合、「友人」という用語は、2つのユーザノード間に形成され、2つのユーザノードを直接結び付けるエッジを指すことができる。
コネクションは、ユーザによって明示的に追加されてもよく、又はユーザ(例えば、同じ教育機関の卒業生であるユーザ)の共通の特徴に基づいてソーシャルネットワーキングシステム1130によって自動的に作成されてもよい。例えば、第1のユーザは特に、友人である特定の他のユーザを選択する。ソーシャルネットワーキングシステム1130でのコネクションは通常、両方向であるが、両方である必要はなく、したがって、「ユーザ」及び「友人」という用語は枠組みに依存する。ソーシャルネットワーキングシステム1130のユーザ間のコネクションは通常、2者間(「双方向」)又は「相互」であるが、一方的又は「一方向」であってもよい。例えば、ボブ及びジョーは両方ともソーシャルネットワーキングシステム1130のユーザであり、互いに結び付けられる場合、ボブ及びジョーは互いのコネクションである。他方、ボブがジョーに結び付けられ、ジョーによってソーシャルネットワーキングシステム1130に通信されたデータを見ることを希望するが、ジョーは相互コネクションを形成することを希望しない場合、一方的なコネクションが確立され得る。ユーザ間のコネクションは、直接的なコネクションであり得るが、ソーシャルネットワーキングシステム1130の幾つかの実施形態では、1つ又は複数のレベルのコネクション又は分離度を介して間接的であることができる。
ユーザ間にコネクションを確立し維持し、ユーザ間の対話を可能にすることに加えて、ソーシャルネットワーキングシステム1130は、ソーシャルネットワーキングシステム1130によってサポートされる様々なタイプのアイテムに対して行動をとる能力をユーザに提供する。これらのアイテムは、ソーシャルネットワーキングシステム1130のユーザが属し得るグループ又はネットワーク(すなわち、人々、エンティティ、及び概念のソーシャルネットワーク)、ユーザが関心を有し得るイベント又はカレンダーエントリ、ユーザがソーシャルネットワーキングシステム1130を介して使用し得るコンピュータベースのアプリケーション、ユーザがソーシャルネットワーキングシステム1130により又はソーシャルネットワーキングシステム1130を通して提供されるサービスを介してアイテムを購入又は販売できるようにするトランザクション、及びユーザがソーシャルネットワーキングシステム1130内外で実行し得る広告との対話を含み得る。これらは、ユーザがソーシャルネットワーキングシステム1130に対して作用し得るアイテムの少数の例にすぎず、多くの他のアイテムが可能である。ユーザは、ソーシャルネットワーキングシステム1130内又はソーシャルネットワーキングシステム1130とは別個であるか、若しくはネットワーク1150を介してソーシャルネットワーキングシステム1130に結合される外部システム1120内で表されることが可能ないかなるものとでも対話し得る。
ソーシャルネットワーキングシステム1130は、様々なエンティティをリンクすることも可能である。例えば、ソーシャルネットワーキングシステム1130は、ユーザが、API、ウェブサービス、又は他の通信チャネルを通して互いと、並びに外部システム1120又は他のエンティティと対話できるようにする。ソーシャルネットワーキングシステム1130は、複数のエッジで相互接続された複数のノードを含む「ソーシャルグラフ」を生成し維持する。ソーシャルグラフ内の各ノードは、別のノードに作用することができ、且つ/又は別のノードによる作用が可能なエンティティを表し得る。ソーシャルグラフは、様々なタイプのノードを含み得る。ノードのタイプの例としては、ユーザ、非人エンティティ、コンテンツアイテム、ウェブページ、グループ、活動、メッセージ、概念、及びソーシャルネットワーキングシステム1130内のオブジェクトによって表すことができる任意の他のものが挙げられる。ソーシャルグラフ内の2つのノード間のエッジは、ノード関係又はノードのうちの一方によって他方のノードに実行された行動に起因し得る2つのノード間の特定の種類のコネクション又は関連を表し得る。幾つかの場合、ノード間のエッジは重み付けされることができる。エッジの重みは、ノード間のコネクション又は関連の強さ等のエッジに関連付けられる属性を表すことができる。異なるタイプのエッジに異なる重みが提供されることができる。例えば、あるユーザが別のユーザを「好き」な場合に作成されるエッジにある重みが与えられ得、一方、ユーザが別のユーザの友人である場合に作成されるエッジには異なる重みが与えられ得る。
例として、第1のユーザが第2のユーザを友人として識別する場合、第1のユーザを表すノード及び第2のユーザを表す第2のノードを結ぶソーシャルグラフ内のエッジが生成される。様々なノードが互いに関係又は対話するため、ソーシャルネットワーキングシステム1130は、関係及び対話を反映するように、様々なノードを結ぶエッジを変更する。
ソーシャルネットワーキングシステム1130は、ユーザ生成コンテンツも含み、ユーザ生成コンテンツは、ソーシャルネットワーキングシステム1130とのユーザの対話を強化する。ユーザ生成コンテンツは、ユーザがソーシャルネットワーキングシステム1130に追加し、アップロードし、送信し、又は「掲示」することができるいかなるものも含み得る。例えば、ユーザは、掲示をユーザデバイス1110からソーシャルネットワーキングシステム1130に通信する。掲示は、ステータス更新若しくは他のテキストデータ、ロケーション情報、写真等の画像、ビデオ、リンク、音楽、又は他の同様のデータ及び/又はメディア等のデータを含み得る。コンテンツは、第3者によってソーシャルネットワーキングシステム1130に追加されることもできる。コンテンツ「アイテム」は、ソーシャルネットワーキングシステム1130においてオブジェクトとして表される。このようにして、ソーシャルネットワーキングシステム1130のユーザは、様々な通信チャネルを通してテキスト及び様々なタイプのメディアのコンテンツアイテムを掲示することにより、互いと通信するように促される。そのような通信は、互いとのユーザの対話を増大させ、ユーザがソーシャルネットワーキングシステム1130と対話する頻度を増大させる。
ソーシャルネットワーキングシステム1130は、ウェブサーバ1132、API要求サーバ1134、ユーザプロフィールストア1136、コネクションストア1138、行動ロガー1140、活動ログ1142、認証サーバ1144、画像分類モジュール1146、及び画像適用モジュール1148を含む。実施形態では、ソーシャルネットワーキングシステム1130は、様々なアプリケーションの追加、より少数、又は異なる構成要素を含み得る。ネットワークインターフェース、セキュリティメカニズム、ロードバランサー、フェイルオーバサーバ、管理及びネットワーク動作コンソール等の他の構成要素は、システムの詳細を曖昧にしないために示されていない。
ユーザプロフィールストア1136は、経歴、人口統計、及びユーザによって宣言されたか、又はソーシャルネットワーキングシステム1130によって推測される仕事経験、教育履歴、趣味又は好み、ロケーション等の他のタイプの説明的情報を含め、ユーザアカウントについての情報を保持する。この情報は、各ユーザが一意に識別されるように、ユーザプロフィールストア1136に記憶される。ソーシャルネットワーキングシステム1130は、異なるユーザ間の1つ又は複数のコネクションを記述するデータもコネクションストア1138に記憶する。コネクション情報は、同様又は共通の仕事経験、グループメンバシップ、趣味、又は教育履歴を有するユーザを示し得る。更に、ソーシャルネットワーキングシステム1130は、異なるユーザ間のユーザ定義コネクションを含み、ユーザが他のユーザとの関係を指定できるようにする。例えば、ユーザ定義コネクションは、ユーザが、友人、同僚、パートナ等のユーザの現実世界の関係と同様の他のユーザとの関係を生成できるようにする。ユーザは、予め定義されたタイプのコネクションから選択してもよく、又は必要に応じて自身のコネクションタイプを定義してもよい。非人エンティティ、バケツ、クラスタセンター、画像、関心、ページ、外部システム、概念等のソーシャルネットワーキングシステム1130での他のノードとのコネクションも、コネクションストア1138に記憶される。
ソーシャルネットワーキングシステム1130は、ユーザが対話し得るオブジェクトについてのデータを保持する。このデータを保持するために、ユーザプロフィールストア1136及びコネクションストア1138が、ソーシャルネットワーキングシステム1130によって保持される対応するタイプのオブジェクトのインスタンスを記憶する。各オブジェクトタイプは、そのタイプのオブジェクトに適切な情報を記憶するのに適する情報フィールドを有する。例えば、ユーザプロフィールストア1136は、ユーザのアカウント及びユーザのアカウントに関連する情報の記述に適するデータ構造を含む。特定のタイプの新しいオブジェクトが作成される場合、ソーシャルネットワーキングシステム1130は、対応するタイプの新しいデータ構造を初期化し、一意のオブジェクト識別子を割り当て、必要に応じてデータをオブジェクトに追加し始める。これは、例えば、ユーザがソーシャルネットワーキングシステム1130のユーザになるときに行われ得、ソーシャルネットワーキングシステム1130は、ユーザプロフィールストア1136にユーザプロフィールの新しいインスタンスを生成し、一意の識別子をユーザアカウントに割り当て、ユーザアカウントのフィールドに、ユーザによって提供された情報を入れ始める。
コネクションストア1138は、他のユーザへのユーザのコネクション、外部システム1120へのコネクション、又は他のエンティティへのコネクションを記述するのに適するデータ構造を含む。コネクションストア1138は、コネクションタイプもユーザのコネクションに関連付け得、コネクションタイプは、ユーザについての情報へのアクセスを規制するために、ユーザのプライバシー設定と併せて使用され得る。実施形態では、ユーザプロフィールストア1136及びコネクションストア1138は、連合データベースとして実施され得る。
コネクションストア1138、ユーザプロフィールストア1136、及び活動ログ1142に記憶されたデータは、ソーシャルネットワーキングシステム1130が、ノードを使用して様々なオブジェクトを識別し、ノードを結ぶエッジを使用して、異なるオブジェクト間の関係を識別するソーシャルグラフを生成できるようにする。例えば、第1のユーザが、ソーシャルネットワーキングシステム1130において第2のユーザとの接続を確立する場合、ユーザプロフィールストア1136からの第1のユーザ及び第2のユーザのユーザアカウントは、ソーシャルグラフにおいてノードとして機能し得る。コネクションストア1138に記憶される第1のユーザと第2のユーザとのコネクションは、第1のユーザ及び第2のユーザに関連付けられたノード間のエッジである。この例を続けると、次に、第2のユーザは、ソーシャルネットワーキングシステム1130内でメッセージを第1のユーザに送信し得る。記憶され得るメッセージを送信するという行動は、ソーシャルグラフで第1のユーザ及び第2のユーザを表す2つのノード間の別のエッジである。更に、メッセージそれ自体が識別され、第1のユーザ及び第2のユーザを表すノードに結ばれた別のノードとして、ソーシャルグラフに含まれ得る。
別の例では、第1のユーザは、ソーシャルネットワーキングシステム1130によって保持される画像(又は代替的に、ソーシャルネットワーキングシステム1130外の別のシステムによって保持される画像)において、第2のユーザをタグ付けし得る。画像はそれ自体、ソーシャルネットワーキングシステム1130内のノードとして表され得る。このタグ付け動作は、第1のユーザと第2のユーザとの間にエッジを作成し得るとともに、各ユーザと画像との間にエッジを作成し得、画像もソーシャルグラフのノードである。更に別の例では、ユーザがイベントへの参加を確認する場合、ユーザ及びイベントは、ユーザプロフィールストア1136から得られるノードであり、イベントの参加は、活動ログ1142から検索され得るノード間のエッジである。ソーシャルグラフを生成して保持することにより、ソーシャルネットワーキングシステム1130は、多くの異なるタイプのオブジェクト及びそれらのオブジェクト間のコネクションを記述するデータを含み、ソーシャル関連情報の豊富なソースを提供する。
ウェブサーバ1132は、ネットワーク1150を介してソーシャルネットワーキングシステム1130を1つ又は複数のユーザデバイス1110及び/又は1つ又は複数の外部システム1120にリンクする。ウェブサーバ1132は、ウェブページ及びジャバ(Java)(登録商標)、ジャバスクリプト(JavaScript)(登録商標)、フラッシュ(Flash)、XML等の他のウェブ関連コンテンツにサービングする。ウェブサーバ1132は、メッセージを受信し、ソーシャルネットワーキングシステム1130と1つ又は複数のユーザデバイス1110との間でメッセージをルーティングするメールサーバ又は他のメッセージング機能を含み得る。メッセージは、インスタントメッセージ、待ち行列型メッセージ(例えば、電子メール)、テキスト及びSMSメッセージ、又は任意の他の適するメッセージングフォーマットとすることができる。
API要求サーバ1134は、1つ又は複数の外部システム1120及びユーザデバイス1110が、1つ又は複数のAPI機能を呼び出すことによってソーシャルネットワーキングシステム1130からのアクセス情報を呼び出せるようにする。API要求サーバ1134は、APIを呼び出すことにより、外部システム1120が情報をソーシャルネットワーキングシステム1130に送信できるようにもする。外部システム1120は、一実施形態では、ネットワーク1150を介してAPI要求をソーシャルネットワーキングシステム1130に送信し、API要求サーバ1134はAPI要求を受信する。API要求サーバ1134は、API要求に関連付けられたAPIを呼び出して、適切な応答を生成することによって要求を処理し、API要求サーバ1134は、ネットワーク1150を介して適切な応答を外部システム1120に通信する。例えば、API要求に応答して、API要求サーバ1134は、外部システム1120にログインしたことがあるユーザのコネクション等のユーザに関連付けられたデータを収集し、収集されたデータを外部システム1120に通信する。別の実施形態では、ユーザデバイス1110は、外部システム1120と同じように、APIを介してソーシャルネットワーキングシステム1130と通信する。
行動ロガー1140は、ソーシャルネットワーキングシステム1130内外でのユーザ行動についての通信をウェブサーバ1132から受信することが可能である。行動ロガー1140は、ユーザ行動についての情報を活動ログ1142に入れ、ソーシャルネットワーキングシステム1130が、ソーシャルネットワーキングシステム1130内及びソーシャルネットワーキングシステム1130外でユーザがとった様々な行動を発見できるようにする。特定のユーザがソーシャルネットワーキングシステム1130での別のノードに関してとった任意の行動には、活動ログ1142又は同様のデータベース若しくは他のデータリポジトリに保持された情報を通して、各ユーザのアカウントが関連付けられ得る。識別された記憶されたソーシャルネットワーキングシステム1130内のユーザがとった行動の例は、例えば、別のユーザへのコネクションの追加、別のユーザへのメッセージの送信、別のユーザからのメッセージを読むこと、別のユーザに関連付けられたコンテンツの閲覧、別のユーザによって掲示されたイベントへの参加、画像の掲示、画像を掲示する試み、又は別のユーザ若しくは別のオブジェクトと対話する他の行動を含み得る。ユーザがソーシャルネットワーキングシステム1130内で行動をとる場合、その行動は活動ログ1142に記録される。一実施形態では、ソーシャルネットワーキングシステム1130は、エントリのデータベースとして活動ログ1142を保持する。行動がソーシャルネットワーキングシステム1130内でとられる場合、その行動のエントリが活動ログ1142に追加される。活動ログ1142は行動ログと呼ばれ得る。
更に、ユーザ行動には、ソーシャルネットワーキングシステム1130とは別個の外部システム1120等のソーシャルネットワーキングシステム1130外のエンティティ内で生じる概念及び行動を関連付け得る。例えば、行動ロガー1140は、ウェブサーバ1132から、外部システム1120とのユーザの対話を記述するデータを受信し得る。この例では、外部システム1120は、ソーシャルグラフ内の構造化された行動及びオブジェクトに従ってユーザの対話を報告する。
ユーザが外部システム1120と対話する行動の他の例としては、ユーザが外部システム1120又は別のエンティティ内で関心を表現すること、ユーザが、外部システム1120又は外部システム1120内のウェブページ1122aを考察するコメントをソーシャルネットワーキングシステム1130に掲示すること、ユーザが外部システム1120に関連付けられたユニフォームリソースロケータ(URL)又は他の識別子をソーシャルネットワーキングシステム1130に掲示すること、ユーザが外部システム1120に関連付けられたイベントに参加すること、又は外部システム1120に関連するユーザによる任意の他の行動が挙げられる。したがって、活動ログ1142は、ソーシャルネットワーキングシステム1130のユーザと、ソーシャルネットワーキングシステム1130とは別個の外部システム1120との対話を記述する行動を含み得る。
認証サーバ1144は、ソーシャルネットワーキングシステム1130のユーザの1つ又は複数のプライバシー設定を施行する。ユーザのプライバシー設定は、ユーザに関連付けられた特定の情報がいかに共有されることができるかを決定する。プライバシー設定は、ユーザに関連付けられた特定の情報の指定と、情報を共有することができる1つ又は複数のエンティティの指定とを含む。情報を共有することができるエンティティの例は、他のユーザ、アプリケーション、外部システム1120、又は情報に潜在的にアクセスすることができる任意のエンティティを含み得る。ユーザによって共有することができる情報は、プロフィール写真等のユーザアカウント情報、ユーザに関連付けられた電話番号、ユーザのコネクション、コネクションの追加、ユーザプロフィール情報の変更等のユーザがとった行動等を含む。
プライバシー設定指定は、異なるレベルの粒度で提供され得る。例えば、プライバシー設定は、他のユーザと共有されるべき特定の情報を識別し得、プライバシー設定は、プロフィール写真、家の電話番号、及びステータスを含む個人情報等の仕事用電話番号又は特定の関連情報セットを識別する。代替的には、プライバシー設定は、ユーザに関連付けられた全ての情報に適用され得る。特定の情報にアクセスすることができるエンティティセットの指定も、様々なレベルの粒度で指定することができる。情報を共有することができる様々なエンティティセットは、例えば、ユーザの全ての友人、友人の全ての友人、全てのアプリケーション、又は全ての外部システム1120を含み得る。一実施形態では、エンティティセットの指定はエンティティの一覧を含むことができる。例えば、ユーザは、特定の情報にアクセス許可されている外部システム1120のリストを提供し得る。別の実施形態では、指定は、情報にアクセス許可されていない例外と共にエンティティセットを含むことができる。例えば、ユーザは、全ての外部システム1120がユーザの仕事情報にアクセスすることを許可し得るが、仕事情報にアクセス許可されていない外部システム1120のリストを指定し得る。特定の実施形態は、特定の情報にアクセス許可されていない例外のリストを「ブロックリスト」と呼ぶ。ユーザによって指定されたブロックリストに属する外部システム1120は、プライバシー設定で指定される情報へのアクセスから遮断される。情報の指定の粒度及び情報が共有されるエンティティの指定の粒度の様々な組合せが可能である。例えば、全ての個人情報は友人と共有され得、一方、全ての仕事情報は、友人の友人と共有され得る。
認証サーバ1144は、ユーザに関連付けられた特定の情報にユーザの友人、外部システム1120、及び/又は他のアプリケーション及びエンティティがアクセスすることができるか否かを判断する論理を含む。外部システム1120は、ユーザの仕事用電話番号等のユーザのより私的で機密性のある情報にアクセスするため、認証サーバ1144からの認証を必要とし得る。ユーザのプライバシー設定に基づいて、認証サーバ1144は、別のユーザ、外部システム1120、アプリケーション、又は別のエンティティが、ユーザがとった行動についての情報を含め、ユーザに関連付けられた情報にアクセス許可されているか否かを判断する。
図11の例では、ソーシャルネットワーキングシステム1130は、本明細書により詳細に説明されるように、画像分類モジュール1146及び画像適用モジュール1148を含み得る。実施形態では、画像分類モジュール1146は、画像群のサンプルセットのコンテキストキューを収集し、コンテキストキューを使用して、画像群のトレーニングセットを生成し得る。画像群のトレーニングセットが使用されて、画像クラスの視覚的パターンテンプレートを生成するように分類器がトレーニングされ得る。分類器は、視覚的パターンテンプレートとの相関に基づいて、画像群の評価セットをスコア付けし得る。画像群の評価セットの最高スコア画像は、画像クラスに最も密に関連すると考えられ得る。実施形態では、画像分類モジュール1146は、画像分類モジュール104として実施され得る。画像適用モジュール1148は、他のアプリケーションとインターフェースして、分類画像の検索を可能にし得る。実施形態では、画像適用モジュール1148は、画像適用モジュール106として実施され得る。
[ハードウェア実施]
上記プロセス及び特徴は、広範囲のマシン及びコンピュータシステムアーキテクチャにより、広範囲のネットワーク及び計算環境で実施することができる。図12は、実施形態により本明細書に記載される実施形態の1つ又は複数の実施に使用され得るコンピュータシステム1200の例を示す。コンピュータシステム1200は、コンピュータシステム1200に本明細書に記載されるプロセス及び特徴を実行させる命令セットを含む。コンピュータシステム1200は、他のマシンに接続(例えば、ネットワーク接続)され得る。ネットワーク接続された展開では、コンピュータシステム1200は、クライアント−サーバネットワーク環境でのサーバマシン若しくはクライアントマシンとして、又はピアツーピア(若しくは分散)ネットワーク環境でのピアマシンとして動作し得る。実施形態では、コンピュータシステム1200は、ソーシャルネットワーキングシステム1130、ユーザデバイス1110、及び外部システム1120、又はそれらの構成要素とし得る。実施形態では、コンピュータシステム1200は、ソーシャルネットワーキングシステム1130の全て又は部分を構成する多くのうちの1つのサーバとし得る。
コンピュータシステム1200は、プロセッサ1202、キャッシュ1204、及び本明細書に記載されるプロセス及び特徴に向けられた、コンピュータ可読媒体に記憶された1つ又は複数の実行可能モジュール及びドライバを含む。更に、コンピュータシステム1200は、高性能入/出力(I/O)バス1206及び標準I/Oバス1212を含む。ホストブリッジ1210は、プロセッサ1202を高性能I/Oバス1206に結合し、一方、I/Oバスブリッジ1212は、2つのバス1206及び1212を互いに結合する。システムメモリ1214及びネットワークインターフェース1216は、高性能I/Oバス1206に結合する。コンピュータシステム1200は、ビデオメモリ(図示せず)に結合されたビデオメモリ及び表示装置を更に含み得る。大容量記憶装置1218及びI/Oポート1220は、標準I/Oバス1212に結合する。コンピュータシステム1200は任意選択的に、キーボード及びポインティングデバイス、表示装置、又は標準I/Oバス1212に結合された他の入/出力デバイス(図示せず)を含み得る。まとめて、これらの要素は、カリフォルニア州サンタクララに所在のインテル社(Intel Corporation)製のx126互換性プロセッサ、カリフォルニア州サニーベールに所在のアドバンストマイクロデバイセズ(Advanced Micro Devices)(AMD)社製のx126互換性プロセッサ、及び任意の他の適するプロセッサに基づくコンピュータシステムを含むが、これらに限定されない広いカテゴリのコンピュータハードウェアシステムを表すことが意図される。
オペレーティングシステムは、ソフトウェアアプリケーション(図示せず)とのデータの入出力を含め、コンピュータシステム1200の動作を管理し制御する。オペレーティングシステムは、システムで実行中のソフトウェアアプリケーションとシステムのハードウェア構成要素との間のインターフェースを提供する。リナックス(LINUX)(登録商標)オペレーティングシステム、カリフォルニア州クパチーノに所在のアップルコンピュータ社(Apple Computer Inc.)から入手可能なアップルマッキントッシュ(Apple Macintosh)(登録商標)オペレーティングシステム、ユニックス(UNIX)(登録商標)オペレーティングシステム、マイクロソフト(Microsoft)(登録商標)ウィンドウズ(登録商標)オペレーティングシステム、BSDオペレーティングシステム等の任意の適するオペレーティングシステムが使用され得る。他の実施も可能である。
コンピュータシステム1200の要素について、更に詳細に以下に説明する。特に、ネットワークインターフェース1216は、コンピュータシステム1200と、イーサネット(Ethernet)(登録商標)(例えば、IEEE1202.3)ネットワーク、バックプレーン等の任意の広範囲のネットワークとの間の通信を提供する。大容量記憶装置1218は、上記で識別された各計算システムによって実施される上記プロセス及び特徴を実行するためのデータ及びプログラミング命令の永続的な記憶を提供し、一方、システムメモリ1214(例えば、DRAM)は、プロセッサ1202によって実行される場合、データ及びプログラミング命令の一時的な記憶を提供する。I/Oポート1220は、コンピュータシステム1200に結合され得る追加の周辺デバイス間に通信を提供する1つ又は複数のシリアル及び/又はパラレル通信ポートとし得る。
コンピュータシステム1200は、様々なシステムアーキテクチャを含み得、コンピュータシステム1200の様々な構成要素は再構成され得る。例えば、キャッシュ1204は、プロセッサ1202と共にオンチップであり得る。代替的には、キャッシュ1204及びプロセッサ1202は、「プロセッサモジュール」として一緒にパッケージされ得、プロセッサ1202は「プロセッサコア」と呼ばれる。更に、特定の実施形態は、上記構成要素の全てを必要とせず、且つ含まないことがある。例えば、標準I/Oバス1212に結合された周辺デバイスは、高性能I/Oバス1206に結合し得る。加えて、幾つかの実施形態では、単一のバスのみが存在し得、コンピュータシステム1200の構成要素は単一のバスに結合される。更に、コンピュータシステム1200は、追加のプロセッサ、記憶デバイス、又はメモリ等の追加の構成要素を含み得る。
一般に、本明細書に記載されるプロセス及び特徴は、オペレーティングシステムの一環として又は特定のアプリケーション、構成要素、プログラム、オブジェクト、モジュール、又は「プログラム」と呼ばれる一連の命令として実施され得る。例えば、1つ又は複数のプログラムが、本明細書に記載される特定のプロセスの実行に使用され得る。プログラムは通常、1つ又は複数のプロセッサによって読み取られて実行されると、本明細書に記載されるプロセス及び特徴を実行する動作をコンピュータシステム1200に実行させる、コンピュータシステム1200内の様々なメモリ及び記憶デバイス内の1つ又は複数の命令を含む。本明細書に記載されるプロセス及び特徴は、ソフトウェア、ファームウェア、ハードウェア(例えば、特定用途向け集積回路)、又はそれらの任意の組合せで実施され得る。
一実装形態では、本明細書に記載されるプロセス及び特徴は、個々に又は分散計算環境で集合的にコンピュータシステム1200によって実行される一連の実行可能モジュールとして実施される。上記モジュールは、ハードウェア、コンピュータ可読媒体(又はマシン可読媒体)に記憶された実行可能モジュール、又は両方の組合せによって実現され得る。例えば、モジュールは、プロセッサ1202等のハードウェアシステム内のプロセッサによって実行される複数又は一連の命令を含み得る。まず、一連の命令は、大容量記憶装置1218等の記憶デバイスに記憶され得る。しかし、一連の命令は、任意の適するコンピュータ可読記憶媒体に記憶することができる。更に、一連の命令は、ローカルに記憶される必要はなく、ネットワークインターフェース1216を介して、ネットワーク上のサーバ等のリモート記憶デバイスから受信することができる。命令は、大容量記憶装置1218等の記憶デバイスからシステムメモリ1214にコピーされ、次に、プロセッサ1202によってアクセスされ実行される。様々な実装形態では、1つ又は複数のモジュールは、並列処理環境での複数のサーバ等の1つ又は複数のロケーションにある1つ又は複数のプロセッサによって実行することができる。
コンピュータ可読媒体の例としては、揮発性メモリデバイス及び不揮発性メモリデバイス等の記録可能型媒体、固体状態メモリ、フロッピー(登録商標)及び他のリムーバブルディスク、ハードディスクドライブ、磁気媒体、光ディスク(例えば、コンパクトディスク読み取り専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD))、他の同様の非一時的(又は一時的)有形(又は非有形)記憶媒体、又はコンピュータシステム1200によって実行されて、本明細書に記載されるプロセス及び特徴の任意の1つ又は複数を実行する一連の命令の記憶、符号化、又は搬送に適する任意のタイプの媒体が挙げられるが、これらに限定されない。
説明のため、説明の完全な理解を提供するために、多くの特定の詳細が記載されている。しかし、これらの特定の詳細なしで本開示の実施形態が実施可能なことが当業者には明らかである。幾つかの場合、説明を曖昧にしないように、モジュール、構造、プロセス、特徴、及びデバイスがブロック図の形態で示されている。他の場合、機能ブロック図及び流れ図は、データ及び論理フローを表すために示されている。ブロック図及び流れ図(例えば、モジュール、ブロック、構造、デバイス、特徴等)の構成要素は、本明細書に明示的に記載され示される以外の方法で様々に組み合せられ、分離され、除去され、記録され、置換され得る。
本明細書での「一実施形態」、「実施形態」、「幾つかの実施形態」、「様々な実施形態」、「特定の実施形態」、「他の実施形態」、「一連の実施形態」等への参照は、その実施形態に関連して説明された特定の特徴、設計、構造、又は特性が、本開示の少なくとも一つの実施形態に含まれることを意味する。例えば、本明細書での様々な箇所での「一実施形態において」又は「実施形態において」という語句の出現は必ずしも、全てが同じ実施形態を指すわけではなく、他の実施形態と相互に排他的な別個又は代替の実施形態であるわけでもない。更に、「実施形態」等の明示的な参照があるか否かに関係なく、様々な特徴が記載され、様々な特徴は、様々に組合せられ得、幾つかの実施形態に含まれ得るが、他の実施形態では様々に省かれることもできる。同様に、幾つかの実施形態では好ましいか、又は必要とされ得るが、他の実施形態ではそうではない様々な特徴が記載されている。
本明細書で使用される用語は主に、読みやすさ及び教示を目的として選択され、本発明の主題を描写するか、又は限定するために選択されていない。したがって、範囲がこの詳細な説明によってではなく、本明細書に基づく出願に対して発行される任意の特許請求の範囲によって限定されることが意図される。したがって、実施形態の開示は、範囲の限定ではなく例示を意図し、範囲は以下の特許請求の範囲に記載される。

Claims (20)

  1. システムであって、
    少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサに処理を実行させるための命令を記憶するメモリであって、前記少なくとも1つのプロセッサに、
    1つ又は複数のソーシャルキューが各画像に関連付けられた画像群のサンプルセットを受信すること、
    前記画像に関連付けられた前記1つ又は複数のソーシャルキューに基づいて、前記サンプルセット内の各画像の相関を画像クラスによりスコア付けすること、
    前記スコア付けに基づいて、前記サンプルセットから分類器をトレーニングする画像群のトレーニングセットを決定すること
    を実行させるための命令を記憶する前記メモリと
    を備えるシステム。
  2. 前記画像クラスを指定することを更に備える請求項1に記載のシステム。
  3. 前記決定することは、前記スコア付けに基づいて前記画像群のサンプルセットの各画像をランク付けすることを含む、請求項1に記載のシステム。
  4. 前記決定することは、前記画像群のサンプルセットのトップスコアサブセットを選択することを含む、請求項1に記載のシステム。
  5. 前記トップスコアサブセットは、前記画像群のトレーニングセットである、請求項4に記載のシステム。
  6. 前記画像群のトレーニングセットに基づいて前記分類器をトレーニングすることを更に備える請求項1に記載のシステム。
  7. 前記画像クラスに関連付けられた視覚的パターンテンプレートを生成することを更に備える請求項1に記載のシステム。
  8. 前記分類器は、バッグオブビジュアルワード画像分類技法又はニューラルネットワーク画像分類技法を使用するように構成されている、請求項1に記載のシステム。
  9. 画像群の評価セットが前記画像クラスに相関する程度を特定することを更に備える請求項1に記載のシステム。
  10. 前記画像群の評価セットが前記画像群のサンプルセットと異なる、請求項9に記載のシステム。
  11. 前記画像群の評価セットが前記画像群のサンプルセットよりも大きい画像セットを含む、請求項9に記載のシステム。
  12. 前記画像群の評価セットの各画像の相関を、前記画像クラスに関連付けられた視覚的パターンテンプレートによりスコア付けすることを更に備える請求項9に記載のシステム。
  13. 前記画像群の評価セットの各画像の相関の前記スコア付けに基づいて、前記評価セットの各画像をランク付けすることを更に備える請求項12に記載のシステム。
  14. 前記画像群の評価セットのトップスコアサブセットを前記画像クラスに関連付けることを更に備える請求項12に記載のシステム。
  15. 前記1つ又は複数のソーシャルキューが1つ又は複数の画像タグを含む、請求項1に記載のシステム。
  16. 画像に関連付けられた前記1つ又は複数の画像タグの総数の中から特定の画像タグのインスタンス数を特定することを更に備える請求項15に記載のシステム。
  17. 前記1つ又は複数のソーシャルキューは、前記画像群のサンプルセットの画像に関連付けられたロケーションデータ又は前記画像群のサンプルセットの前記画像のアップロード者、タグ付け者、若しくは所有者の識別情報のうちの1つ又は複数を含む、請求項1に記載のシステム。
  18. 前記1つ又は複数のソーシャルキューはソーシャルネットワーキングシステムによって受信される、請求項1に記載のシステム。
  19. コンピュータ実施方法であって、
    コンピュータシステムにより、1つ又は複数のソーシャルキューが各画像に関連付けられた画像群のサンプルセットを受信すること、
    前記コンピュータシステムにより、前記画像に関連付けられた前記1つ又は複数のソーシャルキューに基づいて、前記サンプルセット内の各画像の相関を画像クラスによりスコア付けすること、
    前記コンピュータシステムにより、前記スコア付けに基づいて、前記サンプルセットから分類器をトレーニングする画像群のトレーニングセットを決定すること
    を備えるコンピュータ実施方法。
  20. 実行時にコンピュータシステムにコンピュータ実施方法を実行させるコンピュータ実行可能命令を記憶するコンピュータ記憶媒体であって、前記コンピュータ実施方法は、
    1つ又は複数のソーシャルキューが各画像に関連付けられた画像群のサンプルセットを受信すること、
    前記画像に関連付けられた前記1つ又は複数のソーシャルキューに基づいて、前記サンプルセット内の各画像の相関を画像クラスによりスコア付けすること、
    前記スコア付けに基づいて、前記サンプルセットから分類器をトレーニングする画像群のトレーニングセットを決定すること
    を備える、コンピュータ記憶媒体。
JP2016533290A 2013-08-05 2014-02-11 コンテキストキューを画像に相関付けることによる画像分類のシステム及び方法 Active JP6612229B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/959,446 US10169686B2 (en) 2013-08-05 2013-08-05 Systems and methods for image classification by correlating contextual cues with images
US13/959,446 2013-08-05
PCT/US2014/015887 WO2015020691A1 (en) 2013-08-05 2014-02-11 Systems and methods for image classification by correlating contextual cues with images

Publications (2)

Publication Number Publication Date
JP2016527646A true JP2016527646A (ja) 2016-09-08
JP6612229B2 JP6612229B2 (ja) 2019-11-27

Family

ID=52427721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016533290A Active JP6612229B2 (ja) 2013-08-05 2014-02-11 コンテキストキューを画像に相関付けることによる画像分類のシステム及び方法

Country Status (10)

Country Link
US (2) US10169686B2 (ja)
JP (1) JP6612229B2 (ja)
KR (1) KR102244748B1 (ja)
CN (1) CN105612514B (ja)
AU (1) AU2014304803B2 (ja)
BR (1) BR112016003926A2 (ja)
CA (1) CA2920193A1 (ja)
IL (1) IL243859A0 (ja)
MX (1) MX367510B (ja)
WO (1) WO2015020691A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019536148A (ja) * 2016-11-08 2019-12-12 イーベイ インク.Ebay Inc. クラウド支援型クエリシステム
JP2019220116A (ja) * 2018-06-22 2019-12-26 日立造船株式会社 情報処理装置、判定方法、および対象物判定プログラム
JP2021082319A (ja) * 2021-02-03 2021-05-27 プライマル フュージョン インコーポレイテッド 機械学習分類器とともに知識表現を使用するためのシステム及び方法
JP2023028704A (ja) * 2021-08-20 2023-03-03 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104751198B (zh) * 2013-12-27 2018-04-27 华为技术有限公司 图像中的目标物的识别方法及装置
US10223727B2 (en) * 2014-10-20 2019-03-05 Oath Inc. E-commerce recommendation system and method
US10977571B2 (en) * 2015-03-02 2021-04-13 Bluvector, Inc. System and method for training machine learning applications
CN104899872B (zh) * 2015-05-18 2017-11-03 北京大学 基于显式和隐含信息的图像视觉显著度计算方法和装置
US10534810B1 (en) * 2015-05-21 2020-01-14 Google Llc Computerized systems and methods for enriching a knowledge base for search queries
US11537262B1 (en) 2015-07-21 2022-12-27 Monotype Imaging Inc. Using attributes for font recommendations
US9906704B2 (en) 2015-09-17 2018-02-27 Qualcomm Incorporated Managing crowd sourced photography in a wireless network
WO2017145960A1 (ja) * 2016-02-24 2017-08-31 日本電気株式会社 学習装置、学習方法および記録媒体
CN105761269A (zh) * 2016-03-14 2016-07-13 北京大学 基于多尺度区分性子空间的图像显著对象的检测方法
CN105825228B (zh) * 2016-03-14 2019-04-30 百度在线网络技术(北京)有限公司 图像识别方法及装置
US9892326B2 (en) 2016-03-31 2018-02-13 International Business Machines Corporation Object detection in crowded scenes using context-driven label propagation
US11237857B2 (en) * 2016-07-07 2022-02-01 Data Accelerator Ltd Method and system for application virtualization that includes machine learning
US11314565B2 (en) * 2016-07-07 2022-04-26 Data Accelerator Ltd Method and system for application virtualization that includes resource access control
US10929461B2 (en) * 2016-07-25 2021-02-23 Evernote Corporation Automatic detection and transfer of relevant image data to content collections
US10645142B2 (en) 2016-09-20 2020-05-05 Facebook, Inc. Video keyframes display on online social networks
US10026021B2 (en) 2016-09-27 2018-07-17 Facebook, Inc. Training image-recognition systems using a joint embedding model on online social networks
US10083379B2 (en) 2016-09-27 2018-09-25 Facebook, Inc. Training image-recognition systems based on search queries on online social networks
US20180101540A1 (en) * 2016-10-10 2018-04-12 Facebook, Inc. Diversifying Media Search Results on Online Social Networks
EP3306555A1 (en) * 2016-10-10 2018-04-11 Facebook, Inc. Diversifying media search results on online social networks
US11200273B2 (en) 2016-10-16 2021-12-14 Ebay Inc. Parallel prediction of multiple image aspects
US11347374B2 (en) * 2016-11-17 2022-05-31 Meta Platforms, Inc. Systems and methods for managing shared content
US11544579B2 (en) 2016-11-23 2023-01-03 Primal Fusion Inc. System and method for generating training data for machine learning classifier
EP3545425A4 (en) * 2016-11-23 2020-07-15 Primal Fusion Inc. SYSTEM AND METHOD FOR USING A KNOWLEDGE PRESENTATION WITH A CLASSIFIER FOR MACHINE LEARNING
CN106650795B (zh) * 2016-12-01 2020-06-12 携程计算机技术(上海)有限公司 酒店房型图像的排序方法
EP3336800B1 (de) * 2016-12-19 2019-08-28 Siemens Healthcare GmbH Bestimmen einer trainingsfunktion zum generieren von annotierten trainingsbildern
US10803013B2 (en) * 2017-02-10 2020-10-13 Smugmug, Inc. Efficient similarity detection
US11301506B2 (en) * 2017-06-29 2022-04-12 Adobe Inc. Automated digital asset tagging using multiple vocabulary sets
CN107463953B (zh) * 2017-07-21 2019-11-19 上海媒智科技有限公司 在标签含噪情况下基于质量嵌入的图像分类方法及系统
JP7027070B2 (ja) 2017-08-31 2022-03-01 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
US11334750B2 (en) 2017-09-07 2022-05-17 Monotype Imaging Inc. Using attributes for predicting imagery performance
US10909429B2 (en) * 2017-09-27 2021-02-02 Monotype Imaging Inc. Using attributes for identifying imagery for selection
CN107679183B (zh) 2017-09-29 2020-11-06 百度在线网络技术(北京)有限公司 分类器用训练数据获取方法和装置、服务器及存储介质
US11657602B2 (en) 2017-10-30 2023-05-23 Monotype Imaging Inc. Font identification from imagery
KR102074654B1 (ko) * 2017-11-03 2020-02-07 카페24 주식회사 쇼핑몰 웹페이지 저작 방법, 장치 및 시스템
US10140553B1 (en) * 2018-03-08 2018-11-27 Capital One Services, Llc Machine learning artificial intelligence system for identifying vehicles
CN110351180A (zh) * 2018-04-03 2019-10-18 鸿富锦精密电子(天津)有限公司 物联信息管理系统
US10635940B1 (en) * 2018-12-11 2020-04-28 Capital One Services, Llc Systems and methods for updating image recognition models
JP7261022B2 (ja) * 2019-01-30 2023-04-19 キヤノン株式会社 情報処理システム、端末装置及びその制御方法、プログラム、記憶媒体
US11494884B2 (en) 2019-02-21 2022-11-08 Canon U.S.A., Inc. Method and system for evaluating image sharpness
US20220004820A1 (en) * 2019-03-06 2022-01-06 Telepathy Labs, Inc. Method and system for assisting a developer in improving an accuracy of a classifier
WO2021081741A1 (zh) * 2019-10-29 2021-05-06 深圳大学 一种基于多关系社交网络的图像分类方法及系统
US11704716B2 (en) * 2019-11-18 2023-07-18 Meta Platforms, Inc. Identifying objects within an image from a user of an online system matching products identified to the online system by the user
US11354936B1 (en) * 2020-07-15 2022-06-07 Amazon Technologies, Inc. Incremental clustering for face recognition systems
US11184445B2 (en) * 2020-09-27 2021-11-23 Jean-Michel Michel Cloutier System and method of establishing communication between users
CN113822252B (zh) * 2021-11-24 2022-04-22 杭州迪英加科技有限公司 显微镜下病理图像细胞鲁棒检测方法
US20230260275A1 (en) * 2022-02-11 2023-08-17 Whammy, Inc. System and method for identifying objects and/or owners

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090083332A1 (en) * 2007-09-21 2009-03-26 The Penn State Research Foundation Tagging over time: real-world image annotation by lightweight metalearning
JP2009533726A (ja) * 2006-04-07 2009-09-17 イーストマン コダック カンパニー 複数の画像の集合における固有のオブジェクトの識別
JP2009258953A (ja) * 2008-04-16 2009-11-05 Univ Of Electro-Communications 画像処理方法、その方法を実行するプログラム、記憶媒体、撮像機器、画像処理システム
US20110188742A1 (en) * 2010-02-02 2011-08-04 Jie Yu Recommending user image to social network groups
JP2011523137A (ja) * 2008-06-06 2011-08-04 トムソン ライセンシング 画像の類似検索システム及び方法
US8370282B1 (en) * 2009-07-22 2013-02-05 Google Inc. Image quality measures
US8478052B1 (en) * 2009-07-17 2013-07-02 Google Inc. Image classification

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909510A (en) 1997-05-19 1999-06-01 Xerox Corporation Method and apparatus for document classification from degraded images
US7296032B1 (en) * 2001-05-17 2007-11-13 Fotiva, Inc. Digital media organization and access
US7941009B2 (en) 2003-04-08 2011-05-10 The Penn State Research Foundation Real-time computerized annotation of pictures
US9715542B2 (en) * 2005-08-03 2017-07-25 Search Engine Technologies, Llc Systems for and methods of finding relevant documents by analyzing tags
US7949186B2 (en) * 2006-03-15 2011-05-24 Massachusetts Institute Of Technology Pyramid match kernel and related techniques
US9507778B2 (en) * 2006-05-19 2016-11-29 Yahoo! Inc. Summarization of media object collections
US7877384B2 (en) 2007-03-01 2011-01-25 Microsoft Corporation Scoring relevance of a document based on image text
US8880529B2 (en) * 2007-05-15 2014-11-04 Tivo Inc. Hierarchical tags with community-based ratings
US8385971B2 (en) 2008-08-19 2013-02-26 Digimarc Corporation Methods and systems for content processing
US20100271297A1 (en) * 2009-04-27 2010-10-28 Shoei-Lai Chen Non-contact touchpad apparatus and method for operating the same
US8401282B2 (en) 2010-03-26 2013-03-19 Mitsubishi Electric Research Laboratories, Inc. Method for training multi-class classifiers with active selection and binary feedback
US20120106854A1 (en) 2010-10-28 2012-05-03 Feng Tang Event classification of images from fusion of classifier classifications
US9218364B1 (en) * 2011-01-28 2015-12-22 Yahoo! Inc. Monitoring an any-image labeling engine
US9037600B1 (en) * 2011-01-28 2015-05-19 Yahoo! Inc. Any-image labeling engine
US8774515B2 (en) * 2011-04-20 2014-07-08 Xerox Corporation Learning structured prediction models for interactive image labeling
US20130007667A1 (en) * 2011-06-28 2013-01-03 Microsoft Corporation People centric, cross service, content discovery system
US9646226B2 (en) * 2013-04-16 2017-05-09 The Penn State Research Foundation Instance-weighted mixture modeling to enhance training collections for image annotation

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009533726A (ja) * 2006-04-07 2009-09-17 イーストマン コダック カンパニー 複数の画像の集合における固有のオブジェクトの識別
US20090083332A1 (en) * 2007-09-21 2009-03-26 The Penn State Research Foundation Tagging over time: real-world image annotation by lightweight metalearning
JP2009258953A (ja) * 2008-04-16 2009-11-05 Univ Of Electro-Communications 画像処理方法、その方法を実行するプログラム、記憶媒体、撮像機器、画像処理システム
JP2011523137A (ja) * 2008-06-06 2011-08-04 トムソン ライセンシング 画像の類似検索システム及び方法
US8478052B1 (en) * 2009-07-17 2013-07-02 Google Inc. Image classification
US8370282B1 (en) * 2009-07-22 2013-02-05 Google Inc. Image quality measures
US20110188742A1 (en) * 2010-02-02 2011-08-04 Jie Yu Recommending user image to social network groups

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019536148A (ja) * 2016-11-08 2019-12-12 イーベイ インク.Ebay Inc. クラウド支援型クエリシステム
US11386125B2 (en) 2016-11-08 2022-07-12 Ebay Inc. Crowd assisted query system
US11995106B2 (en) 2016-11-08 2024-05-28 Ebay Inc. Crowd assisted query system
JP2019220116A (ja) * 2018-06-22 2019-12-26 日立造船株式会社 情報処理装置、判定方法、および対象物判定プログラム
JP7219023B2 (ja) 2018-06-22 2023-02-07 日立造船株式会社 情報処理装置および対象物判定プログラム
JP2021082319A (ja) * 2021-02-03 2021-05-27 プライマル フュージョン インコーポレイテッド 機械学習分類器とともに知識表現を使用するためのシステム及び方法
JP7102563B2 (ja) 2021-02-03 2022-07-19 プライマル フュージョン インコーポレイテッド 機械学習分類器とともに知識表現を使用するためのシステム及び方法
JP2023028704A (ja) * 2021-08-20 2023-03-03 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
JP7388662B2 (ja) 2021-08-20 2023-11-29 Lineヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム

Also Published As

Publication number Publication date
US10169686B2 (en) 2019-01-01
WO2015020691A1 (en) 2015-02-12
IL243859A0 (en) 2016-04-21
KR102244748B1 (ko) 2021-04-28
CN105612514B (zh) 2020-07-21
CA2920193A1 (en) 2015-02-12
MX2016001687A (es) 2016-09-06
BR112016003926A2 (pt) 2019-11-12
MX367510B (es) 2019-08-26
CN105612514A (zh) 2016-05-25
JP6612229B2 (ja) 2019-11-27
US20190279053A1 (en) 2019-09-12
KR20160040633A (ko) 2016-04-14
US20150036919A1 (en) 2015-02-05
AU2014304803B2 (en) 2019-07-04
AU2014304803A1 (en) 2016-02-25

Similar Documents

Publication Publication Date Title
JP6612229B2 (ja) コンテキストキューを画像に相関付けることによる画像分類のシステム及び方法
US20180012236A1 (en) Systems and methods for analyzing interaction-bait content based on classifier models
US10650133B2 (en) Systems and methods for providing image-based security measures
US10154312B2 (en) Systems and methods for ranking and providing related media content based on signals
US10630632B2 (en) Systems and methods for ranking comments
US10460171B2 (en) Systems and methods for processing media content that depict objects
US20180181832A1 (en) Systems and methods for image description generation
US10552473B2 (en) Systems and methods for processing media content that depict objects
US11709996B2 (en) Suggesting captions for content
EP2835748A1 (en) Systems and methods for image classification by correlating contextual cues with images
US10769199B2 (en) Systems and methods for processing media content that depict objects
US9544384B2 (en) Method and system for pushing associated users in social networking service network
US10360255B2 (en) Systems and methods to determine location of media items
US20180096390A1 (en) Systems and methods for promoting content items
US20190155929A1 (en) Systems and methods for automated query expansion
US20160179964A1 (en) Systems and methods for providing narratives based on selected content
US10733478B2 (en) Systems and methods for processing media content that depict objects
US10419383B2 (en) Systems and methods for ranking comments based on interaction-to-impression ratio
US10270772B2 (en) Systems and methods for providing content to verified entities

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181225

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190325

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190510

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190520

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: 20191001

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191030

R150 Certificate of patent or registration of utility model

Ref document number: 6612229

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250