Можно ли использовать Keras для оптимизации коэффициентов математической функции? - PullRequest
0 голосов
/ 24 мая 2019

Я очень плохо знаком с Keras нейронная сеть в целом.
, и мне было интересно, если бы у меня был список точек (x,y), полученный из квадратичной функция, которая выглядит так (ax^2+bx+c) возможно ли

  • для подачи точек в нейронную сеть и
  • получить коэффициенты a,b and c в качестве выхода из сети?

    Я знаю, что могу просто использовать полиномиальную регрессию для достижения своей цели. это не главное.

1 Ответ

2 голосов
/ 24 мая 2019

Если вы спрашиваете, как сделать полиномиальную регрессию с использованием нейронных сетей, вот рецепт.

Ваш набор данных состоит из точек (x, y). Проектируйте вашу сеть как полностью подключенную сеть (плотная сеть) с 1 входным слоем и 1 выходным слоем. Входной слой состоит из 2 узлов, выходной слой состоит из 1 узла. Затем введите в свою сеть входные данные x и x^2. Выход будет рассчитан как:

y = w * X + c

где w - матрица обучаемых параметров. В частности, он имеет форму 1x2, поскольку содержит параметры a и b. c - это предвзятость. Матрица ввода X имеет форму 2xN, где N - количество точек в вашем наборе данных, и для каждой точки первый компонент равен x^2, а второй - x.

В качестве функции потерь используйте стандартную среднеквадратичную ошибку. Что касается оптимизатора, простой Stochastic Gradient Descent должен работать просто отлично. При сходимости w и c будут достаточно хороши для аппроксимации истинной квадратичной функции.


Я не знаю, keras, но я думаю, что будет непросто выяснить, как реализовать эту наивную сеть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...