Задача

В этом проекте мы будем классифицировать породу собаки по заданной фотографии собаки в качестве исходных данных.

Набор данных - https://cainvas-static.s3.amazonaws.com/media/user_data/AmrutaKoshe/dog_photos.zip

Набор данных состоит из 5 отобранных разных пород собак. Каждая папка названа в честь породы и содержит около 120 изображений этой породы. Основываясь на данном изображении, нам нужно отнести эту породу к одной из 5 представленных пород.

5 разных пород:

Предварительная обработка -

  • Сначала импортируйте все необходимые библиотеки -
  • Загрузите данные и разархивируйте их, чтобы получить доступ к изображениям и этикеткам из записной книжки.
  • Составьте список всех названий папок в вашем наборе данных и проверьте количество классификаций (количество присутствующих пород).

вывод:

['bulldog', 'pug', 'rottweiler', 'german shepherds', 'labrador']
5
  • Чтобы лучше понять наш набор данных, покажите несколько изображений

Разделите набор обучающих данных на обучающий и проверочный.

  • Выполните увеличение данных с помощью ImageDataGenerator, чтобы мы могли получить более релевантные данные из существующих изображений, внеся незначительные изменения в набор данных.
  • Разделите набор обучающих данных на обучающий набор и набор для проверки.

вывод:

Found 459 images belonging to 5 classes.
Found 112 images belonging to 5 classes.

Обучение модели

  • скомпилировать и подогнать модель

вывод:

Epoch 1/170
14/14 [==============================] - 2s 116ms/step - loss: 1.6112 - accuracy: 0.2277 - val_loss: 1.6012 - val_accuracy: 0.2411
Epoch 2/170
14/14 [==============================] - 1s 99ms/step - loss: 1.6091 - accuracy: 0.2482 - val_loss: 1.6041 - val_accuracy: 0.2411
Epoch 3/170
14/14 [==============================] - 1s 99ms/step - loss: 1.6014 - accuracy: 0.2365 - val_loss: 1.6013 - val_accuracy: 0.2411
...
...
...
Epoch 168/170
14/14 [==============================] - 1s 99ms/step - loss: 0.3052 - accuracy: 0.8899 - val_loss: 0.9355 - val_accuracy: 0.7054
Epoch 169/170
14/14 [==============================] - 1s 99ms/step - loss: 0.3965 - accuracy: 0.8454 - val_loss: 1.0105 - val_accuracy: 0.7054
Epoch 170/170
14/14 [==============================] - 1s 103ms/step - loss: 0.2919 - accuracy: 0.8839 - val_loss: 0.7971 - val_accuracy: 0.7768

Модель Производительность

Прогнозы

  • Выберите изображение из тестового набора

вывод:

Prediction is bulldog.

Вывод

Следовательно, мы обучили последовательную модель предсказанию породы собаки с изображением собаки в качестве входных данных.

Ссылка на блокнот: » «https://cainvas.ai-tech.systems/notebooks/details/?path=AmrutaKoshe/dog%20photos.ipynb

Предоставлено: Амрута Коше