Ir ao conteúdo
  • Cadastre-se

C Processamento de uma camada de uma rede neural


Nicolas Carmo

Posts recomendados

Boa tarde, não consigo finalizar este codigo em C, me enrolei na parte que deve ler os dados da imput e da hw1 e multiplicalos, depois somar com 1 dos valores de z e armazenar nele mesmo. Não saio dessa parte a um tempo. Resumidamente, tenho que projetar um processador que implemente o processamento de uma camada de uma rede neural.

 

#include <stdio.h>

#define INPUT_SIZE 5

#define HIDDEN1_SIZE 4

int main() {

// Armazenar na memória input

char input[] = {1,2,3,2,1};

// Cada linha da matriz é tratada como um array.

// As linhas são armazenas de maneira contígua na memória weights.

char hw1[HIDDEN1_SIZE][INPUT_SIZE] = {

{2,2,2,2,2},

{-1,-1,-1,1,1},

{2,-2,2,2,-2},

{-1,-1,-1,1,1}

};

char z[] = {0, 0, 0, 0}; // Implementar como 4 registradores

char i, j;

// Hidden Layer 1

for (j = 0; j < HIDDEN1_SIZE; j++)

for (i = 0; i < INPUT_SIZE; i++)

z[j] = z[j] + input[i] * hw1[j][i];

 

 

 

 

 

 

 

printf("Hidden Layer 1\n");

for (i = 0; i < HIDDEN1_SIZE; i++)

printf("\tz[%d]: %d (0x%X)\n", i, z[i], z[i] & 0xFF);

printf("\n");

}

 

  • Amei 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...