天真的用户想要在Scala Breeze中做一个简单的卷积:
import breeze.linalg._
import breeze.numerics._
import breeze.signal.support.{OverhangOpt, CanConvolve} // ??
val kernel = DenseVector(1.0, 2.0)
val data = DenseVector(2.0, 3.0, 4.0, 5.0)
val out = data.convolve(kernel)有没有人能写出一个如何做到这一点的小例子?
发布于 2014-01-24 21:59:21
你已经在正确的道路上了。只需确保您安装了最新版本的breeze,即0.6-SNAPSHOT。例如,在build.sbt中使用以下部分
libraryDependencies ++= Seq(
"org.scalanlp" % "breeze_2.10" % "0.6-SNAPSHOT"
)
resolvers ++= Seq(
"Sonatype Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots/",
"Sonatype Releases" at "https://oss.sonatype.org/content/repositories/releases/"
)不需要从breeze.signal.support导入东西,您的原始示例将很好地工作:
scala> import breeze.linalg._
import breeze.linalg._
scala> import breeze.signal._
import breeze.signal._
scala> convolve(DenseVector(1.0, 2.0), DenseVector(3.0, 4.0, 5.0, 6.0))
res1: breeze.linalg.DenseVector[Double] = DenseVector(10.0, 13.0, 16.0)https://stackoverflow.com/questions/21330347
复制相似问题