ニューラルネットワークチュートリアル:初心者向けのステップバイステップガイド

公開: 2019-11-20

機械学習の分野では、多くの興味深い概念があります。 ここでは、このニューラルネットワークのチュートリアルで、ニューラルネットワークの基本的な概念の1つについて説明します。 この記事では、これらのネットワークの背後にある理論を説明することにより、これらのネットワークの動作を理解するのに役立ちます。

この人工ニューラルネットワークのチュートリアルを終了すると、次のことがわかります。

  • ニューラルネットワークとは何ですか?
  • ニューラルネットワークはどのように機能しますか?
  • ニューラルネットワークの種類は何ですか?

目次

ニューラルネットワークとは何ですか?

ニューラルネットワークは、人間の脳のように機能するように設計されたシステムです。 それは非常に単純ですが、私たちの日常生活で普及しています。

複雑な定義は、ニューラルネットワークがネットワークアーキテクチャを備えた計算モデルであるということです。 このアーキテクチャは、人工ニューロンで構成されています。 この構造には、特定のタスクを実行するために構造を変更できる特定のパラメーターがあります。

それらは広範な近似特性を持っています。 これは、関数の次元に関係なく、関数を任意のレベルの精度に近似できることを意味します。 ニューラルネットワークは、従来のコンピューターがうまく機能しない分野で広範なアプリケーションを見つけます。 SiriからGoogleマップまで、人工知能が使用されるすべての場所にニューラルネットワークが存在します。

それらは人工知能操作の重要な部分です。 ニューラルネットワークは人間の脳からインスピレーションを得ているため、その構造も同様です。

ニューラルネットワークはどのように機能しますか?

ニューラルネットワークには多くの層があります。 各レイヤーは特定の機能を実行し、ネットワークが複雑になるほど、レイヤーは多くなります。 そのため、ニューラルネットワークは多層パーセプトロンとも呼ばれます。

ニューラルネットワークの最も純粋な形式には、次の3つの層があります。

  1. 入力レイヤー
  2. 隠しレイヤー
  3. 出力層

名前が示すように、これらの各レイヤーには特定の目的があります。 これらのレイヤーはノードで構成されています。 要件に応じて、ニューラルネットワークに複数の隠れ層が存在する可能性があります。 入力層は入力信号をピックアップし、それらを次の層に転送します。 外界からデータを収集します。

隠れ層は、計算のすべてのバックエンドタスクを実行します。 ネットワークには、隠れ層をゼロにすることもできます。 ただし、ニューラルネットワークには少なくとも1つの隠れ層があります。 出力層は、隠れ層の計算の最終結果を送信します。

他の機械学習アプリケーションと同様に、特定の問題を提供する前に、いくつかのトレーニングデータを使用してニューラルネットワークをトレーニングする必要があります。 ただし、ニューラルネットワークが問題を解決する方法を詳しく説明する前に、まずパーセプトロン層の動作について知っておく必要があります。

パーセプトロンレイヤーはどのように機能しますか?

ニューラルネットワークは、多くのパーセプトロン層で構成されています。 そのため、「多層パーセプトロン」という名前が付けられています。 これらのレイヤーは、密なレイヤーの非表示レイヤーとも呼ばれます。 それらは多くのパーセプトロン中性子で構成されています。 それらは、パーセプトロン層を形成するために一緒に機能する主要なユニットです。 これらのニューロンは、一連の入力で情報を受け取ります。 これらの数値入力をバイアスおよび重みのグループと組み合わせて、単一の出力を生成します。

計算では、各ニューロンは重みとバイアスを考慮します。 次に、組み合わせ関数は重みとバイアスを使用して出力(変更された入力)を提供します。 これは、次の方程式で機能します。

組み合わせ=バイアス+重み*入力

この後、活性化関数は次の式で出力を生成します。

出力=アクティベーション(組み合わせ)

この関数は、ニューラルネットワークが実行する役割の種類を決定します。 それらはネットワークの層を形成します。 一般的な活性化関数は次のとおりです。

一次関数

この関数では、出力はニューロンの組み合わせのみです。

アクティベーション=組み合わせ

双曲線タンジェント関数

これは、ニューラルネットワークの中で最も人気のある活性化関数です。 これはシグモイド関数であり、-1から+1の間にあります。

アクティベーション=tanh(組み合わせ)

ロジスティック関数

ロジスティック関数は、一種のシグモイド関数でもあるため、双曲線正接関数と非常によく似ています。 ただし、0と1の間にあるため、異なります。

アクティベーション= 11 + e-組み合わせ

正規化線形ユニット関数

双曲線正接関数と同様に、正規化線形単位関数も一般的です。 正規化線形ユニット関数の別名はReLUです。 ReLUは、ゼロ以上の場合は組み合わせに等しく、組み合わせが(負の)ゼロよりも小さい場合は負になります。

では、ニューラルネットワークはどのように正確に機能しますか?

ニューラルネットワークの背後にあるものとその仕組みがわかったので、ニューラルネットワークの動作に焦点を当てることができます。

仕組みは次のとおりです。

  1. 情報は入力レイヤーに送られ、入力レイヤーはそれを非表示レイヤーに転送します
  2. 2つのレイヤー間の相互接続により、各入力にランダムに重みが割り当てられます
  3. 重みが個別に乗算された後、すべての入力にバイアスが追加されます
  4. 加重和は活性化関数に転送されます
  5. 活性化関数は、特徴抽出のために起動するノードを決定します
  6. モデルは、アプリケーション関数を出力レイヤーに適用して、出力を配信します
  7. 重みが調整され、エラーを最小限に抑えるために出力が逆伝播されます

