ニューラルネットワークの基礎を探求しましょう。AIを支える仕組み、ディープラーニングとの違い、Ultralytics のような最先端モデルを駆動する原理を学びます。
ニューラルネットワーク(NN)は、人工知能(AI)の中核をなす計算モデルであり、 パターン認識、感覚データの解釈、情報のクラスタリングを目的として設計されている。 人間の脳の生物学的構造に着想を得たこれらのネットワークは、層状に組織化された相互接続されたノード、 すなわち「ニューロン」で構成される。 生物学的な脳がシナプス間で化学信号を用いて通信するのに対し、デジタルニューラルネットワークは数学的演算を用いて情報を伝達する。これらのシステムは現代の機械学習(ML)を支える基盤技術であり、コンピュータが顔認識、言語翻訳、自動運転車両の運転といった複雑な問題を、個々のルールを明示的にプログラムされなくても解決することを可能にしている。
これらの用語はしばしば混同されるが、基本的なニューラルネットワークとディープラーニング(DL)を区別することが重要である。主な違いは深さと複雑さに存在する。標準的な、あるいは「浅い」ニューラルネットワークでは、入力層と出力層の間に隠れた層が1つまたは2つしか存在しない場合がある。 これに対し、ディープラーニングでは数十層、さらには数百層にも及ぶ「深層」ニューラルネットワークを用いる。この深さによって特徴量の抽出が自動的に行われ、モデルが階層的なパターンを理解できるようになる——単純なエッジが形状となり、形状が認識可能な物体となるのだ。より深い技術的解説については、MITニュースがディープラーニングと基本ネットワークからの進化を解説している。
ニューラルネットワークにおける「学習」プロセスは、誤差を最小化するために内部パラメータを調整することを含む。 データは入力層から入力され、計算が行われる1つ以上の隠れ層を通過し、 予測値として出力層から出力される。
ニューラルネットワークは、現代を定義する多くの技術の基盤となるエンジンである。
現代のソフトウェアライブラリにより、数学的演算を一から記述することなくニューラルネットワークを実装することが可能となった。
例えば Ultralytics ユーザーがカスタムデータセットでこれらのネットワークを容易に学習できるようにします。以下のPython 、事前学習済みニューラルネットワーク(具体的には最先端のYOLO26モデル)を読み込み、画像に対して推論を実行する方法を示しています。
ultralytics パッケージで提供される。
from ultralytics import YOLO
# Load a pretrained YOLO26 neural network model
model = YOLO("yolo26n.pt")
# Run inference on an image to detect objects
# The model processes the image through its layers to predict bounding boxes
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()
強力な一方で、ニューラルネットワークには特有の課題がある。通常、教師あり学習には大量のラベル付きデータが必要となる。データの多様性が不十分だと、ネットワークは過学習に陥りやすい。これは学習が一般化ではなく、訓練例を記憶することに偏る現象である。 さらに、深層ニューラルネットワークは「ブラックボックス」と呼ばれることが多い。特定の判断に至った正確な解釈が困難なためであり、これが説明可能なAI(XAI)の研究を促している。IEEE標準化協会などの組織は、これらの強力なネットワークが倫理的かつ安全に使用されるよう、標準化を積極的に進めている。