Repository: spark
Updated Branches:
  refs/heads/master 10b671447 -> af2a4b082


[SPARK-15129][R][DOC] R API changes in ML

## What changes were proposed in this pull request?

Make user guide changes to SparkR documentation for all changes that happened 
in 2.0 to Machine Learning APIs

Author: GayathriMurali <gayathr...@intel.com>

Closes #13285 from GayathriMurali/SPARK-15129.


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/af2a4b08
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/af2a4b08
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/af2a4b08

Branch: refs/heads/master
Commit: af2a4b0826b2358c0fe75c3e4d7fd8f7bccdd8e5
Parents: 10b6714
Author: GayathriMurali <gayathr...@intel.com>
Authored: Fri Jun 17 21:10:29 2016 -0700
Committer: Xiangrui Meng <m...@databricks.com>
Committed: Fri Jun 17 21:10:29 2016 -0700

----------------------------------------------------------------------
 docs/sparkr.md           | 77 +++++++++++--------------------------------
 examples/src/main/r/ml.R |  4 +--
 2 files changed, 21 insertions(+), 60 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/spark/blob/af2a4b08/docs/sparkr.md
----------------------------------------------------------------------
diff --git a/docs/sparkr.md b/docs/sparkr.md
index 59e486d..961bd32 100644
--- a/docs/sparkr.md
+++ b/docs/sparkr.md
@@ -285,71 +285,32 @@ head(teenagers)
 
 # Machine Learning
 
-SparkR allows the fitting of generalized linear models over DataFrames using 
the [glm()](api/R/glm.html) function. Under the hood, SparkR uses MLlib to 
train a model of the specified family. Currently the gaussian and binomial 
families are supported. We support a subset of the available R formula 
operators for model fitting, including '~', '.', ':', '+', and '-'.
+SparkR supports the following Machine Learning algorithms.
 
-The [summary()](api/R/summary.html) function gives the summary of a model 
produced by [glm()](api/R/glm.html).
+* Generalized Linear Regression Model [spark.glm()](api/R/spark.glm.html)
+* Naive Bayes [spark.naiveBayes()](api/R/spark.naiveBayes.html)
+* KMeans [spark.kmeans()](api/R/spark.kmeans.html)
+* AFT Survival Regression [spark.survreg()](api/R/spark.survreg.html)
 
-* For gaussian GLM model, it returns a list with 'devianceResiduals' and 
'coefficients' components. The 'devianceResiduals' gives the min/max deviance 
residuals of the estimation; the 'coefficients' gives the estimated 
coefficients and their estimated standard errors, t values and p-values. (It 
only available when model fitted by normal solver.)
-* For binomial GLM model, it returns a list with 'coefficients' component 
which gives the estimated coefficients.
+[Generalized Linear Regression](api/R/spark.glm.html) can be used to train a 
model from a specified family. Currently the Gaussian, Binomial, Poisson and 
Gamma families are supported. We support a subset of the available R formula 
operators for model fitting, including '~', '.', ':', '+', and '-'.
 
-The examples below show the use of building gaussian GLM model and binomial 
GLM model using SparkR.
+The [summary()](api/R/summary.html) function gives the summary of a model 
produced by different algorithms listed above.
+It produces the similar result compared with R summary function.
 
-## Gaussian GLM model
+## Model persistence
 
-<div data-lang="r"  markdown="1">
-{% highlight r %}
-# Create the DataFrame
-df <- createDataFrame(sqlContext, iris)
-
-# Fit a gaussian GLM model over the dataset.
-model <- glm(Sepal_Length ~ Sepal_Width + Species, data = df, family = 
"gaussian")
-
-# Model summary are returned in a similar format to R's native glm().
-summary(model)
-##$devianceResiduals
-## Min       Max     
-## -1.307112 1.412532
-##
-##$coefficients
-##                   Estimate  Std. Error t value  Pr(>|t|)    
-##(Intercept)        2.251393  0.3697543  6.08889  9.568102e-09
-##Sepal_Width        0.8035609 0.106339   7.556598 4.187317e-12
-##Species_versicolor 1.458743  0.1121079  13.01195 0           
-##Species_virginica  1.946817  0.100015   19.46525 0           
-
-# Make predictions based on the model.
-predictions <- predict(model, newData = df)
-head(select(predictions, "Sepal_Length", "prediction"))
-##  Sepal_Length prediction
-##1          5.1   5.063856
-##2          4.9   4.662076
-##3          4.7   4.822788
-##4          4.6   4.742432
-##5          5.0   5.144212
-##6          5.4   5.385281
-{% endhighlight %}
-</div>
+* [write.ml](api/R/write.ml.html) allows users to save a fitted model in a 
given input path
+* [read.ml](api/R/read.ml.html) allows users to read/load the model which was 
saved using write.ml in a given path
 
-## Binomial GLM model
+Model persistence is supported for all Machine Learning algorithms for all 
families.
 
-<div data-lang="r"  markdown="1">
-{% highlight r %}
-# Create the DataFrame
-df <- createDataFrame(sqlContext, iris)
-training <- filter(df, df$Species != "setosa")
-
-# Fit a binomial GLM model over the dataset.
-model <- glm(Species ~ Sepal_Length + Sepal_Width, data = training, family = 
"binomial")
-
-# Model coefficients are returned in a similar format to R's native glm().
-summary(model)
-##$coefficients
-##               Estimate
-##(Intercept)  -13.046005
-##Sepal_Length   1.902373
-##Sepal_Width    0.404655
-{% endhighlight %}
-</div>
+The examples below show how to build several models:
+* GLM using the Gaussian and Binomial model families
+* AFT survival regression model
+* Naive Bayes model
+* K-Means model
+
+{% include_example r/ml.R %}
 
 # R Function Name Conflicts
 

http://git-wip-us.apache.org/repos/asf/spark/blob/af2a4b08/examples/src/main/r/ml.R
----------------------------------------------------------------------
diff --git a/examples/src/main/r/ml.R b/examples/src/main/r/ml.R
index fd35936..495f392 100644
--- a/examples/src/main/r/ml.R
+++ b/examples/src/main/r/ml.R
@@ -25,6 +25,7 @@ library(SparkR)
 sc <- sparkR.init(appName="SparkR-ML-example")
 sqlContext <- sparkRSQL.init(sc)
 
+# $example on$
 ############################ spark.glm and glm 
##############################################
 
 irisDF <- suppressWarnings(createDataFrame(sqlContext, iris))
@@ -57,7 +58,6 @@ binomialPredictions <- predict(binomialGLM, binomialTestDF)
 showDF(binomialPredictions)
 
 ############################ spark.survreg 
##############################################
-
 # Use the ovarian dataset available in R survival package
 library(survival)
 
@@ -121,7 +121,7 @@ gaussianGLM <- spark.glm(gaussianDF, Sepal_Length ~ 
Sepal_Width + Species, famil
 modelPath <- tempfile(pattern = "ml", fileext = ".tmp")
 write.ml(gaussianGLM, modelPath)
 gaussianGLM2 <- read.ml(modelPath)
-
+# $example off$
 # Check model summary
 summary(gaussianGLM2)
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org
For additional commands, e-mail: commits-h...@spark.apache.org

Reply via email to