モデルは、コスト関数を使用してエラー率を減らします。 さまざまなトレーニングモデルで重みを変更する必要があります。

  1. モデルは出力を元の結果と比較します
  2. このプロセスを繰り返して精度を向上させます

モデルは、出力の精度を高めるために、反復ごとに重みを調整します。

世界のトップ大学であるマスター、エグゼクティブ大学院プログラム、ML&AIの高度な証明書プログラムからオンラインで人工知能コースに参加して、キャリアを早めましょう。

ニューラルネットワークの種類

1)リカレントニューラルネットワーク(RNN)

このネットワークでは、レイヤーの出力が保存され、入力に戻されます。 このようにして、特定のレイヤーのノードは、過去のステップに関する情報を記憶します。 入力層の組み合わせは、重みと特徴の合計の積です。 リカレントニューラルネットワークプロセスは、隠れ層から始まります。

ここで、各ノードは、その先行ステップの情報の一部を記憶しています。 モデルは、各反復からの情報を保持し、後で使用できます。 システムは、結果が間違っている場合に自己学習します。 次に、その情報を使用して、バックプロパゲーションでの予測の精度を高めます。 RNNの最も一般的なアプリケーションは、テキスト読み上げテクノロジーです。

2)畳み込みニューラルネットワーク(CNN)

このネットワークは、1つまたは複数の畳み込み層で構成されています。 このネットワークに存在する畳み込み層は、入力を次の層に転送する前に、入力に畳み込み関数を適用します。 このため、ネットワークのパラメータは少なくなりますが、より深くなります。 CNNは、自然言語処理と画像認識で広く使用されています。

3)動径基底関数ニューラルネットワーク(RBFNN)

このニューラルネットワークは、動径基底関数を使用します。 この関数は、中心からのポイントの距離を考慮します。 これらのネットワークは2つの層で構成されています。 隠れ層は、特徴を放射基底関数と組み合わせて、出力を次の層に転送します。

次のレイヤーは、前のレイヤーの出力を使用しながら同じように実行します。 動径基底関数ニューラルネットワークは、電力システムで使用されます。

4)フィードフォワードニューラルネットワーク(FNN)

これは、人工ニューラルネットワークの最も純粋な形式です。 このネットワークでは、データは一方向、つまり入力層から出力層に移動します。 このネットワークでは、出力層は入力とその重みの積の合計を受け取ります。 このニューラルネットワークにはバックプロパゲーションはありません。 これらのネットワークには、多くのまたはゼロの隠れ層が含まれる可能性があります。 これらは、顔認識でのアプリケーションの保守と検索が簡単です。

5)モジュラーニューラルネットワーク

このネットワークには、独立して機能するいくつかのネットワークがあります。 これらはすべて特定のタスクを実行しますが、計算プロセス中に相互に作用することはありません。

このようにして、モジュラーニューラルネットワークは非常に複雑なタスクをはるかに高い効率で実行できます。 これらのネットワークは、単純なネットワーク(FNNなど)と比較して維持するのが困難ですが、複雑なタスクに対してより高速な結果を提供します。

ニューラルネットワークの詳細

ニューラルネットワークのチュートリアルは以上です。 これらのネットワークが実行できるさまざまなタスクを確認した必要があります。 それらは、私たちが日常的に使用するほとんどすべてのテクノロジーで使用されています。 ニューラルネットワークについて詳しく知りたい場合は、人工知能と機械学習に関するコースのカタログを確認してください。

機械学習とAIのエグゼクティブPGプログラムを確認できます。このプログラムでは、実践的なハンズオンワークショップ、1対1の業界メンター、12のケーススタディと課題、IIIT-B同窓生のステータスなどが提供されます。

ニューラルネットワークはどのように機能しますか?

入力層はデータを受け取り、それを非表示層に渡します。 重みは、2つのレイヤー間のリンクによってランダムに各入力に割り当てられます。 重みが個別に乗算された後、各入力にバイアスが適用されます。 活性化関数には、加重合計が渡されます。 特徴抽出の場合、アクティブ化関数はどのノードを起動するかを決定します。 出力を提供するために、モデルは出力層のアプリケーション関数を使用します。 エラーを減らすために、重みが変更され、出力が逆伝播されます。

リカレントニューラルネットワークとは何ですか?

レイヤーの出力は保存され、このネットワークの入力に送り返されます。 その結果、特定のレイヤーのノードは、以前のアクションに関する情報を保持します。 重みと特徴の合計によって、入力レイヤーの組み合わせが決まります。 隠れ層は、rnnベースのプロセスが始まる場所です。 ここの各ノードは、前の段階からの情報の一部を記憶しています。 モデルは、後で使用できるように、各反復からのデータを保存します。 システムの結果が正しくない場合、システムは自己学習します。 次に、その知識を使用して、バックプロパゲーション予測の精度を最適化します。 テキスト読み上げテクノロジーは、RNNの最も一般的なアプリケーションです。

多層パーセプトロンはどのように機能しますか?

「多層パーセプトロン」という名前は、ニューラルネットワークが複数のパーセプトロン層で構成されていることに由来しています。 これらのレイヤーは、非表示レイヤーを持つ高密度レイヤーとも呼ばれます。 それらは多数のパーセプトロン中性子で構成されています。 これらは、パーセプトロン層を構成する基本的な構成要素です。 入力のコレクション内の情報は、これらのニューロンに到達します。 これらの数値入力は、バイアスおよび重みのグループと組み合わされて、単一の出力を生成します。