70 likes | 291 Views
Нейронные сети . Классификатор. Рисунок 1. Математическая модель нейрона. Основные понятия. X –Входы, группа синапсов W- Вес синаптической связи S - Текущее состояние нейрона, определяется взвешенная сумма его входов Y- Выход нейрона, определяется функцией активации F(S).
E N D
Рисунок 1. Математическая модель нейрона Основные понятия X –Входы, группа синапсов W-Вес синаптической связи S-Текущее состояние нейрона, определяется взвешенная сумма его входов Y-Выход нейрона, определяется функцией активации F(S) Рисунок 2. Функция активации
Постановка Задачи На базе программно-аппаратного комплекса OpenTS-СКИФпостроить нейронную сеть – классификатор. Сеть распознает представленные ей образы, например графические файлы с изображением цифр. 1 2 3
Рисунок 3. Однослойный персептрон Реализация Гранула параллелизма Гранула параллелизма группа из Np нейронов Np=N/Nproc, где N-общее количество нейронов Nproc – количество процессоров в системе
Проблемы реализации и их решение • Проблемы: • Большой объем передачи данных • Малая вычислительная сложность гранул параллелизма • Решение: • 1.1. Первоначальная загрузка весовых коэффициентов • 1.2. Выбор размерности типа данных изображения • 2.1. Выделение гранул параллелизма с большим количеством нейронов • 2.2. Выбор функции активации (если требуется)
Результаты Вычислительная сложность: jMax –количество аксонов (входов) jMax –количество нейронов (выходов) Ncpu –количество процессоров N –количество нейронов в грануле параллелизма Последовательный вариант: Количество вычислительных операций: сложение iMax*jMax умножение iMax*jMax функция активации iMax*jMax время выполнение операции:V Итого: 3*V* iMax*jMax Параллельный вариант: Количество вычислительных операций: сложение iMax*N умножение iMax*N функция активации iMax*N время выполнение операции:V Количество операций пересылки данных: iMax+N+iMax*N время выполнение операции:10V Итого: 3*V*iMax*N+10V(iMax+N+iMax*N)
Результаты Расчетная вычислительная сложность: jMax –количество аксонов (входов) 100 jMax –количество нейронов (выходов) 1000 Ncpu –количество процессоров 10 Последовательный вариант: Время выполнения 400 000 тактов Параллельный вариант: Время выполнения с загрузкой весовых коэфицентов 95 000 Увеличение скорости в 4.21 Время выполнения без загрузки весовых коэфицентов 1250 Увеличение скорости в 8