Yolo 深圳
深セン
今すぐ参加
用語集

ドロップアウトレイヤー

Learn how to use a [dropout layer](https://www.ultralytics.com/glossary/dropout-layer) to prevent overfitting. Discover how to train [YOLO26](https://docs.ultralytics.com/models/yolo26/) for more robust AI models.

ドロップアウト層は、 ニューラルネットワーク(NN)において 過学習という普遍的な問題に対処するために用いられる 基本的な正則化手法である。 モデルが有限の例で学習されると、 基礎的な一般パターンを見分けるよりも、 訓練データのノイズや特定の詳細を 記憶してしまうことが頻繁に起こる。 この記憶化は開発中の高い精度をもたらすが、 新規の未見入力に対する性能は低下する。 ドロップアウトは、学習プロセスの各段階で層内のニューロンの一部をランダムに無効化(つまり「ドロップアウト」)することでこの問題に対処する。Srivastavaらによる画期的な研究論文で導入されたこのシンプルかつ効果的な戦略は、深層学習(DL)アーキテクチャの安定性と性能を大きく向上させた

ドロップアウト・レイヤーの機能

The mechanism behind a dropout layer is intuitively similar to removing players from a sports team during practice to force the remaining players to work harder and not rely on a single star athlete. During the model training phase, the layer generates a probabilistic mask of zeros and ones. If the dropout rate is set to 0.5, approximately 50% of the neurons are temporarily ignored during that specific forward and backward pass. This process forces the remaining active neurons to learn robust features independently, preventing the network from relying too heavily on any single neuron—a phenomenon known in machine learning (ML) as feature co-adaptation.

リアルタイム推論(テストフェーズ)では、ドロップアウト層は通常無効化される。訓練済みモデルの予測能力を最大限活用するため、全てのニューロンが活性状態を維持する。総活性化値が訓練フェーズと一貫性を保つよう、フレームワークによって重みが自動的にスケーリングされることが多い。PyTorchのような現代的なライブラリでは PyTorch はこれらの数学的スケーリング操作をシームレスに処理するため、開発者は算術演算ではなくアーキテクチャ設計に集中できる。

YOLOを用いた実践的実装

をご利用のお客様へ ultralytics パッケージ、最先端モデルへのドロップアウトの適用 YOLO26 is as simple as adjusting a training argument. This is particularly useful when working with smaller datasets where the risk of overfitting is higher. By introducing randomness, you can encourage the model to generalize better across diverse environments.

from ultralytics import YOLO

# Load the latest YOLO26 model (recommended for new projects)
model = YOLO("yolo26n.pt")

# Train the model with a custom dropout rate of 0.1 (10%)
# This encourages the model to learn more generalized features
results = model.train(data="coco8.yaml", epochs=50, dropout=0.1)

実際のアプリケーション

ドロップアウトは、利用可能なデータに対してモデルが膨大な数のパラメータを利用する人工知能(AI)の様々な領域において不可欠である。

  1. 自動運転システム:車両の物体検知などのタスクでは、 ビジョンモデルが多様な気象条件下で確実に動作する必要があります。 正則化なしで訓練されたモデルは、訓練セット内の晴天時の特定の照明を記憶してしまう可能性があります。 ドロップアウトを適用することで、自動車向けAI開発者はネットワークが背景のテクスチャではなく、 歩行者や停止標識などの本質的な形状に焦点を当てることを保証し、 雨や霧の中でも安全性を向上させます。
  2. 医療診断: 医療画像解析を行う際、 データセットの収集には多額の費用がかかり、 規模も限られていることが多い。深層ネットワークは、 データ収集に使用されたX線装置特有のノイズアーチファクトに基づいて 誤って疾患を識別することを学習してしまう可能性がある。 ドロップアウトは学習プロセスにノイズを加えることでこれを防止し、 モデルが装置固有の特徴ではなく病理の生物学的特徴を識別することを保証する。 これは医療分野におけるAIにとって極めて重要である。

Dropout vs. Other Regularization Techniques

While dropout is highly effective, it is often used alongside other techniques. It is distinct from data augmentation, which modifies the input images (e.g., flipping or rotating) rather than the network architecture itself. Similarly, it differs from batch normalization, which normalizes layer inputs to stabilize learning but does not explicitly deactivate neurons.

For complex projects, managing these hyperparameters can be challenging. The Ultralytics Platform simplifies this by providing tools to visualize training metrics, helping users determine if their dropout rates are effectively reducing validation loss. Whether you are building a custom image classification system or a sophisticated segmentation pipeline, understanding dropout is key to building resilient AI systems.

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加