巨人の肩の上に登る

先人の積み重ねた発見に基づいて、なにかを発見しようとすることを指す。

Scala でパーセプトロン

久しぶりにScalaを使うことになったので,練習がてらに Scala でパーセプトロンを書いてみた.

二次元データを対象とし,シンプルに実装してみた.(GitHubで公開


テスト

今回は Scalatest のFlatSpecを使ってみた.
sbt 環境での使い方は,公式のUsing ScalaTest with sbtに書いてあったのですが,上手くいかず.... .
使っているScalaのバーションが 2.10 系だと思います.

結局,下記の用に記述したら上手く行きました.

libraryDependencies ++= Seq(
    "org.scalatest" %% "scalatest" % "2.0.M6-SNAP9" % "test"
)


基本的には,flatstrapの公式ドキュメントを参照で問題なかったです.
一点だけ,privateメソッドのunittestの書き方が分からなかったので,調べた結果,下記の用に書いてみました.

import org.scalatest.FlatSpec
import org.scalatest.PrivateMethodTester._

class HogeSpec extends FlatSpe {
    
    it should "hoge hoge" in {

        val ins = new CLASS
        val pmethod = PrivateMethod[List[Double]]('PRIVATE_MTHOD_NAME)
        ins invokePrivate pmethod()
    
    }
   
}

詳細はドキュメントを参照下さい.

結果

下記に出力例を示しておきます.

f:id:mayo_yamasaki:20131027202928p:plain

恐らく上手く分離できてると思います.