ニューラルネットワークとは?
仕組み・種類・活用例を解説

ニューラルネットワークという言葉を耳にしたことはあっても、その具体的な意味や仕組みまでよく分からないという方も多いのではないでしょうか。

この記事では、ニューラルネットワークの概要や仕組みについてわかりやすく解説します。また、学習方法や活用事例も紹介しているので、ニューラルネットワークの理解を深めるうえでお役立てください。

目次

1.ニューラルネットワークとは?

  • 機械学習・深層学習(ディープラーニング)との違い
  • ニューラルネットワークの重要性

2.ニューラルネットワークの仕組み

  • 入力層・隠れ層・出力層を構成
  • ノード間の結合一つ一つが「重み」を持つ
  • 入力と出力を繰り返して学習する

3.ニューラルネットワークの主な学習手法

  • Dropout法
  • 確率的勾配降下法(SGD)
  • 誤差逆伝播法

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

  • ディープニューラルネットワーク(DNN)
  • 畳み込みニューラルネットワーク(CNN)
  • 再帰型ニューラルネットワーク(RNN)
  • 自己符号化器(オートエンコーダ)
  • 敵対的生成ネットワーク(GAN)

5.ニューラルネットワークの活用事例

  • 機械翻訳・自然言語処理
  • 車の自動運転と画像認識
  • 金融機関での株取引
  • インターンネット上でのコメント監視

6.ニューラルネットワーク まとめ

1. ニューラルネットワークとは?

ニューラルネットワークとは、人間の脳内にある「ニューロン」という神経細胞を、人口ニューロンという数式で模倣した機械学習モデルのことです。神経(ニューラル)と網(ネットワーク)でそれぞれ表現されます。

音声や画像などの複雑なデータパターンを認識・学習できるため、AI(人工知能)を支える技術として近年注目を集めています。

AIについて詳しくは、AI(人工知能)とは?仕組み・使い方・ビジネスの活用事例を解説をご確認ください。

機械学習・深層学習(ディープラーニング)との違い

ニューラルネットワークは、ディープラーニングの基礎技術として知られる機械学習の一種です。一般的なニューラルネットワークは、以下の3層で構成されています。

  • 入力層
  • 隠れ層
  • 出力層


下図のように3つの層からなるニューラルネットワークのうち、隠れ層を重ねて複数所有させたものをディープラーニングといいます。

ディープラーニング以前に用いられていた「パーセプトロン」という学習方法では、隠れ層がない、もしくは少なかったこともあり、単純な情報処理のみに留まっていましたが、ニューラルネットワークによる隠れ層を重ねたディープラーニングが確立されたことで、より複雑な情報処理が可能になったといえます。

機械学習やディープラーニングについて詳しくは、機械学習とは?仕組みや活用例までわかりやすく解説ディープラーニングとは?仕組みや活用例をわかりやすく解説」をご覧ください。

ニューラルネットワークの重要性

ニューラルネットワークは、従来のアルゴリズムでは困難だった問題にも、高い精度と効率で取り組めることから、あらゆる分野で重要視されています。
例えば、機械翻訳、株価予測、不良品の分類、自動運転の物体認識、医療分野の癌予測などのさまざまな分野で、ニューラルネットワークによって強化されたAIが活用されています。特に、画像認識や音声認識の精度に関しては、時に人間の予測を上回ることもあります。

2. ニューラルネットワークの仕組み

ニューラルネットワークは、単純な仕組みである人工ニューロンを、複数組み合わせることで、より複雑な処理を実行できます。
ここからは、ニューラルネットワークの仕組みについて、以下3つの視点から解説します。

  • 入力層・隠れ層・出力層を構成
  • ノード結合箇所の「重み」
  • 入力と出力の反復学習

入力層・隠れ層・出力層を構成

ニューラルネットワークは、入力層・隠れ層・出力層の3層から構成されています。それぞれの特徴は、以下のとおりです。

  • 入力層:分析の基となる情報・データの入力を行う
  • 隠れ層:データ処理・分析などを行う
  • 出力層:分析結果の抽出・判断などの情報発信を行う


ニューラルネットワークにおいて特に重視されるのが、入力データを対象にさまざまな分析・計算を実施する「隠れ層」です。複数の隠れ層を持つことにより、複雑な問題への対処を可能にするのがニューラルネットワークの特徴です。
入力・隠れ・出力3つの層には、それぞれ多数のノード(上図の〇部分)があり、それぞれが結合することでネットワークを形成しています。

