(57)【特許請求の範囲】
【請求項１】
コンピュータによって実行される方法であって、
データ処理システムが、参照画像のための参照ラベルを取得する段階であって、前記参照ラベルは、前記参照画像が属する第1のトピックを特定するラベルである段階と、
前記データ処理システムが、その間に前記参照画像が提示のために選択されたユーザセッションを識別する段階であって、各ユーザセッションは、画像の選択がセッションセットに関連付けられる期間である段階と、
前記データ処理システムが、前記ユーザセッション中に提示のために選択された、前記参照画像に対する同時選択画像を識別する段階であって、同時選択画像は、前記参照画像の選択の後で選択される画像である段階と、
各同時選択画像について、前記データ処理システムが、前記参照画像に対する前記同時選択画像の選択の頻度および前記参照ラベルから特定された前記参照画像の第1のトピックの情報に基づいて、トピックスコアを生成する段階であって、前記トピックスコアは、前記同時選択画像の前記第1のトピックへの関連性の尺度を表し、前記選択の頻度は、データベースに格納された選択データに基づいて算出される段階と、
前記データ処理システムが、閾値トピックスコアを満たすトピックスコアを有する同時選択画像に、前記第1のトピックに属するものとしてラベル付けする段階とを備える方法。
【請求項２】
前記データ処理システムが、ユーザセッションについて、前記参照画像のための選択の初回を識別する段階と、
前記データ処理システムが、前記ユーザセッション中に選択された同時選択画像のための選択の後続の回を識別する段階と、
前記データ処理システムが、同時選択画像として、前記選択の初回に対する閾値期間内である選択の後続の回を有する画像のみを識別する段階とをさらに備え、前記ユーザセッションはセッション期間を有し、前記閾値期間は前記セッション期間未満である、請求項1に記載の方法。
【請求項３】
前記同時選択画像を識別する段階は、
前記データ処理システムにおいて、前記参照画像および前記同時選択画像を重み付きグラフ内のノードとして表す段階であって、各ノードは他のノードに、前記ノードおよび前記他のノードによって表された前記画像の逐次選択を表す重み付きエッジによって接続される段階を備え、かつ
各同時選択画像のための前記トピックスコアは、前記重み付きエッジに基づいて生成される、請求項1に記載の方法。
【請求項４】
一対のノードを接続する重み付きエッジは、前記一対のノードによって表された画像の逐次選択の数を示す重みを有する、請求項3に記載の方法。
【請求項５】
各重み付きエッジは、ソース画像および宛先画像を示す方向成分を有し、前記ソース画像は、前記宛先画像が提示のために選択される前に提示のために選択された画像である、請求項4に記載の方法。
【請求項６】
重み付きエッジの各方向成分は独立して重み付けされる、請求項5に記載の方法。
【請求項７】
トピックスコアを生成する段階は、
各同時選択画像について、前記参照画像を表すノードを、前記同時選択画像を表すノードに接続する、重み付きエッジを識別する段階と、
前記重み付きエッジの重みに基づいて、前記トピックスコアを生成する段階とを備える、請求項3に記載の方法。
【請求項８】
トピックスコアを生成する段階は、
各同時選択画像について、1つまたは複数の追加のノードを通じて、前記参照画像を表すノードを、前記同時選択画像を表すノードに接続する、2つ以上の重み付きエッジを識別する段階と、
前記重み付きエッジに対応するエッジ重みの関数に基づいて、前記トピックスコアを生成する段階とを備える、請求項3に記載の方法。
【請求項９】
エッジ重みの関数に基づいて前記トピックスコアを生成する段階は、エッジ重みの関数に基づいて前記トピックスコアを生成する段階であって、各エッジ重みは、前記重み付きエッジと前記参照画像を表す前記ノードの間のノードの数に基づいて増減される段階を備える、請求項8に記載の方法。
【請求項１０】
前記トピックはポルノコンテンツを示す、請求項1に記載の方法。
【請求項１１】
前記データ処理システムが、前記第1のトピックとは異なる第2のトピックに属するものとして分類されるクエリに応答して、画像検索結果を受信する段階と、
前記データ処理システムが、前記画像検索結果をフィルタリングして、前記画像が前記第1のトピックに属することを示すラベルを有する画像への参照を除去する段階とをさらに備える、請求項1に記載の方法。
【請求項１２】
前記データ処理システムが、前記第1のトピックとは異なる第2のトピックに属するものとして分類されるクエリに応答して、画像検索結果を受信する段階と、
前記画像検索結果が、前記画像が前記第1のトピックに属することを示すラベルを有する画像への参照を含むとき、前記データ処理システムが、前記画像検索結果を再順序付けする段階とをさらに備える、請求項1に記載の方法。
【請求項１３】
トピックスコアを生成する段階は、
前記同時選択画像のための初期トピックスコアを取得する段階であって、各初期トピックスコアは、前記画像の前記第1のトピックへの初期関連性の尺度である段階と、
前記同時選択画像のための同時選択データを取得する段階であって、前記同時選択データは、前記参照画像または他の同時選択画像の選択に対する前記同時選択画像の選択を特定する段階と、
前記初期トピックスコアおよび前記同時選択データの関数に基づいて、前記同時選択画像のための更新されたトピックスコアを計算する段階と、
停止条件が発生しているかどうかを判定する段階と、
前記停止条件が発生していないとき、前記同時選択データ、および、予め計算された、更新されたトピックスコアに基づいて、追加の更新されたトピックスコアを計算する段階と、
前記停止条件が発生しているとき、前記更新されたトピックスコアに基づいて前記同時選択画像を分類する段階とを備え、かつ
前記ラベル付けする段階は、前記更新されたトピックスコアに基づく、請求項1に記載の方法。
【請求項１４】
参照画像のための参照ラベル、および、複数のユーザセッションのためのユーザセッションデータを格納するデータストアであって、前記参照ラベルは、前記参照画像が属する第1のトピックを特定するラベルであり、前記ユーザセッションデータは、前記複数のユーザセッション中の画像の選択を特定する、データストアと、
前記参照画像に対する同時選択画像を識別し、前記同時選択画像の各々の前記トピックへの関連性の尺度を表すトピックスコアを生成し、かつ、閾値トピックスコアを満たすトピックスコアを有する前記同時選択画像に、前記第1のトピックに属するものとしてラベル付けするように構成された、少なくとも1つのプロセッサを備える、画像分類サブシステムであって、前記同時選択画像は、前記ユーザセッション中に前記参照画像の選択の後で提示のために選択された画像であり、前記トピックスコアは前記同時選択画像の選択の頻度および前記参照ラベルから特定された前記参照画像の第1のトピックの情報に基づき、前記選択の頻度は、データベースに格納された選択データに基づいて算出される、画像分類サブシステムとを備えるシステム。
【請求項１５】
前記画像分類サブシステムはさらに、ユーザセッションについて、前記参照画像のための選択の初回、および、同時選択画像のための選択の後続の回を識別するように構成され、前記同時選択画像は、前記選択の初回に対する閾値期間内である選択の後続の回を有する画像のみである、請求項14に記載のシステム。
【請求項１６】
前記画像分類サブシステムは、重み付きグラフに基づいて同時選択画像を識別するように構成され、前記重み付きグラフにおいて、前記画像分類サブシステムは前記参照画像および前記同時選択画像を前記重み付きグラフ内のノードとして表し、各ノードは重み付きエッジによって他のノードに接続され、前記重み付きエッジは、前記重み付きエッジによって接続された前記ノードによって表された前記画像の逐次選択を表す、請求項14に記載のシステム。
【請求項１７】
前記画像分類サブシステムは、前記重み付きグラフ内のノードによって表された前記同時選択画像のための前記トピックスコアを、前記同時選択画像を表す前記ノードのための前記重み付きエッジに基づいて生成する、請求項16に記載のシステム。
【請求項１８】
一対のノードを接続する各重み付きエッジは、前記一対のノードによって表された画像の逐次選択の数を示す重みを有する、請求項16に記載のシステム。
【請求項１９】
各重み付きエッジは、ソース画像および宛先画像を示す方向成分を有し、前記ソース画像は、前記宛先画像が提示のために選択される前に提示のために選択された画像である、請求項18に記載のシステム。
【請求項２０】
前記トピックはポルノコンテンツを示す、請求項14に記載のシステム。
【請求項２１】
前記画像分類サブシステムはさらに、前記第1のトピックとは異なる第2のトピックに属するものとして識別されたクエリに応答して、画像検索結果を受信し、かつ、前記画像検索結果をフィルタリングして、前記画像が前記第1のトピックに属することを示すラベルを有する画像への参照を除去するように構成される、請求項14に記載のシステム。
【請求項２２】
前記画像分類サブシステムはさらに、前記第1のトピックとは異なる第2のトピックに属するものとして識別されたクエリに応答して、画像検索結果を受信し、かつ、前記第1のトピックに対応するラベルを有する画像が参照される提示位置を調整するように構成される、請求項14に記載のシステム。
【請求項２３】
コンピュータに命令を実行させるためのプログラムを記録したコンピュータ可読記録媒体であって、前記命令は、
参照画像のための参照ラベルを取得するステップであって、前記参照ラベルは、前記参照画像が属する第1のトピックを特定するラベルであるステップと、
データ処理システムにおいて、その間に前記参照画像が提示のために選択されたユーザセッションを識別するステップであって、各ユーザセッションは、画像の選択がセッションセットに関連付けられる期間であるステップと、
前記データ処理システムにおいて、前記ユーザセッション中に提示のために選択された、前記参照画像に対する同時選択画像を識別するステップであって、同時選択画像は、前記参照画像の選択の後で選択される画像であるステップと、
各同時選択画像について、前記データ処理システムにおいて、前記参照画像に対する前記同時選択画像の選択の頻度および前記参照ラベルから特定された前記参照画像の第1のトピックの情報に基づいて、トピックスコアを生成するステップであって、前記トピックスコアは、前記同時選択画像の前記第1のトピックへの関連性の尺度を表し、前記選択の頻度は、データベースに格納された選択データに基づいて算出されるステップと、
閾値トピックスコアを満たすトピックスコアを有する同時選択画像に、前記第1のトピックに属するものとしてラベル付けするステップとを有する、コンピュータ可読記録媒体。
【請求項２４】
トピックスコアを生成する前記ステップは、
前記同時選択画像のための初期トピックスコアを取得するステップであって、各初期トピックスコアは、前記画像の前記第1のトピックへの初期関連性の尺度であるステップと、
前記同時選択画像のための同時選択データを取得するステップであって、前記同時選択データは、前記参照画像または他の同時選択画像の選択に対する前記同時選択画像の選択を特定するステップと、
前記初期トピックスコアおよび前記同時選択データの関数に基づいて、前記同時選択画像のための更新されたトピックスコアを計算するステップと、
停止条件が発生しているかどうかを判定するステップと、
前記停止条件が発生していないとき、前記同時選択データ、および、予め計算された、更新されたトピックスコアに基づいて、追加の更新されたトピックスコアを計算するステップと、
前記停止条件が発生しているとき、前記更新されたトピックスコアに基づいて前記同時選択画像を分類するステップとを含み、かつ
前記ラベル付けするステップは、前記更新されたトピックスコアに基づく、請求項23に記載のコンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、データ処理に関し、より詳細には画像分類に関する。
【背景技術】
【０００２】
ユーザは、検索クエリを検索エンジンに提出することによって、インターネット上で入手可能である画像を探し出すことができる。検索クエリは、ユーザが探し出そうと試みている画像の主題を記述する語を含む、テキストクエリでありうる。検索システムは、その主題に対応する画像を識別し、識別された画像への参照を含む画像検索結果を提供する。画像は、例えば、画像、および/または、それと共に画像が提示されるウェブページ上の画像のそばに現れるテキストに関連付けられる、ラベルに基づいて識別されうる。
【０００３】
識別された画像は、例えば、ウェブページと共に提示される画像でありうる。多数の異なるカテゴリのウェブページが、検索クエリに応答して識別される画像を含む可能性がある。例えば、画像は、多数の異なる個人によって発行されうるウェブログ(「ブログ」)、ソーシャルネットワーキングページおよびニュースグループなど、ウェブページと共に提供される。単一のドメイン(例えば、www.example.com)内に何千ものウェブページが存在する可能性があり、その多くに異なる個々の作者がいる。
【０００４】
多数の異なる作者が、同じドメイン内に位置するウェブページを作成することにより、そのドメインを通じて提供された画像を、共通トピックに属するものとして分類することが困難になりうる。例えば、単一のブログドメイン内で、複数のユーザが、スポーツから政治、育児のアドバイスまでに及ぶトピック、または、性表現が露骨な(例えば、ポルノ)トピックさえも対象とするブログを発行する場合がある。よって、共通ドメインを通じて入手可能な各画像が共通トピックに属するものとして分類される場合、それらの画像は正確に分類されない場合がある。
【０００５】
画像および/または画像のそばに現れるテキストに関連付けられたラベルは、画像の主題を不正確に記述する可能性があり、あるいは、異なるトピックの中で曖昧になる可能性がある。例えば、あるブログ内に現れるベーブ・ルースの画像は、「The Babe」というテキストに関連付けられる場合がある。このテキストはその画像に関連するが、その画像は、ベーブ・ルース、ベーブ・ルースを演じる俳優、「Babe」というタイトルの映画で主演した豚、または、性表現が露骨な画像でさえありうる可能性がある。
【０００６】
ユーザクエリのトピックへの関連性がより低い画像を提供することは、画像検索結果の品質を低下させうる。これは特に、性表現が露骨な内容(例えば、ポルノ)を含む画像が、性表現が露骨な内容を対象としないクエリに応答した検索結果で参照されるときに、当てはまる。例えば、性表現が露骨な画像を含む、「Babe Movie」のための検索クエリに応答した検索結果は、ベーブ・ルースの画像を検索中であるユーザに対して、検索結果の品質をかなり下げる可能性がある。
【０００７】
ユーザクエリに関連しない画像をフィルタリングするか、あるいはそうでない場合は抑制することができるように、画像が正確に分類されるとき、画像検索結果の品質を向上させることができる。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
画像分類システムは、予め選択された画像が属するトピックに基づいて、画像を分類かつラベル付けするために、画像選択データを解析する。これらのラベルは次いで、画像検索結果をフィルタリングして、検索クエリが対象とするトピック以外のトピックへの関連性がより高い画像への参照を除去するために、使用されうる。加えて、ラベルは、あるトピック(例えば、性表現が露骨な内容)を対象とするすべての画像を、提示されたこれらの画像への参照を有することをユーザが選ばない限り、フィルタリングするために使用されうる。ラベルはまた、画像が属するトピックに基づいて、それらの画像が画像検索結果内で参照される提示位置を調整するためにも、使用されうる。
【課題を解決するための手段】
【０００９】
概して、本明細書に記載された主題の一態様は、方法において実装することができ、これらの方法は、参照画像のための参照ラベルを取得する動作であって、参照ラベルは、参照画像が属する第1のトピックを特定するラベルである動作と、データ処理システムにおいて、その間に参照画像が提示のために選択されたユーザセッションを識別する動作であって、各ユーザセッションは、画像の選択がセッションセットに関連付けられる期間である動作と、データ処理システムにおいて、ユーザセッション中に提示のために選択された、参照画像に対する同時選択画像を識別する動作であって、同時選択画像は、参照画像の選択の後で選択される画像である動作と、各同時選択画像について、データ処理システムにおいて、参照画像に対する同時選択画像の選択の頻度に基づいて、トピックスコアを生成する動作であって、トピックスコアは、同時選択画像の、第1のトピックへの関連性の尺度を表す動作と、閾値トピックスコアを満たすトピックスコアを有する同時選択画像に、第1のトピックに属するものとしてラベル付けする動作とを含む。この態様のこの実施形態および他の実施形態は、対応するシステム、装置、およびコンピュータプログラム製品を含む。
【００１０】
これらおよび他の実施形態は、以下の特徴のうち1つまたは複数を任意選択で含みうる。これらの方法は、ユーザセッションについて、参照画像のための選択の初回を識別する動作と、ユーザセッション中に選択された同時選択画像のための選択の後続の回を識別する動作と、同時選択画像として、選択の初回に対する閾値期間内である選択の後続の回を有する画像のみを識別する動作とをさらに含むことができ、ユーザセッションはセッション期間を有し、閾値期間はセッション期間未満である。
【００１１】
トピックスコアの生成は、同時選択画像のための初期トピックスコアを取得する段階であって、各初期トピックスコアは、画像の、第1のトピックへの初期関連性の尺度である段階と、同時選択画像のための同時選択データを取得する段階であって、同時選択データは、参照画像または他の同時選択画像の選択に対する同時選択画像の選択を特定する段階と、初期トピックスコアおよび同時選択データの関数に基づいて、同時選択画像のための更新されたトピックスコアを計算する段階と、停止条件が発生しているかどうかを判定する段階と、停止条件が発生していないとき、同時選択データ、および、予め計算された、更新されたトピックスコアに基づいて、追加の更新されたトピックスコアを計算する段階と、停止条件が発生しているとき、更新されたトピックスコアに基づいて同時選択画像を分類する段階とによって行うことができ、ラベル付けは、更新されたトピックスコアに基づく。
【００１２】
本発明の特定の実施形態は、以下の利点のうち1つまたは複数を実現するように実装されうる。分類されていない画像が属するトピックを、参照トピックのための参照画像に対する同時選択データに基づいて、参照トピックに属するものとして識別することができる。参照トピックに属するものとして識別される画像を、画像検索結果からフィルタリングすることができる。参照トピックに属する画像を、参照トピックに属するものとして識別されない画像に対する画像検索結果内で、より高いかあるいはより低い提示位置での提示のために選択することができる。参照トピックのための参照画像に対する同時選択データに基づいて、参照トピックに対応するラベルにより、画像にラベル付けすることができる。ポルノである可能性の高い画像の選択の後に続く、画像の後続の選択に基づいて、画像をポルノ画像として識別し、ラベル付けすることができる。画像のコーパス内の各画像を、参照トピックのための参照画像の選択に対するその選択に基づいて、類別することができる。
【００１３】
本発明の1つまたは複数の実施形態の詳細を、添付の図面および以下の説明において述べる。本発明の他の特徴、態様および利点は、本明細書、図面および特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【００１４】
【図１】検索システムが検索サービスを提供する環境例のブロック図である。
【図２】画像をトピックに分類するための処理例のフローチャートである。
【図３】ユーザセッションデータが生成され、インデックス付けされる環境例である。
【図４】選択データを使用して生成された重み付きグラフの例示である。
【図５】重み付きグラフを生成するための処理例のフローチャートである。
【図６Ａ】一組の画像のためのトピックスコアが格納かつ追跡されうる、テーブル例である。
【図６Ｂ】同時選択マトリックスを定義する同時選択データが格納されうる、テーブル例である。
【図７Ａ】反復トピックスコア生成処理の異なる時点の重み付きグラフ例である。
【図７Ｂ】反復トピックスコア生成処理の異なる時点の重み付きグラフ例である。
【図７Ｃ】反復トピックスコア生成処理の異なる時点の重み付きグラフ例である。
【図７Ｄ】反復トピックスコア生成処理の異なる時点の重み付きグラフ例である。
【図８】トピックスコアを反復して生成するための処理例である。
【発明を実施するための形態】
【００１５】
様々な図面における同様の参照番号および指定は、同様の要素を示す。
【００１６】
画像分類システムは、予め選択された画像が属するトピックに基づいて、画像を分類かつラベル付けするために、画像選択データを解析する。これらのラベルは次いで、画像検索結果をフィルタリングして、検索クエリが対象とするトピック以外のトピックへの関連性がより高い画像への参照を除去するために、使用されうる。加えて、ラベルは、あるトピック(例えば、性表現が露骨な内容)を対象とするすべての画像を、提示されたこれらの画像への参照を有することをユーザが選ばない限り、フィルタリングするために使用されうる。
【００１７】
検索サービスが提供されるオンライン環境を、以下で説明する。選択データに基づいて画像にラベル付けする画像分類システムを、このオンライン環境を検索システムのサブシステムとして参照して、説明する。しかし、画像分類サブシステムは、画像検索システムとは関係なく実装されうる。
【００１８】
図1は、検索システム110が検索サービスを提供する環境例100のブロック図である。この環境例100は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、インターネット、またはそれらの組み合わせなど、ネットワークを含み、ウェブサイト104、ユーザデバイス106、および検索システム110を接続する。オンライン環境100は、多数のウェブサイト104およびユーザデバイス106を含みうる。
【００１９】
ウェブサイト104は、ドメイン名に関連付けられ、かつ、1つまたは複数のサーバによってホストされた、1つまたは複数のリソースである。ウェブサイトの一例は、テキスト、画像、マルチメディアコンテンツ、および、例えば、スクリプトなど、プログラミング要素を含みうる、ハイパーテキストマークアップ言語(HTML)でフォーマットされたウェブページの集合である。各ウェブサイト104は、例えば、そのウェブサイトを管理かつ/または所有するエンティティなど、発行者によって維持される。
【００２０】
リソースは、ネットワーク102を通じてウェブサイト104によって提供されうる、かつ、リソースアドレスに関連付けられる、任意のデータである。リソースには、ほんの少数の例を挙げると、HTMLページ、ワープロ文書、およびポータブルドキュメントフォーマット(PDF)文書、画像、ビデオ、およびフィードソースが含まれる。これらのリソースは、例えば、語、句、画像および音声など、コンテンツを含むことができ、埋め込まれた情報(メタ情報およびハイパーリンクなど)、および/または、埋め込まれた命令(JavaScript（登録商標）スクリプトなど)を含みうる。
【００２１】
各リソースは、一意に識別されうるアドレス指定可能な記憶場所を有する。アドレス指定可能な場所は、ユニバーサルリソースロケータ(URL)など、リソースロケータによってアドレス指定される。
【００２２】
ユーザデバイス106は、ユーザの制御下にあり、かつ、ネットワーク102を介してリソースを要求かつ受信可能である、電子デバイスである。ユーザデバイス106の例には、パーソナルコンピュータ、モバイル通信デバイス、および、ネットワーク102を介してデータを送受信することができる他のデバイスが含まれる。ユーザデバイス106は典型的には、ネットワーク102を介したデータの送受信を容易にするために、ウェブブラウザなど、ユーザアプリケーションを含む。
【００２３】
これらのリソースの検索を容易にするため、検索システム110は、発行者によってウェブページ104上で提供されたリソースをクローリングかつインデックス付けすることによって、リソースを識別する。リソースについてのデータは、そのデータが対応するリソースに基づいてインデックス付けされうる。インデックス付けされ、かつ任意選択でキャッシュされたリソースのコピーは、インデックス付きキャッシュ112に格納される。
【００２４】
ユーザデバイス106は、検索クエリ109を検索システム110に提出する。それに応答して、検索システム110は、インデックス付きキャッシュ112にアクセスして、検索クエリ109に関連するリソースを識別する。検索システム110は、検索結果111の形式でリソースを識別し、検索結果ページ内で検索結果111をユーザデバイス106へ返す。検索結果111は、特定の検索クエリに応答するリソースを識別する検索システム110によって生成されたデータであり、そのリソースへのリンクを含む。検索結果111の一例は、ウェブページのタイトル、そのウェブページから抽出されたテキストの断片または画像の一部、および、そのウェブページのURLを含みうる。
【００２５】
テキストコンテンツの検索では、検索結果は、情報検索(「IR」)スコア、および、任意選択で、他のリソースに対する各リソースの個別のランキング(「ページランク」スコア)など、検索結果によって識別されたリソースに関連するスコアに基づいてランク付けされる。いくつかの実装では、IRスコアは、検索クエリ109およびリソースに対応する特徴ベクトルのドット積から計算され、検索結果のランキングは、IRスコアおよびページ品質スコアの組み合わせである関連性スコアに基づく。検索結果111は、これらの関連性スコアに従って順序付けされ、この順序に従ってユーザデバイスに提供される。
【００２６】
画像を対象とし、入力としてテキストクエリを使用する検索では、検索システム110は、リソースの関連性スコアを、リソース内に埋め込まれた画像の関連性フィードバックスコアと結合させることができる。関連性フィードバックスコアの一例は、画像が検索結果内で参照されるとき、その画像の選択率から導出されたスコアである。これらの結合されたスコアは次いで、リソース内に埋め込まれた画像を対象とする検索結果を提示するために使用される。
【００２７】
ユーザデバイス106は、例えば、1つまたは複数のウェブページの形式で検索結果ページを受信し、それらのページをユーザへの提示用にレンダリングする。ユーザがユーザデバイス106で検索結果内のリンクを選択することに応答して、ユーザデバイス106は、そのリンクによって識別されたリソースを要求する。そのリソースをホストするウェブサイト104は、そのリソースの要求をユーザデバイス106から受信し、そのリソースを要求側のユーザデバイス106に提供する。
【００２８】
ユーザセッション中に提出された検索クエリ109は、履歴データストア114など、データストアに格納される。ユーザセッション中に提供された検索結果に応答して取られた動作を特定する選択データもまた、履歴データストア114など、データストアに格納される。これらの動作は、検索結果が選択されたかどうか、および/または、その選択に関連付けられた「滞留時間」(すなわち、その選択から後続の選択の間の期間)を含みうる。履歴データストア114に格納されたデータは、ユーザセッション中に提出された検索クエリ109を、検索結果111で識別されたリソース、および、例えば、ユーザセッション中に提示のために選択されたリソースの順序付きリストなど、ユーザによって取られた動作に、マップするために使用されうる。
【００２９】
ユーザセッションは、リソースに対して取られた動作を特定するデータが共通セッション識別子に関連付けられる期間である。ユーザセッションの期間は、時間、取られた動作の数、または、ある他のユーザ動作の描写により測定されうる。例えば、ユーザセッションは、1分、1時間、1日、または任意の他の期間に渡る、リソースに対するユーザ動作を含みうる。同様に、ユーザセッションは、閾値数のリソースのユーザ選択を含みうる。
【００３０】
各ユーザセッションを、一意のセッション識別子に関連付けることができる。一意のセッション識別子は、例えば、ユーザデバイス識別子、ユーザセッションのための時間インジケータ、および、ユーザセッションのコンテキストを示す他のデータ(例えば、ユーザセッションが生じる元の地理的領域)のうち、1つまたは複数に基づいて生成されうる。ユーザデバイス識別子は、例えば、ユーザセッションが対応するユーザデバイス106に関連付けられる、匿名にされたクッキー(すなわち、ユーザセッションのための識別子としての機能を果たすテキストの匿名にされた文字列)など、匿名にされた識別子でありうる。よって、ユーザセッション中に発生する動作を、その動作が生じた元の特定のユーザデバイス106から切り離すことができる。
【００３１】
画像の選択など、特定のユーザセッション中に発生する動作は、同じ一意のセッション識別子に関連付けられる。加えて、特定のユーザセッション中に発生する各動作を、その動作が発生した時間を示す追加の時間データに関連付けることができる。この時間は、その動作が行われたグリニッジ標準時、またはユーザセッションの開始に対する時間、または別のユーザ動作に対する時間など、絶対時間でありうる。
【００３２】
各ユーザセッション中に発生した動作を特定するユーザセッションデータは、履歴データ114など、データストアに格納されうる。ユーザセッションデータは、特定のユーザセッション中に逐次選択された画像を識別し、かつ、それらの逐次選択に基づいて共通トピックに属する画像を識別するために、使用されうる。
【００３３】
検索システム110は、画像分類サブシステム120を含む。いくつかの実装では、画像分類サブシステム120は、ユーザセッションデータに基づいて、画像をトピックに分類するように構成された、1つまたは複数のプロセッサを含む。画像分類サブシステム120は、ユーザセッションデータを解析して、参照画像の選択の後で選択された画像を識別する。参照画像は、既知のトピックに事前に分類される画像であり、例えば、参照画像が属するトピックを特定するラベルを有する画像である。特定のユーザセッション中に参照画像の選択の後で選択される画像を、その参照画像に対する同時選択画像と称する。
【００３４】
特定のユーザセッション中にユーザによって選択された画像は、一般に同じトピックに属する可能性がより高い。したがって、ある参照画像に対する同時選択画像は、その参照画像に対する同時選択画像ではない画像よりも、その参照画像と同じトピックに属する可能性が高い。例えば、ポルノ参照画像に対する同時選択画像である画像は、ポルノ画像に対する同時選択画像ではない画像よりも、ポルノ画像である可能性が高い。同様に、非ポルノ参照画像に対して同時に選択される画像は、非ポルノ画像である可能性がより高い。よって、1つの参照画像または一組の参照画像に対して頻繁に同時選択される画像である画像を、高い信頼度で、その参照画像と同じトピックに属するものとして分類することができる。
【００３５】
いくつかの実装では、画像分類サブシステム120は、同時選択画像が参照画像と同じトピックに属する可能性を表す、トピックスコアを生成する。同時選択画像のためのトピックスコアは、例えば、その画像が参照画像と共に同時に選択される頻度、および、参照画像の選択に対するその画像の同時選択の近さ(例えば、それらの選択の間の時間または動作)に基づいて、生成されうる。トピックスコアを生成する方法を、それぞれ図2および図6〜7を参照して説明する。
【００３６】
閾値トピックスコアを有する同時選択画像は、参照画像と同じトピックに属するものとして識別される。閾値トピックスコアは、例えば、絶対トピックスコア、または、他の閾値の中のトピックスコアの上位Nパーセント(例えば、上位M個のトピックスコアを有する画像)として指定されうる。
【００３７】
画像分類サブシステム120は、参照画像と同じトピックに属するものとして識別される同時選択画像に、そのトピックに対応するテキストデータでラベル付けすることができる。別法として、同時選択画像がそのトピックに属することを示すデータビットによって表されたトピックフラグを設定し、インデックス付きキャッシュ112内の同時選択画像に関連付けられた記憶場所に格納することができる。さらに、同時選択画像を、そのトピックに対する新しい参照画像として識別し、新しい参照画像の選択の後の他の画像の選択が、その他の画像もまたそのトピックに属するという指示となるようにすることができる。この分類処理は、閾値数の画像、または、画像のすべてが分類されるまで、画像のコーパス中に伝搬可能である。
【００３８】
いくつかの実装では、検索クエリ109に応答した画像検索結果111を、画像分類サブシステム120による分類に基づいて、提示のためにフィルタリングあるいは再順序付けすることができる。例えば、ポルノ画像として識別される画像を識別する分類データ(例えば、ラベルまたはトピックフラグ)を、検索システム110が使用可能にすることができる。検索システム110は、分類データを使用して、検索クエリ109に応答した画像検索結果を解析し、その画像検索結果によって参照される画像のいずれかがポルノ画像であるかどうかを判定することができる。ポルノ画像への参照を除去するか、あるいは、検索結果のより目立たない位置で提示して、検索結果の品質を高めることができる。そのような修正は、ユーザの選択次第でありうる。
【００３９】
同様に、検索クエリ109に対して生成される画像検索結果は、ラベルに基づいて、画像検索結果内で参照するための画像を除外あるいは選択することができる。例えば、検索システム110は、インデックス付きキャッシュ112内の画像に関連付けられた記憶場所に格納されたラベルデータを使用して、検索クエリ109に関連する画像を取得することができる。検索クエリ109への関連性がより高いラベルに関連付けられる画像を、検索クエリ109への関連性がより低い画像に関連付けられる画像よりも、検索クエリ109への関連性が高いものとして識別することができる。
【００４０】
例えば、画像分類サブシステム120がベーブ・ルースの画像に、「野球」というテキストデータでラベル付けした場合、ベーブ・ルースの画像は、「豚の映画」のための検索クエリ109よりも、「野球」のための検索クエリ109への関連性が高くなる。よって、ベーブ・ルースの画像への参照は、「野球」に対する画像検索結果内でより上位に現れる可能性があり、検索クエリ「豚の映画」に対する画像検索結果内には現れない場合がある。
【００４１】
図2は、画像をトピックに分類するための処理例200のフローチャートである。処理200は、例えば、図1の画像分類サブシステム120によって実装されうる。
【００４２】
参照ラベルが、参照画像について取得される(202)。いくつかの実装では、参照ラベルは、参照画像が属する参照トピックを特定するラベルである。参照ラベルは、例えば、参照トピックを示すテキストラベルまたはトピックフラグでありうる。例えば、参照トピックに対応する参照ラベルは、参照トピックに対応するデータビットが特定の2進値に設定されることによって、表されてもよい。別法として、参照ラベルは、参照ラベルに対応するテキストデータでありうる。例えば、ポルノ画像に、「性表現が露骨」または「ポルノ」というテキストでラベル付けすることができる。
【００４３】
いくつかの実装では、評価者である人がポルノ画像を識別し、そのポルノ画像に、その画像をポルノ画像として識別する参照ラベルでラベル付けすることができる。他の実装では、ポルノ画像を機械によって識別し、それに応じて参照ラベルでラベル付けすることができる。さらに、参照ラベルの正確さを評価者によって検証することができる。
【００４４】
参照ラベルは、画像に対応するラベルを格納するデータストアから取得するか、あるいは、画像に関連付けられたデータに基づいて生成することができる。画像の視覚特徴がポルノ画像を示すかどうかを判定するための画像処理技術、および/または、画像に関連付けられたテキストがポルノ画像を示すかどうかを判定するためのテキスト解析を使用して、画像のためのラベルを生成することができる。
【００４５】
参照画像のための参照ラベルを、例えば、画像処理技術に基づいて生成することができる。いくつかの実装では、画像の視覚特徴(すなわち、色および/またはテクスチャ)は、参照ラベルで予めラベル付けされているか、あるいはそうでない場合は、(例えば、ポルノ画像として識別される)参照ラベルによって表されたトピックに属するように識別されている画像の視覚特徴と、比較されうる。例えば、ポルノ画像を識別する1つの方法は、「スキンピクセル」(すなわち、肌の色合いに対応する色値を有するピクセル)である、画像のためのピクセルの部分(例えば、数または割合)を識別することである。そのピクセルの部分が閾値を上回るとき、その画像をポルノ画像として識別し、ポルノトピックに対応する参照ラベルでラベル付けすることができる。
【００４６】
参照ラベルはまた、例えば、それと共に参照画像が提示されるウェブページ上で参照画像のそばに位置するテキストデータに基づいて、生成されてもよい。例えば、参照画像の閾値数のピクセル内で現れるテキストを解析して、参照画像に関連する可能性のあるトピックを識別することができる。参照ラベルはまた、参照画像に関連付けられる他のテキストに基づいて生成されてもよい。例えば、参照ラベルは、その参照画像のためのファイル名に含まれるテキスト、画像へのリンクのアンカーテキスト、または、参照画像に明示的に関連付けられるテキストに基づいて生成されうる。
【００４７】
テキストを、発行者によって参照画像に明示的に関連付けて、特定のトピックのための検索クエリに関連するものとして画像を識別することを容易にすることができる。例えば、発行者は、野球選手の画像により「野球」というテキストを特定して、「野球」という用語を含む検索クエリに応答してその画像が識別される可能性を増すことができる。
【００４８】
いくつかの実装では、参照画像のための参照ラベルが、参照画像の内容を正確に記述する閾値可能性を有することが必要とされる。画像のためのラベルの正確さを、例えば、ラベルフィードバックに基づいて決定することができる。ラベルフィードバックは、画像のための参照ラベルを特定するか、あるいは、ラベルと参照画像の間の関連性の尺度を提供する、ユーザから取得されたデータである。
【００４９】
ラベルフィードバックは、画像にラベル付けするか、あるいは、画像のための既存のラベルを確認するように要求された、ユーザから受信されうる。別法として、ラベルフィードバックは、画像を提供され、かつ、画像が最も関連性のある、および/または、最も関連性のないトピックを選択するように要求される、匿名ユーザから受信されうる。例えば、ユーザには、1つの画像およびM個のトピックのリストが提供されうる。ユーザは、M個のトピックのうち、その画像に最も関連性があるか、あるいは、その画像の内容を最も正確に記述するものを選択することができる。その画像の内容に最も関連性のあるトピックのユーザ選択を集めて、その画像が属するトピックを決定することができる。例えば、ユーザのうち閾値割合が、その画像に最も関連性のあるものとして特定のトピックを選択した場合、その特定のトピックは、その画像が属するトピックとして選択されうる。
【００５０】
また、ラベルフィードバックを解析して、参照画像のための既存のラベルが正確である可能性を決定することもできる。画像のための既存のラベルが正確である可能性は、既存のラベルを画像のための正確なラベルとして識別するユーザフィードバックの部分に基づいてもよい。例えば、ユーザフィードバックのうち閾値割合が、既存のラベルが画像のための正確なラベルであることを示す場合、既存のラベルは、参照画像のための参照ラベルとして識別されうる。さらに、参照画像は、参照ラベルによって特定されたトピックに属するものとして識別されうる。
【００５１】
いくつかの実装では、参照画像によって特定されたトピックに属するものとして画像を識別するユーザフィードバックの部分は、トピックに対する参照画像の強度の尺度として使用されうる。例えば、ラベルが正確である可能性は、画像が、ラベルによって特定されたトピックに属する参照画像である確率として、使用されうる。画像が参照画像である可能性は、さらに、ラベルによって特定されたトピックのための参照画像としての画像の強度を識別する重みとして使用されうる。図4を参照して後述するように、参照画像としての画像の強度は、他の画像のためのトピックスコアを生成するとき、使用されうる。
【００５２】
その間に参照画像が提示のために選択されたユーザセッションが、識別される(204)。その間に画像が提示のために選択されたユーザセッションは、参照画像のための選択データに関連付けられる一意のセッション識別子を識別することによって、識別されうる。例えば、図1の履歴データ114に格納された選択データが、参照画像に対して取得されうる。さらに、選択データに関連付けられた一意のセッション識別子が解析されて、その間に参照画像が提示のために選択されたユーザセッションが識別されうる。ユーザセッションのための選択データの生成を、図3を参照してより詳細に説明する。
【００５３】
ユーザセッション中に提示のために選択された、参照画像に対する同時選択画像が識別される(206)。いくつかの実装では、同時選択画像は、ユーザセッションのための一意のセッション識別子に関連付けられる画像のための選択データに基づいて、識別されうる。例えば、図1の履歴データ114内で、参照画像のための一意のセッション識別子に関連付けられる選択データが取得されうる。選択データが解析されて、参照画像と共に同時選択された画像が識別される。例えば、ある画像のための選択データに含まれた時間データが解析されて、その画像が参照画像の選択の前に提示のために選択されたか、参照画像の選択の後で提示のために選択されたかが判定されうる。参照画像の選択の後で提示のために選択された画像は、同時選択画像として識別される。
【００５４】
参照画像が別のユーザセッション中に選択されたかどうかの判定が行われる(208)。この判定は、例えば、参照画像のための選択データが別の一意のセッション識別子に関連付けられるかどうかを判定することによって行うことができる。参照画像のための選択データが別の一意のセッション識別子に関連付けられるとき、参照画像は、別のユーザセッション中に選択されるものとして識別されうる。参照画像が別のユーザセッション中に選択された場合、そのユーザセッション中に提示のために選択された、参照画像に対する同時選択画像が識別される(206)。
【００５５】
参照画像が別のユーザセッション中に選択されなかったとき、あるいは、すべての追加のユーザセッションが識別された後、参照画像の選択に対する同時選択画像の選択に基づいて、各同時選択画像について、トピックスコアが生成される(210)。いくつかの実装では、トピックスコアは、同時選択画像の、トピックへの関連性の尺度である。参照画像の選択の後での同時選択画像の各選択は、同時選択画像が参照画像に関連し、かつ、したがって参照画像と同じトピックに属する可能性を増す。例えば、別の同時選択画像よりも、参照画像の選択の後に続いて頻繁に選択される同時選択画像は、より少ない頻度で選択された同時選択画像よりも、参照画像と同じトピックへの関連性が高い可能性がある。
【００５６】
同時選択画像が参照画像に関連する可能性はまた、同時選択画像の選択に関連付けられた滞留時間に基づいてもよい。例えば、別の同時選択画像より長い滞留時間を有する同時選択画像は、参照画像と同じトピックに関連する可能性がより高く、その理由は、ユーザがより長い滞留時間でその同時選択画像を見ながら、より多くの時間を費やしたからである。
【００５７】
同時選択画像が参照画像に関連する可能性はまた、参照画像の選択に対する、同時選択画像の選択の近さに基づいてもよい。選択の近さは、時間、ユーザ動作の数、または、任意の他のユーザセッションの描写を単位にして測定されうる。
【００５８】
例えば、参照画像の選択の後に続いて選択された最初の画像である同時選択画像は、参照画像の選択の後に続いて選択された4番目の画像である別の同時選択画像よりも、参照画像と同じトピックに関連する可能性が高い。したがって、参照画像の選択の後に続いて最初に選択された同時選択画像は、後に選択された同時選択画像よりも、参照画像と同じトピックに属する可能性が高い。
【００５９】
いくつかの実装では、画像は、同時選択画像として識別されるために、参照画像の選択に対して閾値期間内に選択されなければならない。例えば、ユーザセッションの持続時間が、続いて選択された画像が同時選択画像として識別される期間よりも長いとき、閾値期間を使用して、ある参照画像の選択の後に続いて選択された画像がその参照画像に対する同時選択画像であるかどうかを判定することができる。
【００６０】
いくつかの実装では、同時選択画像のためのトピックスコアは、参照画像の選択に対する同時選択画像の選択の頻度および/または近さの関数の結果となりうる。例えば、トピックスコアは、参照画像の選択の後に続く同時選択画像のための全部の選択の和となりうる。同様に、トピックスコアは、それに対して画像が同時に選択される参照画像の数に対応してもよい。例えば、10個の参照画像に対する同時選択画像である画像は、「10」のトピックスコアを有することができるが、5個の参照画像に対する同時選択画像である画像は、「5」のトピックスコアを有することができる。
【００６１】
同時選択画像の各選択は、参照画像の選択に対する選択の近さを示す係数によって重み付けされうる。例えば、各選択は係数1/(選択番号)によって重み付けされ、参照画像の選択の直後の同時選択画像の選択が1の重み(すなわち、1/1)を有するようにされてもよい。同様に、参照画像の選択の後に続く2番目および3番目の同時選択画像は、1/2および1/3の重みをそれぞれ有するようになる。上記の重み係数は、例のために提供される。重み係数は、参照画像の選択に対する同時選択画像の選択の近さの任意の比率または関数であってもよい。
【００６２】
いくつかの実装では、同時選択画像のためのトピックスコアの生成は、重み付きグラフを使用して、参照画像の選択に対する同時選択画像の選択をマップすることによって、容易にすることができる。参照画像および同時選択画像は、重み付きグラフ内のノードによって表され、同時選択画像の逐次選択を表すエッジがこれらのノードを接続する。重み付きグラフの生成を、図4〜5を参照してより詳細に説明する。
【００６３】
閾値トピックスコアを満たすトピックスコアを有する同時選択画像が、ラベル付けされる(212)。いくつかの実装では、トピックスコアが閾値トピックスコアを満たすか、あるいは上回るとき、閾値トピックスコアが満たされる。閾値トピックスコアは、例えば、絶対トピックスコア、または、他の閾値の中のトピックスコアの上位Nパーセント(例えば、上位M個のトピックスコアを有する画像)として指定されうる。
【００６４】
いくつかの実装では、同時選択画像は、同時選択画像を参照画像と同じトピックに属するものとして識別するように、ラベル付けされる。例えば、参照画像のための参照ラベルに一致するテキストデータを、同時選択画像に関連付けることができる。別法として、同時選択画像のためのトピックフラグを、同時選択画像を参照画像と同じトピックに属するものとして識別するように、設定することができる。ラベルは、同時選択画像に関連付けられた記憶場所に格納され、検索システムなど、他のシステムまたはサブシステムによって使用可能にされてもよい。
【００６５】
図3は、ユーザセッションデータが生成され、インデックス付けされる環境例300である。画像分類サブシステム120および検索システム110は、図3において直接通信するように表されるが、画像分類サブシステム120および検索システム110は、ネットワーク102を介して通信するように実装されてもよい。
【００６６】
ユーザセッションは一般に、ユーザデバイス106によって開始される。例えば、ユーザデバイス106は、ネットワーク102を介して、画像検索クエリ、または、検索結果のための別の要求を提出することができる。この要求は、一意のセッション識別子に関連付けられてもよく、例えば、検索システム110によって処理されてもよい。検索システム110は、ユーザデバイス106に、検索クエリに応答した画像検索結果302を提供する。画像検索結果302は、検索システム110によって検索クエリに関連するものとして識別された画像への参照(例えば、サムネイル)である、結果画像302-1〜302-Nを含む。
【００６７】
検索クエリを識別するユーザセッションデータ、および、画像検索結果によって参照された画像は、そのユーザセッションのための一意のセッション識別子に関連付けられ、履歴データ114に格納される。ユーザセッションデータは、ユーザセッションが開始された時間(例えば、検索クエリが受信された時間)、および/または、検索結果111がユーザデバイス106に提供された時間を示す、時間データを含むことができる。
【００６８】
ユーザデバイス106のユーザは、画像検索結果302から、結果画像302-1〜302-Nのうち1つまたは複数を選択することができる。結果画像302-1〜302-Nの各選択は、選択された結果画像によって特定されるリソース位置のための要求を生成する。例えば、結果画像302-1の選択は、結果画像302-1によって参照された画像がそれと共に提示されるウェブページのための要求を生成することができる。そして、そのウェブページは、提示のためにユーザデバイス106に提供されうる。
【００６９】
結果画像302-1〜302-Nの各選択は、選択データ304として、ネットワークを通じて画像検索システム110に提供される。選択データ304は、それらの選択に対応するユーザセッションを識別する、一意のセッション識別子(例えば、ID1、ID2、...、ID3)を特定するデータを含む。選択データ304はまた、例えば、画像結果302-1〜302-Nの選択に基づいて、提示のために選択された画像(例えば、IS11、IS12、...、IS1N)を識別するデータをも含む。選択データ304はさらに、いつ画像の各々が提示のために選択されたかを特定する時間データを含むことができる。
【００７０】
選択データ304は、検索システム110によってネットワーク102を介して取得され、一意のセッション識別子に関連付けられる履歴データ114の記憶場所に格納される。選択データ304は、画像を要求するユーザデバイス106毎に、かつ、各ユーザセッションの持続時間に渡って取得されうる。よって、複数のユーザセッション中にユーザデバイス106によって選択される画像毎の選択データは、履歴データ114からアクセス可能である。
【００７１】
いくつかの実装では、画像分類サブシステム120は、選択データを使用して、重み付きグラフ400を構築し、参照画像の選択に対する同時選択画像の集積された選択をマップする。さらに、重み付きグラフ400は、同時選択画像を分類するために使用されうる。
【００７２】
図4は、選択データを使用して生成された重み付きグラフ400の例示である。いくつかの実装では、重み付きグラフ400は画像分類サブシステム120によって生成される。例えば、画像分類サブシステム120は、複数のユーザセッションに渡る参照画像の選択、および、その参照画像に対する同時選択画像の選択を特定する、選択データを履歴データ114から取得することができる。画像分類サブシステム120は、参照画像および同時選択画像を表す、重み付きグラフ400内のノードを定義する。さらに、画像分類サブシステム120は、選択データに基づいて、続いて選択されたノードを表すノード間のエッジ重みを生成し、増分する。重み付きグラフ400が生成された後、それを使用して、同時選択画像を表すノードに、他の同時選択ノードに、かつ、参照画像に接続された重み付きエッジに基づいて、同時選択画像を分類することができる。
【００７３】
重み付きグラフ400は、それに対する同時選択画像が識別中となっている参照画像を表す参照ノード402を含む。いくつかの実装では、参照ノード402は、例えば、画像がポルノトピックに属するものとして識別されるため、ポルノ画像として識別される画像を表す。参照画像が属するトピックは、例えば、図2を参照して上述したように、参照画像に関連付けられる参照ラベルまたは別のトピックインジケータに基づいて識別されうる。
【００７４】
重み付きグラフ400は、追加の参照画像460および480を含みうる。追加の参照画像460および480が識別され、重み付きグラフに含まれるとき、同時選択画像が参照画像402、460および480の各々に対して識別され、同時選択画像へのエッジが、参照画像の各々に対する同時選択画像の選択に基づいて重み付けされる。追加の参照画像460および480は、同様に参照トピックに属するものとして識別される画像(例えば、ポルノ画像)、または、参照トピックに属さないものとして識別される画像(例えば、非ポルノ画像)を表すことができる。
【００７５】
重み付きグラフはまた、参照画像に対する同時選択画像を表すノード410〜420をも含む。例えば、ノード410〜420の各々は、参照画像402に対する同時選択画像である画像を表す。
【００７６】
逐次選択画像を表すノードは、重み付きグラフ内でエッジによって接続される。例えば、エッジ450は、ノード402をノード410に接続し、参照画像およびノード410によって表された同時選択画像の逐次ユーザ選択を表す。同様に、エッジ451は、ノード410によって表された同時選択画像の選択の後の、ノード411によって表された同時選択画像の逐次選択を表す。
【００７７】
エッジが生じる元のノードをソースノードと称し、エッジが終了するノードを宛先ノードと称する。上記の例を続けると、エッジ450に対するソースノードは参照ノード402であり、宛先ノードはノード410である。同様に、ノード410はエッジ451に対するソースノードであるが、ノード411は宛先ノードである。重み付きグラフ400内の各エッジは、宛先ノードを指す矢印によって表される。
【００７８】
双方向エッジは、ノードによって表された画像の相互逐次選択を示す。例えば、参照ノード402およびノード418は、双方向エッジ452によって接続される。双方向エッジ452は、参照画像のユーザ選択、ならびに、その後に続く、ノード418によって表された同時選択画像の選択および参照画像の第2の選択を示す。別法として、一対の一方向エッジを、双方向エッジの代わりに使用することができる。
【００７９】
エッジの各々は、それぞれソースおよび宛先ノードによって表された画像の逐次選択の数を示す重みを有することができる。例えば、参照画像の選択の後に続いて、ノード410によって表された画像が10回選択される場合、エッジ450は、10回の選択に対応する重みを有することができる。
【００８０】
エッジの重みは、例えば、識別された選択の各々に応答して一定増分量で増してもよく、または、この重みは、選択の数の関数に基づいて増してもよい。例えば、エッジの重みは、ソースおよび宛先ノードによって表された画像の逐次選択の数に対応してもよく、または、この重みは、逐次選択の数の対数関数または指数関数であってもよい。
【００８１】
参照画像の選択の直後の同時選択画像の選択は、1つまたは複数の他の同時選択画像の選択の後に続いて選択される画像よりも、参照画像に関連する画像を高く示す場合がある。例えば、ノード412は、参照画像402およびノード410によって表された同時選択画像の選択の後に続いて選択された同時選択画像を表す。したがって、ノード412によって表された画像の選択は、ノード410によって表された画像を選択する介在動作により、ノード410によって表された画像の選択よりも、その画像の参照画像402への関連性を低く示す場合がある。
【００８２】
いくつかの実装では、各エッジの重みは、参照画像に対するその近さに基づいて調整されうる。例えば、エッジ重みは、参照ノード402に対するそれらの近さに基づくブースト係数(boost factor)によってブーストされうる。ブースト係数は、例えば、参照ノード402を、同時選択ノード410、417、418および419を表すノードに接続するエッジに対して、最高になりうる。ブースト係数は、例えば、エッジと参照ノードの間のノードの数に基づいて、参照ノード402により近くないエッジに対して低減されうる。
【００８３】
いくつかの実装では、エッジの重み、または、エッジ重みが選択に応答して増大される量が、同時選択画像のための参照ノードの参照重みに基づいてもよい。参照重みは、参照画像の選択の後に続く画像選択の重要性を正規化、あるいはそうでない場合は調整する係数である。参照重みは、参照画像が参照トピックに属するものとして正確に識別される可能性を決定するために、参照画像に対するラベルフィードバックの解析に基づいてもよい。
【００８４】
例えば、ラベルフィードバックに基づいて、参照画像402は、0.7の確率でポルノ画像として識別されうる(例えば、ラベルフィードバックの70%が参照画像402をポルノ画像として識別した)が、参照画像460は、0.6の確率でポルノ画像として識別されうる。したがって、参照画像402には0.7の参照重みを割り当てることができるが、参照画像460には0.6の参照重みを割り当てることができる。
【００８５】
参照重みは、例えば、同時選択画像へのエッジ重みが増大される増分量を調整するために使用されうる。参照画像がトピックに属する可能性に基づいて、エッジ重みが増大される増分量を調整することは、参照トピックに属する異なる可能性を有する異なる参照画像に対する、同時選択画像のためのエッジ重みの直接比較を容易にする。
【００８６】
上記の例を続けると、参照画像402は、参照画像460よりも、ポルノ画像である可能性が高い。したがって、参照画像402の選択の直後の画像の選択は、参照画像460の選択の直後の別の画像の選択よりも、選択された画像がポルノ画像であることを高く示す。したがって、参照画像402に対する同時選択画像(例えば、418)のためのエッジ(例えば、452)の重みは、単一の選択に応答した参照画像460に対する同時選択画像(例えば、560)のためのエッジ(例えば、570)の重みよりも、単一の選択に応答して増大するようになる。エッジ重みのこれらの増大は、これらの参照画像402および460の各々がポルノ画像として正確に識別される相対的可能性を表す。
【００８７】
いくつかの実装では、グラフが構築された後、ノードによって表された画像が参照トピックに属する可能性を識別する機械処理に基づいて、ノードの各々に初期重みが割り当てられる。初期重みは次いで、同時選択データに基づいて調整される。
【００８８】
上記のように、画像の各々が参照トピックに属する可能性は、画像の視覚特徴の解析、画像に関連付けられたテキスト、および、画像が属するトピックを示す他のデータに基づいて、決定されうる。これらの実装では、それに対するノードがソースであるエッジは、上述の方法と同様の方法で、そのノードの参照重みに基づいて重み付けされうる。
【００８９】
図5は、重み付きグラフを生成するための処理例500のフローチャートである。重み付きグラフは、画像選択順序、および、共通ユーザセッション中に画像が選択される近さに基づいて、画像の間の関係を識別するために使用される。重み付きグラフは、参照画像を表す参照ノード、および、同時選択画像を表すノードを含むように生成される。重み付きグラフは、共通ユーザセッション中の画像の逐次選択を表すエッジを含む。多数の異なるユーザセッションのための選択データを集め、重み付きグラフ内で表すことができる。処理500を、単一の参照画像を参照して説明するが、多数の異なる参照画像により実装可能である。処理500は、例えば、図1の画像分類サブシステム120によって実装されうる。
【００９０】
参照画像が、重み付きグラフ内の参照ノードとして表される(502)。いくつかの実装では、参照画像は、参照トピックに属するものとして識別される画像である。例えば、参照画像は、参照画像に関連付けられているポルノトピックに対応する参照ラベルに基づいて、ポルノ画像として識別される画像でありうる。参照画像は、例えば、画像およびその画像に対応するラベルを格納するデータストアから識別されうる。処理500の説明全体を通じて、画像を表すノードを、それらが表す画像と同じ特徴(例えば、参照ラベルおよび選択データ)によって特徴付けることができる。したがって、画像を表すノードおよび画像自体は、入れ替え可能に参照される。
【００９１】
その間に参照画像が選択されたユーザセッションが、識別される(504)。いくつかの実装では、ユーザセッションは、参照画像のための選択データに基づいて識別されうる。例えば、参照画像の選択は、参照画像のための選択データから識別されうる。さらに、参照画像のための選択データに関連付けられる一意のセッション識別子は、同じ一意のセッション識別子に関連付けられた選択データを有する他の画像を識別するために使用されうる。参照画像のための選択データは、例えば、履歴データストア114から取得されうる。
【００９２】
参照画像が選択されたユーザセッションが識別された後、そのユーザセッション中の同時選択画像の後続の選択が識別される(506)。上述のように、同時選択画像の後続の選択は、参照画像と同じ一意のセッション識別子に関連付けられた選択データに基づいて識別されうる。ユーザセッションのための選択データは、参照画像の選択に対していつ同時選択画像の選択が発生したかを特定する時間データを含みうる。したがって、共通ユーザセッション中に参照画像の選択の後に続く時間に選択された画像として、同時選択画像を識別するために、時間データを使用することができる。
【００９３】
例えば、参照画像が2009年1月1日午前12時に選択された場合、参照画像と同じ一意のセッション識別子に関連付けられた選択データを有し、かつ、2009年1月1日午前12時より遅い別の時間を指定する時間データを有する各画像は、参照画像に対する同時選択画像である。
【００９４】
いくつかの実装では、参照画像の選択の後に続く閾値期間内に選択された同時選択画像のみが、参照画像に対する同時選択画像として識別される。閾値期間は、同時選択画像が識別されるべき期間よりも長い持続時間を有するユーザセッションの間に取得された選択データの使用を容易にする。
【００９５】
例えば、選択データは、1時間の持続時間を有するユーザセッションの間に取得されている場合がある。しかし、特定の応用例では、同時選択画像は、参照画像の選択の10分以内に選択されたそれらの画像のみとして定義される場合がある。この状況では、1時間のユーザセッション中に選択された画像が、参照画像に対する同時選択画像として識別されうるかどうかを判定するために、閾値期間が使用されてもよい。例えば、その画像の選択から参照画像の選択の間の時間が、閾値期間と比較されてもよい。相対的選択の間の時間が閾値以下である場合、その画像は、参照画像に対する同時選択画像として識別される。
【００９６】
いくつかの実装では、特定のユーザセッションのための選択データは、そのユーザセッション中に選択された画像のリストを含みうる。このリストは、例えば、画像がユーザセッション中に選択された順序で順序付けされうる。したがって、参照画像の選択がユーザセッションのための選択データ内で識別された後、参照画像の後に参照されたあらゆる画像は、同時選択画像として識別されうる。
【００９７】
同時選択画像を表すノードが、識別される(508)。いくつかの実装では、同時選択画像を表すノードは、例えば、コンピュータメモリ内で、最初に識別された選択に応答して定義される。これらの実装では、同時選択画像を表すノードがコンピュータメモリ内で定義された後、ノードは、そのノードが定義されるコンピュータ記憶場所から識別されうる。例えば、ノードは、最初に識別された選択に応答して重み付きグラフ内で定義され、次いで、後続で識別された同時選択画像の選択について重み付きグラフ内で識別されうる。他の実装では、画像のコーパス内の各画像は、その画像が同時選択画像であるかどうかに関わらず、重み付きグラフ内でノードによって最初に表される。
【００９８】
同時選択画像の選択が識別されるとき、ノードは、例えば、同時選択画像に対応し、かつそのノード関連付けられた、一意の識別子(例えば、URL)に基づいて識別されうる。例えば、一意の画像識別子は、同時選択画像毎に生成され、画像およびその対応するノードに関連付けられてよい。同時選択画像の選択が識別されるとき、一意の識別子に関連付けられるノードは、同時選択画像を表すものとして識別されうる。同時選択画像の各々は、重み付きグラフ内の独立ノードによって表され、重み付きグラフ内のノードは、単一または複数のユーザセッション中の参照画像に対する同時選択画像を表すことができる。
【００９９】
エッジ重みが、同時選択画像に対して増分される(510)。いくつかの実装では、重み付きグラフが生成されるとき、各ノード間のエッジ重みをゼロに初期化することができる(すなわち、ノード間にエッジが存在しない)。したがって、同時選択画像の最初の逐次選択は、ある正規化された単位(例えば、1の重み)に対応する重みを有するエッジを生成するようになる。同時選択画像の追加の逐次選択は、ノードを接続するエッジの重みを、正規化された単位に対応する増分量だけ同様に増分するようになる。上述のように、エッジ重みが増分される分の重みは、ブースト係数、ノードの参照重み、または、エッジ重みが増分中となっている選択の相対的重要性を調整するための別の係数に基づいて、調整されうる。
【０１００】
同時選択画像の追加の選択がユーザセッションの間に残っているかどうかの判定が、行われる(512)。追加の選択は、参照画像の選択の直後の選択、または、他の画像の選択の後の選択でありうる。追加の選択は、例えば、それらの選択が、ユーザセッションに対応する一意のセッション識別子に関連付けられることに基づいて、識別されうる。
【０１０１】
同時選択画像の追加の選択がユーザセッションの間に残っているとき、別の同時選択画像を表すノードが識別される(508)。同時選択画像の追加の選択がユーザセッションの間に残っていないとき、参照画像が別のユーザセッション中に選択されたかどうかの任意選択の判定が行われる(514)。参照画像の別の選択は、上述のように、例えば、参照画像のための選択データに基づいて識別されうる。参照画像の別の選択が識別されるとき、そのユーザセッション中の同時選択画像の後続の選択が識別される(506)。参照画像の別の選択が識別されないとき、処理500は終了する(516)。
【０１０２】
重み付きグラフが生成された後、参照画像の追加の選択、および、追加の参照画像に対する同時選択画像を表すように、重み付きグラフが更新されうる。重み付きグラフは、更新条件が満たされることに基づいて、定期的に更新されうる。更新条件は、例えば、特定の量の時間、ユーザ動作、ユーザセッション、または最後の更新の後の他の測定でありうる。
【０１０３】
トピックスコアは、重み付きグラフ内の画像を表すノードに接続されるエッジに基づいて、同時選択画像について生成されうる。いくつかの実装では、特定の画像のためのトピックスコアは、図2を参照して上述したように、画像を表すノードに接続されるエッジ重みの和でありうる。画像のためのトピックスコアが閾値トピックスコアを満たすとき、その画像は、トピックに属するものとしてラベル付けされる。さらに、その画像は、新しい参照画像として識別され、重み付きグラフ内でそのようなものとして定義されうる。
【０１０４】
他の実装では、トピックスコアは、停止条件が発生するまで、重み付きグラフ内のノードによって表された画像の各々について、反復して生成されうる。後述のように、重み付きグラフ全体を通じてトピックスコアの伝搬を容易にするために、トピックスコアが反復して生成される。
【０１０５】
停止条件は、例えば、1つまたは複数の反復に渡る画像の各々のためのトピックスコアの変化が閾値変化未満である(すなわち、収束する)とき、発生する場合がある。これらの実装では、トピックスコアは、参照画像および/または他の画像が参照トピックに属する可能性、ならびに、それらの画像のための同時選択データに基づいて、反復して生成されうる。画像の各々が参照トピックに属する可能性を、トピックスコアのベクトルとして表すことができる。初期トピックスコアは、例えば、上述の参照重みに対応してもよい。
【０１０６】
図6Aは、一組の画像のためのトピックスコアが格納かつ追跡されうる、テーブル例600である。テーブル600は、重み付きグラフ内のノードの各々を識別するノード識別子が格納される、列602を含む。テーブル600はまた、列602で識別されたノードに対応するトピックスコアが格納される、列604をも含む。テーブル600内で提供されたトピックスコアは、ノード識別子702a〜702eにそれぞれ対応するノードのための初期トピックスコアである。
【０１０７】
初期トピックスコアは、列602で識別されたノードによって表された画像の各々が参照トピックに属する初期可能性を表す。トピックスコアは、0.00から1.00までの値であってもよく、ただし、0.00のトピックスコアを有する画像は、参照トピックに属さないことが知られている画像であり、1.00のトピックスコアを有する画像は、参照トピックに属することが知られている画像である。
【０１０８】
いくつかの実装では、参照トピックに属するものとして識別される画像(すなわち、参照画像)のための初期トピックスコアの各々は、1.0に初期設定されうるが、他の画像のための初期トピックスコアは、0.0またはある他のデフォルト値に設定される。後述の反復処理を通じて、参照トピックに属するものとして最初に識別されなかった画像の各々について、最終トピックスコアを計算することができる。
【０１０９】
他の実装では、初期トピックスコアは、画像の各々について、参照トピックに属するその初期可能性に基づいて指定される。画像の各々が参照トピックに属する初期可能性を、例えば、それぞれ図2を参照して上述されるラベルフィードバック、画像解析技術、およびテキスト解析技術に基づいて決定することができる。
【０１１０】
いくつかの実装では、画像のための同時選択データは、1つまたは複数のユーザセッション中に同時選択された画像のための、同時選択マトリックスを定義することができる。例えば、画像の各対のための同時選択データは、N×Nの同時選択マトリックス内の値であってもよく、ただし、Nは、1つまたは複数のユーザセッション中に選択された画像の数である。
【０１１１】
一対の画像のための同時選択データは、例えば、他方の画像の選択の後に続くこれらの画像の一方の逐次選択率、または、その画像の対のための別の選択メトリック(例えば、全部の逐次選択)を特定することができる。同時選択データは、方向性または一方向性でありうる。いくつかの実装では、一対の画像のための同時選択データは、重み付きグラフ内でそれらの画像を表すノードの対を接続するエッジの重みに対応してもよい。
【０１１２】
図6Bは、同時選択マトリックスを定義する同時選択データが格納されうる、テーブル例650である。テーブル650は、1つまたは複数のユーザセッション中に選択されたノード(例えば、702a〜702e)毎に行および列を含む。各対の画像(例えば、ノード702aおよびノード702c)のための同時選択データは、その対の画像の各々に対応するセルを占める。一対の画像のための同時選択データが使用可能でないとき、「0.00」の値が、それらの画像を表すノードの対に対応するセルに入力されうる。その画像の対のための同時選択データは、図2を参照して上述したように、例えば、ユーザセッションのための選択データに基づいて識別されうる。
【０１１３】
テーブル600からのトピックスコア、および、同時選択マトリックス650からの同時選択データは、1つまたは複数のユーザセッション内で同時選択された画像のための最終トピックスコアを識別するために使用されうる。例えば、ノードのためのトピックスコアおよび同時選択マトリックスの積は、停止条件が発生するまで、反復して計算されうる。
【０１１４】
図7A〜7Dは、反復トピックスコア生成処理の異なる時点の重み付きグラフ例である。反復処理は、例えば、図1の画像分類サブシステム120によって行われうる。図7A〜7Dは、単一の参照トピックに対する画像のための単一のトピックスコアの識別を例示する。しかし、他の参照トピックについてのトピックスコアは、重み付きグラフ700、または、重み付きグラフ700内のノードに対応するノードを有する別のグラフ内で計算されうる。
【０１１５】
図7Aを参照すると、重み付きグラフ700は、図6Aの初期トピックスコアに対応するノード702a〜eのための初期トピックスコアを含んで、画像分類サブシステム120によって生成される。例えば、重み付きグラフ700は、それぞれノード702aおよび702bのための初期トピックスコア「0.00」および「1.00」を含む。ノード702c〜eは、「0.50」の初期トピックスコアをそれぞれ有する。同様に、ノードの各対の間のエッジは、図6Bのテーブル650で特定された同時選択データに対応する重みを有する。これらの初期トピックスコアおよび同時選択データを使用して、画像分類サブシステム120は、例えば、初期トピックスコアおよび同時選択データの積に基づいて、ノード702a〜702eによって表される画像の各々のための更新されたトピックスコアを生成することができる。
【０１１６】
図7Bを参照すると、重み付きグラフ700は、反復トピックスコア生成処理の1回の反復の後の、ノード702a〜eの各々のための更新されたトピックスコアを示す。この例では、ノード702a〜bのトピックスコアは、「0.00」および「1.00」にそれぞれ固定される。ノード702aによって表された画像が参照トピックに属さないものとして最初に識別されたため、ノード702aのトピックスコアは「0.00」に固定される。ノード702bによって表された画像が参照トピックに属するもの(すなわち、参照トピックのための参照画像)として最初に識別されたため、ノード702bのためのトピックスコアは「1.00」に固定される。
【０１１７】
ノード702c〜eの更新されたトピックスコアは、このとき、例えば、同時選択マトリックスおよび初期トピックスコアの積の結果生じるベクトルの値に基づいて、それぞれ「0.25」、「0.73」および「0.53」である。他のノードと比べて、ノード702aおよび702cのための同時選択データの比較的高い大きさ(「0.7」)は、ノード702cの更新されたトピックスコア(「0.25」)が、ノード702cのための初期トピックスコア(「0.5」)よりも、ノード702aのトピックスコア(「0.00」)に近くなることに寄与する。同様に、他のノードと比べて、ノード702bおよび702dのための同時選択データの比較的高い値(「0.7」)は、他のノードのトピックスコアよりも、ノード702bのトピックスコア(「1.00」)に近いトピックスコア(「0.73」)を、ノード702dに与える。ノード702eならびにノード702bおよび702dの各々のための同時選択データの値(「0.5」)は、ノード702eならびにノード702aおよび702cの各々のための同時選択データの値(「0.4」)よりわずかに高い。したがって、ノード702eのための更新されたトピックスコアは、ノード702bおよび702dのトピックスコアにわずかに向かって増大する。
【０１１８】
いくつかの実装では、画像分類サブシステム120は、ノード702a〜eのための初期トピックスコアを、図7Bの更新されたトピックスコアで置換する。例えば、更新されたトピックスコアは、図6Bのテーブル600内に格納された初期トピックスコア値を上書きするために使用されうる。更新されたトピックスコアおよび同時選択データは次いで、例えば、更新されたトピックスコアおよび同時選択データの積を計算することによって、ノードのための追加の更新されたトピックスコアを生成するために使用される。
【０１１９】
図7Cを参照すると、重み付きグラフ700は、画像分類サブシステム120による反復トピックスコア生成処理の2回の反復の後の、ノード702a〜eのための更新されたトピックスコアを示す。ノード702cの更新されたトピックスコアは、「0.01」だけ増大して「0.26」になっている。ノード702dの更新されたトピックスコアは、「0.01」だけ増大して「0.74」になっている。ノード702eの更新されたトピックスコアは、「0.01」だけ増大して「0.54」になっている。いくつかの実装では、画像分類サブシステム120は、後続の反復の間の各更新されたトピックスコアにおける変化が、「0.01」など、特定の閾値を下回るとき、反復トピックスコア生成を停止する。
【０１２０】
図7Dを参照すると、重み付きグラフ700は、画像分類サブシステム120による反復トピックスコア生成処理の4回の反復の後の、ノード702a〜eのための更新されたトピックスコアを示す。ノード702dの更新されたトピックスコアは、「0.01」だけ増大して「0.75」になっている。ノード702a〜eの更新されたトピックスコアは、それぞれ4回目の反復の後に続いて「0.01」内に収束している。したがって、画像分類サブシステム120は、反復トピックスコア生成処理を停止し、ノード702a〜eによって表された画像のためのトピックスコアを出力する。
【０１２１】
別法として、画像分類サブシステムは、閾値数の反復の後、反復処理を停止することができる。反復の閾値数は、例えば、重み付きグラフ内の2つの特定のノードの間のノードの数の関数であってもよい。
【０１２２】
図8は、トピックスコアを反復して生成するための処理例800である。処理800は、例えば、図1の画像分類サブシステム120によって実装されうる。
【０１２３】
初期トピックスコアが、画像のグループについて取得される(802)。いくつかの実装では、画像のグループは、1つまたは複数のユーザセッション中に同時選択された画像を含む。各画像のための初期トピックスコアは、その画像が参照トピックに属する可能性を特定する値である。初期トピックスコアは、図2を参照して上述したように、例えば、画像、画像に関連付けられたテキスト、および/または、画像のためのラベルフィードバックデータの解析に基づいて、取得可能である。
【０１２４】
初期トピックスコアは、画像の各々または画像のサブセットについて指定されうる。初期トピックスコアが画像の各々について指定されるとき、それらの値は「0.00」から「1.00」の間になりうるが、ただし、「0.00」の値は、参照トピックに属さないことが知られている画像を示し、「1.00」の値は、参照トピックに属することが知られている画像を示す。
【０１２５】
初期トピックスコアが画像のサブセットについて指定されるとき、画像のサブセットは、参照トピックに属することが知られているそれらの画像のみを含みうる。例えば、参照トピックに属することが知られている画像の各々(すなわち、参照トピックのための参照画像)は、「1.00」の初期トピック値を有することができるが、他のあらゆる画像は、「0.00」の初期トピック値を有する。初期トピックスコアを、トピックスコアのベクトルを定義するために使用することができ、ただし、各初期トピックスコアは、そのベクトルの成分である。
【０１２６】
画像のグループのための同時選択データが取得される(804)。いくつかの実装では、同時選択データは、画像のグループ内の画像の各対のための相対的選択率を特定する。例えば、特定の画像が、別の画像の10回の選択毎に、そのうち8回選択される場合、その別の画像に対する特定の画像のための相対的選択率は、「0.8」と指定されうる。同時選択データは、図2を参照して上述したように、例えば、ユーザセッションのための選択データに基づいて取得されうる。同時選択データは、図6Bを参照して上述したように、同時選択マトリックスを定義するために使用されうる。
【０１２７】
更新されたトピックスコアが、画像のグループについて計算される(806)。いくつかの実装では、各画像のためのトピックスコアは、トピックスコアおよび同時選択データの関数の結果である。例えば、トピックスコアベクトルおよび同時選択マトリックスの積を、画像の各々のための更新されたトピックスコアを特定するトピックスコアベクトルを生成するために、計算することができる。
【０１２８】
停止条件が発生しているかどうかの判定が行われる(808)。いくつかの実装では、更新されたトピックスコアの各々への変化が閾値変化を下回る(すなわち、トピックスコアが収束する)とき、停止条件が発生する。更新されたトピックスコアへの変化は、1つまたは複数の以前の反復におけるトピックスコアと相対的になりうる。例えば、1回の反復に渡る各トピックスコアへの絶対変化、または、複数の反復に渡るウィンドウ化された平均変化。他の実装では、停止条件は、上述のように、閾値数の反復の完了でありうる。
【０１２９】
停止条件が発生しているとき、画像のグループが、更新されたトピックスコアに基づいて分類される(810)。いくつかの実装では、少なくとも閾値トピックスコアを有する画像が、参照トピックに属するものとして分類される。他の実装では、トピックスコアの最高部分の中であるトピックスコアを有する閾値数の画像が、参照トピックに属するものとして分類される。トピックスコアの最高部分は、例えば、整数の最高トピックスコアまたは最高の割合のトピックスコアでありうる。
【０１３０】
参照トピックに属するものとして分類される画像は、参照トピックに対応するラベルに関連付けられる(812)。いくつかの実装では、ラベルは、参照トピックに対応するテキストデータである。例えば、ポルノ画像として識別される画像を、「性表現が露骨」または「ポルノ」というテキストに関連付けることができる。他の実装では、参照トピックに属するものとして識別される画像は、その画像がそのトピックに属することを示す2進値に設定されたデータフラグを有してもよい。
【０１３１】
ノードのためのいくつかの値の例を上述した。例えば、参照トピックに属する画像を表すノードには、「1.0」の値が割り当てられてもよいが、参照トピックに属さない画像を表すノードには、「0.0」の初期値が割り当てられてもよい。加えて、ノードには、そのノードによって表された画像が参照トピックに属する可能性に対応する値が割り当てられてもよい。これらの値は例のために提供されたが、画像を表すノードに他の値が割り当てられてもよい。例えば、参照トピックに属する画像を表すノードには、「1.0」の値が割り当てられてもよいが、参照トピックに属さない画像には、「-1.0」の値が割り当てられてもよい。同様に、画像が参照トピックに属する可能性を表すノードに、代替値が割り当てられてもよい。上記の説明は、値がノードに割り当てられるいかなる方法にも等しく適用可能である。
【０１３２】
本発明の実施形態、および、本明細書に記載された機能動作のすべては、本明細書で開示された構造およびそれらの構造的均等物を含む、デジタル電子回路内、あるいは、コンピュータソフトウェア、ファームウェアもしくはハードウェア内、あるいは、それらの1つまたは複数の組み合わせにおいて実装されうる。本発明の実施形態は、1つまたは複数のコンピュータプログラム製品、すなわち、データ処理装置による実行のため、あるいは、データ処理装置の動作を制御するために、コンピュータ可読媒体上で符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして、実装されうる。コンピュータ可読媒体は、機械可読記憶装置、機械可読記憶基板、メモリデバイス、機械可読伝搬信号をもたらすものの合成物、または、それらのうち1つまたは複数の組み合わせでありうる。「データ処理装置」という用語は、データを処理するためのすべての装置、デバイスおよび機械を包含し、例として、プログラマブルプロセッサ、コンピュータ、または、複数のプロセッサもしくはコンピュータを含む。この装置は、ハードウェアに加えて、当該のコンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、または、それらのうち1つまたは複数の組み合わせを構成するコードを含みうる。伝搬信号は、人工的に生成された信号であり、例えば、適切な受信側装置への送信のために情報を符号化するために生成される、機械により生成された電気、光学または電磁信号である。
【０１３３】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプトまたはコードとしても知られる)は、コンパイル済みまたはインタプリタ型の言語を含む、任意の形式のプログラミング言語で書かれてもよく、スタンドアロンプログラムとして、あるいは、モジュール、コンポーネント、サブルーチン、もしくは計算環境での使用に適した他のユニットとしてなど、任意の形式で配置されうる。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1つまたは複数のスクリプト)内、当該のプログラム専用の単一のファイル内、あるいは、複数の調整されたファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの部分を格納するファイル)内に格納されうる。コンピュータプログラムは、1つのコンピュータ上、あるいは、1か所に位置するか、もしくは複数の場所に渡って分散され、かつ通信ネットワークによって相互接続される、複数コンピュータ上で実行されるように配置されうる。
【０１３４】
本明細書に記載された処理および論理の流れは、1つまたは複数のプログラマブルプロセッサが1つまたは複数のコンピュータプログラムを実行して、入力データに作用して出力を生成することによって機能を行うことによって、行われうる。処理および論理の流れはまた、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)など、専用の論理回路によって行われてもよく、装置がこのような専用の論理回路として実装されてもよい。
【０１３５】
コンピュータプログラムの実行に適したプロセッサには、例として、汎用および専用マイクロプロセッサ、ならびに、任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサが含まれる。一般に、プロセッサは、リードオンリーメモリ、またはランダムアクセスメモリ、または両方から、命令およびデータを受信する。コンピュータの必須要素は、命令を行うためのプロセッサ、ならびに、命令およびデータを格納するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、例えば、磁気、光磁気ディスクまたは光ディスクなど、データを格納するための1つまたは複数の大容量記憶装置をも含むか、あるいは、1つまたは複数の大容量記憶装置からデータを受信するか、もしくは1つまたは複数の大容量記憶装置へデータを転送するように動作可能に結合されるか、あるいはその両方である。しかし、コンピュータは、そのようなデバイスを有する必要はない。また、コンピュータは、例えば、ほんの少数の例を挙げると、携帯電話、携帯情報端末(PDA)、モバイルオーディオプレイヤ、グローバルポジショニングシステム(GPS)受信器など、別のデバイスに埋め込まれてもよい。コンピュータプログラム命令およびデータを格納するために適したコンピュータ可読媒体には、すべての形式の不揮発性メモリ、媒体およびメモリデバイスが含まれ、例として、例えば、EPROM、EEPROMおよびフラッシュメモリデバイスなどの半導体メモリデバイス、例えば、内部ハードディスクまたはリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびに、CD-ROMおよびDVD-ROMディスクが含まれる。プロセッサおよびメモリは、専用論理回路によって補われ、あるいは専用論理回路に組み込まれてもよい。
【０１３６】
ユーザとの対話を提供するため、本発明の実施形態は、情報をユーザに表示するための、例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニタなど、表示デバイス、ならびに、それによりユーザが入力をコンピュータに提供することができる、例えば、マウスまたはトラックボールなど、キーボードおよびポインティングデバイスを有する、コンピュータ上で実装されうる。他の種類のデバイスを、同様にユーザとの対話を提供するために使用することができ、例えば、ユーザに提供されるフィードバックは、例えば、視覚フィードバック、聴覚フィードバックまたは触覚フィードバックなど、任意の形式の感覚フィードバックであってもよく、また、ユーザからの入力は、音響、音声または触覚入力を含む、任意の形式で受信されてもよい。
【０１３７】
本発明の実施形態を、コンピューティングシステム内で実装することができ、コンピューティングシステムは、例えば、データサーバとしてなど、バックエンドコンポーネントを含み、あるいは、例えば、アプリケーションサーバなど、ミドルウェアコンポーネントを含み、あるいは、例えば、それを介してユーザが本発明の実装と対話することができるグラフィカルユーザインタフェースもしくはウェブブラウザを有する、クライアントコンピュータなど、フロントエンドコンポーネント、または、1つまたは複数のそのようなバックエンド、ミドルウェアもしくはフロントエンドコンポーネントの任意の組み合わせを含む。このシステムのコンポーネントは、例えば、通信ネットワークなど、任意の形式または媒体のデジタルデータ通信によって相互接続されうる。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)、および、例えば、インターネットなど、広域ネットワーク(「WAN」)が含まれる。
【０１３８】
コンピューティングシステムは、クライアントおよびサーバを含んでもよい。クライアントおよびサーバは一般に、互いに遠隔にあり、典型的には、通信ネットワークを通じて対話する。クライアントおよびサーバの関係は、それぞれのコンピュータ上で実行し、互いにクライアント-サーバ関係を有する、コンピュータプログラムによって生じる。
【０１３９】
本明細書は多数の詳細を含むが、これらは、本発明の範囲、または、特許請求の範囲に記載されうるものの限定として解釈されるべきではなく、むしろ、本発明の特定の実施形態に特有の特徴の説明として解釈されるべきである。本明細書において別々の実施形態との関連で記載されるある特徴はまた、単一の実施形態において組み合わせて実装されてもよい。逆に、単一の実施形態との関連で記載される様々な特徴もまた、複数の実施形態において別々に、あるいは任意の適切な副次的組み合わせで実装されてもよい。また、特徴はある組み合わせで作動するものとして上述され、最初にそのようなものとして特許請求の範囲に記載される場合もあるが、特許請求の範囲に記載された組み合わせからの1つまたは複数の特徴は、場合によっては、その組み合わせから削除されてもよく、特許請求の範囲に記載された組み合わせは、副次的組み合わせまたは副次的組み合わせの変形例を対象としてもよい。
【０１４０】
同様に、動作は特定の順序で図面に示されるが、このことは、望ましい結果を達成するために、そのような動作が図示された特定の順序または連続的な順序で行われること、または、すべての例示された動作が行われることが必要であるとして理解されるべきではない。ある状況では、マルチタスキングおよび並列処理が有利でありうる。また、上述の実施形態における様々なシステムコンポーネントの分離は、すべての実施形態においてそのような分離が必要であるとして理解されるべきではなく、上述のプログラムコンポーネントおよびシステムは一般に、単一のソフトウェア製品にまとめて統合されてもよく、あるいは、複数のソフトウェア製品にパッケージ化されてもよいことを、理解されたい。
【０１４１】
このように、本発明の特定の実施形態を説明した。他の実施形態は、以下の特許請求の範囲の範囲内である。例えば、特許請求の範囲に列挙された動作を異なる順序で行い、なお望ましい結果を達成することができる。
【符号の説明】
【０１４２】
100  環境例、オンライン環境
102  ネットワーク
104  ウェブサイト
106  ユーザデバイス
109  検索クエリ
110  検索システム、画像検索システム
111  検索結果、画像検索結果
112  インデックス付きキャッシュ
114  履歴データストア、履歴データ
120  画像分類サブシステム
300  環境例
302  画像検索結果
302-1〜302-N  結果画像
304  選択データ
400  重み付きグラフ
402  参照ノード、参照画像
410〜420  ノード
410、417、418、419  同時選択ノード
450  エッジ
451  エッジ
452  双方向エッジ
460、480  参照画像
600  テーブル
602、604  列
650  テーブル、同時選択マトリックス
700  重み付きグラフ
702a〜702e  ノード識別子、ノード
【図１】
0005436665.tif 000002
【図２】
0005436665.tif 000003
【図３】
0005436665.tif 000004
【図４】
0005436665.tif 000005
【図５】
0005436665.tif 000006
【図６Ａ】
0005436665.tif 000007
【図６Ｂ】
0005436665.tif 000008
【図７Ａ】
0005436665.tif 000009
【図７Ｂ】
0005436665.tif 000010
【図７Ｃ】
0005436665.tif 000011
【図７Ｄ】
0005436665.tif 000012
【図８】
0005436665.tif 000013