(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-10
(45)【発行日】2024-04-18
(54)【発明の名称】オブジェクト検出モデルを組み合わせるための方法、デバイス、およびシステム
(51)【国際特許分類】
G06V 10/82 20220101AFI20240411BHJP
G06T 7/00 20170101ALI20240411BHJP
G06V 10/762 20220101ALI20240411BHJP
【FI】
G06V10/82
G06T7/00 350C
G06V10/762
(21)【出願番号】P 2020562695
(86)(22)【出願日】2019-12-13
(86)【国際出願番号】 US2019066388
(87)【国際公開番号】W WO2021118606
(87)【国際公開日】2021-06-17
【審査請求日】2022-11-30
(32)【優先日】2019-12-12
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】519077355
【氏名又は名称】ベイド ユーエスエー インコーポレイテッド
【氏名又は名称原語表記】Vade USA, Inc.
(74)【代理人】
【識別番号】100115738
【氏名又は名称】鷲頭 光宏
(74)【代理人】
【識別番号】100121681
【氏名又は名称】緒方 和文
(72)【発明者】
【氏名】レジーナ マフディー
(72)【発明者】
【氏名】マイヤー マキシム マーク
(72)【発明者】
【氏名】グタール セバスチャン
【審査官】高野 美帆子
(56)【参考文献】
【文献】特開2014-059875(JP,A)
【文献】“Logo Recognition by Combining Deep Convolutional Models in a Parallel Structure”,2019 4th International Conference on Pattern Recognition and Image Analysis (IPRIA),2019年,Karimi, Mohammad、Behrad, Alireza,p.216-221,DOI: 10.1109/PRIA.2019.8786032
(58)【調査した分野】(Int.Cl.,DB名)
G06V 10/82
G06T 7/00
G06V 10/762
(57)【特許請求の範囲】
【請求項1】
グラフィックレンダリングにおいてロゴを検出するコンピュータ実施方法であって、
第1のトレーニング済みオブジェクト検出器を使用して前記グラフィックレンダリングにおいてロゴを検出し、かつ検出の第1のリストを出力することと、
第2のトレーニング済みオブジェクト検出器を使用して前記グラフィックレンダリングにおいてロゴを検出し、かつ検出の第2のリストを出力することと、
第1の事前性能ベースフィルターおよび第2の事前性能ベースフィルターを使用して、受信した前記検出の第1のリストおよび前記検出の第2のリストを、維持される検出の第1のグループ、廃棄される検出の第2のグループ、および検出の第3のグループにフィルタリングすることと、
ある場合、前記検出の第3のグループにおける検出を、同じクラスのものであり、かつ一般的に電子画像内に共同設置される検出を含む少なくとも1つのクラスターにおいてクラスター化することと、
クラスタースコアをそれぞれのクラスターに割り当てることと、
前記グラフィックレンダリングにおけるロゴの検出のセットを出力することであって、前記セットは前記第1のグループにおける検出、および割り当てられたクラスタースコアが対応する閾値より大きいクラスターのそれぞれからの検出を含む、ロゴの検出のセットを出力することと、を含む、コンピュータ実施方法。
【請求項2】
前記第1のトレーニング済みオブジェクト検出器および前記第2のトレーニング済みオブジェクト検出器のうちの少なくとも1つは、畳み込みニューラルネットワーク(CNN)ベース検出器を含む、請求項1に記載のコンピュータ実施方法。
【請求項3】
前記CNNベース検出器は、SSD ResNet-50およびSSD VGG-16のうちの1つを含む、請求項2に記載のコンピュータ実施方法。
【請求項4】
前記検出の第1~第3のグループにおけるそれぞれの検出は、予測クラス、クラス信頼度スコア、および前記グラフィックレンダリングにおける検出済みロゴの境界ボックスの座標を含むタプルを含む、請求項1に記載のコンピュータ実施方法。
【請求項5】
フィルタリングは、第1の注釈付きオブジェクト検出データセットにおいて前記第1のトレーニング済みオブジェクト検出器をテストすることによって前記第1の事前性能ベースフィルターを生成することと、第2の注釈付きオブジェクト検出データセットにおいて前記第2のトレーニング済みオブジェクト検出器をテストすることによって前記第2の事前性能ベースフィルターを生成することと、をさらに含む、請求項1に記載のコンピュータ実施方法。
【請求項6】
前記第1の注釈付きオブジェクト検出データセットおよび前記第2の注釈付きオブジェクト検出データセットは同じである、請求項5に記載のコンピュータ実施方法。
【請求項7】
フィルタリングは、前記第1のトレーニング済みオブジェクト検出器、および前記検出の第1のリストにおけるそれぞれの検出と関連付けられた第1の信頼度スコアに固有の第1の事前知識値、および、前記第2のトレーニング済みオブジェクト検出器、および前記検出の第2のリストにおけるそれぞれの検出と関連付けられた第2の信頼度スコアに固有の第2の事前知識値に基づく、請求項1に記載のコンピュータ実施方法。
【請求項8】
前記維持される検出の第1のグループは、ロゴの検出の出力された前記セットに含まれる検出を含み、前記廃棄される検出の第2のグループは、廃棄され、かつ前記ロゴの検出の出力されたセットに含まれない検出を含み、前記第3のグループは、検出が、前記第2のグループに廃棄されるまたは前記第1のグループに含まれるかどうかを判断するためのさらなる処理を必要とする検出を含む、請求項1に記載のコンピュータ実施方法。
【請求項9】
一般的に前記電子画像内に共同設置される前記検出の第3のグループにおける検出をクラスター化することは、前記電子画像内に重複する境界ボックスを有する検出をクラスター化することを含む、請求項1に記載のコンピュータ実施方法。
【請求項10】
前記電子画像内で重複する境界ボックスを有する検出をクラスター化することは、Intersection Over Union(IoU)が重複閾値より大きい境界ボックスを有する検出をクラスター化することを含む、請求項9に記載のコンピュータ実施方法。
【請求項11】
クラスタースコアをそれぞれのクラスターに割り当てることは、前記クラスタースコアが算出されている前記クラスターにおける検出
の信頼度スコアに基づいて前記クラスタースコアを算出することを含む、請求項1に記載のコンピュータ実施方法。
【請求項12】
前記クラスタースコアを算出することはアグリゲーション関数を使用することを含む、請求項11に記載のコンピュータ実施方法。
【請求項13】
それぞれのクラスターについて、前記クラスタースコアは前記クラスターにおける前記検出の前記信頼度スコアの平均を含む、請求項12に記載のコンピュータ実施方法。
【請求項14】
それぞれの閾値は、前記第1のトレーニング済みオブジェクト検出器および前記第2のトレーニング済みオブジェクト検出器の1つまたは複数のセットに固有である、請求項1に記載のコンピュータ実施方法。
【請求項15】
注釈付きオブジェクト検出データセットに対してハイパーパラメータ最適化方法を使用してそれぞれの閾値を判断することをさらに含む、請求項14に記載のコンピュータ実施方法。
【請求項16】
前記ハイパーパラメータ最適化方法はランダム検索方法を含む、請求項15に記載のコンピュータ実施方法。
【請求項17】
前記クラスターを表す1つの検出に関連している関係するクラスターとして所定のクラスター閾値より大きいクラスタースコアを有するそれぞれのクラスターを示すことをさらに含む、請求項1に記載のコンピュータ実施方法。
【請求項18】
前記クラスターを表す前記1つの検出は前記クラスターに含有される前記検出のうちの1つである、請求項17に記載のコンピュータ実施方法。
【請求項19】
前記関係するクラスターを前記維持される検出の第1のグループに追加することをさらに含む、請求項17に記載のコンピュータ実施方法。
【請求項20】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに結合される少なくとも1つのデータストレージデバイスと、
前記少なくとも1つのプロセッサおよびコンピュータネットワークに結合されるネットワークインターフェースと、
グラフィックレンダリングにおいてロゴを検出するために前記少なくとも1つのプロセッサによって生成される複数のプロセスと、を含む、コンピューティングデバイスであって、
前記プロセスは、
第1のトレーニング済みオブジェクト検出器を使用して前記グラフィックレンダリングにおいてロゴを検出し、かつ検出の第1のリストを出力することと、
第2のトレーニング済みオブジェクト検出器を使用して前記グラフィックレンダリングにおいてロゴを検出し、かつ検出の第2のリストを出力することと、
第1の事前性能ベースフィルターおよび第2の事前性能ベースフィルターを使用して、受信した前記検出の第1のリストおよび前記検出の第2のリストを、維持される検出の第1のグループ、廃棄される検出の第2のグループ、および検出の第3のグループにフィルタリングすることと、
ある場合、前記検出の第3のグループにおける検出を、同じクラスのものであり、かつ一般的
に電子画像内に共同設置される検出を含む少なくとも1つのクラスターにおいてクラスター化することと、
クラスタースコアをそれぞれのクラスターに割り当てることと、
前記グラフィックレンダリングにおけるロゴの検出のセットを出力することであって、前記セットは前記第1のグループにおける前記検出、および割り当てられたクラスタースコアが対応する閾値より大きい前記クラスターのそれぞれからの検出を含む、ロゴの検出のセットを出力することと、を行うための処理ロジックを含む、コンピューティングデバイス。
【請求項21】
前記第1のトレーニング済みオブジェクト検出器および前記第2のトレーニング済みオブジェクト検出器のうちの少なくとも1つは、畳み込みニューラルネットワーク(CNN)ベース検出器を含む、請求項20に記載のコンピューティングデバイス。
【請求項22】
前記CNNベース検出器は、SSD ResNet-50およびSSD VGG-16のうちの1つを含む、請求項21に記載のコンピューティングデバイス。
【請求項23】
前記検出の第1~第3のグループにおけるそれぞれの検出は、予測クラス、クラス信頼度スコア、および前記グラフィックレンダリングにおける検出済みロゴの境界ボックスの座標を含むタプルを含む、請求項20に記載のコンピューティングデバイス。
【請求項24】
フィルタリングのための前記処理ロジックは、第1の注釈付きオブジェクト検出データセットにおいて前記第1のトレーニング済みオブジェクト検出器をテストすることによって前記第1の事前性能ベースフィルターを生成することと、第2の注釈付きオブジェクト検出データセットにおいて前記第2のトレーニング済みオブジェクト検出器をテストすることによって前記第2の事前性能ベースフィルターを生成することと、を行うための処理ロジックをさらに含む、請求項20に記載のコンピューティングデバイス。
【請求項25】
前記第1の注釈付きオブジェクト検出データセットおよび前記第2の注釈付きオブジェクト検出データセットは同じである、請求項24に記載のコンピューティングデバイス。
【請求項26】
フィルタリングは、前記第1のトレーニング済みオブジェクト検出器、および前記検出の第1のリストにおけるそれぞれの検出と関連付けられた第1の信頼度スコアに固有の第1の事前知識値、および、前記第2のトレーニング済みオブジェクト検出器、および前記検出の第2のリストにおけるそれぞれの検出と関連付けられた第2の信頼度スコアに固有の第2の事前知識値に基づく、請求項20に記載のコンピューティングデバイス。
【請求項27】
前記維持される検出の第1のグループは、ロゴの検出の出力された前記セットに含まれる検出を含み、前記廃棄される検出の第2のグループは、廃棄され、かつ前記ロゴの検出の出力されたセットに含まれない検出を含み、前記第3のグループは、検出が、前記第2のグループに廃棄されるまたは前記第1のグループに含まれるかどうかを判断するためのさらなる処理を必要とする検出を含む、請求項20に記載のコンピューティングデバイス。
【請求項28】
一般的に前記電子画像内に共同設置される前記検出の第3のグループにおける検出をクラスター化するための前記処理ロジックは、前記電子画像内に重複する境界ボックスを有する検出をクラスター化するための処理ロジックを含む、請求項20に記載のコンピューティングデバイス。
【請求項29】
前記電子画像内で重複する境界ボックスを有する検出をクラスター化するための前記処理ロジックは、Intersection Over Union(IoU)が重複閾値より大きい境界ボックスを有する検出をクラスター化するための処理ロジックを含む、請求項28に記載のコンピューティングデバイス。
【請求項30】
クラスタースコアをそれぞれのクラスターに割り当てるための前記処理ロジックは、前記クラスタースコアが算出されている前記クラスターにおける前記検出
の信頼度スコアに基づいて前記クラスタースコアを算出するための処理ロジックを含む、請求項20に記載のコンピューティングデバイス。
【請求項31】
前記クラスタースコアを算出するための前記処理ロジックはアグリゲーション関数を使用するための処理ロジックを含む、請求項30に記載のコンピューティングデバイス。
【請求項32】
それぞれのクラスターについて、前記クラスタースコアは前記クラスターにおける前記検出の前記信頼度スコアの平均を含む、請求項31に記載のコンピューティングデバイス。
【請求項33】
それぞれの閾値は、前記第1のトレーニング済みオブジェクト検出器および前記第2のトレーニング済みオブジェクト検出器の1つまたは複数のセットに固有である、請求項20に記載のコンピューティングデバイス。
【請求項34】
注釈付きオブジェクト検出データセットに対してハイパーパラメータ最適化方法を使用してそれぞれの閾値を判断するための処理ロジックをさらに含む、請求項33に記載のコンピューティングデバイス。
【請求項35】
前記ハイパーパラメータ最適化方法はランダム検索方法を含む、請求項34に記載のコンピューティングデバイス。
【請求項36】
前記クラスターを表す1つの検出に関連している関係するクラスターとして所定のクラスター閾値より大きいクラスタースコアを有するそれぞれのクラスターを示すための処理ロジックをさらに含む、請求項20に記載のコンピューティングデバイス。
【請求項37】
前記クラスターを表す前記1つの検出は前記クラスターに含有される前記検出のうちの1つである、請求項36に記載のコンピューティングデバイス。
【請求項38】
前記関係するクラスターを前記維持される検出の第1のグループに追加するための処理ロジックをさらに含む、請求項36に記載のコンピューティングデバイス。
【発明の詳細な説明】
【背景技術】
【0001】
フィッシング攻撃には一般的に、合法的なブランドウェブページを偽装する詐欺的なウェブページを使用して機密情報を盗もうとする攻撃者が関与している。そのように、合法的なページに存在する偽装したブランドの1つまたは複数のロゴを含むこれらの詐欺的なウェブページは、合法的なウェブページを模倣している。フィッシャーの作業成果物の品質が向上しているため、詐欺的なウェブページを合法的なウェブページから検出することはますます困難になっている。
【図面の簡単な説明】
【0002】
【
図1】一実施形態による、オブジェクト検出器の入力および出力を示す表である。
【0003】
【
図2】1つの実施形態による、グラフィックレンダリングにおいてロゴを検出するコンピュータ実施方法のブロック図である。
【0004】
【
図3】予測時間におけるフィルタリングを示す、1つの実施形態による、グラフィックレンダリングにおいてロゴを検出するコンピュータ実施方法のさらなる態様のブロック図である。
【0005】
【
図4A】1つの実施形態による、予測時間におけるフィルタリングの態様を示す、グラフィックレンダリングにおいてロゴを検出するコンピュータ実施方法のさらなる態様のブロック図である。
【0006】
【
図4B】1つの実施形態による、予測時間におけるフィルタリングのさらなる態様を示す、グラフィックレンダリングにおいてロゴを検出するコンピュータ実施方法のさらなる態様のブロック図である。
【0007】
【
図5】1つの実施形態による、例示のAOL(登録商標)ログインページ上の検出クラスターの視覚化を示す図である。
【0008】
【
図6】1つの実施形態による、フィッシングウェブページのグラフィックレンダリングにおけるロゴ検出の本発明のコンピュータ実施方法の態様を示すブロック図である。
【0009】
【
図7】フィッシングウェブページのグラフィックレンダリングを示す図である。
【0010】
【
図8】一実施形態、および一実施形態に従って構成されるコンピューティングデバイスによるコンピュータ実施方法を実行するのに適したコンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【0011】
実施形態は、オブジェクト検出モデルを組み合わせるためのコンピュータ実施方法およびシステムに関し、より具体的には、入力画像が与えられたとすると、より良く組み合わせられた検出を出力するためのロゴ検出モデルの組み合わせに関する。これらのコンピュータ実施方法およびシステムは、画像におけるブランドロゴを検出し、かつ合法的なブランドウェブページを偽装する詐欺的なウェブページを使用して攻撃者が機密情報を盗もうとするフィッシング攻撃の検出および特徴付けに役立つように使用することができる。合法的なページに存在する偽装したブランドの1つまたは複数のロゴを含むこれらの詐欺的なウェブページは、合法的なウェブページを模倣している。ウェブページ、電子メール、または任意の他の種類の電子文書を表す画像にロゴ検出を適用することによって、フィッシング試行のより良い特徴付けを引き出すことが可能であり、フィッシング対象ブランドは向上した確度で検出可能である。本明細書で使用されるような「ロゴ」という用語は、この範囲内で、一般的な識別および認識を支援しかつ促進するために使用される任意の図形標識、エンブレム、または記号を含み、抽象設計または具象設計のものであってよい、または、ワードマークにあるようにロゴが表す名称のテキストを含んでよい。用語「ロゴ」はまた、本明細書で言及されるオブジェクト検出器がほとんどいずれの種類の注釈付きトレーニング画像によってもトレーニング可能であるため、ほぼいかなるものの、ほぼいかなる図形表現(およびこれらのわずかな変形)をも含む。
【0012】
オブジェクト検出は、推定器(ここではオブジェクト検出器という)が、注釈付き画像が与えられたとすると、画像上で検出されるそれぞれのオブジェクトが、オブジェクトクラス(典型的には、オブジェクトタイプ)、信頼度スコア(典型的には、[0、1]の範囲の浮動小数)、および画像におけるこの位置(例えば、画素の空間における境界ボックスの座標)に関連しているように、新しい画像上のオブジェクトを検出するように学習する機械学習タスクである。
【0013】
多大な研究努力によって、特定の画像処理タスクに対する単一の推定器の精度が改善されている。同様に、複数の推定器が性能を改善するために組み合わせ可能であるやり方を判断するための研究が行われており、それによって、「ランダムフォレスト」など、決定木の組み合わせである新しいモデル「群」がもたらされる。実施形態は従って、オブジェクト検出の文脈でいくつかの推定器の予測を組み合わせるためのコンピュータ実施方法およびシステムに関する。
【0014】
推定器の組み合わせおよびロゴ検出
ロゴ検出はオブジェクト検出の特定の事例である。コンピュータビジョンにおけるオブジェクト検出は、分類および回帰両方の問題である。実際は、入力画像が与えられるとすると、この目的は、検出を出力すること、すなわち、対象オブジェクトおよびこれらの対応するクラスを含有する境界ボックスの位置を予測することである。検出は、注釈方法およびアルゴリズムの損失関数によって引き起こされる制約に基づく。検出の境界ボックスは、矩形であってよく、1つのオブジェクトのみを含有してよく、含有するオブジェクトと同様のサイズのものであってよい。オブジェクト検出アルゴリズムの入力および出力は以下の表に詳述される。
【表1】
【0015】
同様に、他のコンピュータビジョンタスクに対して、オブジェクト検出タスクは一般的に、畳み込みニューラルネットワーク(CNN)に頼っている。CNNは、最も一般的には、視覚イメージの解析に適用されるディープニューラルネットワークのクラスである。例えば、CNNは、ResNet-50およびVGG-16アルゴリズムのSSDビジョンを含んでよい。1つの実施形態によると、CNNはロゴを検出するために使用可能である。Pixm社は、例えば、この製品パイプラインにおいて、疑わしいウェブサイトまたは電子メールにフラグを立てるためにロゴおよびアイコンを検出するためのCNNを含む。この分野における研究はまた、進行中であり、CNNに基づく複数の方法は、オブジェクト検出性能を改善するために近年提案されている。
【0016】
所与のタスクに関する性能を改善するための機械学習における周知のアプローチは、種々の推定器(例えば、SVM、CNN)を組み合わせることである。実際は、推定器を組み合わせることによって汎化誤差を低減することが可能である。経験的に、推定器群は、推定器の間に著しい多様性がある時に(すなわち、推定器誤差が相互に関連していない時に)より良い結果を生み出す傾向がある。推定器間の多様性は、トレーニングデータ(例えば、データ増強、バギング)、推定器アルゴリズム(例えば、SVM、ロジスティック回帰)、または、ニューラルネットワークによるアーキテクチャおよびトレーニングパラメータなどのさまざまな手段を使用して高めることが可能である。例えば、多様なCNNのセットを作成して、これらを組み合わせ、かつオブジェクトを精確に分類するための提案が行われている。
【0017】
推定器の多様性の他に、組み合わせ方法は推定器群の性能にも影響を与える。投票、デンプスター・シェーファー理論、および他の機械学習アルゴリズムなどの推定器を組み合わせるための種々の方法が提案されている。ブースティングなどの他の方法は、推定器の多様性および組み合わせ両方に取り組んでいる。
【0018】
それぞれの推定器(オブジェクト検出器)が、それぞれがこれら自体の位置を有するいくつかの候補検出を行うことができるオブジェクト検出の文脈において(表1-オブジェクト検出器の入力および出力の定義)、種々のオブジェクト検出器からの検出間の重複を利用する特定の組み合わせ方法が提案されている。例えば、機械学習アルゴリズムを使用する検出は、それぞれの画像に対する候補検出をランク付けするために組み合わせられてよい。ランク付けアルゴリズムの特徴は、それぞれの検出がその他と重複する程度、およびオブジェクト間の関連の可能性に関する情報を含む。低ランク検出の重複は廃棄される。
【0019】
検出をクラスター化するための他の方法は重複に基づき、スコアはそれぞれのクラスターに対して計算される。クラスターのスコアを計算するために、このような方法によって、例えば、デンプスター・シェーファー理論を使用してクラスター内の検出によって与えられるスコアを組み合わせる。それぞれのクラスターにスコアが割り当てられると、これらはフィルタリングされてよく、ある基準(例えば、非最大抑制)に従って冗長な検出は除去されてよい。
【0020】
1つの実施形態は、組み合わせた検出の最適なセットを出力するために連続するフィルタリング演算による複数のオブジェクト検出器からの検出を組み合わせるように構成される。結果として生じた組み合わせた検出のセットは、個々に採用されるオブジェクト検出器によって出力されるいずれのセットよりも良好に行われる。実際は、本発明のコンピュータ実施方法の1つの実施形態は、検出の最適なセットが第2のステップの終わりに生成されるように、2つのフィルタリングステップを含んでよい。これらのステップは、事前性能ベースフィルタリングの第1のステップ(ここではステップ1)、およびスコア融合フィルタリングの第2のステップ(ここではステップ2)を含む。
【0021】
図2は、オブジェクト検出モデルを組み合わせるためのコンピュータ実施方法2000の一実施形態のフローチャートである。ここに示されるように、ブロック2002は、参照符号2004のnのトレーニング済みオブジェクト検出器P
i…P
nの群(例えば、複数)への入力として提供される入力画像Im 2002を求める。nのオブジェクト検出器からの各検出は、さらにまた、2006で示される事前性能ベースフィルタリングを使用する前述のステップ1においてフィルタリングされてよい。1つの実施形態によると、事前性能フィルタリングの1つの結果は、2008で示されるように、検出の1つまたは複数がステップ1の後に廃棄されることを含んでよい。事前性能ベースフィルタリングの1つまたは複数の結果は、ステップ2におけるいずれのさらなるフィルタリングもなく、2010で示されるように、1つまたは複数の検出がステップ1の後に維持されることを含んでよい。1つの実施形態によると、ステップ1の事前性能ベースフィルタリングの結果として、2008で即時に廃棄もされず、2010で維持もされない残りの検出は、2012で示されるように、ステップ2のスコア融合フィルタリングに入力されてよい。ステップ2におけるスコア融合フィルタリング2012後に残るこれらの検出はさらにまた、2010において維持される検出に追加されてよく、かつ、2014に示されるように、最適な組み合わせ済み検出のセットO
Imに寄与し得る。2008に示されるように、その他は廃棄されたセットに追加される。
【0022】
【0023】
【0024】
【0025】
事前性能ベースフィルタリング
1つの実施形態によると、
図2における2006に示されるステップ1は、それぞれのオブジェクト検出器の性能、およびこれらの各検出の相互の重複に基づいて入力画像Imに対してなされる検出をフィルタリングすることを含んでよい。事前性能ベースフィルタリングにおいて検出をフィルタリングするために使用される閾値およびパラメータは、以下を含むことができる。
【0026】
【0027】
ここで、重複基準を通してフィルタリングする境界ボックスについて説明し、また、事前知識データベース3010がどのようにビルト可能であるかについてのさらなる詳細が示される。
【0028】
重複ベース規則
検出フィルタリングの第1の段階の目的は、冗長なまたは不正確な検出を、維持される検出セット2010に追加されている検出、すなわち、正確であることが予想される検出(繰り返しになるが、このセットは最初空である)との重複に基づいて廃棄することである。
【0029】
(cls1、s1、b1)によって定められる検出D1は、この境界ボックスが、foverlap(b1、b2)>overlap*になるように(維持される検出セット2010に存在する)正確であることが予想される(cls2、s2、b2)によって定められる検出D2の境界ボックスと大幅に重複する場合、および2つの検出が同じオブジェクトクラス、すなわち、cls1=cls2を予測する場合、冗長である。このような条件下では、D1およびD2は同じオブジェクトを検出する可能性が高い。
【0030】
(cls1、s1、b1)として定められる検出D1は、この境界ボックスが、foverlap(b1、b2)>overlap*になるように(維持される検出セット2010に存在する)正確であることが予想される(cls2、s2、b2)によって定められる検出D2の境界ボックスと大幅に重複する場合、および2つの検出が異なるオブジェクトクラス、すなわち、cls1≠cls2を認識する場合、不正確である。実際は、この場合、D1およびD2は、画像上の同じ空間位置におけるオブジェクトを検出しているが、オブジェクトクラスの予測が異なっている。D2が正確である(維持される検出セット2010に既に存在する)ことが予想されるため、D1は、廃棄されなければならない、例えば、廃棄される検出ストア2008に追加されなければならない。重複メトリックfoverlap(例えば、IoU)および重複閾値overlap*(例えば、IoU=0.5)は、専門家によって判断されてよい。とりわけ、foverlapが選定されると、重複閾値overlap*は、例えば、overlap*の値に対する自明な反復プロセスを使用して判断されてよい。
【0031】
事前知識構成
図3における事前知識データベース3010をビルトするために、クラス信頼度スコアに応じた検証データセットVに対するそれぞれの検出器P
iの性能が検討される。この画像のセットはグランドトゥルースであるべきである、すなわち、このデータセットVにおけるそれぞれの画像は信頼できる(例えば、専門家によってなされる)注釈を有する。
【0032】
【0033】
【0034】
【0035】
【0036】
【0037】
【0038】
スコア融合フィルタリング
フィルタリングの第2のステップ(すなわち、
図2における2012のステップ2)は、ステップ1の規則、すなわち、ステップ1のフィルタリングされていない検出2006によって維持も廃棄もされなかったフィルタリングされていない検出のセットを入力として受け取る。
【0039】
【0040】
図4Aおよび
図4Bは、入力されたフィルタリングされていない検出が同じ画像Imから生じると考慮する予測時間におけるステップ2の応用を示す。種々の動作は、1つの実施形態による、予測時間でのステップ2のフィルタリング中に行われてよい。
【0041】
第1部:検出をクラスター化する
ステップ1のフィルタリング後に拒否も維持もされなかった検出4002をフィルタリングするために、検出は、
図4Aにおける4004で示されるように、単一のクラスターにおける同じオブジェクトに対応する検出全てをグループ化するためにこれらのクラスおよびこれらの境界ボックスに基づいてクラスター化されてよい。1つの実施形態による、このようなクラスターを出力するように構成される例示のクラスター化アルゴリズムが提示される。他のクラスター化アルゴリズムは本開示の範囲内で利用可能である。検出をクラスター化するために、このアルゴリズムでは類似性マトリックスが計算され、クラスター化方法が適用される。以下の要素が定められる。
【0042】
関数fsimilarity、fcluster、fcleaningはパラメータ設定時間で定められるものとする。最初に、類似性マトリックスMImは、画像Imにおいてステップ1からもたらされるフィルタリングされていない検出のセットに対して類似性メトリックスfsimilarityを使用して計算されてよい。次いで、選定されたクラスター化アルゴリズムfclusterはクラスターC'Imのセットを出力するために適用されてよい。最後に、設定されたC'Imのそれぞれのクラスターに対してfcleaningを適用後、新しく設定されたCImは、CIm4006からのそれぞれのクラスターがそれぞれのオブジェクト検出器からのせいぜい1つの検出を含有するように出力されてよい。
【0043】
第2部:クラスターをスコアリングする
クラスターがもたらされると、4008で
図4Aにおいて示唆されるように、クラスターは、クラスターに存在する検出のみならず、これらの検出を行ったオブジェクト検出器の性能に基づいてスコアリングされてよい。下記は、それぞれのクラスターをスコアリングするように構成される例示のスコアリングアルゴリズムである。本開示の範囲内で、他のアルゴリズムが利用可能である。それぞれのクラスターのスコアを計算するために、以下の関数が定められてよい。
f
aggregateはパラメータ設定時間で定められるものとする。設定されたC
Imのそれぞれのクラスターに対してf
aggregateが適用され、それぞれのクラスターは、クラスターをフィルタリングする動作の前にこのスコアに関連付けられる。
【0044】
第3部:クラスターをフィルタリングする
f
cleaningを適用後、それぞれのクラスターはそれぞれのオブジェクト検出器からせいぜい1つの検出を含有する。クラスターはさらにまた、4012および
図4Bに示されるように、これらのスコア、およびこれらが関連するオブジェクト検出器に基づいてフィルタリングされてよい。
【0045】
【0046】
クラスター構成閾値4022は、パラメータ設定時間で判断されるものとする。例えば、他の要素全てが固定されると、Vにおける組み合わせアルゴリズムは、クラスター構成閾値の異なる値によって数回反復されてよい。定められた性能メトリックに従ってVに対する最高の検出組み合わせを与える値のセットは、予測時間で維持されることになる。1つの実施形態によると、それぞれの閾値は、注釈付きオブジェクト検出データセットに対してハイパーパラメータ最適化方法を使用して判断されてよい。1つの実施形態では、ハイパーパラメータ最適化はランダム検索方法を含んでよい。ランダム検索は、ハイパーパラメータ最適化を行うための方法、すなわち、所与のモデル、性能メトリック、およびテストデータセットに対して、ハイパーパラメータの最適に近い組み合わせを見つけるための方法である。
【0047】
図5を参照して、AOL(登録商標)ログインページの画像Im
aolのなりすましを行おうする例示のフィッシングメッセージを示す、予測時間でフィルタリングするクラスターの一例が以下に示される。この例では、2つのオブジェクト検出器(P={P
1、P
2})が文書上のロゴ検出に対してトレーニングされている事例が考慮されている。
【0048】
オブジェクト検出器からの検出を区別するために、以下のマーキング規約が採用可能である。
・検出器P1からの検出は実線の境界ボックスで表される。
・検出器P2からの検出は点線の境界ボックスで表される。
・クラスターは点線の円で表される。
・検出またはクラスターに対応するテキストは境界ボックスに付随する。
【0049】
【0050】
以下の表では、
図5に示されるクラスター、これらのスコア、これらの構成、および対応する構成スコアが要約されている(これらはVに基づくパラメータ設定時間で固定されている)。
【0051】
【0052】
第4部:検出を選択する
最後に、先のフィルタリング演算の後に維持されるそれぞれのクラスター4024について、そのクラスターからの検出によって予測されるオブジェクトを表す1つの検出が出力可能である。そうするために、下記の関数4026が定められてよい。
【0053】
関数fselect4026はパラメータ設定時間で定められる。fselectは、クラスターをフィルタリングする演算によって返されたそれぞれの維持されるクラスターに対して適用される。fselectを適用後、全ての検出は、フィルタリングされ、すなわち、維持され2010または廃棄され2008、フィルタリングされていない検出は残されていない。維持される検出2010は返され、かつ検出2014の最適なセットを形成する。
【0054】
例示の使用事例
この使用事例では、ロゴ検出を使用して、Universal Resource Locator(URL)走査サービスの文脈でフィッシングURLを検出する。1つの実施形態による
図6を参照されたい。この使用事例では、イベントの時系列は下記になる。
1.スパムボット6001は、6002で示されるように、フィッシングURL:http://phishingdomain.com/index.phpを含有するフィッシングメールを生成する。フィッシングメールの受信者は、6020で示されるように、john.doe@domain.comである。
2.フィッシングメールをjohn.doe@domain.com 6020に送るために、スパムボット6001は、domain.comに関連しているDomain Naming Server Mail exchanger(DNS MX)レコードをルックアップする。DNS MXレコードは、ドメイン名の代わりにメッセージを受けることを担うメール転送エージェント(MTA)6004を指定する。
3.簡易メール転送プロトコル(SMTP)を使用して、スパムボット6001は、ルックアップしたDNS MXにおいて指定されたMTA6004に接続後、フィッシングメールのコンテンツを送る。
4.MTA6004は、電子メールを受信する時、最初にスパムフィルター6006を適用して、スパム、フィッシングなどの迷惑メールを検出しかつブロックする。迷惑メールトラフィックの大部分は通常検出されかつブロックされるが、検出されずかつブロックされない多くの迷惑メールもあり、ステップ1で述べられたフィッシングメールが検出されずかつブロックされないことが考えられる。ブロックされなかった電子メールについて、MTA6004はさらにまた、クリックの時点でエンドユーザを保護するためにURL書き換え機構6008を適用可能であり、フィッシングメールにおけるURLは書き換えられることで、エンドユーザが書き換えられたURLをクリックする時、元のURLを解析することになるURL走査サービス6010を示すようにする。この例では、http://urlscanningservice.comはURL走査サービスを明示し、http://urlscanningservice.com/url/aHR0cDovL3BoaXNoaW5nZG9tYWluLmNvbS9pbmRleC5waHA=は、aHR0cDovL3BoaXNoaW5nZG9tYWluLmNvbS9pbmRleC5waHA=がBase64におけるhttp://phishingdomain.com/index.phpの符号化であるhttp://phishingdomain.com/index.php URLの書き換えである。
5.SMTPを使用して、MTAはさらにまた、電子メールをメール配送エージェント(MDA)6012に送る。
6.MDA6012は、電子メールをメールストア6014に格納する。
7.エンドユーザjohn.doe@domain.com 6020は、メールユーザエージェント(MUA)6016としても既知の、自身のメールクライアントソフトウェアを開始する。MUA6016は、典型的には、POP3またはIMAPプロトコルによってメールストア6014から新しい電子メールをフェッチする。MDA6012は通常、POP3および/またはIMAPサーバの機能を果たす。MUA6016は、書き換えられたフィッシングURLを含有するフィッシングメールをフェッチする。
8.エンドユーザは、フィッシングメールを開き、かつhttp://urlscanningservice.com/url/aHR0cDovL3BoaXNoaW5nZG9tYWluLmNvbS9pbmRleC5waHA=をクリックする。
9.URL走査サービス6010は、aHR0cDovL3BoaXNoaW5nZG9tYWluLmNvbS9pbmRleC5waHA= Base64符号化値を復号する。URL走査サービス6010はさらにまた、http://phishingdomain.com/index.php URLを解析する。この目的のために、URL走査サービス6010は、URLドメインDNS情報、URLドメインWHOIS情報、ウェブページのHTMLコンテンツ、ウェブページのグラフィックレンダリングなど、URLおよび関連ウェブページから特徴を抽出する。URL走査サービスはさらにまた、特徴に対して1つまたはいくつかのアルゴリズムを適用して、URLがフィッシングURLであるかどうかを判断する。このようなアルゴリズムの例は、いくつかある検出技術の中で特に、指紋アルゴリズム、決定木、教師付き学習アルゴリズム(SVMおよびランダムフォレストなど)である。この使用事例では、URL走査サービスが、解析されたURLに関連しているウェブページのグラフィックレンダリングから1つまたはいくつかのロゴを抽出することが考えられる(
図7は、グラフィックレンダリングが2つのPayPal(登録商標)ロゴ7002および1つのBank Of America(登録商標)ロゴ7004を含有するフィッシングウェブページグラフィックレンダリングの一例を示す)。そのように、ウェブページのグラフィックレンダリングは、ウェブページグラフィックレンダラーコンポーネント6018によって行われる。ウェブページのグラフィックレンダリングはその後、URL走査サービス6010によって、一実施形態によるロゴ検出コンポーネント6024のHTTPを介したアプリケーションプログラムインターフェース(API)6022に送られる。
10.ロゴ検出API6022は、ロゴ検出関数6024を表すREST APIである。ロゴ検出関数6024は、本明細書に示されかつ説明されるように、ウェブページのグラフィックレンダリングを解析後、本発明のコンピュータ実施方法の一実施形態を使用して1つまたはいくつかのブランドロゴを抽出する。その結果はURL走査サービス6010に返される。
11.URL走査サービス6010は、ウェブページのグラフィックレンダリングが、潜在的なフィッシングを指示する1つまたはいくつかの既知のブランドロゴを含有するという事実を含んで、URLおよび関連ウェブページから全ての特徴を抽出している。URL走査サービス6010はさらにまた、特徴に対して1つまたはいくつかのアルゴリズムを適用し、そのように、URLが実際はフィッシングURLであると判断する。
12.その結果として、URL走査サービスは、エンドユーザを、URLがフィッシングURLであることを指示する安全なウェブページにリダイレクトする。
【0055】
物理ハードウェア
図8は、実施形態が実施可能であるコンピューティングデバイスのブロック図である。
図8のコンピューティングデバイスは、情報を通信するためのバス801または他の通信機構、および情報を処理するためにバス801に結合される1つまたは複数のプロセッサ802を含んでよい。コンピューティングデバイスは、情報、およびプロセッサ(複数可)802によって実行される命令を格納するためにバス801に結合される、ランダムアクセスメモリ(RAM)または他の動的ストレージデバイス804(メインメモリという)をさらに含んでよい。メインメモリ(本明細書で称される、有形であるおよび非一時的であることは、信号自体および波形を除外する)804はまた、プロセッサ802による命令の実行中に一時的な変数または他の中間情報を格納するために使用されてよい。
図8のコンピューティングデバイスは、静的情報およびプロセッサ(複数可)802に対する命令を格納するためにバス801に結合される、読み出し専用メモリ(ROM)および/または他の静的ストレージデバイス806も含んでよい。磁気ディスクおよび/またはソリッドステートデータストレージデバイスなどのデータストレージデバイス807は、
図1~
図6に対して示されかつ開示される機能性を実行することを必要とすることが考えられるような、情報および命令を格納するためにバス801に結合されてよい。コンピューティングデバイスはまた、バス801を介してコンピュータユーザに情報を表示するためのディスプレイデバイス821に結合されてよい。英数字キーおよびその他のキーを含む英数字入力デバイス822は、情報およびコマンド選択をプロセッサ(複数可)802に通信するためにバス801に結合されてよい。別のタイプのユーザ入力デバイスは、方向情報およびコマンド選択をプロセッサ(複数可)802に通信し、かつディスプレイ821上のカーソル移動を制御するための、マウス、トラックボール、またはカーソル方向キーなどのカーソル制御823である。
図8のコンピューティングデバイスは、通信インターフェース(例えば、モデム、ネットワークインターフェースカード、またはNIC)808を介してネットワーク826に結合されてよい。
【0056】
示されるように、ストレージデバイス807は、磁気ディスク830、不揮発性半導体メモリ(EEPROM、フラッシュなど)832、831で示唆されるように磁気ディスクおよび不揮発性半導体メモリ両方を含むハイブリッドデータストレージデバイスなどの直接アクセスデータストレージデバイスを含んでよい。参照符号804、806、および807は、1つまたは複数のコンピューティングデバイスによって実行される時、本明細書に説明されかつ示される実施形態の態様を実施する一連の命令を表す、データが格納されている有形の非一時的なコンピュータ可読媒体の例である。これらの命令のいくつかは、クライアントコンピューティングデバイスにローカルに格納されてよく、これらの命令のその他は、リモートに格納(および/または実行)され、かつネットワーク826上でクライアントコンピューティングに通信されてよい。他の実施形態では、これらの命令の全ては、クライアントまたは他のスタンドアロンのコンピューティングデバイスにローカルに格納されてよく、さらに他の実施形態では、これらの命令の全てはリモートに(例えば、1つまたは複数のリモートサーバに)格納されかつ実行され、その結果はクライアントコンピューティングデバイスに通信される。なお別の実施形態では、命令(処理ロジック)は、828で示されるような、別の形態の有形の非一時的なコンピュータ可読媒体に格納されてよい。例えば、参照符号828は、格納されている命令を1つまたは複数のコンピューティングデバイスにロードするための適したデータキャリアを構成可能であることによって、コンピューティングデバイス(複数可)を本明細書に説明されかつ示される実施形態の1つまたは複数に再構成することができる光(または何らかの他の格納技術)ディスクとして実装可能である。他の実装形態では、参照符号828は暗号化されたソリッドステートドライブとして具現化されてよい。他の実装形態が可能である。
【0057】
本発明の実施形態は、本明細書に示されかつ説明されるように、検出モデルを組み合わせるためのコンピューティングデバイスの使用に関連する。1つの実施形態によると、本明細書に説明される方法、デバイス、およびシステムは、メモリ804に含有される、本明細書に示されかつ説明されるコンピュータ実施方法の態様を具現化する一連の命令を実行するプロセッサ(複数可)802に応じて1つまたは複数のコンピューティングデバイスによって提供されてよい。このような命令は、828で示されるような、データストレージデバイス807または別の(光、磁気など)データキャリアなどの別のコンピュータ可読媒体からメモリ804に読み取られてよい。メモリ804に含有される一連の命令の実行によって、プロセッサ(複数可)802はステップを行い、かつ本明細書に説明される機能性を有する。代替的な実施形態では、ハードワイヤード回路網は、説明した実施形態を実施するためにソフトウェア命令の代わりにまたはこれと組み合わせて使用されてよい。よって、実施形態は、ハードウェア回路網およびソフトウェアの任意の特定の組み合わせに限定されない。実際は、任意の適したコンピュータシステムが本明細書に説明される機能性を実装してよいことは、当業者によって理解されるべきである。コンピューティングデバイスは、所望される機能を実行するために作用する1つまたは複数のマイクロプロセッサを含んでよい。1つの実施形態では、マイクロプロセッサ(単数または複数)によって実行される命令は、マイクロプロセッサ(複数可)に本明細書に説明されるステップを実行させるように動作可能である。命令は任意のコンピュータ可読媒体に格納されてよい。1つの実施形態では、該命令は、マイクロプロセッサに外付けのまたはマイクロプロセッサと一体化された不揮発性半導体メモリに格納されてよい。別の実施形態では、命令は、ディスクに格納され、かつ、マイクロプロセッサによる実行の前に揮発性半導体メモリに読み取られてよい。
【0058】
それ故に、1つの実施形態は、グラフィックレンダリングにおいてロゴを検出するコンピュータ実施方法であって、第1のトレーニング済みオブジェクト検出器を使用してグラフィックレンダリングにおいてロゴを検出し、かつ検出の第1のリストを出力することと、第2のトレーニング済みオブジェクト検出器を使用してグラフィックレンダリングにおいてロゴを検出し、かつ検出の第2のリストを出力することと、第1の事前性能ベースフィルターおよび第2の事前性能ベースフィルターを使用して、受信した検出の第1のリストおよび検出の第2のリストを、維持される検出の第1のグループ、廃棄される検出の第2のグループ、および検出の第3のグループにフィルタリングすることと、ある場合、検出の第3のグループにおける検出を、同じクラスのものであり、かつ一般的に電子画像内に共同設置される検出を含む少なくとも1つのクラスターにおいてクラスター化することと、クラスタースコアをそれぞれのクラスターに割り当てることと、グラフィックレンダリングにおけるロゴの検出のセットを出力することであって、該セットは第1のグループにおける検出、および割り当てられたクラスタースコアが対応する閾値より大きいクラスターのそれぞれからの検出を含む、ロゴの検出のセットを出力することと、を含む、コンピュータ実施方法である。それぞれの閾値は、第1のトレーニング済みオブジェクト検出器および第2のトレーニング済みオブジェクト検出器の1つまたは複数のセットに固有であってよい。
【0059】
さらなる実施形態によると、第1のトレーニング済みオブジェクト検出器および/または第2のトレーニング済みオブジェクト検出器は、畳み込みニューラルネットワーク(CNN)ベース検出器を含んでよい。CNNベース検出器は、例えば、SSD ResNet-50およびSSD VGG-16のうちの1つを含んでよい。検出の第1~第3のグループにおけるそれぞれの検出は、予測クラス、クラス信頼度スコア、およびグラフィックレンダリングにおける検出済みロゴの境界ボックスの座標を含むタプルを含んでよい。1つの実施形態によると、フィルタリングは、第1の注釈付きオブジェクト検出データセットにおいて第1のトレーニング済みオブジェクト検出器をテストすることによって第1の事前性能ベースフィルターを生成することと、第2の注釈付きオブジェクト検出データセットにおいて第2のトレーニング済みオブジェクト検出器をテストすることによって第2の事前性能ベースフィルターを生成することと、をさらに含んでよい。
【0060】
第1の注釈付きオブジェクト検出データセットおよび第2の注釈付きオブジェクト検出データセットは同じであってよい。1つの実施形態では、フィルタリングは、第1のトレーニング済みオブジェクト検出器、および検出の第1のリストにおけるそれぞれの検出と関連付けられた第1の信頼度スコアに固有の第1の事前知識値、および、第2のトレーニング済みオブジェクト検出器、および検出の第2のリストにおけるそれぞれの検出と関連付けられた第2の信頼度スコアに固有の第2の事前知識値に基づいてよい。維持される検出の第1のグループは、ロゴの検出の出力されたセットに含まれる検出を含んでよく、廃棄される検出の第2のグループは、廃棄され、かつロゴの検出の出力されたセットに含まれない検出を含んでよく、第3のグループは、検出が、第2のグループに廃棄されるまたは第1のグループに含まれるかどうかを判断するためのさらなる処理を必要とする検出を含んでよい。1つの実施形態では、一般的に電子画像内に共同設置される検出の第3のグループにおける検出をクラスター化することは、電子画像内に重複する境界ボックスを有する検出をクラスター化することを含んでよい。電子画像内で重複する境界ボックスを有する検出をクラスター化することは、Intersection Over Union(IoU)が重複閾値より大きい境界ボックスを有する検出をクラスター化することを含んでよい。1つの実施形態によると、クラスタースコアをそれぞれのクラスターに割り当てることは、クラスタースコアが算出されているクラスターにおける検出の信頼度スコアに基づいてクラスタースコアを算出することを含んでよい。クラスタースコアを算出することはアグリゲーション関数を使用することを含んでよい。それぞれのクラスターについて、クラスタースコアは、クラスターにおける検出の信頼度スコアの平均を含んでよい。
【0061】
1つの実施形態では、コンピュータ実施方法はさらに、注釈付きオブジェクト検出データセットに対してハイパーパラメータ最適化方法を使用してそれぞれの閾値を判断することを含んでよい。ハイパーパラメータ最適化方法は、例えば、ランダム検索方法を含んでよい。コンピュータ実施方法は、クラスターを表す1つの検出に関連している関係するクラスターとして所定のクラスター閾値より大きいクラスタースコアを有するそれぞれのクラスターを示すことをさらに含んでよい。1つの実施形態では、クラスターを表す1つの検出はクラスターに含有される検出のうちの1つである。コンピュータ実施方法は、関係するクラスターを維持される検出の第1のグループに追加することをさらに含んでよい。
【0062】
別の実施形態は、少なくとも1つのプロセッサと、少なくとも1つのプロセッサに結合される少なくとも1つのデータストレージデバイスと、少なくとも1つのプロセッサおよびコンピュータネットワークに結合されるネットワークインターフェースと、グラフィックレンダリングにおいてロゴを検出するために少なくとも1つのプロセッサによって生成される複数のプロセスと、を含むことができるコンピューティングデバイスである。プロセスは、第1のトレーニング済みオブジェクト検出器を使用してグラフィックレンダリングにおいてロゴを検出し、かつ検出の第1のリストを出力することと、第2のトレーニング済みオブジェクト検出器を使用してグラフィックレンダリングにおいてロゴを検出し、かつ検出の第2のリストを出力することと、第1の事前性能ベースフィルターおよび第2の事前性能ベースフィルターを使用して、受信した検出の第1のリストおよび検出の第2のリストを、維持される検出の第1のグループ、廃棄される検出の第2のグループ、および検出の第3のグループにフィルタリングすることと、ある場合、検出の第3のグループにおける検出を、同じクラスのものであり、かつ一般的に電子画像内に共同設置される検出を含む少なくとも1つのクラスターにおいてクラスター化することと、クラスタースコアをそれぞれのクラスターに割り当てることと、グラフィックレンダリングにおけるロゴの検出のセットを出力することであって、該セットは第1のグループにおける検出、および割り当てられたクラスタースコアが対応する閾値より大きいクラスターのそれぞれからの検出を含む、ロゴの検出のセットを出力することと、を行うための処理ロジックを含んでよい。
【0063】
1つの実施形態によると、第1のトレーニング済みオブジェクト検出器および第2のトレーニング済みオブジェクト検出器のうちの少なくとも1つは、畳み込みニューラルネットワーク(CNN)ベース検出器を含んでよい。CNNベース検出器は、例えば、SSD ResNet-50およびSSD VGG-16のうちの1つを含んでよい。検出の第1~第3のグループにおけるそれぞれの検出は、予測クラス、クラス信頼度スコア、およびグラフィックレンダリングにおける検出済みロゴの境界ボックスの座標を含むタプルを含んでよい。フィルタリングのための処理ロジックは、第1の注釈付きオブジェクト検出データセットにおいて第1のトレーニング済みオブジェクト検出器をテストすることによって第1の事前性能ベースフィルターを生成することと、第2の注釈付きオブジェクト検出データセットにおいて第2のトレーニング済みオブジェクト検出器をテストすることによって第2の事前性能ベースフィルターを生成することと、を行うための処理ロジックをさらに含んでよい。1つの実施形態において、第1の注釈付きオブジェクト検出データセットおよび第2の注釈付きオブジェクト検出データセットは同じである。
【0064】
1つの実施形態によると、フィルタリングは、第1のトレーニング済みオブジェクト検出器、および検出の第1のリストにおけるそれぞれの検出と関連付けられた第1の信頼度スコアに固有の第1の事前知識値、および、第2のトレーニング済みオブジェクト検出器、および検出の第2のリストにおけるそれぞれの検出と関連付けられた第2の信頼度スコアに固有の第2の事前知識値に基づいてよい。維持される検出の第1のグループは、ロゴの検出の出力されたセットに含まれる検出を含んでよく、廃棄される検出の第2のグループは、廃棄され、かつロゴの検出の出力されたセットに含まれない検出を含んでよく、第3のグループは、検出が、第2のグループに廃棄されるまたは第1のグループに含まれるかどうかを判断するためのさらなる処理を必要とする検出を含んでよい。一般的に電子画像内に共同設置される検出の第3のグループにおける検出をクラスター化するための処理ロジックは、電子画像内に重複する境界ボックスを有する検出をクラスター化するための処理ロジックを含んでよい。電子画像内で重複する境界ボックスを有する検出をクラスター化するための処理ロジックは、Intersection Over Union(IoU)が重複閾値より大きい場合がある境界ボックスを有する検出をクラスター化するための処理ロジックを含んでよい。
【0065】
1つの実施形態では、クラスタースコアをそれぞれのクラスターに割り当てるための処理ロジックは、クラスタースコアが算出されている場合があるクラスターにおける検出の信頼度スコアに基づいてクラスタースコアを算出するための処理ロジックを含んでよい。クラスタースコアを算出するための処理ロジックはアグリゲーション関数を使用するための処理ロジックを含んでよい。それぞれのクラスターについて、クラスタースコアは、クラスターにおける検出の信頼度スコアの平均を含んでよい。それぞれの閾値は、第1のトレーニング済みオブジェクト検出器および第2のトレーニング済みオブジェクト検出器の1つまたは複数のセットに固有であってよい。
【0066】
コンピューティングデバイスは、一実施形態によると、注釈付きオブジェクト検出データセットに対してハイパーパラメータ最適化方法を使用してそれぞれの閾値を判断するための処理ロジックをさらに含んでよい。ハイパーパラメータ最適化方法はランダム検索方法を含んでよい。クラスターを表す1つの検出に関連している関係するクラスターとして所定のクラスター閾値より大きいクラスタースコアを有するそれぞれのクラスターを示すための処理ロジックも提供されてよい。クラスターを表す1つの検出はクラスターに含有される検出のうちの1つであってよい。関係するクラスターを維持される検出の第1のグループに追加するための処理ロジックが提供されてよい。
【0067】
上記の詳細な説明の一部分では、ローカル処理ユニット、ローカル処理ユニットのためのメモリストレージデバイス、ディスプレイデバイス、および入力デバイスを含むコンピュータコンポーネントを含んでよいコンピューティングデバイスによる動作のプロセスおよび象徴的表象について説明している。さらに、このようなプロセスおよび動作は、例えば、リモートファイルサーバ、コンピュータサーバ、およびメモリストレージデバイスを含む異種分散型コンピューティング環境におけるコンピュータコンポーネントを利用してよい。これらの分散コンピューティングコンポーネントは、通信ネットワークによってローカル処理ユニットにアクセス可能であってよい。
【0068】
コンピュータによって行われるプロセスおよび動作は、ローカル処理ユニットおよび/またはリモートサーバによるデータビットの操作、およびローカルまたはリモートメモリストレージデバイスの1つまたは複数に常駐するデータ構造内のこれらのビットのメンテナンスを含む。これらのデータ構造は、メモリストレージデバイス内に格納されたデータビットコレクションに物理編成を与え、かつ電磁スペクトル要素を表す。さらに、本明細書に開示されるコンピュータ実施方法は、提供側のファイルシステムから受け取り側のファイルシステムまでのファイルシステムの移行を可能にすることによってコンピュータの機能性を改善し、メタデータおよびこのデータを変更するためにコマンドが発行されかつ実行される。このようなコンピュータ実施方法は、人間の心理過程によって効率的に実行できるものではない。
【0069】
本明細書に説明されかつ示されるコンピュータ実施方法などのプロセスは、一般的に、所望の結果をもたらす一連のコンピュータ実行ステップであると定められ得る。これらのステップは一般的に、物理量の物理的な操作を必要とする。通常、必ずしもというわけではないが、これらの量は、格納、転送、組み合わせ、比較、あるいは操作が可能である電気、磁気、または光信号の形をとってよい。当業者にとって、これらの信号が、ビットもしくはバイト(二値論理レベルを有する時)、画素値、仕事量、値、要素、記号、文字、期間、数、点、記録、オブジェクト、画像、ファイル、ディレクトリ、サブディレクトリなどを指すことは、慣例的である。しかしながら、これらのおよび同様の用語が、コンピュータ動作に対する適切な物理量と関連付けられるものとし、かつこれらの用語が単に、コンピュータの動作内および動作中に存在する物理量に適用される従来の標示であることは留意されるべきである。
【0070】
コンピュータ内の操作が通常、追加、比較、移動、位置付け、設置、照射、除去、改変などの用語に言及することも、理解されるべきである。本明細書に説明される動作は、コンピュータと対話する人間または人工知能エージェントオペレータもしくはユーザによって提供されるさまざまな入力と併せて行われる機械動作である。本明細書に説明される動作を行うために使用される機械は、ローカルまたはリモートの汎用デジタルコンピュータもしくは他の同様のコンピューティングデバイスを含む。
【0071】
さらに、本明細書に説明されるプログラム、プロセス、方法などが、いずれの特定のコンピュータまたは装置に関連または限定もされないし、いずれの特定の通信ネットワークアーキテクチャに関連または限定もされないことは、理解されるべきである。もっと正確に言えば、さまざまなタイプの汎用ハードウェア機械は、本明細書に説明される教示に従って構築されるプログラムモジュールで使用可能である。同様に、読み出し専用メモリなど、不揮発性メモリに格納されるハードワイヤードロジックまたはプログラムによる特定のネットワークアーキテクチャにおける専用コンピュータシステムによって本明細書に説明される方法ステップを実行するように特殊装置を構築することは、有利であると示し得る。
【0072】
ある特定の例示の実施形態が説明されているが、これらの実施形態は単に例として提示されており、本明細書に開示される実施形態の範囲を限定することを意図するものではない。よって、前述の説明において、いずれの特定の特徴、特性、ステップ、モジュールまたはブロックも必要であるまたは必須であることを含意することを意図していない。実際は、本明細書に説明される新規な方法およびシステムは、さまざまな他の形態で具現化されてよく、さらに、本明細書に説明される方法およびシステムの形態のさまざまな省略、置き換え、および変更は、本明細書に開示される実施形態の趣旨から逸脱することなくなされてよい。
【0073】
本開示のある特定の実施形態が説明されているが、これらの実施形態は単に例として提示されており、本開示の範囲を限定することを意図するものではない。実際は、本明細書に説明される新規な方法、デバイス、およびシステムは、さまざまな他の形態で具現化されてよい。さらに、本明細書に説明される方法およびシステムの形態のさまざまな省略、置き換え、および変更は、本開示の趣旨から逸脱することなくなされてよい。添付の特許請求の範囲およびこれらの等価物は、本開示の範囲および趣旨の範囲内にあるような形態または修正を包含することが意図される。例えば、さまざまな実施形態において、実際の物理構造および論理構造が図に示されるものと異なる場合があることを、当業者は理解するであろう。実施形態に応じて、上の例に説明されるある特定のステップは除去される場合があり、その他が追加される場合がある。また、上に開示される特定の実施形態の特徴および属性は、追加の実施形態を、この全てが本開示の範囲内にあるように形成するために種々のやり方で組み合わせ可能である。本開示はある特定の好ましい実施形態および応用を提供するが、本明細書に示される特徴および利点の全てを提供しない実施形態を含む、当業者には明らかである他の実施形態も、本開示の範囲内にある。それ故に、本開示の範囲は添付の特許請求の範囲に言及することによってのみ定められることが意図される。