Gostaria de propor um tipo diferente de desafio de golfe a esta comunidade:
As redes neurais (artificiais) são modelos de aprendizado de máquina muito populares que podem ser projetados e treinados para aproximar qualquer função (geralmente desconhecida). Eles costumam ser usados para resolver problemas altamente complexos que não sabemos como resolver algoritmicamente, como reconhecimento de fala, certos tipos de classificações de imagens, várias tarefas em sistemas de direção autônomos ... Para uma cartilha em redes neurais, considere isso excelente Artigo da Wikipedia .
Como este é o primeiro do que espero ser uma série de desafios de golfe de aprendizado de máquina, gostaria de manter as coisas o mais simples possível:
Na linguagem e estrutura de sua escolha, design e treinar uma rede neural que, dado calcula seu produto para todos os inteiros entre (e incluindo) e .
Objetivo de desempenho
Para se qualificar, seu modelo não pode se desviar em mais de do resultado correto em qualquer uma dessas entradas.
Regras
Seu modelo
- deve ser uma rede neural 'tradicional' (o valor de um nó é calculado como uma combinação linear ponderada de alguns dos nós de uma camada anterior seguida por uma função de ativação),
- só pode usar as seguintes funções de ativação padrão:
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- ,
- deve tomar como um tupel / vetor / lista / ... de números inteiros ou flutuar como sua única entrada,
- retorne a resposta como um número inteiro, float (ou um contêiner adequado, por exemplo, um vetor ou lista, que contenha essa resposta).
Sua resposta deve incluir (ou vincular a) todo o código necessário para verificar seus resultados - incluindo os pesos treinados do seu modelo.
Pontuação
A rede neural com o menor número de pesos (incluindo pesos de viés) vence.
Desfrutar!
f(x) = x
para encaminhar sua entrada?