本人確認ソリューション PlatoBlockchain Data Intelligence を評価するための指標。 垂直検索。 あい。

本人確認ソリューションを評価するための指標

世界的に、摩擦のないデジタル ユーザー エクスペリエンスへの移行が加速しています。 ウェブサイトへの登録、オンラインでの取引、または単に銀行口座へのログインのいずれであっても、組織は顧客が経験する摩擦を減らすと同時に、セキュリティ、コンプライアンス、および不正防止対策を強化しようと積極的に取り組んでいます。 摩擦のないユーザー エクスペリエンスへの移行により、「デジタル世界で個人をどのように確認するのか?」という質問に答えることを目的とした、顔ベースの生体認証 ID 確認ソリューションが生まれました。

識別と認証の問題に関しては、顔のバイオメトリクスには XNUMX つの重要な利点があります。 まず、ユーザーにとって便利なテクノロジーです。パスワードを覚えたり、多要素チャレンジに対処したり、確認リンクをクリックしたり、CAPTCHA パズルを解いたりする必要はありません。 次に、高度なセキュリティが実現されます。顔のバイオメトリクスに基づく識別と認証は安全で、詐欺や攻撃の影響を受けにくくなります。

この投稿では、ID 検証の XNUMX つの主要なユース ケースであるオンボーディングと認証について詳しく説明します。 次に、生体認証システムの精度を評価するために使用される XNUMX つの主要な指標である、誤一致率 (誤認率とも呼ばれます) と誤不一致率 (本人拒否率とも呼ばれます) について詳しく説明します。 これらの XNUMX つの尺度は、生体認証システムの精度とエラー率を評価するために組織で広く使用されています。 最後に、ID 検証サービスの評価を実行するためのフレームワークとベスト プラクティスについて説明します。

添付参照 Jupyter Notebook この投稿に記載されているすべての手順を説明します。

ユースケース: オンボーディングと認証

バイオメトリクス ソリューションには、主にユーザー オンボーディング (検証と呼ばれることが多い) と認証 (識別と呼ばれることが多い) の XNUMX つのユース ケースがあります。 オンボーディングでは、XNUMX つの画像間で顔を XNUMX 対 XNUMX で照合する必要があります。たとえば、自撮り写真を運転免許証やパスポートなどの信頼できる身分証明書と比較します。 一方、認証では、格納された顔のコレクションに対する顔の XNUMX 対多の検索が必要になります。たとえば、従業員の顔のコレクションを検索して、従業員が建物の特定のフロアへのアクセスを許可されているかどうかを確認します。

オンボーディングと認証のユース ケースの精度パフォーマンスは、バイオメトリック ソリューションで発生する可能性のある偽陽性と偽陰性のエラーによって測定されます。 類似性スコア (一致しないことを意味する 0% から完全に一致することを意味する 100% までの範囲) を使用して、一致または不一致の決定を行います。 ソリューションが XNUMX 人の異なる個人の画像を同一人物と見なすと、誤検知が発生します。 一方、偽陰性は、ソリューションが同じ人物の XNUMX つの画像を異なるものと見なしたことを意味します。

オンボーディング: XNUMX 対 XNUMX の検証

生体認証ベースのオンボーディング プロセスにより、プロセスが簡素化され、保護されます。 最も重要なことは、組織と顧客がほぼ摩擦のないオンボーディング エクスペリエンスを実現できるようにすることです。 これを行うには、ユーザーは、オンボーディング プロセス中に、ユーザーの顔を含む何らかの形式の信頼できる身分証明書 (運転免許証やパスポートなど) の画像を提示し、自撮り画像を撮るだけで済みます。 システムがこれら XNUMX つの画像を取得した後、XNUMX つの画像内の顔を単純に比較します。 類似度が指定されたしきい値よりも大きい場合は、一致しています。 それ以外の場合は、一致しません。 次の図は、プロセスの概要を示しています。

