ディープラーニングとは何か?
ディープラーニングとは、教師あり、教師なし、強化学習に使用できる機械学習アルゴリズムの一群を指す。これらのアルゴリズムは、長年の野放し状態を経て普及しつつある。この名称は、ニューラルネットワークで一般的な層の数を増やすことで、モデルがデータの複雑な表現を学習できるようになることに気づいたことに由来する。脳のニューロンの生物学的構造と機能にヒントを得たディープラーニングは、人工ニューロンの大規模で相互接続されたネットワークに依存している。
ニューラルネットワークとは何か?
人工ニューラルネットワーク・モデルは、人間の脳を構成する生物学的回路から着想を得ている。人工ニューラルネットワークは、生物学的回路がどのように一階論理の命題文の真理値を計算または決定できるかを示すために最初に作られた。ニューラルネットワークは、データセットから関連する特徴を学習し、データがより高いネットワーク層に流れるにつれて、これらの特徴のますます複雑な表現を構築する。
ウォーレン・S・マッカローとウォルター・ピッツのニューラルネットワークに対する理解
ウォーレン・S・マッカローとウォルター・ピッツは、二進法の真理値を計算できる一連の論理ゲートを構築する方法を示した。彼らのモデルのニューロンは、他のニューロンからの活動を統合する個々のユニットである。ニューロン間の各接続は、シナプスの効力(シナプス前ニューロンがシナプス後ニューロンを活性化する能力)をシミュレートするために重み付けされている。
処理の時間的順序を考慮し、フィードバック・ループを含めたかったにもかかわらず、彼らのモデルは学習も適応もできなかった。
ニューラルネットワーク学習の説明
ニューラルネットワークを訓練するためのさまざまな学習ルールが存在するが、最も基本的な学習は次のように考えることができる:ニューラルネットワークに入力が提示され、一連の相互接続されたニューロンの活動が、出力ニューロンの集合に到達するまで伝播する。
これらの出力ニューロンは、ネットワークが行う予測の種類を決定する。例えば、手書きの数字を認識するために、ネットワークに10個の出力ニューロンを用意することができる。レスポンス 最初は、ニューロン間の重みはランダムな値に設定され、どの数字が画像に含まれ ているかについての最初の予測はランダムになる。各画像が提示されるにつれて、次 に同じような画像を見たときに正しい答えを出力する可能性が高 くなるように、重みを調整することができる。
このように重みを調整することで、ニューラルネットワークは、どの特徴や表現が画像のクラスを正しく予測するのに関連しているかを学習することができる。
このように重みを更新する手順は、生物学的学習法則、進化的アルゴリズム、シミュレーテッド・アニーリングなど、どのようなものでも十分であるが、今日使われている主な方法はバックプロパゲーションとして知られている。
バックプロップ・アルゴリズムは、1960年代以降にさまざまな研究者によって何度か発見されたもので、連鎖法則を効果的に適用して、ネットワークの重みの変化に対してネットワークの出力がどのように変化するかを数学的に導き出す。これにより、ネットワークは勾配降下に基づく重み更新ルールに従ってその重みを適応させることができる。
ニューラルネットワークが効果的に動作し、学習するためのルールは整っているにもかかわらず、ディープラーニングを最先端のレベルまで押し上げるには、さらにいくつかの数学的なトリックが必要だった。
ニューラルネットワークの学習を難しくしていたもののひとつが、特にディープネットワークや多層ネットワークにおいて、1991年にSepp Hochreiterによって数学的に説明された。この問題は消失勾配問題と呼ばれ、現在では二重の問題として爆発重み問題と呼ばれている。
Hochreiterの分析は、Long Short Memory (LSTM) モデルとして知られるリカレントニューラルネットワーク (RNN)の開発を動機づけた。LSTMは、RNNが直面していた多くの困難を克服し、今日でも、時間的または連続的なデータをモデル化するための最先端技術の一つとなっている。フィードフォワードニューラルネットワークと畳み込みニューラルネットワークの並列開発も同様に、幅広いタスクにおいて従来の機械学習技術を凌駕する能力を向上させるだろう。
グラフィック・プロセッシング・ユニット(GPU)の普及やデータの利用可能性の増加といったハードウェアの進歩に加え、より賢い重みの初期化、斬新な活性化関数、より優れた正則化手法などが、ニューラルネットワークを現在のように機能させるのに役立っている。
Vectra ディープラーニングをサイバーセキュリティに応用するAIアプローチ
Vectra AIは、ディープラーニングと人工ニューラルネットワークを使って、データセットから学習された関連する特徴の複雑な表現を構築する。これらの表現は、データサイエンティストによって事前に決定されるのではなく、学習されるため、非常に複雑な問題を解決するために使用すると非常に強力です。Vectra AIによるディープラーニングと機械学習の応用についての詳細はこちらをご覧ください。