かんたんに機械学習をいざ学ぼうと思ってもQiitaなどで出るのは説明じゃなくて意味不明な数式解説で疲れた人はいませんか?私はそれでした。この記事では端的かつわかりやすく記載します。
※初心者の理解のため間違っている箇所がある可能性があります。
AIの本質的な仕組み
数式よりもまず概要的なことだけ教えろって方のために。
AIはモデルを使って予測させて出力を変換しています。
おおまかな流れとしては以下の通りです。
AI関連で予測するためにモデルはテンソルと呼ばれるデータ形式を好みます。
テンソルは例えばユーザーがおはようと入れたら[0.002.0.1241.0.5424.0.45432]みたいに数値に直したものです。言い換えればユーザーの入力は内部では統計的に使えるように数値扱いに変換されます。これは画像も音声もテンソルです。
これはそのままですがただ推論させるよりも、数値化した入力をもとに数値を予測させるといえばイメージしやすいかと思います。このモデルの数値予測が推論です。
あくまでモデルはテンソルを予測します。[0.002.0.1241.0.5424.0.45432]みたいに出されても意味不明なのでモデルの予測をユーザーの求めている形式に直します。
こうすることでモデルを使って入力よりデータを出すことができます。
これらで実際に登場する用語
これらはなるべく専門用語を使わないで説明しました。
実際見ていると出てくる用語について解説します。
- トークナイザー
-
データをトークン、つまりよい感じに区切るために使います。
入力をテンソルにする上で例えば「専門用語を使わないで説明しました。」は1文字単位だと17文字、つまり17のデータ項目が必要ですが用語単位だと「専門 用語 を 使わないで 説明 しました 。」などで区切れば7のデータ項目になります。
- エンコーダー
-
ユーザーの入力をモデルに入力するためのテンソルに直します。
- デコーダー
-
モデルの予測したテンソルをユーザがほしい形式に直します。
- LLM
-
モデルの名称です。Large Langage model でかい言語モデル。
- loss損失
-
モデルのテストと実際のデータがどれくらい離れているかの数値。
低いほどよい。lossは損失関数というものがありそれで決まっている。詳細は数式の話しなので割愛。
まとめ
以上です。
AI解説といいながら論文や数式解説になっている記事が多すぎます。
結局AIってどういうこと?ってときは入力をテンソルに直してテンソルを予測させたものを直してるんだな〜って理解でよいと思います。