Использование примера кода MNIST TensorFlow для обучения сети с моим собственным набором данных изображений

Я только начал использовать TensorFlow в Python. Я хочу создать бинарный классификатор изображений с помощью CNN.

Я нашел в Интернете пример кода: https://github.com/tensorflow/tensorflow/blob/r1.1/tensorflow/examples/tutorials/mnist/mnist_with_summaries.py Объяснение приводится здесь: https://www.tensorflow.org/get_started/mnist/pros Этот код создает небольшую нейронную сеть и использует набор данных MNIST для тренируй и тестируй.

Я примерно понимал работу CNN, но не понимал код построчно.

Я хочу использовать тот же код с моим собственным набором данных изображений (как для обучения, так и для тестирования). В этом примере входные изображения преобразуются в mx784, где m - количество примеров обучения / тестирования, а 784 исходят из сглаженных изображений размером 28x28 каждое. Я преобразовал все свои изображения в массив размера mx1024, используя скрипт python, и аналогичным образом преобразовал основную истину в массив размера mx1. Я сохранил их в текстовом файле как X.txt и y.txt.

Теперь в коде я изменил размеры в соответствии с размерами моего изображения. Однако я не понимаю, как передавать изображения в сеть. Есть ли другой выход, кроме как прохождение кода построчно? Буду очень признателен, если вы мне поможете.


person Ankur Deka    schedule 01.06.2017    source источник


Ответы (1)


Эта статья «Начало работы» просто замечательна, чтобы понять строку за строкой и шаг за шагом «углубиться» в нейронные сети.

https://www.tensorflow.org/get_started/

Попробуй разобраться, это тебе очень поможет :)

person A. Piro    schedule 01.06.2017
comment
Большое спасибо @A. Пиро. Приведенная вами ссылка - это то же самое место, откуда я узнал все, что знаю о TensorFlow. Думаю, мне лучше понять себя строчка за строчкой, как вы сказали. Спасибо :) - person Ankur Deka; 01.06.2017
comment
Да, я сделал свой первый шаг в практическом машинном обучении примерно 3 месяца назад, так что я знаю, через что вы проходите;) но этот урок просто потрясающий! - person A. Piro; 01.06.2017
comment
Я просмотрел код и, кажется, понял большую часть его. Я смог запустить свои изображения, настроив тот же пример кода в соответствии с моими конкретными требованиями. Однако я вижу две аномалии: 1) Точность в целом увеличивается, но колеблется на каждом шаге (не уменьшается на каждом шаге) 2) Точность после 500 шагов увеличивается до нан. Я могу предположить одну возможную причину - пример кода MNIST предназначался для работы с черно-белыми изображениями. Однако мои изображения в оттенках серого. - person Ankur Deka; 02.06.2017