2

素朴なユーザーは、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)

誰かがこれを行う方法の小さな例を書くことができますか?

4

1 に答える 1

3

あなたはすでに正しい道を進んでいます。の最新バージョン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)
于 2014-01-24T13:59:21.370 に答える