aboutsummaryrefslogtreecommitdiff
path: root/examples/src/main/python/mllib/random_forest_example.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/src/main/python/mllib/random_forest_example.py')
-rwxr-xr-xexamples/src/main/python/mllib/random_forest_example.py90
1 files changed, 0 insertions, 90 deletions
diff --git a/examples/src/main/python/mllib/random_forest_example.py b/examples/src/main/python/mllib/random_forest_example.py
deleted file mode 100755
index 4cfdad868c..0000000000
--- a/examples/src/main/python/mllib/random_forest_example.py
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-"""
-Random Forest classification and regression using MLlib.
-
-Note: This example illustrates binary classification.
- For information on multiclass classification, please refer to the decision_tree_runner.py
- example.
-"""
-from __future__ import print_function
-
-import sys
-
-from pyspark.context import SparkContext
-from pyspark.mllib.tree import RandomForest
-from pyspark.mllib.util import MLUtils
-
-
-def testClassification(trainingData, testData):
- # Train a RandomForest model.
- # Empty categoricalFeaturesInfo indicates all features are continuous.
- # Note: Use larger numTrees in practice.
- # Setting featureSubsetStrategy="auto" lets the algorithm choose.
- model = RandomForest.trainClassifier(trainingData, numClasses=2,
- categoricalFeaturesInfo={},
- numTrees=3, featureSubsetStrategy="auto",
- impurity='gini', maxDepth=4, maxBins=32)
-
- # Evaluate model on test instances and compute test error
- predictions = model.predict(testData.map(lambda x: x.features))
- labelsAndPredictions = testData.map(lambda lp: lp.label).zip(predictions)
- testErr = labelsAndPredictions.filter(lambda v_p: v_p[0] != v_p[1]).count()\
- / float(testData.count())
- print('Test Error = ' + str(testErr))
- print('Learned classification forest model:')
- print(model.toDebugString())
-
-
-def testRegression(trainingData, testData):
- # Train a RandomForest model.
- # Empty categoricalFeaturesInfo indicates all features are continuous.
- # Note: Use larger numTrees in practice.
- # Setting featureSubsetStrategy="auto" lets the algorithm choose.
- model = RandomForest.trainRegressor(trainingData, categoricalFeaturesInfo={},
- numTrees=3, featureSubsetStrategy="auto",
- impurity='variance', maxDepth=4, maxBins=32)
-
- # Evaluate model on test instances and compute test error
- predictions = model.predict(testData.map(lambda x: x.features))
- labelsAndPredictions = testData.map(lambda lp: lp.label).zip(predictions)
- testMSE = labelsAndPredictions.map(lambda v_p1: (v_p1[0] - v_p1[1]) * (v_p1[0] - v_p1[1]))\
- .sum() / float(testData.count())
- print('Test Mean Squared Error = ' + str(testMSE))
- print('Learned regression forest model:')
- print(model.toDebugString())
-
-
-if __name__ == "__main__":
- if len(sys.argv) > 1:
- print("Usage: random_forest_example", file=sys.stderr)
- exit(1)
- sc = SparkContext(appName="PythonRandomForestExample")
-
- # Load and parse the data file into an RDD of LabeledPoint.
- data = MLUtils.loadLibSVMFile(sc, 'data/mllib/sample_libsvm_data.txt')
- # Split the data into training and test sets (30% held out for testing)
- (trainingData, testData) = data.randomSplit([0.7, 0.3])
-
- print('\nRunning example of classification using RandomForest\n')
- testClassification(trainingData, testData)
-
- print('\nRunning example of regression using RandomForest\n')
- testRegression(trainingData, testData)
-
- sc.stop()