Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
Sh@dow777
16 / 16 / 6
Регистрация: 10.12.2013
Сообщений: 709
#1

Нейронные сети(персептрон)

28.11.2016, 05:48. Просмотров 1217. Ответов 4
Метки нет (Все метки)

Привет всем.

Недавно начал изучать нейронные сети. Понравилось, очень интересно. Хочу реализовать для начала однослойный персептрон. Потом дальше пойду.

Но, к сожалению, не все понятно. В частности, меня интересуют 2 вопроса.

1. Если я хочу создать нейросеть для распознавания цифр от 0 до 9, и буду подавать на вход одно изображение, мне будет достаточно одного нейрона? Если да, то в каких случаях создаются сети с бОльшим количеством нейронов? Тогда, когда на вход подаются несколько изображений сразу?

2. Если на вход подается черно-белое изображение, то с входным вектором данных все понятно - матрица цветов пикселей изображения. Если цвет пикселя черный, то соответствующий элемент матрицы равен 1. Если белый, то 0. А как формируется матрица входных данных, если изображение цветное?

Заранее спасибо за ответы.

Добавлено через 21 час 40 минут
Так что, может ли кто-то ответить мне на вопросы?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2016, 05:48
Ответы с готовыми решениями:

Нейронные сети (адаптивные сети)
нужен исходник 3д или 2д адаптивной сетки для небольшого использования в своей...

Нейронные сети
Недавно открыл для себя тему нейросетей, и хотел бы спросить ресурс где бы я...

Нейронные сети
Добрый вечер, товарищи. Прошу у вас помощи по нейронным сетям. Есть...

Нейронные сети
Добрый вечер! Можете подсказать где есть много примеров по нейронным сетям...?...

Книги по С++ и нейронные сети
Уважаемые форумчане, может кто посоветовать книги (или статьи в интернете) по...

4
VTsaregorodtsev
517 / 445 / 67
Регистрация: 19.02.2010
Сообщений: 1,715
30.11.2016, 23:22 #2
А каким боком заданные вопросы относятся к С++?
0
Sh@dow777
16 / 16 / 6
Регистрация: 10.12.2013
Сообщений: 709
01.12.2016, 01:56  [ТС] #3
VTsaregorodtsev, Я просто не нашел подходящего раздела.

Добавлено через 15 минут
Да я уже вроде разобрался, что если я собираюсь распознавать числа от 0 до 9, но подавать только одно изображение на вход, то будет 10 нейронов(а не один, как я думал) и один входной вектор данных.
0
Renji
2102 / 1543 / 470
Регистрация: 05.06.2014
Сообщений: 4,466
01.12.2016, 02:19 #4
Цитата Сообщение от Sh@dow777 Посмотреть сообщение
2. Если на вход подается черно-белое изображение, то с входным вектором данных все понятно - матрица цветов пикселей изображения. Если цвет пикселя черный, то соответствующий элемент матрицы равен 1. Если белый, то 0. А как формируется матрица входных данных, если изображение цветное?
Берете RGB цвет, раскладываете на R, G и B, далее как при чернобелом изображении. Впрочем, есть более простой выход - перегнать все в монохром и не мучиться.
0
darkAngel
Технофашист
218 / 201 / 11
Регистрация: 11.03.2009
Сообщений: 883
16.12.2016, 18:47 #5
Цитата Сообщение от Sh@dow777 Посмотреть сообщение
1. Если я хочу создать нейросеть для распознавания цифр от 0 до 9, и буду подавать на вход одно изображение, мне будет достаточно одного нейрона?
Одного нейрона хватит максимум на аппроксимацию простейших функций (типа сложения, умножения).
Воспринимайте нейросеть не как магический черный ящик, а как универсальный аппроксиматор - чем больше его размер, тем более сложную функцию можно построить.
Вообще в теории нет ответа сколько нейронов использовать в определенной задачи. Здесь есть только эвристики и метод научного тыка. Понимание приходит лишь с опытом. В частности, в задаче распознавания изображения (например, 25 на 25 пикселей с бинарным состоянием) может начать эксперименты от 10 нейронов в скрытом слое и где-то максимум 100, больше для этой задачи не требуется (не забываем, что помимо скрытых слоев есть еще входной и выходной слой (да, для цифр выходной слой будет состоять из 10 нейронов - по одному на цифру)).

Цитата Сообщение от Sh@dow777 Посмотреть сообщение
Тогда, когда на вход подаются несколько изображений сразу?
Ха ха, в сиамских сетях, триплетах, или когда размер батча больше 1 Но а если серьезно, то кажется вы не уловили суть. Изображения из обучающей выборки подаются на вход по очереди . Подали одну картинку, прогнали forward и backward (прямой и обратный проход), обновили веса и подаем следующее изображение.

Цитата Сообщение от Sh@dow777 Посмотреть сообщение
А как формируется матрица входных данных, если изображение цветное?
В случае цветных изображений, входной слой будет иметь у вас 3 канала (т.е. это будет трехмерная матрица, которая имеет высоту, ширину и глубину (для rgb картинок глубина будет соответственно равна 3 - числу каналов rgb).
1
16.12.2016, 18:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2016, 18:47

Как создать нейронные сети?
Всем привет! Меня зовут Айзада. Учусь на инженера-программиста. Сейчас пишу...

Нейронные сети и распознавание картинок
Недавно увлекся нейронными сетями, очень интересно стало. Написал их уже...

Нейронные сети обратного распространения
Здравствуйте. Пытаюсь обучить сеть таблице умножения. Обучает до 1*3, а дальше...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru