(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-06
(45)【発行日】2024-12-16
(54)【発明の名称】顔認識におけるラップされた攻撃の検出
(51)【国際特許分類】
G06V 40/40 20220101AFI20241209BHJP
G06T 7/00 20170101ALI20241209BHJP
G06V 40/16 20220101ALI20241209BHJP
【FI】
G06V40/40
G06T7/00 510F
G06V40/16 A
【外国語出願】
(21)【出願番号】P 2023100509
(22)【出願日】2023-06-20
【審査請求日】2023-09-14
(32)【優先日】2022-07-29
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】ラハ ポウロミ
(72)【発明者】
【氏名】蔡 永男
【審査官】小池 正彦
(56)【参考文献】
【文献】特表2021-519962(JP,A)
【文献】特開2021-117968(JP,A)
【文献】特表2020-535529(JP,A)
【文献】特開2020-184331(JP,A)
【文献】濱崎 直紀,GAN識別器のアンサンブル学習による真正画像とクローン画像の識別,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2021年02月25日,第120巻 第409号,p.7~12
(58)【調査した分野】(Int.Cl.,DB名)
G06V 40/40
G06T 7/00
G06V 40/16
(57)【特許請求の範囲】
【請求項1】
ライブネス検出システムをトレーニングする方法であって、
顔の複数の本物の画像を取得することと、
前記複数の本物の画像を
、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含むニューラルネットワークに提供することと、
前記ニューラルネットワークの出力に基づいて前記複数の本物の画像に対応する複数の人工画像を生成することと、
前記複数の本物の画像及び前記複数の人工画像に基づいてライブネス検出モデルをトレーニングすることと、
を含み、
前記複数の人工画像は、少なくとも1つの人工ラップ攻撃画像を含み、
前記複数の本物の画像のいずれかが前記変分オートエンコーダーにおけるエンコーダーに入力され、前記エンコーダーの出力に基づくベクトルがラップ攻撃パラメーターに基づいて変換され、当該変換されたベクトルが前記変分オートエンコーダーにおけるデコーダーに入力されることにより、前記少なくとも1つの人工ラップ攻撃画像が生成され、
前記ライブネス検出モデルを用いて、顔の入力画像が前記顔のライブ画像を含むか否かを判断することによってライブネス検出が行われる、
方法。
【請求項2】
前記ラップ攻撃パラメーターの第1の値は、前記少なくとも1つの人工ラップ攻撃画像が、平坦なマスクに対応する平面状の顔画像を含むことを示し、
前記ラップ攻撃パラメーターの第2の値は、前記少なくとも1つの人工ラップ攻撃画像が、ラップされたマスクに対応するラップされた顔画像を含むことを示す、
請求項
1に記載の方法。
【請求項3】
前記複数の本物の画像は、前記ラップ攻撃パラメーターの第1の値を有する複数の第1の本物の画像と、前記ラップ攻撃パラメーターの第2の値を有する複数の第2の本物の画像とを含み、
前記複数の第1の本物の画像及び前記複数の第2の本物の画像に基づいて、前記ラップ攻撃パラメーターの第3の値を有する前記少なくとも1つの人工ラップ攻撃画像が生成される、
請求項
1に記載の方法。
【請求項4】
前記ライブネス検出モデルを前記トレーニングすることは、
特徴抽出器を用いて、前記複数の本物の画像及び前記複数の人工画像から特徴を抽出することと、
前記抽出された特徴に基づいて前記ライブネス検出モデルをトレーニングすることと、を含む、請求項1に記載の方法。
【請求項5】
前記ニューラルネットワークに含まれる識別器は、前記複数の人工画像が生成された後、前記特徴抽出器として用いられる、請求項
4に記載の方法。
【請求項6】
前記ライブネス検出モデルは、サポートベクトルマシン(SVM)を含む、請求項1に記載の方法。
【請求項7】
ライブネス検出を行う方法であって、
顔の入力画像を取得することと、
前記入力画像に関する情報をライブネス検出モデルに提供することと、
前記ライブネス検出モデルの出力に基づいて、前記入力画像が前記顔のライブ画像であるか否かを判断することと、
を含み、
前記ライブネス検出モデルは、顔の複数の本物の画像と、
少なくとも1つの人工ラップ攻撃画像を含む複数の人工画像とを用いてトレーニングされ、
前記複数の人工画像は、前記複数の本物の画像に基づいてニューラルネットワークによって生成さ
れ、
前記ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含み、
前記複数の本物の画像のいずれかが前記変分オートエンコーダーにおけるエンコーダーに入力され、前記エンコーダーの出力に基づくベクトルがラップ攻撃パラメーターに基づいて変換され、当該変換されたベクトルが前記変分オートエンコーダーにおけるデコーダーに入力されることにより、前記少なくとも1つの人工ラップ攻撃画像が生成される、
方法。
【請求項8】
前記入力画像に関する情報は、前記入力画像の少なくとも1つの特徴を含み、
前記少なくとも1つの特徴は、特徴抽出器を用いて抽出される、
請求項
7に記載の方法。
【請求項9】
前記特徴抽出器は、前記複数の人工画像が生成された後の前記ニューラルネットワークに含まれる識別器を含む、請求項
8に記載の方法。
【請求項10】
前記顔の前記入力画像は、ビデオの少なくとも1つのフレームを含む、請求項
7に記載の方法。
【請求項11】
ライブネス検出を行うデバイスであって、
命令を記憶するように構成されたメモリと、
少なくとも1つのプロセッサであって、
顔の入力画像を取得し、
前記入力画像に関する情報をライブネス検出モデルに提供し、
前記ライブネス検出モデルの出力に基づいて、前記入力画像が前記顔のライブ画像であるか否かを判断する、
前記命令を実行するように構成された、少なくとも1つのプロセッサと、
を備え、
前記ライブネス検出モデルは、顔の複数の本物の画像と、
少なくとも1つの人工ラップ攻撃画像を含む複数の人工画像とを用いてトレーニングされ、
前記複数の人工画像は、前記複数の本物の画像に基づいてニューラルネットワークによって生成さ
れ、
前記ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含み、
前記複数の本物の画像のいずれかが前記変分オートエンコーダーにおけるエンコーダーに入力され、前記エンコーダーの出力に基づくベクトルがラップ攻撃パラメーターに基づいて変換され、当該変換されたベクトルが前記変分オートエンコーダーにおけるデコーダーに入力されることにより、前記少なくとも1つの人工ラップ攻撃画像が生成される、
デバイス。
【請求項12】
前記入力画像に関する情報は、前記入力画像の少なくとも1つの特徴を含み、
前記少なくとも1つの特徴は、特徴抽出器を用いて抽出される、請求項
11に記載のデバイス。
【請求項13】
前記特徴抽出器は、前記複数の人工画像が生成された後の前記ニューラルネットワークに含まれる識別器を含む、請求項
12に記載のデバイス。
【請求項14】
命令を記憶する非一時的コンピューター可読媒体であって、前記命令はライブネス検出を行うデバイスの1つ以上のプロセッサによって実行されると、該1つ以上のプロセッサに、
顔の入力画像を取得させ、
前記入力画像に関する情報をライブネス検出モデルに提供させ、
前記ライブネス検出モデルの出力に基づいて、前記入力画像が前記顔のライブ画像であるか否かを判断させ、
前記ライブネス検出モデルは、顔の複数の本物の画像と、
少なくとも1つの人工ラップ攻撃画像を含む複数の人工画像とを用いてトレーニングされ、
前記複数の人工画像は、前記複数の本物の画像に基づいてニューラルネットワークによって生成さ
れ、
前記ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含み、
前記複数の本物の画像のいずれかが前記変分オートエンコーダーにおけるエンコーダーに入力され、前記エンコーダーの出力に基づくベクトルがラップ攻撃パラメーターに基づいて変換され、当該変換されたベクトルが前記変分オートエンコーダーにおけるデコーダーに入力されることにより、前記少なくとも1つの人工ラップ攻撃画像が生成される、
非一時的コンピューター可読媒体。
【請求項15】
前記入力画像に関する情報は、前記入力画像の少なくとも1つの特徴を含み、
前記命令は前記1つ以上のプロセッサに、
特徴抽出器を用いて
前記入力画像から前記少なくとも1つの特徴を抽出さ
せる、
請求項
14に記載の非一時的コンピューター可読媒体。
【請求項16】
前記命令は前記1つ以上のプロセッサに、
前記複数の人工画像が生成された後の前記ニューラルネットワークに含まれる識別器を含む
前記特徴抽出器を用いて前記入力画像から前記少なくとも1つの特徴を抽出させる、請求項
15に記載の非一時的コンピューター可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ラップ攻撃(wrap attack)検出に関し、より詳細には、機械学習又はディープラーニング技法を用いて、ラップ攻撃検出のためのトレーニングデータを生成し、トレーニングデータに基づいてラップ攻撃検出を行うことに関する。
【背景技術】
【0002】
バイオメトリック認証は、近年、セキュリティ及びユーザー利便性の増大のために、従来の認証手法の代わりに、又はそれに加えて用いられている。バイオメトリック認証は、多くの異なる生体特性、例えば、虹彩、指紋、静脈及び顔の特性に基づいて行われてよい。特に顔の特性は、モバイルデバイス、コンピューター又は他のデバイスにおけるID管理、オンライン支払い、アクセス制御、自動車用途、及びアクティブ認証等の多くの用途におけるバイオメトリック認証のために用いられてよい。
【0003】
しかしながら、関連技術のバイオメトリックシステムは、バイオメトリックシステムの動作を欺くか又は他の形でこれに干渉することを目的とした、様々なタイプの提示攻撃、すなわち、バイオメトリック捕捉サブシステム、例えばカメラに対する不正な提示に対し脆弱である。例えば、顔等のバイオメトリック特性のコピーを人工的に表すアーティファクトが、登録されたユーザーになりすまし、攻撃者を認証するためにバイオメトリックシステムに提示される場合がある。
【0004】
提示攻撃の例は、登録されたユーザーのプリントされた写真(例えば、顔画像)が提示される場合があるプリント攻撃、及び登録されたユーザーの画像が、モバイルフォン等の表示デバイスにより提示される表示攻撃、及び登録されたユーザーのビデオが提示されるビデオ攻撃等の2次元(2D)攻撃を含む。
【0005】
関連技術のライブネス検出方式は、様々な提示攻撃検出機構を用いて提示攻撃を自動的に検出及び防止する。そのような機構は、ユーザーを検証するための3D顔深度マップを作成する深度マップ分析による顔検出、及びリアルタイムサーマル画像に基づいてユーザーを検証するサーマル撮像ベースの顔ライブネス検出を含んでよい。しかしながら、これらの機構は様々な欠点を有する。例えば、3D顔深度分析及びサーマルベースの顔ライブネス検出は、共に、必要とされる追加のセンサー(例えば、サーマルカメラ、RGB-D画像センサー)から結果として生じる過度なコスト及び複雑性の双方を生じる。
【0006】
加えて、これらの深度ベースの又はサーマルベースの機構は、提示攻撃の他の例、例えば、安価で容易に利用可能なプリントマスクが、登録されたユーザーになりすますために攻撃者によって装着されるか又は他の形で提示される場合があるラップ攻撃等の3次元(3D)攻撃に対し脆弱である場合がある。
【発明の概要】
【0007】
ライブネス検出トレーニングデータセットを生成し、ライブネス検出トレーニングデータセットに基づいてライブネス検出モデルをトレーニングする方法が提供される。ライブネス検出を行う方法、デバイス及びシステムも提供される。
【0008】
本開示の一態様によれば、ライブネス検出システムをトレーニングする方法は、顔の複数の本物の画像を取得することと、複数の本物の画像をニューラルネットワークに提供することと、ニューラルネットワークの出力に基づいて複数の本物の画像に対応する複数の人工画像を生成することと、複数の本物の画像及び複数の人工画像に基づいてライブネス検出モデルをトレーニングすることとを含み、ライブネス検出モデルを用いて、顔の入力画像が顔のライブ画像を含むか否かを判断することによってライブネス検出が行われる。
【0009】
ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含むことができる。
【0010】
複数の人工画像は、少なくとも1つの人工ラップ攻撃画像を含むことができる。
【0011】
少なくとも1つの人工ラップ攻撃画像は、ラップ攻撃パラメーターを用いて生成される。
【0012】
ラップ攻撃パラメーターの第1の値は、少なくとも1つの人工ラップ攻撃画像が、平坦なマスクに対応する平面状の顔画像を含んでよいことを示してよく、ラップ攻撃パラメーターの第2の値は、少なくとも1つの人工ラップ攻撃画像が、ラップされたマスクに対応するラップされた顔画像を含んでよいことを示す。
【0013】
複数の本物の画像は、ラップ攻撃パラメーターの第1の値を有する複数の第1の本物の画像と、ラップ攻撃パラメーターの第2の値を有する複数の第2の本物の画像とを含んでよく、複数の第1の本物の画像及び複数の第2の本物の画像に基づいて、ラップ攻撃パラメーターの第3の値を有する少なくとも1つの人工ラップ攻撃画像が生成されてよい。
【0014】
ライブネス検出モデルをトレーニングすることは、特徴抽出器を用いて、複数の本物の画像及び複数の人工画像から特徴を抽出することと、抽出された特徴に基づいてライブネス検出モデルをトレーニングすることとを含んでよい。
【0015】
ニューラルネットワークに含まれる識別器は、複数の人工画像が生成された後、特徴抽出器として用いてよい。
【0016】
ライブネス検出モデルは、サポートベクトルマシン(SVM)を含んでよい。
【0017】
本開示の一態様によれば、ライブネス検出を行う方法は、顔の入力画像を取得することと、入力画像に関する情報をライブネス検出モデルに提供することと、ライブネス検出モデルの出力に基づいて、入力画像が顔のライブ画像であるか否かを判断することとを含み、ライブネス検出モデルは、顔の複数の本物の画像と、複数の人工画像とを用いてトレーニングされ、複数の人工画像は、複数の本物の画像に基づいてニューラルネットワークによって生成される。
【0018】
ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含んでよい。
【0019】
入力画像に関する情報は、入力画像の少なくとも1つの特徴を含んでよく、少なくとも1つの特徴は、特徴抽出器を用いて抽出してよい。
【0020】
特徴抽出器は、複数の人工画像が生成された後のニューラルネットワークに含まれる識別器を含んでよい。
【0021】
顔の入力画像は、ビデオの少なくとも1つのフレームを含んでよい。
【0022】
ライブネス検出モデルは、サポートベクトルマシン(SVM)を含んでよい。
【0023】
本開示の一態様によれば、ライブネス検出を行うデバイスは、命令を記憶するように構成されたメモリと、少なくとも1つのプロセッサであって、顔の入力画像を取得しと、入力画像に関する情報をライブネス検出モデルに提供し、ライブネス検出モデルの出力に基づいて、入力画像が顔のライブ画像であるか否かを判断する、命令を実行するように構成された、少なくとも1つのプロセッサとを備え、ライブネス検出モデルは、顔の複数の本物の画像と、複数の人工画像とを用いてトレーニングされ、複数の人工画像は、複数の本物の画像に基づいてニューラルネットワークによって生成される。
【0024】
ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含んでよい。
【0025】
複数の人工画像は、少なくとも1つの人工ラップ攻撃画像を含んでよい。
【0026】
入力画像に関する情報は、入力画像の少なくとも1つの特徴を含んでよく、少なくとも1つの特徴は、特徴抽出器を用いて抽出してよい。
【0027】
特徴抽出器は、複数の人工画像が生成された後のニューラルネットワークに含まれる識別器を含んでよい。
【0028】
顔の入力画像は、ビデオの少なくとも1つのフレームを含んでよい。
【0029】
ライブネス検出モデルは、サポートベクトルマシン(SVM)を含んでよい。
【0030】
本開示の一態様によれば、非一時的コンピューター可読媒体は命令を記憶し、命令がライブネス検出を行うデバイスの1つ以上のプロセッサによって実行されると、1つ以上のプロセッサに、顔の入力画像を取得させ、入力画像に関する情報をライブネス検出モデルに提供させ、ライブネス検出モデルの出力に基づいて、入力画像が顔のライブ画像であるか否かを判断させ、ライブネス検出モデルは、顔の複数の本物の画像と、複数の人工画像とを用いてトレーニングされ、複数の人工画像は、複数の本物の画像に基づいてニューラルネットワークによって生成される。
【0031】
ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含んでよい。
【0032】
複数の人工画像は、少なくとも1つの人工ラップ攻撃画像を含んでよい。
【0033】
入力画像に関する情報は、入力画像の少なくとも1つの特徴を含んでよく、少なくとも1つの特徴は、特徴抽出器を用いて抽出してよい。
【0034】
特徴抽出器は、複数の人工画像が生成された後のニューラルネットワークに含まれる識別器を含んでよい。
【0035】
顔の入力画像は、ビデオの少なくとも1つのフレームを含んでよい。
【0036】
ライブネス検出モデルは、サポートベクトルマシン(SVM)を含んでよい。
【0037】
これらの及び/又は他の態様は、添付の図面と併せて以下の説明から明らかとなり、より容易に理解される。
【図面の簡単な説明】
【0038】
【
図1】本明細書に記載のシステム及び/又は方法が実装されてよい例示的な環境のブロック図である。
【
図2】実施形態によるデバイスの例示的な構成要素のブロック図である。
【
図3】実施形態による、ライブネス検出トレーニングデータセットを生成する例示的なニューラルネットワークのブロック図である。
【
図4A】実施形態による、ライブネス検出モデルをトレーニングする例示的なトレーニングシステムのブロック図である。
【
図4B】実施形態による、ライブネス検出モデルをトレーニングする例示的なトレーニングシステムのブロック図である。
【
図4C】実施形態による、ライブネス検出モデルをトレーニングする例示的なトレーニングシステムのブロック図である。
【
図5A】実施形態による例示的なライブネス検出システムのブロック図である。
【
図5B】実施形態による例示的なライブネス検出システムのブロック図である。
【
図5C】実施形態による例示的なライブネス検出システムのブロック図である。
【
図6A】実施形態による、ライブネス検出システムの例示的なユーザーインターフェーススクリーンを示す図である。
【
図6B】実施形態による、ライブネス検出システムの例示的なユーザーインターフェーススクリーンを示す図である。
【
図7】実施形態による、例示的な真正な画像及びラップ攻撃画像を、ライブネス検出システムに対応する、対応する視覚化と共に示す図である。
【
図8A】実施形態による、なりすまし防止データセットからの例示的な画像を示す図である。
【
図8B】実施形態による、なりすまし防止データセットからの例示的な画像を示す図である。
【
図8C】実施形態による、なりすまし防止データからの例示的なビデオのフレームを示す図である。
【
図8D】実施形態による、なりすまし防止データセットからの例示的な画像を示す図である。
【
図8E】実施形態による、ライブネス検出システムに対応する実験結果を示す図である。
【
図8F】実施形態による、ライブネス検出システムに対応する実験結果を示す図である。
【
図8G】実施形態による、ライブネス検出システムに対応する実験結果を示す図である。
【
図9A】実施形態による、ライブネス検出トレーニングデータセットを生成し、ライブネス検出システムをトレーニングする方法のフローチャートである。
【
図9B】実施形態によるライブネス検出方法のフローチャートである。
【発明を実施するための形態】
【0039】
これより、本開示の例示的な実施形態を、添付の図面を参照して詳細に説明する。ここで、類似の参照符号は、全体を通じて類似の要素を指す。しかしながら、本開示は、本明細書に記載の実施形態に限定されず、或る実施形態からの特徴及び構成要素は、別の実施形態において含まれても省かれてよいことが理解される。
【0040】
さらに、本明細書において用いられるとき、「~のうちの少なくとも1つ」等の表現は、要素のリストに先行しているとき、リストの個々の要素ではなく、要素のリスト全体を修飾する。例えば、「[A]、[B]及び[C]のうちの少なくとも1つ」又は「[A]、[B]又は[C]のうちの少なくとも1つ」という表現は、Aのみ、Bのみ、Cのみ、A及びB、B及びC、又はA、B及びCを意味する。
【0041】
ここでは、本明細書において「第1」及び「第2」等の用語を使用して様々な要素が記述される場合があるが、これらの要素はこれらの用語によって制限されるべきではない(例えば、相対的順序又は重要性を指定するものと解釈されるべきではない)ことも理解される。これらの用語は、或る要素を別の要素と区別するためにのみ用いられる。
【0042】
さらに、本明細書において用いられるとき、単数形「a」、「an」、及び「the」は、別段の明示的な又は周囲の文脈による指示のない限り、複数形も含むように意図されている。
【0043】
本開示の1つ以上の実施形態は、ライブネス検出のためにトレーニングデータセットを生成し、生成されたトレーニングデータセットを用いてライブネス検出モデルのトレーニングを行い、トレーニングされたライブネス検出モデルを用いてライブネス検出を行う方法、デバイス及びシステムを提供する。実施形態において、ライブネス検出トレーニングデータセット及びライブネス検出モデルは、ラップ攻撃等の提示攻撃を検出し、防ぐことに関係し、そのために用いられてよい。ラップ攻撃では、例えば、攻撃者によって、認可されていないアクセスを得るために、顔認識、識別及び/又は認証システムの登録されたユーザーになりすますように、プリントされたマスクが装着又は提示される場合がある。実施形態において、ラップ攻撃は、なりすますか又は深度ベースの検出技法を欺くために、プリントされたマスク、例えば紙のマスクを用いて顔の少なくとも一部をラッピングするか又は包むことを含む場合がある。
【0044】
本開示の1つ以上の実施形態は、そのようなラップ攻撃防止技法の実施を単純化しうる。概して、ラップ攻撃検出手法は、ラップ攻撃に対し保護するようにライブネス検出システムをトレーニングするために、真正のサンプル及び攻撃サンプルの双方の利用可能性に依存しうる。実施形態において、真正のサンプルは、本物のサンプル若しくは本物の画像、又はライブサンプル若しくはライブ画像と呼ばれてもよく、認可されたユーザーによる真正なアクセス試行に対応してよい。実施形態において、攻撃サンプルは、アーティファクトサンプルと呼ばれてもよく、認可されていない又はなりすましのアクセス試行又は攻撃、例えばラップ攻撃に対応してよい。しかしながら、トレーニングデータセットとして有用であってよい現在利用可能ななりすまし防止データベースの多くが、非商業的使用又は研究目的のみを意図されている。
【0045】
したがって、実施形態は、ライブネス検出トレーニングデータセット、例えば、ラップ攻撃等の提示攻撃の検出及び防止を支援してよいトレーニングデータセットを生成する方法、デバイス及びシステムに関係してよい。特に、実施形態は、ニューラルネットワーク(NN)、ディープNN、機械学習、及びディープラーニング技法のうちの少なくとも1つを用いて、ライブネス検出トレーニングデータセットを生成することに関係してよい。実施形態はまた、生成されたライブネス検出トレーニングデータセットに基づいてライブネス検出モデルをトレーニングし、トレーニングされた検出モデルを用いてライブネス検出を行う方法、デバイス及びシステムに関係してよい。実施形態において、ライブネス検出モデルは、NNであってよく、又は所望に応じて任意の他のタイプの検出モデルであってよい。
【0046】
実施形態において、人工NNと呼ばれてもよいNNは、情報処理のために数学モデル又は計算モデルを用いる人工ニューロンの相互接続されたグループを含んでよい。NNは、ネットワークを通って流れる外部情報又は内部情報に基づいてその構造を変更しうる適応的システムであってよい。NNを用いて、入力及び出力間の複雑な関係をモデル化するか、又はデータ内のパターンを見つけることができる。
【0047】
実施形態において、NNは、公的に又は商業的に利用可能な真正のサンプルに基づいてライブネス検出トレーニングデータセットを生成することに用いられてよい。例えば、実施形態は、変分オートエンコーダー(VAE)、敵対的生成ネットワーク(GAN)及び/又は、VAE-GANと呼ばれてよいそれらの組合せの中からの少なくとも1つのNNの使用に関係してよい。実施形態において、VAE-GANアーキテクチャは、真正のサンプルを用いて攻撃サンプルを生成することによって、トレーニングデータセット、例えばライブネス検出トレーニングデータセットを生成してよい。実施形態において、VAE-GAN等のNNによって生成された攻撃サンプルは、人工攻撃サンプルと呼ばれてよく、これは、真正のサンプルに基づいてよいが、実際の攻撃サンプルの特性を共有してよい。実施形態において、真正の顔画像は、例えば、公的に又は商業的に利用可能な顔認識画像データセットからの真正の顔画像を含んでよい。実施形態において、人工攻撃サンプルは、真正の顔画像に基づいてよく、実際のラップ攻撃画像の特性を有してよい人工ラップ攻撃画像を含んでよい。
【0048】
実施形態において、真正のサンプル及び人工攻撃サンプルを用いて、トレーニングデータセットを生成してよく、これを用いてライブネス検出モデルをトレーニングしてよい。例えば、トレーニングデータセットは、真正の顔画像及び対応する人工ラップ攻撃画像を含みうるライブネス検出トレーニングデータセットであってよい。
【0049】
実施形態において、VAE-GANの1つ以上のコンポーネントを用いて、ライブネスモデルをトレーニングするか、又はライブネス検出を行ってよい。例えば、VAE-GANは、エンコーダー及び識別器等の要素を含んでよく、これらのコンポーネントのうちの1つ以上が、トレーニングデータセットに含まれる真正のサンプル及び人工攻撃サンプルの識別的特徴又は際立った特徴等の特徴を抽出しうる特徴抽出器として有用であってよく、これらの抽出された特徴をトレーニング中にライブネス検出モデルに提供してよいが、実施形態はこれに限定されない。
【0050】
図1は、本明細書に記載のシステム及び/又は方法を実装することができる一例示の環境100の図である。
図1に示されているように、環境100は、ユーザーデバイス110、プラットフォーム120、及びネットワーク130を含み得る。環境100のデバイスは、有線接続、無線接続、又は有線接続と無線接続との組合せを介して相互接続することができる。実施形態において、上記の
図1を参照して説明される機能及び動作は、いずれも
図1に示されている要素の任意の組合せによって実行することができる。
【0051】
ユーザーデバイス110は、プラットフォーム120に関連付けられた情報を受信、生成、格納、処理、及び/又は提供することが可能な1つ以上のデバイスを含む。例えば、ユーザーデバイス110は、コンピューティングデバイス(例えば、デスクトップコンピューター、ラップトップコンピューター、タブレットコンピューター、携帯型コンピューター、スマートスピーカー、サーバー等)、携帯電話(例えば、スマートフォン、無線電話等)、ウェアラブルデバイス(例えば、スマートグラス又はスマートウォッチ)、又は同様のデバイスを含み得る。いくつかの実施態様において、ユーザーデバイス110は、プラットフォーム120から情報を受信すること及び/又はプラットフォーム120へ情報を送信してよい。
【0052】
プラットフォーム120は、情報を受信、生成、格納、処理、及び/又は提供することができる1つ以上のデバイスを含む。いくつかの実施態様において、プラットフォーム120は、クラウドサーバー、又はクラウドサーバーのグループを含み得る。いくつかの実装において、プラットフォーム120は、特定のニーズに応じて、或る特定のソフトウェアコンポーネントを入れ替えられるよう、モジュール式に設計されてよい。したがって、プラットフォーム120は、異なる用途に合わせて、容易及び/又は迅速に再構成することができる。
【0053】
いくつかの実装において、図示のように、プラットフォーム120はクラウドコンピューティング環境122においてホストされてもよい。注目すべき点として、本明細書に記載の実施態様においては、プラットフォーム120がクラウドコンピューティング環境122においてホストされるものとして述べているが、いくつかの実装においては、プラットフォーム120は、クラウドベースでなくてもよい(すなわち、クラウドコンピューティング環境の外で実装されてよい)、又は一部をクラウドベースとしてもよい。
【0054】
クラウドコンピューティング環境122は、プラットフォーム120をホストする環境を含む。クラウドコンピューティング環境122は、プラットフォーム120をホストするシステム(複数の場合もある)及び/又はデバイス(複数の場合もある)の物理的位置及び構成について、エンドユーザー(例えば、ユーザーデバイス110)が知ることを必要としない計算、ソフトウェア、データアクセス、ストレージ等のサービスを提供し得る。図示のように、クラウドコンピューティング環境122は、コンピューティングリソース124のグループ(まとめて「(複数の)コンピューティングリソース124」と称し、個別に「コンピューティングリソース124」と称する)を含んでもよい。
【0055】
コンピューティングリソース124は、1つ以上のパーソナルコンピューター、コンピューティングデバイスのクラスター、ワークステーションコンピューター、サーバーデバイス、又は他のタイプの計算及び/又は通信デバイスを含む。いくつかの実施態様において、コンピューティングリソース124は、プラットフォーム120をホストし得る。クラウドリソースは、コンピューティングリソース124において実行する計算インスタンス、コンピューティングリソース124において提供されるストレージデバイス、コンピューティングリソース124によって提供されるデータ転送デバイス等を含み得る。いくつかの実施態様において、コンピューティングリソース124は、有線接続、無線接続、又は有線接続と無線接続との組合せを介して、他のコンピューティングリソース124と通信してよい。
【0056】
図1に更に示されているように、コンピューティングリソース124は、1つ以上のアプリケーション(「APP」)124-1、1つ以上の仮想マシン(「VM」)124-2、仮想化ストレージ(「VS」)124-3、1つ以上のハイパーバイザー(「HYP」)124-4等のクラウドリソースのグループを含む。
【0057】
アプリケーション124-1は、ユーザーデバイス110に提供され得る又はユーザーデバイス110によってアクセスされ得る、1つ以上のソフトウェアアプリケーションを含む。アプリケーション124-1によって、ソフトウェアアプリケーションをユーザーデバイス110にインストールして実行する必要性をなくすことができる。例えば、アプリケーション124-1は、プラットフォーム120に関連付けられたソフトウェア、及び/又はクラウドコンピューティング環境122を介して提供することが可能な任意の他のソフトウェアを含むことができる。いくつかの実施態様において、1つのアプリケーション124-1は、仮想マシン124-2を介して、1つ以上の他のアプリケーション124-1との間で情報を送信/受信することができる。
【0058】
仮想マシン124-2は、物理マシンのようなプログラムを実行するマシン(例えば、コンピューター)のソフトウェア実装を含む。仮想マシン124-2は、用途、及び仮想マシン124-2による任意の実機との対応の度合いに応じて、システム仮想マシン又はプロセス仮想マシンのいずれかであってよい。システム仮想マシンは、完全なオペレーティングシステム(「OS」)の実行をサポートする完全なシステムプラットフォームを提供し得る。プロセス仮想マシンは、単一のプログラムを実行し、単一のプロセスをサポートし得る。いくつかの実装において、仮想マシン124-2は、ユーザー(例えば、ユーザーデバイス110)に代わって実行してもよく、データ管理、同期、又は長時間のデータ転送等、クラウドコンピューティング環境122のインフラストラクチャを管理することができる。
【0059】
仮想化ストレージ124-3は、1つ以上のストレージシステム及び/又は1つ以上のデバイスを含み、それらはコンピューティングリソース124のストレージシステム又はデバイス内で仮想化技術を使用する。いくつかの実装において、ストレージシステムの文脈においては、仮想化のタイプは、ブロック仮想化及びファイル仮想化を含み得る。ブロック仮想化とは、物理ストレージ又は異種構造に関係なく、ストレージシステムにアクセスすることができるように物理ストレージから論理ストレージを抽象化(分離)することを指し得る。このような分離により、ストレージシステムの管理者がエンドユーザーのストレージを管理する方法について、柔軟性を確保することができる。ファイル仮想化により、ファイルレベルでアクセスするデータと、ファイルが物理的に格納されている場所との依存関係をなくすことができる。これにより、ストレージの使用、サーバーの統合、及び/又は無停止のファイル移行を最適化することができる。
【0060】
ハイパーバイザー124-4は、コンピューティングリソース124等のホストコンピューター上で複数のオペレーティングシステム(例えば、「ゲストオペレーティングシステム」)を同時に実行することを可能にするハードウェア仮想化技術を提供することができる。ハイパーバイザー124-4は、仮想オペレーティングプラットフォームをゲストオペレーティングシステムに提示することができるとともに、ゲストオペレーティングシステムの実行を管理することもできる。様々なオペレーティングシステムの複数のインスタンスは、仮想化されたハードウェアリソースを共有可能である。
【0061】
ネットワーク130は、1つ以上の有線及び/又は無線ネットワークを含む。例えば、ネットワーク130は、セルラーネットワーク(例えば、第5世代(5G)ネットワーク、ロングタームエボリューション(LTE)ネットワーク、第3世代(3G)ネットワーク、符号分割多重アクセス(CDMA)ネットワーク等)、公衆陸上移動体ネットワーク(PLMN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、電話網(例えば、公衆交換電話網(PSTN))、プライベートネットワーク、アドホックネットワーク、イントラネット、インターネット、光ファイバーベースのネットワーク等、及び/又は、これらのタイプ又は他のタイプのネットワークの組合せを含み得る。
【0062】
図1に示されているデバイス及びネットワークの数及び配置は、一例として示したものである。実際には、
図1に示されているものと比して、デバイス及び/又はネットワークを多くする、デバイス及び/又はネットワークを少なくする、デバイス及び/又はネットワークを異ならせる、又はデバイス及び/又はネットワークの配置を異ならせてよい。さらに、
図1に示されている2つ以上のデバイスを単一のデバイス内で実装することができる、又は
図1に示されている単一のデバイスを複数の分散型デバイスとして実装されてよい。加えて、又は代替的に、環境100のデバイスのセット(例えば、1つ以上のデバイス)は、環境100のデバイスの別のセットによって実行されるものとして説明される1つ以上の機能を実行してよい。
【0063】
図2は、デバイス200の例示のコンポーネントの図である。デバイス200は、ユーザーデバイス110及び/又はプラットフォーム120に対応し得る。
図2に示されているように、デバイス200は、バス210、プロセッサ220、メモリ230、ストレージコンポーネント240、入力コンポーネント250、出力コンポーネント260、及び通信インターフェース270を含んでよい。
【0064】
バス210は、デバイス200のコンポーネント間の通信を可能とするコンポーネントを含むことができる。プロセッサ220は、ハードウェア、ファームウェア、又はハードウェアとソフトウェアとの組合せで実装することができる。プロセッサ220は、CPU(central processing unit)、GPU(graphics processing unit)、APU(accelerated processing unit)、マイクロプロセッサ、マイクロコントローラー、デジタルシグナルプロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、又は別のタイプの処理コンポーネントとすることができる。いくつかの実施態様において、プロセッサ220は、機能を実行するようにプログラムすることが可能な1つ以上のプロセッサを含む。メモリ230は、プロセッサ220が使用する情報及び/又は命令を格納するランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、及び/又は別のタイプのダイナミック又はスタティックストレージデバイス(例えば、フラッシュメモリ、磁気メモリ、及び/又は光学メモリ)を含む。
【0065】
ストレージコンポーネント240は、デバイス200の動作と使用に関連する情報及び/又はソフトウェアを格納する。例えば、ストレージコンポーネント240は、対応するドライブと合わせて、ハードディスク(例えば、磁気ディスク、光ディスク、光磁気ディスク、及び/又はソリッドステートディスク)、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、フロッピーディスク、カートリッジ、磁気テープ、及び/又は別のタイプの非一時的コンピューター可読媒体を含み得る。入力コンポーネント250は、ユーザー入力(例えば、タッチスクリーンディスプレイ、キーボード、キーパッド、マウス、ボタン、スイッチ、及び/又はマイクロフォン)等を介して、デバイス200が情報を受信できるようにするコンポーネントを含む。加えて、又は代替的に、入力コンポーネント250は、情報を検知するセンサー(例えば、全地球測位システム(GPS)コンポーネント、加速度計、ジャイロスコープ、及び/又はアクチュエーター)を含んでよい。出力コンポーネント260は、デバイス200からの出力情報を提供するコンポーネント(例えば、ディスプレイ、スピーカー、及び/又は1つ以上の発光ダイオード(LED))を含む。
【0066】
通信インターフェース270は、有線接続、無線接続、又は有線接続と無線接続との組合せ等を介して、デバイス200が他のデバイスと通信することを可能にするトランシーバー型コンポーネント(例えば、トランシーバー、及び/又は別個の受信機と送信機)を含む。通信インターフェース270は、デバイス200が別のデバイスから情報を受信すること及び/又は別のデバイスに情報を提供することを可能にし得る。例えば、通信インターフェース270は、イーサネットインターフェース、光インターフェース、同軸インターフェース、赤外線インターフェース、無線(RF)インターフェース、ユニバーサルシリアルバス(USB)インターフェース、Wi-Fiインターフェース、セルラーネットワークインターフェース等を含むことができる。
【0067】
デバイス200は、本明細書に記載の1つ以上の処理を実行することができる。デバイス200は、メモリ230及び/又はストレージコンポーネント240等の非一時的コンピューター可読媒体に格納されたソフトウェア命令をプロセッサ220が実行することにより、これらの処理を実行することができる。コンピューター可読媒体は、本明細書においては、非一時的メモリデバイスとして定義される。メモリデバイスは、単一の物理ストレージデバイス内のメモリ空間又は複数の物理ストレージデバイスにわたって分散したメモリ空間を含む。
【0068】
ソフトウェア命令は、別のコンピューター可読媒体から、又は通信インターフェース270を介して別のデバイスから、メモリ230及び/又はストレージコンポーネント240に読み込まれ得る。メモリ230及び/又はストレージコンポーネント240に格納されたソフトウェア命令は、実行された時、プロセッサ220に対して、本明細書に記載の1つ以上の処理を実行させることができる。
【0069】
加えて、又は代替的に、本明細書に記載された1つ以上の処理を実行するためにハードワイヤード回路を、ソフトウェア命令の代わりに、又はソフトウェア命令と組み合わせて使用することができる。したがって、本明細書に記載の実施態様は、ハードウェア回路とソフトウェアとの任意の特定の組合せに限定されるものではない。
【0070】
図2に示されているコンポーネントの数及び配置は、一例として示したものである。実際には、デバイス200は、
図2で示されているものと比して、コンポーネントを多くする、コンポーネントを少なくする、コンポーネントを異ならせる、又はコンポーネントの配置を異ならせてよい。加えて、又は代替的に、デバイス200のコンポーネントのセット(例えば、1つ以上のコンポーネント)は、デバイス200のコンポーネントの別のセットによって実行されるものとして説明される1つ以上の機能を実行してよい。
【0071】
図3~
図9Bに関して以下で論じられるように、実施形態において、上記で論考した要素のうちの少なくとも1つを用いて、ライブネス検出トレーニングデータセットを生成するシステム又はデバイス、ライブネス検出モデルをトレーニングするシステム又はデバイス、及びライブネス検出を行うシステム又はデバイスのうちの少なくとも1つを実装してよい。
【0072】
図3は、実施形態による、ライブネス検出トレーニングデータセットを生成する例示的なデータセット生成システム300のブロック図である。実施形態において、データセット生成システム300は、提示攻撃、例えば、プリントされたマスク攻撃又はラップ攻撃を識別するための敵対的な識別的特徴の使用に関係してよい。実施形態において、敵対的な識別的特徴は、スペクトル撮像又はRGB-D撮像等の先進的な撮像方式に頼ることなく2Dプリントされたマスク攻撃又はラップ攻撃を確実に検出するためのものである。
図3~
図9Bの例は、以下で顔画像に基づいたライブネス検出に関して説明されるが、実施形態はそれに限定されない。実施形態を用いて、任意の特性、例えば、虹彩、指紋、静脈特性、又は所望に応じた任意の他の特性等の他のバイオメトリック特性に基づいて、ライブネス検出又は任意の他の検出若しくは識別が実行されてもよいことが理解されるべきである。
【0073】
上記で論じたように、多くの関連技術の技法は、真正のサンプル及び攻撃サンプルの双方を含むトレーニングデータセットの利用可能性に依拠する。しかしながら、そのようなトレーニングデータセットは、実際に取得するのが困難であるか又は不可能である場合がある。例えば、FRGCデータセット及びSWAN-MBD等のデータセットは、研究又は非商用目的でのみ利用可能である場合がある。
【0074】
したがって、本開示の実施形態は、VAE-GANアーキテクチャ等のNNアーキテクチャを用いて、真正のサンプルの潜在的な特徴表現をモデル化及び利用して、人工攻撃サンプルを生成してよい。結果として、真正のサンプル及び攻撃サンプルの双方を含むトレーニングデータセットは、入力として真正のサンプルのみを用いて生成されてよい。
【0075】
概して、VAEに対応するNN要素は、例えば、本物のサンプル又は真正のサンプルであってよい入力データの分布を学習してよい。真正の画像、及びラップ攻撃画像等の攻撃画像においてピクセルレベルの差異が存在するため、真正のサンプルのRGB画像にわたってVAEを学習又はトレーニングすることにより、本物のサンプル又は真正のサンプルのみのロバストな潜在的表現を提供してよい。このため、VAEエンコーダーを通じて本物のサンプル及び偽物のサンプルを通すことにより、これらのサンプルにおける潜在的な表現の差異が生じることになる。さらに、GANに対応するNN要素を用いた敵対的トレーニングは、VAE要素が、例えば、以下でより詳細に論じられるパラメーターZ等の追加のパラメーターを用いて、人工攻撃サンプルを生成するのに役立ってよい。
【0076】
実施形態において、データセット生成システム300は、本物のサンプルを含みうる画像データ302を受け取ってよい。実施形態において、本物のサンプルは、本物の顔画像、例えば、1つ以上の公的に又は商業的に利用可能な顔認識データベースからの顔画像を含んでよい。実施形態において、そのようなデータベースは、顔認識グランドチャレンジ(FRGC)データセット、SWANマルチモードバイオメトリックデータセット(SWAN-MBD)、又は任意の商業的に利用可能なデータセットを含んでよい。実施形態において、入力データ302は、本物のサンプル又は真正のサンプルのみを含んでもよく、攻撃サンプルを含まなくてもよいが、実施形態はこれに限定されない。
【0077】
実施形態において、データセット生成システム300は、入力データ302に対し前処理を行いうる前処理モジュール304を含んでよい。例えば、前処理モジュール304は、顔及びランドマーク検出、スケーリング、顔領域のクロッピング、及び入力RGB画像の動的範囲を特定の範囲、例えば[0,255]に制約する正規化等の動作を行ってよい。実施形態において、入力データ302に含まれる本物のサンプルは、人工攻撃サンプルを生成するための、又はトレーニングデータセットに含めるための、入力としてのそれらの適性を高めるように前処理されてよい。実施形態において、前処理モジュール304はNN要素を含んでもよいが、実施形態はそれに限定されない。例えば、前処理モジュール304は、マルチタスクカスケード式畳み込みネットワーク(MTCNN:multi-task cascaded convolutional network)又は任意の他のタイプのNNに対応する要素を含んでよい。
【0078】
実施形態において、前処理された本物のサンプルは、真正のサンプルXとして用いられてよく、これは、データセット生成システム300に含まれるNN要素を機械学習するための入力として提供されてよい。実施形態において、データセット生成システム300は、VAE-GANアーキテクチャに対応しうるNN要素を含んでよい。例えば、データセット生成システム300は、エンコーダー306、デコーダー/生成器314、及び識別器316を含んでよい。実施形態において、エンコーダー306は、VAEのエンコーダー要素に対応してよく、識別器316は、GANの識別器要素に対応してよく、デコーダー/生成器314はVAEのデコーダー要素及びGANの生成器要素の双方に対応してよい。
【0079】
実施形態において、真正の画像Xは、エンコーダー306への入力として提供されてよい。エンコーダー306の出力は、平均ベクトル308及び標準偏差ベクトル310を含んでよく、これらは真正の画像Xに対応してよい。実施形態において、エンコーダー306の出力は、デコーダー/生成器314への入力として用いうるベクトル312を含んでよい。実施形態において、人工攻撃画像を生成するために、ベクトル312は、1つ以上の追加のパラメーター、例えばパラメーターZによって変更されてよい。実施形態において、追加のパラメーターは、攻撃パターン生成に用いられてよい。
【0080】
例えば、パラメーターZは、1つ以上の人工攻撃画像が生成される際に追加されることになる攻撃画像の特性を示してよい。例えば、パラメーターZはラップ攻撃パラメーターであってよく、例えば、1つ以上の人工攻撃画像が生成される際に1つ以上の人工攻撃画像に加えられることになる湾曲量を示してよい。実施形態において、パラメーターZの値が第1の値、例えば0の値であることに基づいて、対応する人工攻撃画像が、平面にプリントされたマスクに対応する平面状の画像として生成されてよい。実施形態において、パラメーターZの値が第2の値、例えば1の値であることに基づいて、対応する人工攻撃画像が、ラッピングされたプリントされたマスクに対応するラッピングされた画像として生成されてよい。実施形態において、パラメーターZは、離散的な値に制約されてもよく、多岐にわたる度合いの湾曲に対応する連続値の範囲であってもよい。実施形態において、パラメーターZ又は他の追加のパラメーターを用いて、ラップ攻撃画像等の攻撃画像の他の特性を加えてよい。例えば、実施形態において、パラメーターZ又は他の追加されるパラメーターを用いて、テクスチャ、例えば、平坦なテクスチャ又は光沢のあるテクスチャ等の、プリント画像に関連付けられたテクスチャを加えてよい。
【0081】
実施形態において、トレーニング中、パラメーターZについて0の値を有するサンプル、及びパラメーターZについて1の値を有するサンプルが取得され、VAE-GANモデルをトレーニングするために用いられてよい。次に、GANモデルは、パラメーターZについて0.1~0.9の値に対応する補間された特徴を自動的に学習してよい。トレーニングが完了した後、サンプルが例えば0.1~0.9の値を有するパラメーターZを有する場合、VAE-GANモデルは、いくつかの部分的に曲げられた又は補間されたトレーニングサンプルを生成してよい。
【0082】
したがって、実施形態において、エンコーダー306は、潜在的な表現を作成してよく、デコーダー/生成器314は、攻撃サンプルを生成してよい。実施形態において、GANを用いた敵対的トレーニングの使用は、VAEがパラメーターZの支援によりラップ攻撃サンプル又は混合されたサンプルを生成するのに役立ってよい。次に、識別器316は、本物のサンプル又は真正のサンプルと、人工攻撃サンプルとを識別するように学習してよい。
【0083】
実施形態において、平均ベクトル308、標準偏差ベクトル310、ベクトル312(人工攻撃パラメーターZによって変更される場合がある)及びエンコーダー306の任意の他の出力のうちの1つ以上が、デコーダー/生成器314のための入力として共有されてよい。デコーダー/生成器314の出力は、人工攻撃サンプル
【数1】
であってよい。実施形態において、人工攻撃サンプル
【数2】
は、エンコーダー306に入力される真正の顔画像に対応する人工攻撃画像を含んでよい。例えば、人工攻撃画像は、真正の顔画像に対応し、ラップ攻撃に対応する特性を有し得る人工ラップ攻撃画像を含んでよい。
【0084】
実施形態において、真正のサンプルX及び人工攻撃サンプル
【数3】
は、識別器316のための入力として提供されてよい。識別器316は、特定の入力が本物であるか又は偽物であるかを示す本物/偽物判断を提供するために、真正のサンプルX及び人工攻撃サンプル
【数4】
に基づいた学習又はトレーニングを行ってよい。実施形態において、この本物/偽物判断は、入力画像が真正の顔画像であるか又は人工ラップ攻撃画像であるかの判断に対応してよい。実施形態において、改善された人工攻撃サンプル
【数5】
を作成するために、識別器316によって提供される1つ以上の本物/偽物判断を用いて、エンコーダー306及びデコーダー/生成器314を更にトレーニングしてよい。
【0085】
実施形態において、人工攻撃サンプル
【数6】
が生成された後、データセット生成システム300は、真正のサンプルX及び人工攻撃サンプル
【数7】
に基づいてトレーニングデータセットを生成してよい。実施形態において、トレーニングデータセットは、真正のサンプルX及び人工攻撃サンプル
【数8】
を含んでよい。実施形態において、トレーニングデータセットはライブネス検出トレーニングデータセットであってよく、真正のサンプルXは真正の顔画像であってよく、人工攻撃サンプル
【数9】
は、人工画像、例えば人工ラップ攻撃画像であってよい。
【0086】
データセット生成システム300は、上記で、VAE-GANに対応するNN要素を含むものとして説明されているが、実施形態はそれに限定されない。実施形態において、データセット生成システム300は、任意の他のタイプのNN要素、例えばGAN、リカレントNN(RNN)、畳み込みNN(CNN)、又は自己組織化マップ(SOM)を含んでよい。
【0087】
図4A~
図4Cは、実施形態による、ライブネス検出モデルをトレーニングする例示的なトレーニングシステムのブロック図である。
【0088】
図4Aに示すように、トレーニングデータセット402は、トレーニングシステム400Aに対する入力として提供されてよい。上記で論じたように、実施形態において、トレーニングデータセット402は、データセット生成システム300によって生成されるトレーニングデータセットに対応してよい。例えば、トレーニングデータセット402は、真正の顔画像等の真正のサンプルX、及び人工ラップ攻撃画像等の人工攻撃サンプル
【数10】
を含んでよい。
【0089】
実施形態において、トレーニングデータセット402からのサンプルは、特徴抽出器404に提供されてよく、特徴抽出器404は、サンプルから抽出された特徴をライブネス検出モデル406に提供してよい。ライブネス検出モデル406は、特定の入力が本物であるか又は偽物であるかを示す、本物/偽物判断に基づいて、抽出された特徴及び/又はトレーニングデータセット402について学習又はトレーニングを行ってよい。例えば、トレーニングデータセット402が、真正の顔画像及び人工ラップ攻撃画像を含むライブネス検出トレーニングデータセットであることに基づいて、ライブネス検出モデル406は、トレーニングシステム400Aによって、特定の画像が真正の顔画像であるか、又はラップ攻撃画像等の攻撃画像であるかを示す本物/偽物判断を提供するようにトレーニングされてよい。
【0090】
実施形態において、ライブネス検出モデル406は、機械学習及び/又はNNモデルであってよく、又は他の形で機械学習及び/又はNN要素を含んでよい。例えば、ライブネス検出モデル406は、サポートベクトルマシン(SVM)又はサポートベクトル分類器を含んでもよいが、実施形態はこれに限定されず、他の機械学習方法が用いられてもよい。
【0091】
実施形態において、上記で説明したVAE-GAN要素は、優勢な構造情報、並びに真正のサンプル及び攻撃サンプルの分布を捕捉しモデル化しうるため、VAE-GAN要素によって生成されるトレーニングデータセットは、ライブネス検出モデル406が、それらの潜在的な特徴を学習し、それらを弁別することを可能にしうる。
【0092】
図4B及び
図4Cにおいて見てとることができるように、トレーニングシステム400B及びトレーニングシステム400Cは、トレーニングシステム400B及びトレーニングシステム400Cがデータセット生成システム300の1つ以上の要素を用いて特徴抽出器404の機能のうちの1つ以上を実行しうることを除いて、トレーニングシステム400Aに類似していてよい。便宜上、
図4B及び
図4Cに示すいくつかの要素の重複した記載は省かれうる。
【0093】
実施形態において、識別器316が
図3について上記で論じたようにトレーニングされるとき、識別器ネットワーク316は、真正のサンプルX及び人工攻撃サンプル
【数11】
を識別するように学習してよい。データセット生成システム300のVAE要素は、人工攻撃サンプル
【数12】
を生成するのみのために、真正のサンプルによりトレーニングされうるため、識別器316が真正のサンプル及びアーティファクトサンプルを識別しうるロバストな弁別的特徴を抽出することができることが想定され得る。したがって、識別器316の最後の層から抽出された特徴は、真正のサンプル及び攻撃サンプルの顕著な特徴を捕捉することが可能になりうる。したがって、
図4Bに示すように、トレーニングシステム400Bは、識別器316を用いて特徴抽出器404の機能を実行してよい。換言すれば、トレーニングデータセット402からのサンプルは、識別器316に提供されてよく、識別器316は、サンプルから抽出された特徴をライブネス検出モデル406に提供してよい。
【0094】
加えて、
図4Cに示すように、トレーニングシステム400Cは、出力がパラメーターZによって変更されたエンコーダー306を用いて特徴抽出器404の機能を実行してよい。換言すれば、トレーニングデータセット402からのサンプルは、出力がパラメーターZによって変更されたエンコーダー306に提供されてよく、エンコーダー306は、サンプルから抽出された特徴をライブネス検出モデル406に提供してよい。
【0095】
トレーニングシステム400A~400Cは、特徴抽出のための様々な要素を含むものとして示されているが、実施形態はこれに限定されない。例えば、実施形態において、トレーニングデータセット402からのサンプルは、ライブネス検出モデル406に直接提供されてもよく、ライブネス検出モデル406は、トレーニングデータセット402からのサンプルに対し直接学習又はトレーニングを行ってもよい。
【0096】
図5A~
図5Cは、実施形態による例示的なライブネス検出システムのブロック図である。
【0097】
図5Aに示すように、ライブネス検出システム500Aは、リンク506及びリンク508のうちの少なくとも1つを通じてバックエンド504と通信しうるアプリケーションサーバー502を含んでよく、バックエンド504は、例えば、サーバーであってよい。実施形態において、アプリケーションサーバー502は、ハイパーテキストトランスファープロトコル(HTTP)要求及び非同期JavaScript及びXML(AJAX)要求のうちの1つ以上を用いて、又は所望に応じて任意の他の通信方式を用いてバックエンド504と通信してよい。
【0098】
アプリケーションサーバー502は、入力ビデオをバックエンド504に提供し、バックエンド504が入力ビデオに対しライブネス検出を行うことを要求してよい。入力ビデオは、前処理モジュール542に提供されてよく、前処理モジュール542は、入力ビデオに対し前処理を行い、フレームのシーケンスを生成してよい。実施形態において、前処理モジュール542は、前処理モジュール304に類似していてよく、顔及びランドマーク検出、スケーリング、顔領域のクロッピング、及び入力RGB画像の動的範囲を特定の範囲、例えば[0,255]に制約する正規化等の動作を行ってよい。実施形態において、入力ビデオは、ライブネス検出のための入力としてのフレームのシーケンスの適性を増大させるように前処理されてよい。実施形態において、前処理モジュール542はNN要素を含んでもよいが、実施形態はそれに限定されない。例えば、前処理モジュール542は、MTCNN又は任意の他のタイプのNNに対応する要素を含んでもよい。実施形態において、前処理モジュール542は、顔及び顔ランドマークのうちの1つ以上を検出し、次に、例えば、入力ビデオのクロッピングによって、検出された顔を含むようにフレームのシーケンスを生成してよい。実施形態において、前処理動作は、代わりに別の要素、例えば、アプリケーションサーバー502に含まれる要素によって実行されてもよい。
【0099】
前処理後、フレームのシーケンスは、特徴抽出器404のための入力として提供されてよく、特徴抽出器404は、サンプルから抽出された特徴をライブネス検出モデル406に提供してよい。ライブネス検出モデル406は、前処理されたフレームのシーケンスに対しライブネス検出を行ってよく、前処理されたフレームのシーケンスの1つ以上のフレームに基づいて本物/偽物判断を提供してよい。例えば、本物/偽物判断は、フレームのシーケンスのうちの1つ以上のフレームが、顔の本物の画像若しくは真正の画像を含むか、又はラップ攻撃画像等の攻撃画像を含むかを示してよい。
【0100】
ライブネス検出モデル406が本物/偽物判断を出力した後、本物/偽物判断はアプリケーションサーバー502に提供されてよい。実施形態において、アプリケーションサーバー502は、フレームワーク522を含んでよく、フレームワーク522は、ページレンダリングモジュール524及び予測モジュール526を動作させてよい。実施形態において、ページレンダリングモジュール524及び予測モジュール526は、例えば、アプリケーションプログラミングインターフェースに対応してよい。実施形態において、ページレンダリングモジュール524は、ウェブページ等のページをレンダリングしてよく、アプリケーションサーバー502は、レンダリングされたページをユーザーに提供してよい。ページは、入力ビデオに対応するビデオと、ユーザーがライブネス検出を要求することを可能にするユーザーインターフェースとのうちの1つ以上を表示してよい。ライブネス検出の要求が受信されていることに基づいて、予測モジュール526は、バックエンド504に入力ビデオを提供してよく、アプリケーションサーバー502が本物/偽物判断を受信した後、ページレンダリングモジュール524は、本物/偽物判断に対応する情報を含むように、レンダリングされたページを更新してよい。
【0101】
実施形態において、バックエンド504は、追加の情報を、本物/偽物判断と共にアプリケーションサーバー502に提供されてよい。例えば、抽出された特徴に対応する情報はアプリケーションサーバー502に提供されてよく、ページレンダリングモジュール524は、この情報を含むように、レンダリングされたページを更新してよい。抽出された特徴に対応する情報は、例えば、画像内で検出された顔のロケーションを示す情報を含んでよく、ページレンダリングモジュール524は、レンダリングページ上に表示する顔バウンディングボックスをレンダリングしてよい。
【0102】
図5B及び
図5Cにおいて見てとることができるように、ライブネス検出システム500B及びライブネス検出システム500Cは、ライブネス検出システム500B及びライブネス検出システム500Cがデータセット生成システム300の1つ以上の要素を用いて特徴抽出器404の機能のうちの1つ以上を実行してよいことを除いて、ライブネス検出システム500Aに類似していてよい。
【0103】
例えば、
図5Bに示すように、ライブネス検出システム500Bは、識別器316を用いて特徴抽出器404の機能を実行してよい。換言すれば、フレームのシーケンスは、識別器316に提供されてよく、識別器316は、フレームのシーケンスから抽出された特徴をライブネス検出モデル406に提供してよい。加えて、
図5Cに示すように、ライブネス検出システム500Cは、出力がパラメーターZによって変更されたエンコーダー306を用いて特徴抽出器404の機能を実行してよい。換言すれば、フレームのシーケンスは、出力がパラメーターZによって変更されたエンコーダー306に提供されてよく、エンコーダー306は、フレームのシーケンスから抽出された特徴をライブネス検出モデル406に提供してよい。便宜上、
図5B及び
図5Cに示す他の要素の重複した記載は省かれてよい。
【0104】
図6A及び
図6Bは、実施形態による、ライブネス検出システムの例示的なユーザーインターフェーススクリーンを示す。実施形態において、
図6A及び
図6Bのユーザーインターフェーススクリーンは、ページレンダリングモジュール524によってレンダリングされるウェブページに対応してよい。
図6A及び
図6Bにおいて見てとることができるように、ユーザーインターフェーススクリーンは、攻撃画像のような攻撃画像の元のビデオ(Original video)の1つ以上のフレームと、上記で
図5A~
図5Cに関して論じたように、例えば、元のビデオがバックエンド504を用いて処理された後の、入力ビデオの処理されたバージョンの1つ以上のフレームとを含んでよい。処理されたビデオの1つ以上のフレームは、ライブネスモデル406によって行われた本物/偽物判断に対応する情報、例えば、ラベルと、元のビデオから抽出された特徴に対応する情報、例えば、検出された顔の周りに配置された顔バウンディングボックスとを含んでよい。
【0105】
図6Aに見てとることができるように、元のビデオ(Original video)がラップ攻撃画像を含むことに基づいて、ライブネス検出モデル406は、ラップ攻撃画像が検出されることを示す、「偽物」の本物/偽物判断を出力してよい。結果として、ユーザーインターフェーススクリーン上に表示される処理されたビデオ(Processed video)は、「偽物(Fake)」を示すラベルと、ラップ攻撃画像内で検出された顔に位置する顔バウンディングボックスとを含んでよい。
【0106】
図6Aに見てとることができるように、元のビデオ(Original video)が真正の顔画像を含むことに基づいて、ライブネス検出モデル406は、真正の顔画像が検出されることを示す、「本物」の本物/偽物判断を出力してよい。結果として、ユーザーインターフェーススクリーン上に表示される処理されたビデオ(Processed video)は、「本物(Real)」を示すラベルと、真正の顔画像内で検出された顔に位置する顔バウンディングボックスとを含んでよい。
【0107】
図7は、実施形態における、例示的な真正の画像及びラップ攻撃画像を、ライブネス検出システムに関係する対応する視覚化と共に示す。例えば、画像702は真正の顔画像であってよく、画像706は画像702の真正の顔画像に対応するラップ攻撃画像であってよい。加えて、画像704は、画像702に対応する勾配加重クラス活性化マッピング(Grad-CAM)画像であってよく、画像708は、画像706に対応するGrad-CAM画像であってよい。加えて、画像710は真正の顔画像であってよく、画像714は画像710の真正の顔画像に対応するラップ攻撃画像であってよい。加えて、画像712は、画像710に対応するGrad-CAM画像であってよく、画像716は、画像714に対応するGrad-CAM画像であってよい。
【0108】
概して、Grad-CAM画像は、最終的な畳み込み層に流れるターゲットコンセプトの勾配を用いて、画像内の重要な領域を強調する粗い局所化マップを生成してよい。実施形態において、画像702及び704は、例えば、特徴抽出器404を用いて画像702及び706から抽出された特徴、又は特徴抽出器404及びライブネス検出モデル406のうちの1つ以上を用いて重要であると識別された特徴に対応する情報に基づいて生成されてよい。
【0109】
図8A~
図8Gは、
図1~
図7に関して上記で論じた実施形態に一致するライブネス検出システムから取得された実験的セットアップ及び実験結果に関係しうる。
【0110】
図8A及び
図8Bは、一実施形態による、なりすまし防止データセットからの例示的な画像を示す。特に、
図8Aは、真正のサンプルを示し、
図8Bは、ChaLearn CASIA-SURFデータセットからの攻撃サンプルを示す。ChaLearn CASIA-SURFデータセットは、被写体及び視覚モダリティの双方の観点における最も大きな公的に利用可能な顔のなりすまし防止データセットのうちの1つでありうる。特に、ChaLearn CASIA-SURFは、3つのモダリティ(RGB、深さ及びIR)を有する21000個のビデオを用いた1000個の被写体からなる。真正のサンプル及び攻撃サンプルは、RGB情報(左)、深さ情報(中央)及び赤外線情報(右)を含む。
【0111】
図8Cは、実施形態による、なりすまし防止データからの例示的なビデオのフレームを示す。特に、
図8Cは、ChaLearn CASIA SURFデータセットに含まれる本物のビデオ(Real Video)及び偽物のビデオ(Fake Video)についての元のデータ(Original Data)及び処理されたデータ(Processed Data)に対応するフレームを示す。概して、ChaLearn CASIA SURFデータセット内のサンプルは、1つのライブビデオと、眼の領域、鼻の領域、口の領域の切り欠き及びそれらの組合せを有する、プリントされた平坦な顔画像、湾曲した顔画像を含みうる、6つの攻撃様式に関係する6つの対応する偽物のビデオとを含んでよい。ChaLearn CASIA SURFデータセットのデータ取得は、Intel RealSence SR300によりキャプチャされてよい。
【0112】
図8Dは、一実施形態による、なりすまし防止データセットからの例示的な画像を示す。特に、画像802は真正の顔画像であってよく、画像804は画像802に対応するラップ攻撃画像であってよい。加えて、画像806は、画像802に対応する深度ベースの画像であってよく、画像818は、画像804に対応する深度ベースの画像であってよい。以下の表1は、画像802~808を含むなりすまし防止データセットの作成の詳細を含む。
【0113】
【0114】
図8Eは、一実施形態による、ライブネス検出システムに対応する実験結果を示す。特に、
図8Eは、上記で
図1~
図7に関して論じ、以下で
図9A及び
図9Bに関して更に論じられる実施形態と一致したライブネス検出システムの実験的試験の結果を示す。これらの結果は、バイオメトリック提示攻撃検出のためのISO/IEC30107-3:2017メトリックの観点で表現される。メトリックは、攻撃提示分類エラー率(APCER)を含んでよい。APCERは以下の式1に従って表現されてよい。
【0115】
【0116】
上記の式1において、NPAIは、攻撃提示がされた数であり、Resiは、i番目の提示が攻撃提示として分類される場合、1の値をとり、真正の提示として分類される場合、0の値をとる。
【0117】
メトリックは、真正の提示分類エラー率(BPCER)を更に含んでよい。BPCERは以下の式2に従って表現されてよい。
【数14】
【0118】
上記の式2において、NBFは真正の提示の総数である。
【0119】
メトリックは、平均分類エラー率(ACER)を更に含んでよい。ACERは以下の式3に従って表現されてよい。
【数15】
【0120】
メトリックは、等価エラー率(EER)を更に含んでよい。EERは以下の式4に従って表現されてよい。
【数16】
【0121】
以下の表2は、
図8Eに示す結果に対応する実験的セットアップの詳細を示す。
【0122】
【0123】
図8Eに示すように、「プリント紙(Print Paper)マスク」及び「光沢紙(Glossy Paper)マスク」とラベル付けされた結果が、上記で
図8Dに関して論じたなりすまし防止データセットを入力として用いてライブネス検出システムを試験することによって取得され、「CASIA-SURF」とラベル付けされた結果が、上記で
図8A~
図8Cに関して論じたなりすまし防止データセットを入力として用いてライブネス検出システムを試験することによって取得された。
【0124】
図8F及び
図8Gは、実施形態による、ライブネス検出システムに対応する実験結果を示す。特に、
図8Fは、異なるデータベースのデータベースにまたがる評価の受信者動作特性(ROC)曲線を示し、
図8Eは、対応する検出誤差トレードオフ(DET)曲線を示す。
【0125】
図9Aは、ライブネス検出トレーニングデータセットを生成し、ライブネス検出モデルをトレーニングする例示的なプロセス900Aのフローチャートである。いくつかの実装において、
図9Aの1つ以上のプロセスブロックは、データセット生成システム300及びトレーニングシステム400A~400Cの1つ以上の要素によって実行されてもよい。いくつかの実装において、
図9Aの1つ以上のプロセスブロックは、プラットフォーム220及びユーザーデバイス210等の、生成システム300及びトレーニングシステム400と別個の又はこれらを含む別のデバイス又はデバイスのグループによって実行されてもよい。
【0126】
図9Aに示すように、プロセス900Aは、顔の複数の本物の画像を取得すること(ブロック912)を含んでよい。実施形態において、顔の複数の本物の画像は、入力データ302及び真正のサンプルXの少なくとも1つに対応してよい。
【0127】
図9Aに更に示すように、プロセス900Aは、複数の本物の画像をニューラルネットワークに提供すること(ブロック914)を含んでよい。実施形態において、ニューラルネットワークという用語は、ディープNN、ディープラーニング技法、又は任意の他のタイプの機械学習技法のうちの少なくとも1つを指してもよい。実施形態において、ニューラルネットワークは、例えばエンコーダー306、デコーダー/生成器314、及び識別器316のようなデータセット生成システム300の複数のNN要素うちの少なくとも1つを含んでよい。
【0128】
図9Aに更に示すように、プロセス900Aは、ニューラルネットワークの出力に基づいて、複数の本物の画像に対応する複数の人工画像を生成すること(ブロック916)を含んでよい。実施形態において、複数の人工画像は、人工攻撃サンプル
【数17】
に対応してよい。
【0129】
図9Aに更に示すように、プロセス900Aは、複数の本物の画像及び複数の人工画像に基づいてライブネス検出モデルをトレーニングすることを含んでよく、ライブネス検出モデルを用いて、顔の入力画像が顔のライブ画像を含むか否かを判断することによってライブネス検出が行われる(ブロック918)。実施形態において、ライブネス検出モデルは、ライブネス検出モデル406に対応してよい。
【0130】
実施形態において、ニューラルネットワークは、変分オートエンコーダー-敵対的生成ネットワーク(VAE-GAN)を含んでよい。
【0131】
実施形態において、複数の人工画像は、少なくとも1つの人工ラップ攻撃画像を含んでよい。
【0132】
実施形態において、少なくとも1つの人工ラップ攻撃画像は、ラップ攻撃パラメーターを用いて生成されてよい。
【0133】
実施形態において、ラップ攻撃パラメーターの第1の値は、少なくとも1つの人工ラップ攻撃画像が、平坦なマスクに対応する平面状の顔画像を含みうることを示してよく、ラップ攻撃パラメーターの第2の値は、少なくとも1つの人工ラップ攻撃画像が、ラッピングされたマスクに対応するラッピングされた顔画像を含みうることを示してよい。
【0134】
実施形態において、複数の本物の画像は、ラップ攻撃パラメーターの第1の値を有する複数の第1の本物の画像と、ラップ攻撃パラメーターの第2の値を有する第2の複数の本物の画像とを含んでよく、複数の第1の本物の画像及び複数の第2の本物の画像に基づいて、少なくとも1つの人工ラップ攻撃画像は、ラップ攻撃パラメーターの第3の値を有するように生成されてよい。
【0135】
実施形態において、ライブネス検出モデルのトレーニングは、特徴抽出器を用いて、複数の本物の画像及び複数の人工画像から特徴を抽出することと、抽出された特徴に基づいてライブネス検出モデルをトレーニングすることとを含んでよい。
【0136】
実施形態において、ニューラルネットワークに含まれる識別器は、複数の人工画像が生成された後、特徴抽出器として用いられてよい。
【0137】
実施形態において、ライブネス検出モデルは、サポートベクトルマシン(SVM)を含んでよい。
【0138】
図9Bは、ライブネス検出の例示的なプロセス900Bのフローチャートである。いくつかの実装において、
図9Bの1つ以上のプロセスブロックは、ライブネス検出システム500A~500Cの1つ以上の要素によって実行されてもよい。いくつかの実装において、
図9Bの1つ以上のプロセスブロックは、プラットフォーム220及びユーザーデバイス210等の、ライブネス検出システム500A~500Cと別個の又はこれらを含む別のデバイス又はデバイスのグループによって実行されてもよい。
【0139】
図9Bに示すように、プロセス900Bは、顔の入力画像を取得すること(ブロック922)を含んでよい。実施形態において、顔の入力画像は、上記で
図5A~
図5Cに関して論じた入力ビデオ及びフレームのシーケンスのうちの少なくとも1つに対応してよい。
【0140】
図9Bに更に示すように、プロセス900Bは、入力画像に関する情報をライブネス検出モデルに提供すること(ブロック924)を含んでよい。実施形態において、ライブネス検出モデルは、顔の複数の本物の画像と、複数の本物の画像に基づいてニューラルネットワークによって生成される複数の人工画像とを用いてトレーニングされてよい。実施形態において、ライブネス検出モデルは、ライブネス検出モデル406に対応してよい。実施形態において、ニューラルネットワークは、例えばエンコーダー306、デコーダー/生成器314、及び識別器316bのような、データセット生成システム300の複数のNN要素、のうちの少なくとも1つを含んでよい。
【0141】
図9Bにおいて更に示されるように、プロセス900Bは、ライブネス検出モデルの出力に基づいて、入力画像が顔のライブ画像であるか否かを判断すること(ブロック926)を含んでよい。
【0142】
実施形態において、入力画像に関する情報は、入力画像の少なくとも1つの特徴を含んでよく、少なくとも1つの特徴は特徴抽出器を用いて抽出されてよい。
【0143】
実施形態において、特徴抽出器は、複数の人工画像が生成された後のニューラルネットワークに含まれる識別器を含んでよい。
【0144】
図9A及び
図9Bは、プロセス900A及び900Bの例示的なブロックを示しているが、いくつかの実装において、プロセス900A及び900Bは、更なるブロック、より少ないブロック、異なるブロック、又は
図9A及び
図9Bに示すものと異なる形で配置されたブロックを含んでもよい。さらに又は代替的に、プロセス900A及び900Bのブロックのうちの2つ以上が並列に実行されてもよい。
【0145】
上記で論じた実施形態は、ライブ提示又は真正の提示にのみ大きく基づいてよいラップ攻撃検出のVAE-GANベースのモデルアーキテクチャに関係してよい。実施形態は、真正のサンプルとしての役割を果たしうる任意の顔認識データベースに対しトレーニングされてよく、次に、攻撃サンプルを独立して生成してよく、これにより、識別器が、ネットワークパラメーターを一般化し、真正のクラス及び攻撃クラスの弁別的特徴を抽出することを可能にしてよい。実施形態は、VAE-GANアーキテクチャを利用して、ラップ攻撃画像をモデル化する生成表現ディープラーニング(deep generative representation learning)を取得してよく、パラメーターZは、ラッピングされた顔画像の湾曲を制御してよい。VAE-GAN識別器は、元のサンプルと生成されたサンプルとを識別しながら、生成器が洗練された攻撃サンプルを生成することを支援してよい。したがって、識別器の最後の層から抽出された特徴は、真正のサンプル及び攻撃サンプルの顕著な特徴をキャプチャすることが可能であってよい。実施形態において、VAE-GANは、優勢な構造情報、並びに真正のサンプル及び攻撃サンプルの分布を捕捉しモデル化してよく、これにより、SVMが、それらの潜在的な特徴を学習し、それらを識別することを可能にしてよい。
【0146】
前述の開示は、例示及び説明を提供するものであり、網羅的であること又は開示の正確な形態に実装を限定することを意図するものではない。上記の開示に照らして修正及び変形が可能である、又は修正及び変形を実装の実践から獲得することもできる。
【0147】
本明細書において用いられるとき、「コンポーネント」という用語は、ハードウェア、ファームウェア、又はハードウェア及びソフトウェアの組合せとして広義に解釈されることが意図される。
【0148】
本明細書に記載のシステム及び/又は方法は、異なる形態のハードウェア、ファームウェア、又はハードウェアとソフトウェアとの組合せで実装可能であることが明らかとなるであろう。これらのシステム及び/又は方法を実装するために使用される実際の専用制御ハードウェア又はソフトウェアコードは、実装を限定するものではない。したがって、本明細書では、特定のソフトウェアコードを参照せずに、システム及び/又は方法の動作及び挙動について説明する。理解すべき点として、本明細書の記載に基づくシステム及び/又は方法を実装するために、ソフトウェア及びハードウェアを設計することができる。
【0149】
特徴の特定の組合せが、特許請求の範囲に記載されている、及び/又は本明細書に開示されているが、これらの組合せは、想定される実装形態の開示を限定することを意図したものではない。実際、特許請求の範囲に具体的に記載されていない方法及び/又は本明細書に開示されていない方法で、これらの特徴の多くを組み合わせることができる。以下で列挙する各従属請求項は、1つの請求項のみにしか直接従属できないが、想定される実装形態の開示は、請求項の集合における他の全ての請求項と組み合わせた各従属請求項を含むものである。
【0150】
本明細書で使用される要素、行為、又は命令は、いずれも重要又は不可欠であると明示的に記載されていない限り、そのように解釈されるべきではない。また、本明細書において使用する場合、冠詞「a」及び「an」は、1つ以上の品目を含むことを意図しており、「1つ以上」と同じ意味で使用することができる。さらに、本明細書において用いられるとき、「セット」という用語は、1つ以上の項目(例えば、関連項目、非関連項目、関連項目及び非関連項目の組合せ等)を含むことが意図され、「1つ以上」と交換可能に用いられてもよい。1つの項目のみが意図される場合、「1つ」という用語又は類似の語が用いられる。また、本明細書において用いられるとき、「有する」、「有している」("has", "have", "having")等の用語は、オープンエンドの用語であることが意図される。さらに、「基づく」という語句は、別段の明言がない限り、「少なくとも部分的に基づく」を意味するように意図される。
【0151】
図面を参照して1つ以上の例示的な実施形態が上記で説明されたが、当業者であれば、添付の特許請求の範囲によって少なくとも部分的に定義される趣旨及び範囲から逸脱することなく、形態及び詳細における様々な変更がなされてよいことが理解されよう。