[Haskell-cafe] HANSEI in Haskell?
Daryoush Mehrtash
dmehrtash at gmail.com
Mon Feb 28 02:32:24 CET 2011
I am confused about this comment:
> Mostly we preferred (as do the domain experts we target) to write
>
probabilistic models in direct style rather than monadic
>
In the haskell implementation of the lawn model there are two different
version of the grassModel (
https://github.com/rst76/probability/blob/master/src/Lawn.hs)
grassModel :: PM Bool
grassModel =
let_ (flip_ 0.3) (\ rain ->
let_ (flip_ 0.5) (\ sprinkler ->
let_ (dis (con (flip_ 0.9) rain)
(dis (con (flip_ 0.8) sprinkler)
(flip_ 0.1))) (\ grassIsWet ->
if_ grassIsWet rain (dist []))))
and
grassModel = do
rain <- flip_ 0.3
sprinkler <- flip_ 0.5
wetInRain <- flip_ 0.9
wetInSprinkler <- flip_ 0.8
wetInOther <- flip_ 0.1
let grassIsWet = rain && wetInRain
|| sprinkler && wetInSprinkler
|| wetInOther
if grassIsWet then return rain else dist []
By domain expert preferring direct style do you mean that they prefer
the first version over the 2nd version?
thanks,
Daryoush
On Wed, Feb 23, 2011 at 7:52 AM, Chung-chieh Shan <ccshan at cs.rutgers.edu>wrote:
> Hello! Thank you for your interest.
>
> Daryoush Mehrtash <dmehrtash at gmail.com> wrote in haskell-cafe:
> > Is the "Embedded domain-specific language HANSEI for probabilistic models
> > and (nested) inference" described in:
> > http://okmij.org/ftp/kakuritu/index.html#implementation available in
> > Haskell?
>
> The closest to that I know of is this one:
> http://d.hatena.ne.jp/rst76/20100706
> https://github.com/rst76/probability
>
> Or you can apply this monad transformer to a probability monad:
> http://sebfisch.github.com/explicit-sharing/
>
> > Is there a reason why the author did the package in Ocaml
> > rather than Haskell?
>
> Mostly we preferred (as do the domain experts we target) to write
> probabilistic models in direct style rather than monadic style.
> Haskell's laziness doesn't help -- in fact, to avoid running out of
> memory, we'd have to defeat that memoization by sprinkling "() ->"
> throughout the types.
>
> --
> Edit this signature at http://www.digitas.harvard.edu/cgi-bin/ken/sig
> 1st graffitiist: QUESTION AUTHORITY!
> 2nd graffitiist: Why?
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
--
Daryoush
Weblog: http://onfp.blogspot.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20110227/e98b0782/attachment.htm>
More information about the Haskell-Cafe
mailing list