第3回y=ax+bから始める初心者向けML講座:VRChat ML集会でクルツさんが解説!AIの基礎を理解しよう!
詳細情報
※以下文章はスライド資料を元に自動生成されたものです。
発表のハイライト
- ディープラーニングの基礎であるニューラルネットワーク(NN)の仕組みを理解
- AIが様々なタスクをこなす秘密は出力層と活性化関数、誤差関数の設計にあることを知る
- 回帰、2分類問題、多分類問題の3つの代表的なタスクと、それぞれにおける出力層、活性化関数、誤差関数の違いを学ぶ
- ソフトマックス関数や交差エントロピー誤差など、AIの基礎知識をゲット
ニューラルネットワーク(NN)ってどんなもの?
皆さんはディープラーニングやAIについて、どれくらい知っていますか? 難しいイメージがあるかもしれませんが、実は基本的な仕組みはシンプルなんです。クルツさんがVRChatのML集会で行った発表では、その基礎となるニューラルネットワーク(NN)について、わかりやすく解説してくれました。
NNは、人間の脳の神経回路を模倣したモデルで、大量のデータから学習し、新しいデータに対して予測を行うことができます。例えば、画像から猫と犬を判別したり、過去のデータから未来の株価を予測したりするといった用途に使われています。
NNの仕組み:入力から出力まで
NNは、入力層、隠れ層、出力層という3つの層で構成されています。
- 入力層: データを入力する層です。例えば、画像データなら画素情報が入力されます。
- 隠れ層: 入力層から受け取った情報を処理する層です。複数のノード(パーセプトロン)と、それらを繋ぐ線(重み)で構成されています。
- 出力層: 隠れ層で処理された結果を出力する層です。例えば、猫と犬の判別であれば、猫である確率と犬である確率が出力されます。
NNは、入力データと重みを元に予測値を計算し、正解値との差分である誤差を算出します。この誤差を元に、重みを調整することで、より正確な予測ができるように学習していきます。
活性化関数:AIの判断力を高める!
NNの各層では、活性化関数と呼ばれる関数が使われています。活性化関数は、入力された値に対して、ある一定のルールで出力を変換する役割があります。
クルツさんの発表では、ReLU関数、Tanh関数、シグモイド関数など、様々な活性化関数が紹介されました。これらの関数は、NNの学習過程において、非線形な関係性を表現するのに役立ち、AIの判断力を向上させる効果があります。
活性化関数の種類
活性化関数は、タスクによって使い分けられています。例えば、
- ReLU関数: 画像認識などによく使われます。
- Tanh関数: 自然言語処理などによく使われます。
- シグモイド関数: 2値分類問題によく使われます。
AIのタスク:回帰、2分類問題、多分類問題
AIは、様々なタスクを実行することができます。クルツさんの発表では、その中でも代表的な3つのタスク、回帰、2分類問題、多分類問題が紹介されました。
回帰:数値を予測する
回帰は、入力データから数値を予測するタスクです。例えば、家の広さや築年数から、その家の価格を予測するといった場合に使われます。
回帰では、出力層は1つで、活性化関数は使用しません。誤差関数は2乗和誤差が用いられます。
2分類問題:2つの選択肢から選ぶ
2分類問題は、入力データから2つの選択肢のどちらかを選択するタスクです。例えば、画像が猫かどうかを判定する、メールがスパムかどうかを判定するといった場合に使われます。
2分類問題では、出力層は1つで、活性化関数はシグモイド関数が用いられます。誤差関数は交差エントロピー誤差が用いられます。
多分類問題:複数の選択肢から選ぶ
多分類問題は、入力データから3つ以上の選択肢のいずれかを選択するタスクです。例えば、画像に写っているものが猫、犬、鳥のどれかを判定する、文章の感情をポジティブ、ネガティブ、ニュートラルのどれかに分類するといった場合に使われます。
多分類問題では、出力層は予測したい分類の数だけ設けられ、活性化関数はソフトマックス関数が用いられます。誤差関数は交差エントロピー誤差が用いられます。
ソフトマックス関数と交差エントロピー誤差:多分類問題の肝!
ソフトマックス関数は、多分類問題において、各分類の確率を出力するのに使われる関数です。出力値の合計は必ず1になるため、確率として解釈することができます。
交差エントロピー誤差は、多分類問題における誤差の算出に用いられる関数です。予測確率がどれだけ正解から離れているかを表す指標で、AIの学習に役立てられます。
まとめ
クルツさんの発表では、AIの基礎となるニューラルネットワーク(NN)の仕組みから、代表的なタスクにおける出力層、活性化関数、誤差関数の設計方法まで、幅広く解説していただきました。
AIは、出力層の設計を変えることで、様々なタスクに適用できることがわかりましたね! 今後AIを学ぶ上での基礎知識として、ぜひ今回の内容を参考にしてみてください。