Оценить:
 Рейтинг: 0

Искусственный интеллект в прикладных науках. Медицина

Год написания книги
2024
Теги
<< 1 2 3 4 5 6 7 8 9 10 ... 12 >>
На страницу:
6 из 12
Настройки чтения
Размер шрифта
Высота строк
Поля

from tensorflow.keras.models import Sequential

from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense

```

– `numpy` используется для работы с массивами чисел.

– `matplotlib.pyplot` используется для построения графиков.

– `tensorflow` – фреймворк глубокого обучения.

– `ImageDataGenerator` используется для предварительной обработки изображений перед подачей их в модель.

– `Sequential` используется для создания последовательной модели.

– `Conv2D`, `MaxPooling2D`, `Flatten` и `Dense` – типы слоев нейронной сети.

2. Загрузка данных:

```python

train_data_dir = 'path_to_training_data_directory'

test_data_dir = 'path_to_test_data_directory'

train_datagen = ImageDataGenerator(rescale=1./255)

test_datagen = ImageDataGenerator(rescale=1./255)

train_generator = train_datagen.flow_from_directory(

train_data_dir,

target_size=(150, 150),

batch_size=32,

class_mode='binary')

test_generator = test_datagen.flow_from_directory(

test_data_dir,

target_size=(150, 150),

batch_size=32,

class_mode='binary')

```

– Здесь задаются пути к каталогам с обучающими и тестовыми данными.

– `ImageDataGenerator` используется для масштабирования значений пикселей в диапазоне от 0 до 1.

– `flow_from_directory` загружает изображения из указанных каталогов, изменяет их размер до 150x150 пикселей и разбивает их на пакеты размером 32 изображения.

3. Создание модели CNN:

```python

model = Sequential([

Conv2D(32, (3, 3), activation='relu', input_shape=(150, 150, 3)),

MaxPooling2D(2, 2),

Conv2D(64, (3, 3), activation='relu'),

MaxPooling2D(2, 2),

Conv2D(128, (3, 3), activation='relu'),

MaxPooling2D(2, 2),

Conv2D(128, (3, 3), activation='relu'),

MaxPooling2D(2, 2),

Flatten(),

Dense(512, activation='relu'),

Dense(1, activation='sigmoid')

])

```

– Создается последовательная модель.

– Добавляются слои свертки (`Conv2D`) и слои пулинга (`MaxPooling2D`), которые позволяют модели извлекать признаки из изображений.

– Последние слои – полносвязные слои (`Dense`), которые выполняют классификацию.

4. Компиляция модели:

```python
<< 1 2 3 4 5 6 7 8 9 10 ... 12 >>
На страницу:
6 из 12