ノード結合箇所の「重み」

ニューラルネットワークの特徴は、結び目や中心点の意味をもつ「ノード」間の結合部分(シナプス)一つひとつに、結合強度を示す「重み」があることです。

重みには、入力データの重要性をパラメータとして調整する役割があります。ノード間の結合がもつ重みは、学習過程で徐々に調整されていき、最適化することで、より正しい結果を出力することにつながります。

入力と出力の反復学習

ニューラルネットワークは、データの入力・出力をそれぞれ繰り返し、上述した重みを最適化することで学習を進めていきます。
重みの付け方の微調整などを経て、ニューラルネットワークモデルの精度を向上させ、最終的には出力層で最適な結果を出せるようになります。

3. ニューラルネットワークの主な学習手法

ここでは、ニューラルネットワークの学習手法に代表される以下3つについて解説します。

  • Dropout法
  • 確率的勾配降下法(SGD)
  • 誤差逆伝播法

Dropout法

Dropout法とは、ニューラルネットワークの学習時に、一度学習したノードをランダムに無効化する学習方法を指します。

ランダムにノードを無効化することで過学習(訓練データをコンピュータが学習しすぎて未知データに対応できなくなってしまうこと)を防止し、モデルの汎化性能を向上させる方法です。

確率的勾配降下法(SGD)

確率的勾配降下法(SGD)とは、ノード間にある重みを更新するための方法です。

ランダムに選出された、一部のデータのみで更新を行います。確率的勾配降下法(SGD)は計算効率が良いため、大規模なデータセットに対しても効果を発揮します。

誤差逆伝播法

誤差逆伝播法とは、出力層で生じた誤差を逆方向に伝播させることで、重みを更新する手法です。

実際に出力された値と正解とされる値の間に発生した誤差を活用し、ネットワーク全体を学習させます。これにより、モデルの精度をより効率的に向上させることができます。

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

ニューラルネットワークには、主に以下の5種類があります。

  • ディープニューラルネットワーク(DNN)
  • 畳み込みニューラルネットワーク(CNN)
  • 再帰型ニューラルネットワーク(RNN)
  • 自己符号化器(オートエンコーダ)
  • 敵対的生成ネットワーク(GAN)

ここでは、ニューラルネットワークに分類されるそれぞれの特徴について解説します。

ディープニューラルネットワーク(DNN)

ディープニューラルネットワーク(DNN)とは、後ほど解説するCNNRNNなど、4層以上の多層ニューラルネットワークを備えている深層学習モデルです。

DNNは、隠れ層が2層以上の多層になっています。そのため入力層、隠れ層、出力層の3層のニューラルネットワークに対し、多層化されているDNNはより複雑なデータを処理できます。
DNNは、従来のニューラルネットワークにあった汎用性の低さなどの弱点を補い、多様なタスクに応用可能です。

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

畳み込み層・プーリング層というレイヤーを有している畳み込みニューラルネットワーク(CNN)は、主に画像認識に特化しているのが特徴です。
CNNは特徴量を自動で抽出し、効率的に学習することができます。

例えば、CNNは画像から特徴を自動で抽出し、最適な意思決定することができるため、それができなかった従来の画像分析より優れているといえます。
また、感情分析や文書分類から文章の自動生成、チャットボットの開発といった自然言語処理でもCNNが利用されています。

再帰型ニューラルネットワーク(RNN)

再帰型ニューラルネットワーク(RNN)は、主に時系列データの処理に用いられ文章生成や機械翻訳・音声認識などで利用されています。

RNNは、前にある時系列データの隠れ層を、例えば、図の時系列データAの隠れ層をデータBの学習に使うというように、次の時系列データの学習に用いる構造になっています。
RNNにおける時系列データは、時間軸に沿って時系列データをそのまま入力でき、かつ時間情報が反映できるようになっています。そのため、文章や音声の意味を理解するうえで重要な、前後の時系列データ情報を処理できるのがRNNの特徴です。

自己符号化器(オートエンコーダ)

入力されたデータを圧縮し、重要な特微量のみを残して復元するアルゴリズムを自己符号化器(オートエンコーダ)といいます。

