Author: apalumbo
Date: Fri Mar 20 03:45:54 2015
New Revision: 1667926
URL: http://svn.apache.org/r1667926
Log:
Reorganize dropdown Menus to Mahout Environment, Algorithms, Mahout MapReduce
Modified:
mahout/site/mahout_cms/trunk/content/users/algorithms/d-qr.mdtext
mahout/site/mahout_cms/trunk/content/users/algorithms/spark-naive-bayes.mdtext
mahout/site/mahout_cms/trunk/content/users/basics/algorithms.mdtext
mahout/site/mahout_cms/trunk/content/users/basics/quickstart.mdtext
mahout/site/mahout_cms/trunk/templates/standard.html
Modified: mahout/site/mahout_cms/trunk/content/users/algorithms/d-qr.mdtext
URL:
http://svn.apache.org/viewvc/mahout/site/mahout_cms/trunk/content/users/algorithms/d-qr.mdtext?rev=1667926&r1=1667925&r2=1667926&view=diff
==============================================================================
--- mahout/site/mahout_cms/trunk/content/users/algorithms/d-qr.mdtext (original)
+++ mahout/site/mahout_cms/trunk/content/users/algorithms/d-qr.mdtext Fri Mar
20 03:45:54 2015
@@ -11,7 +11,7 @@ For the classic QR decomposition of the
-## Implementations
+## Implementation
Mahout `dqrThin(...)` is implemented in the mahout `math-scala` algebraic
optimizer which translates Mahout's R-like linear algebra operators into a
physical plan for both Spark and H2O distributed engines.
Modified:
mahout/site/mahout_cms/trunk/content/users/algorithms/spark-naive-bayes.mdtext
URL:
http://svn.apache.org/viewvc/mahout/site/mahout_cms/trunk/content/users/algorithms/spark-naive-bayes.mdtext?rev=1667926&r1=1667925&r2=1667926&view=diff
==============================================================================
---
mahout/site/mahout_cms/trunk/content/users/algorithms/spark-naive-bayes.mdtext
(original)
+++
mahout/site/mahout_cms/trunk/content/users/algorithms/spark-naive-bayes.mdtext
Fri Mar 20 03:45:54 2015
@@ -1,15 +1,15 @@
-# Naive Bayes
+# Spark Naive Bayes
## Intro
-Mahout currently has two Naive Bayes implementations. The first is standard
Multinomial Naive Bayes. The second is an implementation of Transformed
Weight-normalized Complement Naive Bayes as introduced by Rennie et al.
[[1]](http://people.csail.mit.edu/jrennie/papers/icml03-nb.pdf). We refer to
the former as Bayes and the latter as CBayes.
+Mahout currently has two flavors of Naive Bayes. The first is standard
Multinomial Naive Bayes. The second is an implementation of Transformed
Weight-normalized Complement Naive Bayes as introduced by Rennie et al.
[[1]](http://people.csail.mit.edu/jrennie/papers/icml03-nb.pdf). We refer to
the former as Bayes and the latter as CBayes.
Where Bayes has long been a standard in text classification, CBayes is an
extension of Bayes that performs particularly well on datasets with skewed
classes and has been shown to be competitive with algorithms of higher
complexity such as Support Vector Machines.
## Implementations
-Both Bayes and CBayes are currently trained via MapReduce Jobs. Testing and
classification can be done via a MapReduce Job or sequentially. Mahout
provides CLI drivers for preprocessing, training and testing. A Spark
implementation is currently in the works
([MAHOUT-1493](https://issues.apache.org/jira/browse/MAHOUT-1493)).
+The mahout `math-scala` library has an implemetation of both Bayes and CBayes
which is further optimized in the `spark` module. Currently the Spark optimized
version provides CLI drivers for training and testing. Mahout Spark-Naive-Bayes
models can also be trained, tested and saved to the filesystem from the Mahout
Spark Shell.
## Preprocessing and Algorithm
@@ -42,7 +42,7 @@ Mahout provides CLI drivers for all abov
- **Preprocessing:**
For a set of Sequence File Formatted documents in PATH_TO_SEQUENCE_FILES the
[mahout
seq2sparse](https://mahout.apache.org/users/basics/creating-vectors-from-text.html)
command performs the TF-IDF transformations (-wt tfidf option) and L2 length
normalization (-n 2 option) as follows:
- mahout seq2sparse
+ $ mahout seq2sparse
-i ${PATH_TO_SEQUENCE_FILES}
-o ${PATH_TO_TFIDF_VECTORS}
-nv
@@ -50,32 +50,30 @@ For a set of Sequence File Formatted doc
-wt tfidf
- **Training:**
-The model is then trained using `mahout spark-trainnb` . The default is to
train a Bayes model. The -c option is given to train a CBayes model:
+The model is then trained using `mahout spark-trainnb`. The default is to
train a Bayes model. The -c option is given to train a CBayes model:
- mahout spark-trainnb
+ $ mahout spark-trainnb
-i ${PATH_TO_TFIDF_VECTORS}
- -el
- -o ${PATH_TO_MODEL}/model
- -li ${PATH_TO_MODEL}/labelindex
+ -o ${PATH_TO_MODEL}
-ow
-c
- **Label Assignment/Testing:**
-Classification and testing on a holdout set can then be performed via `mahout
testnb`. Again, the -c option indicates that the model is CBayes. The -seq
option tells `mahout testnb` to run sequentially:
+Classification and testing on a holdout set can then be performed via `mahout
spark-testnb`. Again, the -c option indicates that the model is CBayes:
- mahout spark-testnb
+ $ mahout spark-testnb
-i ${PATH_TO_TFIDF_TEST_VECTORS}
- -m ${PATH_TO_MODEL}/model
+ -m ${PATH_TO_MODEL}
-ow
-c
## Command line options
-- **Preprocessing:**
+- **Preprocessing:** *note: still reliant on MapReduce seq2sparse*
Only relevant parameters used for Bayes/CBayes as detailed above are shown.
Several other transformations can be performed by `mahout seq2sparse` and used
as input to Bayes/CBayes. For a full list of `mahout seq2Sparse` options see
the [Creating vectors from
text](https://mahout.apache.org/users/basics/creating-vectors-from-text.html)
page.
- mahout seq2sparse
+ $ mahout seq2sparse
--output (-o) output The directory pathname for output.
--input (-i) input Path to job input directory.
--weight (-wt) weight The kind of weight to use.
Currently TF
@@ -93,46 +91,24 @@ Classification and testing on a holdout
- **Training:**
- mahout trainnb
+ $ mahout spark-trainnb
--input (-i) input Path to job input directory.
--output (-o) output The directory pathname for output.
- --labels (-l) labels Comma-separated list of labels to
include in
- training
- --extractLabels (-el) Extract the labels from the input
--alphaI (-a) alphaI Smoothing parameter. Default is 1.0
+ --overwrite (-ow) If present, overwrite the output
directory. Default is false.
--trainComplementary (-c) Train complementary? Default is
false.
- --labelIndex (-li) labelIndex The path to store the label index
in
- --overwrite (-ow) If present, overwrite the output
directory
- before running job
--help (-h) Print out help
- --tempDir tempDir Intermediate output directory
- --startPhase startPhase First phase to run
- --endPhase endPhase Last phase to run
- **Testing:**
- mahout testnb
+ $ mahout spark-testnb
--input (-i) input Path to job input directory.
--output (-o) output The directory pathname for output.
- --overwrite (-ow) If present, overwrite the output
directory
- before running job
-
-
- --model (-m) model The path to the model built during
training
+ --model (-m) model The path to the model built during
training.
+ --overwrite (-ow) If present, overwrite the output
directory
--testComplementary (-c) Test complementary? Default is
false.
- --runSequential (-seq) Run sequential?
- --labelIndex (-l) labelIndex The path to the location of the
label index
--help (-h) Print out help
- --tempDir tempDir Intermediate output directory
- --startPhase startPhase First phase to run
- --endPhase endPhase Last phase to run
-
-
-## Examples
-
-Mahout provides an example for Naive Bayes classification:
-1. [Classify 20 Newsgroups](twenty-newsgroups.html)
## References
Modified: mahout/site/mahout_cms/trunk/content/users/basics/algorithms.mdtext
URL:
http://svn.apache.org/viewvc/mahout/site/mahout_cms/trunk/content/users/basics/algorithms.mdtext?rev=1667926&r1=1667925&r2=1667926&view=diff
==============================================================================
--- mahout/site/mahout_cms/trunk/content/users/basics/algorithms.mdtext
(original)
+++ mahout/site/mahout_cms/trunk/content/users/basics/algorithms.mdtext Fri Mar
20 03:45:54 2015
@@ -8,31 +8,31 @@ Title: Algorithms
| | **Single Machine** |
[**MapReduce**](http://hadoop.apache.org/docs/r1.2.1/mapred_tutorial.html)|
[**Spark**](https://spark.apache.org/) | [**H2O**](http://0xdata.com/) |
[**Flink**](https://flink.incubator.apache.org/)
---------------------------------------------|:----------------:|:-----------:|:------:|:---:|:----:|
**Mahout Math-Scala Core Library and Scala DSL**|
-| [Mahout Distributed BLAS. Distributed Row Matrix API with R and Matlab
like operators. Distributed ALS, SPCA, SSVD, thin-QR. Similarity
Analysis](http://mahout.apache.org/users/sparkbindings/home.html). | | |
[x](https://mahout.apache.org/users/sparkbindings/ScalaSparkBindings.pdf) |
[x](https://github.com/apache/mahout/tree/master/h2o) |[*in
development*](https://github.com/tillrohrmann/mahout/tree/flink-bindings/flink)|
+| [Mahout Distributed BLAS. Distributed Row Matrix API with R and Matlab
like operators. Distributed ALS, SPCA, SSVD, thin-QR. Similarity
Analysis](http://mahout.apache.org/users/sparkbindings/home.html). | | |
[x](https://mahout.apache.org/users/sparkbindings/ScalaSparkBindings.pdf) |
[x](https://github.com/apache/mahout/tree/master/h2o) |[*in
development*](https://issues.apache.org/jira/browse/MAHOUT-1570)|
||
**Mahout Interactive Shell**|
| [Interactive REPL shell for Spark optimized Mahout
DSL](http://mahout.apache.org/users/sparkbindings/play-with-shell.html) | | | x
|
||
**Collaborative Filtering** *with CLI Drivers*|
- User-Based Collaborative Filtering | x |
|[x](https://github.com/apache/mahout/blob/master/spark/src/test/scala/org/apache/mahout/drivers/RowSimilarityDriverSuite.scala)
- Item-Based Collaborative Filtering | x |
[x](https://mahout.apache.org/users/recommender/intro-itembased-hadoop.html) |
[x](https://mahout.apache.org/users/recommender/intro-cooccurrence-spark.html) |
- Matrix Factorization with ALS | x |
[x](https://mahout.apache.org/users/recommender/intro-als-hadoop.html) | |
- Matrix Factorization with ALS on Implicit Feedback | x |
[x](https://mahout.apache.org/users/recommender/intro-als-hadoop.html) | |
+ User-Based Collaborative Filtering | x |
|[x](https://mahout.apache.org/users/algorithms/intro-cooccurrence-spark.html)
+ Item-Based Collaborative Filtering | x |
[x](https://mahout.apache.org/users/mapreduce/recommender/intro-itembased-hadoop.html)
|
[x](https://mahout.apache.org/users/algorithms/intro-cooccurrence-spark.html) |
+ Matrix Factorization with ALS | x |
[x](https://mahout.apache.org/users/mapreduce/recommender/intro-als-hadoop.html)
| |
+ Matrix Factorization with ALS on Implicit Feedback | x |
[x](https://mahout.apache.org/users/mapreduce/recommender/intro-als-hadoop.html)
| |
Weighted Matrix Factorization, SVD++ | x | |
||
**Classification** *with CLI Drivers*| | |
- Logistic Regression - trained via SGD |
[x](http://mahout.apache.org/users/classification/logistic-regression.html) |
- Naive Bayes / Complementary Naive Bayes | |
[x](https://mahout.apache.org/users/classification/bayesian.html) |
[x](https://issues.apache.org/jira/browse/MAHOUT-1493) | *in development*
- Random Forest | |
[x](https://mahout.apache.org/users/classification/partial-implementation.html)|
- Hidden Markov Models |
[x](https://mahout.apache.org/users/classification/hidden-markov-models.html) |
+ Logistic Regression - trained via SGD |
[x](http://mahout.apache.org/users/mapreduce/classification/logistic-regression.html)
|
+ Naive Bayes / Complementary Naive Bayes | |
[x](https://mahout.apache.org/users/mapreduce/classification/bayesian.html) |
[x](https://mahout.apache.org/users/algorithms/spark-naive-bayes.html) |
+ Random Forest | |
[x](https://mahout.apache.org/users/mapreduce/classification/partial-implementation.html)|
+ Hidden Markov Models |
[x](https://mahout.apache.org/users/mapreduce/classification/hidden-markov-models.html)
|
Multilayer Perceptron | x |
||
**Clustering** *with CLI Drivers*||
- Canopy Clustering |
[*deprecated*](https://mahout.apache.org/users/clustering/canopy-clustering.html)
|
[*deprecated*](https://mahout.apache.org/users/clustering/canopy-clustering.html)|
- k-Means Clustering |
[x](https://mahout.apache.org/users/clustering/k-means-clustering.html) |
[x](https://mahout.apache.org/users/clustering/k-means-clustering.html) |
- Fuzzy k-Means |
[x](https://mahout.apache.org/users/clustering/fuzzy-k-means.html) |
[x](https://mahout.apache.org/users/clustering/fuzzy-k-means.html)|
- Streaming k-Means |
[x](https://mahout.apache.org/users/clustering/streaming-k-means.html) |
[x](https://mahout.apache.org/users/clustering/streaming-k-means.html) |
- Spectral Clustering | |
[x](https://mahout.apache.org/users/clustering/spectral-clustering.html) |
+ Canopy Clustering |
[*deprecated*](https://mahout.apache.org/users/mapreduce/clustering/canopy-clustering.html)
|
[*deprecated*](https://mahout.apache.org/users/mapreduce/clustering/canopy-clustering.html)|
+ k-Means Clustering |
[x](https://mahout.apache.org/users/mapreduce/clustering/k-means-clustering.html)
|
[x](https://mahout.apache.org/users/mapreduce/clustering/k-means-clustering.html)
|
+ Fuzzy k-Means |
[x](https://mahout.apache.org/users/mapreduce/clustering/fuzzy-k-means.html) |
[x](https://mahout.apache.org/users/mapreduce/clustering/fuzzy-k-means.html)|
+ Streaming k-Means |
[x](https://mahout.apache.org/users/mapreduce/clustering/streaming-k-means.html)
|
[x](https://mahout.apache.org/users/mapreduce/clustering/streaming-k-means.html)
|
+ Spectral Clustering | |
[x](https://mahout.apache.org/users/mapreduce/clustering/spectral-clustering.html)
|
||
**Dimensionality Reduction** *with CLI Drivers - note: most scala-based
dimensionality reduction algorithms are available through the [Mahout
Math-Scala Core Library for all
engines](https://mahout.apache.org/users/sparkbindings/home.html)*||
Singular Value Decomposition | x | x | |
Modified: mahout/site/mahout_cms/trunk/content/users/basics/quickstart.mdtext
URL:
http://svn.apache.org/viewvc/mahout/site/mahout_cms/trunk/content/users/basics/quickstart.mdtext?rev=1667926&r1=1667925&r2=1667926&view=diff
==============================================================================
--- mahout/site/mahout_cms/trunk/content/users/basics/quickstart.mdtext
(original)
+++ mahout/site/mahout_cms/trunk/content/users/basics/quickstart.mdtext Fri Mar
20 03:45:54 2015
@@ -15,7 +15,7 @@ If you would like to import the latest r
<dependency>
<groupId>org.apache.mahout</groupId>
- <artifactId>mahout-core</artifactId>
+ <artifactId>mahout-mrlegacy</artifactId>
<version>0.9</version>
</dependency>
@@ -26,21 +26,21 @@ Mahout has prepared a bunch of examples
#### Recommendations
-Check the [Recommender Quickstart](/users/recommender/quickstart.html) or the
tutorial on [creating a userbased recommender in 5
minutes](/users/recommender/userbased-5-minutes.html).
+Check the [Recommender
Quickstart](/users/mapreduce/recommender/quickstart.html) or the tutorial on
[creating a userbased recommender in 5
minutes](/users/recommender/userbased-5-minutes.html).
If you are building a recommender system for the first time, please also refer
to a list of [Dos and
Don'ts](/users/recommender/recommender-first-timer-faq.html) that might be
helpful.
#### Clustering
-Check the [Synthetic
data](/users/clustering/clustering-of-synthetic-control-data.html) example.
+Check the [Synthetic
data](/users/mapreduce/clustering/clustering-of-synthetic-control-data.html)
example.
#### Classification
-If you are interested in how to train a **Naive Bayes** model, look at the [20
newsgroups](/users/classification/twenty-newsgroups.html) example.
+If you are interested in how to train a **Naive Bayes** model, look at the [20
newsgroups](/users/mapreduce/classification/twenty-newsgroups.html) example.
-If you plan to build a **Hidden Markov Model** for speech recognition, the
example [here](/users/classification/hidden-markov-models.html) might be
instructive.
+If you plan to build a **Hidden Markov Model** for speech recognition, the
example [here](/users/mapreduce/classification/hidden-markov-models.html) might
be instructive.
-Or you could build a **Random Forest** model by following this [quick start
page](/users/classification/partial-implementation.html).
+Or you could build a **Random Forest** model by following this [quick start
page](/users/mapreduce/classification/partial-implementation.html).
#### Working with Text
Modified: mahout/site/mahout_cms/trunk/templates/standard.html
URL:
http://svn.apache.org/viewvc/mahout/site/mahout_cms/trunk/templates/standard.html?rev=1667926&r1=1667925&r2=1667926&view=diff
==============================================================================
--- mahout/site/mahout_cms/trunk/templates/standard.html (original)
+++ mahout/site/mahout_cms/trunk/templates/standard.html Fri Mar 20 03:45:54
2015
@@ -155,61 +155,63 @@
<li><a
href="/users/clustering/latent-dirichlet-allocation.html">Latent Dirichlet
Allocation</a></li>
</ul>
</li>
- <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Spark<b class="caret"></b></a>
+ <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Mahout Environment<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/users/sparkbindings/home.html">Scala &
Spark Bindings Overview</a></li>
- <li><a
href="/users/sparkbindings/play-with-shell.html">Playing with Mahout's Spark
Shell</a></li>
- <li><a href="/users/algorithms/d-qr.html">Distributed
QR</a></li>
- <li class="divider"></li>
+ <li><a
href="/users/sparkbindings/play-with-shell.html">Playing with Mahout's Spark
Shell</a></li>
+ <li class="divider"></li>
<li><a href="/users/sparkbindings/faq.html">FAQ</a></li>
</ul>
</li>
- <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Classification<b class="caret"></b></a>
+ <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Algorithms<b class="caret"></b></a>
+ <ul class="dropdown-menu">
+ <li class="nav-header">Matrix Decomposition</li>
+ <li><a href="/users/algorithms/d-qr.html">Distributed
QR</a></li>
+ <li class="nav-header">Recommendations</li>
+ <li><a
href="/users/algorithms/intro-cooccurrence-spark.html">Intro to
cooccurrence-based<br/> recommendations with Spark</a></li>
+ <li class="nav-header">Classification</li>
+ <li><a href="/users/algorithms/spark-naive-bayes.html">Spark
Naive Bayes</a></li>
+ </ul>
+ </li>
+ <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Mahout MapReduce<b class="caret"></b></a>
<ul class="dropdown-menu">
+ <li class="nav-header">Classification</li>
<li><a
href="/users/mapreduce/classification/bayesian.html">Naive Bayes</a></li>
<li><a
href="/users/mapreduce/classification/hidden-markov-models.html">Hidden Markov
Models</a></li>
<li><a
href="/users/mapreduce/classification/logistic-regression.html">Logistic
Regression</a></li>
<li><a
href="/users/mapreduce/classification/partial-implementation.html">Random
Forest</a></li>
-
- <li class="divider"></li>
- <li class="nav-header">Examples</li>
+ <li class="nav-header">Classification Examples</li>
<li><a
href="/users/mapreduce/classification/breiman-example.html">Breiman
example</a></li>
<li><a
href="/users/mapreduce/classification/twenty-newsgroups.html">20 newsgroups
example</a></li>
- </ul></li>
- <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Clustering<b class="caret"></b></a>
- <ul class="dropdown-menu">
- <li><a
href="/users/mapreduce/clustering/k-means-clustering.html">k-Means</a></li>
- <li><a
href="/users/mapreduce/clustering/canopy-clustering.html">Canopy</a></li>
- <li><a
href="/users/mapreduce/clustering/fuzzy-k-means.html">Fuzzy k-Means</a></li>
- <li><a
href="/users/mapreduce/clustering/streaming-k-means.html">Streaming
KMeans</a></li>
- <li><a
href="/users/mapreduce/clustering/spectral-clustering.html">Spectral
Clustering</a></li>
- <li class="divider"></li>
- <li class="nav-header">Commandline usage</li>
- <li><a
href="/users/mapreduce/clustering/k-means-commandline.html">Options for
k-Means</a></li>
- <li><a
href="/users/mapreduce/clustering/canopy-commandline.html">Options for
Canopy</a></li>
- <li><a
href="/users/mapreduce/clustering/fuzzy-k-means-commandline.html">Options for
Fuzzy k-Means</a></li>
- <li class="divider"></li>
- <li class="nav-header">Examples</li>
- <li><a
href="/users/mapreduce/clustering/clustering-of-synthetic-control-data.html">Synthetic
data</a></li>
- <li class="divider"></li>
- <li class="nav-header">Post processing</li>
- <li><a
href="/users/mapreduce/clustering/cluster-dumper.html">Cluster Dumper
tool</a></li>
- <li><a
href="/users/mapreduce/clustering/visualizing-sample-clusters.html">Cluster
visualisation</a></li>
- </ul></li>
- <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Recommendations<b class="caret"></b></a>
+ <li class="nav-header">Clustering</li>
+ <li><a
href="/users/mapreduce/clustering/k-means-clustering.html">k-Means</a></li>
+ <li><a
href="/users/mapreduce/clustering/canopy-clustering.html">Canopy</a></li>
+ <li><a
href="/users/mapreduce/clustering/fuzzy-k-means.html">Fuzzy k-Means</a></li>
+ <li><a
href="/users/mapreduce/clustering/streaming-k-means.html">Streaming
KMeans</a></li>
+ <li><a
href="/users/mapreduce/clustering/spectral-clustering.html">Spectral
Clustering</a></li>
+ <li class="nav-header">Clustering Commandline usage</li>
+ <li><a
href="/users/mapreduce/clustering/k-means-commandline.html">Options for
k-Means</a></li>
+ <li><a
href="/users/mapreduce/clustering/canopy-commandline.html">Options for
Canopy</a></li>
+ <li><a
href="/users/mapreduce/clustering/fuzzy-k-means-commandline.html">Options for
Fuzzy k-Means</a></li>
+ <li class="nav-header">Clustering Examples</li>
+ <li><a
href="/users/mapreduce/clustering/clustering-of-synthetic-control-data.html">Synthetic
data</a></li>
+ <li class="nav-header">Cluster Post processing</li>
+ <li><a
href="/users/mapreduce/clustering/cluster-dumper.html">Cluster Dumper
tool</a></li>
+ <li><a
href="/users/mapreduce/clustering/visualizing-sample-clusters.html">Cluster
visualisation</a></li>
+ <li class="nav-header">Recommendations</li>
+ <li><a
href="/users/mapreduce/recommender/quickstart.html">Quickstart</a></li>
+ <li><a
href="/users/mapreduce/recommender/recommender-first-timer-faq.html">First
Timer FAQ</a></li>
+ <li><a
href="/users/mapreduce/recommender/userbased-5-minutes.html">A user-based
recommender <br/>in 5 minutes</a></li>
+ <li><a
href="/users/mapreduce/recommender/matrix-factorization.html">Matrix
factorization-based<br/> recommenders</a></li>
+ <li><a
href="/users/mapreduce/recommender/recommender-documentation.html">Overview</a></li>
+ <li><a
href="/users/mapreduce/recommender/intro-itembased-hadoop.html">Intro to
item-based recommendations<br/> with Hadoop</a></li>
+ <li><a
href="/users/mapreduce/recommender/intro-als-hadoop.html">Intro to ALS
recommendations<br/> with Hadoop</a></li>
+ </ul>
+ </li>
+ <!-- <li class="dropdown"> <a href="#" class="dropdown-toggle"
data-toggle="dropdown">Recommendations<b class="caret"></b></a>
<ul class="dropdown-menu">
- <li><a
href="/users/mapreduce/recommender/quickstart.html">Quickstart</a></li>
- <li><a
href="/users/mapreduce/recommender/recommender-first-timer-faq.html">First
Timer FAQ</a></li>
- <li><a
href="/users/mapreduce/recommender/userbased-5-minutes.html">A user-based
recommender <br/>in 5 minutes</a></li>
- <li><a
href="/users/mapreduce/recommender/matrix-factorization.html">Matrix
factorization-based<br/> recommenders</a></li>
- <li><a
href="/users/mapreduce/recommender/recommender-documentation.html">Overview</a></li>
- <li class="divider"></li>
- <li class="nav-header">Hadoop</li>
- <li><a
href="/users/mapreduce/recommender/intro-itembased-hadoop.html">Intro to
item-based recommendations<br/> with Hadoop</a></li>
- <li><a
href="/users/mapreduce/recommender/intro-als-hadoop.html">Intro to ALS
recommendations<br/> with Hadoop</a></li>
- <li class="nav-header">Spark</li>
- <li><a
href="/users/mapreduce/recommender/intro-cooccurrence-spark.html">Intro to
cooccurrence-based<br/> recommendations with Spark</a></li>
- </ul>
+
+ </ul> -->
</li>
</ul>
</div><!--/.nav-collapse -->