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

 
Aleksey Nikolayev #:

Não estudei a questão em detalhes. A ideia parece ser simples, mas há muitas sutilezas técnicas nas formas de implementação.

Há também uma questão sobre o que significa encontrar o máximo em uma função ruidosa....

Pelo que entendi da definição - "otimizar uma função ruidosa" - significa que a função é complexa e é difícil encontrar o máximo, que os algoritmos de gradiente não são aplicáveis e assim por diante... Em termos gerais, não é nada demais, aplicou-se o algoritmo de otimização global e ele foi procurar o máximo global....


Mas eu vejo isso de forma diferente, quero encontrar o máximo de uma função ruidosa, mas com ruído removido, não o máximo global em uma função ruidosa, mas o máximo global em uma função sem ruído....

(E isso não é trivial, porque a função não é conhecida e os parâmetros de ruído não são conhecidos....

What optimization algorithm can be used to find the maximum in a noisy multidimensional parameter space
What optimization algorithm can be used to find the maximum in a noisy multidimensional parameter space
  • 2022.12.07
  • mr.T mr.T 113 6 6 bronze badges
  • stats.stackexchange.com
I tried several algorithms that seem to be able to handle this, but it didn't work for me. Here is my fitness function which just looks for the max by index
 
СанСаныч Фоменко #:

1. A pergunta de Dick é perfeitamente válida e correta. Não uso NS, mas sei que qualquer função em qualquer pacote R contém necessariamente uma referência ao autor do algoritmo e, para algoritmos sérios, uma referência ao artigo/livro que descreve o algoritmo implementado em R. Como você está bem familiarizado com NS, se estivesse usando o R, poderia pesquisar no R o tipo correspondente de NS e encontrar a referência correspondente onde o algoritmo correspondente é descrito, encontrar uma discussão sobre o algoritmo, descobrir todas as nuances dos profissionais ... e responder ao Dick no mais alto nível profissional, em vez de murmurar algo obsceno.


2) R pelo nome: a linguagem de estatísticas e gráficos. A essência do R revela a rubrica de seu aparato de referência.

Aqui está uma lista de tópicos que os pacotes R abrangem. Um dos tópicos é o aprendizado de máquina.

Aqui está uma lista de pacotes relacionados ao MO.

Há alguns anos, era possível encontrar concorrentes do R entre outras linguagens estatísticas especializadas. Por exemplo, o SPPS, mas hoje não encontrei nenhum. O R continua sendo a única linguagem estatística, com suporte e moderação, e tem um grande número de espelhos, incluídos no software da Microsoft.


3. A comparação do R com o Python é completamente injustificada.

O R é uma linguagem especializada. Python é uma linguagem universal. O Python supera de longe o R em número de usuários, mas o grande usuário do Python é o web design. O fato de o Python ter pacotes estatísticos NÃO permite que ele seja classificado como uma linguagem estatística. Com base nisso, o C++, no qual os pacotes usados no R e no Python são implementados, pode ser classificado como uma linguagem de estatística. Devido à sua rubrica detalhada e às referências aos algoritmos das funções propostas, o R pode ser usado para estudar a teoria e a prática da estatística, enquanto o Python não pode.

E aqui vou citar Prado, mas não literalmente, pois esqueci que "O aprendizado de máquina oferece mais possibilidades, em comparação com a estatística clássica, na negociação"

e as bíblias de MO são muito bem desenvolvidas para python, embora outras também gostem de modelos estatísticos. Portanto, discutir com esses fatos e provar algo uns aos outros é inútil.

No meu entendimento, o R é para estudantes, professores e amadores. Assim, vocês podem citar uns aos outros e se gabar de algo. Para professores, talvez alguns professores que lecionam. Python para projetos sérios e produção. Não ouvi falar de nenhum grande projeto de MO em R em produção.
 
Maxim Dmitrievsky #:

E aqui citarei Prado, mas não literalmente, pois esqueci que "O aprendizado de máquina oferece mais possibilidades, em comparação com a estatística clássica, na negociação"

e as bíblias de MO são muito bem desenvolvidas para python, embora outras também gostem de modelos estatísticos. Portanto, discutir com esses fatos e provar algo uns aos outros é inútil.

