@@ -114,74 +114,125 @@ class PythonMLLibAPI extends Serializable {
114114 java.util.LinkedList [java.lang.Object ] = {
115115 val data = dataBytesJRDD.rdd.map(xBytes => {
116116 val x = deserializeDoubleVector(xBytes)
117- LabeledPoint (x(0 ), x.slice(1 , x.length))
117+ LabeledPoint (x(0 ), Vectors .dense( x.slice(1 , x.length) ))
118118 })
119119 val initialWeights = deserializeDoubleVector(initialWeightsBA)
120120 val model = trainFunc(data, initialWeights)
121121 val ret = new java.util.LinkedList [java.lang.Object ]()
122- ret.add(serializeDoubleVector(model.weights))
122+ ret.add(serializeDoubleVector(model.weights.toArray ))
123123 ret.add(model.intercept: java.lang.Double )
124124 ret
125125 }
126126
127127 /**
128128 * Java stub for Python mllib LinearRegressionWithSGD.train()
129129 */
130- def trainLinearRegressionModelWithSGD (dataBytesJRDD : JavaRDD [Array [Byte ]],
131- numIterations : Int , stepSize : Double , miniBatchFraction : Double ,
130+ def trainLinearRegressionModelWithSGD (
131+ dataBytesJRDD : JavaRDD [Array [Byte ]],
132+ numIterations : Int ,
133+ stepSize : Double ,
134+ miniBatchFraction : Double ,
132135 initialWeightsBA : Array [Byte ]): java.util.List [java.lang.Object ] = {
133- trainRegressionModel((data, initialWeights) =>
134- LinearRegressionWithSGD .train(data, numIterations, stepSize,
135- miniBatchFraction, initialWeights),
136- dataBytesJRDD, initialWeightsBA)
136+ trainRegressionModel(
137+ (data, initialWeights) =>
138+ LinearRegressionWithSGD .train(
139+ data,
140+ numIterations,
141+ stepSize,
142+ miniBatchFraction,
143+ Vectors .dense(initialWeights)),
144+ dataBytesJRDD,
145+ initialWeightsBA)
137146 }
138147
139148 /**
140149 * Java stub for Python mllib LassoWithSGD.train()
141150 */
142- def trainLassoModelWithSGD (dataBytesJRDD : JavaRDD [Array [Byte ]], numIterations : Int ,
143- stepSize : Double , regParam : Double , miniBatchFraction : Double ,
151+ def trainLassoModelWithSGD (
152+ dataBytesJRDD : JavaRDD [Array [Byte ]],
153+ numIterations : Int ,
154+ stepSize : Double ,
155+ regParam : Double ,
156+ miniBatchFraction : Double ,
144157 initialWeightsBA : Array [Byte ]): java.util.List [java.lang.Object ] = {
145- trainRegressionModel((data, initialWeights) =>
146- LassoWithSGD .train(data, numIterations, stepSize, regParam,
147- miniBatchFraction, initialWeights),
148- dataBytesJRDD, initialWeightsBA)
158+ trainRegressionModel(
159+ (data, initialWeights) =>
160+ LassoWithSGD .train(
161+ data,
162+ numIterations,
163+ stepSize,
164+ regParam,
165+ miniBatchFraction,
166+ Vectors .dense(initialWeights)),
167+ dataBytesJRDD,
168+ initialWeightsBA)
149169 }
150170
151171 /**
152172 * Java stub for Python mllib RidgeRegressionWithSGD.train()
153173 */
154- def trainRidgeModelWithSGD (dataBytesJRDD : JavaRDD [Array [Byte ]], numIterations : Int ,
155- stepSize : Double , regParam : Double , miniBatchFraction : Double ,
174+ def trainRidgeModelWithSGD (
175+ dataBytesJRDD : JavaRDD [Array [Byte ]],
176+ numIterations : Int ,
177+ stepSize : Double ,
178+ regParam : Double ,
179+ miniBatchFraction : Double ,
156180 initialWeightsBA : Array [Byte ]): java.util.List [java.lang.Object ] = {
157- trainRegressionModel((data, initialWeights) =>
158- RidgeRegressionWithSGD .train(data, numIterations, stepSize, regParam,
159- miniBatchFraction, initialWeights),
160- dataBytesJRDD, initialWeightsBA)
181+ trainRegressionModel(
182+ (data, initialWeights) =>
183+ RidgeRegressionWithSGD .train(
184+ data,
185+ numIterations,
186+ stepSize,
187+ regParam,
188+ miniBatchFraction,
189+ Vectors .dense(initialWeights)),
190+ dataBytesJRDD,
191+ initialWeightsBA)
161192 }
162193
163194 /**
164195 * Java stub for Python mllib SVMWithSGD.train()
165196 */
166- def trainSVMModelWithSGD (dataBytesJRDD : JavaRDD [Array [Byte ]], numIterations : Int ,
167- stepSize : Double , regParam : Double , miniBatchFraction : Double ,
197+ def trainSVMModelWithSGD (
198+ dataBytesJRDD : JavaRDD [Array [Byte ]],
199+ numIterations : Int ,
200+ stepSize : Double ,
201+ regParam : Double ,
202+ miniBatchFraction : Double ,
168203 initialWeightsBA : Array [Byte ]): java.util.List [java.lang.Object ] = {
169- trainRegressionModel((data, initialWeights) =>
170- SVMWithSGD .train(data, numIterations, stepSize, regParam,
171- miniBatchFraction, initialWeights),
172- dataBytesJRDD, initialWeightsBA)
204+ trainRegressionModel(
205+ (data, initialWeights) =>
206+ SVMWithSGD .train(
207+ data,
208+ numIterations,
209+ stepSize,
210+ regParam,
211+ miniBatchFraction,
212+ Vectors .dense(initialWeights)),
213+ dataBytesJRDD,
214+ initialWeightsBA)
173215 }
174216
175217 /**
176218 * Java stub for Python mllib LogisticRegressionWithSGD.train()
177219 */
178- def trainLogisticRegressionModelWithSGD (dataBytesJRDD : JavaRDD [Array [Byte ]],
179- numIterations : Int , stepSize : Double , miniBatchFraction : Double ,
220+ def trainLogisticRegressionModelWithSGD (
221+ dataBytesJRDD : JavaRDD [Array [Byte ]],
222+ numIterations : Int ,
223+ stepSize : Double ,
224+ miniBatchFraction : Double ,
180225 initialWeightsBA : Array [Byte ]): java.util.List [java.lang.Object ] = {
181- trainRegressionModel((data, initialWeights) =>
182- LogisticRegressionWithSGD .train(data, numIterations, stepSize,
183- miniBatchFraction, initialWeights),
184- dataBytesJRDD, initialWeightsBA)
226+ trainRegressionModel(
227+ (data, initialWeights) =>
228+ LogisticRegressionWithSGD .train(
229+ data,
230+ numIterations,
231+ stepSize,
232+ miniBatchFraction,
233+ Vectors .dense(initialWeights)),
234+ dataBytesJRDD,
235+ initialWeightsBA)
185236 }
186237
187238 /**
@@ -192,7 +243,7 @@ class PythonMLLibAPI extends Serializable {
192243 {
193244 val data = dataBytesJRDD.rdd.map(xBytes => {
194245 val x = deserializeDoubleVector(xBytes)
195- LabeledPoint (x(0 ), x.slice(1 , x.length))
246+ LabeledPoint (x(0 ), Vectors .dense( x.slice(1 , x.length) ))
196247 })
197248 val model = NaiveBayes .train(data, lambda)
198249 val ret = new java.util.LinkedList [java.lang.Object ]()
0 commit comments