デジタル銀行口座を開設する新しいユーザーであるジュリーの例を考えてみましょう。 このソリューションでは、運転免許証の写真を撮り (ステップ 2)、自撮り写真を撮る (ステップ 3) ように促されます。 システムが画像の品質をチェックした後 (ステップ 4)、セルフィーの顔と運転免許証の顔を比較し (5 対 XNUMX マッチング)、類似度スコア (ステップ XNUMX) が生成されます。 類似度スコアが必要な類似度しきい値よりも小さい場合、Julie によるオンボーディングの試みは拒否されます。 これは、偽の不一致または偽の拒否と呼ばれるものです。ソリューションは、同じ人物の XNUMX つの画像を異なるものと見なしました。 一方、類似度スコアが必要な類似度よりも大きかった場合、ソリューションは XNUMX つの画像が同一人物または一致すると見なします。

認証: XNUMX 対多の識別

建物への入場から、キオスクでのチェックイン、身元を確認するための自撮り写真の撮影まで、顔認識によるこの種の摩擦の少ない認証は、多くの組織で一般的になっています。 この認証ユース ケースでは、画像間の照合を実行する代わりに、単一の画像を取得し、それを検索可能な画像のコレクションと比較して、一致する可能性を探します。 一般的な認証のユースケースでは、ユーザーは自撮り写真を撮るように求められ、それがコレクションに保存されている顔と比較されます。 検索の結果、対応する類似度スコアおよび外部識別子との一致候補が XNUMX 個、XNUMX 個、または複数個得られます。 一致が返されない場合、ユーザーは認証されていません。 ただし、検索で XNUMX つ以上の一致が返されると仮定すると、システムは類似性スコアと外部識別子に基づいて認証を決定します。 類似度スコアが必要な類似度しきい値を超え、外部識別子が予想される識別子と一致する場合、ユーザーは認証 (一致) されます。 次の図は、顔ベースの生体認証プロセスの例の概要を示しています。

認証プロセス

ギグエコノミーの配達ドライバーである Jose の例を考えてみましょう。 配達サービスは、同社のモバイル アプリケーションを使用して配達を開始する前にドライバーに自撮り写真を撮るよう促すことで、配達ドライバーを認証します。 ギグエコノミー サービス プロバイダーが直面する問題の 2 つは、ジョブ シェアリングです。 システムを操作するために、基本的に 3 人以上のユーザーが同じアカウントを共有します。 これに対抗するために、多くの配送サービスでは車載カメラを使用して、配送中にドライバーの画像をランダムにスナップします (ステップ 4) (配送ドライバーが正規のドライバーであることを確認します)。 この場合、Jose は配達の開始時に自撮り写真を撮るだけでなく、配達中に車載カメラが彼の画像を撮影します。 システムは、品質チェック (ステップ XNUMX) を実行し、登録されたドライバーのコレクションを検索 (ステップ XNUMX) して、ドライバーの身元を確認します。 別のドライバーが検出された場合、ギグエコノミー配信サービスはさらに調査できます。

偽の一致 (偽陽性) は、ソリューションが異なる人物の XNUMX つ以上の画像を同一人物と見なした場合に発生します。 私たちのユースケースでは、認可されたドライバーである Jose の代わりに、Jose が弟の Miguel に配達を任せたとします。 ソリューションが Miguel のセルフィーと Jose の画像を誤って一致させると、誤一致 (誤検出) が発生します。

誤った一致の可能性に対抗するために、コレクションには各被写体の複数の画像を含めることをお勧めします。 顔、オンボーディング時の自撮り写真、および最後の数回の身元確認からの自撮り写真を含む、信頼できる身分証明書のインデックスを作成するのが一般的な方法です。 被写体の複数の画像にインデックスを付けると、返された顔全体の類似性スコアを集計できるため、識別の精度が向上します。 さらに、外部識別子を使用して、誤った受け入れのリスクを制限します。 ビジネス ルールの例は次のようになります。

IF 集約類似度スコア >= 必要な類似度しきい値 AND 外部識別子 == 予想される識別子 THEN 認証

主な生体認証の精度測定

生体認証システムでは、顔の比較と検索からの類似性スコアに基づく誤一致率 (FMR) と誤一致率 (FNMR) に関心があります。 オンボーディングまたは認証のいずれのユースケースでも、生体認証システムは、XNUMX つ以上の画像の類似性スコアに基づいて、ユーザーの顔の一致を受け入れるか拒否するかを決定します。 他の意思決定システムと同様に、システムがオンボーディングまたは認証の試行を誤って受け入れたり拒否したりすると、エラーが発生します。 本人確認ソリューションを評価する一環として、さまざまな類似度しきい値でシステムを評価して、誤った一致率と誤った不一致率を最小限に抑え、それらのエラーを不正確な拒否と受け入れのコストと比較する必要があります。 顔の生体認証システムを評価するための XNUMX つの主要な指標として、FMR と FNMR を使用します。

