機械学習の進歩に伴い、 高い道を歩んでいます。ディープラーニングは、大量のデータセットを使用する複雑な問題を解決するために構築された最先端のテクノロジーと見なされています。ニューラルネットワークとは何かに関するこのブログでは、ニューラルネットワークの基本的な概念と、それらが複雑なデータ駆動型の問題を解決する方法を紹介します。
人工知能とディープラーニングの詳細な知識を得るには、ライブに登録できます 24時間年中無休のサポートと生涯アクセスを備えたEdurekaによる。
- ニューラルネットワークとは何ですか?
- ディープラーニングとは何ですか?
- AI、ML、DLの違い
- ディープラーニングの必要性
- ディープラーニングのユースケース
- ニューラルネットワークはどのように機能しますか?
- 例で説明されたニューラルネットワーク
ニューラルネットワークの簡単な定義
人間の脳に従ってモデル化された、 ニューラルネットワークは、人間の脳の機能を模倣するために構築されました 。人間の脳は複数のニューロンで構成されるニューラルネットワークであり、同様に、人工ニューラルネットワーク(ANN)は複数のパーセプトロンで構成されています(後で説明します)。
ニューラルネットワークは、次の3つの重要な層で構成されています。
- 入力レイヤー: 名前が示すように、このレイヤーはプログラマーによって提供されたすべての入力を受け入れます。
- 隠しレイヤー: 入力レイヤーと出力レイヤーの間には、非表示レイヤーと呼ばれるレイヤーのセットがあります。この層では、計算が実行され、結果が出力されます。
- 出力層: 入力は、隠れ層を介して一連の変換を経て、最終的にこれを介して配信される出力になります。 層。
ニューラルネットワークがどのように機能するかを深く理解する前に、ディープラーニングとは何かを理解しましょう。
ディープラーニングとは何ですか?
ディープラーニングは、ニューラルネットワークの概念を使用して、多次元データの分析を含む高度に計算されたユースケースを解決する機械学習の高度な分野です。特徴抽出のプロセスを自動化し、人間の介入が最小限で済むようにします。
gotoコマンドc ++
では、ディープラーニングとは正確には何ですか?
ディープラーニングは高度です 人工ニューラルネットワークと呼ばれる脳の構造と機能に触発されたアルゴリズムを使用する機械学習のサブフィールド。
AI、ML、DLの違い(人工知能vs機械学習vsディープラーニング)
人々はしばしばそれを考える傾向があります 、 、および ディープラーニング それらは共通のアプリケーションを持っているので同じです。たとえば、Siriは、AI、機械学習、ディープラーニングのアプリケーションです。
では、これらのテクノロジーはどのように関連していますか?
- 人工知能 機械に人間の行動を模倣させる科学です。
- 機械学習 は人工知能(AI)のサブセットであり、データをフィードしてマシンに意思決定を行わせることに重点を置いています。
- ディープラーニング は、ニューラルネットワークの概念を使用して複雑な問題を解決する機械学習のサブセットです。
AIを要約すると、機械学習とディープラーニングは相互に関連する分野です。機械学習とディープラーニングは、解決するための一連のアルゴリズムとニューラルネットワークを提供することにより、人工知能を支援します データ駆動型の問題。
基本を理解したところで、ディープラーニングが必要になった理由を理解しましょう。
ディープラーニングの必要性:従来の機械学習アルゴリズムと手法の制限
機械学習は、技術の世界における大きな進歩であり、単調で時間のかかるタスクの自動化につながり、複雑な問題の解決とより賢明な意思決定に役立ちました。ただし、機械学習にはいくつかの欠点があり、ディープラーニングの出現につながりました。
機械学習のいくつかの制限は次のとおりです。
- 高次元データを処理できません: 機械学習は、変数の小さなセットを含むデータの小さな次元のみを処理できます。数百の変数を含むデータを分析する場合、機械学習は使用できません。
- 機能エンジニアリングは手動です: 100個の予測変数があり、重要なものだけを絞り込む必要があるユースケースを考えてみます。これを行うには、各変数間の関係を手動で調べて、出力を予測する上でどの変数が重要であるかを把握する必要があります。このタスクは、開発者にとって非常に面倒で時間がかかります。
- オブジェクト検出や画像処理の実行には理想的ではありません。 オブジェクト検出には高次元のデータが必要なため、機械学習を使用して画像データセットを処理することはできません。これは、機能の数が制限されているデータセットにのみ理想的です。
の深みに入る前に ニューラルネットワークでは、ディープラーニングが実装されている実際のユースケースを考えてみましょう。
ディープラーニングのユースケース/アプリケーション
PayPalが1億7000万人以上の顧客による40億件の取引から2350億ドル以上の支払いを処理していることをご存知ですか?この膨大な量のデータを使用して、他の理由の中でも特に考えられる不正行為を特定します。
PayPalは、ディープラーニングアルゴリズムの助けを借りて、データベースに保存されている可能性のある不正のパターンを確認することに加えて、顧客の購入履歴からデータをマイニングして、特定のトランザクションが不正であるかどうかを予測します。
同社は約10年間、ディープラーニングと機械学習テクノロジーに依存してきました。当初、不正監視チームは単純な線形モデルを使用していました。しかし、何年にもわたって、同社はディープラーニングと呼ばれるより高度な機械学習テクノロジーに切り替えました。
PayPalの不正リスクマネージャー兼データサイエンティスト、Ke Wangは、次のように述べています。
数の階乗java
「より現代的で高度な機械学習から私たちが楽しんでいるのは、より多くのデータを消費し、抽象化レイヤーとレイヤーを処理し、より単純なテクノロジーでは見ることができないものを「見る」ことができることです。見ることができません。」
単純な線形モデルは、約20個の変数を消費できます。ただし、ディープラーニングテクノロジーを使用すると、数千のデータポイントを実行できます。したがって、実装することによって ディープラーニングテクノロジーであるPayPalは、最終的に何百万ものトランザクションを分析して、不正行為を特定できます。 アクティビティ。
それでは、ニューラルネットワークの詳細を調べて、それらがどのように機能するかを理解しましょう。
ニューラルネットワークはどのように機能しますか?
ニューラルネットワークを理解するには、それを分解して、ニューラルネットワークの最も基本的な単位であるパーセプトロンを理解する必要があります。
パーセプトロンとは何ですか?
パーセプトロンは、線形データを分類するために使用される単層ニューラルネットワークです。これには4つの重要なコンポーネントがあります。
- 入力
- 重みとバイアス
- 総和関数
- アクティベーションまたは変換機能
パーセプトロンの背後にある基本的なロジックは次のとおりです。
入力層から受け取った入力(x)は、割り当てられた重みwで乗算されます。次に、乗算された値が加算されて加重和が形成されます。次に、入力の加重和とそれぞれの加重が、関連する活性化関数に適用されます。活性化関数は、入力をそれぞれの出力にマップします。
ディープラーニングの重みとバイアス
各入力に重みを割り当てる必要があるのはなぜですか?
入力変数がネットワークに供給されると、ランダムに選択された値がその入力の重みとして割り当てられます。各入力データポイントの重みは、その入力が結果の予測においてどれほど重要であるかを示します。
一方、バイアスパラメータを使用すると、正確な出力が得られるように活性化関数曲線を調整できます。
総和関数
入力に重みが割り当てられると、それぞれの入力と重みの積が取得されます。これらすべての製品を追加すると、加重和が得られます。これは、合計関数によって実行されます。
活性化関数
活性化関数の主な目的は、加重和を出力にマッピングすることです。 tanh、ReLU、sigmoidなどの活性化関数は変換関数の例です。
パーセプトロンの機能の詳細については、こちらをご覧ください。 ブログ。
私たちの前に このブログを締めくくり、ニューラルネットワークがどのように動作するかを理解するための簡単な例を見てみましょう。
例で説明されたニューラルネットワーク
画像を2つのクラスに分類する人工ニューラルネットワーク(ANN)を構築するシナリオを考えてみましょう。
- クラスA:病気ではない葉の画像が含まれています
- クラスB:病気の葉の画像が含まれています
では、葉を病気の作物と病気のない作物に分類するニューラルネットワークをどのように作成しますか?
apachehadoopのcloudera認定管理者
このプロセスは常に、入力を簡単に処理できるように処理および変換することから始まります。私たちの場合、各葉の画像は画像の寸法に応じてピクセルに分割されます。
たとえば、画像が30 x 30ピクセルで構成されている場合、ピクセルの総数は900になります。これらのピクセルは行列として表され、ニューラルネットワークの入力レイヤーに送られます。
私たちの脳が思考の構築と接続に役立つニューロンを持っているのと同じように、ANNには入力を受け入れ、入力層から非表示層、そして最後に出力層に渡すことによってそれらを処理するパーセプトロンがあります。
入力が入力レイヤーから非表示レイヤーに渡されると、初期のランダムな重みが各入力に割り当てられます。次に、入力に対応する重みが乗算され、それらの合計が入力として次の非表示レイヤーに送信されます。
ここでは、バイアスと呼ばれる数値が各パーセプトロンに割り当てられ、各入力の重みに関連付けられています。さらに、各パーセプトロンは、特定のパーセプトロンがアクティブ化されるかどうかを決定するアクティブ化または変換関数を通過します。
活性化されたパーセプトロンは、データを次の層に送信するために使用されます。このようにして、パーセプトロンが出力層に到達するまで、データはニューラルネットワークを介して伝播(順伝播)されます。
出力層では、データがクラスAに属するかクラスBに属するかを決定する確率が導出されます。
簡単そうですね。ニューラルネットワークの背後にある概念は、純粋に人間の脳の機能に基づいています。さまざまな数学的概念とアルゴリズムに関する深い知識が必要です。開始するためのブログのリストは次のとおりです。
このブログに関連性があると思われる場合は、 25万人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。 Edureka Deep Learning with TensorFlow認定トレーニングコースは、学習者が、SoftMax関数、オートエンコーダニューラルネットワーク、制限付きボルツマンマシン(RBM)などの概念に加えて、リアルタイムプロジェクトと割り当てを使用して、基本および畳み込みニューラルネットワークのトレーニングと最適化のエキスパートになるのに役立ちます。