Приветик!
Случайно залез на этот форум и увидел обсуждение создания нейронной сети в железе
.
Лет так 6 назад я занимался нейросетями. Мой проект был программного обеспечения и делал небольшую задачу в виде распознавания образов.
В отношении сколько связей должно быть тут большой вопрос. В моей задаче строилось случайным образом несколько десятков вариантов сетевых структур, потом делалась попытка каждую из них обучить, после чего выбирались лучшие, после чего они объединялись спец. образом и создавались из лучших новые сети и т.д.. Т.е. была создана попытка поиска оптимальной сети.
Так что задача поиска оптимальной сети, которая будет хорошо обучаться довольно сложная задача.
К сожалению реализации в железе не делал, хотя желание было, но как -то руки не доходят. Плюсы реализации в железе заключаются в том что процессы происходят параллельно, в отличае от программ на компе, так что тут чуточку все будет по другому.
Не критикуйте сильно, пишу то чем занимался 6 лет назад.
И так имеется узел, который должен реализовать скажем функцию гиперболы, думаю для микроконтроллера забить формулу не проблема.
Имеем несколько входов на которые подается сигнал в аналоговом виде, для каждого входа есть коэффициент. Подставляем с входов сигналы с коэффициентами в формулу, получаем уровень сигнала, который идет на другие узлы.
Наша задача это подбор коэффициентов, это и будет обучение.
теперь по поводу связей, можно для начала определится так есть входные датчики, которые воспринимают сигнал. Скажем если взять их 16х16 - 256 штук, и чтобы сильно не мучаться 4 - 6 радов по 10 узлов в каждом, причем каждый ряд соединяется с предыдущим. Т.е. каждый узел следующего ряда соединен со всеми узлами предыдущего ряда.
И так в конце концов на выходе у нас получается 10 узлов, не помню уже как реализовал я выбор нужных образов, но в и тоге получается что на каждом оконечном узле присутсвует свой уровень сигнала.
Чуть позже найду свои записи