Сверточная нейронная сеть

term_id: convolutional_neural_network

Category: basic_concepts

Definition

Сверточные нейронные сети (CNN) предназначены для автоматического и адаптивного изучения пространственных иерархий признаков из визуальных входных данных. Они используют сверточные слои, которые применяют фильтры для выявления локальных паттернов, таких как края и текстуры.

Summary

Специализированный класс глубоких нейронных сетей, используемых преимущественно для обработки структурированных данных, таких как изображения, путем применения сверточных фильтров.

Key Concepts

  • Сверточные слои
  • Пулинг (свертка с уменьшением размера)
  • Карты признаков
  • Пространственная иерархия

Use Cases

  • Классификация изображений
  • Обнаружение объектов в видеопотоках
  • Диагностика по медицинским изображениям

Code Example

1
2
3
4
5
6
7
import tensorflow as tf
model = tf.keras.Sequential([
    tf.keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
    tf.keras.layers.MaxPooling2D((2, 2)),
    tf.keras.layers.Flatten(),
    tf.keras.layers.Dense(10)
])