[SPARK-19639][SPARKR][EXAMPLE] Add spark.svmLinear example and update vignettes
## What changes were proposed in this pull request? We recently add the spark.svmLinear API for SparkR. We need to add an example and update the vignettes. ## How was this patch tested? Manually run example. Author: wm624@hotmail.com <wm624@hotmail.com> Closes #16969 from wangmiao1981/example.
This commit is contained in:
parent
15b144d2bf
commit
8b57ea4a1e
|
@ -469,6 +469,8 @@ SparkR supports the following machine learning models and algorithms.
|
|||
|
||||
#### Classification
|
||||
|
||||
* Linear Support Vector Machine (SVM) Classifier
|
||||
|
||||
* Logistic Regression
|
||||
|
||||
* Multilayer Perceptron (MLP)
|
||||
|
@ -532,6 +534,26 @@ head(carsDF_test)
|
|||
|
||||
### Models and Algorithms
|
||||
|
||||
#### Linear Support Vector Machine (SVM) Classifier
|
||||
|
||||
[Linear Support Vector Machine (SVM)](https://en.wikipedia.org/wiki/Support_vector_machine#Linear_SVM) classifier is an SVM classifier with linear kernels.
|
||||
This is a binary classifier. We use a simple example to show how to use `spark.svmLinear`
|
||||
for binary classification.
|
||||
|
||||
```{r}
|
||||
# load training data and create a DataFrame
|
||||
t <- as.data.frame(Titanic)
|
||||
training <- createDataFrame(t)
|
||||
# fit a Linear SVM classifier model
|
||||
model <- spark.svmLinear(training, Survived ~ ., regParam = 0.01, maxIter = 10)
|
||||
summary(model)
|
||||
```
|
||||
|
||||
Predict values on training data
|
||||
```{r}
|
||||
prediction <- predict(model, training)
|
||||
```
|
||||
|
||||
#### Logistic Regression
|
||||
|
||||
[Logistic regression](https://en.wikipedia.org/wiki/Logistic_regression) is a widely-used model when the response is categorical. It can be seen as a special case of the [Generalized Linear Predictive Model](https://en.wikipedia.org/wiki/Generalized_linear_model).
|
||||
|
|
|
@ -43,3 +43,4 @@ head(aftPredictions)
|
|||
# $example off$
|
||||
|
||||
sparkR.session.stop()
|
||||
|
||||
|
|
42
examples/src/main/r/ml/svmLinear.R
Normal file
42
examples/src/main/r/ml/svmLinear.R
Normal file
|
@ -0,0 +1,42 @@
|
|||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
# To run this example use
|
||||
# ./bin/spark-submit examples/src/main/r/ml/svmLinear.R
|
||||
|
||||
# Load SparkR library into your R session
|
||||
library(SparkR)
|
||||
|
||||
# Initialize SparkSession
|
||||
sparkR.session(appName = "SparkR-ML-svmLinear-example")
|
||||
|
||||
# $example on$
|
||||
# load training data
|
||||
t <- as.data.frame(Titanic)
|
||||
training <- createDataFrame(t)
|
||||
|
||||
# fit Linear SVM model
|
||||
model <- spark.svmLinear(training, Survived ~ ., regParam = 0.01, maxIter = 10)
|
||||
|
||||
# Model summary
|
||||
summary(model)
|
||||
|
||||
# Prediction
|
||||
prediction <- predict(model, training)
|
||||
showDF(prediction)
|
||||
# $example off$
|
||||
sparkR.session.stop()
|
Loading…
Reference in a new issue