No meu entendimento, o R é para estudantes, professores e amadores. Assim, vocês podem citar uns aos outros e se gabar de algo. Para professores, talvez alguns professores que lecionam. Python para projetos sérios e produção. Não ouvi falar de nenhum grande projeto de MO em R em produção.

Por que está discutindo sobre algo que você mesmo afirma não saber?

A Microsoft tem feito alguns esforços para tornar o R uma ferramenta para o desenvolvimento de grandes projetos por um grande número de desenvolvedores.

Aqui está a lista de produtos/serviços da Microsoft que nos permitirão trabalhar com o R:
.
  1. Microsoft R Server / R Server para Azure HDInsight
  2. VM de ciência de dados
  3. Aprendizado de máquina do Azure
  4. Serviços de R do SQL Server
  5. Power BI
  6. Ferramentas de R para Visual Studio

Que tipo de entusiastas e que tipo de professores precisam do ecossistema do Microsoft R Server?



E as máquinas virtuais VM que permitem unificar tudo e qualquer coisa?

E o serviço de nuvem Azura com seus pacotes de aprendizado de máquina e ferramentas de desenvolvimento colaborativo?


O R agora é um sistema industrial integrado pela Microsoft em seus próprios desenvolvimentos e em desenvolvimentos que não são da Microsoft.


E você é "para amadores"...

 
СанСаныч Фоменко #:

Por que você está especulando sobre algo que você mesmo afirma não saber?

A Microsoft fez alguns esforços para tornar o R uma ferramenta para o desenvolvimento de grandes projetos por um grande número de desenvolvedores.

Aqui está a lista de produtos/serviços da Microsoft que nos permitirão trabalhar com o R:
.
  1. Microsoft R Server / R Server para Azure HDInsight
  2. VM de ciência de dados
  3. Aprendizado de máquina do Azure
  4. Serviços de R do SQL Server
  5. Power BI
  6. Ferramentas de R para Visual Studio

Que tipo de entusiastas e que tipo de professores precisam do ecossistema do Microsoft R Server?



E as máquinas virtuais VM que permitem unificar tudo e qualquer coisa?

E o serviço de nuvem Azura com seus pacotes de aprendizado de máquina e ferramentas de desenvolvimento colaborativo?


O R agora é um sistema industrial integrado pela Microsoft em seus próprios desenvolvimentos e em desenvolvimentos que não são da Microsoft.


E você é "para amadores"...

Está claro que "há algo lá".

Estou falando com base na experiência de comunicação com implementadores, inclusive os grandes, pelo menos na Rússia.

Todos eles fizeram isso em python.

A Microsoft tem sdk para aprendizado de máquina em C# e Asure, mas ninguém os usa.

Então, você criou um grande projeto em R e o colocou em um servidor. Ninguém, porque não há especialistas em tal quantidade e ninguém quer aprender R por causa de uma estatística.

No caso do python, contrate qualquer estudante por um pedaço de salsicha e você estará bem.

"ninguém" é a palavra que significa que NINGUÉM escreve em R, sob qualquer pretexto. Porque existe o python.

e você leva os tradduns a escrever em R para que eles o quê? desperdicem seu tempo em uma linguagem inútil.

 
mytarmailS #:

Há também a questão do que queremos dizer com encontrar o máximo em uma função ruidosa...

Pelo que entendi da definição - "otimização de uma função ruidosa" - significa que a função é complexa e é difícil encontrar o máximo nela, os algoritmos de gradiente não são aplicáveis, e assim por diante.... Em termos gerais, não é nada demais, você aplica o algoritmo de otimização global e ele procura o máximo global....


Mas eu vejo isso de forma diferente, quero encontrar o máximo de uma função ruidosa, mas com o ruído removido, não o máximo global em uma função ruidosa, mas o máximo global em uma função sem ruído....

