File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed
dynaml-core/src/main/scala-2.11/io/github/mandar2812/dynaml/kernels Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -64,6 +64,22 @@ object CovarianceFunction {
6464 SVMKernel .crossKernelMatrix(dataset1, dataset2, this .evaluate)
6565
6666 }
67+
68+ def apply [T ](phi : Map [String , Double ] => T => DenseVector [Double ])(s : Map [String , Double ]) =
69+ new LocalScalarKernel [T ] {
70+ override val hyper_parameters : List [String ] = s.keys.toList
71+
72+ state = s
73+
74+ override def evaluate (x : T , y : T ): Double = phi(state)(x) dot phi(state)(y)
75+
76+ override def buildKernelMatrix [S <: Seq [T ]](mappedData : S , length : Int ): KernelMatrix [DenseMatrix [Double ]] =
77+ SVMKernel .buildSVMKernelMatrix(mappedData, length, this .evaluate)
78+
79+ override def buildCrossKernelMatrix [S <: Seq [T ]](dataset1 : S , dataset2 : S ): DenseMatrix [Double ] =
80+ SVMKernel .crossKernelMatrix(dataset1, dataset2, this .evaluate)
81+
82+ }
6783}
6884
6985abstract class CompositeCovariance [T ]
You can’t perform that action at this time.
0 commit comments