Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 607

 
Vizard_:

Vamos falar de aprender DAO, ugh, TAU)))


Não, não... só há aqui o DAO...

 
Vizard_:

Pacote de aprendizagemCurva, R, Curva de Aprendizagem.

Como é que eles ajudam a calcular o número de neurónios?
 
elibrarius:
Como é que eles ajudam a calcular o número de neurónios?

se o erro parar de cair abruptamente, então pare de ensinar :)

 
Maxim Dmitrievsky:

Se o erro parar de cair drasticamente, então pare de aprender :)

Podemos treinar apenas redes com estrutura já definida e procurar por erros. Primeiro precisamos determinar a estrutura, ou seja, o número de neurônios nos quais você pode então observar erros.

Isto é, a questão é como o learningCurve antes do treinamento ajuda a determinar o número ideal de neurônios.

Ou por qualquer outro método.

 
elibrarius:

Podemos treinar apenas uma rede com estrutura já dada e procurar por erros. Em primeiro lugar, precisamos definir a estrutura, ou seja, o número de neurónios em que podemos observar erros.

Ou seja, a questão é como o learningCurve antes de aprender ajuda a determinar o número ideal de neurônios.

Ou por qualquer outro método.


Acontece que não importa o número... a aprendizagem apenas pára quando o erro pára de cair e não há reciclagem. Portanto, pode haver um grande número de neurónios

se eu entendi correctamente.

 
Vizard_:

Vamos falar de cognição DAO, ugh, TAU)))


A relatividade da cognição deve-se a muitas razões, entre as quais devemos antes de tudo mencionar a diferente prontidão da consciência para o ato de perceber e compreender o mesmo fenômeno, levando a diferentes resultados de cognição (reações, decisões, ações, etc.).

 
Maxim Dmitrievsky:

Acontece que o número não importa... o treinamento simplesmente pára quando o erro parou de cair e não ocorre nenhum treino de reciclagem. Portanto, pode haver um grande número de neurónios

se eu entendi correctamente.

Esta é uma paragem prematura. Eu não vejo nenhuma conexão com o pacote learningCurve.

No método de paragem precoce, o treino pára quando a complexidade da rede atinge um valor óptimo. Este momento é estimado pelo comportamento temporal do erro de validação.

Mas também tem as suas fraquezas: uma rede demasiado grande parará a sua aprendizagem cedo, quando as não linearidades ainda não tiveram tempo de se tornar plenamente visíveis. Ou seja, esta técnica está repleta de encontrar soluções fracamente não lineares.

Vizard_:

Erros (2pc).

Por favor, escreva com mais detalhes. Como o learningCurve ajuda a determinar o número de neurônios para a rede?

 

Não posso dizer nada sobre regularização, ainda não experimentei.

Mas parar cedo leva a um excesso de equipamento. De alguma forma funciona para o reconhecimento de imagens devido à alta similaridade dos dados de teste e treinamento, razão pela qual é frequentemente recomendado em livros e artigos. Mas não é adequado para forex.


Aconselho a aprender a validação cruzada de k-fold. Já vi várias maneiras diferentes, esta funciona bem...

Vamos usar cinco faltas. Digamos que há 1000 filas numa mesa de treino.

1) Modelo de trem nas linhas 201-1000. Se for um neurônio, sem pausa precoce, apenas ensine ao neurônio um certo número de épocas o suficiente para atingir alta precisão. Prever linhas 1-200.
2) Retraia o modelo, agora nas linhas 1-200 junto com 401-1000, use os mesmos parâmetros do modelo e geralmente todos os ajustes idênticos. Prever filas 201-400.
3) Retrair o modelo, agora nas linhas 1-400 junto com 601-1000, usar os mesmos parâmetros do modelo e geralmente todos os ajustes idênticos. Prever filas 401-600.
4) Retrair o modelo, agora nas linhas 1-600 junto com o 801-1000, usar os mesmos parâmetros do modelo e geralmente todos os ajustes idênticos. Prever filas 601-800.
5) Retrair o modelo, agora nas linhas 1-800, usar os mesmos parâmetros do modelo e geralmente todas as configurações idênticas. Prever filas 801-1000.

