Lar Finanças Pessoais 10 Formas de melhorar seus modelos de aprendizado de máquina - manequins

10 Formas de melhorar seus modelos de aprendizado de máquina - manequins

Índice:

Vídeo: Solda MIG, Dicas para iniciantes, Passe de raiz e acabamento em chapas de 5 mm 2024

Vídeo: Solda MIG, Dicas para iniciantes, Passe de raiz e acabamento em chapas de 5 mm 2024
Anonim

Agora que você é algoritmo de aprendizado de máquina finalizou a aprendizagem a partir dos dados obtidos usando Python ou R, você está ponderando o resultados do seu conjunto de testes e perguntando se você pode melhorá-los ou realmente alcançou o melhor resultado possível. Há uma série de verificações e ações que sugerem métodos que você pode usar para melhorar o desempenho da aprendizagem em máquina e alcançar um preditor mais geral capaz de funcionar igualmente bem com seu conjunto de teste ou novos dados. Esta lista de dez técnicas oferece oportunidades para melhorar o resultado alcançado usando algoritmos de aprendizado de máquina.

Estudando curvas de aprendizado

Como primeiro passo para melhorar seus resultados, você precisa determinar os problemas com seu modelo. As curvas de aprendizagem exigem que você verifique contra um conjunto de testes à medida que você varia o número de instâncias de treinamento. Você notará imediatamente se você encontra muita diferença entre seus erros na amostra e fora da amostra. Uma grande diferença inicial é um sinal de variação de estimativa; Por outro lado, ter erros que são altos e similares é um sinal de que você está trabalhando com um modelo tendencioso.

O Python ajuda você a desenhar facilmente curvas de aprendizado usando a função Scikit-learn (). Você também pode facilmente alcançar o mesmo resultado usando R com funções personalizadas, conforme descrito pelo blog da análise da Revolução.

Usando a validação cruzada corretamente

Ver uma grande diferença entre as estimativas de validação cruzada (CV) e o resultado é um problema comum que aparece com um conjunto de teste ou dados novos. Ter este problema significa que algo deu errado com a validação cruzada. Além do fato de o CV não ser um bom preditor de desempenho, esse problema também significa que um indicador enganador induziu você a modelar o problema de forma incorreta e alcançar resultados insatisfatórios.

A validação cruzada fornece dicas quando as etapas que você toma estão corretas. É importante, mas não crítico, que o CV avalie precisamente as medidas de erro fora da amostra. No entanto, é crucial que as estimativas de CV reflitam corretamente a melhoria ou piora na fase de teste devido às suas decisões de modelagem. Geralmente, existem duas razões pelas quais as estimativas de validação cruzada podem variar de resultados de erros verdadeiros:

  • Snooping
  • Amostragem incorreta

O Python oferece uma amostragem CV estratificada-dobra-dobras. R pode estratificar amostras usando o método createFolds da biblioteca de cadastro quando você fornece o parâmetro y como fator.

Escolhendo o erro ou a métrica de pontuação direita

O fato de tentar otimizar uma métrica de erro com base no erro médio usando um algoritmo de aprendizagem com base no erro médio não proporcionará os melhores resultados a menos que você gerencie o processo de otimização em uma moda que funciona em favor da sua métrica escolhida.Ao resolver um problema usando a aprendizagem de dados e máquinas, você precisa analisar o problema e determinar a métrica ideal para otimizar.

Os exemplos podem ajudar muito. Você pode obter muitos deles de documentos acadêmicos e de concursos públicos de aprendizagem de máquinas que definem cuidadosamente problemas específicos em termos de dados e de métricas de erro / pontuação. Procure um concurso cujo objetivo e dados sejam semelhantes aos seus e, em seguida, verifique a métrica solicitada.

Procurando os melhores hiper-parâmetros

A maioria dos algoritmos é executado bastante bem fora da caixa usando as configurações de parâmetros padrão. No entanto, você sempre pode obter melhores resultados testando diferentes hiper-parâmetros. Tudo o que você precisa fazer é criar uma pesquisa em grade entre os possíveis valores que seus parâmetros podem levar e avaliar os resultados usando o erro correto ou a métrica de pontuação. A pesquisa leva tempo, mas pode melhorar seus resultados.

Quando uma pesquisa leva muito tempo para ser concluída, muitas vezes você consegue os mesmos resultados trabalhando em uma amostra de seus dados originais. Menos exemplos escolhidos aleatoriamente exigem menos cálculos, mas geralmente sugerem a mesma solução. Outro truque que pode economizar tempo e esforço é fazer uma pesquisa aleatória, limitando assim o número de combinações de hiper-parâmetros para testar.

Testando vários modelos

Como uma boa prática, teste vários modelos, começando com os básicos - os modelos que têm mais polarização do que variância. Você sempre deve favorecer soluções simples sobre as mais complexas. Você pode descobrir que uma solução simples funciona melhor.