偽不一致率

ID 検証システムが正規のユーザーを正しく識別または承認できない場合、偽の不一致 (偽陰性とも呼ばれます) が発生します。 誤不一致率 (FNMR) は、システムが本物のユーザーを誤って識別または承認する傾向の尺度です。

FNMR は、オンボーディングまたは認証の試行が行われたインスタンスのパーセンテージとして表されます。この場合、類似性スコアが所定のしきい値を下回っているため、ユーザーの顔が誤って拒否されました (偽陰性)。

トゥルー ポジティブ (TP) は、ソリューションが同じ人物の XNUMX つ以上の画像を同じと見なした場合です。 つまり、比較または検索の類似度が、必要な類似度しきい値を上回っています。

偽陰性 (FN) は、ソリューションが同じ人物の XNUMX つ以上の画像を異なると見なした場合です。 つまり、比較または検索の類似度が、必要な類似度しきい値を下回っています。

FNMR の式は次のとおりです。

FNMR = 偽陰性数 / (真陽性数 + 偽陰性数)

たとえば、本物の認証を 10,000 回試みたものの、参照イメージまたはコレクションとの類似性が指定された類似性しきい値を下回ったために 100 回が拒否されたとします。 ここでは、9,900 の真陽性と 100 の偽陰性があるため、FNMR は 1.0% です。

FNMR = 100 / (9900 + 100) または 1.0%

誤一致率

ID 検証システムが不正なユーザーを本物であると誤って識別または承認すると、偽陽性とも呼ばれる偽の一致が発生します。 誤一致率 (FMR) は、システムが権限のないユーザーを誤って識別または承認する傾向を示す尺度です。 これは、偽陽性の認識または認証の数を識別試行の合計数で割った値によって測定されます。

ソリューションが異なる人物の XNUMX つ以上の画像を同一人物と見なすと、誤検知が発生します。 つまり、比較または検索の類似度スコアが、必要な類似度しきい値を上回っています。 基本的に、システムは、ユーザーの識別または認証の試行を拒否する必要があるときに、ユーザーを誤って識別または承認します。

FMR の式は次のとおりです。

FMR = 偽陽性数 / (総試行回数)

たとえば、100,000 回の認証試行があったが、参照イメージまたはコレクションとの類似性が指定された類似性しきい値を超えたため、100 人の偽のユーザーが誤って承認されたとします。 ここでは 100 の誤検知があるため、FMR は 0.01% です。

FMR = 100 / (100,000) または 0.01%

誤一致率と誤一致率

偽一致率と偽不一致率は相反する関係にあります。 類似性のしきい値が増加すると、誤った一致の可能性が減少し、誤った不一致の可能性が増加します。 このトレードオフについて考える別の方法は、類似度のしきい値が増加するにつれて、ソリューションがより制限的になり、類似度の低い一致が少なくなるということです。 たとえば、公共の安全とセキュリティに関連するユース ケースでは、一致類似度のしきい値を非常に高く設定するのが一般的です (99 以上)。 あるいは、ユーザーへの摩擦の影響がより重要な場合、組織はより制限の少ない類似性のしきい値 (90 以上) を選択する場合があります。 次の図は、これらのトレードオフを示しています。 組織にとっての課題は、組織とアプリケーションの要件に基づいて FMR と FNMR の両方を最小限に抑えるしきい値を見つけることです。

FMR と FNMR のトレードオフ

類似性のしきい値の選択は、ビジネス アプリケーションによって異なります。 たとえば、オンボーディング中の顧客の摩擦を制限したいとします (次の左側の図に示すように、制限の少ない類似性のしきい値)。 ここでは、必要な類似性のしきい値を低く設定し、セルフィーと運転免許証の一致の信頼性が低いユーザーをオンボーディングするリスクを喜んで受け入れます。 対照的に、許可されたユーザーのみがアプリケーションにアクセスできるようにしたいとします。 ここでは、非常に制限的な類似性のしきい値で操作する場合があります (右の図に示すように)。

