2016-08-03 4 views
1

Je suis nouveau à spark et scala. J'ai 10 modèles d'apprentissage automatique qui sont formés en utilisant WEKA.Comment utiliser le modèle Weka sur Spark

Now, i am moving my application to spark and want to use these models. 
How can i use them into spark? 

Pour la prédiction, le modèle à choisir dépend du type de données à venir. Comment est-ce que je devrais concevoir mon application de sorte que je n'ai pas à charger tous les 10 dans la mémoire ensemble?

Toute aide serait appréciée.

Répondre

1

Tout d'abord, les classifiers dans weka ne sont pas serializable donc vous pouvez seulement appliquer vos modèles de façon délicate. D'autre part, il n'est pas clair pourquoi vous souhaitez appliquer un modèle basé sur weka dans l'étincelle apache, car vous pouvez également former des algorithmes ML basés sur des étincelles avec MLLib (http://spark.apache.org/docs/latest/ml-guide.html). Il est bien documenté, et vous pouvez trouver beaucoup d'exemples utiles. Enfin, j'ai compilé les performances de l'arbre de décision weka J48 et du modèle d'arbre de décision d'étincelles sur l'ensemble de données reuters. C'est un problème de classification de document, j'ai évoqué le modèle sur la validation croisée de 10 fois. Les scores F1 Résultat de WEKA:

(navire, ,5751879699248121)
(grain, ,7714285714285716)
(argent-fx, ,7308567096285064)
(maïs, ,7334851936218679)
(commerce, ,7641325536062378)
(brut, ,7815049864007253)
(gagnent, ,9310115645354248)
(blé, ,7661870503597122)
(acq, ,8078484438430312)
(intérêts, 0,6561 743341404359)

Et les résultats de l'étincelle:

(navire, ,5307018372123027)
(grain, ,7606432455706257)
(argent-fx, ,7476899173974012)
(maïs, ,7210280866934613)
(commerce, ,7607140827384508)
(brut, ,7450426425908848)
(gagnent, ,9337615148649243)
(blé, ,751148372254634)
(ACQ, ,8009280204333529)
(intérêts, 0,6837952003315322)

Comme vous pouvez le voir, ce n'est pas une énorme différence entre la solution à deux. Donc, je vous recommande d'appliquer apache spark mllib!