Serhii Maksymenko,
Data Science Solution Architect

顔認識技術は、今日では異なる光で表示されています。 ユースケースは、犯罪の検出から遺伝性疾患の特定まで幅広い応用があります。

世界中の政府が顔認識システムに投資している一方で、オークランド、サマーヴィル、ポートランドといった米国の一部の都市では、市民権やプライバシーに関する懸念から顔認識システムを禁止しています。

時限爆弾か技術的ブレークスルーか? この記事では、技術的な観点から顔認識とは何か、そしてディープラーニングがその能力をどのように向上させるのかを開設しています。 顔認識技術の仕組みを内側から理解することで、初めて顔認識技術の実力を知ることができるのです。 Masked face detection and recognition

How Deep Learning Can Modernize Face Recognition Software

Download PDF

下の「GET PDF」ボタンをクリックすると、上記のフィールドでお客様が指定した個人データを処理することに同意し権利を許諾します。 お客様の個人情報は、当社の顧客基盤のプロファイリングおよびビジネスオファーに関する連絡のために使用されることがあります。 お客様は、[email protected]

ありがとうございます!

PDFファイルをダウンロードするURLをメールに送信しました

Ok

顔認識の仕組み

顔認識ソフトウェアのコンピュータアルゴリズムは人間の視覚認識と少し似ています。 しかし、人が視覚データを脳に蓄積し、必要になれば自動的に視覚データを呼び出すとすれば、コンピュータはデータベースからデータを要求し、それを照合して人の顔を識別するはずです。

簡単に説明すると、カメラで人間の顔を検出し、目の間隔、鼻の長さ、額や頬骨の形など、顔の特徴を抽出します。 しかし、従来の顔認識技術も、まだすべてが完璧というわけではありません。 しかし、従来の顔認証技術も、まだすべてが完璧というわけではなく、長所と短所がある。

長所

非接触型の生体認証

最大1秒のデータ処理

ほとんどのカメラへの互換性

統合の容易さ

短所

双子のような顔立ちの人 と人種バイアス

Data Privacy issues

Presentation Attack (PA)

Low accuracy in poor lighting conditions

顔認識システムの弱点を理解すること。 データサイエンティストはさらに踏み込みました。 従来のコンピュータビジョン技術とディープラーニングアルゴリズムを応用し、顔認識システムを微調整することで、攻撃を防ぎ、精度を向上させたのです。 これが顔偽装防止技術の仕組みです。

How Deep Learning Upgrades Face Recognition Software

Deep Learningは、顔認識技術を改善する最も新しい方法の1つです。 顔が写っている画像から顔埋め込みを抽出するというものです。 このような顔埋め込みは、異なる顔に対してユニークなものになる。 そして、ディープニューラルネットワークの学習は、このタスクを実行するための最も最適な方法である。

タスクと時間枠によりますが、顔認識システムにディープラーニングを使用するには、2つの一般的な方法があります。

dlib、DeepFace、FaceNet などの事前に学習されたモデルを使用する。 この方法は、事前学習済みモデルにはすでに顔認識目的のアルゴリズムが設定されているため、時間と労力がかかりません。 また、事前学習済みモデルを微調整して偏りをなくし、顔認識システムを適切に動作させることができます。

ゼロからニューラルネットワークを開発する。 この方法は、多目的な機能を持つ複雑な顔認識システムに向いている。 転移学習の場合、数千枚の画像で済む事前学習済みモデルとは異なり、時間と労力がかかり、学習データセットに数百万枚の画像を必要とする。

しかし、顔認識システムに独自の機能が含まれていれば、長い目で見れば最適な方法といえるかもしれません。 注意すべきポイントは次のとおりです:

  • CNN アーキテクチャと損失関数の正しい選択
  • 推論時間の最適化
  • ハードウェアのパワー

ネットワーク アーキテクチャを開発する際には、画像認識および分類タスクで効果が実証済みの畳み込みニューラルネットワーク(CNN)を使うことが推奨されています。 期待される結果を得るためには、例えばResNetやEfficientNetのように、一般に受け入れられているニューラルネットワークアーキテクチャを基礎として使用するのがよいでしょう。

