顔認証技術はどこが一番優れているか

今回のコラムでは「翻訳:顔認証、どの会社が最も優れている?」からの引用とそれについての追加説明を記載したいと思います。出典元は「人脸识别哪家强?」(訳:どの顔認識が強いですか?)です。顔認識技術とその運用に於いては中国の右に出る国はありません。多面的で深い考察のあるこの文章は多くの場合に日本の将来にも当てはまります。

豊富なサンプル動画や解説をきめ細かく提供してありのままの真実を伝えること

現在の顔認証技術はあまり大きな夢を描けるような技術をベースにしているのではなく、一時期のAI(もしかしたら今も)のような「真面目な研究者は面白いことをいわないので金を集める為にホラを吹く人間が得をして、結局業界全体が信用を失う」状態のようだ。

翻訳:顔認証、どの会社が最も優れている?

実際に顔認証を扱う組織は

  • NIST の FRVT のようなコンテストで上位に入ること
  • 豊富なサンプル動画や解説をきめ細かく提供してありのままの真実を伝えること

の どちらかに軸足を置かなくてはいけません。そうでなければ質の悪い顔認証システムを構築することになりかねません。

しかしながら「顔認証システムの選び方」でも触れましたが

  • NIST の FRVT のようなコンテストで上位に入ること

「強い顔認証」のコンテストであり、弱い顔認証はそれに含まれないことに留意しなくてはいけません。

  • 強い顔認証:大規模顔認証システム
    • 空港や ATM 、警察の犯人照合などが使用用途
  • 弱い顔認証:中小規模顔認証システム
    • 入退室管理や電子カルテのセキュアを保つことが使用用途

「強い顔認証」と「弱い顔認証」では内部アルゴリズムが違います。

(大規模顔認証システムでは扱う人物データが何百万人・何千万人なのでその中に該当人物がいるかいないかを 1 秒以内に見つけ出す複雑で巨大なデータベース構造を持つのに対して、中小規模顔認証システムではそのような必要はない。)

NIST とは何か、NIST と FRVT」でも触れたとおり

NIST などで行われるようなコンテストの場合、非常に厳しい基準が設けられています。端的に言うとすれば

  ・異なる民族の 10 年経年変化した顔を正確に区別することが出来る
  ・2660 万枚のデータベースの中から一瞬で探し当てる(または居ないと判断できる)
  ・別々の人物の顔を同じ人物と誤って判別してしまう確率が 0.25% 以下


などです。
使用用途からすると納得です。万が一間違うと大勢に不利益が生じるもの、例えば空港の入国審査や ATM などです。これらは入国審査官やカードの照合を担保にしているものの、絶対に間違えてはいけない例です。
これらを「強い顔認証」と呼びます。

FRVT は「強い顔認証」のコンテスト

を認識しておかねばなりません。

もし入退室管理に「強い顔認証」を求めている、具体的には NIST の FRVT の基準を満たす SDK を用いるならばオーバースペック過ぎます。つまり入退室管理という限られた使用範囲の顔認証に

  ・異なる民族の 10 年経年変化した顔を正確に区別することが出来る
  ・2660 万枚のデータベースの中から一瞬で探し当てる(または居ないと判断できる)
  ・別々の人物の顔を同じ人物と誤って判別してしまう確率が 0.25% 以下

という性能を求めていることになります。

はたしてその部屋には 2660 万人も入るのですか?
その部屋に様々な民族の方が入るのですか?
登録写真から10年もたった古いデータを使いまわしてそれでも本人確認が出来るような性能を求めていますか?

具体的に困るのはその費用と初期コストです。
(中略)
是非「顔認証システムの選び方」と「NIST とは何か、NIST と FRVT」をご覧ください。

一般の使用用途では圧倒的に「弱い顔認証」のシェアが高いのです。

FACE01シリーズは「弱い顔認証」を採用

このようなことから、一般使用用途に顔認証システムを導入する場合、つまり使用用途が空港や ATM 、警察などではない限り
  ・豊富なサンプル動画や解説をきめ細かく提供してありのままの真実を伝えること
しかないと思います。