類似性しきい値の下限 高い類似性しきい値

誤一致率と不一致率の計算手順

これら XNUMX つの指標を計算するには、いくつかの方法があります。 以下は、手順を本物の画像ペアの収集、インポスター ペアリング (一致してはならない画像) の作成、最後にプローブを使用して予想される一致画像ペアと不一致画像ペアをループ処理してキャプチャするという比較的単純なアプローチです。結果の類似性。 手順は次のとおりです。

  1. 本物のサンプル画像セットを集めてください。 一連の画像ペアから始めて、公式の一致判定に使用される外部識別子を割り当てることをお勧めします。 このペアは、次のイメージで構成されています。
    1. ソース イメージ – 信頼できるソース イメージ (運転免許証など)。
    2. ターゲット画像 – 比較するセルフィーまたは画像。
  2. なりすまし一致の画像セットを収集します。 これらは、ソースとターゲットが一致しない画像のペアです。 これは、FMR (システムが XNUMX 人の異なるユーザーの顔を誤って照合する確率) を評価するために使用されます。 画像のデカルト積を作成し、結果をフィルタリングしてサンプリングすることにより、画像ペアを使用して偽の画像セットを作成できます。
  3. 画像ペアをループ処理し、ソースとなりすましのターゲットを比較して、結果の類似性を取得することにより、本物となりすましの一致セットを調べます。
  4. 異なる最小類似度しきい値で偽陽性と偽陰性を計算して、FMR と FNMR を計算します。

アプリケーションのニーズに応じて、さまざまな類似性のしきい値で FMR と FNMR のコストを評価できます。

ステップ 1: 本物の画像ペアのサンプルを収集する

ID 検証サービスを評価する場合、評価するイメージ ペアの代表的なサンプルを選択することが重要です。 最初のステップは、本物の画像ペアのセットを識別することです。 これらは、ユーザーの既知のソース イメージとターゲット イメージです。 本物の画像ペアリングは、基本的にシステムが同じ人の XNUMX つの顔を一致させない確率である FNMR を評価するために使用されます。 よく聞かれる最初の質問の XNUMX つは、「画像のペアはいくつ必要ですか?」というものです。 答えはユースケースによって異なりますが、一般的なガイダンスは次のとおりです。

  • 100 ~ 1,000 枚の画像ペアが実現可能性の尺度となります
  • 最大 10,000 枚の画像ペアは、画像間の変動を測定するのに十分な大きさです
  • 10,000 を超える画像ペアにより、運用品質と一般化可能性の尺度が提供されます

より多くのデータは常に優れています。 ただし、出発点として、少なくとも 1,000 の画像ペアを使用します。 ただし、特定のビジネス上の問題に対して許容可能な FNMR または FMR に照準を合わせるために、10,000 を超える画像ペアを使用することは珍しくありません。

以下は、イメージ ペア マッピング ファイルのサンプルです。 画像ペア マッピング ファイルを使用して、残りの評価プロセスを進めます。

外部_ID SOURCE TARGET テスト
9055 9055_M0.jpeg 9055_M1.jpeg 本物の
19066 19066_M0.jpeg 19066_M1.jpeg 本物の
11396 11396_M0.jpeg 11396_M1.jpeg 本物の
12657 12657_M0.jpeg 12657_M1.jpeg 本物の
... . . .

ステップ 2: なりすまし画像のペアを生成する セッションに

正規のイメージ ペアのファイルが作成されたので、外部識別子が一致しないターゲット イメージとソース イメージのデカルト積を作成できます。 これにより、一致してはならないソースとターゲットのペアが生成されます。 このペアリングは、基本的にシステムが XNUMX 人のユーザーの顔を別のユーザーの顔と一致させる確率である FMR を評価するために使用されます。

外部ID SOURCE TARGET テスト
114192 114192_4M49.jpeg 307107_00M17.jpeg 詐欺師
105300 105300_04F42.jpeg 035557_00M53.jpeg 詐欺師
110771 110771_3M44.jpeg 120381_1M33.jpeg 詐欺師
281333 281333_04F35.jpeg 314769_01M17.jpeg 詐欺師
40081 040081_2F52.jpeg 326169_00F32.jpeg 詐欺師
... . . .

ステップ 3: 本物となりすましの画像のペア セットを調査する

