Задача
В этом проекте мы будем классифицировать породу собаки по заданной фотографии собаки в качестве исходных данных.
Набор данных - 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
Предоставлено: Амрута Коше