O neurônio como fundamentação no aprendizado de inteligência artificial
Este seria o primeiro passo.
Sem uma compreensão grande do conceito de neurônio artificial, todo o restante do domínio de redes neurais fica difícil de entender.
E mesmo que acaso se estude e ache que entendeu, falta a fundamentação, falta a base para discutir.
E essa fundamentação precisa de uma construção. Apenas leitura e uso de código de frameworks não vai fornecer essa compreensão fundamentada.
A compreensão então pede a construção.
Bom, vamos então ao neurônio. De forma muito simples.
O neurônio seria a unidade básica para se compor redes neurais.
Ele recebe entradas e fornece uma resposta.
As entradas vai depender do conjunto de dados que você está trabalhando.
Consideremos um exemplo simples, um exemplo x que possui duas variáveis [2.0, 4.0].
O neurônio precisa receber essas duas entradas e dar uma resposta.
Então temos que a entrada seria 2, duas variáveis e como seria a resposta de um neurônio?
Seria uma somada ponderada com adição do viés. Teoria depois. Apenas foco na concretude.
Em Python, a implementação desse conceito poderia ser do seguinte modo.
class Neuron:
def __init__(self, n_in):
self.w = [random.uniform(-1, 1) for _ in range(n_in)]
self.b = random.uniform(-1, 1)
def __call__(self, x):
return sum(wi * xi for wi, xi in zip(self.w, x), self.b)
Seria isso. Com foco no conceito básico.
O neurônio recebe então como entrada qual o número de variáveis.
O neurônio possui dois termos, w e b.
O w seriam os pesos.
O b seria o bias.
Então o neurônio seria composto por esses parâmetros.
Estamos abstraindo alguns aspectos como a diferenciação automática para o treino e a função de ativação.
Primeiro seria importante entender esse mecanismo simples na definição do neurônio como uma soma ponderada com adição de viés.
O uso do neurônio então seria simples.
x = [2.0, 4.0]
n = Neuron(2)
n(x)
Definimos o x. Depois instanciamos o neurônio para receber duas entradas. Por fim, usamos o neurônio passando o dado em si, o x, e ele responde com um número.
Esse seria o mecanismo básico.
Todas as redes modernas existem a partir desse conceito simples.