Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fabiosmuu/rna
Este repositório tem como intuito, demonstrar um modulo de redes neurais que venho desenvolvendo.
https://github.com/fabiosmuu/rna
algorithms data-science ia inteligencia-artificial redes-neurais-artificiais rna
Last synced: about 15 hours ago
JSON representation
Este repositório tem como intuito, demonstrar um modulo de redes neurais que venho desenvolvendo.
- Host: GitHub
- URL: https://github.com/fabiosmuu/rna
- Owner: FabioSmuu
- Created: 2021-08-06T17:46:59.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-12-17T18:42:51.000Z (almost 2 years ago)
- Last Synced: 2023-09-30T05:16:32.321Z (about 1 year ago)
- Topics: algorithms, data-science, ia, inteligencia-artificial, redes-neurais-artificiais, rna
- Language: JavaScript
- Homepage:
- Size: 75.2 KB
- Stars: 11
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Repositório de um Modulo RNA(Rede neural artificial) com algorítimo genético.
**NOTA**: Vou tirar um tempo para refatorar e deixar este repositório bonito ainda (apenas o ignore)
> Este modulo se trata de uma "forma prática" de criar uma RNA de forma simples e rápida usando javascript puro.
> Ainda não possui uma estrutura ou conversão de dataset usados em frameworks famoso, mas pretendo desenvolver.> Evitei class apenas por ser uma syntax sugar da qual não vejo necessidade de uso.
Este modulo foi desenvolvido para um [teste de AM(Aprendizado de máquina) na game engine Construct](https://www.facebook.com/watch/?v=889808384919613).
Aqueles que preferirem, agora este modulo possui uma [index_classVersion](/RNA/index_classVersion.js).
#### Funções para a criação da Rede:
- [RNA.entradas(\)](/RNA/index.js#L45) ~ Cria um objeto representando um neurônio.
- [RNA.neuronios(\, \)](/RNA/index.js#L79) ~ Cria uma camada de neurônios de mesma entrada.
- [RNA.setPesos(\, \)](/RNA/index.js#L84) ~ Rescreve os pesos da cama especifica.
- [RNA.saidas(\, \, \)](/RNA/index.js#L80) ~ Retorna uma quantia de saídas de acordo com os neurônios de entradas.
- [RNA.genConcat(\)](/RNA/index.js#L87) ~ Concatena os pesos para gerar o genoma.
- [RNA.splitGen(\, \, \)](/RNA/index.js#L93) ~ Separa os gens do genoma conforme as informações dadas.#### Funções para a manipulação de genoma:
- [RNA.crossover(\, \, \)](/RNA/index.js#L74) ~ Junta dois genomas resultando em genomas semelhantes.
- [RNA.mutar(\, \)](/RNA/index.js#L65) ~ Altera uma quantia desejada de pesos em um genoma.
- [RNA.Softmax(\)](/RNA/index.js#L40) ~ Faz o tratamento do genoma para "treinar a rede".#### Objeto neuronio:
- [Vies](/RNA/index.js#L49) ~ Valor equivalente a bias.
- [Pesos](/RNA/index.js#L53) ~ \.
- [Saida](/RNA/index.js#L57) ~ \.---
Funções de ativação concluidas:
> Neste projeto só possui funções de ativação sem suas derivaras.
- [RNA.fn.ArcTan](/RNA/index.js#L2)
- [RNA.fn.BentIdentity](/RNA/index.js#L3)
- [RNA.fn.BinaryStep](/RNA/index.js#L4)
- [RNA.fn.Gaussian](/RNA/index.js#L5)
- [RNA.fn.Identity](/RNA/index.js#L6)
- [RNA.fn.LeakyReLU](/RNA/index.js#L7)
- [RNA.fn.ReLU](/RNA/index.js#L8)
- [RNA.fn.SELU](/RNA/index.js#L9)
- [RNA.fn.Sigmoid](/RNA/index.js#L10)
- [RNA.fn.SigmoidRcional](/RNA/index.js#L11)
- [RNA.fn.SiLU](/RNA/index.js#L12)
- [RNA.fn.Sinc](/RNA/index.js#L13)
- [RNA.fn.Sinusoid](/RNA/index.js#L14)
- [RNA.fn.SoftSign](/RNA/index.js#L15)
- [RNA.fn.SoftPlus](/RNA/index.js#L16)
- [RNA.fn.TanH](/RNA/index.js#L17)
- [RNA.fn.PReLU](/RNA/index.js#L18)
- [RNA.fn.ELU](/RNA/index.js#L19)
- [RNA.fn.Pipe](/RNA/index.js#L20)---
### Exemplos práticos:
- [Exemplo 1](/exemplo-1.js) ~ Rede sem o uso de agrupamentos internos.
- [Exemplo 2](/exemplo-2.js) ~ Demonstração das funções de agrupamento.##### Obrigado pela atenção!