[ https://issues.apache.org/jira/browse/FLINK-9664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16573225#comment-16573225 ]
ASF GitHub Bot commented on FLINK-9664: --------------------------------------- azagrebin commented on a change in pull request #6425: [FLINK-9664][Doc] fixing documentation in ML quick start URL: https://github.com/apache/flink/pull/6425#discussion_r208576999 ########## File path: docs/dev/libs/ml/quickstart.md ########## @@ -129,6 +129,10 @@ and the [test set here](http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/b This is an astroparticle binary classification dataset, used by Hsu et al. [[3]](#hsu) in their practical Support Vector Machine (SVM) guide. It contains 4 numerical features, and the class label. +Before importing the traning and test dataset, Flink SVM only supports threshold binary values of +`+1.0` and `-1.0`. Thus a conversion is needed upon downloading the svmguide1 dataset since it is +labelled using `1`s and `0`s. + Review comment: I think this section belongs to the beginning of the next one `Classification`, because this one is about LibSVM format. The code example of conversion could be also provided to make the example fully 'copy-paste' runnable. Small thing is also typo in `traning` -> `training`. I would suggest to modify the code example in this `LibSVM files` section like this: ``` val astroTrainLibSVM: DataSet[LabeledVector] = MLUtils.readLibSVM(env, "/path/to/svmguide1") val astroTestLibSVM: DataSet[LabeledVector] = MLUtils.readLibSVM(env, "/path/to/svmguide1.t") ``` to have no SVM training specifics here, and add something like this to the beginning of the `Classification` section: _... After importing the training and test dataset, the data needs to be prepared for the classification, because Flink SVM only supports ... conversion is needed after downloading ..._ And then the code example: ``` def svmNormaliser : LabeledVector => LabeledVector = lv => LabeledVector(if (lv.label > 0.0) 1.0 else -1.0, lv.vector) val astroTrain: DataSet[LabeledVector] = astroTrainLibSVM.map(svmNormaliser) val astroTest: DataSet[(Vector, Double)] = astroTestLibSVM.map(svmNormaliser).map(x => (x.vector, x.label)) ``` ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > FlinkML Quickstart Loading Data section example doesn't work as described > ------------------------------------------------------------------------- > > Key: FLINK-9664 > URL: https://issues.apache.org/jira/browse/FLINK-9664 > Project: Flink > Issue Type: Bug > Components: Documentation, Machine Learning Library > Affects Versions: 1.5.0 > Reporter: Mano Swerts > Assignee: Rong Rong > Priority: Major > Labels: documentation-update, machine_learning, ml, > pull-request-available > Original Estimate: 1h > Remaining Estimate: 1h > > The ML documentation example isn't complete: > [https://ci.apache.org/projects/flink/flink-docs-release-1.5/dev/libs/ml/quickstart.html#loading-data] > The referred section loads data from an astroparticle binary classification > dataset to showcase SVM. The dataset uses 0 and 1 as labels, which doesn't > produce correct results. The SVM predictor expects -1 and 1 labels to > correctly predict the label. The documentation, however, doesn't mention > that. The example therefore doesn't work without a clue why. > The documentation should be updated with an explicit mention to -1 and 1 > labels and a mapping function that shows the conversion of the labels. -- This message was sent by Atlassian JIRA (v7.6.3#76005)