ドライバープログラムを使用して、 Amazonの再認識 CompareFaces API 画像ペアを調べて類似性を取得します。 ポーズ、品質、その他の比較結果などの追加情報を取得することもできます。 類似度スコアは、次のステップで誤一致率と不一致率を計算するために使用されます。

次のコード スニペットでは、CompareFaces API をすべての画像ペアに適用し、すべての類似度スコアをテーブルに入力します。

obj = s3.get_object(Bucket= bucket_name , Key = csv_file)

df = pd.read_csv(io.BytesIO(obj['Body'].read()), encoding='utf8')
def compare_faces(source_file, target_file, threshold = 0):
    response=rekognition.compare_faces(SimilarityThreshold=threshold,
                                        SourceImage={'S3Object': {
                                                    'Bucket': bucket_name,
                                                    'Name':source_file}},
                                        TargetImage={'S3Object': {
                                                    'Bucket': bucket_name,
                                                    'Name':target_file}})
df_similarity = df.copy()
df_similarity["SIMILARITY"] = None
for index, row in df.iterrows():
    source_file = dataset_folder + row["SOURCE"]
    target_file = dataset_folder + row["TARGET"]
    response_score = compare_faces(source_file, target_file)
    df_similarity._set_value(index,"SIMILARITY", response_score)
    df_similarity.head()

コード スニペットは、次の出力を提供します。

外部_ID SOURCE TARGET テスト 類似性
9055 9055_M0.jpeg 9055_M1.jpeg 本物の 98.3
19066 19066_M0.jpeg 19066_M1.jpeg 本物の 94.3
11396 11396_M0.jpeg 11396_M1.jpeg 本物の 96.1
... . . . .
114192 114192_4M49.jpeg 307107_00M17.jpeg 詐欺師 0.0
105300 105300_04F42.jpeg 035557_00M53.jpeg 詐欺師 0.0
110771 110771_3M44.jpeg 120381_1M33.jpeg 詐欺師 0.0

テストによる類似度スコアの分布分析は、画像ペアごとの類似度スコアを理解するための出発点です。 次のコード スニペットと出力チャートは、テスト セットごとの類似性スコアの分布と結果の記述統計の簡単な例を示しています。

sns.boxplot(data=df_similarity,
            x=df_similarity["SIMILARITY"],
            y=df_similarity["TEST"]).set(xlabel='Similarity Score',
            ylabel=None,
            title = "Similarity Score Distribution")
plt.show()

類似度分布

df_descriptive_stats = pd.DataFrame(columns=['test','count', 'min' , 'max', 'mean', 'median', 'std'])

tests = ["Genuine", "Imposter"]

for test in tests:
    count = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].count()
    mean = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].mean()
    max_ = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].max()
    min_ = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].min()
    median = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].median()
    std = df_similarity['SIMILARITY'].loc[df_similarity['TEST'] == test].std()

    new_row = {'test': test,
                'count': count,
                'min': min_,
                'max': max_,
                'mean': mean,
                'median':median,
                'std': std}
    df_descriptive_stats = df_descriptive_stats.append(new_row,
    ignore_index=True)

df_descriptive_stats

test カウント マックス 意味する 中央値 STD
本物の 204 0.2778 99.9957 91.7357 99.0961 19.9097
詐欺師 1020 0.0075 87.3893 2.8111 0.8330 7.3496

この例では、本物の顔のペアの類似度の平均と中央値がそれぞれ 91.7 と 99.1 であるのに対し、なりすましのペアの類似度は 2.8 と 0.8 であることがわかります。 予想どおり、これは本物の画像ペアの類似性スコアが高く、なりすまし画像ペアの類似性スコアが低いことを示しています。

ステップ 4: 異なる類似度しきい値レベルで FMR と FNMR を計算する

このステップでは、異なる類似性のしきい値での誤一致率と不一致率を計算します。 これを行うには、単純に類似性のしきい値 (たとえば、90 ~ 100) をループします。 選択した各類似度しきい値で、真陽性、真陰性、偽陽性、および偽陰性のカウントを含む混同行列を計算します。これは、選択した各類似度で FMR および FNMR を計算するために使用されます。

実際
予測
. 一致 歯が立たない
>= 選択された類似性 TP FP
< 選択した類似性 FN TN

