/ / Implementácia gradientového klesania pomocou Scala a Breeze - chyba: nemožno nájsť implicitnú hodnotu parametra op: - scala, vietor, gradient-down

Implementácia gradientového klesania pomocou Scala a Breeze - chyba: nemohol nájsť implicitnú hodnotu parametra op: - scala, vietor, gradient-down

Pokúšam sa aplikovať implementáciu gradientového klesania v programe Scala a vietor na základe Octave z: Gradient Implementácia zostupu v oktáve

Oktávový kód, ktorý sa pokúšam opätovne zapísať, je:

theta = theta -((1/m) * ((X * theta) - y)" * X)" * alpha;

Prišiel som s:

  val xv =       DenseVector[Double](1.0, 1.0)
val yv =       DenseVector[Double](1.0, 1.0)
val mymatrix : DenseMatrix[Double] = DenseMatrix( (1.0,2.0) , (3.0,4.0) )

val myvalue = (mymatrix - ((1 / m) * (( (xv * mymatrix - yv).t * xv).t * .0001)

ale im dostáva chybu kompilácie:

Multiple markers at this line:
◾could not find implicit value for parameter op: breeze.linalg.operators.OpSub.Impl2[breeze.linalg.DenseMatrix[Double],breeze.linalg.DenseVector[Double],That]
◾not enough arguments for method -: (implicit op: breeze.linalg.operators.OpSub.Impl2[breeze.linalg.DenseMatrix[Double],breeze.linalg.DenseVector[Double],That])That. Unspecified value parameter op.

Zaviedol (-a) som správne stúpanie sklonu pomocou Scala a Breeze?

Zdá sa, že musím poskytnúť implicitné - operátor?

odpovede:

-1 pre odpoveď č. 1
    val myvalue = (mymatrix - ((1 / m) * (( (xv * mymatrix - yv).t * xv).t * .0001)

xv je vektor a mymatrix je matice ktorý je nepodporovaný, to je chyba u sa stretávajú