入力層・出力層のデータが同じになるよう処理されるのが、オートエンコーダの特徴です。
異常検知システムやノイズ除去、次元削除において活躍します。ちなみに、複数のオートエンコーダを重ね合わせた構造をディープラーニングというため、どちらも同じ仕組みといえます。

敵対的生成ネットワーク(GAN)

敵対的生成ネットワーク(GAN)とは、元となるデータ分布を推測し、それに基づいたデータを生成するためのモデルです。

データの真偽をはっきりさせる識別ネットワークの「Discriminator(ディスクリミネータ)」と、ディスクリミネータが受け取ったデータが本物なのか予測・出力する「Generator(ジェネレータ)」という生成ネットワークで構成されています。
存在しないデータの生成や特徴にあわせた変換が可能であり、画像認識などに多く用いられます。

5. ニューラルネットワークの活用事例

ニューラルネットワークは、以下の領域などで活用されています。

  • 機械翻訳・自然言語処理
  • 車の自動運転と画像認識
  • 金融機関での株取引
  • インターネット上でのコメント監視

これらの分野でニューラルネットワークがもたらした進展について、以下でご紹介します。

機械翻訳・自然言語処理

Googleは2016年よりニューラルネットワークに基づいた機械翻訳を導入しています。

ニューラルネットワークによって、文章を単語一つひとつで翻訳するのではなく、一つの文章として翻訳できるようになり、文脈を考慮したより品質の高い翻訳が可能になりました。
また、翻訳後の文章も、日常生活で人間が使用する言語のような自然な文章で生成されます。

車の自動運転と画像認識

車の自動運転における画像認識でも、ニューラルネットワークが活用されています。
車載カメラに内蔵したニューラルネットワークにより、映像データの解析や障害物の検知、道路の認識がより早く行えるようになりました。
また最近では、複数のニューラルネットワークを活用し、自動運転の安全性をより高めるための開発が進められています。

金融機関での株取引

ニューラルネットワークは、金融機関における株価予測や、物件の価格設定にも用いられています。

例えば株価の場合、特定の時刻や時間を基準にし、専用のニューラルネットワークを使って株価の上昇・下落を予測できるようになりました。また、物件の価格設定においては、ディープラーニングの技術を用いてAI(人工知能)が価格を推定しています。
株価の予測や物件の価格設定では、どちらも大量のデータを利用しています。ニューラルネットワークはこの大量のデータからパターンを見つけ出すことで、金融関連の様々な予測を行っています。

インターネット上でのコメント監視

インターネット上に投稿される、コメントの監視にもニューラルネットワークが活用されています。
従来のコメント管理は、人力で行う必要がありました。インターネット上には複雑な言い回しによる誹謗中傷なども多く、人力で監視・削除するには限界があります。
ニューラルネットワークを用いることで、インターネット上のコメントを自動で監視できるようになりました。コメントをフィルタリングできるようになったため、不適切な内容を自動で抽出することが可能です。

6. ニューラルネットワーク まとめ

ニューラルネットワークとは、人間の脳の仕組みを模倣した機械学習モデルのことです。入力層・隠れ層・出力層の3つの層により、従来のアルゴリズムでは困難だった問題も、高い精度で解決できるようになりました。
ニューラルネットワークは、DNN・CNN・RNN・オートエンコーダ・GANなどに分類され、Dropout法・確率的勾配降下法(SGD)・誤差逆伝播法などの学習手法があります。
昨今では、機械翻訳による言語処理や自動運転の精度向上、金融関連の取引やインターネット上のコメント監視にニューラルネットワークが役立っています。
ニューラルネットワークは、機械学習・ディープラーニングの知見を深めるうえでも重要な項目です。本記事の内容を、ニューラルネットワークについて学ぶうえで、ぜひお役立てください。

【監修者】酒井 麻里子

ITライター/新技術ウォッチャー。XR、ジェネレーティブAIなどの新しいテクノロジーや企業のDX取材、技術者・経営者へのインタビュー、技術解説記事などを執筆。ビジネスを軸にしたXRと最新テクノロジーのWEBマガジン『TechComm-R』運営。Yahoo!ニュース公式コメンテーター(ITジャンル)。株式会社ウレルブン代表。

TOPページへ戻る

目次

1.ニューラルネットワークとは?

2.ニューラルネットワークの仕組み

3.ニューラルネットワークの主な学習手法

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

5.ニューラルネットワークの活用事例

6.ニューラルネットワーク まとめ