これを行うには、偽陽性と偽陰性の数を返す関数を作成し、類似度スコアの範囲 (90 ~ 100) をループします。

similarity_thresholds = [80,85,90,95,96,97,98,99]

# create output df
df_cols = ['Similarity Threshold', 'TN' , 'FN', 'TP', 'FP', 'FNMR (%)', 'FMR (%)']
comparison_df = pd.DataFrame(columns=df_cols)

# create columns for y_actual and y_pred
df_analysis = df_similarity.copy()
df_analysis["y_actual"] = None
df_analysis["y_pred"] = None

for threshold in similarity_thresholds:
    # Create y_pred and y_actual columns, 1 == match, 0 == no match
    for index, row in df_similarity.iterrows():
        # set y_pred
        if row["SIMILARITY"] >= threshold:
            df_analysis._set_value(index,"y_pred", 1)
        else:
            df_analysis._set_value(index,"y_pred", 0)

        # set y_actual
        if row["TEST"] == "Genuine":
            df_analysis._set_value(index,"y_actual", 1)
        else:
            df_analysis._set_value(index,"y_actual", 0)

    tn, fp, fn, tp = confusion_matrix(df_analysis['y_actual'].tolist(),
                                      df_analysis['y_pred'].tolist()).ravel()
    FNMR = fn / (tp + fn)
    FMR = fp / (tn+fp+fn+tp)

    new_row = {'Similarity Threshold': threshold,
                'TN': tn,
                'FN': fn,
                'TP': tp,
                'FP': fp,
                'FNMR (%)':FNMR,
                'FMR (%)': FMR}
    comparison_df = comparison_df.append(new_row,ignore_index=True)

comparison_df

次の表は、各類似度しきい値でのカウントの結果を示しています。

類似性のしきい値 TN FN TP FP FNMR FMR
80 1019 22 182 1 視聴者の38%が 視聴者の38%が
85 1019 23 181 1 視聴者の38%が 視聴者の38%が
90 1020 35 169 0 視聴者の38%が 視聴者の38%が
95 1020 51 153 0 視聴者の38%が 視聴者の38%が
96 1020 53 151 0 視聴者の38%が 視聴者の38%が
97 1020 60 144 0 視聴者の38%が 視聴者の38%が
98 1020 75 129 0 視聴者の38%が 視聴者の38%が
99 1020 99 105 0 視聴者の38%が 視聴者の38%が

類似性のしきい値は、誤った不一致率にどのように影響しますか?

本物のユーザー オンボーディングの試行が 1,000 回あり、一致と見なされるために必要な最小類似性 10% に基づいて、これらの試行のうち 95 回を拒否するとします。 ここでは、10 回の本物のオンボーディング試行 (偽陰性) を拒否します。これらの類似性が、指定された最小必須類似性しきい値を下回っているためです。 この場合、FNMR は 1.0% です。

実際
予測
. 一致 歯が立たない
>= 95% の類似性 990 0
< 95% の類似性 10 0
. 合計 1,000 .

FNMR = 偽陰性数 / (真陽性数 + 偽陰性数)

FNMR = 10 / (990 + 10) または 1.0%

対照的に、1,000 人の本物のユーザーをオンボーディングする代わりに、990 人の本物のユーザーと 10 人のなりすましユーザー (偽陽性) がいるとします。 最低 95% の類似性で、1,000 人のユーザーすべてを本物として受け入れるとします。 ここでは、1% の FMR が得られます。

実際
予測
. 一致 歯が立たない 合計
>= 95% の類似性 990 10 1,000
< 95% の類似性 0 0 .

FMR = 偽陽性数 / (総試行回数)

FMR = 10 / (1,000) または 1.0%

オンボーディング時の FMR および FNMR のコストの評価

オンボーディングのユースケースでは、誤った不一致 (拒否) のコストは、通常、追加のユーザーの摩擦や登録の喪失に関連しています。 たとえば、銀行のユースケースで、Julie が自分の XNUMX つの画像を提示したが、XNUMX つの画像の類似度が選択した類似度を下回ったため (偽の不一致)、オンボーディング時に誤って拒否されたとします。 金融機関は、潜在的な顧客としてのジュリーを失う危険を冒すか、ジュリーに身元を証明するための手順を実行するよう要求することで、ジュリーにさらなる摩擦を引き起こす可能性があります。

