Metric Learning(距離学習)は異常検知にどこまで使えるのか?

 2021.07.21  株式会社システムインテグレータ

Metric Learningが異常検知にどこまで役立つか理解していますでしょうか。異常検知には様々な学習方法がありますが、その中でもMetric Learningは距離学習と呼ばれ、異常検知の現場でも頻出の方式の一つです。異常検知において、どこまで使えるのか理解しておくことで他の方法との比較が容易になります。 

今回はMetric Learningの概要と異常検知への応用や距離学習を利用することが可能なソリューションの紹介まで詳細に解説します。

Metric Learning(距離学習)とは

Metric Learning、距離学習と呼ばれる方法ですが、その原理については理解している方は多くありません。まずは原理の理解から始めましょう。 

Metric Learningの原理

Metric Learningの語源であるMetricとは2つのデータの間の距離のことを表しています。距離にも様々な計測方法があるため、「ユークリッド距離」や「マンハッタン距離」などの定義が存在しているのです。しかしそもそも距離からなにがわかるか理解しているでしょうか。 

例えば人の顔で考えてみると、Aさんの顔とBさんの顔が似ているという評価は、Aさんの顔を基準として、目・鼻・口などの形、位置が近いことなどを比較することで似ているといえます。あるいは、ある特定地域の生物と日本に住む生物が似ているかどうかについては、行動パターンや身体的特徴を測定することができれば判断できるのです。 

Metric Learningはこのような、距離に基づいた特徴的な量の空間について学習することで機械学習を行わせ、認証や異常検知などの様々な方法に利用されているということがいえます。 

Metric Learningの特徴

Metric Learningの特徴として挙げられるのが、距離を適切に定義することによって多彩な応用が可能になるということです。これはディープラーニングの発展によって急速な発展を遂げています。特にMetric Learningでは以下の領域に対して得意な性質を持っています。 

  • 顔認証
  • 画像検索

例えば、顔認証といえばスマートフォンのロック解除などに利用されています。顔認証を利用したことがある人はわかるかもしれませんが、顔認証を利用する場合は最初に自分の顔の登録を行います。これは人の手によって設計された特徴抽出器と呼ばれるもので顔の特徴を判定するためです。 

このデータは特徴ベクトルとしてデータ登録され、データベースに保存されます。次に実際の認証を行う際に、取得した画像から新たに特徴ベクトルのデータを取得し、登録時の特徴ベクトルと、認証時の特徴ベクトルを比較することで、実際の距離を抽出するのです。

ここでプロットしたデータの距離の差をユークリッド距離といい、距離が近いかどうかで類似しているかという認証を行っているのです。 

Metric Learningの異常検知への応用

Metric Learningの得意分野は顔認証や画像検索と述べましたが、異常検知にも応用することが可能となっています。詳細を順に説明していきます。 

Metric Learningで異常検知を行う原理

Metric Learningによって異常検知を行う原理ですが、もとよりMetric Learningは距離学習ということで、取得データの「距離が近い=似ている」という意味合いで顔認証に利用するために開発されていました。つまり、これは「距離が遠い≠似ていない」という考え方ができます。つまり距離が遠いものを異常と判断することで異常検知に応用することが可能であるということです。 

先程の顔の例でいえば、特徴ベクトルというものが存在していました。つまり、正常な工業製品を外観検査した時に、特徴ベクトルは同じ場所、同じベクトル量を指し示すことが考えられます。しかしそこに異常な製品が混ざっていた場合、特徴ベクトルの固まる位置は別の場所を指し示すことがわかるでしょう。この時異常な製品が密集する距離を不良品とすることで、製品の異常検知ができるのです。 

Metric Learningによる異常検知はどこまで使える?

問題はMetric Learningという技術が異常検知に対してどこまで利用できるかということです。実用的であるのかどうかは異常検知において重要といえるでしょう。まず、結論から述べると、従来的な手法よりも、全体として良好な成果を収めています。これはディープラーニングによる異常検知の場合、撮影状況の違いや、訓練パターンの中に含まれていない未知の不良品に当たった際の検出が難しいという問題を抱えているからです。 

その点と比較すると、正常な特徴ベクトルを出力することでそれ以外を不良と判断するMetric Learningについては、このような問題に対して、より高精度の異常検知モデルを構築できる可能性を秘めているといえます。 

また、Metric Learningにも様々な手法があるため、一概にこの手法で問題ないと言い切ることはできません。すべてのディープラーニングは一長一短な面を持っており、万能な手法というのは存在しないのです。しかしハイブリッドな利用方法などを用いることで、異常検出に適したMetric Learningの利用方法はあるといえるでしょう。 

AISIA-ADで適材適所のAIモデル利用

AISIA-ADはディープラーニングを応用した外観検査システムです。特徴として、様々なAIモデルを自由に選択・組み合わせて利用することが可能となっています。そのため、現場のニーズに合わせて目的を達成するための特性を持つモデルを柔軟に選択することが可能です。

まとめ

Metric Learningの概要から、異常検知への応用について解説しました。ディープラーニングには様々な種類があり、それらすべてが万能というわけではありません。

機械学習の基本についてまとめた資料などご用意してありますので、より詳細を知りたいという方はぜひダウンロードしてご覧ください。

CTA

RECENT POST「異常検知」の最新記事


異常検知

「教師データなし」で異常検知は可能か?

異常検知

異常検知におけるディープラーニング(深層学習)の活用

異常検知

「One Class SVM」を用いた異常検知の実装方法

異常検知

マシンラーニングを使った異常検知に利用できるデータセットを紹介!

Metric Learning(距離学習)は異常検知にどこまで使えるのか?