我已经用Python编写了一个实现分类器的类。我想使用 apache-spark使用这个分类器对大量数据点进行并行分类。
我在一个集群中使用AmazonEC2,这个集群有10个奴隶,基于一个AMI,这个AMI在上面附带了Python的 Python发行版。AMI允许我远程使用ipython Notebook。
但是,当我执行以下操作时:
import BoTree
bo_tree = BoTree.train(data)
rdd = sc.parallelize(keyed_training_points) #create rdd of 10 (integer, (float, float) tuples
rdd = rdd.mapValues(lambda point, bt = bo_tree: bt.classify(point[0], point[1]))
out = rdd.collect()
Spark因错误而失败(我认为是相关的一点):
File "/root/spark/python/pyspark/worker.py", line 90, in main
command = pickleSer.loads(command.value)
File "/root/spark/python/pyspark/serializers.py", line 405, in loads
return cPickle.loads(obj)
ImportError: No module named BoroughTree
有人能帮我吗?有点绝望…
谢谢