но какой тип данных и вид записи должен быть у этого файла
Нужно записать/загрузить только значения весов между нейронами - результат обучения.
Ну и сам код твоей программы содержит все глобальные параметры сети: как располагаются и ведут себя нейроны, сколько их и тп.
А как потом обращаться к этим результатам(не пробегом же по всему файлу каждый раз, если там больше 3000 строк)
Все весы и другие параметры должны находиться в оперативке, и читаться и перезаписываться каждую итерацию обучения.
Вот, например, репликация обученной
Alexnet (прорывная модель сети из 2012),
https://github.com/BVLC/caffe/tree/master/models/b...
233мб.
В Alexnet 62 миллиона параметров, 650 тыс нейронов, и чтобы ее обучить столько же эпох как в оригинальной статье, нужно потратить 5-6 дней на двух GTX 580 3GB видеокартах (Хотя современный рекорд на более быстром оборудовании и оптимизированном коде - 24 минуты).
И как должна вести себя сеть, если ввелись данные, которых не было при обучении?
Сеть это, грубо говоря, просто функция, которую изменяют алгоритмом обучения на основании определенных данных. Она считает что-то. При каждой итерации обучения получается готовая функция, которая тупо считает из входных данных выходные.