Como você trabalha com redes neurais? - página 4

 
Muito obrigado como ser humano!
 
alexjou:

- O número de camadas é determinado pela dimensionalidade do vetor de entrada, ou seja, a rede é gerada automaticamente através da definição e inicialização/leitura de matrizes de trabalho;

- o número de neurônios em uma camada oculta diminui progressivamente com o aumento do número de camadas N de acordo com a lei 1/(2^N) ("resolução de cristais") ou 1/N ("memória de cristais");


Parece estar provado que três camadas são suficientes para se aproximar de qualquer função. Você parece assumir que há mais deles. A partir de que considerações?


Em geral, a concepção é muito próxima ao meu pensamento, embora em termos de conhecimento da NS eu esteja provavelmente em um estágio consideravelmente anterior. Seria interessante comunicar. Você pode me dar seu endereço de e-mail aqui? Ou escreva para mim a gosto em yandex ru.

 
O problema aqui é um pouco diferente.

Não se trata de aproximação de funções. Não sei nada sobre as provas mencionadas por você (pois nunca precisei trabalhar com redes projetivas), mas considerações gerais sugerem que na aproximação de funções arbitrárias o tipo de funções básicas e a dimensão da base desempenham um papel muito maior, do que a "estratificação" da rede; no entanto, isto é verdade para os métodos projetivos em geral.

Escolhi a configuração da rede acima também por algumas dicas: provavelmente, é assim que o cérebro dos seres vivos é construído e é assim que ele "aprende" através da memorização adaptativa e da classificação das informações de entrada. (Eu aborreci meus colegas biólogos e médicos quase até a morte com minhas perguntas estúpidas, mas eles não puderam dizer nada definido exceto "por que você precisa disso" e "corte e experimente você mesmo"). Daí a escolha da regra da Oia para ajustar a balança - neste caso não se pode dizer com certeza se "aprender com um professor" ou "sem um professor" está ocorrendo (sempre achei tal divisão de noções excessivamente artificial por alguma razão). Curiosamente, a partir de um certo momento do ajuste da balança, tal rede deixa de ser previsível, em outras palavras, começa a "comportar-se", embora estejamos falando de apenas um desses "cristais" até agora.

Em resumo, a rede, juntamente com o método de ajuste de suas escalas, foi construída quase que inteiramente a partir de considerações heurísticas. Afinal, na troca, que todos nós estamos tentando derrotar, tais considerações, muito provavelmente, jogam longe do último papel. E-mail: alex-jou Hund rambler Punkt ru (apenas um pedido muito grande - não o adicione à sua lista de contatos para evitar spam. Em geral e peço a todos que o façam - a utilidade deste serviço é quase nula e os danos são tremendos).
 
Candid:

Parece estar provado que três camadas são suficientes para se aproximar de qualquer função. Você parece assumir que há mais deles. A partir de que considerações?

Esta prova não inclui o sigmóide que ele menciona. Portanto, só é teoricamente possível aproximar qualquer função contínua através de um perceptron de três camadas. No domínio aplicado, infelizmente, os resultados são muito piores.
 
Alguém sabe alguma coisa sobre o pacote do PolyAnalyst?
 
sayfuji:
Minha pergunta é a seguinte. Como você trabalha com redes neurais: você implementa usando apenas meios mql4 (a mesma Inteligência Artificial), usa programas como MatLab, ou pacotes especiais de neuro (Neuro Shell Day Trader, NeuroSolutions, etc.), anexando uma dll ao código da EA. Qual é sua abordagem e quais são suas vantagens sobre as outras (além da rentabilidade)?

Há vantagens e desvantagens em cada abordagem:

1. Ao desenvolver sua própria rede neural, você não está lidando com uma caixa preta, a menos, é claro, que você apenas pegou o código fonte e o compilou, mas em algum lugar você adicionou algo específico para a tarefa.

2. Quando você compra uma grade proprietária, você recebe: uma caixa preta pelo dinheiro, mas junto com ela: suporte, soluções prontas e branqueadores de entrada proprietários.


Simplificando, se, por exemplo, for adquirido um pacote de previsão de série temporal universal, o usuário não tem que pensar no que está sendo alimentado nas entradas. Porque no pacote, as entradas são a série cronológica como ela é. E no próprio pacote, ele é preparado preliminarmente para alimentar as entradas da rede, ou seja, antes do início da rede para treinamento, o clareamento será realizado:

