あなたのデータは98%正しいと確信していますか?

機械学習に取り組む際、ニューラルネットワークは自らの精度を判断する際に思い込みが激しくなることがあるが、AIの信頼度スコアの本当のところはどうなのだろうか?ネットワークの信頼度と現実の間には類似点があるが、自分のネットワークが正しいと信じるにはどうすればいいのだろうか?

Machine learning is a great way to analyze vast amounts of visual data from images, film, or real-time video footage to identify people or meaningful objects within a scene. This data can then be manipulated for use in smart applications, such as facial identification for security systems, human attentiveness in driver monitoring systems, or identification of defective objects on a factory conveyor belt, to name just a few. When visualizing the result of classifiers or object detectors, there are often percentages shown next to the identified item called “the confidence score”. Below is an example of an object detector in a city environment with the confidence score shown above each detected object:

AI画像認識

しかし、信頼スコアは実際には何を意味し、どのような用途があるのだろうか?一般的なコンセンサスでは、信頼スコアは、機械学習モデルの出力が正しく、ユーザーの要求を満たす可能性を表す0から1の間の数値と説明されている。

一見すると、これは素晴らしいことのように聞こえる!このネットワークが正しいかどうかは、ネットワーク自身が判断できるように思える。しかし、よく調べてみると、以下に示すように、これは明らかにそうではない。

ネットワークは自身の出力の正しさを判断できない

もしネットワークが自身の出力の正しさを判断できるとしたら、それはすでに答えを知っていることを意味する。答えは常に0%か100%のどちらかであり、その中間はありえない。しかし、私たちの街のイメージの一部をよく見てみると、次のようになる:

AI画像認識 - スクーター

ここでは、ネットワークはスクーターに乗っている人の信頼度を81.2%とした。

人間にとっては、スクーターに乗っている人が写っていることは明らかだが、なぜかネットワークは81.2%しかそうだと確信しない。しかし、81.2%というのはどういう意味なのだろうか? スクーターに乗っている人間のケースの18.8%において、ネットワークは間違っていると予想しているということなのだろうか? スクーターに乗った人間の写真なのだから、100%の信頼性があるのは明らかだ。 81.2%の人間しか映っていないということだろうか?どうなっているのだろう?

要するに、自信は確率ではないということだ。

その代わり、ネットワークの確信度出力は、絶対的な指標ではなく、相対的な確信度として見ることができる。 言い換えれば、ネットワークは98%の確信度識別の方が81%の識別よりも自信があると感じるが、98%や81%という絶対的な解釈はあってはならない。信頼度スコアがしばしば真か偽かの境界を表す閾値を伴うのもこのためである。

絶対的な信頼度ではなく相対的な信頼度を示す一つの方法は、以下のように絶対的な信頼度を簡単にスケーリングできることを理解することである。

データに自信を与える

信頼度の出力指標は、多くの場合、多数の計算に基づいている。しかし、エンジニアが好きなように信頼度を上げる(または下げる)ことができる些細な方法がある。

スクーターのある街の画像では、ネットワークの確信度は81.2%に過ぎなかった。これは0.812という値で表されるが、答えを出力する前に単純に信頼度の平方根を計算するようにネットワークを簡単に修正することができる。こうすることで、0.81の代わりに√0.812 = 0.9、つまり90%の値が得られる。これはネットワークの信頼度出力を増加させただけである!同じ平方根演算をもう一度行うと信頼度は95%になり、さらにもう一回行うと信頼度は97%になる。些細な数学操作にしては悪くない。ここでもまた、絶対信頼度の値には有効な解釈がないという結論に達する。

絶対的な信頼値をより多く、あるいはより少なく修正することが簡単にできることは明らかである。このことは、絶対的信頼度スコアはどのような値にも操作できるため、ある意味無意味であるという点を強調している。

グリズリーベアとの白兵戦

In a recent poll, YouGov asked Americans and Britons how confident they were that they could beat various animals in unarmed combat. What has this got to do with neural network confidence you ask? Let's find out.