逆に、Julie の XNUMX つの画像が異なる人物のものであり、Julie のオンボーディングが拒否されるべきだったとします。 ジュリーが誤って受け入れられた場合 (誤った一致)、金融機関にとってのコストとリスクはまったく異なります。 規制上の問題、詐欺のリスク、および金融取引に関連するその他のリスクが存在する可能性があります。

責任ある使用

機械学習 (ML) を通じて適用される人工知能 (AI) は、人類の最も困難な問題のいくつかに取り組み、人間のパフォーマンスを向上させ、生産性を最大化する、私たちの世代で最も変革的なテクノロジーの XNUMX つになるでしょう。 これらのテクノロジーを責任を持って使用することは、継続的なイノベーションを促進するための鍵です。 AWS は、公正で正確な AI および ML サービスを開発し、責任を持って AI および ML アプリケーションを構築するために必要なツールとガイダンスを提供することに取り組んでいます。

AI と ML の採用と使用の増加に伴い、AWS は経験に基づいていくつかのリソースを提供し、AI と ML の責任ある開発と使用を支援します。

避けるべきベストプラクティスとよくある間違い

このセクションでは、次のベスト プラクティスについて説明します。

  • 十分な大きさの画像サンプルを使用する
  • オープンソースおよび合成の顔データセットを避ける
  • 手動および合成画像操作を避ける
  • 評価時および経時的な画質の確認
  • FMR と FNMR を経時的に監視する
  • 人間によるループ レビューの使用
  • Amazon Rekognition を最新の状態に保つ

十分な大きさの画像サンプルを使用する

十分に大きいが妥当なイメージのサンプルを使用します。 妥当なサンプルサイズはどれくらいですか? それはビジネス上の問題によって異なります。 あなたが雇用者であり、認証したい従業員が 10,000 人いる場合、10,000 枚すべての画像を使用するのがおそらく合理的です。 ただし、オンボーディングを希望する何百万もの顧客を抱える組織であるとします。 この場合、5,000 から 20,000 などの代表的な顧客サンプルを取得すれば、おそらく十分です。 サンプル サイズに関するガイダンスを次に示します。

  • サンプルサイズ 100 – 1,000 枚の画像ペアが実現可能性を証明
  • サンプルサイズ 1,000 – 10,000 枚の画像ペアは、画像間の変動性を測定するのに役立ちます
  • サンプルサイズ 10,000 – 1 万枚の画像ペアは、運用品質と一般化可能性の尺度を提供します

画像ペアのサンプリングで重要なことは、サンプルがアプリケーション内の顔の母集団全体で十分な変動性を提供することを確認することです。 サンプリングとテストをさらに拡張して、肌の色、性別、年齢などの人口統計情報を含めることができます。

オープンソースおよび合成の顔データセットを避ける

精選された数十のオープンソースの顔画像データセットと、研究や実現可能性の研究によく使用される驚くほどリアルな合成顔セットがあります。 課題は、アプリケーションが実際に遭遇する可能性のあるカメラ、顔、および画像の品質を代表するものではないという理由だけで、これらのデータセットは通常、現実世界のユースケースの 99% には役に立たないということです。 これらはアプリケーション開発には役立ちますが、これらの画像セットの正確さの尺度は、独自のアプリケーションで遭遇するものに一般化されていません。 代わりに、サンプル画像のペアが小さい (1,000 未満) 場合でも、ソリューションの実画像の代表的なサンプルから始めることをお勧めします。

手動および合成画像操作を避ける

多くの場合、人々が理解することに興味を持っているエッジ ケースがあります。 画像キャプチャの品質や特定の顔の特徴の難読化などは常に重要です。 たとえば、年齢や画質が顔認識に与える影響についてよく聞かれます。 顔を人工的に老化させたり、画像を操作して被写体を老けて見せたり、画質を操作したりすることはできますが、これは実際の画像の老化にはうまく当てはまりません。 代わりに、テストしたい現実世界のエッジ ケースの代表的なサンプルを収集することをお勧めします。

評価時および経時的な画質の確認

