つなもちダイアリー

人生なんとか乗り切りたい

【くっそ雑】驚くほどアバウトなAI解説

※こちらは「AI?何それ美味しいの?」という方向けの記事です。イメージを掴むための説明なので、厳密性は度外視しております。

 

AIは大きく分けて2種類あります。

汎用型AI

いろんなことを考えていろんなことが出来るAI。ドラえもんみたいな。

 

特化型AI

特定のことだけ出来るAI。将棋AI、音声対話システム(例:siri)、翻訳システム(例:google翻訳)など

 



一般的にAIと呼ばれてるものは特化型AIです。ドラえもんのような賢いロボットはまだ作れませんからね。

 

AIの作り方は色々あるけれど、最近はディープニューラルネットワーク(DNN)を用いる場合が多いです。DNNは端的に言えば「関数」です。そう、関数とは

y = f(x)

みたいなやつです。DNNは入力xと出力yの組み合わせパターンのデータから作成が行われます。

 

......よくわからないので例を出します。ここからは、AI=DNNとして扱います。1個80円のみかんをx個買った時の合計額を考えてくれるAIを作りましょう🍊。

 

y = 80x やんけ!!!!!!!!!!!!!!

 

その通りです!!!!!!!!!!!が!!!!!!!!

 

人間には簡単ですが、AIは学習させないとわかりません。

AIを学習させるためにはデータが必要でしたね。「ある時、みかんを3個買ってみたら240円でした」、「ある時、みかんを5個買ってみたら400円でした」というデータを何個も用意しておきます。

 

学習前のAIを y=ax とします。(aはランダム)

y=ax」、「y=ax^{2} + bx」 とか色んな形が考えられますが、この関数の形は人間が最初に決めときます。今回は a=100 だったとします。

 

y=100x にデータを入れてみます。「ある時、みかんを3個買ってみたら240円でした」というデータを入れます。x にみかんの個数である3を入れると...

 

y = 100 \times 3 = 300

 

です。AIは合計額が300円だと言いました。しかし、データを見ると正解は240円です。AIは正解から60円も高く予想してしまったので、aの値が大きすぎることに気づきました。そこで、aの値を5だけ下げてみることにしました。(aをどれくらい調節するかは学習率と呼ばれ人間側が設定します。)

 

その結果、AIは y = 95x に生まれ変わりました。

 

y=95x にデータを入れてみます。今度は「ある時、みかんを5個買ってみたら400円でした」というデータを入れます。xにみかんの個数である5を入れると...

 

y = 95 \times 5 = 475

 

です。AIは合計額が475円だと言いました。しかし、データを見ると正解は400円です。正解から75円も高かったので、aの値が大きすぎることにAIは気づきました。そこで、aの値を3だけ下げてみることにしました。

 

そして、AIは y = 92x に生まれ変わりました。

 

 

...というのを繰り返して、y = 80x になるまでやり続ければ

「みかん合計金額予測AI」完成!!!!!!!!!!!

 

 

今回はy=ax というめちゃくちゃ簡単な関数でしたが、xやyを多次元にしたり、y = f(x)f(x) を人間には理解不能なレベルで複雑にしたものが実際のAIになります。

実際のDNNのイメージ

 

実際のAIのxとyは以下のようなものが使われています(※全て数値で表現されてます)

音声認識

x : 音声信号 or 音声スペクトルなどの音響特徴

y:文字列(数値表現)

 

画像認識

x : 画像の各ピクセルのRGBの強さ

y : 画像が何であるかの確率(5種類のモノ判別なら 「0.03, 0.85, 0.04, 0.03, 0.05」など)

 

 

つまり

  • 音声認識:「音声」から「文字列」へ変換する関数
  • 画像認識:「画像」から「それが○○の画像であるかを表す確率」へ変換する関数

といえます。

 

AIはこんな感じです。多分。

 

まとめ:AIはデータから作っためっちゃすごい関数

 

お し ま い  ♪