(E isso não é trivial, porque a função não é conhecida e os parâmetros de ruído não são conhecidos....

Você precisa de informações a priori sobre o ruído. Além disso, você precisa de um modelo matemático claro do ruído - aditivo, multiplicativo ou qualquer outro. Não é possível criar um filtro sem um modelo. E esse modelo deve ser semelhante aos dados reais.

Talvez você deva examinar os métodos de processamento de geodados que funcionam com dados bidimensionais ou tridimensionais. Ou algo como a transformada de Fourier, como nas imagens jpg, ou wavelets - como na nova versão do jpg, ou splines multidimensionais, etc.

 
Maxim Dmitrievsky #:

Eu citaria o slogan "lutar e procurar - encontrar e esconder".

Defina qualquer critério como uma métrica personalizada, especialmente os critérios padrão. Ele ainda otimizará por logloss, mas parará nesses critérios personalizados, o que provavelmente faz algum sentido

e, de fato, faz, porque parar no mesmo busting sempre se baseia em algum critério de elenco, como a precisão.

Até agora, acho que somente assim. Você também pode fazer a poda da árvore por um critério personalizado.

 
Maxim Dmitrievsky #:

está claro que "existe"

Falo com base em minha experiência de comunicação com implementadores, inclusive os de grande porte, pelo menos na Federação Russa

tudo foi feito em Python

a Microsoft tem sdk para aprendizado de máquina em C# e Asure, mas ninguém os usa

Então você criou um grande projeto em R e o colocou no servidor. Ninguém, porque não há especialistas em um número tão grande e ninguém quer aprender R por causa de uma estatística.

E para python, contrate qualquer estudante por um pedaço de salsicha e você estará bem.

"ninguém" é a palavra para NENHUMA das pessoas que escrevem em R, sob qualquer pretexto. Porque existe o python.

e você leva os tradduns a escrever em R, para que eles o quê? desperdicem seu tempo em uma linguagem inútil.

O RF é um exemplo ruim, porque é extremamente inativo no sentido de matstat. Nosso fórum está cheio de técnicos, mas a maioria deles tem ideias extremamente ruins sobre o matstat. Nos institutos, os professores ensinam matstat em Excel). Tudo isso caracteriza nossa escola científica e técnica de forma extremamente ruim - soluções sérias da época da URSS são muito mais frequentemente compradas prontas no exterior do que desenvolvidas no país.

 
Aleksey Nikolayev #:

A resposta correta foi que você precisa de informações a priori sobre o ruído. Além disso, você precisa de um modelo matemático claro de ruído - aditivo, multiplicativo ou qualquer outro. Não é possível criar um filtro sem um modelo. E esse modelo deve ser semelhante aos dados reais.

Talvez você deva examinar os métodos de processamento de geodados que funcionam com dados bidimensionais ou tridimensionais. Ou algo como a transformada de Fourier, como nas imagens jpg, ou wavelets - como na nova versão do jpg, ou splines multidimensionais, etc.

Posso criar um modelo sem problemas, qualquer decomposição, até mesmo PCA, e seguir em frente...

Mas e os dados? Eles não existem, é uma função desconhecida, e mesmo multidimensional....

TODOS os dados são os pontos dispersos dos resultados de pesquisa do AO (isso se você os salvar).

Não é uma série temporal, não há estrutura ou ordem.

 
Aleksey Nikolayev #:

O RF é um exemplo ruim, porque é extremamente estúpido no sentido do matstat. Nosso fórum está cheio de tecnólogos, mas a maioria deles tem ideias extremamente ruins sobre matstat. Nos institutos, os professores ensinam matstat em Excel. Tudo isso caracteriza nossa escola científica e técnica de forma extremamente ruim - soluções sérias da época da URSS são muito mais frequentemente compradas prontas no exterior do que desenvolvidas no país.

O Excel será mais útil para eles mais tarde na vida :D

 
mytarmailS #:

Posso criar um modelo sem problemas, qualquer decomposição, até mesmo PCA, e seguir em frente.

Mas e os dados? Eles não existem, é uma função desconhecida e é multidimensional...

Os dados são os pontos dispersos da pesquisa AO (se você os salvar).

Não é uma série temporal, não há estrutura ou ordem.

Bem, a primeira coisa que me vem à mente é dividir o espaço em uma grade com células não muito grandes ou pequenas (o tamanho é determinado pelo modelo de ruído). Comece com alguma célula (selecionada aleatoriamente, por exemplo) - alguns pontos nela determinam a direção do gradiente da função suavizada e passam para a próxima célula e assim por diante até que não haja transição ou looping. A posição do extremo é definida com precisão de acordo com o tamanho da célula, portanto, não deve ser muito grande, mas, ao mesmo tempo, deve oferecer a possibilidade de suavização, portanto, não deve ser muito pequena. E devemos aceitar o fato de que, em princípio, não existe uma posição exata do extremo, pois ela varia de acordo com o método de suavização.

Razão: