1.建立crossvalidator
val crossval = new crossvalidator()第乙個是pipeline程式.setestimator(pipeline)
.setevaluator(new binaryclassificationevaluator)
第二個是模型的求值函式
2.pipeline以前構造過,這裡省過
3.這裡值得學習的是ml api提供了乙個幫助我們尋找最佳引數的api
val paramgrid = new paramgridbuilder()我們通過addgrid新增我們需要尋找的最佳引數.addgrid(hashingtf.numfeatures, array(10, 100, 1000))
.addgrid(lr.regparam, array(0.1, 0.01))
.build()
接著往crossval新增
crossval.setestimatorparammaps(paramgrid)crossval.setnumfolds(2) // use 3+ in practice
// run cross-validation, and choose the best set of parameters.4.驗證val cvmodel = crossval.fit(training.todf())
cvmodel.transform(test.todf()).select("id", "text", "probability", "prediction")
.collect()
.foreach
兩陣列的交 和 兩陣列的交
題目描述 計算兩個陣列的交 解題思路 這兩個題我放在一起了,只要會兩個陣列的交就行了,兩個陣列的交 幾乎一樣,就是刪了一點 先分別對兩個陣列排序,然後分別比較兩個陣列的元素,如果有相同的元素插入到新的陣列裡,將這個數儲存起來,用於後面去掉重的元素,如果兩個元素不一樣,繼續比較剩下的元素。兩個陣列的交...
矩形的並和交
給定乙個矩形的左下角座標和右上角座標分別為 x1,y1 x2,y2 對這樣的乙個矩形,我們構造兩條線段,一條定位在x1,它在y座標的區間是 y1,y2 並且給定乙個cover域值為1 另一條線段定位在x2,區間一樣是 y1,y2 給定它乙個cover值為 1。根據這樣的方法對每個矩形都構造兩個線段,...
兩陣列的交
返回兩個陣列的交 樣例nums1 1,2,2,1 nums2 2,2 返回 2 先排序,從nums1陣列中取數判斷時,若nums1 i nums2 j 才繼續遍歷nums2,並用乙個k值記錄nums2中比nums1 i 1 小的最大數的角標,下次判斷nums i 時nums2從k值開始取。class...