1. Filtragem e suavização dos dados de entrada para torná-los mais previsíveis e menos ruidosos

2. Normalizando

3. Filtragem e eliminação de insumos menos significativos

4. Remoção de correlações entre as entradas

5. Eliminando a linearidade dos dados de entrada

6. Seleção de sigmóides adequados para dados normalizados

E assim por diante.


Depois disso, a rede é treinada. Em seguida, os dados de saída são recuperados. Por exemplo, se a linearidade foi eliminada nas entradas, o pacote irá restaurá-la nas saídas. A porcaria nas entradas se transforma em doce nas saídas. É bem possível, já que estamos lidando com uma caixa preta, que ao invés de uma rede neural o pacote utilize algoritmo genético ou talvez algum método de regressão ou outro método de extrapolação.

-+++------------------------------------------------------------------------------------------------------------------------------------------+++-

- Assim, para aqueles usuários que vão se dedicar à rede neural mas não entendem o termo "normalização", é melhor obter um pacote universal para prever séries cronológicas onde você não só obterá informações sobre séries cronológicas (citações), mas também sobre o tamanho do atraso.

- Os usuários mais avançados que conhecem as peculiaridades das arquiteturas de redes neurais, ou seja, estudaram vantagens e desvantagens, devem comprar pacotes mais especializados. Tais pacotes não são adequados para a tarefa, pois você tem que encontrar a arquitetura certa para a tarefa dada por si mesmo. E o método "científico" como adicionar coisas às entradas não é bom aqui, porque os resultados provavelmente também estarão cheios de porcaria.

- Tudo o mais, ou seja, a montagem de redes a partir de fontes não autorizadas ou escritas a partir do zero é adequada apenas para aqueles que têm experiência real na preparação de dados de entrada antes do treinamento da rede e recuperação de dados nas saídas após o treinamento.

Ou seja, o princípio de seleção de pacotes de redes neurais é obscenamente simples: se você não pode cagar - não torture seu ânus. Se você comprou um pacote legal e tem perguntas sobre seu uso que não consegue responder a si mesmo com a ajuda dos manuais incluídos, isso significa apenas uma coisa: não ande assim, ou seja, compre algo menos legal para os mais estúpidos.

 

O problema com redes neurais é o mesmo que com outros TC que não usam redes neurais - uma rede neural sempre encontrará um padrão a qualquer intervalo de tempo (treinamento ou otimização), então há a mesma pergunta - esse padrão funcionará (trará lucro) no futuro?

 

Reshetov:

A merda nas entradas se transforma em doces nas saídas.

Nunca.

É bem possível, já que estamos lidando com uma caixa preta, que ao invés de uma rede neural em um pacote proprietário, seja usado um algoritmo genético, ou talvez alguma regressão ou algum outro método de extrapolação.

Como a GA se relaciona com a NS e a regressão?

NS é um método.

GA é um método.

"Use GA ao invés de NS" parece uma loucura. É como "substituir o coração por um analisador de gases de escape".

Sinto muito. (risos)

 
LeoV:

....... Então a mesma pergunta surge - este padrão encontrado funcionará (trará lucro) no futuro?

Suponhamos, puramente hipoteticamente, que uma forma será encontrada, ou já foi encontrada, para responder a esta pergunta - "Não". Além disso, para qualquer TC. Que conclusão pode ser tirada a partir disto?

Os comerciantes vão parar de negociar? Mas só por curiosidade.

ZS. Os comerciantes irão comprar informações confiáveis confirmando que a resposta é "Não"? Ou será que eles preferem não saber a resposta a essa pergunta? (retórica, se houver)

 
joo:

Assumir, puramente hipoteticamente, que uma forma será encontrada, ou foi encontrada, para responder a esta pergunta - "Não". Além disso, para qualquer TC. Que conclusão você tiraria disso?

Os comerciantes vão parar de negociar? Mas só por curiosidade.

ZS. Os comerciantes irão comprar informações confiáveis confirmando que a resposta é "Não"? Ou será que eles preferem não saber a resposta a essa pergunta? (retórica, se houver).

Escolasticismo puro, se é que há alguma coisa.