Я хотел бы предложить другой вид игры в гольф для этого сообщества:
(Искусственные) нейронные сети являются очень популярными моделями машинного обучения, которые могут быть разработаны и обучены для приближения к любой заданной (обычно неизвестной) функции. Они часто используются для решения очень сложных задач, которые мы не знаем, как решать алгоритмически, такие как распознавание речи, определенные виды классификации изображений, различные задачи в автономных системах вождения, ... Для начинающих в нейронных сетях посчитайте это превосходным Статья в Википедии .
Поскольку это первая из серии задач по гольф-обучению в области машинного обучения, я хотел бы сделать все как можно проще:
На языке и структуре по вашему выбору спроектируйте и обучите нейронную сеть, которая с учетом вычисляет их произведение для всех целых чисел между (и включая) и .
Цель производительности
Чтобы соответствовать требованиям, ваша модель не может отклоняться более чем на от правильного результата по любой из этих записей.
правила
Ваша модель
- должна быть «традиционной» нейронной сетью (значение узла рассчитывается как взвешенная линейная комбинация некоторых узлов в предыдущем слое с последующей функцией активации),
- разрешается использовать только следующие стандартные функции активации:
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- должен принимать либо целое число / вектор / список / ... целых чисел, либо число с плавающей запятой как единственный вход,
- вернуть ответ в виде целого числа, числа с плавающей запятой (или подходящего контейнера, например, вектора или списка, который содержит этот ответ).
Ваш ответ должен включать (или ссылку на) весь код, необходимый для проверки ваших результатов, в том числе обученные веса вашей модели.
счет
Нейронная сеть с наименьшим количеством весов (включая веса смещения) выигрывает.
Наслаждайтесь!
f(x) = x
пересылку своих входных данных?