Etiqueta de mercado ou boas maneiras em um campo minado - página 36
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Qualquer linha reta pode ser inscrita em tal círculo, em qualquer ângulo em relação à horizontal.
Ora, ora, ora!
Veja, não em nenhum ângulo! - É o ângulo certo...
Agora é o que parece!
Onde está a nuvem de treinamento prometida?
Coloque uma grade de escala no gráfico e me diga qual é sua tangente do ângulo de inclinação para a linha reta.
Estas foram as figuras obtidas da primeira diferença do seno de cinco membros por X e a previsão da grade com pesos aleatórios (ajuste inicial dos pesos +/-1) por Y. O resto ainda está sendo feito, em breve
Ora, ora, ora!
Como você pode ver, não qualquer um! - É o certo...
>> Sim, sim, sim.
Pronto, está feito. Aqui só falta uma amostra de treinamento, pois a amostra de treinamento é o vetor X. Portanto, é claro que você pode traçar no gráfico, mas será uma linha reta que cruzará o gráfico em um ângulo de 45". O neurônio foi treinado por três amostras:
1. Primeira diferença simples 5sin - vetor Y_simpl, cor verde (marta correspondente)
2. Hipertangente da primeira diferença 5sin - azul
3. entradas binárias (por 5sin) - roxo
As tangentes das linhas retas são assim:
E, no entanto, algo está errado. Ou eu não entendo a tarefa que você me deu.
Este neurônio é treinado em cada novo vetor de dados X, o mesmo vetor é usado como o eixo de abcissas do gráfico. Se você o exibir no ordenado...? Por quê?
Além disso, notei que se a folha de trabalho com os mesmos dados recalcular os resultados serão diferentes. É suposto ser assim? Ou seja, os resultados são muito dependentes dos ajustes iniciais de pesos.
Bem, quando eu não treinava neurônios a cada passo, mas apenas o executava no vetor de dados com pesos iniciais escolhidos aleatoriamente, recebi desenhos com uma nuvem no meio (às vezes).
Agora você tem o que vê. Aqui está outra foto.
Só para o caso de eu anexar a listagem Matkad
Bem, aí está. Não há amostra de treinamento, porque a amostra de treinamento é o vetor X. Portanto, você pode desenhá-la no gráfico, é claro, mas será uma linha cruzando o gráfico em um ângulo de 45".
Você tem um vetor de treinamento de comprimento n no qual a NS treina para reconhecer apenas uma amostra, n+1. Temos um conjunto de estatísticas N>100, que forma um conjunto de treinamento (mais exatamente, um conjunto de exemplos de como NS foi treinado) de amostras de comprimento N (este não é um vetor de treinamento, mas um conjunto de amostras, obtido a partir da série sinusite disponível, deslocando-o por uma amostra para a direita cada vez até N). Assim, temos N valores para os quais os NS foram treinados (estes são n+1 elementos dos vetores de treinamento) e também temos N valores de como os aprendeu. Coloque-os nos eixos de abcissas e ordenadas respectivamente e obtenha a nuvem que caracteriza o processo de aprendizagem. É evidente que esta nuvem não terá um declive de 45 graus. Isso decorre do fato de que o número de pesos da malha - w é muito menor que o comprimento ideal do vetor de treinamento P=w*w/d e, como conseqüência, o sistema de equações que NS resolve para encontrar os pesos ideais é superdeterminado e tem um número infinito de soluções. Portanto, busca-se uma aproximação que seja ótima no sentido de minimizar o erro de aprendizagem ao quadrado para todas as equações. Se o comprimento do vetor de treinamento fosse igual ao número de pesos, então seria de esperar 100% de aprendizado da rede, mas isto não é ótimo no sentido da capacidade da rede de generalizar o conhecimento acumulado no futuro e leva a erros grandiosos na amostra de teste. Uma grade devidamente treinada mostrará o ângulo de inclinação da amostra de treinamento próximo ao ângulo de inclinação da amostra de teste no diagrama de nuvens. Por outro lado, uma rede sobre-treinado mostrará um ângulo de 45 graus para a nuvem de treinamento com uma variação insignificante e um ângulo zero com variação infinita para a nuvem de teste. Este é exatamente o resultado que você obtém se tentar resolver um sistema de equações algébricas lineares para um único perseptron com precisão. Eu já mencionei isto acima. Esta é a razão pela qual é muito conveniente usar um diagrama de nuvens ao depurar uma rede (o que não se pode fazer em MQL).
O fato de que sua inclinação muda de experiência para experiência e se torna até mesmo negativa, indica claramente que sua garota vive sua vida secreta e não é treinável. Você precisa de uma lobotomia :-)
P.S. Salvar arquivos cdjb com extensão *.mcd para 2001i MathCad, caso contrário, não consigo lê-los.
Vou dar uma olhada agora.
A propósito, eis como minha garota funciona a série 5-sine:
É um NS de duas camadas com duas entradas válidas (sem contar o viés constante), k=2, que tem 2 neurônios ativados não lineares na camada oculta e um neurônio linear (sem função de ativação) na saída. A amostra de treinamento é mostrada em vermelho e a amostra de teste (previsões) é mostrada em azul. Re-treinamento em cada amostra. As estatísticas são 200 experiências. As tangentes dos ângulos são dadas no campo da trama.
Há muitas coisas em seu código que eu não entendi por bondade do meu coração. Mas, pelo que consegui compreender, o seguinte não corresponde às minhas idéias:
Você deve ter exatamente a soma acumulada em toda a época de treinamento P por quadrados de desvios S[k] . O que vejo é apenas uma re-designação das variáveis. Não há inicialização inicial dos pesos com números aleatórios.
Ainda não entendo que sub-rotina você introduziu método() e ranif() e onde procurá-lo?
Eu simplifiquei um pouco seu código (ver arquivo).
Comentou extensivamente, corrigiu alguns erros ao longo do caminho
Isto é o que ela desenha:
Anexo o arquivo em três formatos 11, 12 e 13 (*.xcmd)
Agora estou olhando para suas correções... Na verdade, eu deveria ter analisado as correções antes de comentar... -:)
No que você escreveu dois posts acima, estou pensando. O principal para mim é entender para que a "imagem" em minha cabeça se forme, então eu farei tudo.
Essa imagem até agora não estava muito correta - entendi mal "aprender fazendo", e ainda não há ninguém novo.