機械学習

機械学習は、人間が持つ学習能力をコンピュータ上で再現する技術で、大きく「教師あり学習」「教師なし学習」「強化学習」の3つに分類されます。

教師あり学習

教師あり学習は、入力データと正解データをセットにしてコンピュータに学習させる手法です。この手法を用いることで最終的にコンピュータが与えられた入力に対して正確に判断できるようになります。

教師なし学習

教師なし学習は、入力データのみをコンピュータに与えて学習させる手法です。人間にも正解がわからない物事の予測をする用途で使用します。

強化学習

強化学習は、正解データの代わりに報酬をコンピュータに与えて学習させる手法です。人間が最終的な正解を把握している状況で、その正解を導くまでの最適な過程をコンピュータに学習させる目的で使用します。

 

ニューラルネットワーク

ニューラルネットワークは、人間の脳の神経回路を模した数理モデルのことです。

ディープラーニング

ディープラーニング(深層学習)は、ニューラルネットワークを多層にした機械学習の手法です。データの特徴を学習し、判断に使う特徴量を自動的に獲得する点が特徴です。

ニューロンと活性化関数

ニューロンとは、脳の神経細胞をコンピュータ上で再現した「計算を行う最小単位(ノード)」のことです。
仕組みは非常にシンプルで、「複数の入力を受け取り、計算して、1つの出力を次のニューロンへ送る」という連鎖を行っています。
 
ニューロン内部で行われる「3つのステップ」は以下のとおりです。
    1. 重み付け(かけ算):入力された情報(\(x\))に、それぞれの重要度である「重み(\(w\))」を掛け算します。
    2. 足し算(総和):掛け算した結果をすべて合計し、さらに偏り具合を調整する「バイアス(\(b\))」を足します。
    3. 活性化関数(判断):足し算した合計値を「活性化関数」というフィルターに通して、最終的な出力(\(y\))を決定します。

活性化関数とは、ニューロンが計算した合計値を「次のニューロンにどれくらいの強さで伝達するか(発火させるか)」を判定するフィルター(関数)です。
人間で例えると、「ある噂話(入力情報)を聞いたとき、それを他人に話す(発火する)か、心の中に留めておく(発火しない)かを判断する基準」のようなものです。
もし活性化関数がないと、AIの計算は単なる「直線的な足し算と掛け算(線形変換)」だけになってしまいます。これでは、複雑な形をしたデータや、折れ曲がった境界線(非線形な問題)を分類することができません。活性化関数を通すことで、計算に「歪みや折れ曲がり(非線形性)」が加わり、AIが複雑な物事をパターン認識できるようになります。