Representar o desempenho de diferentes modelos usando o mesmo gráfico é útil antes de escolher o melhor para resolver seu problema. Você pode colocar modelos usados ​​para prever o comportamento do consumidor, como uma resposta a uma oferta comercial, em gráficos de ganho especial e gráficos de elevação. Esses gráficos mostram como seu modelo é executado dividindo seus resultados em deciles ou partes menores.

Como você pode estar interessado apenas nos consumidores que são mais propensos a responder à sua oferta, ordenar previsões do mais do menos provável enfatizará o quão bom seus modelos estão em prever os clientes mais promissores. Estas respostas da Quora ajudam você a ver como funcionam os gráficos de ganho e elevação: o que é ROC Curve? e What's Lift Curve?.

Testando vários modelos e introspecção eles também podem fornecer sugestões sobre quais recursos se transformar para a criação de recursos ou qual o recurso a deixar de fora quando você faz seleções de recursos.

Modelos de média

O aprendizado de máquina envolve a construção de muitos modelos e a criação de diferentes previsões, todos com diferentes desempenhos de erro esperados. Pode surpreendê-lo saber que você pode obter resultados ainda melhores com a média dos modelos juntos. O princípio é bastante simples: a variância da estimativa é aleatória, então, ao calcular a média de vários modelos diferentes, você pode melhorar o sinal e descartar o ruído que normalmente se cancelará.

Às vezes, os resultados de um algoritmo que funciona bem, misturados com os resultados de um algoritmo mais simples que também não funcionam, podem criar melhores previsões do que usar um único algoritmo.Não subestime as contribuições fornecidas a partir de modelos mais simples, como modelos lineares, quando você mede seus resultados com a saída de algoritmos mais sofisticados, como o aumento de gradiente.

Modelos de empilhamento

Pelas mesmas razões que a média funciona, o empilhamento também pode lhe proporcionar um melhor desempenho. No empilhamento, você constrói seus modelos de aprendizado de máquina em duas etapas. Inicialmente, esta técnica prevê múltiplos resultados usando algoritmos diferentes, com todos eles aprendendo com os recursos presentes em seus dados. Durante a segunda fase, em vez de fornecer os recursos que um novo modelo aprenderá, você fornece esse modelo com as previsões dos outros modelos previamente treinados.

Usar uma abordagem em duas etapas é justificada ao adivinhar funções de destino complexas. Você pode aproximá-los apenas usando múltiplos modelos juntos e, em seguida, combinando o resultado da multiplicação de forma inteligente. Você pode usar uma regressão logística simples ou um conjunto de árvores complexas como modelo de segundo estágio.

A competição Netflix fornece evidências e uma ilustração detalhada sobre como os modelos heterogêneos podem ser empilhados em conjunto para formar modelos mais poderosos. No entanto, implementar esta solução como um aplicativo de trabalho pode ser bastante complicado.

Aplicando engenharia de recursos

Se você acredita que o viés ainda está afetando o seu modelo, você tem pouca escolha além de criar novos recursos que melhoram o desempenho do modelo. Todas as novas funcionalidades podem facilitar a adivinhação da resposta do alvo.

A criação automática de recursos é possível usando a expansão polinomial ou a classe de máquinas de vetor de suporte de algoritmos de aprendizado de máquina. As máquinas de vetor de suporte podem buscar automaticamente recursos melhores em espaços de recursos de dimensões superiores de uma maneira que é computacionalmente rápida e a memória ideal.

No entanto, nada pode realmente substituir sua experiência e compreensão do método necessário para resolver o problema de dados que o algoritmo está tentando aprender. Você pode criar recursos com base em seu conhecimento e idéias de como as coisas funcionam no mundo. Os seres humanos ainda são imbatíveis ao fazê-lo, e as máquinas não podem substituí-los facilmente.

Selecionando recursos e exemplos

Se a variância da estimativa for alta e seu algoritmo depender de muitos recursos, você precisa podar alguns recursos para melhores resultados. Neste contexto, é aconselhável reduzir o número de recursos em sua matriz de dados escolhendo aqueles com maior valor preditivo.

Ao trabalhar com modelos lineares, máquinas de vetor de suporte linear ou redes neurais, a regularização é sempre uma opção. Tanto L1 como L2 podem reduzir a influência de variáveis ​​redundantes ou mesmo removê-las do modelo. A seleção de estabilidade alavanca a habilidade L1 para excluir variáveis ​​menos úteis. A técnica reaviva os dados de treinamento para confirmar a exclusão.

Você pode aprender mais sobre a seleção de estabilidade ao visualizar o exemplo no site Scikit-learn. Além disso, você pode praticar usando as funções RandomizedLogisticRegression e RandomizedLasso Scikit-learn no módulo linear_model.

