Führen Sie verschiedene Klassifikatoren / Algorithmen parallel mit Spark

Ich habe einen Datensatz und ich wollte verschiedene Klassifikatoren parallel mit Spark mit Python testen. Zum Beispiel, wenn ich einen Entscheidungsbaum und einen zufälligen Wald testen möchte, wie könnte ich sie parallel laufen lassen?

Ich habe ein paar Ansätze ausprobiert, aber ich bekomme immer:

  • Transponieren Sie die Spalte mit Spark
  • Wie kann man die Matrixfaktoren in Spark ALS erweitern?
  • Wie funktioniert die pyspark mapPartitions funktionieren?
  • Lesen große Datei in Spark Ausgabe - Python
  • Was sind die Unterschiede zwischen Scheiben und Partitionen von RDDs?
  • Pyspark Spark DataFrame - Aggregat und Filter Spalten in Kartentyp Spalte
  • cPickle.PicklingError: Can't pickle <type 'function'>: attribute lookup __builtin__.function failed 

    Ich habe versucht, dies zu tun (was gut gearbeitet hatte mit Scikit-Learn's Klassifikatoren anstelle von Spark's:

     def apply_classifier(clf, train_dataset, test_dataset): model = clf.fit(train_dataset) predictions = model.transform(test_dataset) evaluator = BinaryClassificationEvaluator() evaluator.evaluate(predictions) return [(model, predictions)] ... dt = DecisionTreeClassifier(labelCol="indexedLabel", featuresCol="indexedFeatures", maxDepth=3) rf = RandomForestClassifier(labelCol="indexedLabel", featuresCol="indexedFeatures") classifiers = [dt, rf] sc.parallelize(classifiers).flatMap(lambda x: apply_classifier(x, train_dataset, test_dataset)).collect() 

    Irgendwelche Vorschläge, wie ich das schaffen kann?

    Vielen Dank!

  • Wie unterscheiden sich Setuptools, Distribution und Pip aufeinander?
  • Wie kann man Paketdaten mit setuptools / distribute einbinden?
  • Wie schreibe ich ein setup.py für ein Twistd / Twisted Plugin, das mit setuptools arbeitet, verteilen, etc?
  • Verteilen / distutils spezifizieren Python-Version
  • Was ist der richtige Weg, um Pip, virtualenv zu installieren und für Python zu verteilen?
  • Wie kann ich setuptools (oder verteilen) ein Paket aus dem lokalen Dateisystem installieren
  • Python ist die beste Programmiersprache der Welt.