![Ganzy](https://ganfreeimages.com/wp-content/uploads/2022/02/nomu3_fake-1.png)
こんにちは、Ganzyです!!今回は製造業で活用できるAIを使った画像検査技術について紹介していきたいと思います!!より実践的な技術について紹介しておりますので是非ご覧ください!!
広がるAI技術の活用!!
昨今、AIの発展により自動車、製造業、医療、教育など様々な分野について活用が始まっております!!
自動車業活用事例
自奏者業界では物体検出やセマンティックセグメンテーションといった学習モデルの活用により自動運転技術が発展しております!!
医療活用事例
医療業界では画像診断にAI技術が活用されております!!
製造業×AIの問題点について
さて、このようなAI技術は様々な形で活用が始まっておりますが、一方で製造業に活用するには課題があります。それは学習させるための「NGデータ」が収集できないという課題です。AI(深層学習)では主に「OKデータ」と「NGデータ」をそれぞれ学習することで新たに入力されたデータに対してOK/NGの分類を行います。しかし当然のことですが、製造現場で取得できるデータのほとんどが「OKデータ」であることがほとんどであり、収集できるデータに偏りが発生します。そしてこの偏りは学習に大きな影響を与えるため所望の検査できないという結果になってしまいます。
![](https://ganfreeimages.com/wp-content/uploads/2022/02/image-3-800x618.png)
異常検知モデル
このようにNGデータが集まらない場合、OKデータのみによる異常検知モデルを活用することで解決することができます。例えば、OKデータ=トラ、NGデータ=その他動物とします。異常検知モデルではトラの画像からトラ(OKデータ)の特徴を学習します。そして学習したモデルにトラと馬の画像を入力した場合、特徴の異なる馬の画像に対して異常とみなし馬の画像をNGデータであると判別することができるようになります。
![](https://ganfreeimages.com/wp-content/uploads/2022/02/image-1-800x445.png)
このような異常検知モデルを活用することでNGデータが集まらない現場においても高精度な検査装置の導入を行うことができます!!
pythonで実装可能な異常検知モデル
さて、ではそのように現場に実装したらよいのかということで、画像検査を題材としてPythonで実装することが可能な異常検知モデルについて紹介します!!
①AnoGAN
GANを活用した異常検知モデル手法の一種でAnoGANがあります。そもそもGANとは学習画像を用いて学習画像の特徴から新たな画像を生成するという手法になります!!例えばトラの画像のみを学習させると新たなトラの画像を生成するといった動作をします。
ここでAnoGANはこのGANの動きをそのまま異常検知モデルとして流用したモデルになります。
簡単に説明すると、入力された画像がGANによって生成できるか?という指標で評価します。例えばトラの画像を生成できるGANのモデルに対して、馬の画像を入力します。そうすると馬の画像とにている画像の生成はこのモデルでは難しいため生成された画像は馬の画像とは似て非なるものになります。このときの入力された画像と生成された画像の誤差を指標とすることでOK/NGを判別することができるようになります!!
②メトリックラーニング
メトリックラーニングは距離学習の一種であり、顔認証の分野などで活用がされている学習方法になります!!
メトリックラーニングは、本来、異常検知のために開発されたものではありません。特に、FaceNetは人の同定(同一人物かどうか判定)を行うために開発されました。
メトリックラーニングの考え方は、似ているものは、プロット点の距離が近くなるように、似ていないものは距離が遠くなるようにプロットする学習方法になっております。
この考え方を異常検知に応用すると、正常画像で学習させたメトリックラーニングのモデルに異常画像を入力すると、正常画像とは違う場所にプロットされ、その距離を指標とすることで異常を検出できる仕組みになっております。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUU2JUI3JUIxJUU1JUIxJUE0JUU4JUI3JTlEJUU5JTlCJUEyJUU1JUFEJUE2JUU3JUJGJTkyJTI4RGVlcCUyME1ldHJpYyUyMExlYXJuaW5nJTI5JUU1JTkwJTg0JUU2JTg5JThCJUU2JUIzJTk1JUUzJTgxJUFFJUU1JUFFJTlBJUU5JTg3JThGJUU4JUE5JTk1JUU0JUJFJUExJTIwJTI4TU5JU1QlMkZDSUZBUjEwJUUzJTgzJUJCJUU3JTk1JUIwJUU1JUI4JUI4JUU2JUE0JTlDJUU3JTlGJUE1JTI5JnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz0zMTYxYWExOGU0ZjZmNDM4MGViYzRmY2IyYmRhYzE1Ng&mark-x=142&mark-y=112&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwZGFpc3VrZWxhYiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9ZjdkMjc0ODRjNGViNDljNjlmZDZmMjEyYTg5OWUxM2E&blend-x=142&blend-y=491&blend-mode=normal&s=865778ee9b6c3c4943bef7ad4f55d22c)
まとめ
異常検知モデルついて紹介してきました!!現場ではOKデータしか取得できないことが多々あると思います。そのようなときでも紹介した技術を活用することで所望の検査精度を達成することができるようになります!!
ただし異常検知モデルではOKとNGしか判別することができません。もし検査条件にNGの内容も知りたいとなった場合は、ほかの手法を検討する必要があります。ですのでまずは所望の条件を明確にし適切な手法を選択することをお勧めします!!
コメント