コース: Microsoft Azure AIの基礎知識:Azureでのワークロードと機械学習
ニューラルネットワークとディープラーニング
ニューラルネットワークと ディープラーニングは、 脳に触発された機械学習の形式です。 私たちの脳のニューロンは、 見る、聞く、触る、味わう、 匂いを嗅ぐといった感覚入力を受け取り、 それらを処理して反応を生成します。 ニューラルネットワークは、 この構造を模倣してます。 入力層はデータを受け取り、 出力層は結果を生成し、 隠れ層が情報を処理します。 顧客データの4つの特徴で見てみましょう。 「年齢層」「購入履歴」「場所」 「エンゲージメントレベル」の4つです。 このデータを使って 顧客を3つのグループに 分類したいと思います。 「予算重視の買い物顧客」 「ブランド愛好者」 「滅多に来ない購入者」のいずれかです。 ここでは、入力層は4つのノードがあり、 それぞれ、ひとつの特徴に対応してます。 出力層は3つのノードがあり、 それぞれ、ひとつの顧客タイプに 対応してます。 出力は各クラスの確率を示します。 隠れ層のノード数を決定するには、 複雑なプロセスをする必要があって、 このコースでは、 そのプロセスは扱われてません。 隠れ層の各ノード接続には、 重みが割り当てられます。 初期状態では ランダムに割り当てられますが、 トレーニング中に調整され、 ニューロン間の影響の強さと方向を 示します。 ニューラルネットワークは、 どのように学習するのでしょうか。 トレーニング中に、データセットは、 トレーニングセットと検証セットに 分割されます。 トレーニングの特徴量が 入力層に入力されます。 隠れ層は、このデータを 順伝播(Forward Propagation)を通じて 処理し、 重みを使用してクラスの確率を予測します。 次に、損失関数が、 これらの予測値と実際の値を比較して、 精度を測定します。 最適化アルゴリズムは、 損失を最小化するために重みを調整します。 そして、新しい重みが ネットワーク内の層に追加され、 降り物を置き換えます。 このプロセスは逆伝播と呼ばれます。 このプロセスは、エポックと呼ばれる 複数の反復に渡り繰り返され、 モデルが許容可能な精度レベルに 達するまで行われます。 今説明したのは、 複雑な処理のために複数の隠れ層を持つ ディープラーニングシステム、 ディープニューラルネットワークでした。 単純なニューラルネットワークは、 隠れ層がひとつしかありません。 ニューラルネットワークの 機械学習によって、 よりディープラーニングをし、 最適化されているモデルの作成が できるでしょう。