Procurando mais dados

Depois de tentar todas as sugestões anteriores, você ainda pode ter uma alta variação de previsões para lidar. Neste caso, sua única opção é aumentar o tamanho do seu conjunto de treinamento. Tente aumentar sua amostra fornecendo novos dados, que podem se traduzir em novos casos ou novos recursos.

Se você quiser adicionar mais casos, veja apenas se você tem dados semelhantes à mão. Se você deseja adicionar novos recursos, localize uma fonte de dados de fonte aberta, se possível, para combinar seus dados com suas entradas. Outra ótima maneira de obter novos casos e novos recursos é raspando os dados da web. Muitas vezes, os dados estão disponíveis entre diferentes fontes ou através de uma interface de programação de aplicativos (API). Por exemplo, as APIs do Google oferecem muitas fontes de informações geográficas e comerciais.

10 Formas de melhorar seus modelos de aprendizado de máquina - manequins

Escolha dos editores

Origem e Design de Hadoop - dummies

Origem e Design de Hadoop - dummies

Então, o que é exatamente isso com o nome engraçado - Hadoop? No seu núcleo, o Hadoop é uma estrutura para armazenar dados em grandes clusters de hardware de commodities - hardware de computador todos os dias acessível e facilmente disponível - e executando aplicativos contra esses dados. Um cluster é um grupo de computadores interligados (conhecido como ...

A arquitetura do porco em Hadoop - dummies

A arquitetura do porco em Hadoop - dummies

"Simples" geralmente significa "elegante" quando se trata de desenhos arquitetônicos para Essa nova mansão do Vale do Silício que você planejou quando o dinheiro começa a rolar depois de implementar o Hadoop. O mesmo princípio se aplica à arquitetura de software. O porco é composto por dois componentes (count 'em, two): O próprio idioma: como prova de que os programadores ...

MapReduce Application Flow em Hadoop - dummies

MapReduce Application Flow em Hadoop - dummies

No seu núcleo, MapReduce é um modelo de programação para o processamento de conjuntos de dados que são armazenados de forma distribuída nos nós de escravo de um cluster Hadoop. O conceito-chave aqui é dividir e conquistar. Especificamente, você deseja quebrar um grande conjunto de dados em muitas peças menores e processá-las em paralelo com o mesmo algoritmo. ...

Escolha dos editores

Apoiando a sua campanha PPC com análise de palavras-chave - manequins

Apoiando a sua campanha PPC com análise de palavras-chave - manequins

A base de todo o trabalho do mecanismo de pesquisa é uma análise de palavras-chave. Fazer uma análise de palavras-chave realmente não é tão complicado e pode significar a diferença entre sucesso e falha em sua campanha PPC. Comece digitando as palavras-chave óbvias em um editor de texto ou processador de texto - aqueles que você já pensou ou, se você ...

Envie seu site para Yahoo! Search Directory - dummies

Envie seu site para Yahoo! Search Directory - dummies

Envios para o Yahoo! O diretório costumava ser muito difícil. Pesquisas mostraram que as pessoas que conseguiram obter seus sites listados no diretório tiveram que tentar várias vezes em questão de meses. Era grátis, mas era um aborrecimento. A boa notícia: você pode obter seu site listado em Yahoo! Diretório ...

Dicas para criar e otimizar conteúdo para objetos e indústrias difíceis - manequins

Dicas para criar e otimizar conteúdo para objetos e indústrias difíceis - manequins

Em A superfície, a criação de conteúdo não soa tão difícil até você se sentar e tentar escrever. Sua estratégia de SEO depende desse conteúdo. É ainda pior se você estiver escrevendo conteúdo para o que muitas pessoas podem considerar uma indústria chata. A boa notícia é que é possível transformar indivíduos potencialmente chatos em bons ...

Escolha dos editores

Componentes eletrônicos: transistores como um potenciômetro mágico - manequins

Componentes eletrônicos: transistores como um potenciômetro mágico - manequins

Um transistor dentro de um O circuito eletrônico funciona como uma combinação de um diodo e um resistor variável, também chamado de potenciômetro ou pote. Mas isso não é apenas um pote comum; é um pote mágico cujo botão é misteriosamente conectado ao diodo por raios invisíveis, tipo desse tipo: quando a tensão direta é aplicada em ...

Componentes eletrônicos: Resistores - manequins

Componentes eletrônicos: Resistores - manequins

Um resistor é um pequeno componente projetado para fornecer um específico quantidade de resistência em um circuito eletrônico. Como a resistência é um elemento essencial de quase todos os circuitos eletrônicos, você usará resistores em quase todos os circuitos que você constrói. Embora os resistores venham em uma variedade de tamanhos e formas, o tipo mais comum ...