| Autor |
Mensagem |
|
|
Olá Julio
Este é um erro constante (inclusive na literatura) e que aos poucos vem sendo modificado. Para lhe ajudar a entender o meu raciocínio, responda a seguinte pergunta:
Qual o objetivo do treinamento em uma rede do tipo MLP ?
Com a resposta da pergunta acima, você vai ver que não existe algoritmo de "backpropagation" e sim de otimização.
|
 |
|
|
juliocbq wrote:
mauro_schneider wrote:Olá
Para predição veja sobre atraso de tempo nas entradas. Para obter um dado de hoje, se faz necessário as entradas serem t-1, t-2, ..., t-n
E Backpropagation não é algoritmo é método.
Ow mauro.... só uma correção, o método se refere a metodologia de como fazer, ou seja um algoritmo.
http://en.wikipedia.org/wiki/Backpropagation
Julio
Algoritmos são o QuickProp, LM, PLL, Cascor, etc, onde todos eles usam o método de Backpropagation
|
 |
|
|
Olá
Para predição veja sobre atraso de tempo nas entradas. Para obter um dado de hoje, se faz necessário as entradas serem t-1, t-2, ..., t-n
E Backpropagation não é algoritmo é método.
|
 |
|
|
Previsões
Caso queira fazer predição, como configurou as entradas ?
|
 |
|
|
Olá gpmdf2
gpmdf2 wrote:
Aproveitando op que vc disse... Você já usou o Joone? Qual a classe que eu devo escrever pra implementar um novo método de aprendizado? Você tem algum exemplo? Estou ainda pesquisando alguns outros frameworks, como o neuroph e o encog.
Só fiz alguns testes com o Joone, nada relevante. Mas parece que agora o Encog (antigo JOONE) tem o algoritmo de LM (Levenberg?Marquardt algorithm) o qual é bastante eficiente para treinamento de uma MLP.
gpmdf2 wrote:
VocÊ indica algum deles? tem algum exemplo? O próximo passo para mim seria exatamente mudar o algoritmo de aprendizado. A função em todas as camadas que estou usando é a sigmóide (SigmoydLayer do Joone).
Use a tangente hiperbólica (-1,+1).
gpmdf2 wrote:
Como vocÊ desenvolveu essa sua rede? Que framework usou? Como escreveu o algoritmo de aprendizagem? Essas são as dúvidas que tão me deixando preocupado.
Eu tenhos redes escritas em Java e em Matlab. O interessante de você mesmo implementar, é o conhecimento adquirido, além das otimizações específicas para cada tipo de problema. No entanto, um conhecimento de cálculo se faz necessário, principalmente se adotar métodos de segunda ordem, por isto que acabei indo para o matlab.
|
 |
|
|
Olá gpmdf2
Lembrando que RNA do tipo MLP não são lineares (ao menos que você coloque uma função degrau na saída) e resultados como este é "bem" normal de acontecer. Neste caso, deve-se aplicar um arredondamento do valor da saída, para obter os valores 0 ou 1, conforme as entradas do XOR.
Em relação ao valor 0.0468468468464645.. obtido com o JOONE, demonstra que o algoritmo de treinamento adotado por ele não é dos melhores, codifique você mesmo métodos de segunda ordem (newton) adaptado. Para você ter uma ideia, com o algoritmo de LM, meu treinamento do XOR se obtem valores muito próximo de zero (0,00000000151....)
|
 |
|
|
gpmdf2 wrote:claro.
o que eu quis dizer é que há alguns algoritmos (por exemplo, pra aprendizado) que são clássicos. Alguns mais novos visam o aprendizado de forma mais rápida (por exemplo).
É isso que tô procurando.
Veja a tese de Mestrado do Leandro Nunes em http://www.dca.fee.unicamp.br/~vonzuben/research/lnunes_mest.html
|
 |
|
|
juliocbq wrote:
Sim, mas codificando você fica por dentro de tudo que acontece no software, sem contar o conhecimento mque se ganha.
Além disto, os melhores algoritmos de aprendizado não estão inclusos nestes frameworks, desta forma, eles podem facilitar sim, mas para o aprendizado e na utilização de problemas simples.
|
 |
|
|
Andre Brito wrote:Eu usei o Joone e não gostei. Nunca botei fé nos resultados que ele me retornava..
Estranho, fiz vários testes com o Joone, e não vi nada de anormal nele. Quais foram os testes que você fez com ele ?
|
 |
|
|
|
No Grails esqueça o IceFaces, utilize só os componentes dele + Jquery + JSON, e seja Feliz.
|
 |
|
|
|
Veja o JAI - Java Advanced Imaging
|
 |
|
|
As dificuldades maiores são em treinar a Rede, para implementar, existem infinitos algoritmos e até mesmo códigos prontos em Java na Internet.
Se você quiser sentir um pouco como funciona, procure pelo JOONE na internet
|
 |
|
|
|
Acho que este Link Java ME Location API vai lhe ajudar a coletar as coordenas, e para jogar no Banco de Dados, faça uma conexão via Http no seu Servidor de Aplicação.
|
 |
|
|
|
Aqui tem um com Spring, que ajuda bastante
|
 |
|
|
|
Veja este aqui
|
 |
|
|