顔認識ソフトウェア開発の目的でニューラルネットワークを学習させる場合、ほとんどの場合、誤差を最小限に抑える必要があります。 ここでは、実際の出力と予測された出力の間の誤差の計算に使用される損失関数を考慮することが非常に重要です。 顔認識システムで最もよく使われる関数は、triplet lossとAM-Softmaxである。

  • triplet loss関数は、2人の異なる人物の画像を3枚持っていることを意味する。 一人の人物にはアンカーとポジの2つの画像があり、もう一人の人物にはネガの3つの画像がある。
  • AM-Softmax関数は標準的なSoftmax関数の最も新しい修正の一つで、加法的マージンに基づく特定の正則化を利用するものである。 また、ニューラルネットワークを改善するためのアプローチもいくつかある。 顔認識システムでは、知識蒸留、転移学習、量子化、深さ分離畳み込みが最も興味深い。
    • 知識蒸留は、大きなネットワークが自身の小さなバリエーションを教えるとき、2つの異なるサイズのネットワークを含む。 重要なのは、学習後、小さいネットワークが大きいネットワークより速く働き、同じ結果を与えることである。
    • 転送学習アプローチでは、特定のデータセットでネットワーク全体または特定の層のみを学習することにより、精度を向上させることができる。 例えば、顔認識システムに人種的な偏りの問題がある場合、特定の画像セット、例えば中国人の写真を取り出して、より高い精度に達するようにネットワークを訓練することができる。
    • 量子化アプローチは、ニューラルネットワークをより高い処理速度に達するように改善する。 浮動小数点数を使うニューラルネットワークを、ビット幅の小さい数値のニューラルネットワークで近似することで、メモリサイズと計算回数を減らすことができる。
    • 深さ方向に分離可能な畳み込みは層のクラスで、通常のCNNに比べてはるかに小さなパラメータセットでCNNを構築できるようにする。 計算回数が少ない一方で、この機能により、モバイル ビジョン アプリケーションに適した顔認識システムを向上させることができます。

    深層学習技術の重要な要素は、高性能ハードウェアの需要です。 顔認識ソフトウェアの開発にディープニューラルネットワークを使用する場合、認識精度を高めるだけでなく、応答時間を短縮することも目標になります。

    How We Implemented Deep Learning-Powered Face Recognition App

    MobiDev で Big Brother (a demo camera app) を開発する際、リアルタイム ビデオ ストリーミングによる生体認証ソフトウェアを作成することを目的としています。 UbuntuとRaspbianのローカルコンソールアプリとして、Big BrotherはGolangで書かれており、JSON設定ファイルを通して、Local Camera IDとCamera Reader typeが設定されます。 この動画では、Big Brother が実際にどのように動作するかを説明します。

    内部から見ると、Big Brother アプリの動作サイクルは次のようになります。 顔検出

    アプリは、ビデオストリームで顔を検出する。 顔が捕捉されると、画像が切り取られ、HTTPフォーム・データ・リクエストを経由してバックエンドに送信されます。 バックエンド API は、ローカル ファイル システムに画像を保存し、personID を持つ Detection Log にレコードを保存します。 すべてのAPIリクエストはRESTful APIに基づいています。

    2. 瞬間顔認識

    バックエンドには、新しい未分類のレコードを見つけ、Dlibを使って顔の特徴の128次元記述子ベクトルを計算するバックグラウンドワーカーが存在します。 ベクトルが計算されるたびに、データベース内の各Personの各特徴ベクトルとのユークリッド距離を計算して、複数の参照顔画像と比較し、一致するものを見つけます。

    検出した人物とのユークリッド距離が0.6未満なら、ワーカーは検出ログに人物IDを設定し、分類されたとマークします。 距離が0.6を超える場合は、ログに新しいPerson IDを作成します。

    3 フォローアップアクション:警告、アクセス許可、その他

    未確認者の画像は、メッセンジャーでチャットボットによる通知とともに対応する管理者に送信されます。 Big Brotherアプリでは、Microsoft Bot FrameworkとPythonベースのErrbotを使用し、5日間でアラートチャットボットを実装できました。

    その後、これらの記録は管理パネルで管理でき、ID付きの写真がデータベースに格納されます。 顔認識ソフトはリアルタイムに動作し、顔認識作業を瞬時に行います。 社員データの保存にGolangとMongoDB Collectionsを活用し、200件を含むIDsデータベースを入力しました。

    Big Brotherの顔認識アプリの設計は以下の通りです。

    1万エントリまでスケールアップする場合、バックエンドで高い認識速度を保つために顔認識システムを改善することをお勧めします。 最適な方法の1つは、並列化を利用することです。 ロード バランサーを設定し、複数の Web ワーカーを構築することで、バックエンド部分の適切な動作とシステム全体の最適な速度を確保できます。

    Other Deep Learning-Based Recognition Use Cases

    顔認識だけが、深い学習ベースのソフトウェア開発でパフォーマンスを強化できるタスクではありません。 他の例としては、

    Masked face detection and recognition

    COVID-19によって多くの国の人々がフェイス マスクを着用するようになって以来、顔認識技術はより高度なものになりました。 畳み込みニューラルネットワークに基づく深層学習アルゴリズムを用いることで、マスクで覆われた顔をカメラが認識することができるようになりました。 データサイエンス技術者は、顔認識システムの能力を向上させるために、顔画像に基づく多目的な認識モデルや眼球周囲の認識モデルなどのアルゴリズムを利用している。 額、顔の輪郭、眼球および眼球周囲の詳細、眉毛、目、頬骨などの顔の特徴を識別することにより、これらのモデルは、最大 95% の精度でマスクされた顔を認識することができます。

    このようなシステムの良い例は、中国企業の 1 つが作成した顔認識技術です。 このシステムは、ディープラーニングを用いた顔認識と、赤外線サーモグラフィによる温度計測の2つのアルゴリズムで構成されています。 フェイスマスクをした人がカメラの前に立つと、顔の特徴を抽出し、データベースにある既存の画像と比較する。 同時に赤外線温度計測機構で温度を計測することで、異常な体温の人を検出します。

    欠陥検出

    ここ数年、メーカーはAIによる外観検査で欠陥検出を行うようになってきています。 ディープラーニングアルゴリズムの開発により、人為的な要因を排除し、微細な傷や亀裂を自動的に定義することができるようになりました。

    体の異常検知

    イスラエルに本拠を置くAidoc社は、ディープラーニングを搭載した放射線科向けのソリューションを開発した。 医療画像を解析することで、胸部、c脊椎、頭部、腹部の異常を検出する。

    Speaker identification

    Phonexia社が作成したスピーカー識別技術も計量学習アプローチを利用してスピーカーを識別する。 このシステムは、音声によって話者を認識し、voiceprints と呼ばれる人間の音声の数学的モデルを作成します。 これらの声紋はデータベースに保存され、人が話すと、スピーカー技術がその固有の声紋を識別します。

    感情認識

    人間の感情の認識は、今日では可能なタスクです。 カメラで顔の動きを追跡することで、人間の感情を分類するのが感情認識技術です。 ディープラーニングアルゴリズムは、人間の顔のランドマークポイントを識別し、中立的な表情を検出し、よりポジティブまたはネガティブなものを認識する表情の偏差を測定します。 ディープラーニングの技術を活用し、Nest Camsを細かく調整することで、人やペット、車などの異なるオブジェクトを認識するだけでなく、行動も識別できるようにした。 認識する行動のセットは、ユーザーがカスタマイズして選択することが可能です。 たとえば、猫がドアをひっかいているのを認識したり、子供がストーブで遊んでいるのを認識したりすることができます。 そして、次に来る技術の未来を決めるのは人間だけです。

    How Deep Learning Can Modernize Face Recognition Software

    Download PDF

    下の「GET PDF」ボタンをクリックすると、上記のフィールドでお客様が指定した個人データを処理する権利に同意し許可することになります。 お客様の個人情報は、当社の顧客基盤のプロファイリングおよびビジネスオファーに関する連絡のために使用されることがあります。 お客様は、[email protected]

    ありがとうございました!

    PDFファイルをダウンロードするURLをメールに送信しました

    Ok

admin

コメントを残す

メールアドレスが公開されることはありません。

lg