Como resultado temos cinco modelos criados com um algoritmo de aprendizagem idêntico com parâmetros idênticos. E cinco previsões, cada uma feita com dados desconhecidos para o modelo.
Cinco arrays com previsões são adicionados uns aos outros para obter uma longa matriz de comprimento 1000, e nós avaliamo-los em relação aos dados reais com a função R2. Isto irá avaliar o nosso modelo, método de treino e tudo mais.
Em seguida, escolhemos os parâmetros do modelo (função de ativação, número de camadas e seu tamanho, etc.) cada vez que fazemos todas estas etapas (treinar 5 modelos, prever 5 pedaços únicos para cada modelo, fundi-los, R2), ficando cada vez melhor estimativa.

Para prever novos dados em um comércio real - nós prevemos cada um dos cinco padrões, e para os cinco resultados encontrar a média, esta será a previsão final sobre os novos dados.

p.s. O número de faltas é melhor para umas dezenas, neste exemplo há apenas cinco para simplicidade de descrição.

 

Um tipo especial de obtenção, detecção de categorias é a operação por analogia do seguinte tipo: causa + condição → consequência, aqui a consequência só vem quando a causa e condição são combinados. Aplicando esta operação às categorias de partes e de todo, pode-se encontrar a categoria de estrutura que desempenha o papel de condições necessárias: partes + estrutura → inteiro, ou seja, um todo não pode ser obtido sem uma condição estrutural correspondente, uma montanha não pode ser obtida a partir de um número suficiente de grãos de areia enquanto eles estão apenas deitados no plano. O pré-requisito para obter um sistema a partir dos elementos são as relações e conexões entre os elementos: elementos + conexões → sistema. A importância da forma veio à tona quando uma simples agulha de costura foi transformada em agulha de costura, para a qual o olho foi movido até a ponta da agulha. Para conseguir uma nova qualidade da agulha, a configuração teve que ser alterada: forma + configuração → qualidade. Este exemplo mostra ao mesmo tempo o funcionamento da lei de desenvolvimento de opostos de um sistema - uma mudança na qualidade não requer necessariamente uma mudança na quantidade.

 

O número ótimo de elementos ocultos é um problema específico a ser resolvido pela experiência. Mas como regra geral: quanto mais neurónios escondidos, maior o risco de sobre-aprendizagem. Neste caso, o sistema não aprende as capacidades dos dados, mas sim lembra-se dos padrões em si e de qualquer ruído que estes contenham. Tal rede tem um bom desempenho em uma amostra, mas pouco fora da amostra. Como podemos evitar o sobre-aprendizado? Existem dois métodos populares: a paragem precoce e a regularização. O autor prefere a sua própria pesquisa, relacionada com a busca global.

Vamos resumir esta parte da história. A melhor abordagem para o dimensionamento da rede é seguir o princípio de Occam. Ou seja, para dois modelos com o mesmo desempenho, o modelo com menos parâmetros irá generalizar com mais sucesso. Isto não significa que devemos necessariamente escolher um modelo simples a fim de melhorar o desempenho. O inverso é verdade: muitos neurónios e camadas escondidas não garantem superioridade. Hoje em dia é dada demasiada atenção às grandes redes, e muito pouca aos princípios do seu design. Maior nem sempre é melhor.


http://ai-news.ru/2016/05/tehnologii_fondovogo_rynka_10_zabluzhdenij_o_nejronnyh_setyah_578372.html

Технологии фондового рынка: 10 заблуждений о нейронных сетях
Технологии фондового рынка: 10 заблуждений о нейронных сетях
  • ai-news.ru
Нейронные сети - один из самых популярных классов алгоритмов для машинного обучения. В финансовом анализе они чаще всего применяются для прогнозирования, создания собственных индикаторов, алгоритмического трейдинга и моделирования рисков. Несмотря на все это, репутация у нейронных сетей подпорчена, поскольку результаты их применения можно...