4

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

То есть когда сеть уже создана и обучена и веса известны. Возможно ли каким-либо образом упростить вычисления, определив зависимости, привести все это к уравнениям зависимостей?

Nicolas Chabanovsky
  • 51,426
  • 87
  • 267
  • 507
slava_evm
  • 760
  • А зачем вам вообще нейронная сеть если вам нужны уравнения описывающие поведение объекта? Учебник физики в помощь – igumnov Aug 08 '12 at 18:50
  • Пожалуй, все зависит от структуры и сложности нейронной сети. Для примитивной НС вполне реально. – jmu Aug 08 '12 at 15:33

3 Answers3

1

Спрограммированная нейронная сеть состоит из нейронов, которые есть математическими моделями реальных нейронов, поэтому математически описать всю нейронную сеть теоретически возможно. Теоретически решение должно быть.

Но на практике, такое трудно достижимо. Полученное уравнение будет содержать трехэтажные дроби, корни и степени.

gil9red
  • 77,085
MuFF
  • 905
  • ну и что? после можно упростить. – slava_evm Aug 08 '12 at 08:00
  • @Вячеслав1101, вот @MuFF вам все верно говорит. Упростить то, что может получиться на выходе вам скорее всего не удастся, так как это будут не типичные дроби, известные вам.

    Даже в FaceBook, помню, пытались реализовать что-то подобное( определение пользователей на фотографиях и их отметка ), но у них это не вышло...Google Talk сумели это реализовать но ооочень коряво...зато есть куда развиваться. Не думаю, что вам это удастся, раз у "монстров" не вышло.

    – Salivan Aug 08 '12 at 08:38
  • не факт. деньги пусть и подспорье, но еще не главное! – slava_evm Aug 08 '12 at 14:53
0

выход_сети_вектор_чисел_или_1_число=F1(F2(F3(тренировочные_данные_просто_вектор_чисел,[правильные_ответы_от_учителя_вектор]))),где F1 F2 F3 - содержат специальные матрицы,которые подправляют чтобы они приближались к "правильные_ответы_от_учителя_вектор",это так называемые веса-после их записи в файл,считается сеть обучилась.

0
xy  z(0-15)
00  0101010101010101
01  0011001100110011
10  0000111100001111
11  0000000011111111

вот вам простая нейронная сеть с входом на 2 бита и выводом в 16 бит, у неё 16 разных функций логического вывода! то есть, чем больше ширина на входе, тем больше вариантов на выводе. как правило мы используем не всё, например, только И-НЕ, и это нас спасает.

упрощение возможно, в конце концов это всего лишь соответствие "вход-вывод", но следует перебрать все входные варианты и для "больших данных" - это задача, сопоставимая с тренировкой сети.

хотя нет, у вас уже есть настроенная сеть. так вот, надо начать тренировать новую сеть на основании выводов настроенной сети. и эта НОВАЯ сеть вполне может быть оптимизирована. а вы поймёте принципы построения и оптимизации.

nexoma
  • 535