Идея разделения тренировочных и тестовых данных распространена
среди специалистов по машинному обучению.
Присмотримся к этим файлам. Ниже показана часть тестового на
бора MNIST, загруженного в текстовый редактор.
Ого! Создается впечатление, будто здесь что-то не так. Напоминает
кадры из кинофильмов 1980-х годов, содержащих сцены взлома
компьютерных систем хакерами.
На самом деле все хорошо. В окне текстового редактора отобража
ются длинные строки текста, которые содержат числа, разделенные
запятыми. Это легко можно увидеть. Текстовые строки такие длин
ные, потому что каждая из них занимает несколько строк на экране.
Очень удобно то, что текстовый редактор отображает на полях реаль
ные номера строк, и мы видим четыре целые строки и часть пятой.
Содержимое этих записей, т.е.
строк текста, легко понять.
• Первое значение — это
маркер, т.е. фактическая цифра, напри
мер “ 7” или “ 9” , которую должен представлять данный руко
писный экземпляр. Это ответ, правильному получению которо
го должна обучиться нейронная сеть.
•
Последующие значения, разделенные запятыми, — это значе
ния пикселей рукописной цифры. Пиксельный массив имеет
размерность 28x28, поэтому за каждым маркером следуют 784
пикселя.
Если у вас есть такое желание, можете пересчитать!
178
Глава 2. Создаем нейронную сеть на Python
Таким образом, первая запись представляет цифру “ 5” , о чем го
ворит первое значение, тогда как остальная часть текста в этой стро
ке — это пиксельные значения написанной кем-то от руки цифры
“5” . Вторая строка представляет рукописную цифру “ 0” , третья —
цифру “ 4” , четвертая — цифру “ 1” и пятая — цифру “ 9” .
Можете
выбрать любую строку из файлов данных MNIST, и ее первое число
укажет вам маркер для последующих данных изображения.
Однако увидеть, каким образом длинный список из 784
значений
формирует изображение рукописной цифры “ 5” , не так-то просто. Мы
должны вывести в графическом виде эти цифры и убедиться в том, что
они действительно представляют цвета пикселей рукописной цифры.
Прежде чем углубиться в рассмотрение деталей и приступить к на
писанию кода, загрузим небольшое подмножество набора данных,
содержащихся в базе MNIST. Файлы
данных MNIST имеют очень
большой размер, тогда как работать с небольшими наборами значи
тельно удобнее, поскольку это позволит нам экспериментировать,
разрабатывать и испытывать свой код,
что было бы затруднительно
в случае длительных расчетов из-за большого объема обрабатывае
мых данных. Когда бы отработаем алгоритм и будем удовлетворены
созданным кодом, можно будет вернуться к полному набору данных.
Ниже приведены ссылки на меньшие наборы MNIST, также под
готовленные в формате CSV.
• 10 записей из тестового набора данных MNIST:
https://raw.githubusercontent.com/makeyourownneuralnetwork/
makeyourownneuralnetwork/master/mnist_dataset/mnist_test_10.csv
•
• 100 записей из тренировочного набора данных MNIST:
h t t p s :/ / r a w .gi th ub us er co nte nt.com/makeyourownneuralnetwork/
makeyourownneuralnetwork/master/mnist_dataset/mnist_train_l00.csv
Если ваш браузер отображает данные вместо того, чтобы загрузить
их автоматически,
можете сохранить файл, выполнив команду меню
ФайлоСохранить
как или эквивалентную ей.
Сохраните файл в локальной папке, выбрав ее по своему усмотре
нию. Я
храню свои данные в папке
Do'stlaringiz bilan baham: