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

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

▶ オプセック・オンライン・リミテッドの特許一覧

特表2024-528515不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法
<>
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図1
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図2
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図3
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図4
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図5
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図6
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図7
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図8
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図9
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図10
  • 特表-不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-30
(54)【発明の名称】不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法
(51)【国際特許分類】
   G06F 21/44 20130101AFI20240723BHJP
   H04L 67/564 20220101ALI20240723BHJP
【FI】
G06F21/44
H04L67/564
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023580363
(86)(22)【出願日】2022-06-30
(85)【翻訳文提出日】2024-02-20
(86)【国際出願番号】 US2022035813
(87)【国際公開番号】W WO2023278763
(87)【国際公開日】2023-01-05
(31)【優先権主張番号】63/216,878
(32)【優先日】2021-06-30
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
2.JAVASCRIPT
3.UNIX
4.Linux
(71)【出願人】
【識別番号】522008263
【氏名又は名称】オプセック・オンライン・リミテッド
(74)【代理人】
【識別番号】110001841
【氏名又は名称】弁理士法人ATEN
(72)【発明者】
【氏名】エルトン ティモシー アレン
(72)【発明者】
【氏名】ポリシュチャック オーレグ ヴィ
(72)【発明者】
【氏名】シャリアリー ササン
(72)【発明者】
【氏名】リー チャン-イン
(72)【発明者】
【氏名】フォン デーライル エス
(72)【発明者】
【氏名】カーリゴーダナコパルー サンジーブ
(57)【要約】
ネットワーク化された環境において不正なエンティティのネットワークを検出および監視するためのシステム、方法、および非一時的なコンピュータ可読媒体を提供する。
【選択図】図1
【特許請求の範囲】
【請求項1】
ネットワーク化された環境において不正なエンティティのネットワークを検出および監視するためのシステムであって、
当該システムは、
前記ネットワーク環境におけるデータソースに通信可能に結合されたコンピューティングシステムであって、前記データソースは、デジタルコンテンツをホストするように構成された1つ以上のサーバを含んでおり、
前記コンピューティングシステム内に配置される1つ以上のプロセッサは次のようにプログラムされている。
個別の異なる顧客アカウントを確立し、
各顧客アカウントについて、前記ネットワーク環境内の1つ以上のリモートサーバによってホストされている前記コンテンツを検索し、顧客アカウントごとに個別に収集されたデータセットを生成し、
各検索結果の分析に基づいて、収集されたデータセット内の各検索結果を正当または有害としてタグ付けし、
前記顧客アカウント用に収集されたデータセット内の各検索結果からのデータを組み合わせてネットワークグラフを生成し、
前記ネットワークグラフ内に、2つ以上の顧客アカウントからのデータを含むクロスアカウントクラスタが含まれる、クラスタを生成し、
前記ネットワークグラフ内の前記クラスタに基づいて1つ以上の不正なエンティティのネットワークを特定し、そして、
前記特定された1つ以上の不正なエンティティのネットワークに対して削除する措置を開始する。
【請求項2】
前記顧客アカウントは、前記ネットワークグラフを生成するために利用される機密データまたはプライベートデータを含み、前記1つ以上のプロセッサはさらに、以下の処理を実行するようにプログラムされている、請求項1に記載のシステム。
各顧客アカウントの機密データまたはプライベートデータが、他の顧客アカウントに開示されることを防ぐ。
【請求項3】
前記1つ以上のプロセッサは、前記グラフ内のクロスアカウントクラスタを変更して、前記機密データまたは前記プライベートデータを難読化するか、または前記機密データまたは前記プライベートデータを削除するかの少なくとも1つを行うことにより、前記機密データまたは前記プライベートデータの開示を防止するようにプログラムされている、請求項2に記載のシステム。
【請求項4】
前記1つ以上のプロセッサが、以下のようにプログラムされている、請求項1に記載のシステム。
各顧客アカウントの収集されたデータセット内の各検索結果について、前記検索結果が正当なコンテンツに対応するか有害なコンテンツに対応するかを分析し、そして、
前記分析に基づいて、顧客ごとに収集されたデータセット内の各検索結果を正当または有害としてタグ付けする。
【請求項5】
前記1つ以上のプロセッサは、以下のようにプログラムされている、請求項1に記載のシステム。
各顧客アカウントの収集されたデータセット内の固有の検索結果ごとに、リレーショナルデータベースに複数のレコードを作成し、そして、
各顧客アカウントの収集データセットの各結果から抽出されたデータを、前記複数のレコードのうちの対応するレコードのデータフィールドに保存する。
【請求項6】
前記1つ以上のプロセッサがさらに、以下のようにプログラムされる、請求項5に記載のシステム。
グラフデータベースを作成し、
前記グラフデータベースのグラフデータモデルを定義し、
前記複数のレコードを前記リレーショナルデータベースから前記グラフデータベースのドキュメントにコピーし、
前記リレーショナルデータベース内の前記複数のレコードからの前記データフィールドを前記グラフデータベース内のドキュメントのキーにコピーし、そして、
前記ドキュメントおよび前記ドキュメントのキーに基づいて、前記グラフデータベース内にノードコレクションまたはエッジコレクションのうちの少なくとも1つを生成する。
【請求項7】
前記キーを形成するデータは、正規形式に変換されるか、またはハッシュアルゴリズムによって変換される、請求項1に記載のシステム。
【請求項8】
前記ネットワーク環境における前記1つ以上のリモートサーバは、ウェブサーバであり、前記1つ以上のリモートサーバによってホストされるコンテンツはウェブページを含むウェブサイトである、請求項1に記載のシステム。
【請求項9】
前記1つ以上のプロセッサは、エンティティ解決アルゴリズムの実行に応じて、前記ネットワークグラフまたは前記クラスタのうちの少なくとも1つを生成するようにさらにプログラムされている、請求項1に記載のシステム。
【請求項10】
前記エンティティ解決アルゴリズムは、連結成分アルゴリズムである、請求項9に記載のシステム。
【請求項11】
前記1つ以上のプロセッサは、以下のようにプログラムされている、請求項1に記載のシステム。
前記クロスアカウントクラスタの1つの形成を検出し、そして、
前記ククロスアカウントクラスタの1つに関連付けられた顧客アカウントの1つのユーザーに警告する。
【請求項12】
ネットワーク環境において不正なエンティティのネットワークを検出および監視するための方法であって、前記ネットワーク環境においてデータソースに通信可能に結合されたコンピューティングシステムを介して実装される方法であって、前記データソースがデジタルコンテンツをホストするように構成された1つ以上のサーバを含む、方法であって、1つ以上のプロセッサがコンピューティングシステム内に配置されており、
当該方法は、
個別の異なる顧客アカウントを確立し、
各顧客アカウントごとに、前記ネットワーク環境内の1つ以上のリモートサーバによってホストされている前記コンテンツを検索して、顧客アカウントごとに個別に収集されたデータセットを生成し、
各検索結果の分析に基づいて、前記収集されたデータセット内の各検索結果を正当または有害としてタグ付けし、
前記顧客アカウント用に収集されたデータセット内の各検索結果からのデータを組み合わせてネットワークグラフを生成し、
前記ネットワークグラフ内に、2つ以上の顧客アカウントからのデータを含むクロスアカウントクラスタが含まれる、クラスタを生成し、
前記ネットワークグラフ内の前記クラスタに基づいて1つ以上の不正なエンティティのネットワークを特定し、そして、
前記特定された1つ以上の不正なエンティティのネットワークに対して削除する措置を開始する。
【請求項13】
請求項12に記載の方法であって、
前記顧客アカウントには、前記ネットワークグラフを生成するために利用される機密データまたはプライベートデータが含まれており、
前記方法はさらに、
各顧客アカウントの機密データまたはプライベートデータが他の顧客アカウントに開示されるのを防ぐ。
【請求項14】
請求項13に記載の方法であって、さらに、
前記グラフ内のクロスアカウントクラスタを変更して、前記機密データまたは前記プライベートデータを難読化するか、または前記機密データまたは前記プライベートデータを削除するかの少なくとも1つを行うことにより、前記機密データまたは前記プライベートデータの開示を防止する。
【請求項15】
請求項12に記載の方法であって、さらに、
各顧客アカウントの収集されたデータセット内の各検索結果について、前記検索結果が正当なコンテンツに対応するか有害コンテンツに対応するかを分析し、そして、
前記分析に基づいて、顧客ごとに収集されたデータセット内の各検索結果を正当または有害としてタグ付けする。
【請求項16】
請求項12に記載の方法であって、さらに、
各顧客アカウントの収集されたデータセット内の固有の検索結果ごとに、リレーショナルデータベースに複数のレコードを作成し、そして、
各顧客アカウントの収集データセットの各結果から抽出されたデータを、前記複数のレコードのうちの対応するレコードのデータフィールドに保存する。
【請求項17】
請求項16に記載の方法であって、さらに、
グラフデータベースを作成し、
前記グラフデータベースのグラフデータモデルを定義し、
前記複数のレコードをリレーショナルデータベースから前記グラフデータベースのドキュメントにコピーし、
前記リレーショナルデータベース内の前記複数のレコードからの前記データフィールドを前記グラフデータベース内のドキュメントのキーにコピーし、そして、
前記ドキュメントおよび前記ドキュメントのキーに基づいて、前記グラフデータベース内にノードコレクションまたはエッジコレクションのうちの少なくとも1つを生成する。
【請求項18】
前記キーを形成するデータは、正規形式に変換されるか、またはハッシュアルゴリズムによって変換されることの少なくとも一方である、請求項12に記載の方法。
【請求項19】
前記ネットワーク環境における前記1つ以上のリモートサーバはウェブサーバであり、前記1つ以上のリモートサーバによってホストされるコンテンツはウェブページを含むウェブサイトである、請求項12に記載の方法。
【請求項20】
エンティティ解決アルゴリズムの実行に応じて、前記ネットワークグラフまたは前記クラスタのうちの少なくとも1つを生成するステップをさらに含む、請求項12に記載の方法。
【請求項21】
前記エンティティ解決アルゴリズムは、連結成分アルゴリズムである、請求項20に記載の方法。
【請求項22】
請求項12に記載の方法であって、さらに、
前記クロスアカウントクラスタの1つの形成を検出し、そして、
前記クロスアカウントクラスタの1つに関連付けられた顧客アカウントの1つのユーザに警告する。
【請求項23】
ネットワーク環境において不正なエンティティのネットワークを検出および監視するための命令を保存した非一時的なコンピュータ可読媒体であって、1つまたは複数のプロセッサによって実行されたときに、1つまたは複数のプロセッサに以下の処理を行わせる、非一過性のコンピュータ可読媒体。
個別の異なる顧客アカウントを確立し、
各顧客アカウントについて、前記ネットワーク環境内の1つ以上のリモートサーバによってホストされている前記コンテンツを検索し、顧客アカウントごとに個別に収集されたデータセットを生成し、
各検索結果の分析に基づいて、収集されたデータセット内の各検索結果を正当または有害としてタグ付けし、
前記顧客アカウント用に収集されたデータセット内の各検索結果からのデータを組み合わせてネットワークグラフを生成し、
前記ネットワークグラフ内に、2つ以上の顧客アカウントからのデータを含むクロスアカウントクラスタが含まれる、クラスタを生成し、
前記ネットワークグラフ内の前記クラスタに基づいて1つ以上の不正なエンティティのネットワークを特定し、そして、
前記特定された1つ以上の不正なエンティティのネットワークに対して削除する措置を開始する。
【請求項24】
前記顧客アカウントは、前記ネットワークグラフを生成するために利用される機密データまたはプライベートデータを含み、前記命令の実行により、前記1つ以上のプロセッサが以下の処理を行う、請求項23に記載の媒体。
各顧客アカウントの機密データまたはプライベートデータが、他の顧客アカウントに開示されることを防ぐ。
【請求項25】
前記命令の実行により、前記1つ以上のプロセッサが、前記グラフ内のクロスアカウントクラスタを変更して、前記機密データまたは前記プライベートデータを難読化するか、または前記機密データまたは前記プライベートデータを削除するかの少なくとも1つを行うことにより、前記機密データまたは前記プライベートデータの開示を防止する、請求項24に記載の媒体。
【請求項26】
前記命令の実行により、前記1つ以上のプロセッサが以下の処理を行うことを特徴とする請求項23に記載の媒体。
各顧客アカウントの収集されたデータセット内の各検索結果について、前記検索結果が正当なコンテンツに対応するか有害コンテンツに対応するかを分析し、そして、
前記分析に基づいて、顧客ごとに収集されたデータセット内の各検索結果を正当または有害としてタグ付けする。
【請求項27】
前記命令の実行により、前記1つ以上のプロセッサが以下の処理を行うことを特徴とする請求項23に記載の媒体。
各顧客アカウントの収集されたデータセット内の固有の検索結果ごとに、リレーショナルデータベースに複数のレコードを作成し、そして、
各顧客アカウントの収集データセットの各結果から抽出されたデータを、前記複数のレコードのうちの対応するレコードのデータフィールドに保存する。
【請求項28】
前記命令の実行により、前記1つ以上のプロセッサが以下処理を行うことを特徴とする請求項27に記載の媒体。
グラフデータベースを作成し、
前記グラフデータベースのグラフデータモデルを定義し、
前記複数のレコードを前記リレーショナルデータベースから前記グラフデータベースのドキュメントにコピーし、
前記リレーショナルデータベース内の前記複数のレコードからの前記データフィールドを前記グラフデータベース内のドキュメントのキーにコピーし、そして、
前記ドキュメントおよび前記ドキュメントのキーに基づいて、前記グラフデータベース内にノードコレクションまたはエッジコレクションのうちの少なくとも1つを生成する。
【請求項29】
前記キーを形成するデータは、正規形式に変換されるか、またはハッシュアルゴリズムによって変換されることの少なくとも一方である、請求項23に記載の媒体。
【請求項30】
前記ネットワーク環境における前記1つ以上のリモートサーバはウェブサーバであり、前記1つ以上のリモートサーバによってホストされるコンテンツはウェブページを含むウェブサイトである、請求項23に記載の媒体。
【請求項31】
前記命令の実行により、エンティティ解決アルゴリズムの実行に応じて、前記1つ以上のプロセッサが前記ネットワークグラフまたは前記クラスタのうちの少なくとも1つを生成する、請求項23に記載の媒体。
【請求項32】
前記エンティティ解決アルゴリズムは、連結成分アルゴリズムであることを特徴とする請求項31に記載の媒体。
【請求項33】
前記命令の実行により、前記1つ以上のプロセッサが以下の処理を行う、請求項23に記載の媒体。
前記クロスアカウントクラスタの1つの形成を検出し、そして、
前記クロスアカウントクラスタの1つに関連付けられた顧客アカウントの1つのユーザーに警告する。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本出願は、2021年6月30日に出願され、参照により本出願の全体に援用される、米国仮出願第63/216,878号に基づく利益および優先権を主張する。
【0002】
本発明は、不正なエンティティネットワークを監視および/または検出を目的に、クロスアカウントクラスタリングを用いてネットワーク環境をマッピングするシステムおよび方法に関する。
【背景技術】
【0003】
インターネットなどのネットワーク環境を介して、圧倒的な量のデジタルコンテンツにアクセスできる。コンテンツは複数のデータチャネルおよび/またはデータソースにまたがっており、利用可能なコンテンツの量は日々増え続けている。ほとんどのコンテンツは正当/良性なものだが、いくつかのコンテンツは有害なものである(例えば、詐欺的、偽造的、侵害的、悪意的であるなど)。
【0004】
一つ以上のデータチャネルまたはデータソースからデジタルコンテンツを追加または削除できる流動性と、有害コンテンツの加害者が自分の身元を隠す能力および/または偽名や子会社を作成する能力とを考慮すると、多くの場合、インターネット上の有害コンテンツを特定、追跡、および修復することは移動する目標を狙うようなものである。インターネット上のデジタルコンテンツの動的な性質により、有害コンテンツの範囲、および/または有害コンテンツを任意の時間および/またはさまざまなデータチャネルにわたって永続させるエンティティの範囲にアクセスすることが難しくなる可能性がある。それによって、協調的、効果的、および効率的な方法で、適切に有害コンテンツを追跡および修復することが困難になる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
実施形態本開示の実施形態は、ネットワーク環境における不正なエンティティのネットワークの検出、監視、および/または削除を提供する。クロスアカウントクラスタリングを利用してネットワーク環境をマッピングし、ネットワーク環境において一つ以上のエンティティのネットワークに関連付けられたノードを特定することができる。また、一つ以上のエンティティのネットワークにおける一つ以上のノードが有害コンテンツ(例えば、詐欺的、偽造的、侵害的、悪意的なコンテンツなど)のソースであるという判断に基づいて、一つ以上のエンティティのネットワークが不正なエンティティのネットワークであるかどうかを特定することができる。不正なエンティティのネットワークを検出した際、本開示の実施形態は、一つ以上の不正なエンティティのネットワークによって影響を受ける可能性がある関係者に警告することができ、および/または一つ以上の措置を不正なエンティティのネットワークに対して開始することができる。
【0006】
ネットワークマップ/ネットワークグラフ内のクロスアカウントクラスタリングを利用すると、異なる顧客アカウントのデータベース内のデータに基づいて、それらの顧客アカウントのデータベース内のドキュメント間の明示的および暗黙的な接続またはリンクを判断することにより、ネットワークグラフ内のノード間にエッジを作成することができる。それにより、他の顧客から機密および/または顧客の個人情報を守りながら、ネットワーク環境におけるエンティティのネットワークに関する堅牢なネットワークマップ/ネットワークグラフを生成することができる。このアプローチにより、異なる顧客アカウントにより検出された、無関係にみえるエンティティのネットワークおよび/または別個のエンティティのネットワークが、同じエンティティのネットワークであると判断することができる。および/または、ある顧客アカウントに関連付けられているデータベースのレコードに基づくと正当であるように見えるエンティティのネットワークが、一つ以上の他の顧客アカウントのデータベースのレコードに基づくと不正であると判断された一つ以上のエンティティのネットワークの一部であると判断することができる。また、このアプローチにより、本開示の実施形態は、特定の不正なエンティティのネットワークが特定の産業、製品、および/または種類のブランドをターゲットにしていると判断することができる。これにより、今のところ顧客アカウントが不正なエンティティのネットワークのターゲットではないと判断された場合であっても、不正なエンティティのネットワークが存在すると顧客アカウントに警告することができる。
【0007】
本開示の実施形態は、一つ以上のデータチャネルやデータソースからデジタルコンテンツが追加または削除され、有害コンテンツの加害者が自分の身元を隠すおよび/または偽名や子会社を作成することができる有害コンテンツをインターネット上で特定、追跡、および修復することに関する困難性に対処することができる。本開示の実施形態により、顧客は、有害コンテンツの範囲、および/または有害コンテンツを任意の時間および/またはさまざまなデータチャネルにわたって永続させるエンティティの範囲にたやすくアクセスすることができ、有害コンテンツの協調的、効果的、および効率的な追跡と修復が可能になる。
【0008】
本開示の実施形態において、ネットワーク環境において不正なエンティティのネットワークを検出および監視するためのシステム、方法、および非一時的なコンピュータ可読媒体が提供される。本システムはネットワーク環境におけるデータソースと通信可能に結合された演算システムを含み、データソースはデジタルコンテンツをホストするように構成された一つ以上のサーバを含み、一つ以上のプロセッサがコンピューティングシステム内に配置されている。非一時的なコンピュータ可読媒体は、一つ以上のプロセッサによって実行される、上記方法を実行するための命令を保存する。一つ以上のプロセッサはそれぞれ別個の顧客アカウントを確立するように構成されており、また、ネットワーク環境における一つ以上のリモートサーバでホストされるコンテンツを顧客アカウントごとに検索し、顧客アカウントごとに別個に収集されたデータセットを生成するように構成されている。また、一つ以上のプロセッサは、収集されたデータセット内の各検索結果の分析に基づいて、収集されたデータセット内の各検索結果を正当または有害としてタグ付けし、顧客アカウントの収集されたデータセット内の各検索結果からのデータを結合することによってネットワークグラフを生成するように構成されている。また、一つ以上のプロセッサは、二つ以上の顧客アカウントからのデータを含むクロスアカウントクラスタを含む複数のクラスタをネッリモートサーバにおいて生成し、ネットワークグラフ内の複数のクラスタに基づいて一つ以上の不正なエンティティのネットワークを特定し、特定された一つ以上の不正なエンティティのネットワークに対して削除措置を開始するように構成されている。
【0009】
実施形態の任意の組み合わせおよび/または置換が想定される。他の目的および特徴は、添付の図面と併せて考慮される以下の詳細な説明から明らかとなる。しかしながら、図面は単に例示として設計されており、本開示の制限を定義するものとして設計されていないことを理解されたい。
【図面の簡単な説明】
【0010】
図面において、非限定的かつ非網羅的な実施形態に関するさまざまな図の全体を通して、同様の符号は同様の部分を指す。
図1図1は、本開示の実施形態における、例示的な不正コンテンツ監視/検出エンジンのブロック図である。
図2図2は、本開示の実施形態における、例示的な演算装置のブロック図である。
図3図3は、本開示の実施形態における、インターネット上の不正なコンテンツの収集、解析、分析、および削除の促進のための模範的なネットワーク環境を示す。
図4図4は、グラフデータベースを作成および/または更新し、およびグラフとサブグラフを生成して不正なエンティティのネットワークを検出するための、本開示の実施形態における例示的なプロセスを示すフローチャートである。
図5図5は、本開示の複数の実施形態のうち、グラフデータベースに対して定義されたグラフデータモデルの視覚化された一実施形態を示すブロック図である。
図6図6は、本開示の実施形態における、グラフデータベースに対して定義されたグラフデータモデルに基づき、グラフデータベース内のデータに対して生成されたグラフの簡単な例を示す。
図7図7は、本開示の実施形態における、グラフデータベース内のドキュメントの一覧とそれぞれに対応するキーとを顧客アカウントごとに示すグラフィカルユーザーインターフェイスを示す。
図8図8は、本開示の実施形態における、クラスタの合計数を示す領域を有する図7のグラフィカルユーザーインターフェイスを示す。
図9図9は、本開示の実施形態における、レンダリングされたグラフが視覚化されているクラスタブラウザを示すグラフィカルユーザーインターフェイスを示す。
図10図10は、本開示の実施形態におけるグリッドビューを示すグラフィカルユーザーインターフェイスを示す。
図11図11は、不正なエンティティのネットワークを検出、監視、および/または削除するための、本開示の実施形態における例示的なプロセスを示すフローチャートである。
【発明を実施するための形態】
【0011】
本開示の実施形態は、ネットワーク環境における不正なエンティティのネットワークを検出、監視、および/または削除するためのシステム、方法、および非一時的なコンピュータ可読媒体に関する。クロスアカウントクラスタリングを利用してネットワーク環境をマッピングし、ネットワーク環境において一つ以上のエンティティのネットワークに関連付けられたノードを特定することができる。また、本開示の実施形態は、一つ以上のエンティティのネットワークにおける一つ以上のノードが有害コンテンツ(例えば、詐欺的、偽造的、侵害的、悪意的なコンテンツなど)のソースであるという判断に基づいて、一つ以上のエンティティのネットワークが不正なエンティティのネットワークであるかどうかを検出することができる。不正なエンティティのネットワークを検出した際、本開示の実施形態は、一つ以上の不正なエンティティのネットワークによって影響を受ける可能性がある関係者に警告することができ、および/または一つ以上の措置を不正なエンティティのネットワークに対して開始することができる。
【0012】
非限定的な応用例では、本開示の実施形態を、ネットワーク環境におけるブランド保護のために実装することができる。本開示の実施形態は、ネットワーク環境内のデータソースからデジタルコンテンツ(例えばウェブページ)を収集する能力を提供する。ネットワーク環境では、例えば、一つ以上の収集エンジンが検索(例えば、キーワードを利用した検索や、統一資源位置指定子(URL)での検索など)に基づいてデータソース内のデジタルコンテンツを検索し、抽出エンジンがそのデジタルコンテンツから属性を抽出する。収集されたデジタルコンテンツ内の有害コンテンツの検出を受けて、本開示の実施形態は、検出された有害コンテンツの種類(例えば、詐欺的、偽造的、侵害的、悪意的など)を定義するために使用される一つ以上のタグを作成することができる。一例として、有害コンテンツは、偽造品、侵害品、不正品、または悪意のある品を販売するようもちかけるウェブページを含んでいる。
【0013】
本開示の例示的な実施形態を(例えばブランド保護のために)利用して、顧客ごとに別個の顧客アカウントを作成することができる。それにより、デジタルコンテンツを収集するために使用される検索、収集結果、および結果のタグ付けが各顧客アカウントに固有のものとなり、通常は顧客アカウント間で共有されないため、顧客の気密性とプライバシーが守られる。各顧客アカウントの収集結果はデータベース内に別個のレコードとして保存することができる。データベースでは、結果から抽出されたコンテンツと情報は、レコードのデータフィールドを形成することができる。さらに、顧客識別子をデータベース内の各レコードに追加して、各レコードと、そのレコードが生成された対応する顧客とを関連付けること、産業識別子を追加すること、および/または製品カテゴリ識別子を追加することができる。顧客識別子は顧客に固有のものとすることができる。一方で、産業識別子と製品カテゴリ識別子は、同じ産業における顧客アカウント間、または同じカテゴリにおける製品を販売する顧客アカウント間で共有することができる。いくつかの実施形態では、顧客は複数の産業に属していてもよく、および/または複数の製品カテゴリの製品を販売していてもよい。このような実施形態では、顧客アカウントを、顧客アカウントと関連付けられている各産業と対応する産業識別子に関連付けること、および/または顧客アカウントと関連付けられている各製品カテゴリと対応する製品カテゴリ識別子に関連付けることができる。各結果/レコードに対して生成されたタグも、データベースのデータフィールドとして各レコードに追加することができる。
【0014】
収集されたデジタルコンテンツおよび顧客アカウントのデータベースのレコードからのタグを利用することで、本開示の実施形態を、顧客アカウントから収集されたデジタルコンテンツおよびタグを組み合わせ、不正なエンティティのネットワークを特定し、複数のデータチャネル、産業、およびブランドにわたって有害コンテンツの範囲と性質にアクセスすることによって、累積的または集約されたネットワークマップまたはネットワークグラフを作成するように構成することができる。本開示の実施形態は、ネットワークマップ/ネットワークグラフ内のクロスアカウントクラスタリングを利用して、異なる顧客アカウントにおけるレコードのデータフィールド内のデータに基づいて、それらの顧客アカウントのレコード間の明示的および暗黙的な接続またはリンクを判断することにより、ネットワークグラフ内のノード間にエッジを作成することができる。それにより、ネットワーク環境におけるエンティティのネットワークに関する堅牢なネットワークマップ/ネットワークグラフを生成することができる。このアプローチにより、異なる顧客アカウントにより検出された、無関係にみえるエンティティのネットワークおよび/または別個のエンティティのネットワークが、同じエンティティのネットワークであると判断することができる。また、ある顧客アカウントに関連付けられているデータベースのレコードに基づくと正当であるように見えるエンティティのネットワークが、一つ以上の他の顧客アカウントのデータベースのレコードに基づいて不正であると判断された一つ以上のエンティティのネットワークの一部であると判断することができる。また、このアプローチにより、本開示の実施形態は、特定の不正なエンティティのネットワークが特定の産業、製品、および/または種類のブランドをターゲットにしていると判断することができる。これにより、今のところ顧客アカウントが不正なエンティティのネットワークのターゲットではないと判断された場合であっても、不正なエンティティのネットワークが存在すると顧客アカウントに警告することができる。
【0015】
クロスアカウントクラスタリングの利用において、ある顧客に関連付けられた機密情報や個人情報が、ネットワークマップ/ネットワークグラフを介して別の顧客に開示されてもよい。顧客アカウント間の機密情報および/または個人情報の開示を防ぐため、本開示の実施形態は、ネットワークマップ/ネットワークグラフ内の情報を匿名化および/または難読化することができる。更には、グラフのノードおよび/またはエッジを省略または変更して、機密情報または顧客の個人情報を保護することができる。
【0016】
クロスアカウントクラスタリングを利用して不正なエンティティのネットワークを特定するネットワークマップ/ネットワークグラフを生成すると、対象を絞った広範な修復措置が容易となり、通常可能であったよりも大規模に不正なエンティティのネットワークをダウンさせることができる。したがって、本開示の実施形態により、個々のウェブサイトおよび/または電子商取引プラットフォームをターゲットとする必要があるというよりかはむしろ、不正なエンティティのネットワーク全体(または大部分)に対して協調的な措置を取ることが容易となる。更に、本開示の実施形態は、法的手続きにおける証拠として利用されてもよい。
【0017】
図1は、本開示の実施形態における、例示的な不正エンティティネットワーク検出および/または監視エンジン100のブロック図である。エンジン100により、ユーザは顧客アカウント102を確立することができる。顧客アカウント102において、各顧客アカウントに関連付けられたデータは、通常は他の顧客アカウント102と共有されない機密データおよび/または個人データとすることができる。応用例では、エンジン100は、ネットワーク環境におけるブランド保護のために実装される。この場合、顧客アカウント102は、製品、商標、および/またはブランドに伴う有害コンテンツをインターネットから検出、監視、および削除しようとしている組織または企業と関連付けられる。エンジン100は、ユーザーインターフェイス110、収集エンジン115、抽出エンジン120、タグ付けエンジン125、分析エンジン130、データベース変換エンジン140、エンティティ解決エンジン152および確率的モデリングエンジン154を含むクラスタリングエンジン150、ネットワークグラフ化エンジン155、および削除エンジン160を含むことができる。
【0018】
エンジン100は、ネットワーク環境におけるノードと関連付けられた異種データソース104から、アカウントごとにデジタルコンテンツ(収集データセット117)を収集、抽出、および分析する。また、データソース104および/または異種ソース104の収集データセット117を、顧客アカウント102ごとに異なるものとすることができる(例えば、顧客アカウント102ごとに異なる検索基準を有することができる)。一例として、第一アカウントは、エンジン100を利用して、データソース104からなる第一セットから第一コンテンツ/情報セット(例えば、第一収集データセット)を収集し、抽出し、分析することができる。また、第二アカウントは、エンジン100を利用して、データソース104からなる第二セットから第二コンテンツ/情報セット(例えば、第二収集データセット)を収集し、抽出し、分析することができる。この場合、第一収集データセットおよび第二収集データセットは、共通する要素を有してもよいし(例えば、いくつか同じ結果を有してもよい)、相互に排他的であってもよい(例えば、共通する結果がなくてもよい)。エンジン100は、収集されたデジタルコンテンツから抽出されたデータを補足する追加データも受信する。一例として、顧客アカウントのユーザは、収集データセット117に含まれるデータ(例えば、販売者情報、ドメイン、連絡先、販売者の追跡)を入力することができる。別の例として、オンライン市場から追加データ(例えば、販売者情報)を受信し、収集データセット117に含めることができる。エンジン100は、異なる顧客アカウント102と関連付けられている収集データセット(例えば、第一収集データセットおよび第二収集データセット)内の結果から抽出されたデータを結合することによって、ネットワーク環境のネットワークグラフを生成する。ネットワークグラフは、ネットワーク環境における一つ以上の不正なエンティティのネットワークの特定および検出、一つ以上の不正なエンティティのネットワークと一つ以上の顧客アカウント102の関連付け、および/またはネットワーク環境における不正なエンティティのネットワークのエンティティの範囲および偽名の判定のために使用される。
【0019】
異種データソース104を、インターネット上の、またはその他のネットワーク環境におけるさまざまなデータチャネルと関連付けることができる。例えば、異種ソース104は、ウェブサイト、ソーシャルメディア、電子商取引市場、オンライン市場、ダークウェブ、インターネットリソース情報(例えば、登録者名、レジストラ名、物理アドレス、電話番号、電子メールアドレス、販売者名、ドメイン名の所有者、IPアドレスブロックなど)を特定するためのデータベースなどの、インターネット/デジタルコンテンツをホストするサーバおよび/またはデータベースを含むことができる。
【0020】
一実施形態において、収集エンジン115は、ウェブおよび/またはダークウェブをクロールし、検索エンジンおよび/またはAPIを収集してウェブページを検索し、モバイルアプリケーションデータを検索し、および/またはネットワーク環境におけるその他のデータを検索することによって、有害なオンラインコンテンツを検索するように構成されている。収集エンジン115は、各顧客アカウントに固有である項目識別子、キーワード文字列、またはそれらの組み合わせに基づいて、ネットワーク環境における一つ以上の異種データソース104からコンテンツおよび情報を検索する。
【0021】
収集エンジン115は、一つ以上の顧客アカウント102の一人以上のユーザ106が、ユーザーインターフェイス110における一つ以上のグラフィカルユーザーインターフェイス114を介して入力した一つ以上の検索語(例えば、キーワード)に基づいて、一つ以上のクエリ(例えば、データベース、API、またはウェブベースクエリ)を生成または構築する。一例として、収集エンジン115は、検索語の単一のセットから複数のクエリを構築する。この場合、各クエリを、検索エンジンおよび/またはアプリケーションプログラミングインターフェイス(API)に固有のものとすることができる。
【0022】
収集エンジン115を実行することで、同様のコンテンツをさまざまなデータソース104で並行して検索を行うことが容易になる。クエリは、SQL(Structured Query Language)、CQL(Contextual Query Language)、プロプライエタリなクエリ言語、ドメイン固有のクエリ言語、および/またはその他の適したクエリ言語などの、一つ以上のクエリ言語を利用して生成または構築される。いくつかの実施形態では、収集エンジン115は、Java、C、C++、Perl、Rubyなどの一つ以上のプログラミング言語またはスクリプトを利用して、一つ以上のクエリを生成または構築することができる。
【0023】
収集エンジン115は、検索エンジンおよび/またはAPIを使用して顧客アカウントごとに各クエリを実行し、インターネットコンテンツおよび/またはネットワーク環境におけるその他のコンテンツを返すことができる。一例として、収集エンジン115を実行することにより、検索語を使用したクエリに応じて返される一つ以上のデータソースの一つ以上のウェブサーバによってホストされている1つ以上のインターネット・ドメインから、一つ以上のウェブページを返すことができる。
【0024】
例示的な実施形態では、収集エンジン115を介して返された結果は、取得され、記憶装置にダウンロードされ、収集データセット117として記憶される。例えば、各結果(例えば、各ウェブページなど)をファイルまたは他のデータ構造として保存することができる。いくつかの例では、一つ以上の結果を、取得元のデータソースにあったときと同じフォーマットで保存することができる。例えば、ウェブページはそれぞれ、ネイティブのテキストベースのマークアップ言語(例えば、HTMLやXHTMLなど)で保存されてもよい。いくつかの例では、一つ以上の結果を、取得元のデータソースに保存されているときのフォーマットとは異なるフォーマットで保存することができる。例示的な実施形態では、収集エンジン115は、時間をかけて、数億を超える(1億以上)固有の結果を返すことができる。収集エンジン115がコンテンツおよび情報を収集する頻度は、アカウントごとに固有のものとすることができる。それにより、任意の顧客アカウントに対して、収集エンジン115は、ネットワーク環境におけるデータソース104からコンテンツおよび情報を各時間、各日、各週、各月、各四半期、各年等ごとに収集することができる。および/または収集エンジン115は、オンデマンドで(例えば、顧客アカウントのユーザからの要求に応じて)コンテンツおよび情報を収集することができる。収集エンジン115によって利用されるクエリおよび検索語は、例えば、以前の収集動作からの結果の分析に基づいて、および/または不正なエンティティのネットワークの検出およびマッピングに基づいて、更新および/または修正することができる。
【0025】
抽出エンジン120は、収集データセット117内の各結果(例えば、各ウェブページおよび関連メタデータなど)からコンテンツおよび情報を抽出する。例示的な実施形態では、結果から抽出されたコンテンツおよび情報は、製品情報(例えば、ブランド名、会社名、ロゴ、製品説明、製品画像、製品価格、GTIN、SKU、UPC、EANなど)、販売者またはユーザ情報(例えば、販売者/ユーザ名、住所、電話番号、電子メールアドレス、ドメイン名、統一資源位置指定子など)、SNSのプロフィール情報(例えば、製品情報および/または販売者情報を含む情報)、ウェブサイト情報(例えば、ウェブページの本文に含まれる画像および/またはテキストなどの情報、および/またはウェブページのソースコードに含まれる情報)、ネットワーク情報(例えば、登録者名、レジストラ名、ドメイン名、IPアドレス、インターネットリソースの所有者情報、統一資源位置指定子、統一資源識別子(URI)など)などを含むことができる。各顧客アカウントの結果から抽出されたコンテンツと情報を利用して、各レコードが正当コンテンツおよび有害コンテンツのどちらに対応するかどうかを判断することができる。
【0026】
抽出エンジン120は、各アカウントの各結果からコンテンツおよび情報を抽出すると、結果から抽出したコンテンツおよび情報を使用してデータベース135を構築および/または更新する。データベース135は、リレーショナルデータベースとすることができる。抽出エンジン120は、収集データセット117内の各結果に対して、および各顧客アカウント102に対して、データベース135内にレコード137を作成する。また、各結果から抽出されたコンテンツおよび情報を、それぞれ対応するレコード137におけるデータフィールド内のデータとして保存する。一例として、各固有の結果はレコード(データベース135内の行と定義される)として保存される。この場合、各レコードから抽出されたコンテンツおよび情報は、各レコードのデータフィールドまたはデータ列に保存されることができる。データベース135内のレコード137は、結果から抽出されたデータを保存するためのデータフィールドに加え、関連する顧客アカウントに基づいて、および/または対応する結果の分析に基づいて追加のデータフィールドを含むことができる。
【0027】
レコード137に含めることができるデータフィールドまたはデータ列の例として、例えば、以下のデータフィールドが挙げられる。製品名、製品説明、販売者名、GTIN、SKU、UPC、EAN、市場に固有の識別子(例えば、Amazon(登録商標)標準識別番号(ASIN)など)、販売者の地理的位置、販売者が製品を発送する地理的位置、販売者のレビュー、結果のタイトル(例えば、ウェブページのタイトルなど)、製品価格、購入可能な製品の数量、製品寸法、画像、製品画像、ロゴおよび/またはアートワーク、ビデオ、オーディオ、ウェブページのドメインの登録名、結果をホストするドメインネームサーバ、結果を登録する際のレジストラ名、ドメインのIPアドレス、ドメイン名、レコードが正当コンテンツおよび有害コンテンツのどちらに関連しているかを示すタグ、顧客アカウントの識別子(レコードがどの顧客アカウントに属しているかを特定するための識別子)、産業識別子(顧客の産業を特定するための識別子)、一つ以上の製品タイプ識別子(顧客が販売する製品の種類および/またはレコードに対応する結果によって提供される製品の種類を特定するための識別子)、HTMLページのソースコード、XMLファイル、および、JavaScriptなどである。
【0028】
収集データセット117内の結果からコンテンツおよび情報を抽出するために、抽出エンジン120は、例えば、自然言語処理、機械学習、類似性の尺度、ピクセルマッチングを含む画像マッチング技術、および/またはパターンマッチング技術を利用して結果内の項目識別子を特定する。抽出エンジン120は、一つ以上のエンティティのオントロジーを利用して、結果に含まれるエンティティ(例えば、販売者名やインターネットリソース所有者など)を導出および/または特定する。抽出エンジン120では、さまざまなアルゴリズムおよび/または技術を利用することができる。例えば、Baeza-Yates-Gonnetアルゴリズムのようなあいまいなテキストパターンのマッチングのアルゴリズムなどは、単一文字列に対して、あいまいAho-Corasickアルゴリズム(AC法)などは、複数文字列に対して使用できる。また、教師付き文書分類手法または教師なし文書分類手法のためのアルゴリズムは、あいまいAho-Corasickアルゴリズムなど、複数文字列に対してあいまいなテキストパターンのマッチングを行うためのアルゴリズム、および、潜在的ディリクレ配分法(LDA)や階層ディリクレ過程(HDP)などのトピックモデル、を使用してテキストを数値ベクトルに変換したあとに実施することができる。
【0029】
また、別の実施形態では、収集エンジン115によって結果をダウンロードして収集データセット117を作成するというよりはむしろ、収集エンジン115が結果(例えば、ウェブページなど)を特定し、抽出エンジン120が、結果と関連付けられたデータソースのコンテンツおよび情報を解析する。抽出エンジン120は、上述のようにコンテンツおよび情報を利用してデータベース135を作成する。
【0030】
タグ付けエンジン125は、例えばデータベース135を介して、収集データセット117にタグ付けするために実行される。例えば、タグ付けエンジン125を実行してデータベース135内の各レコードのフィールドにタグを追加することで、レコード137が特定できるようにする。これにより、収集データセット117内の結果(例えば、ウェブページなど)におけるデジタルコンテンツが良性コンテンツまたは有害(例えば、詐欺的、侵害的、偽造的、悪意的など)コンテンツとして、レコード137と関連付けられる。ユーザ106は、ユーザーインターフェイス110を介してタグ付けエンジン125と対話することで、データベース135内のレコード137のタグを指定できる。いくつかの実施形態では、タグ付けエンジン125は、アトリビュートデータベース135のレコード137に自動的にタグ付けするように構成される。例えば、タグ付けエンジン125は、一つ以上の機械学習アルゴリズムを利用して、データベース135内のレコード137のタグを指定するように構成される。この場合、機械学習アルゴリズムは、トレーニングデータの全集を利用してトレーニングすることができる。収集データセット117は、収集データセット117が一つ以上の収集エンジン115によって収集される前、収集中、または収集された後にタグ付けされる。
【0031】
データベース変換エンジン140は、データを変換し、フォーマットし、データベース135からデータベース145にロードするために実行される。例示的な実施形態では、データベース145は、グラフデータモデルを利用するグラフデータベース、および/または一つ以上のデータモデル(例えば、グラフデータモデル、文書データモデル、キー値モデルなど)を利用するマルチモデルデータベースである。ただし、本開示の実施形態において、他の種類のデータベースおよび他の種類のデータモデルを利用することもできる。実施形態では、データベース135からのレコード137は、データベース145においてドキュメント147に変換され、例えば、Java Script Object Notation (JSON)ドキュメントとして保存することができる。ただし、ドキュメント147は、eXtensible Mark-up Language (XML)ドキュメントなどの他のデータ構造を利用して保存することもできる。データベース変換エンジン140は、データベース135内のレコード137のデータフィールドまたはデータ列をデータベース145内のドキュメント147のキーに変換し、電話番号、電子メールアドレス、および住所などのデータを修正して、標準形で表示する。データベース変換エンジン140は、一つ以上のハッシュ関数/アルゴリズムを利用してデータフィールド内のデータの一部を変換することで、データをデータベース145内のキーとして適した形にする。非限定的な例として、データの一部は、MD5ハッシュを利用して変換される。MD5ハッシュを利用する場合でも、位置合わせを行うために、データ上で直接または変換中にデータをクリーンアップして分析ステップとしての変換後の整合(エンティティの解決)の労力を軽減することができる。
【0032】
エンジン100は、転置検索インデックスを利用してデータベース145内のドキュメント147を評価し、有害としてタグ付けされたデータベース145内のドキュメント147の統計と、有害としてタグ付けされたデータベース145内のドキュメント147と関連付けられた有害コンテンツに関与するエンティティに対して取られた措置の統計とを保持する。
【0033】
一実施形態におけるエンジン100は、データベース135に保存されたレコード137に基づいてデータベース145を作成する。一方で、複数の実施形態におけるエンジン100は、収集エンジン115によってデータソース104から収集された結果からデータベース145を作成し、それによって、収集エンジン115からの結果に基づいて、データベース135および145が並行して作成および更新される。および/またはデータベース145がデータベース135とは独立してまたはデータベース135の代わりに作成および更新される。エンジン100は、データベース135内のレコード137の更新に基づいて、データベース145を定期的に更新する。および/または、データベース135を利用してデータベース145がはじめに作成されたあと、エンジン100は、収集エンジン115により生成された結果から抽出されたコンテンツと情報に基づいて、データベース145内のデータを更新する。
【0034】
データベース145内のドキュメント147のコレクションは、グラフデータモデルの頂点/ノードおよびエッジに対して定義することができる。非限定的な例として、ノードのコレクションは、エンティティ/販売者名(およびその他の個人特定情報)、ドメイン、ドメインネームサーバ、ドメイン登録者情報、IPアドレス、URL、およびURIに対して定義され、ドキュメント147のエッジのコレクションは、物理アドレス、電話番号、電子メールアドレス、ドメイン、ドメインネームサーバ、ドメイン登録者情報、IPアドレス、URL、URI、製品説明、およびウェブサイト上の製品リストなどに対して定義される。エッジのコレクションは、ノードのコレクション間の関係を定義し、二つ以上のノード間のエッジを形成する明示的な関係を定義するために使用される「to」キーと「from」キーとを含む。
【0035】
非限定的な例では、販売者ノードに関するノード/頂点のコレクションを次のように表すことができる。
【数1】
【0036】
また、別の非限定的な例では、ドメインネームサーバノードに関するノード/頂点のコレクションを次のように表すことができる。
【数2】
【0037】
非限定的な例では、ドメインネームサーバエッジに関するエッジのコレクションを次のように表すことができる。
【数3】
【0038】
名前、物理アドレス、電話番号、電子メールアドレス、販売者のIPアドレス、およびドメインの生データを参照するプロパティはパターンに従うことができるため、これらのプロパティから頂点を作成するために一つのパラメトリッククエリを、エッジを作成するために一つのクエリを使用する。以下は、ソースデータプロパティから頂点とエッジを作成するためのパラメータのクエリの非限定的な例である。
【数4】
【0039】
クラスタリングエンジン150は、データベース145を利用して、ネットワークグラフ内のエンティティのネットワークに対応する一つ以上のクラスタまたはサブグラフを検出および特定するために、エンティティ解決エンジン152および確率的モデリングエンジン154を含む。非限定的な例として、エンティティ解決エンジン152は、一つ以上のエンティティ解決アルゴリズムを利用してクラスタ/サブグラフを特定する。ユーザは、エンティティの解決が行われる範囲を指定できる。例えば、ユーザはデータベース全体に対してエンティティの解決を開始するか、特定の販売者名に関連付けられた任意の頂点/ノードに基づいてエンティティの解決を開始するかを選択する。エンティティ解決エンジン152を介して実装される一つ以上のエンティティ解決アルゴリズムは、分散型反復グラフ処理またはPregelアルゴリズムを含む。非限定的な例として、エンティティ解決エンジン152は、連結成分のアルゴリズムを実行して、ネットワークグラフ内のエンティティのネットワークに対応するクラスタ/サブグラフを検出および特定する。連結成分のアルゴリズムは、販売者グラフ内において、繋がりのある販売者アカウントのグループを特定するために使用される。同じエンティティを表示する販売者アカウントは、電話番号、電子メールアドレス、および物理アドレスなどの識別情報を介して繋がっている。連結成分のアルゴリズムは、これらのキーに基づいて繋がっているグループを見つけることができる。Pregelの連結成分のアルゴリズムがエンティティ解決エンジン152によって実行されると、連結成分のサブグラフ内の頂点にプロパティが追加される。その後、クエリ言語を介してプロパティを問い合わせて、例えば、最大の接続コンポーネントのグラフ(エンティティのネットワークに対応するクラスタ/サブグラフ)を見つけることができる。最大の連結成分のグラフは、例えば、検出を避けるために動作を難読化するために使用されている可能性があるエンティティのエイリアスの最大数を含むグループとすることができる。
【0040】
クラスタリングエンジン100の確率的モデリングエンジン154は、ノードに関連付けられたパラメータ(キーの値)間の類似性に基づいて、ノード間の確率的接続を特定する。例えば、同じエンティティに基づく複数の販売者アカウントは、共通の関係および/または推測された関係を介してリンクでき、これらの関係はそれぞれ別個のサブグラフを形成できる。これらの関係は、関連する販売者アカウントを含むクラスタ/サブグラフを特定することに使用することができる。推論された関係がグラフデータモデルに追加される。確率的モデリングエンジン154は、確率的接続に割り当てることができる一つ以上の機械学習ベースの確率の尺度などの、確率の尺度および/または類似性の尺度を使用する。確率的モデリングエンジン154は、指定された閾値以上の確率的接続(および関連エッジ)を維持し、指定された閾値未満の確率的接続(および関連エッジ)を削除する。確率的モデリングエンジン154によって利用される、機械学習ベースの確率の尺度の非限定的な一例は、レーベンシュタイン距離である。
【0041】
クラスタリングエンジン150は、エンティティ解決エンジン152および確率的モデリングエンジン154の出力に基づいて、単一の顧客アカウント内に含まれるエンティティのネットワークに対応するクラスタ/サブグラフ、および/または、複数の顧客アカウント(クロスアカウントクラスタ)を含むエンティティのネットワークに対応するクラスタ/サブグラフを作成する。顧客アカウント全体にわたってグラフを評価することにより、クラスタリングエンジン150は、そうしなければ特定されなかったであろうノード間の接続を特定する。これにより、エンティティのネットワークのサイズと範囲が拡大し、顧客アカウントのユーザにネットワーククロスアカウントクラスタィティのネットワークに関するより堅牢かつ正確なビューが提供され、その中で検出された不正なエンティティのネットワークと偽名をターゲットとした単一のクラスタベースの削除措置が容易になる。クロスアカウントクラスタがネットワークグラフ内に生成されると、エンジン100は、顧客アカウントに関連付けられた一人以上のユーザに、不正なエンティティのネットワークの範囲が拡大したことを自動的に警告することができる。グラフ内の各ノードと顧客アカウント識別子とを関連付けることができる。また、グラフにおけるクラスタ/サブグラフ内の各ノードは、クラスタ識別子を含むことができる。クロスアカウントクラスタクラスタ/サブグラフ内に存在する一つ以上の顧客アカウント識別子の存在に基づいて、クロスアカウントクラスタが生成されたと判断する。
【0042】
クラスタリングエンジン150によって実行されるクロスアカウントクラスタリングは、ネットワークマップ/ネットワークグラフを閲覧している顧客アカウントのユーザに対して、他の顧客アカウントの機密情報や個人情報を公開する可能性がある。顧客アカウント間の機密情報および/または個人情報の開示を防ぐために、エンジン100は、ネットワークマップ/ネットワークグラフ内の情報を匿名化および/または難読化する。および/または、グラフのノードおよび/またはエッジを省略または修正し、クロスアカウントクラスタリングの利点を提供しながら、顧客の機密情報または個人情報を保護する。例えば、別の顧客のアカウントでアクティブである販売者について、関連する販売者名、または電話番号や電子メールアドレスなどその他の個人特定情報を表すノードはそれぞれ、実際の個人特定情報を提供するテキストラベルを使用しない、はっきりした色のアイコンとして表示することできる。この場合、グレーアウトしたアイコンが例として挙げられる。
【0043】
ネットワークグラフは、圧倒的な数のノードを含んでいる。エンジン100は、ユーザからの選択または要求の受信に応じて、グラフおよび/またはクラスタ/サブグラフの範囲を縮小する。一例として、ネットワークグラフまたはクラスタ/サブグラフの範囲を指定することで、有害コンテンツに関連付けられているとしてタグ付けされたノードのみをグラフに含めることができる。別の例として、ネットワークグラフまたはクラスタ/サブグラフの範囲は、物理アドレスデータ、IPアドレス、電話番号などに基づいて、地理的位置または地域(例えば、米国、北アメリカ、北半球など)によって制限できる。別の例として、グラフの範囲を産業の種類または製品の種類によって制限し、それによって特定の産業カテゴリまたは製品カテゴリに関連付けられたノードのみがグラフに含まれるようにすることができる。
【0044】
グラフ化エンジン155は、グラフデータモデルを利用し、ノードのコレクションおよびエッジのコレクション、および/またはエンジン100によって明示的におよび/または暗黙的に定義されたエッジに基づいて、データベース145内のドキュメント147のグラフィカルマップを生成する。グラフィカルマップは、エンティティのネットワークを表すクラスタに対応するサブグラフを特定する。グラフィカルマップのノード/頂点およびエッジは、ユーザがネットワーク環境におけるデータソースからのコンテンツと情報との間の関係を追跡および検出できるようにするネットワークの視覚化を提供する。ノードは、ノードの種類を示すアイコンまたはその他のグラフィックな表示を含むようにレンダリングすることができる。例えば、エンティティ名、ドメイン名、ドメインネームサーバなどの異なる種類のノードを、グラフィカルマップ内の異なるアイコンを使用してそれぞれ表示することができる。
【0045】
削除エンジン160は、検出された不正なコンテンツおよび/または製品の自動テイクダウンを開始する。いったんデータベース内のレコードが不正であるとタグ付けまたは判断されると、削除エンジン160は不正なコンテンツに対するテイクダウン要求を開始することができる。例えば、削除エンジン160は、収集データセット117、データベース135、および/またはデータベース145からデータを取得して構造化ファイルまたは電子メールを生成することによって、デジタルミレニアム著作権法通知(DMCA通知)を生成することができる。通知が生成された後、削除エンジン160は、コンテンツのホストまたは所有者に通知を送信することができる。別の例では、削除エンジン160は、APIを介してコンテンツのホストまたは所有者にテイクダウン通知を通信する。
【0046】
例示的な実施形態では、ユーザーインターフェイス110は、例えばデータベース135および/またはデータベース145のビューを利用して、検索からのレコードまたはドキュメントのリストを含む一つ以上のグラフィカルユーザーインターフェイス(GUI)114を生成する。この場合、レコードまたはドキュメントは、データベース135のレコードまたはデータベース145のドキュメントに含まれる一つ以上の識別子に基づいて、一つ以上のグラフィカルユーザーインターフェイス114内でグループ分けされている。非限定的な一例として、有害コンテンツとしてタグ付けされており、データベース145に関連付けられているドキュメント、および/またはドキュメントに関連付けられているネットワークグラフを、グラフィカルユーザーインターフェイス114に示すことができる。別の非限定的な例として、有害コンテンツとしてタグ付けされており、データベース135に関連付けられているレコードをグラフィカルユーザーインターフェイス114に示すことができる。
【0047】
ユーザーインターフェイス110は、プレゼンテーション/視覚化エンジン112および一つ以上のグラフィカルユーザーインターフェイス114を含む。プレゼンテーションエンジン112は、エンジン100に実装される一つ以上のサービス間および/または一つ以上のエンジン間のインターフェイスを提供するように構成されている。データを受信すると、プレゼンテーションエンジン112が実行され、一つ以上のグラフィカルユーザーインターフェイス114を生成し、一つ以上のグラフィカルユーザーインターフェイス114内にデータをレンダリングする。一つ以上のグラフィカルユーザーインターフェイス114により、ユーザ106はエンジン100と対話することができる。また、グラフィカルユーザーインターフェイス114は、ユーザ106に情報を表示するためのデータ出力領域と、ユーザ106から情報を受信するためのデータ入力欄とを含む。いくつかの例では、データ出力領域は、テキスト、グラフィックス(例えば、グラフ、地図(地理的な地図、もしくはその他の地図)、画像など)、および/またはその他の適したデータ出力領域を含むことができるが、これらに限定されない。いくつかの例では、データ入力フィールドは、テキストボックス、チェックボックス、ボタン、ドロップダウンメニュー、および/またはその他の適したデータ入力欄を含むことができるが、これらに限定されない。
【0048】
ユーザーインターフェイス110は、一つ以上のサーバおよび/または一つ以上のユーザのコンピューティングデバイスによって実行される、実施形態におけるエンジン100によって生成される。ユーザーインターフェイス110は、本明細書で説明されるように、データソース(例えば、インターネットコンテンツなど)から抽出されたコンテンツおよび情報に対応するデータをレンダリングするように構成されている。ユーザーインターフェイス110は、ユーザ106がデータベース135および/またはデータベース145に保存されているコンテンツ、情報、および識別子と対話することを可能にするインターフェイスを提供する。例えば、ユーザーインターフェイス110は、収集エンジン115および抽出エンジン120を介して収集されたウェブページから抽出されたコンテンツおよび情報を、構造化して配置するように構成されることができる。
【0049】
非限定的な例として、ユーザーインターフェイス110は、データベース135および/またはデータベース145からのデータを含むリストまたはテーブルを提供することができる。非限定的な一例として、ユーザーインターフェイス110は、収集エンジン115を介して収集されたウェブページのエントリーのリストを含むことができる。例えば、行を、ウェブページに対応するデータベース135内のレコードおよび/またはデータベース145内のドキュメントに関連付けることができる。別の非限定的な例として、ユーザーインターフェイスは、対話型のネットワークグラフをレンダリングすることができる。この場合、対話型のネットワークグラフは、複数の顧客アカウント102にわたってエンティティのネットワークを特定するサブグラフクラスタを有する。
【0050】
行および/または行の値はユーザ106によって選択可能であり、それによって、ユーザ106がリストと対話して項目識別子を変更し、および/または一つ以上の他の措置を実行できるようにする。例えば、抽出エンジン120が、結果からの一つ以上の項目識別子を解析できない場合、解析者は結果をレビューし、一つ以上の項目識別子を行に入力してもよい。その後、入力されたアイテム識別子は、コンテンツが正当であるか有害であるかどうかを判断する際に、タグ付けエンジン125および分析エンジン130によって使用される。
【0051】
本明細書で説明されるように、エンジン100は、収集エンジン115がネットワーク環境におけるデータソースに再クエリを行う頻度をアカウントのユーザ106が指定できるようにする、再収集頻度のオプションをさらに含む。例えば、ユーザ106は、収集エンジン115が各時間、各日、各週、各月、各四半期等ごとに検索を行うと指定することができる。
【0052】
図2は、本開示の実施形態における、例示的な演算装置のブロック図である。本実施形態では、コンピューティングデバイス200はサーバとして構成される。また、本サーバは、エンジン100の動作および/または機能の一つ以上を実行し、インターネットまたはその他のネットワーク環境における不正なエンティティのネットワークの検出および有害コンテンツの削除を容易にするようにプログラムおよび/または構成される。コンピューティングデバイス200は、例示的な実施形態を実装するための一つ以上のコンピュータが実行可能な命令またはソフトウェアを保存するための、非一時的なコンピュータ可読媒体を含む。非一時的なコンピュータ可読媒体は、一つ以上の種類のハードウェアメモリ、非一時的な有形媒体(例えば、一つ以上の磁気記憶ディスク、一つ以上の光ディスク、一つ以上のフラッシュドライブなど)などを含んでもよいが、これらに限定されない。例えば、コンピューティングデバイス200に含まれるメモリ206は、例示的な実施形態のエンジン100またはその一部を実装するための、コンピュータが可読かつコンピュータが実行可能な命令またはソフトウェアを保存してもよい。
【0053】
コンピューティングデバイス200は、システムハードウェアを制御するための、メモリ206に保存されたコンピュータが可読かつコンピュータが実行可能な命令またはソフトウェア、およびその他のプログラムを実行するために、構成可能および/またはプログラム可能なプロセッサ202および関連コア204をさらに含む。また、オプションとして、構成可能および/またはプログラム可能な一つ以上の追加のプロセッサ202'および関連コア204'(例えば、複数のプロセッサ/コアを有するコンピュータシステムの場合など)をさらに含む。プロセッサ202およびプロセッサ202'はそれぞれ、シングルコアプロセッサまたはマルチコア(204および204')プロセッサであってもよい。
【0054】
仮想化をコンピューティングデバイス200で実施することで、コンピューティングデバイス内のインフラストラクチャおよびリソースを動的に共有してもよい。一つ以上の仮想マシン214は、プロセスが複数のコンピューティングリソースではなく一つのコンピューティングリソースを利用しているように見えるように、および/またはプロセスがコンピューティングリソースを割り当ててエンジン100に関連付けられる機能および動作を実行しているように見えるように、複数のプロセッサで稼働するプロセスを取り扱うようになっていてもよい。複数の仮想マシンを一つのプロセッサで利用してもよい。また、複数の仮想マシンをいくつかのプロセッサにわたって分散することもできる。
【0055】
メモリ206は、DRAM、SRAM、EDORAMなどのコンピュータシステムメモリまたはランダムアクセスメモリを含んでもよい。メモリ206は、その他の種類のメモリ、またはそれらの組合せも含んでもよい。
【0056】
コンピューティングデバイス200は、プロセッサ202によって実行されることで本明細書の例示的な実施形態におけるエンジン100を実装することができるデータおよびコンピュータ可読命令および/またはソフトウェアを保存するための、ハードドライブ、CD-ROM、大容量フラッシュドライブ、またはその他のコンピュータ可読媒体などの一つ以上の記憶装置224をさらに含んでもよい。
【0057】
コンピューティングデバイス200は、さまざまな接続を介して、一つ以上のネットワークデバイス222を経由し、例えばローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、またはインターネットなどの一つ以上のネットワークと対話するように構成されるネットワークインターフェイス212を含むことができる。この場合、接続というのは、例えば標準の電話回線、LANまたはWANのリンク(例えば、802.11、T1、T3、56kb、X.25など)、ブロードバンド接続(例えば、ISDN、フレームリレー、ATMなど)、ワイヤレス接続(セルサイト経由を含む)、コントローラエリアネットワーク(CAN)、または上記のいずれかまたはすべての組合せを含むが、これらに限定されない。ネットワークインターフェイス212は、内蔵ネットワークアダプタ、ネットワークインターフェイスカード、PCMCIAネットワークカード、カードバス対応のネットワークアダプタ、ワイヤレスネットワークアダプタ、USBネットワークアダプタ、モデム、または、コンピューティングデバイス200を任意の種類の通信可能なネットワークにインターフェイスして本明細書における動作を実行することに適したその他のデバイスを含んでもよい。図2に描かれるコンピューティングデバイス200は、サーバとして実装されている。一方で、例示的な実施形態におけるコンピューティングデバイス200は、無線通信または有線通信によって他のデバイスと通信可能であり、および本明細書における動作を実行するのに十分なプロセッサ能力とメモリ容量を有しているワークステーション、デスクトップコンピュータ、またはその他の形式のコンピューティングデバイスまたは通信装置などの、任意のコンピュータシステムとすることができる。
【0058】
コンピューティングデバイス200は、任意のUnixベースのサーバアプリケーション、Linuxベースのサーバアプリケーション、プロプライエタリなサーバアプリケーション、またはコンピューティングデバイス200上で稼働可能であり本明細書の動作を実行可能であるその他のサーバアプリケーション、を含む任意のバージョンのサーバアプリケーションなどであるサーバアプリケーション216を実行することができる。コンピューティングデバイス上で稼働可能なサーバーアプリケーションの例として、Apacheサーバーアプリケーションが挙げられる。
【0059】
図3は、本開示の実施形態における、インターネット上のおよび/またはその他のネットワーク環境上の不正なエンティティのネットワークの検出と監視の促進のための、例示的なネットワーク環境300を示す。環境300は、通信ネットワーク340を介して、一つ以上の(ローカル)サーバ321~323を含むリモートコンピューティングシステム320に動作可能に統合されたユーザのコンピューティングデバイス310~312を含む。通信ネットワーク340は、ネットワークに通信可能に統合されたデバイス間で情報を送信できる任意のネットワークとすることができる。例えば、通信ネットワーク340は、インターネット、イントラネット、バーチャルプライベートネットワーク(VPN)、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)などとすることができる。環境300は、通信ネットワーク340を介してサーバ321~323、およびユーザのコンピューティングデバイス310~312に動作可能に接続されうるリポジトリまたはデータベース330を含むことができる。当業者であれば、データベース330を一つ以上のサーバ321~323に組み込むことができ、それによって一つ以上のサーバがデータベースを含むことができると理解できる。例示的な実施形態では、本実施形態におけるエンジン100はサーバ321~323のうちの一つ以上によって独立してまたは集合的に実装すること、一つ以上のユーザのコンピューティングデバイス(例えば、ユーザのコンピューティングデバイス312など)によって実装すること、および/あるいは、サーバ321~323とユーザーのコンピューティングデバイスとの間で分散させることができる。
【0060】
ユーザのコンピューティングデバイス310~312はユーザによって操作され、サーバ321~323のうち一つ以上によって実装されるエンジン100との対話を容易にすることができる。例示的な実施形態では、ユーザのコンピューティングデバイス(例えば、ユーザのコンピューティングデバイス310~311など)は、サーバ321~323のうち一つ以上と対話するようにプログラムおよび/または構成された顧客側アプリケーション315を含むことができる。一実施形態では、ユーザのコンピューティングデバイス310~311によって実装される顧客側アプリケーション315は、エンジン100のGUIをホストする一つ以上のウェブページに案内可能なウェブブラウザとすることができる。いくつかの実施形態では、ユーザのコンピューティングデバイス310~311のうち一つ以上によって実装される顧客側アプリケーション315は、一つ以上のサーバによって実装されるエンジン100との対話を可能にする、エンジン100に固有のアプリケーション(例えば、サーバ321、サーバ322、および/またはサーバ323と対話するためのユーザのインターフェイスを提供するアプリケーションなど)とすることができる。
【0061】
一つ以上のサーバ321~323(および/またはユーザのコンピューティングデバイス312)は、エンジン100を実行して、通信ネットワーク340で利用可能なコンテンツを検索することができる。例えば、エンジン100は、それぞれ一つ以上の(リモート)サーバ380を含むことができるデータソース350、360、および370の検索を容易にするようにプログラムすることができる。また、一つ以上のサーバ380は、コンテンツをホストし、通信ネットワーク340でコンテンツを利用可能にするようにプログラムされる。非限定的な例として、サーバ380は、エンジン100によって生成された一つ以上のクエリを利用する一つ以上の検索エンジンおよび/またはAPIを介して検索されるウェブサイト、をホストするように構成されたウェブサーバとすることができる。 例えば、データソース350、データソース360、および/またはデータソース370のうち少なくとも一つは、オンライン市場ウェブサイトを提供することができる。
【0062】
データベース330は、エンジン100によって使用される情報を保存することができる。例えば、本明細書で説明されるように、データベース330は、クエリ、エンジン100によって抽出された項目識別子のデータセット、エンジン100に関連付けられたタグ、および/または本実施形態のエンジン100によって使用されるその他の適した情報/データ、を保存することができる。データベース330は収集されたデータセット(すなわち、収集データセット117)をさらに保存することができ、および/またはデータベース135および/またはデータベース145を含むことができる。
【0063】
図4は、図1に示される一実施形態におけるデータベース145を作成および/または更新し、グラフとサブグラフを生成することで不正なエンティティのネットワークを検出するための、例示的なプロセス400を示す。ステップ402において、データベース145に転送されるデータベース135内のデータは、中間データストレージリポジトリにステージングされる。ステップ404において、データがデータベース145に取り込まれる。ステップ406において、データは、データベース145のグラフデータモデルと整合するように変換され(例えば、正規表現、ハッシュ関数、および/またはその他のデータ変換を利用して変換)、データベース145のグラフデータモデルが更新される。ステップ408において、Pregelの連結成分のアルゴリズムなどのコミュニティ検出アルゴリズムを利用して、グラフデータモデル上でエンティティの解決を実行し、データベース145内のサブグラフにおけるエンティティの曖昧性を解消してグループ分けする。曖昧性が解消された各エンティティに固有であるエンティティ識別子を、本エンティティに関連付けられたドキュメントに追加して、データベース145に含まれるそれぞれのエンティティに関連するドキュメントをリンクすることができる。ステップ410において、不正なエンティティのネットワークを特定するグラフに基づいて、レポートを生成することができる。
【0064】
図5は、データベース145に対して定義することができる、一実施形態におけるグラフデータモデル500の視覚化を示す。図5に示すように、例示的なグラフデータモデル500は、「seller」ノード502、「site」ノード504、「phone」ノード506、「e-mail」ノード508、「address」ノード510、「entity」ノード512、「listing」ノード514、「domain」ノード504、「IP address」ノード506、および「domain name server」ノード518を含むグラフのノードを定義することができる。グラフデータモデル500はノード間のエッジを定義することができ、「sellersite」キー520、「sellerPhone」キー522、「sellerEmail」キー524、「sellerName」キー526、「sellerListing」キー528、「registrantPhone/adminPhone/techPhone」キー532、「registrantEmail/adminEmail/techEmail」キー534、「registrantAddress」キー536、「registrar/registrant」キー538、「domainIPaddress」キー540、および「domainNameServer」キー542などの、ノードに関連付けられたキーを含むことができる。
【0065】
図6は、データベース145に対して定義されたグラフデータモデル、および連結成分のアルゴリズムの実行に基づいて、データベース145内のデータに対してエンジン100により生成されるグラフ600の簡単な例を示す。図6に示すように、グラフ600はサブグラフ610および650を含む。サブグラフ610および650は、ネットワーク環境において、エンジン100を実行することによって検出されるエンティティのネットワークごとに、別個にネットワークを定義する。サブグラフ610は、ノード612、614、および616によって表される3つのエンティティである「Seller1」、「Seller2」、および「Seller3」を含むことができる。ノード612、614、および616は、電話番号および物理アドレスを表す介在ノード618および620に基づいて、サブグラフ610内で相互に接続されている。この接続により、Seller1とSeller3は電話番号を表す共通鍵を含み、Seller1とSeller2は物理アドレスを表す共通鍵を含んでいることがわかる。これらの共通鍵を利用して、エンジン100は、Seller1、Seller2、およびSeller3が同じエンティティを表していること、Seller1、Seller2、およびSeller3に関連付けられるネットワーク内のノードが互いにリンクされていること、を解決する。一方、サブグラフ650は、ノード652によって表される単一のエンティティ「Seller5」、を含むエンティティのネットワークを表す。図6に示すように、ノード652は、グラフ600内のその他の「seller」ノードと接続されていない。
【0066】
図7は、一実施形態におけるデータベース145内の、ドキュメントのリスト702とそれぞれに対応するキーとを顧客アカウントごとに示すグラフィカルユーザーインターフェイス700を示す。リスト702は、例えば収集に基づいて、日々のレビューに利用可能なすべてのリストに対応することができる。図7に示すように、リストは、「title」列704、「cluster connection」列706、「URL」列708、「Domain」列710、「Hosting status」列712、「Registrar」列714、「Registrant Name」列716、および「First Detected」列718を含む。「title」列704は、データソースから収集されたネットワークコンテンツのタイトルを含む。例示的な実施形態では、タイトルをウェブページまたはウェブページのソースコードから抽出することができる。「cluster connection」列706は、ドキュメントのキーを含むサブグラフ内に存在する接続の数を特定する。「URL」列708は、データソースから収集されたネットワークコンテンツのURLアドレスに対応することができる。「Domain」列710は、データソースから収集されたネットワークコンテンツのURLアドレスに対応することができる。「Hosting Status」列712は、ドメインがアクティブであるか非アクティブであるかを指定することができる。「Registrar」列714は、ドメインを登録するレジストラを指定することができる。「Registrant Name」列716は、ドメインをレジストラに登録したエンティティを指定することができる。「First Detected」列718は、エンジンがデータソースからコンテンツを最初に特定した日付を指定することができる。
【0067】
グラフィカルユーザーインターフェイス700との対話例では、ユーザは「cluster connection」列706から数字を選択して、クラスタのサマリを閲覧することができる。一例として、ユーザはリストの4行目に関連付けられている数字720を選択できる。数字の選択に応じて、グラフィカルユーザーインターフェイス700は、クラスタのサマリを表示する領域をレンダリングすることができる。
【0068】
グラフィカルユーザーインターフェイス700は、一つ以上の措置または機能を容易にするための、選択可能オプションを含むこともできる。オプションには、「Detect」オプション730、「Review」オプション732、「Enforce」オプション734、「Report」オプション736、および「Cluster Browser」オプション738を含むことができる。グラフィカルユーザーインターフェイスにおいてリスト702がまだレンダリングされていない場合にDetectオプション730が選択されると、エンジン100は、閲覧またはレビューするドキュメントのリスト702へのナビゲートを行うことができる。Reviewオプション732の選択に応じて、エンジン100は、リストを形成する収集データに含まれる情報と関連付けられるドキュメントとファイルをユーザがレビューすることを可能にする、グラフィカルユーザーインターフェイスへのナビゲートを行うことができる。また、リストは、ユーザがドキュメントを正当または不正としてタグ付けすることまたはタグを付け直すことを可能にする。Enforceオプション734の選択に応じて、エンジン100は、詐欺的であると特定された販売者、リスト、ドメインのうち一つ以上に対して強制措置を開始することができ、および/または同時に不正なエンティティのネットワークに対して措置を開始することができる。Reportオプション736の選択に応じて、エンジン100は、統計を含むドキュメントと関連付けられる一つ以上のレポート、および/または不正行為や不正なエンティティおよび/または不正なエンティティのネットワークに対する削除措置などに関連付けられる一つ以上のステータスを生成することができる。Cluster Browserオプション738の選択に応じて、エンジンは、関連する、または繋がりのあるノードのクラスタを含むネットワークグラフまたはサブグラフをレンダリングできるクラスタブラウザを提供する、グラフィカルユーザーインターフェイスへのナビゲートを行うことができる。また、関連するまたは繋がりのあるノードは、一つ以上のエンティティのネットワークを形成する。
【0069】
図8は、図7でユーザがクラスタ数720を選択したことに応じて、クラスタのサマリを示す領域800を含むグラフィカルユーザーインターフェイス700を示す。図8に示すように、領域800は、クラスタに含まれるエンティティの量802、不良率(または不正率)804、クラスタに含まれるエンティティの種類806、数量808、クラスタに含まれるコンテンツの種類810、コンテンツの不良率(または不正率)812、および、クラスタ内のコンテンツのタイプの量814など、選択されたクラスタに関する情報を含む。領域800は、「view cluster」オプション816を含むこともできる。ユーザーは、「view cluster」オプション816を選択して、マップまたはグラフ内のクラスタの視覚化を容易にするクラスタブラウザをレンダリングすることができる。
【0070】
図9は、図8に示す領域800の「クラスタ表示」オプション816の選択に応じてグラフ910の視覚化をレンダリングできるクラスタブラウザを示すグラフィカルユーザーインターフェイス900である。図9に示されるように、グラフ902は、ノード904およびエッジ906を有し、ノード904は、ノードの種類、例えば、電話番号、電子メールアドレス、物理アドレス、ドメイン名などを視覚的に示すアイコンを含んでいる。クラスタブラウザは、エンティティタイプ912および項目タイプ914の選択可能なオプションを含む領域910を含むこともできる。クラスタブラウザ内から、ユーザーはノード(販売者名、個人を特定できる情報、登録者情報など)を検索できる。クラスタクラスタブラウザ選択グラフィカルユーザーインターフェイスェイス選択したオプションのグリッドビューに移動することができクラスタブラウザザユーグラフィカルユーザーインターフェイスRL、リスト、または投稿)914を選択して、選択した項目タイプに対応するクラスタ内の項目のグリッドビューを表示することができる。
【0071】
図10は、オプション912および/または914のうちの一つの選択に応じたグリッドビューを示すグラフィカルユーザーインターフェイス1000である。図10に示されるように、グラフィカルユーザーインターフェイス1000は、顧客アカウント用のデータベース145の一実施形態におけるドキュメントおよびそれらのそれぞれのキーのリスト1002を含んでいる。リスト1002は、(図7と比較して)本明細書で説明する決定論的処理と確率論的処理の両方を使用して、ネットワークグラフで検出された特定のクラスタ/サブグラフに関連するリストの絞り込まれた選択に対応することができる。図10に示すように、リストは、「タイトル」列704、「クラスタ接続」列706、「URL」列708、「ドメイン」列710、「ホスティングステータス」列712、「レジストラ」列714、本明細書で説明するように、「登録者名」列716、および「最初に検出された」列718を含んでいる。
【0072】
エンジン100によって開始される単一のアクションでこれらのアイテムを一度に削除するために、グラフィカルユーザーインターフェイス1000から、ユーザーはリスト内のアイテムの一部またはすべてに対して、クラスタとして削除アクションを開始することができる。
【0073】
図11は、本開示の実施形態に従って実装される不正コンテンツ検出エンジンを利用してアイテム識別子を解析し分類するための例示的な方法1100である。動作1102で、不正コンテンツ検出エンジン(すなわち、エンジン100)は、アカウントごとに一つ以上のデータソースに対してコンテンツ検索を実行する。動作1104では、コンテンツ検索に応じて検索結果が得られる。動作1106では、不正コンテンツ検出エンジンは検索結果からコンテンツおよび情報を抽出する。
【0074】
動作1108では、各固有の検索結果についてデータベース(例えば、データベース135)内にレコードが作成され、検索結果から抽出されたコンテンツおよび情報が、レコードのデータフィールドにデータとして保存される。動作1110では、エンジン100は、レコード(および対応する検索結果)が正当であるか有害であるかを特定するためにレコードにタグを追加する。動作1112では、グラフデータベース(例えば、データベース145)に対してグラフデータモデルが定義され(ノードおよびエッジコレクションを含む)、データベース内のレコードがグラフデータベースにコピーされ、そこでレコードがドキュメントに変換され、レコード内のデータフィールドは、本明細書で説明されているようにキーに変換される。動作1114では、顧客アカウントからのドキュメントを含むグラフ上で一つ以上のエンティティ解決アルゴリズムが実行され、ノード間のエッジを特定し、かつ/または別個のエンティティのネットワークに対応するサブグラフ/クラスタを定義する。一例として、接続コンポーネントのPregelアルゴリズムを実行できる。場合によっては、単一の顧客アカウントに含まれる別個のサブグラフ/クラスタを特定することができる。ただし、場合によっては、ある顧客アカウントから別の顧客アカウントへの境界を越えた、別個のクラスタ/サブグラフが特定されることがある。これにより、エンティティのネットワークのサイズと範囲が単一の顧客アカウントを超えて拡大される。ステップ1116では、特定されたエンティティのネットワークを利用して、不正なエンティティのネットワークが特定される。ステップ1118では、顧客アカウント間の境界を越える不正なエンティティのネットワークについて、ネットワークマップ/グラフ内の情報を匿名化および/または難読化するためにエンジンが実行され、および/またはグラフのノードおよび/または、機密または個人の顧客情報を保存するために、エッジを省略または変更することができる。ステップ1120では、本明細書で説明するように、1つまたは複数のグラフィカルユーザーインターフェイスをクライアントアカウントのユーザにレンダリングすることができる。
【0075】
例示的なフローチャートは、説明を目的として本明細書に提供されており、方法の非限定的な例である。当業者であれば、例示的な方法が、例示的なフローチャートに示されるものよりも多いまたは少ないステップを含む場合があり、例示的なフローチャートのステップが、例示的なフローチャートに示される順序とは異なる順序で実行され得ることを認識することが見込まれる。
【0076】
本明細書に開示される主題の特定の実施形態の上記の説明は、例示および説明の目的で提示されたものであり、本明細書に記載される主題の範囲を限定することを意図するものではない。他のさまざまな実施形態、修正および応用が、前述の説明および添付の図面から当業者には明らかとなることが十分に企図される。したがって、そのような他の実施形態、修正、および応用は、添付の特許請求の範囲に含まれることが意図されている。 さらに、当業者であれば、本明細書に記載した実施形態、変形例、および応用例が特定の環境に関連したものであり、本明細書に記載した主題がそれに限定されるものではなく、さまざまな環境に有益に適用できることを理解することが見込まれる。他にもさまざまな方法、環境、目的がある。したがって、以下に記載される特許請求の範囲は、本明細書に開示される新規な特徴および技術の全範囲および精神を考慮して解釈されるべきである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
【国際調査報告】