Tensorflow: точная настройка начальной модели

#python #machine-learning #tensorflow #deep-learning

#python #машинное обучение #tensorflow #глубокое обучение

Вопрос:

В течение нескольких дней я следую инструкциям здесь: https: //github.com/tensorflow/models/tree/master/inception для точной настройки начальной модели. Проблема в том, что мой набор данных огромен, поэтому преобразование его в формат TFRecords займет все мое пространство на жестком диске. Есть ли способ точной настройки без использования этого формата? Спасибо!

Комментарии:

1. Я обнаружил, что единственное, что мне нужно, это изображения и метки, которые я могу использовать без формата TFRecords, но у меня нет мощного графического процессора для запуска кода, поэтому я не знаю, правильно ли это. Каждое мнение будет оценено.

2. привет, @chrisrn ссылка на github не работает

Ответ №1:

Точная настройка не зависит от формата данных; с этим все в порядке. TFRecords повышает скорость обучения и подсчета очков; это не должно влиять ни на количество необходимых итераций или эпох, ни на конечную точность классификации.

Комментарии:

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

2. Я не могу понять, как пакет меняется на каждой итерации во время обучения. Единственное, что я получаю, это то, что искажения реализуются в одном пакете. Вы можете помочь? Спасибо.

3. Процедуры приема данных меняют пакеты (выбирают разные входные файлы) на каждой итерации. Это часть того, что фреймворк делает для вас. У вас есть некоторый контроль над вращением: либо в исходном порядке спецификации, либо в случайном порядке. Независимо от того, каждое изображение включается один раз за эпоху. Это то, о чем вы спрашиваете?

4. Да, но я не могу точно понять изменение пакета. Я вижу это в файле image_processing.py происходит случайная перетасовка. Реализовано ли это из batchnorm_updates? В любом случае, я не работаю с TFR, поэтому я определил изображения и метки как заполнители и создал функцию для получения случайных пакетов на каждой итерации, поэтому я думаю, что этот метод работает.

5. Я еще не знаком с внутренними компонентами TF, поэтому я не знаю обычных имен. Я ожидаю, что вращение происходит во входном потоке, а не там, где мы обновляем пакетную нормализацию. В любом случае, если точность тестирования для вас улучшается, я ожидаю, что у вас все в порядке с набором изображений «original flavor». Это просто будет медленнее, чем версия TFR.

Ответ №2:

Вы можете обучить любую модель без преобразования ваших данных в tfrecords. Здесь есть отличная идея, которая настраивает VGG путем чтения непосредственно из файлов jpg. Вы можете изменить архитектуру slim на начальную, и все должно быть в порядке!

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

Я не испытал какой-либо огромной разницы в скорости кода по сравнению с тем, который использует tfrecords.