Quais dos 180 algoritmos no pacote de intercalação de R são viáveis?

10

O pacote de intercalação de R funciona com 180 modelos. O autor adverte que parte do pacote pode ser intratávelmente lenta ou menos precisa do que os modelos de primeira escolha.

O autor não está errado sobre isso. Tentei treinar os modelos Boruta e evtree e tive que desistir depois que eles correram> 5 horas em um cluster.

O autor vincula a um conjunto de benchmarks de aprendizado de máquina , mas esses apenas cobrem o desempenho de um pequeno número de algoritmos, comparando diferentes implementações.

Existe algum outro recurso que eu possa recorrer, para obter orientação sobre quais dos 180 modelos valem a pena tentar e quais serão muito imprecisos ou excessivamente lentos?

Hack-R
fonte
11
Depende totalmente dos seus dados. O que você está tentando fazer, quantos dados você tem e como é?
Stmax #
@stmax Isso é verdade. Definitivamente, depende em parte dos dados específicos. Mas também é algo generalizável, e é por isso que eles fazem benchmarking de ML. Na verdade, estou apenas procurando algumas referências gerais. A qualquer momento, tenho de 4 a 5 projetos diferentes em que estou trabalhando e peço isso mais por referência geral / futura do que por uma análise específica. Normalmente, trato de 40.000 a 2.000.000 de linhas e, geralmente, cerca de 100 preditores. Variáveis ​​dependentes mais comumente de várias classes.
y0gapants
11
leia esta pesquisa onde eles comparam 179 modelos diferentes em 121 conjuntos de dados. Ele fala sobre a precisão dos modelos nos conjuntos de dados, mas não tanto sobre a velocidade.
phiver
11
@phiver Isso é muito útil. Eu poderia publicar um desses rapidamente, se ninguém o fizesse.
Hack-R

Respostas:

13

Alunos de benchmarking mlr (padrão) no OpenML

Benchmarking Ml de Philipp Probst O todo OpenML base de dados de ML resulta.

Teste do RStudio sugere SVM.

Mlmastery sugere LDA e Tentativa e erro .

Precisamos de centenas de classificadores para resolver problemas de classificação no mundo real? de Fern ́andez-Delgado et al.

O artigo conclui que a floresta aleatória paralela (parRF_t) é melhor seguida pela floresta aleatória, LibSVM com kernel gaussiano (svm), máquina de aprendizado extremo com kernel gaussiano, árvore de decisão C5.0 e perceptron de múltiplas camadas (avNNet).

Os melhores conjuntos de reforço e ensacamento usam o LibSVM como classificadores base (em Weka), sendo um pouco melhor que o único classificador LibSVM e o adaboost R (conjunto de árvores de decisão treinadas usando o Adaboost.M1). A rede neural probabilística em Matlab, ajustando a propagação do núcleo gaussiano (pnn m), e o perceptron direto do núcleo em C (dkp C), uma rede neural muito simples e rápida proposta por nós (Fern ́andez-Delgado et al., 2014) , também estão muito perto dos 20 melhores.

Wainer, Jacques (2016) Comparação de 14 famílias diferentes de algoritmos de classificação em 115 conjuntos de dados binários Com base em Fernandez-Delgado et al. (2014). "Mostramos que florestas aleatórias, RBF SVM e máquinas de aumento de gradiente são algoritmos de classificação que provavelmente resultarão na maior precisão"

Rich Caruana e Alexandru Niculescu-Mizil () Uma comparação empírica de algoritmos de aprendizado supervisionado (classificação) termina com árvores reforçadas com calibração de Platt, conforme melhor seguido por RF BagT Cal.SVM NN.

Muitos outros estudos incluem comparações de modelos utilizados. Alguns trabalhos preferem SVM, outros SVM com base radial ou núcleo polinomial para classificação. (talvez a mesma coisa)

De minhas próprias regressões sobre os dados gerados, eu recomendo o SVMlinear (MARS) da Terra.

A Manisha Thesis primeiro executa testes no Repositório de Aprendizado de Máquina da UCI e depois a fertilidade do solo, que é o foco da tese. Os melhores modelos de UCI foram: "elm-kernel é a rede neural ELM, mas com kernel gaussiano", "svr é a máquina de vetores de suporte para regressão, com kernel gaussiano usando a biblioteca Lib-SVM com a interface C ++", extraTrees e cubist. A tese inclui ótimas descrições de cada modelo e links para mais artigos "extraTrees alcançou o melhor RMSE para 7 de 10 problemas no solo". Definitivamente vale a pena ler o papel.

ran8
fonte
11
A maioria dos algoritmos precisa de um ajuste cuidadoso dos hiperparâmetros, mesmo o OLS (escolha de interações, não linearidades etc.). A comparação "cega" favorecerá o fácil ajuste de algoritmos como florestas aleatórias.
Michael M
Ou algoritmos que detectam interações e não linearidades. Especialmente nos meus testes de brinquedos artificiais. O moba cubista estraga como modelos. SVM com kernels avançados também.
ran8
11
Existem bons algoritmos para detectar interações e linearidades que precisam de ajuste fino para um desempenho melhor. O RF geralmente não tem muito espaço para melhorias, mas outros podem melhorar muito mais com o ajuste fino. Como exemplo, você pode ter o xgboost com uma classificação ruim em seu benchmark, apesar de ter sido usado extensivamente para vencer competições de kaggle. Outro exemplo do que os parâmetros mal definidos farão: suas regressões penalizadas têm desempenho pior que o modelo linear ...
lcrmorin