Haskell

パラメータの事後分布計算を実装した

PRML3.3.1のパラメータの分布を読んで、パラメータの事後分布計算を実装した。 事前分布、事後分布、尤度関数の関係 観測データが得られた時に、そのデータがパラメータに依存していたとする。 この時、観測データがあるパラメータの条件下で得られる確率は…

PRML3章の線形回帰を実装した

PRML3章の線形回帰を実装した。ベイズ線形回帰は未実装。中谷さんのgihyo.jp連載記事「機械学習 はじめよう」 第11回 "線形回帰を実装してみよう"が非常に参考になりました。http://gihyo.jp/dev/serial/01/machine-learning/0011?page=1実装は以下の通り。…

形態素解析エンジンMeCabをFedora17でHaskellから使う際のメモ

Fedora17でのMeCabのインストールとUTF-8用の設定方法、 及びHaskellからMeCabを使う方法を紹介する。以下のページを参考にさせて頂きました。 http://kane.meta-scheme.jp/article/37183101.html MeCabのインストールと設定 Fedora17にはmecabパッケージが…

Haskellの線形代数用ライブラリで多変量ガウス分布を計算した際のメモ

Haskellで行列計算したい場合にはhmatrixという線形代数用ライブラリが使える。 この記事では、行列計算でよく使いそうな手続きを紹介する。 また、それらの例として多変量ガウス分布を実装する。 hmarixのインストール 例によってcabalでインストールする。…

多項式曲線フィッティングを実装してみた

PRMLの"1.1 例:多項式曲線フィッティング"を読んだ。 実際に実装して、科書通りにフィッティング出来ることを確認した。 多項式曲線フィッティングの実装 xを0~1の間で10個選び、それぞれのxに対してsin(2πx)を計算した値にノイズを加えて訓練集合tを作成す…

HaskellからGnuplotを呼び出してチャートを描く

gnuplot用のパッケージをインストールして、 import Graphics.Gnuplot.Simple するだけ。とても簡単。 パッケージのインストール $ cabal install gnuplot チャートを描く まずはGraphics.Gnuplot.Simpleをインポートする。 $ ghci GHCi, version 7.0.4: htt…

ghcでの相互依存のあるモジュールのimport方法について

1. 相互依存のあるモジュールは、そのままではコンパイル出来ない。 以下のような相互依存のあるコードのコンパイルを試みる。Foo.hs: module Foo(Foo, getData, idProduct) where import qualified Bar as B data Foo = Foo { name :: String, id_ :: Int }…

第1回スタートHaskellの範囲を予習しました。

プログラミングHaskellの2章から4章まで予習しました。 つまづいた点や練習問題の解答を書いておきます。 間違っている箇所が多々あると思います。 第2章 はじめの一歩 関数適用の仕方とかコメントの書き方といった基本中の基本です。 この章でつまずいた…