アルゴリズムがどんなによくても所詮はスパイス程度のものであり、結局はエンドプロダクトの質による。
(中略)
顔認証技術を測る基準は多岐にわたる。例えば1:1,1:N,N:Nそれぞれの方式ごとに基準はみな違う。例えばアルゴリズムの精度において、国内外の顔認証技術の多くはオープンソースのOPENCVなどをベースに新しいルールを加えたものだ(ディープラーニングにより積層計算)、会社同士の識別精度の違いは小数点でしかなく、99.6%を99.7%に上昇させる意義はおおきくない。例えばLFW(訳注:世界で最も権威のある顔認証評価システムといわれる)で覇者と呼ばれることで世界一流などというなら、必ず業界内の笑いものになるだろう。

翻訳:顔認証、どの会社が最も優れている?

本人拒否率、他人受入率 ( FRR と FAR )

登録する顔画像ファイルについて

顔認証の最も難しい点は、多様な光線にさらされている人の顔の情報を処理するアルゴリズムで、特に現在のようなモバイルの時代において、撮影されるのはまだらな木の陰かもしれないし、ほの暗い街灯の下、そして深夜のタクシーの車内かもしれない。これがアルゴリズムのロバスト性に与える影響は非常に大きい。同時に写真やビデオに対しては欺瞞への対策も必要だし、二次イメージングの光線汚染などの問題も考慮されなくてはならない。

翻訳:顔認証、どの会社が最も優れている

新規に登録される「登録者顔データ」の質は非常に重要です。いかなるアルゴリズムをもってしても登録者顔データが不明瞭では正確な計算など出来ません。「登録顔画像の検証」から図を引っ張ってきます。

不明瞭な登録者顔データ
不明瞭な登録者顔データ

この様な問題に対して次のような解答があります。

ユーザーが自分で写真をアップロードする方法。例えば支付宝で採用されている方式だが、この方式の最大の問題は、写真の質が基準に達しない確率が非常に高いということで、写真を撮った時の光線、顔の角度などの要素が写真の質に影響し、結局のところその後の大量の顔情報の管理に対して不利に働く

身分照合用の機器を利用し身分証に使われている写真を読み込む。残念なのは、この写真の質が極端に悪くサイズが2K程度しか無く、多くの写真の顔の質は非常に低い。しかし現在最も多く使われている方法でもある。

公安部が管理するNCIIC(訳注:公安部の一部門、全国公民身份证号码查询服务中心)の顔情報対比インターフェイスを利用する(网纹写真のインターフェイスでないことに注意、既にこのインターフェイスは公開されていない。)

翻訳:顔認証、どの会社が最も優れている?

出典元が中国だけあって「公安のデータベースを使う」等と出ていますが日本で考えるならば上記の1番目と2番目が候補になるでしょう。ですが十分に有効な方法かと言うとそうではありません。

化粧の有無の例
化粧の有無の例

ユーザーで顔を登録する場合、スマホでの写真をアップロードするように…という場合は化粧の有無も注意しなくてはいけません。上の画像はすっぴんと化粧後の対比画像ですが人間でも同一人物かどうか写真のみでは見分けがつかない場合もあります。当然ですが顔認証システムでも誤判定の元になります。

東海顔認証の提案する方法は「認証の必要とされる場所での顔画像登録」です。
新規に顔画像登録する方法」から図を引っ張ってきます。

動画から顔画像を切り抜くイメージ図
動画から顔画像を切り抜くイメージ図
顔認証結果
顔認証結果

上記はテスト動画を使って説明していますが、実際の顔認証が行われる場所での顔登録というのはまさにこの様な作業です。(FACE01 GRAPHICSを用いると自動的に顔画像を作成・保存します)
この方法であれば簡便に
  ・同じ光源
  ・同じ背景
  ・同じ顔距離
となり認証率を上げることが出来ます。出典元にあるようにわざわざ証明写真をアップロードするような面倒かつ警戒心を煽るような手法よりこちらの方法をとるべきと思います。

自動顔画像ファイル取得の様子
Unknownとして出力された顔画像
顔画像登録後、顔認証される様子

これらのようにしっかりとした登録者顔データがあって初めて顔認証はシステムとして機能することとなります。