カメラとアプリケーションの技術は、時間の経過とともに急速に変化します。 ベスト プラクティスとして、長期にわたって画質を監視することをお勧めします。 (バウンディング ボックスを使用して) キャプチャされた顔のサイズから、画像の明るさとシャープネス、顔のポーズ、潜在的な難読化 (帽子、サングラス、あごひげなど) まで、これらすべての画像と顔の特徴は時間とともに変化します。

FNMR と FMR を経時的に監視する

画像、アプリケーション、またはアプリケーションで使用される類似性のしきい値のいずれであっても、変更が発生します。 誤った一致率と不一致率を長期にわたって定期的に監視することが重要です。 レートの変化 (わずかな変化であっても) は、多くの場合、アプリケーションまたはアプリケーションの使用方法に関するアップストリームの課題を示している可能性があります。 承認または拒否の決定に使用される類似性のしきい値とビジネス ルールの変更は、オンボーディングと認証のユーザー エクスペリエンスに大きな影響を与える可能性があります。

人間によるループ レビューの使用

ID 検証システムは、類似性のしきい値とビジネス ルールに基づいて、一致するかどうかを自動的に決定します。 規制および内部のコンプライアンス要件に加えて、自動化された意思決定システムの重要なプロセスは、意思決定プロセスの継続的な監視の一環として人間のレビュー担当者を利用することです。 これらの自動化された意思決定システムを人間が監視することで、自動化された意思決定プロセスの検証と継続的な改善、および透明性が提供されます。

Amazon Rekognition を最新の状態に保つ

Amazon Recognition の顔モデルは定期的に (通常は毎年) 更新され、現在はバージョン 6 です。この更新されたバージョンでは、精度とインデックス作成が大幅に改善されています。 新しいモデル バージョンを常に最新の状態に保ち、これらの新しいバージョンを ID 検証アプリケーションで使用する方法を理解することが重要です。 Amazon Rekognition 顔モデルの新しいバージョンがリリースされたら、ID 検証評価プロセスを再実行し、誤一致率と不一致率に対する潜在的な影響 (正と負) を判断することをお勧めします。

まとめ

この記事では、ID 検証ソリューションのパフォーマンス面を評価するために必要な主要な要素について、さまざまな精度指標の観点から説明します。 ただし、正確性は、特定のコンテンツ モデレート サービスを選択する際に評価する必要がある多くの側面の XNUMX つにすぎません。 サービスの全体的な機能セット、使いやすさ、既存の統合、プライバシーとセキュリティ、カスタマイズ オプション、スケーラビリティへの影響、顧客サービス、価格設定など、他のパラメーターを含めることが重要です。

Amazon Rekognition での ID 検証の詳細については、次のサイトをご覧ください。 AmazonRekognitionを使用したID検証.


著者について

本人確認ソリューション PlatoBlockchain Data Intelligence を評価するための指標。 垂直検索。 あい。マイクエイムス データ サイエンティストから ID 検証ソリューションのスペシャリストに転身し、組織を詐欺、浪費、悪用から保護するための機械学習と AI ソリューションの開発に豊富な経験を持っています。 余暇には、ハイキング、マウンテン バイク、犬のマックスとフリービーで遊んでいるのを見つけることができます。

本人確認ソリューション PlatoBlockchain Data Intelligence を評価するための指標。 垂直検索。 あい。アミット・グプタ AWS のシニア AI サービス ソリューション アーキテクトです。 彼は、適切に設計された機械学習ソリューションを大規模に顧客に提供することに情熱を注いでいます。

本人確認ソリューション PlatoBlockchain Data Intelligence を評価するための指標。 垂直検索。 あい。ズハイル・ラギブ AWS の AI サービス ソリューション アーキテクトです。 応用 AI/ML を専門とする彼は、顧客がクラウドを使用してイノベーションを加速し、ビジネスを変革できるようにすることに情熱を注いでいます。

本人確認ソリューション PlatoBlockchain Data Intelligence を評価するための指標。 垂直検索。 あい。マルセル・ピビダル ワールド ワイド スペシャリスト オーガニゼーションのシニア AI サービス ソリューション アーキテクトです。 マルセルは、フィンテック、決済プロバイダー、製薬会社、政府機関のテクノロジーを通じてビジネス上の問題を解決してきた 20 年以上の経験を持っています。 彼が現在注力している分野は、リスク管理、詐欺防止、本人確認です。

タイムスタンプ:

より多くの AWS機械学習