1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/fanwenjie-LeNet-5

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

LeNet-5 нейронная сеть

Введение

LeNet-5 — это нейронная сеть, разработанная на основе статьи YANN LECUN «Gradient-based Learning Applied To Document Recognition». Она написана на языке C и не зависит от сторонних библиотек.

Первоначальная точность распознавания рукописных символов MNIST составляет 97%, а после многократного обучения — 98%.

DEMO

Файл main.c представляет собой демонстрацию распознавания данных из набора MNIST. Для запуска достаточно скомпилировать программу. В тренировочном наборе 60 000 изображений, в тестовом — 10 000.

Среда проекта

Проект представляет собой проект VISUAL STUDIO 2015. Его можно открыть и скомпилировать с помощью VISUAL STUDIO 2015 UPDATE1 или более поздней версии. Программа написана на ANSI C, поэтому её можно компилировать на других платформах без изменений в исходном коде.

Если программа не компилируется из-за отсутствия openmp, удалите строки #include <omp.h> и #pragma omp parallel for из файла lenet.c.

API

Пакетное обучение

lenet: указатель на веса LeNet5, ядро нейронной сети LeNet5. inputs: массив указателей на двумерные массивы unsigned char, соответствующие нескольким изображениям для обучения. Размер памяти, на которую указывают эти указатели, должен быть кратен batchSize. В примере с MNIST размер каждого двумерного массива равен 28x28, а значения элементов представляют собой интенсивность пикселей изображения в соответствующей позиции. labels: массив меток, соответствующих изображениям из inputs. Размер массива равен batchSize. batchSize: количество изображений в пакете для обучения. void TrainBatch(LeNet5 *lenet, image *inputs, uint8 *labels, int batchSize);

Индивидуальное обучение

lenet: указатель на веса LeNet5, ядро нейронной сети LeNet5. input: изображение для обучения, представленное в виде двумерного массива. label: метка, соответствующая изображению input. void Train(LeNet5 *lenet, image input, uint8 label);

Прогнозирование

lenet: указатель на веса LeNet5, ядро нейронной сети LeNet5. input: данные входного изображения. count: количество элементов в векторе результатов. возвращаемое значение: результат прогнозирования. uint8 Predict(LeNet5 *lenet, image input, uint8 count);

Инициализация

lenet: указатель на веса LeNet5, ядро нейронной сети LeNet5. void Initial(LeNet5 *lenet);

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Расширить Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://gitlife.ru/oschina-mirror/fanwenjie-LeNet-5.git
git@gitlife.ru:oschina-mirror/fanwenjie-LeNet-5.git
oschina-mirror
fanwenjie-LeNet-5
fanwenjie-LeNet-5
master