Desafio: Criando um Perceptron
Para construir um perceptron multicamadas (MLP), é útil definir uma classe Perceptron. Ela armazena uma lista de objetos Layer que compõem a rede:
class Perceptron:
def __init__(self, layers):
self.layers = layers
O MLP utilizará três valores:
input_size: número de características de entrada;hidden_size: número de neurônios em cada camada oculta;output_size: número de neurônios na camada de saída.
Assim, o modelo consiste em:
- Uma camada de entrada;
- Duas camadas ocultas (mesma quantidade de neurônios, ReLU);
- Uma camada de saída (sigmoide).
Swipe to start coding
Sua tarefa é implementar a estrutura básica deste MLP.
1. Inicialização dos parâmetros da camada (__init__)
- Criar uma matriz de pesos com formato
(n_neurons, n_inputs); - Criar um vetor de bias com formato
(n_neurons, 1); - Preenchê-los com valores aleatórios em [-1, 1) utilizando
np.random.uniform().
2. Implementação da propagação direta (forward)
- Calcular as saídas brutas dos neurônios:
np.dot(self.weights, self.inputs) + self.biases
- Aplicar a função de ativação atribuída e retornar a saída.
3. Definição das camadas do MLP
- Duas camadas ocultas, cada uma com
hidden_sizeneurônios e ativação ReLU; - Uma camada de saída com
output_sizeneurônios e ativação sigmoid.
Solução
Obrigado pelo seu feedback!
single
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Can you explain how to implement the Layer class for this MLP?
What activation functions should I use for each layer?
How do I connect the layers together in the Perceptron class?
Awesome!
Completion rate improved to 4
Desafio: Criando um Perceptron
Deslize para mostrar o menu
Para construir um perceptron multicamadas (MLP), é útil definir uma classe Perceptron. Ela armazena uma lista de objetos Layer que compõem a rede:
class Perceptron:
def __init__(self, layers):
self.layers = layers
O MLP utilizará três valores:
input_size: número de características de entrada;hidden_size: número de neurônios em cada camada oculta;output_size: número de neurônios na camada de saída.
Assim, o modelo consiste em:
- Uma camada de entrada;
- Duas camadas ocultas (mesma quantidade de neurônios, ReLU);
- Uma camada de saída (sigmoide).
Swipe to start coding
Sua tarefa é implementar a estrutura básica deste MLP.
1. Inicialização dos parâmetros da camada (__init__)
- Criar uma matriz de pesos com formato
(n_neurons, n_inputs); - Criar um vetor de bias com formato
(n_neurons, 1); - Preenchê-los com valores aleatórios em [-1, 1) utilizando
np.random.uniform().
2. Implementação da propagação direta (forward)
- Calcular as saídas brutas dos neurônios:
np.dot(self.weights, self.inputs) + self.biases
- Aplicar a função de ativação atribuída e retornar a saída.
3. Definição das camadas do MLP
- Duas camadas ocultas, cada uma com
hidden_sizeneurônios e ativação ReLU; - Uma camada de saída com
output_sizeneurônios e ativação sigmoid.
Solução
Obrigado pelo seu feedback!
single