閾値(しきい値)などについて

まずは下の図をご覧ください。

FAR と FRR の相関図
FAR と FRR の相関図

上のグラフは本人拒否率と他人受入率を表したものです。このグラフ上で任意にポイントをとった時、そのポイントを「閾値」といいます。
例えば本人拒否率をうんと低い位置にとったとします。この時他人受入率はうんと高くなります
どういうことかと言うと、顔認証をよりスムーズにストレスなく本人確認をしてしまうと赤の他人を本人と誤認してしまう、ということです。実際ではスマホの顔認証などがそれに当たります。

スマホの顔認証は本人拒否率を低くすることがセオリーです。そうすることによってストレスなくロックを解除できるようになります。よく兄弟でスマホロックが解除されてしまったなどと聞きますが、もともとそういう風に設定しているわけです。
もしメーカーがスマホの顔認証に於いて他人受入率を下げようと閾値を設定すると本人拒否率は上がってしまい、本人でも解除されたりされなかったりしてしまいます。これでは消費者に受け入れられませんね。ですからモノによってどこに閾値を定めるかは違うのです。

認証率って何?

顔認証システムにおいては「本人拒否率と他人受入率」そして「閾値」は非常に大事な要素です。しかしながら用途によって中身のアルゴリズムは変わってきます。勿論それに付随するコストや計算時間量を考慮しなくてはいけません。「本人拒否率と他人受入率」もその顔認証システムを使用する用途によって意味が違ってくるのです。

生体認証の正確性を求めて

1:1顔認証アルゴリズムの非常に大きな問題は、どこででも見ることができる人の顔はある種の公開鍵のようなもので、例えばジャック・マーは顔認証によるレストランを考案したが、もし携帯の認証コードがなければすぐに食い散らかされてしまうだろう。

翻訳:顔認証、どの会社が最も優れている?

上の引用の例では、強い顔認証を使ってもそれ単体では効果が十分ではないことを示しています。

この場合の最大の問題は、比較対象が増えれば増えるほど計算量が増え処理が遅くなることと、総数が20万を超えたあたりで多くの似た結果が出現することだ(20万人という大きな数なので、多くの類似が出現することになる)。

翻訳:顔認証、どの会社が最も優れている?
他人の空似
他人の空似

「他人の空似」とはよく言ったものです。顔認証システムの場合、特に強い顔認証を使う場合には膨大な計算量と計算時間が問題となりますが「ある値」で妥協しなくては待ち行列が出来てしまいます。ですので空港や駅改札の顔認証システムは完璧を求めない代わりに「保険」をかけておくのです。それがパスポート内の IC チップであったり上の引用例で言うとスマホだったりします。

マルチモーダル認証(あるいは2段階認証)

マルチモーダル認証
2段階認証とマルチモーダル認証

生体認証はパスワードやカードなどの本人認証技術と異なり、画像処理などにより特徴量空間における類似度でもって本人性を「統計的に」判別するため、その精度は100%ではない。これは全世界共通の大原則です。

このため誤認識の発生を前提にシステム構築する必要があります。

バイオメトリクスとしての顔

生体認証の足し算をマルチモーダル、生体認証プラスパスワードや IC カード、スマホなどを掛け合わせることを2段階認証といいます。
方法はどちらでも構わないのですがこのように「保険」をかけることによって顔認証システム自体の不確実性を解消することは一般的となっています。

まとめ

結局、どの会社の顔認証システムが一番優れているかを判断するのならば、

  • 「強い顔認証」なら NIST の FRVT だがコンマ数%の差異にはあまり意味はない
  • 「弱い顔認証」では第三者機関の協力はないので豊富なサンプル動画を消費者に提供されている事が重要

ということになります。

この文章の最後に至って私が言えるのはもしどうしてもどの顔認証会社が最高か言う必要があるのならむしろどこの会社の大風呂敷がすごいのか聞いたほうがマシだ。雷军(訳注:小米創始者)の言葉を借りるなら「でたらめな事をする人間が減れば、みんな安心して事を成すことに集中できるだろう」ということだ。

翻訳:顔認証、どの会社が最も優れている?
コラム

前の記事

顔認証システムの構築