クッキー設定
あなたのデータは98%正しいと確信していますか?
機械学習に取り組む際、ニューラルネットワークは自らの精度を判断する際に思い込みが激しくなることがあるが、AIの信頼度スコアの本当のところはどうなのだろうか?ネットワークの信頼度と現実の間には類似点があるが、自分のネットワークが正しいと信じるにはどうすればいいのだろうか?
機械学習は、画像、映画、リアルタイムのビデオ映像から膨大な量の視覚データを分析し、シーン内の人物や意味のある物体を特定する優れた方法だ。このデータは、次のようなスマート・アプリケーションで使用するために操作することができる。 顔識別セキュリティ・システム、ドライバー監視システム ドライバー・モニタリング・システムあるいは 不良品の識別工場のベルトコンベア上の不良品の識別など、例を挙げればきりがない。分類器や物体検出器の結果を視覚化する場合、識別された項目の横に「信頼度スコア」と呼ばれるパーセンテージが表示されることがよくあります。以下は、都市環境における物体検出器の例で、検出された各物体の上に信頼スコアが表示されています:
しかし、信頼スコアは実際には何を意味し、どのような用途があるのだろうか?一般的なコンセンサスでは、信頼スコアは、機械学習モデルの出力が正しく、ユーザーの要求を満たす可能性を表す0から1の間の数値と説明されている。
一見すると、これは素晴らしいことのように聞こえる!このネットワークが正しいかどうかは、ネットワーク自身が判断できるように思える。しかし、よく調べてみると、以下に示すように、これは明らかにそうではない。
ネットワークは自身の出力の正しさを判断できない
もしネットワークが自身の出力の正しさを判断できるとしたら、それはすでに答えを知っていることを意味する。答えは常に0%か100%のどちらかであり、その中間はありえない。しかし、私たちの街のイメージの一部をよく見てみると、次のようになる:
ここでは、ネットワークはスクーターに乗っている人の信頼度を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%になる。些細な数学操作にしては悪くない。ここでもまた、絶対信頼度の値には有効な解釈がないという結論に達する。
絶対的な信頼値をより多く、あるいはより少なく修正することが簡単にできることは明らかである。このことは、絶対的信頼度スコアはどのような値にも操作できるため、ある意味無意味であるという点を強調している。
グリズリーベアとの白兵戦
最近の世論調査で YouGovはアメリカ人とイギリス人に、非武装の格闘でさまざまな動物に勝てる自信があるか尋ねた。これがニューラルネットワークの自信とどう関係があるのか?調べてみよう。
米英の人々が、さまざまな動物と手と手を取り合って戦う可能性をどのように考えているか(あるいは自己評価しているか)の結果は、下の図に見ることができる。
出典アメリカ人はイギリス人よりも、どんな動物とも戦える自信がある、 ユーガブUK
グリズリーベアと手で戦う人々の自己評価と、ニューラルネットワークの信頼度測定には、いくつかの類似点がある。
まず、これは自己評価である。ネットワークの信頼度スコアと同じように、個人はおそらく経験したことのない状況の信頼度を推定するよう求められる。ネットワークはスクーターに乗っている人を見たことがないかもしれないし、ほとんどのアメリカ人男性はグリズリーベアと戦ったことがない。
次に、この数字をどう解釈すべきか。スクーターに乗っている人を人だと判断する自信が81%という数字をどう解釈すべきかが難しいのと同じように、アメリカ人男性の6%がグリズリーベアと格闘して勝てると思っているという数字にどんな意味があるのだろうか?100人のアメリカ人にグリズリーベアと戦わせたら、94%が逃げ、6%が戦って勝つということなのだろうか?繰り返しになるが、具体的なケースにおける人間の自信の解釈は不明確である。
そして最後に、ニューラルネットワークの信頼度のように、相対的な自己評価にも情報がある。例えば、アメリカ人にとって、ライオン(8%)よりもガチョウ(61%)の方がケンカに勝ちやすいという結論を導き出すことができる。つまり、絶対的な自信の自己評価があまり意味をなさないとしても、選択肢があれば、人々はライオンよりもガチョウと戦うことを選ぶはずだ。
自信のほどは?
結局のところ、信頼値単体では、特に絶対値に関しては無意味な数値です。相対的な信頼値は、ネットワークがどこの能力をより良く評価するかについてのヒントを与えることができますが、実世界のデータに対するニューラルネットワークのパフォーマンスの徹底的な分析がなければ、相対的な信頼尺度でさえも非常に誤解を招きやすく、簡単に自信を見誤る可能性があります。
では、数字に適切な意味を与えるにはどうすればいいのか?ニューラルネットワークの出力で確実な精度を得る唯一の方法は、注釈が正確で一貫性のある大量の構造化入力を提供することである。データをよく知れば知るほど、信頼スコアをよりよく理解することができます。Neonodeでは、合成データとして知られるコンピュータで生成された視覚的入力によってこれを実現しています。これは、ニューラルネットワークをより正確に訓練する方法であるだけでなく、実世界のデータを収集するよりもはるかに速く、合成データは実際の写真やフィルムから収集された実データと同じバイアスや交絡因子の影響を受けないため、機械学習モデルのロバスト性と汎化性をテストするために使用することができます。
ネオノードへの信頼
信頼性は、システムの出力の妥当性を決定する多くのパラメータの1つです。Neonodeでは、すべてのネットワークは自社で製造され、同じく自社で製造された膨大な合成データでトレーニングされています。エンド・ツー・エンドのプロセスを完全にコントロールすることで、入力画像の類似性スコアを生成する革新的な手法を設計し、信頼性スコアだけに頼るよりもはるかに高い精度を実現しています。
つまり、私たちのネットワークが画像を適切に評価できない場合、より一般的で堅牢な、精度の低いネットワークやプロセスが引き継ぎ、シグナルインテグリティが低下していることをより広範なシステムに知らせるのです。
Neonodeは、私たちのネットワークを完全に理解し、ニューラルネットワークの出力を解釈する際に力仕事を行います。私たちは、私たちのネットワークがどのような場合に有効な結果を出すのか、そしてより重要なのは、どのような場合に有効でないのかを深く理解しています。このようにして、お客様は出力の妥当性を解釈するのではなく、エンドユーザーエクスペリエンスを定義するために当社の情報と出力を使用することに集中することができます。
文脈のない自信は意味がない。