米英の人々が、さまざまな動物と手と手を取り合って戦う可能性をどのように考えているか(あるいは自己評価しているか)の結果は、下の図に見ることができる。

データチャート

Source; Americans are more confident than Britons that they could beat any animal in a fight, YouGov UK

グリズリーベアと手で戦う人々の自己評価と、ニューラルネットワークの信頼度測定には、いくつかの類似点がある。

まず、これは自己評価である。ネットワークの信頼度スコアと同じように、個人はおそらく経験したことのない状況の信頼度を推定するよう求められる。ネットワークはスクーターに乗っている人を見たことがないかもしれないし、ほとんどのアメリカ人男性はグリズリーベアと戦ったことがない。

第二に、この数字をどう解釈すべきか。スクーターに乗っている人を人だと判断する自信が81%という数字をどう解釈すべきかが難しいのと同じように、アメリカ人男性の6%がグリズリーベアと格闘して勝てると思っているという数字にどんな意味があるのだろうか?100人のアメリカ人にグリズリーベアと戦わせたら、94%が逃げ、6%が戦って勝つということなのだろうか?繰り返しになるが、具体的なケースにおける人間の自信の解釈は不明確である。

そして最後に、ニューラルネットワークの信頼度のように、相対的な自己評価にも情報がある。例えば、アメリカ人にとって、ライオン(8%)よりもガチョウ(61%)の方がケンカに勝ちやすいという結論を導き出すことができる。つまり、絶対的な自信の自己評価があまり意味をなさないとしても、選択肢があれば、人々はライオンよりもガチョウと戦うことを選ぶはずなのだ。

自信のほどは?

結局のところ、信頼値単体では、特に絶対値に関しては無意味な数値です。相対的な信頼値は、ネットワークがどこの能力をより良く評価するかについてのヒントを与えることができますが、実世界のデータに対するニューラルネットワークのパフォーマンスの徹底的な分析がなければ、相対的な信頼尺度でさえも非常に誤解を招きやすく、簡単に自信を見誤る可能性があります。

では、数字に適切な意味を与えるにはどうすればいいのか?ニューラルネットワークの出力で確実な精度を得る唯一の方法は、注釈が正確で一貫性のある大量の構造化入力を提供することである。データをよく知れば知るほど、信頼スコアをよりよく理解することができます。Neonodeでは、合成データとして知られるコンピュータで生成された視覚的入力によってこれを実現しています。これはニューラルネットワークをより正確に訓練する方法であるだけでなく、実世界のデータを収集するよりもはるかに速く、合成データは実際の写真やフィルムから収集された実データと同じバイアスや交絡因子の影響を受けないため、機械学習モデルのロバスト性と汎化性をテストするために使用することができます。

ネオノードへの信頼

信頼性は、システムの出力の妥当性を決定する多くのパラメータの1つです。Neonodeでは、全てのネットワークは自社で製造され、同じく自社で製造された膨大な合成データでトレーニングされています。エンド・ツー・エンドのプロセスを完全にコントロールすることで、入力画像の類似性スコアを生成する革新的な手法を設計し、信頼性スコアだけに頼るよりもはるかに高い精度を実現しています。

つまり、私たちのネットワークが画像を適切に評価できない場合、より一般的で堅牢な、精度の低いネットワークやプロセスが引き継ぎ、シグナルインテグリティが低下していることをより広範なシステムに知らせるのです。

Neonodeは、私たちのネットワークを完全に理解し、ニューラルネットワークの出力を解釈する際に力仕事を行います。私たちは、私たちのネットワークがどのような場合に有効な結果を出すのか、そしてより重要なのは、どのような場合に有効でないのかを深く理解しています。このようにして、お客様は出力の妥当性を解釈するのではなく、エンドユーザーエクスペリエンスを定義するために当社の情報と出力を使用することに集中することができます。

文脈のない自信は意味がない。

Neonode合成データについてもっと知る