From dbca3338cb373fac88da94f9446a3c75f99d0997 Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Thu, 13 Sep 2018 13:30:33 -0400 Subject: [PATCH 01/47] fixed link error --- chapters/06-inference-about-inference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapters/06-inference-about-inference.md b/chapters/06-inference-about-inference.md index 6cf192c..84da842 100644 --- a/chapters/06-inference-about-inference.md +++ b/chapters/06-inference-about-inference.md @@ -750,7 +750,7 @@ Multi-step, suboptimal planning as inference Gergely and Csibra principle of efficiency and equifinality come from Bayes Occam. --> -Reading & Discussion: [Readings]({{site.baseurl}}/readings/6-inference-about-inference.html) +Reading & Discussion: [Readings]({{site.baseurl}}/readings/06-inference-about-inference.html) Test your knowledge: [Exercises]({{site.baseurl}}/exercises/06-inference-about-inference.html) From d025c7fa58dce224c98bbdde52dff63a7566d97a Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 18 Sep 2018 09:42:18 -0400 Subject: [PATCH 02/47] fixed typo --- exercises/03-conditioning.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/03-conditioning.md b/exercises/03-conditioning.md index e7364bf..2425d16 100644 --- a/exercises/03-conditioning.md +++ b/exercises/03-conditioning.md @@ -59,7 +59,7 @@ cough; ### a) -For this example, does intervening on the program in this way (e.g. by setting the value of `lungCancer`) have the same effect as *conditioning* on the disease being true? What about the casual dependency makes this case? +For this example, does intervening on the program in this way (e.g. by setting the value of `lungCancer`) have the same effect as *conditioning* on the disease being true? What about the casual dependency makes this the case? ### b) From 41e8d03682169e21b4f306ec7c36c72ddc4776df Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 18 Sep 2018 09:44:24 -0400 Subject: [PATCH 03/47] Revert "remove new chapters from index for now" This reverts commit 8c2fc8bd199088ec70006569919ebc07834c8b35. --- chapters/04.1-agents-as-programs.md | 4 +- chapters/05.1-sequential-decisions.md | 3 +- chapters/appendix-math-review.md | 357 ++++++++++++++++++++++++++ 3 files changed, 360 insertions(+), 4 deletions(-) create mode 100644 chapters/appendix-math-review.md diff --git a/chapters/04.1-agents-as-programs.md b/chapters/04.1-agents-as-programs.md index af4862c..85064f8 100644 --- a/chapters/04.1-agents-as-programs.md +++ b/chapters/04.1-agents-as-programs.md @@ -1,11 +1,11 @@ --- -layout: +layout: chapter title: "Agents as probabilistic programs" description: "One-shot decision problems, softmax choice, and RSA." is_section: true --- Adapted from "[Modeling agents with probabilistic programs](http://agentmodels.org)" by Owain Evans, Andreas Stuhlmüller, John Salvatier, and Daniel Filan, and "[Probabilistic language understanding](https://gscontras.github.io/probLang/)" by Gregory Scontras and Michael Henry Tessler. -Note: To be edited. Need permisions. + ## Introduction diff --git a/chapters/05.1-sequential-decisions.md b/chapters/05.1-sequential-decisions.md index dafdc5e..e146eeb 100644 --- a/chapters/05.1-sequential-decisions.md +++ b/chapters/05.1-sequential-decisions.md @@ -1,11 +1,10 @@ --- -layout: +layout: chapter title: "Sequential decisions" description: "Markov Decision Processes and Partially-Observable Markof Decision Processes" is_section: true --- Adapted from "[Modeling agents with probabilistic programs](http://agentmodels.org)" by Owain Evans, Andreas Stuhlmüller, John Salvatier, and Daniel Filan. -Note: To be editted. Need permissions. ## Introduction diff --git a/chapters/appendix-math-review.md b/chapters/appendix-math-review.md new file mode 100644 index 0000000..d0eb0ef --- /dev/null +++ b/chapters/appendix-math-review.md @@ -0,0 +1,357 @@ +--- +layout: chapter +title: Appendix - Mathematics Review +description: A very brief primer on mathematical concepts used in this book. +--- + +FUBAR FUBAR FUBAR + +# Introduction to JavaScript + +JavaScipt is a high-level, untyped programming language commonly used in web development. +WebPPL uses a functional subset of JavaScript, and some basic uses will be reviewed below. + +[JavaScript: The Good Parts](http://bdcampbell.net/javascript/book/javascript_the_good_parts.pdf) is an excellent introduction to the language. +Online tutorials can be found [here](http://www.w3schools.com/js/), [there](https://www.javascript.com), and [elsewhere](https://www.codeschool.com/learn/javascript). + +You can do basic arithmetical operations: + +~~~~ +3 + 3 +~~~~ + +The `+` symbol is also used to concatenate strings: + +~~~~ +"My favorite food is " + "pizza" +~~~~ + +Numeric variables will automatically modified into strings during concatenation: + +~~~~ +3 + " is my favorite number" +~~~~ + +Boolean variables will be automatically changed into numbers when added (`false` becomes 0 and `true` becomes 1) + +~~~~ +true + true +~~~~ + +Equality can be checked using `==` and `===`. +`===` is a stricter comparison which cares about the type of variable (e.g., string, numeric, boolean). + +~~~~ +print(3 == 3) +print("3" == 3) +print("3" === 3) + +print("Booleans can equal numbers when you don't care about type.") +print(true == 1) +print(true === 1) +~~~~ + +A summary of comparison and logical operators can be found [here](http://www.w3schools.com/js/js_comparisons.asp) + +# Mathematical functions and constants + +JavaScript has a built-in "Math" object with properties and methods for mathematical constants and functions. ("Objects" will be described in more detail below.) + +For example, to write: $$ 3^2 $$ + +~~~~ +Math.pow(3,2) // 3^2 +~~~~ + +The area of a 12 inch pizza. + +~~~~ +var radius = 12 / 2 +Math.round(Math.PI*Math.pow(radius, 2)) + " square inches" +~~~~ + +A full list of the functions and constants can be found [here](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math). + +# Building More Complex Programs + +Consider the following complex expression built out of Boolean operators `||` (*or*) and `&&` (*and*): + +~~~~ +true && (true || false) +~~~~ + +This expression has an *operator*---the function `&&`---and *arguments*---`true` on the left and `(true || false)` on the right. +The latter argument itself is a *subexpression* consisting of a different operator---the function `||`---and different arguments---`true` and `false`. +When reasoning about the evaluation of a program, it is best to think of evaluating the subexpressions first, then substituting their return value into the larger expression. +In this example, we first evaluate the expression `true || false`, returning true. +After we substitute this into the larger expression, we have `true && true`, against returning true. + +As a slightly more complex example, consider: + +~~~~ +// this line is a comment +if (1 == 2) { // the condition of "if" + 100 // the consequent ("then") +} else { + (true || false) // the alternative ("else") +} +~~~~ + +This expression is composed of an `if` conditional that evaluates the first expression (a test here of whether `1` equals `2`) then evaluates the second expression if the first is true or otherwise evaluates the third expression. +The operator `if` is strictly not a function, because it does not evaluate all of its arguments, but instead *short-circuits* evaluating only the second or third. It has a value like any other function. +(We have also used comments here: anything after a `//` is ignored when evaluating.) + +JavaScript has a very useful and common shorthand for `if` statements: it is called the "ternary" operator, using a question mark `?` and colon `:` to demarcate the three components. + +The syntax is: `condition ? consequent : alternative` + +~~~~ +(1 == 2) ? // the condition of "if" + 100 : // the consequent ("then") + (true || false) // the alternative ("else") +~~~~ + +Ternary statements can be strung together to create multiple different conditions + +~~~~ +(1 == 2) ? 100 : +(2 == 3) ? 200 : +(3 == 4) ? 300 : +(3 == 3) ? 400 : + 500 +~~~~ + +Note the particular indentation style used above (called ''pretty-printing''). +To clarify the structure of a function call, the arguments can split up across different lines and can aid readability: + +~~~~ +(3 * ( + (2 * 4) + (3 + 5) +)) + + ( + (10 - 7) + 6 +) +~~~~ + +The online editor will automatically pretty-print for you. +You can re-indent according to this style by selecting some lines and pressing the TAB key. + +We often want to name objects in our programs so that they can be reused. +This can be done with the `var` statement. +`var` looks like this: + +~~~~ norun +var variableName = expression +~~~~ + +`variableName` is a *symbol* that is bound to the value that `expression` evaluates to. +When variables themselves are evaluated they return the value that they have been bound to: + +~~~~ +var someVariable = 3 // assign the value 3 to the variable someVariable +someVariable // when this is evaluated it looks up and returns the value 3 +~~~~ + +Assignment of variables requires use of `var` + +~~~ +someVariable = 3 +someVariable +~~~ + +Multiple variable can be assigned in the same line using a `,`. +To declare the end a line in JavaScript, use a `;`. +In WebPPL as in standard JavaScript, the use of `;` is optional, but can be useful for readability. + +~~~~ +var x = 3, y = 2; +y +~~~~ + +# Arrays and objects + +There are several special kinds of values in JavaScript. +One kind of special value is an *array*: a sequence of other values. + +~~~~ +["this", "is", "an", "array"] +~~~~ + +Arrays can be indexed using `[index]` Note: indexing starts at 0). + +~~~~ +var myArray = ["this", "is", "my", "array"] +myArray[1] +~~~~ + +The length can be computed using `.length` + +~~~~ +var myArray = ["this", "is", "my", "array"] +myArray.length +~~~~ + +You can grab subsets of the array using `.slice(being, end)`. + +~~~~ +var myArray = ["this", "is", "my", "array"] +myArray.slice(1,3) +~~~~ + +If you don't put an `end`, it will default to the end. + +~~~~ +var myArray = ["this", "is", "my", "array"] +myArray.slice(1) +~~~~ + +Arrays can be concatenated together, forming new arrays. + +~~~~ +var myFirstArray = ["this", "is"] +var mySecondArray = ["my", "array"] + +myFirstArray.concat(mySecondArray) +~~~~ + +`.concat` can take multiple arguments, concatenating together multiple arrays or values simultaneously. + +Other helpful methods: + +~~~~ +var myArray = ["this", "is", "my", "array"] +print( myArray.join(" _ ") ) +print( myArray.toString() ) +print( myArray.indexOf("my") ) +~~~~ + +A list of all the properties of arrays can be found [here](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/of). +Use caution with these. +Not all JavaScript methods are supported on arrays in WebPPL. +Some of these JavaScript methods will have their own WebPPL version. +A list of the WebPPL functions for arrays can be found [here](http://docs.webppl.org/en/master/functions/arrays.html). + +In addition, the WebPPL language has available a JavaScript library useful for dealing with arrays and objects, called Underscore. +Underscore functions can be accessed using the `_.` prefix. +A full list of functions available from Underscore can be found [here](http://underscorejs.org/). +Note: underscore functions that take others functions (called predicates in underscore) as arguments are not available in WebPPL (e.g., `_.map`, `_.filter`, ...). + +Here is one example, for reshaping arrays: + +~~~~ +_.zip(['frodo', 'gandalf', 'gimli'], ["hobbit", "wizard", "dwarf"], [true, false, false]) +~~~~ + +In real life, you encounter objects. +Objects have properties. +Properties can be accessed using `.property` or `["property"]` syntax. + +~~~~ +var bilbo = { firstName: "Bilbo", lastName: "Baggins" } +print( bilbo.lastName ) +print( bilbo["lastName"] ) +~~~~ + +The latter is useful when the property is itself a variable + +~~~~ +var bilbo = { firstName: "Bilbo", lastName: "Baggins"} +var prop = "lastName" +bilbo[prop] +// try: bilbo.prop +~~~~ + +Objects in JavaScript are very useful for structured data (like a dictionary in Python, or a dataframe in R). +Underscore has several helpful functions for interacting with objects + +~~~~ +var bilbo = { + firstName: "Bilbo", + lastName: "Baggins", + race: "hobbit", + age: 111, + ringbearer: true +} + +_.keys(bilbo) +~~~~ + +# Building Functions: `function` + +The power of programming languages as a model of computation comes from the ability to make new functions. +To do so, we use the `function` primitive. +For example, we can construct a function that doubles any number it is applied to: + +~~~~ +var double = function(x) { + return x + x +} + +double(3) +~~~~ + +In WebPPL, the use of the `return` keyword is optional. +By default, WebPPL will return the last line of the function. +We use the `return` keyword for explicitness and clarity. + +The general form of a function expression is: `function(arguments){ body }`. +The first sub-expression of the function, the arguments, is a list of symbols that tells us what the inputs to the function will be called; the second sub-expression, the body, tells us what to do with these inputs. +The value which results from a function is called a *compound procedure*. +When a compound procedure is applied to input values (e.g. when `double` was applied to `3`) we imagine identifying (also called *binding*) the argument variables with these inputs, then evaluating the body. + +In functional programming, we can build procedures that manipulate any kind of value---even other procedures. +Here we define a function `twice` which takes a procedure and returns a new procedure that applies the original twice: + +~~~~ +var double = function(x) { return x + x } + +var twice = function(f) { + return function(x) { + return f(f(x)) + } +} + +var twiceDouble = twice(double) + +twiceDouble(3) + +// same as: twice(double)(3) +~~~~ + +When functions take other functions as arguments, that is called a higher-order function + +# Higher-Order Functions + +Higher-order functions can be used to represent common patterns of computation. +Several such higher-order functions are provided in WebPPL. + +`map` is a higher-order function that takes a procedure and applies it to each element of a list. +For instance we could use map to test whether each element of a list of numbers is greater than zero: + +~~~~ +map(function(x){ + return x > 0 +}, [1, -3, 2, 0]) +~~~~ + +The `map` higher-order function can also be used to map a function of more than one argument over multiple lists, element by element. +For example, here is the MATLAB "dot-star" function (or ".*") written using `map2`, which maps over 2 lists at the same time: + +~~~~ +var dotStar = function(v1, v2){ + return map2( + function(x,y){ return x * y }, + v1, v2) +} + +dotStar([1,2,3], [4,5,6]) +~~~~ + +`repeat` is a built-in function that takes another function as an argument. It repeats it how many ever times you want: + +~~~~ +var g = function(){ return 8 } +repeat(100, g) +~~~~ + +Test your knowledge: [Exercises]({{site.baseurl}}/exercises/13-appendix-js-basics.html) From 6275f6c1df16f9fa735f5d89dad17ca4aaaf6f4f Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 18 Sep 2018 09:44:49 -0400 Subject: [PATCH 04/47] Revert "possibly fix _config.yml. will need to merg PR before I know if this is right" This reverts commit 84687a95bc29a1e2e2232a70f9702e1dccb39591. --- _config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_config.yml b/_config.yml index 5b5fc73..c540148 100644 --- a/_config.yml +++ b/_config.yml @@ -1,7 +1,7 @@ # Site settings title: Probabilistic Models of Cognition v. 2 -baseurl: "" -url: "http://probmods.org" +baseurl: "/probmods2" +url: "http://marielajennings.github.io/probmods2/" # Build settings markdown: kramdown From 397712a047b40f75c363006b031c0d24828122b4 Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 18 Sep 2018 10:23:50 -0400 Subject: [PATCH 05/47] fixed problem set and answers for chapter 4. Added discussion of plate notation to chapter 4. --- assets/img/04_01_a.png | Bin 6694 -> 173937 bytes assets/img/04_01_b.png | Bin 4600 -> 126734 bytes assets/img/04_01_c.png | Bin 6609 -> 140662 bytes assets/img/04_01_d.png | Bin 9653 -> 184994 bytes assets/img/plate_notation.png | Bin 0 -> 26231 bytes chapters/04-patterns-of-inference.md | 10 +++++++++- exercises/04-patterns-of-inference.md | 4 +++- 7 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 assets/img/plate_notation.png diff --git a/assets/img/04_01_a.png b/assets/img/04_01_a.png index 9127018467788e23748eef985fbd0429bb6a1d02..22717561c49074ac069a8b9752cfc18434c5ab42 100644 GIT binary patch literal 173937 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%0D(371I{wrqIN@QeYJOLm#m)(7w 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

^DN0{T>R5QpZ}Y`=N%p zlv~{N@F`~(5SvPmgg8{vkE^uYe9%3@qZ~TXQB1xe-P-+^K*PLVD(T`MLcD`BV`@Uw z^=f$uatj}Zd078^tT(CgeDe;YOj(IML}0l^kj!F5*$XB#ou+d6BJTLuvEN5cG&Nxr zlC7@oj-Xi@nfA)$@qXI~E4lW3T3mOgN(h{?KmT~`CS}WxVb3Ty*j_L14!|=bLqkIa z?kxYo=ApdP__UZ;{DKUDe4wLYFzka;Eut3&iO!P>WHG+rEA)P>AS^Wm@u9~WJaPwp zZzPGn4ZoEUypd6>b9y@^?=-ujbF8$1=X-Poy&=1jvKoyYbS?gAexO`my!$J%A)MU6Y&g*`SHQyX8a*dEzEs7rh zB$jM>CidK`dr75tMw8#`Z#Yt>*8|l@+^uyPwx-nTfPPtB8Md{30y~z{d)|E5i$f|r ziG`7K$DqS@q*rSp4u zFM_2YkL-+6l3tEcp3xku#i=)z9=1v;Zp34NGdnRuBS2&wPN@(+ zm_=X=|5ipR6>Y5 zs>X~-UP$9jpSOdH5a71t4eO%K1tzvza!CaeuRzC0^}}Pak}q$+c!UNX7KKddB_#Gt zEh?ZWN))<=|0v?~qEd0u+ZzlNYygj$8BK0hz;3cnsKu<8QSdv)Dp3+Pt7`nDFs9(M z3jxI&?U+S+{uxEgVebC*H^pVnP?lzHhOFnA5F)9bW^d-a$qnho6TgBkXpIWYn~<0$ zK)oI@x=LOu9fK5ty2~eVkaXb7F`tU=PGxi0QP=M^M5GdP^cVn2=qLp^u`YSKCjN8T z^vB!wTO$VBA$ewKR|5SlPp2lD8{`XhIYde6L4^n|X!w-O=inV?v%w0BC^F#T(pd3; z?0%Rcsqm0%!lx)I=%VNXX*4Y!kg>Fx=tyZGcC6vwh=8%2WSK>XXR zBsv^2ul6MMD+_n0#NsQAhZ2ZfJF9~RWt11kS1xu%w^{-Zm5JZg6HW3 zn*L4w9VUd&WH(h>2KY~IQXle4;BGvxg2{T(ToTCV>%EnPW&^E%&NGCzj}Xu3GTqi5 zR`B8B<8t!KP$|o61BHbI%o9Hna2 z(Zw$2th=4_-xAos_DnQk=Ee?qy%HEN?8AtryZBj&2Y`#asP2}nlvv$OF}V>5wN0J` z-Ly|zgVZ9kggrF`3}^v=`oI;4UmEejikV~Hq5W!1F*WJ}vCuutrRfn7kB1-h<68P^ z`B5CizrX;F#W42#{>L3$j(f~L(=~fvGgr6Anp05P$jS{-_7;UPgScJ_{p&7W%l_(F z9ASSR6HfPus>m0)35L$p*|GX1K#j}l1?=^P`F7uWE&lHa#xFl_;qB{UmYYRzoxOy{ zVM2Gs5I3G@iY_K41X7%}kP;jZcn*p(#teuUR=P7s6u}|sp@^&Z?*aMmJCr=(Qn=iH zIUiOb&Q_{pQfM6BoZffc4n%GyCPhF+AuhX>Iy}BCb(;F4dBZa&OS_m$>)|%jVyD;n zWqTagEA7+zOWBka>sm3ZtL)1MQQw-MsDO;l^nUtwcOxSjYe%D_>I7LF898cDUS1!1 znU<`b4D?o7=vgH0r>b`+T1^N>N=6ClrnG`N(uyMN<{40iq6+bpt1V2cx1qbaOz_*= zGwQDy-`)GAiFd7JG%LyBp5*Y z)|2fOQnSOGv4?HB=mGFI2;xyO{Xi#!uR(k5vRwlThH(x%h+B)^?GM?pXEXwNoC~AH z%nT0w#Sj@>wXe)pd?%u)Pv}oTXwo~&UirBiFF#)%Sfj;r4YT^^L#s00bFR@Fzxx$j zw4p^u<>KD(i zQAxov!gg+_n*iy}=aVynqj@Y>Fvv_?V3Wt6w%)4~?f(HU<&8m{!4wcIG!M5?L3oTd zvcY@O;n1z7ut7O^piRHm*Q@3{OVSe~mlTG77hJeSgvAaZt0*}-A^&@-SSWO|iDy{| z@f9!O&jbfVd%uhJbiEZr1mTaXa}*}VbK3EQNAch0m7CkLBJ;Z&G#Or1%ev)Me498o zmS)s^wUD6_xWTrwx$WMT?8gtiXzXq{k+?qJMly({I?}zBrC;OjHn$^}te4AN49=D? zuX`mB%CP`4wI*UKXCQve^Qq0Z(ZrN7YaJ3pW;y_rqtk5mo3a1cR{?Pmvhf~mlxlCu z{Rvh3+-h}+j7%6RIy^t%@+ui!XqpbO{U$FjX;&Ai+j7+1^IOhfcb-2RTWQehvI|7$zW|fadWagR%Ph(cS)mx=gw2*|^@3SBy0N>CEv-XH9$gb?8bciFiX zB*2_xNH4|$60l1IX_n(dz+WQdlCkD0fIi`#dSC^V(=yJ${9V1#%fFGDIKfSc&CTCT3#$R-cEnnqcf8%laa(?#-!)@ z!YXGOUBfq~JCRR_E_0QH2#e%bHAU+a5P(D5M%*d3c%cE{q0^vK*AzWRZ`c1SZTxS% zw&fQDDT!&)JcAR2tSq72Ofe9e!-LCBAMTZ~eX8J)2gZ&gV{V;#$i6EDWxm=%_Fy*l zdJ{}J&qwE#PDMw&_lS>D@h4@&6u*g}l>%m1G5;iRP z;K-ofXKe@6!KonvH;i+AqXKV$?%ShD0?CId+8CEVjT7+!VtvYeUJ>P&#WXYL)0hV- zw{~D|tSK})LNEw8jP6XP&h8W@%}}A7n2GP|casI-2Q#tO}usxjk!1)u= zA5V=8%=1fL;T|>`EBA*o87O4h>^HNpG3dTzs9U}o-Suz@a|ODG7A#hzb_t+UkpS?9 zVQ;wnpC|0sUqD6G%8H@`ZeCyr`op_T8q@;9=9v)91 zZQd_=$$=>WLpsqn3dZ`2%Z!2Fn;~&gjO1)+@vUdjCR&||>#`bIYq(TA*oD}}V?Ex< zp+&<6w`FyN+PR-~8>z#Rq6)x>R`fsikpB>+uUaya9l_*;=ag=H-=1qoz>r%|7{yiO z=b5C>)Hg0JR;u5SO%E2+B$0YF+?;x%C+pkwAW>AF_5J z_<8xTtfC&VdpH0FmZq4_?t*}j&u>^)6X8c0W~vb(f;OL5SbBgQxhOEHVT8O;BLV8= zrNljE-3C(d2a%2x@44`;eW{7oft$w9CFR~G%hu8+Y%!z27^M#Rw4=`dMz7{2#X z`S4N9N?6hjq`X_Ann=Oe*Tv}09Tu0W_V~jyR1NO0Fwk-4Rgzv=g)P^o>eHQ+si}G$ z|4I(0t(G5MOsVL-*+oE7W+j{O$iyE}Dfl%`V8hMmkkE=!dt_6G{gi*Mf04}Ipb0{C zgp}LVrHrDaHw|_7__{~R9v`NpQ)Sg!FpJ@zI^a5ymE!072}e!S=UD)8Cu9}q79-f! zJeQ_%?AWn$TY9wTB(E}E^G&Jor){?Jqe@IY0@2Ic&FuKsz+$w`?~BUH${+!g-hH~1 z-BXDWJmv|VaS}Us9CrG=eaoItrE=TCJh}P``7IGJ15#rxM$lP3AT98(w-b0QIN$AG z=-0akh4I~|MD$(1N7g{_UpX$KO6!?^;KuA%l=gjEQ8Wx9G726~@=6;10-oHoXgg+w z{fk?Qm{bPOv5SRc)6buUIWqdM~%YqoeUEAUz%vj2e+Mej;{4%*75GH*- zo62O7E4WKe)VhbjZb~UUR2&`%Mrp-eq>YeOc3=rHjNP1{a_JQD)C`ecgiq&Q>DQ3# z3~%VEFO&JOV9QiS25W#*@97l{nco^pZBP6gE0!~STgD@ca*F-0BxZyVRCiRJI*I1tx4=QcuozFY3gQQ1 zF%WU6+t@}2Om6iq?en&>2GG&R!|HUFuXnCQtS|U6PM%&Zhdmh^?K~=C>jYk&zw~hq z>^J9}f9{_Kz&8fCeSwiXXmQKh_Gi!M_4O=YJvfRes13h8L7FVp$n@3N!uyDJ+Y!ws zHey320^CY19f(*mAVWXGdND!;^^TYxL znrcj+d?pVYiF_WiT$guy2mV~EUsI$7+WJ~Ni05^bgx#!^dg!!OAW_q)tRrkN%Q&8x zc`36bYtN4rg+zD?zb1F*Mr>?ize!bDq}-gHIRqqr0Mj)l@I6;@zhvSN!HyOlew^GM1XEP9sxprVt4lEp4d+U`ibinqmL$>q4u-B zdxyuS%fET4xykBfR|;@&VyE7EQ5b-HtFm5lM{WkdrR@0IXG6f=G{3$j?ZlYJXG1tLpI%t%ZPYlO@=)|}L7=r8qCh+NG<2Bi+(9WPn7hXJs+&vYWd$SE6E=l`L4``WD`==Mttfmde0pG|=9 zb}Pg?l+{KVy_|z==+M_gq0e@r^^!YKkT}2TndSMmra^0{W3CITaY5P;^%H^)lGxG6 zWNVbFB?GWfr}2KhfE^K#{P)Q6e-~^&s3>0qc#Xh;;vrO=Nw!LD((#{-H4q@3@Qb$a zav2X|Nx2MPvUKO-n#jB*`HBkipc%`a4au@%EoR9@4!!jc>k2k*fOr+M(LoNGuFxWl z$AWye{nc~aK(VbBB zrILNFB&>vf)jFlLi36>hzg`#1yw>9b$AvpXmy)HYa4APs`{A(Bq6e;dIX@5o9Nvw| z%Ed=1d1hLIMs7HpL6eKDHvRPy#i29Mv}4UN)nLY8=hq69QIMNe=ZGI)C>d8#>7OpVlenn(D!Xq4h zPkBCbX%8w`_s||Px1cZp;8hoZ7(kopfSi9PO91rAb|mrjWX=Z=L$S>8i0gp?cT?`d zS}ZR9bz9l|N(q=FOO!l0vokJq9F_68U7o;k;8HK|Gze4YM_INo#Z4 z@Z@#x2SKlpSIHC`t8y|YLa?ajy;{tip^s^+knw`mnQzrLTrenXwCr+S85`^&D&N^^ z4j)WvjZeZCVMtImjZCEHm9bg?#JD(F-MarE-jMW7J+~O6isF0JWOB!O%%@(nYe4|d5FKJ^ zIbx1yT~>8o9*|Av1B&zII=X{4F(E)gcD~h(%f!S~T3tO{Kh3?ShQLkWmkOzTP%7+mgse)p*ia<~ zK{4?-zr+y;+%>D5N*mO)wOwAVQ$c_lif-{}3laJ~7iG)?SX1tE(^GCoiy%y}75qVe z(GdPv`3KtBrWerQpb;DwCjxcnsV9~XuhOu^`cIIzi2fLzC9QnogaaK;5xlUn7N1{@{?1mKd0<2jFbtD;X{r-Are z(k@-X;7Fy@)uD5rmUYen3@BwM1@yUL&lh=@%rhH;{qM1sl>ss^h$7AnGkm9%LO5zJ z#=p+s_T{Ns0uD@xpfF_)kmIsoGq^6sAy$R3uf&Q@B+`jSXeqZ+tpb&erQx z7xD}O-;=me3x3eYC0U=%KFE_w9Q&C2{UU`z<6>-K66iUL6)=~mwO*4OMb(y#ePukc zHxANX-B70gyEK!?%W^a!ArV3QM|fK#uK8gb?Z?o{1C9%JXzQuPbV> za`_;@9`mH8JlQtI2YmV@Ms;6UR21Z_2M`5FN zI<;!n?@3flEud6SvIq^{je4HzkI_3=wOU@4`kH*if{v8vLxaCkZr2E`h22sEGATeo zo$f?Q!v}LIiXzil?e*npID^J0X!$ea0vFi+`x(opX!bOg-4J*Pk|zbCN<=;6G7Y!G zKWMH#HZ?m&G6A9l9>$*3at2(*;QOY>&3DBJJaLJck-Q3HN%WK`R}Bvf=k8_{q7c~a znN5LR^FeR}O_U*IX+djc`rS#ZzS1SFNCJ+OUD&M`gwI)h2x_4-y(VMbok^aaFHb9+ z_(CdmI%x=rwm4%U{B&=;c#H{V!=D%tVz)AjOm)k7k;4+OO50}W&1=?Z;d&>|sY0eP zI4n6O@CQO~M(dxe!V(s~L{k_T&5!s_yw1{!25+lLtm?B6F1&wM>S>)89rp`U`K#>x z>sa?nHv^t{$OU=_!bV0!h10dVbns_#a&IJ}PTwvomLvMtcm`#(*=82Or0^$_(a}h` ze;Y>Sj>AE>>{O{mENO4XgoCMAuoFnyH5b_4e}kT2bV+O8fLgiOd1BgeZH0mqtDE`N z4eqWsay&Mev~?7`_e^c6{)FRw8)Frh?-&d{pe8Z`1Fr^Z27>K24FSN?&jA3y@KiXN z*mfpSY)VQ9E8C0_z-i$6eltwxcDwJ;RDHf|BCri;UJ#U%gWnyj+iyL}ezPPuqB^4V z1DI!ap1Qxdlq=PP00ydvAQ_e~do~lYn!gVr;A6rL6u|}AYG5MHuocGW^z~Tadc68I z7+dreMJ8~rpGMKtl1+?szb2 z+vfBfJn5_R@#HiD=kSWiscLe`E{6Q86R=`xz_Zu0=n6eM)#f4N8@oDGo=C zu>mIw-q3t;Nlr-wa*122Ts`{Sa=hPE_(vjwe_4%vq>sH@y3>BOp=_JzZw}446n8GH#@W``~7;nwO(OKscXqE`}B%;Tqq= z=tO>;0M_(os(FxtKg=oD5*|CfzZ2PFdC}sM&|voTps;e)c=oHch?Vr_{y3lipDe8sy2h=`g<`==dJow zr$LZZ787=3YXhgH)NWR3!aM~TsC5O)U7YV(D4txO$SBJ zVt|+m(O<&A8(vQal>VcDF>1;gST9auqf)v2J&1b8@(N+?iw#k>o%-IrwkI~??!*Bn z(jnKqeFG+8l<+GR*{25SVA>Df2=(s-w!KcMTSE+pzfNlrXnTTfO&pH&{bD5-_X)8$ z{P+oQlVCAp2|GM6cQmgOp)4ucx>x{hjENNt*ZjT{{02t+byB{JAM@eOQYPWN{jlZp zo#OLTN7eB~3XPo*eC2dst{KEg1V(QTT%xwS0vcHxH$6R5lpHNEO<@>cBGB#NE}L(_ zQi_wh^U0+2`UCsTxg$&fkJP%t=LpjB?U=0NMv)yw+q*LK?tyfr4zZota?o3Zt4t`- z27c5bE>SUb*xQ}sPbK!o^0z7T8*puvpCJtA-hwc%iCV~qq?iH4yG+mhPJne`F{ceoUr`6hV_uo@15;q-~j|acLbUk<0WOf>hwt8Vq8e8yx z^d0@~ANKJ=%h+^9G9X6LpMSo|v(vcS%~)1Y2vcvyq?TDmmcT=y?m*IcUuCLskxd4v z>o2UWLyM{_UtgK0x9-ZNbPo;kZs2*y)j@pKW@2~NeOm0SE8hX(L^0u4=EDnyp6HE@ z1Wn~!SpFCSU!GSDQ4c|simqvF$H*i@OXR@RdAr4OY}VmAuIBf8apwH!WSK2|#|z?* zS3R2Uk4lL`coN$V5~l>b8vUHi)RP!47DR5dOt5h#%ps zJ)elWGx?MphDjXK&??4S>IF%qH*#*HH)@2s_ZV?UIu??5Ee%}4=iB#g)?=Xj57^C* zA=1~>Mtloe!nS0M-KcQAD9_$;XP0~^Ju@QWsujVe>lp_tN_-v>ccE7}5t&8*AzVfe zTDgBoF+9F5IkMH@=$90wHiI4L6{S`EVHCCUU{n*($Vf);+GRV~Pnqs${1{a0Zu@fi zDE(Gt?^mElYYAR|srA+8bU7WZfL*RPIU;@CkzCa=QCVxXfoeuB8Ns=QUw9^ESl`rx zPs=dgZl1S@|leWC+jh zzzpq*KO`0Xy&DeNn}1_C!Pr?LRjvf9&r(9sPLfien#l-h_?Tm)3wc^Ql*~UKu7{H? z@rebP?4@I(@IH-#d3GGsILdZRa+up{QrqQ4-`@V2X~AZ5MO&Z;(-YH(Yk7uJ*?Iqd zq~{p@F>n9Mh!i42GUPB{P}84_RTgwY}h??2k!)fl0cHk={BhFoadt%ZIs{Koddrb=J1G|!Ox^o2EMgW|o= zXXVSVp$ch+0UhA!ptA$5YB``+4D-m{7{(MbOzwBZrb^yOG8&XsahwUO!7_;v={O(g z_>4#~SZ(n%bYV<^HIfbKESo)MEw(Z!o+1gAnCL6?Te((V%pE#IK66t;in}s25Q@|6 znLQpOs)_?KTzHx_ZX5;baj?ChQqf&)@GNwy9`DBkuTCDzYxKZBNYj%U9Y~BY##=yg zLsJ;gt;OfEA*=&8%+*B6Pv0LNy?DfjBkj$`Cdx|Ii`{}v05q6{jj~?7pV^)@GQ?(K zg(Ot8&DFgC2+>>*7Ug|`e<=L`69+sHeB-3u2>cEsK^|m&Oc1|)9Z+y-ze@XQY%c=M zu9p4)vW|G$PvQdAMCYWueuqjt7&3zDf%Y%S-ns5Km_^I=u$U%N7D7EanXp?s{0^F) z81E-1%~o4N%Ps^;uagAPtly)|g@jq9i)Ih_heta8M@x~t!&e=CljSViNk^MK+GOpO z@5x|fPd2AxnA|`G!_!DSrxG>S@BD1Jf95M`&R{l9Sa1>Rpy-$kD4QrVf_S)IK($@H zenw+gBlgmBTI(TUz+dm#E}(WtU|P2T8-y6+4X!?%qcPf{fLWHt)^ed>5HJx3*zc}I z+3-&ZQc7d{wgmp5gi>(`e>!JuKTkjAi8q@X$hf)ab+COnpt!k}@EOd}Rzp0vB!aFr z%A;U#A*JrT;am4w`iT~gPtDSf#@x9Q`F;Wwm)V6P#ZBjz0%sB-@~O*4*~pY2Y#}^0 zL*#1xz*?cv3hm)?HPrs~0(VupK@~#PJdt*sRxpK9V*)+wtCwIqhuYUp zFN5H@8$Pyn9`?@tZH^Y-hxoF~o4+N1ZY!#Z@?@>k^=LuPb+6H9=fg;&#{Q#gX8rt> zh0y1oaYEgbsH(#p(l}}i9?I(hbLg+5N(0oCZcBqu4d$Pck0VK5&Bo)qo00IOXW@EG z>uMeDjKNg~I>MT#`Ifx9%ORPm_U~JW5oUCRK}>W&&S#?$D`5i0+n=~!;5yE&1D!(1 zWv7|DKL{YQSi@P;tk8a;lrOR}MB?9@#l{S}eBpRht1Nc8r&6J)?rW*=nc#-Hsd%H; z)3hV%e13lA7q=liIKey%!a<9gjq$G)PDP2w_lxdP(qb;O^3>7l&5UXUS3#IQ5ZlGj zV?TZA;& zb(+mRf*&*$$yb1~oxS5=djv9h-7+Yp&^aNKQorD?{RlD2@4u29T9|04IzhbRL}0}{ zas?sulKt(D3o?@t09TMiMWX)`bDPox#wQ<)fU`lBus7-?$5#+pqSb2DBEe6WqUqYT zqT()c+D-US^cOA%b!O|(6m%_D-7bk(DF1;Gb$dkl`CCZU0*W1N;zpEVRVh5SsNFtq z&S|DkmvPiDj`%l$^eRS7h2_Dx_ABNXp?{us*p0Za;(?PE!d3%Gu4ZED;6})3A&LXA zsPuR+k0DTHMO9;-z;RN}wNiI<-JNqQ%^dMJM z{Mk?9h?dB@vCL8EkIRPn>h#>7RFS{8;-|(>vpI&fhPW z+XL9^dh+v}qZi|!YJvap=>9p&J*oW;)RK`Q zE2r)+Op~iD?lD#H<0o$cLyzSouXHi?>N5Sqa{6al4{Y$i1M z3U-Wig);wT&il00v!2fDn2*G8OQAZ95Rd!R6IH z9=mru59{oHL>ZA*KlL2g_Z>VoH%Wp-34<4~!92QR4o$U!8IVZ!OsY%@h2Pv`UOh4I zjZDd0ua0;3)=~Xr)n17-c45$*v{pltJ&^cN$A$(&tYD_N{ZZZXax~rh;y`R*s=oB| zdLFlDNC|g450?`*r-EjHI;dx^*8)a$t%toBk1mV5ICdw*qM zVUjE?k}vV{6$#Keg}VL{(2W0J(V%|pC~rKXB?ZTwLoyF$#!rg1bp!L+Wq`>2z637n z{bfXngAO}uCj$XgyZZPxNFt^vYh-b7+S=-U9CcvJI_MQV=m2TG zlaWJHHbwe#Zh(`li0e;sZt88wQ)sDh#<~0QoYY0IcG1nt>NMGkH2z&9$&$GEW{O)0 z7mP_l%ahzj^kZxRx#9n%w*Q6fK4t>YZ5}^~pa6*Uu@$iQu=BZEBhpqkn|NZ1_-?!d z-R=9@brj|yK8sku=^w7;Mk@lGmz8=sDNK;5u*m zbj5nE2cLE^by7pHZhQ*Os(PlPByP51xDerw{J_W_m!4N+pl${PP<8ue5>tm5+o%GD zazbjI+$HB&`Z!t0UX@tvDAqAm@~WzSaOBIo4c2Xtt%)Q;Z#DK4hK?72MrL!eF#;yK z>zgprt01raC^WX7V8ifRxkB`Rx1|4t^Edx0W1iCL07^(eb?$cmDof6=y&YaXb6Lmu zfW7x?WLnF`pRmxBepV;@TeBXX?{_FV!Q<3fQPrBy$d)J(h6h$d7p6V0JYTqrTk4_w z1}OHHS*evGNnZMjP(JlwII{*$yUE7!5Y5e79iVeVut^}sdwNZ1gF~#om|eCEV|MXSRkLu(giEL8_e0AY^tM6vr!w-9a4I8onIXsmlRAHnr9$ zIj`&iSfb{OIeq^9VO$ruGM=n8JBSsoXJ!@hdvmKN6?g@9X93*>7eW3klN= zIBA*xAPN76R~}Fu8V}GtCV&p@177-^?|#4hyX?=k8(}$AaQ)gF#}Yl^(T}EjB7Yae zB^AFn2L?de*`cToO$;P0Nr~KOU~ZSfF>xIS0jyS!*uQ&n?*-uxD|evjHl;?;n9+k$ zHlo*z3-w?9iR7PD_l=4BsQq18OZ)jMQ2_dXTQ(H$Ye??pOQHHdhXFvYT8*~uz?C5b z!48hzOKFAcfr^DjhTDc3t8QVQ7*fBE%LQ)$>%*~u_Z^sSVF9$+) zRZ8Rin9Shu>TH;=KUAa}a#-#c*6SexLPjH0=#+h)_KwLod+MFvja%s}XYZOzETxtm z&Pk(j*^!cLDeD+Q4Bkr{tWk~mAJi219mY_SGUWa-U;ceIr&D+{>h52f0viA35Ak9G z)hau);Pezz5iQqs65o1GoLkVjysAcGr(?LGgqhyc5<&MXxoC!eS+e_Mz#pCo;Ixj{ zSiR9jPK@>hYFaeo8y8lH4uodbGU!fYgv<3hMpBIYP&*dU7Qts%JwHLCvx21NxGGU? zy()#c^PAC7)8{n^0O#(0^|W7Hh}%U!K?cSd#=}~t3Aw1Mj!b0fxW<>v;y`5>G7`#e z6l$O^xwRXmlCZ7#jh-QxYLgZC_AN2Emu5| z*USqVwo!1-mc%o61atC`SMt5pUV0foOAyZlHc~SE{TR5|@R?|cM zYv=Ufnpt+>uEFKx6+xOQ&RL1xi|^X)nfh=Kr&cmA=S~SYYTFN47e#*1>)r?@*zE`< zv~e9Vdh`KDPGd*kLB~Zdw|+o0jU#VP&OR1D87z44^tOAH-{?j3b}8l#2f0uWC7uw( zqV%i79w}bMKuY`#%l@~I-y9L|$B`o>Js=e3@E6yIHy&C>vQJ0KDXeZ@diYR1+Hi&2o2=D$g?~>HaIcMr1+SEjcn1(B zBRkd5IW&GBXDJ1@$GwZfrAZmzN2Vv@$~}hp)D=+dp?2x)oHgEJDwe}LC7Sb9f4by+ zXNtkN8RhYgI^7e|u#gjfXVh#HtvC=Vd{UdF{AVHxU?0!5`P+V}(M6dBnDPoCK@Vt` z*s<1YAgh9hWUaGi1A!2Y@d;L-1rmuokA&7}T_@b^k%hJ2I$@rHFGuup;!wTdAkh*> z)|>~5g$3O!O#wXz3bX?!dbH+dbX$m}3hrB>{TfZVZH0u18U=F%7UymwNZq%ic2;`} zZnMgTuvmUOK~`fOTT7rhnk98m1$XSyo*4J-JM3L3GF@A~21-;_aSdPu!aB}uL(q{T zZH-4feNOZ_&?s!A&jY(J|M`(~Ae<=}cwlRaQUbhnfXHgT1B0&L+Mur}Pc#^EO;+e; zw3q{0k};BwH6$g$RZWGTv9y~B@2kn5iu&H5zz?h~dvG0_HES4LjOo3i(JD|sxSBgI zkKq%s$@*q@DO2CG7llbt+1OJnm6t1-QzchPSH2WiS9I<`4W*fSj?CB|l?rBi(zAa= ztb8+wDQmoLCc?*~BKVQ5vum#Xpmp7vQDbv(wyd)bs&e+jmruEPs@s(K55ffP!?HEN zxE>HL5Mm^q)Jy76R@8}+mhz{BHBEuJeS$2_z-uM0OJE@WKO7;qD~JHc!3u14=1kBj zJzxx~``u{`>%3g#g_&eiKfcS_;}Ecj!lZJl&_;J!2&rk|Gb=S|W|aG$J<7qwNsn#2 z=CV?ZfCd93dc;cFpDiTosV0wD|p7!+g@^i82$$>4bP?RVN zl1AB*|GsAVu1lk)>!e~Mx)==j34?CIWTA8Z={?(SHnVQ)2 zp^i7fpG_eIf66fQq1Ht0MqD(96haWIW|5WLLw7g*&>tD z`=P^ke#n>ZAMfAaC060@Kdv}R2T*GEm^zJ7XmO_C}uY-6&2UE?5fr&C#4LPRoc&uw<=Zt=3{TlPA zz3wAYweQuGL^F(W?>`=en;GRF-B0U}OGaC|=&jzNM^vDXOJHGtm%E(222bCCu(1qv zpTnH>ZAWt|I=jBVa_OB_&n5GQ0F&`Tn}b4_>6e3&lVT0!;(*3HJO(GEL=9sVRv|R{bh!;;y56{a1!PcXN9TMxF`Q<3HLT8bseAvA(5?SkY5lyVd{OQ` z+@Dw65LiJVL*-8$IOH~w0!hRfqm&X=xNgaGcI_L3EK{M$YSN>uV%+JPTuvxd>-EXB zmsMe1&fIy$H?bl!oyn-VXv!s07{Dwrzz$^kCR4P6joBC%v*&kJ zpMQyuM;lx`cIKh5NOaFP8tmC~zRbPFCcPn`M2+*7Me!VI!T!b~rF1CECxcs=%>9!+ zk$Ky$bDxm(T zy6$;WWQ$oz8}^1>z5!M~N!-rtXh^ z!#EN<5I(JQt9jFS@b*6pX4{rTyhKNq*lbN1pi^eR>5tSF1Dve;HeC`7JK1`qJP)U* z7u(jP{fAK*wa$CgiGt9#dqT7{JK zvM_)&n_Rk#0dgPAa3fSd9TdvMSa-)Q6iS^YTtx68f>HC3s;Bm)wHEH-TfiX-G){2; zUFBu#H;dT8(gV=FF@RAP53jwmRVuVI1A&T7-~m<(8?uHqUpSVmDT0QaBqN%j=zeBy z*9vsA;Lz*ZUzU5`KlhIZ$&gd02%#D`_RT%tW^M9eP_9}IksM9Pq5Bp*w~c7VNdOo> z|M?*SSs;J(f}PPXTvajQ~7+|Wv?i1tdmwJ_XzA$bEx6%JC(jOg(^{f z`^U}X#&*@2hyqNV{x9w)yhR%xEHSfM>A`okJG<%1`q`|>+NsQ7KY~BDOQC9U9a%!} z+ADmvuE?M7UsXe2od>*525{cJJI-#`Ay@CncR%Xml8i+7&w7iql4iSe!boWx$oor! zwCH|#e91YG4v&e4)PBF&fx5ouIAGP>5m~1AQy=pQ0?BvN%j5QK z-xc(~)ocG_TJhul#fy9A^({#Vuz+O30AV{OBkfZy@>}O^KfTDgS0LcD4kP&QN(*aQ z?I08qN()OHYpxZ{MSlN~vPJ2P0yI@}I}3;1mM!CUT{En^O&_2wtbWc_{9w0pV9cjk~)wPV+kVo_pUuXYc=iV=#Jj_h=fv`fAmxnrl|g z$s&VuAENk>`j1F(-?{XZ;MHq6bEn-Ar0;X>1&emc#_HY+JLlniYoYs;>~3{Y@{Z)` z*?zvkNmeEJUW2Pb0q{w2T#l)965l|YD9|2a$=(4i@fe397|$wMvgZcdax3pGXe0kR zg#n%K~=nf?CU>uJ8T8BW$I#))^$RCfUFB&cQaYl4Pk#2~J(oB0wj zAsSw%kE`QIc$xLc&W5@yxU3#7Zy}uN`5H?{uO%pEv&ugysKYpIP@hsF<7eSr^#FCG5<&7!GFKJMtR**b3g!~ zPlBdwY)I5g9;SljUlm4@(($(qRGUMx>)Q^VUhIl6p>E!-(4isn+`yMP0CP%v{IIQD z?z81u&ItJ7L|3_JB0Johs;Rztc^@PpTh}##&@u3uzb5#dn2(fGYd>CH4e;akkIofi zzkQ)!&lzuj&(6PU)YoZ};86~#BNFsVU$L-@BqaSkd4d4QQZW%ySri1HRJhW zjvEUjT@;M^M%1G6OYH!1j8^r5+aS#5_*zhZOF!b9_91HXPcHuNt;ro_;$F3lvTIxo zg%nrXS`6j%Iyz$%4rWNzxw~t9k->8LIhYpv%2gDBJ$t6j=-*c0|I`lq1W@SbF_=yo z3TAMb!Z;}u&4n+2F*f9|k5z)6lyc-bfoKUU91JbQNZ+jxN#M~BBqx<^D|u@FuDWN9 z<1|B5S~^sspRNzP8!}b>)C5_{c-`4B;(MRpNtsj+gp~3hDY&$u3gds5kW-;T zaYz52#6@anGv`yq7jJN0H$e4u2Z(Ow(~YfztHSALh$ATxR87sY3<1ifL#Ndj1jfRZQtEMmdy?RY!RS z;^gli`59FH)TZ{<>XR{w+ZivZx@@CKnv}c2P5{f3tG;%PV?u~wu11%8j_ep#V{H*PTJsSuy%&>)aF`@mWfkljePQ+`+F6}~VGOKol3&!ji4)xN{~@~>|l*$CId z)%BMdoWC;Q7JuXwlewxk&`Mi2&eV3|a{7qq?))mb$&S{h0n!U{c3Uf|A!wz)j)h?Qd9rvma|fP?AVdLSinuS`x>3$?A0{;tJz|l@_5l% zK#7$eHzAWgL^)WSqGQij%3>{0^~n8KM-I*P*Sy)Dcs4j#)?YTMO5`$i46Vzjg zSNk3)*$8R`414WFi|U+5bY3rSz)MKh{VumpDXYg`%|*gJ(Ug#m9$05X-=))DO(b3n z^DViUcecQ$1V%J)7mRV7|7vkTo3on_$Tg}LnZekMzlzJu`cb}pgS|s+&ORJ{{JX}q zOmTHTa4hvl+vMgYC2ojhV8zBU)p9xkU4B;ky!Qwmw+zQ8*H>>)iDJs(V2zRnR!~ff zOG^5ppJxa0Sl<1_8wzD5Fk~BCwpK5@9z6@n>wtldp6+UB@8i;0-6f_mpZ{!PQqW^& zlU=5Z{`9v+@Ml>#X#E*%g)Lx42?f3hV0iYAg_*4lv0;Km%J0>Q+H%7623W^Yx{`IL z9bRzujD(cvbKPlOzB^isgP(`ZvCj`V?d@%vZ3n7+ zFWb@{mr0{>j3b?oG$T-CE6<*g*bDo5*63=$zdM}?g27}TMxHQ;sKF57_?$~PlT7?| zlo_2TaPo||A3Qirgjl9pexY5F9b@Z(-syWo)b=DvgRSF-186lO7DFL=*Q&vj-uIwK z)P{E+flMUMaA+-61xWy1Oxr`=%vOk&i6Uq_@pN1V5`5122+L-7I{4H(&ZA8%CQBUJ zmy*A}C8*vwR)XfZJ^1PAIz{s?8zE&dqXw7}-&P}>Q(cNk0(oYBIx9<8oc@I^oTy+M zpNX;7|0Av^Hha#my6E9t%japl$YDJ1OoW!C{oHP(mG*VQDG{dU93!bY4&hPVoS2HUN8*E<_x#kro zuA0!xR#0cu%l+_pRVB@_fH-U*1yZBmo)vutHwIA)jx%rS-v>AR!H>-UoMV{vet_QF zY~1y8dF6ZN&db#hPSIrf)B7W;LS>zrtN;-SfaHbc}E<^P@$$cHipqCaivY2 zr|l3B8J(iY5UQ_*8(Y`XvDGabg&cxwkg)O){*!qh`qL%&JmDP5CQ1Qxk1)pslU#dr z-d3l4&3yq+vj|(3g@><~S9}3qj^y)jP&%Uws&7Nla4D zROnbl`fN4X)3g=8F<8~V+pzuP>%$5xotSJVzM3}=f2u} zo@Yspk6H(c6>&Ex$jxUsIDat}&5lw`Df+t%bn0qHXSXQ%88J zM=Yf|2)L4PxiOD*K5_V5(WQ_I(;v4c`{p?_0}ydHui{u4i97GF0-Fvy1iR3yvF$gm zCXZfz*r*}OqMC{WempuzV7m(oK1`o6vyQKpq~rX_l)_O3Ith;#H(#h99LfD0`gk?G zEpU>>vtB6!nsJqP<$eok&-CEtYW4(^meq+U0Yas81JZ`I+MX+;&?7u!8ckm$RY=M6 z_cq$3iF+&kJTRdR#sUd}k$Fev8UJu_`QHM6w!I7b7+evE7A|J<)0fOIrH>b0O0QRa zuh#Bv5eO9ZRyNUEO9EYM4j17;t0AHhyGB0%Umq);X}u9KUQ-9H$Gh8 z0RRqF1!$rH{3xv3-KFO}%57BhBMRzV`7tf{jlMK!_hgiYP%$izolMtrFMg*ml1EHe z<1nG9cU#x{#j{b9v|YC0wFhU?K}HMsMk1?Q z&LsQOpJ6v!5T_?(XRA#TQ!&<5@W4y{7%Tf4)Ef{-d}rc>!7Kz zTu|v?&3CoMl`fi?pVpk(^1Qy%x5B^2;B4nC|Mkq=+}CHdw%b+j`D$YXJ?|6t_=7#T z($dl@{}(^UN2{QVZ@Idtiqes`@OH*JL!7!Tl+PxmlA&;-Eh$l))A8ZT|-w z3TwT}9dc+;;q+5=3}(+89ZMkJJCej;n`$dFE_N9FDAb0;?o@7P4xdp}@*>mj0@;9p zX^x_qHYJ1`d|3u(t6@*&&weAH^If^hKDNN`-np3U$;WcD)3FtqC>d_f8x8`GAJ#!l z+ugVvPNZg_#hnb8_8D%ht&oT=5_a|6qkTrZszNgMr4MN@ESZWYb-!||B_ZDlV$Z@m zZRLifqef`h&kBccMMq280yJ^C&rSFi-9Z=~|IHBIkAX|v-*szM)YXlGYOo4d?g_F# zZt;blI(vF@XN+MVy`uQda%~Uug*&mVq=bfiLS0QQ7{Xul!z&mfEA%W@Ed9JBJ&OJY zW8WU`uCV~Zv3bmdlo15S#zTftL$x04O}U=Ni@$-bznY|4Z-jCzs?at-&_@a+#0g1^ ze5Yajq$)j_8RSip@xApdL0BMN^dsledvgp!l_j&n^4e|V)fD2ly6rKtA$K!haLWJ( zDI36B&b*G*04Pah*@$~>dD)1=J{(hj*9;jW9s?c6c+IP`V$UFqbd2g9ZUoQ{FG9Kx zVN@94l^DU~Uj(E=CL{JU0o~zIGv&#@`RW&)|EGKc<3_wy`nL zuJ<+UjGSsPL`H~VwdDSnAKkGVuhRBe?!m#qGak|-Bi!N9k#K88Q!4OaLLW(C_n?w& z+%KU^Q%cCbF09HTurC>ZHV}J3CGwj*t;IFvJwiTGm|1mdO6NzvtS@8;_LSu5@7KDe zJ}v{sn?19s(gZ5Cp}DM$tk~&#KB}vwN#k$HG3077kS0c~1BSEIGlh!oE{D80(W0Xj z$?OwH1RYT=Lq{eUX>X?F!i4d^E-2s>NrN8SBsA{F;?CW94;mRw$yRpR%HH0Rb4=G( zj9_$(AcSjsZoi}`i|3YSkT~ulWIW2mwXR7IsHoDfDD^NE|Y?O5U6pDwLeVUkc7bBr9u5FJ7eKW*3Y9-FpR^73b!(g~OH;^j}5 zyU5b*4ig!ZvGmd@K?QC!*esyASNj^?N!o!}SDd;~|=>K{%VD%3m z;m%d_;s5tzuQ5Wypy4X@Gc)=>u&DkD;asCaxrpsOaRq;U^B+65+H$zE)~8zA4fCTpU9!6#tnyWe0uu=?tR-NkiA>=za2sWtQmj4q>{a5d@=>k4J z3E)Vfo%R4$mK^iTi5VN^weoM6abwv%$lsuj^>r=Fm=w)Floxb=BcPZHetvY%DK5va zkII^BiIf12iED|y5sMxcw=3lj=D1T(bNK)s6@cqCRkB%w-_agINMIlcyHF!vjAEW~ zZXib@#XY|!T}wD~?>ZAU9r|*-D9mLSzE7so3)B0=xUP2aw3u9kyEPj^kH5^`y4nWWnC}n#m zdgo0>vVh02q}wVTqt!llTO~tQM8mrS%A^YVHAJG14eL95+5O_JY3nXL>zARa6*I>Q z6TdB@12uI}DaZ?qF5&fiL7hI_EH-a&KMp(EA)FI({RYg^yTN|1;v z)d9((m~jJ!pHmIk@C>V|KAHDoJb~O#yY`pi<|C;fJWYqv)&Afsk9DduA*8(`%bu{6Wl^M+#lcDL~wa!K0;6Dd4PY&p@ei5r}>Fl#8G{b zea4gY*s~Xzh%fv*0tu@j_l&wNb)dWcWx<7RWq%(*4uF2tiS`_jPe}+GtGcNz|D8iwyGj=PeF4(`9#+XAu0O2BOGo#WEbAX&&SDobbVlUpCID zoxBA?@W5IX{XD3z{@)_T^X6L>N8FR{`xGAsDP^P%}3j58HB1jmOo`+z(Mj7kZ zN)WIBOPy?ZG#bq=hRUSx?AG(EZPO70PRC7V*~Pj))7PwuJR8g(@{22uEJyhxsQ7;Q zV+|7T@ofv}QMo4a+ZZ*MRx@0yQ}4ZkDsRc}`o(@zIokjUVm9LRJEAHOXvuy?Qr3x;Z*K6e{Wx1_G>snZD{s3AeE%N3y<`^2^< zi3^;LS~j15!fdliUMohh9qLyqmd1_YhD1(AI6^$=u1WR6ZbKOZkv(yBW1~m%YnMfu zfW()gKfX2bThTwmt+hNE9@{&J5SI;3z`L)XTI1w>*qfHhA&~4nC4?YbWcxCD)YjBIAtoMEuC9`w%ye* zX#@r4VP@Ss;u-5dr={MVYQ2y=ZQl9|GIUVEAcd0L(c1Xzsj{iC*LnNS61@cd4$EVv zWr7#eM`-{&QTbi_+vhcOJj-PZ@?W9f5S|c5TE0dbo~i8SZ}slC)-Gbq^?PpSuD#cM zu^e4h=P3`U3Ny=XNU=|d5mtRK6@3;pLTct%l9(RTJMP&|Tg={wy-N-Z6?IV;o86+4 z`<>y*T4mZN^>k+)V<>I?FvVb9-JusKdrRMy?}9Fqhh3nR@WZa~?$coQB^KY+3|OKT zzZHEqsft!$7v-W#OUCK=WC8zs4m0GlSjQHn%9hrW9xUL%u)0cGCw&;oXwt4{CyyzSVv^(;|@2t*# zj~Yu1{jM4FV^_X(BpVRqscQO>&3|+I{fQk~)yV{pAC&C2pVl=5L7H}z^!caG#BB7} z6-^Nm5^_RP;SA&>{$jH=X{@P23OaRcoXG~$kKXI&55gRqZ=~Nk4bXR+;(RcY03dE| z4pS1!IPD+Cey2&TUq>W_lH;F8M|0G(3iFD~xI=x#twmGik*Q)%h_AbjX!}|k-E+Hl z6k8Y)?JvsXQVfQ2zeWxMzt*gLpaGHtmT zc7y{l627CMaUGfQ`cP`VckgTptSGNL={njH(7f9uZS^XAh>1oAg3 z)fkEAC9{XUi+XSh)pe({AF=DZgTS5sJocO&`+L$#nr?Y+;pMv1qTpi{}5_;6=NKg6bFD$83z3_H% zcDt4(d6W9?=Pi|cU&NWS-WzuGZAh?ZICUMaK9lBRXJvdQ`M^nMCyqW>K^@XsFAyl% zyKn{QUH<(^B9eDfZN&okp>?5*PovEBaR_5{hAa34nH-p6_83Kp1(qv;yP!!M(e3W@$PKVtjE0>5v(iLZHT3lQz=4(ubPe^Pbf-5gGCT67c z_A+EQ$H0MOvlk^4_o%TpoIi=6w zXKFH49b=bH>i6&NL}IVHN_2`O1l^A3W44l99ZH0$M7Ke>HnU_)q6%LRjtzC4xYLV(YG`8lEZD>z+M5Q?;Z|d7-_AI~*KfM} z&4%k*Kz>tGFR(4XZE5ZBN;_1nvFBfnA)g8(DDdz(SdECK-kP7Cil+F2{oYKE#`X?= zHR(+;JWL8OYA4%9e5)QlM>Gv^Sz5Yy^IC*ffQl@<5`W90!z%JI&0aj!>Vlq|7j1}0 z-{nD5$8u;aVk9SU=VWf~1COT2^f1iCf%Iln0k5OO)slyqdy^AUKU3;AR~)4=`W!VNp*sV&q?*X(5pGPQ!>A9UN&- z({8}iY{(7^MVDpo@UlU8PbhL{fWDv?Q?U5}Su^X^Q7TW7l$&v%pkK5&u|FQ~Elz~c z9-3xTqbW{=XLTYdZ1!nK|DFiY;(^bYnzUBXq@&;VI=c-_sONW2Q9YOxNK?=zgi!RT zl^Ob*r=m#~FJy`Mj+?m2bdh_Hs^xP3%dviE8wy!rmswVH9QR5q{Nz5g$7JI zS=eVL0_F@=@ci?t)(3W-K)xYBjAFgZ9LQ+=u%Y1fM}7KabEA>2yHj^Ti_y>XHNv)c z8a13@3vG= zetIQdQTq^JjC#EGBp`4N(c+@`WrkG@nqQBJK&#d9UPZ(7zuWd9_8S5) zs~ywcrv=R(P%h%>%a89>T2X?uwE9Ta;UpBnQe)qA$fj}`jHXRG|wOeua`i$w=_2VH4#Z7_ppC8n_%$)c2Vz|6en? z#xFkw+nLko1L3???E6<2u;o74@yHDb$4Gr3>O57J9x44lD&%x0xTTQMID6v)6i|1AmMcabg3Bx8l}b$j1TV8s(R}rb*asp{co7i=7^C^$@tNeYQ9phhYf~Ng>aXpoxVx$s zmGNfEaVE*VoDN8-+O6>1E}wC$#_wf361Ly;<0q-qjr2!dc(6Nf%%&Mwx=+O$GZ<)B zPW?s$@77jY*_+l|mC;>qG`L?MSCUK}?ZL-64*+DSyp%4Cgk^W6Jg0Wx@u~T$u_4+B()TNPC-e{OvkSfq70rXrndiu zdU_gsQ}M_%qpp5%2gqD(eTk*rq`zCc>BjA&nEyTKco6_b_vtvr*r@Z}r}sy{wzW6j zBe2=Ju}1U9YrjCzSCYS7{3fLvr`CQRs^@#9+TPsSbP~9=Cp(!4ubjBSuUfGrfN|3o za+GX2&~UQ2Qd4NNp1N=~KD`|VFLm6O@ui3b-_|$6;Dsipme+ML_?yvojC|}GHdXZ1 zfEI0mbIyxPi;vsK_l^M*`j4UN!EZl)dj*5|mxl@EfZg3yxccSgtv5irGi7Dvwx_UU zaRCNh<30Kr_6VlQ$S|^`^rUQBY9O&RM&@tGN8;wGw2Hw$#MgQM7BRY0}&QSUt73 zSjeT1Qb|}DRnpcjz>4y^s<}V9G+-wAHQt z8sdJ2nx#qXUuq^tl%sfm!2ck}$v#sL&StZ(&9!~SQl7!_W^otK8pQRYF%9Ka~_5b=NwRFpizFc z$DcLf|IkvEudkVBM%!uEg00J?e7oYBjx7tU*1RMVPB!kBnfbmjU1xajwBkJNtF@wa zjgb6(7tFajt*eg0Tfuh%W=|?*pGMV&X zsOV+h(0*TkDg+f2pWac-6iRnV5# zx_&x7?{9gVgmnT+jw-ueArSzirSa@+Z(A%kz0*$htQFJ0Wbi%R?Q1cRIxTs7_VBzb z#-0e6!hC7fJi2X^Nr}0+OA%;8v{?sGJ)3XTHy$Co`zj(Az2h!= zkauTk3+WR7G%;;|D6WVz25oBn>w5hr6ayC?Lo~%{ms)bxo8|T9yw9C4-+oy@e=DS* zp`XLpwU7U$APCIiE--9{y(BY{5O~=wbvIR5YG4(3+GO3JCRj&V)!LFT)`u{>UDLBf zI8SWf5M7@86@rze^;t=HATm)l@vLp38*;somN8=!(X~i_97}c>&SAM$IP3Mach-24 z>9E1j0%6skQ=OjXh1&^4=p~N?RiG^ww(XFC4;!;lj|Hl)41Lf2;yF&U3L?Z84|8EX ztnIi8w@6ehK&h*v{Ll|i?#Au7;GDGPu*8! za*$uI(&Nw9Z+>7G&*mdzxAZt_7u>NEBIsJ&a6%S~K7LQ5AMllxt&dg4@LjvRyAO z(9JVylNwAbCSdGT3IXDO*s1;ID^(L8pYUPN_HFqm1w|!7jXZ;e;V7%BGf8FTywYJ? zvvz(zaL=QP%l4Jh)1J#lYJy!4V#&?I9m_t!Vt+tDxIxCVO44b-SxNZ*bw^ao3~2Fp zk9hRHMG@zcJDV1-N;2Vep}GGr{k=!mtEd!95xrm~dB{|we}1}peQDWp0afQ!WVjUV zY|YaTF#0%Eok_QZY5ra7ldV%p@+NCP!o#>Cfq~6s9}V~D6rtwJh4zbMiLF#L5z2Ko z2xO;Jk3tXkATJtLdW?Q7IGeRpZ=%$M-e*@js*U(@Lh{=mXxZ&A`|lqIcqbNMhHTLC zQ6+B&#SsnXETU$=6}e$w-*#Jcrrix!yf@JzK3S3Ev?A2nL_ zLU&ZK1z7VHB}XuBpg}aN?!g%bfaU333ue{EP4o z7_$R`s%sXnYk9QWs^_q$%FC<7Rg?HZ^BC3G=MDbsDa4C_(R4R=RiBvK0ZJ5Au^Twu zjCIh|aPnmY>e2}4<*t+;Fzf#EIGx68ok1BjrkXYj+Pk7%HaRhVbO-V;Hp(uxTLjq(?loBG=f*Qg@Xw42p{`1-!({Ql^J@9otA||GAUY(T)kA@&nF5k-2)KX^yKsc@EQ7NOTqJ~Nb z!Y}!jB)9-^DC>!*!P6=7HnY<&_Z02zMwxzKt)xS(LN)8zY>xT;G2|A=)>e{zbE=%L zsc!aGo)6XjQce_+D%#R~{Rxe){MC1(rv-cg&n(F9hhU?DMd$|W$B5q}KhV(t`)auVBmQVlWSSv4$-&%z1BHLPva(xq# zZoDpeOs3}SCfIdn+|H#JO=dFv4$emU#M{%^)@sqJ#^|fjc|R-93(kgJ%9_&mHA@Rd z`31p*&@My>nZP5Ch|gu$lKp#>z5e=w>(Yk$hk@;;UKay@Y)qN72BJ6d@MTHiIB;?(+fBhzT%AI-qStH0*? zbmRq|J1c8r(I^D^UPg92*6-QwdPfGwq!p(NyfCbIO&8#2Vo}L|mRr&aaA=-ZXYf`# z($ii%k@0RdaJI5aH}x(AIdk|53@4PJ`96D%Do@s1fM7g5ioXd;?ZQ=(0V%&~fCU#H#c7h*Ni z{P?f~OqV0Ur?0hh4C*`Gyw|-A>*+_Tn(6r`AszV{8xXl?I**x!8^UW8Tj=ii$RWVG zhMny}QGhbN40MM1a_h!=t7|=@dke{PEBDmu^u5O8hxQED)t-D)ud_ZwCx}ch(SM$f z2RQ$3BqH%~{5pWzRuec&bzi1`Z5Y{hd%xc{2gLRaU5%1565yt+@^ zQnJ!&U)}GybiVPAB(8_|(A8hZQGw^jv*z&AKk2KguB6FxlasC$vAYE=M6NWs$m(3W zdp$42J@|LtnOCgU2?IHsZ|T87qfM?$Hw;JME&n!M!N(L2Uoe8a)nqwR8Z!&~xt_W| z+YD%kU(P+kk+tvfbETaRAbF(OYZInOV#6)}!q? zMvH~Ciu%J3#@!E}SBg#uiS*|Y!##uNHhObdP8NN*KI3A5F4pDzo%h`SY>R7JM-%CG z2WH}r;uiD!+$|do>EK?@EGvcvMHG~JTH5;7*J&$@F#MgrZ@fe|RXx_)=f>oY$!<|F z=4GC6D>;wX<;z#TFuQhF3R5nZ7O>U1^fY;yTPHeXL+ddC$5n=2LHZI@eJ)a)Q zmjD(eTNCx`c?`J^5!7A|AWoh*0TPHmp7hno<;J{rMy0IJL3YM+v$hct{F80yJR(XmD_#0^>DQHS|Mkhjj=nBH>-s< zfUJCq*gw2qHofQwvPmqP-6)^Hc{&@-KmeW#)-5fmK+B(_sShHRWDr|j9yL?{mveJ49(u*SvG1&kBF_P?i zn7 zCv*({^NMrPzBh?(YR;#?ksKi(4aO__-H~w zyCN-oQ-~<-q{7bI%GvlA>S%XY8(7*tLqS=l3s8{m9ZfN6Xl)>_-zD^R>`sjCK zeH7Ww5~i^HZ-s(A`N^oOkb@oB0s7Bp9R=(hh_&*f6s}fILyN6vM9EeqGU;=Gi9%QF zMY#iTQHg;_10xqxqpiMvr^7Q9H(8G#CGX8@0LcGAEBNv~m-B0wD|0&uq<<^WUctaZ zRTZlBT0u{GOmk`n3ctn_!@)&I&S-o&t#)YzlM9lWMol}CN(*(&Zr2Y2ox}4U>HLCM z;ayuyXR8Ibt6qwo{)b4P_`w-SPoxl` z?Bi8Rsn;UpId{X4mT|Y;*uiGgt3sDwP^m(^R7ti3vX)n@WhqD1EyAx>5phL;buD(3 zMxEdNewiT9px}8x3?}XKk^XdJo>#y{%OtRR>90HIIa@Q@-eM|YlwaGBV<}m)`pA9eUMoScn5o=25P_Vt#PasIh|E&wJ*>W~j zq0PSmAJFI{VD*}l;C?@Zq_m{F;`*S0ukYb>hA2C&Vndi0VMjaq-U1>cK~S=wz5-}{ z*?7%=_cJW~s{Scqg=K6IGrow-dz(u;)=@{I0Foal&SAAQHXQ34cv2wFoi|`H+=mma zb4Qt^+LjlU9yk>Kb@i>MroNYk_>JA1u=Wf~>*}hsto&34a?#-CWf6KqboI}JpJ^R; z@v&34B@K4L6tpPmqQJ4XvBzx0O(uH)RYT5h=%_mrW1&cRs zkM!1-q2PPwVG^T=>?}6q7U6=imd?66H=8Zr0FLN<`|;E?n~5T=)`n9q8db${0S5N{ z(X|&Hil6{*pGAS|A^9=TF&>%xPyNml*mjSNhw`flt6>PHK8pRMC`Ni%t&o3t`8>Ho@62{SN3gw0 z469o=@SK~5Ro*kN5J5-lJ5dx*(@`k#^J)YwOU%T`$qAq9BJ`M}!sCXs6vZ-io4j)@ zo1^@>s;i7ro3KHL#73ti$({j}ZeKCGh(h8rczY5dtu~f=#oia~F6p|g35*!NK7aO~ zm^}1Ct_)r}RP}MmUiCPvMs*DZd%AQ-qGQ9^qOGuLx1^VL$=o{ZxU8!Cx@0!AJ*GiU z4w73DwW0@=${U4*r}^wE7GKwM>x24pIsj3R!;KW|YDsRkT9_7FoU0l+s@7}jj;_id zE!AF?HGfg<;|1@gAJxBT1PyB=D76IIP_LEcwXV*&XDe6Q@TDCv+A zzp!#@JLB%@WmUkpt2LgREc71P1xP&@b*}!>zfODOeAUL?>rD4dWC@r>{OlhuDoARn zkmL^Tl;f?Mr%{Mng^%>(TRN4s*akN(*mlcZ{iX!ZxK1l3ZI%#ZP#+6=+us$VY|CpR^Yd!6@nSKGSTf}oig#O zGCPMZ>5>SSb8l~x8w(o4Yrr3ZqguPZZy_~ci|sQ>JnqT)?L5evUI^4y3N&8u1nkO{5DZ?B^kBykGZ&4H^8{zyAwJc_PY1eMZ00pJtV)Sl`;D5DidHt|s-}~A?X6F$ z{E$4*OwCgn{pWpUt6+FP?Xq=Qyh=k%YnLOUJ?n$UHI<4JCf+u&vJ@gvqfhmNpu29# zWb=Vk-OBCH(jrWJ_49 z*((!r)rY1nk6pHW5y9?!p>H7tfWOebol7L1;$?aY0X!UK9~g74<)s6(b0^`O@#8pE zhUUcEI9S$|*x46(-X`r()p_pJdhK_M*WEw2+v041i>ywQoUcom{AARwyP&v4y`%Wr zZ${s;a5T%lE414|kl~E_5)pdkQ%c9pXpzgE2k@Cn&p#JHLsIr~-`YGZbp!uqJp8s| z_7-ygS~@SmHjsSFWof1Ha5#uHiIYv%PhVOax?247hwGh>fLae_Yt{z|{%e);&C7I` zqUQW}^`1o;QaPoa$FhGhlU>3*4;VMf&sPQF;~(?Q`8QPPmKJn+e)0Ek^R(7IW_*7n zcvb%5v&kfw(-tuAzXLrX#LiypT&BB z=&D=v$+}xjw*5@|JW~mqzBYI3ci9v!{m952DQ%!gm6EVK{;->Q`ozj!ZV)MO1-fGA z;FJ`1ubij>&F#-NuGZczHV!3-?H`sgDp(NGGnh9qJ|Fw0Sq9v@A1mNwFflwS0R0^0 z*ByuI8?AODOYpOd4_K^#b^d#(6?ZF2CxSjIt=bV|8CJ*L9R<@?qt6rPdT1GL_fOg6Id+fnE$M)xa)F35AFpjMRaKwHIg2!>-%gR&@lW1a1wWZn zy$CUaea-vpMwpl();+5ScpQt+wL|d!S$%yui^BLE%&}!Mw!TwAhsPQ_(RY9=`z%j~ zz5aTYsr<9X=_hOMO7~nqn_*fonxsNPz3b$Ku-7FXsFTMY9_MFIlC;Z7+wqt^YA8Q* z0LN*`*^%IVl$!=YBcN!>D`>-aCEbq0M|CKy%Q?2E-qtO5=ic7h*xlfKsYx5b?QAaa zwml!g*8OH19$)*j&er7=mbSZ2IU;Ag+kn&wR+@8TQuwrSXBDo)nb zDW=(@`3LPv3;lpb*pT`|zIsKqyGb4QM3kw?dvL5%ywkXgz!D zA69Yvim3E7iuTlrEa+TDk>&SS)crsl#vL;-g?7?acok$~655RoMED-)BOg{A?H|{4 zT$f@lhDk{B60dJ=3uJj*4AO}oZcS}jcdbixL)(3|&wu)Zz?^!e@;b3|9n*TEp2~?V z#~A#V!!NVycJ2CSL=00Kv1Do;PYCT-{Sj27sg-X_ViLJoq=%B<=275y4Td0`1F6#$ zGr4cxKHsJ2Pvg8?DB8}qboR`a``n8HW1xR3FI{DYhMMVlJ&a^OErN=cv;B(DECs)) zJB_N2fMcoU^{ne0_eryD#3il3|7q{a!=dilKNCulB_Xo(w8+jwW0#U-FHDxPManjo z>@hP9x=cw`@D=Kc2k@mikO@Av-yKJ&+1=gf7k>)iK! zKKJLGbKmF8L57g01T1@0Dcdy&^6Ci8rIJGd4C`JbK#u@2x8~?_aYoc_7cbc@KebPY z>6g4esi)mr*y3!9>Q42;%*~JWw{^J`mpR8vE`bUJT#D%JtHviO>SLtoyaWlwV$}x9 zcbl&D`f30s1&)(ZD@5<9`TUX6G+W-e?xuWL&OA3E3lo}dtr+v*vbvO0P$f4T15cI0 z`g{4)$cj7MxuR(c79mxI*R~uzDB+7=8W{u}J+KOngComKPYDC(kt%ncLuwC7)LH8qX<5!9M}NC|Mf%vvpyC|o^% zL3KUqa}X5>&fmRkRL68Yf1Mqr?c)II-uziHNG zy~t_*g}adE(2}7J7dyiI(rjw2kpaXxd>{a%mwtuPTgjyWhDbFH{&;BVdt(HKESZX5 zH@28L8J~>*kk>2*s7%D#veMgyGif24F*(9ZOE7mE&HbUK~$! zA_ygojRFpRpEVLB?6K44N?K9^OiBX1xDrb{w6(Q?wDa^7@hhQpxMm9uGp@JDktuDL zF3583TISi&?)=kDh*LpLsw*W;Yx?CtM4vHt5`EnWc_B2^VAvIkmT9dWVy*Gm8vC-a zxqfCvv{}9JljExI3r};k8dj+wd;A>4)Yj9^$w?n>4jb>Wz;^iQwRC?v!{N|L`^9tU zsRmbc>~FDW1U%gBZv^R7X#-(3mfCt)&OlAI0me3esgIWZ8KV+-Qy#f$$k@>`xK-Ra zs1|FH*+LtyS#);eEhUdW#s{o8QhxQ*U}6MDXUSR7#?sq%F)ZOFOZt(n<2%DRmr&AT zM&{=5Ba-^ixWz<-ebr>0xZ}h+VO>eAFN~+U1aA3;D-XsEL-;p;yOJ3DI?g`8sxrZC z)HgwS%E27bawAlzFn);#aYKG&U}&Qv?YqzCmy~asdWm-4hT4jGsWrkwYbkFg#rk6x zWpf$1!FJ7ys>6N_BvTJO^7o*VCh6$;qcJcliw^x@`Act%V@*XM7)2=i}JK9j~5v=+j$Fi+RYeY zy4~yy@A^%nQr^V}qxl+c=>lbss$emYexRuv%*OT_ z=VQyR-QUQ;!zd!3AOnASDZK5tTvPf&5r^=VW{^Wm!H;lp-;y5zLTz^lkDfw#f5w~| z@wH)#MPrgAIp$)Z`GXkuo3xK&gBdf1tyKJ{@8kWu@Cg8yT&gDqS!np1`-!Ib!&Ge? zbD+gsgaT+wq=5$^?!2|J6!V7e%G zin6$m6vuM6SJ@U*)s+?v{zU1;f%T-OEwUZ+fnd4U$VBqJBGHP3i0m2-jvr|+%5rjh zF&Cce>l2xE_@W$aJ;}E<$+Scq?)(qEm1wndXCgm}b6=vPzd5~sfQRT&pDT&O0` z5Bs&|HgYK;BH6|3jAueSx!&n;m5p8-3z=+o9MTf^_%<(T=@Rab*Rb|SOlf16ngd5X zH;vn#zAakT7-;(OlQw)jSJ*aBZk<*Lq=wx#2 z#p@0tu{TBg#zvFh$&C6yat3M(yvr9$lYWNIWm8TRqmox<#Cp@T#7f9gpNO_Ih*7+p zFB3IQ6~`Y~sN40$@;S2As2UZ@-N0(9HM(j(zZ%4`0o?F(1a42yOb0%K@WnSIdyi(- z`fUiw$(huX2rgH#E05BE_A{Ny#GY_O#-JtAe2hZg@T?>SG?7%J7=J}1#ur#NzcC@- zrI1(OR!uw?_Mnh9ghlgghNJ7U?cG&FvqgD_o!tAC5GmH%_p{?gnH_u|Jr6&7CxjL{ zFY3x|`@RJC$#CjKM`8RI0!uHQLVaT3;<8Ei7u`|8!UvR^{DM*{WHQ6Va9Z;EkZyCy zJ!zaa&boh~FZ(MyYhI~URfj#q|9VZNL1c6!+nCq=F3S=#t(K5UA>lm3WQNY8%1-tk ztT1*&)l}`e@99BL%wt5h!P%_>3bDYn%qia5#%672r7LA(7J(Rf^kHx?W^T4;vdk_A z19pqIFmvtK{vBHklf-dWZ>P<8+GPtG*yb^2;@a)QMavSq)5GlG>6wPj;T&0Ci6-W? z42?c)DRJ*g&YApdChAt3CveX@y_$F&9cz^RVUY&-I~4{R7jw!Ql%mtsYFLBEyMaIH zbBkEj_CLC2ZWrJPT#ql9`qR=bfcAx77^3z3$L&iOE(%?lUxg<+v_VY1*cFcv%A4r$ ztRy@ICk^Gx$-fM-x6g7Af$N$FY)=ohBV2Mj%DS+DaWGOq#bVp+9IH7le*j@LNASM5 zj;5Qe!KleoH@cEJ+Tj zsm;88+Q8e0N-Ng|sZrDyx~nY%sXb7Jrw_!UzB2#ub5k^8XmHT_y;K|h>zL%Xeckqs z&I8LD25*(T5L#cpu03e>BO&}e;J3CF*g17uN`lb?_v(^z^jscd%FMJJZkEx0Qx$Kz z{_O69r8Zc>+7o|Ul!MHQtasc!Z(MGuA4_T2x`41`S!4N3X1+^?ot-mQK8V-P=&1LZ zJCbFtZ6dZ}9HXQ9?dYX`=?dv1#M1uQLa?3O^ZVX|x zfP`07D!j6GijWljqDT2*U~*hFbq3gj_&GPeI7>!s}Y6Jbtc)dQ&4qbKu{&4R-x zmR3{3ugAOdGh2+e2N6ERwpbioi0oOe&H_m`e-4R-n}4Of|I=6MRT^NC8!TjdaE{rX za=HVlP+MYFxX=TKm3FHt$YacLOH7c~8~>?`zkW+)0K)0!4TaqM2YpX_6q)(YRrNRM z5Fo~`m0DRTcl+MP*S@}trluy8Cw1R??kQKeAg*9m@1gn1iHhTu%HI)*xIMc5m7BrZ0jW{DFZ}(JxRyn zTsH%CY-?s+orQCgzn7PnxaRozVA6Q4qU`fPT^dhuAC+Xcg~(uo_? zWLpJhXee;~tr;Z7i5#+xU31G~3*JS<-qJUkw2y@Qd*$b5q z$C=}p+JGY+2h`lH64e2$Q!4a@4)5q5u%QdKy(e&Z3(|QYPL4DaJitwRVOj|I_eX5u zslC$eN&%EmWEOsjv8(y$=XiZdHZy%cb~?G}ZR>y}wKT zT)=9DA`AbA(;Y6dS6#i%+OxV240l; zfY-QYRksv+)HFm)!qU=`Z!`4s=g*vW{cr1zB^6OgO?Smbfc8_zd(qnv$i)p;6d1G; zP%TbVpe$=MN^3(xAYEm;0*v{kC6*AvX0ESct_&3oHBk44wLmnQjn0wI+nW<@q-TY= z4OZYdbfRV!q-K4rruq7B8_Iw4`w30JPXn++m3D^_E$S9Mb6hxDapq8B;zR?4an!ch zz30Ff?N(m_vmT$IZ|94B#@&N%iOT?0GqpaLNjsENe!B>ej{eUij{U5-OP5x+fjNWk z@9^9e zoT=F(+a7BG!vpwQ!%nJ`ml)S!>hkLYW8rkKEP)Py3;7LS5RCodHT?w>K)feAQGX5!*MM=s$6AgxlCNwQXSVEylRLcsPQYxinC_^g| z5$`1{nU#6W5Gf)dL^4DJ&F8;=yYBP7Z+`E6cRKg%weI`gcZW0Vv%hoq*=O(HK1V5) zMurRr{Lg{4=W`$K^M5}~4-5y0&NWOh9MFXWMwoRONz)HAGaDJuhXc@=U87^ij?oui zd?Cl4J$vZTp+j;UK75#d`Q;ZnbLI^F_S?j z2x-xxMX5l60vW=4!37tHP(!dG;3rO;$PoO42M^M&UAyS_-+!m`&O1*8`lg$1qWbmg z%Tc6A5vRK6`Fb?xf4Z&0{LerC(CXEz>4OhGkYoS;{Zz1EL8@D~F4e17k80GYAu}q3 zHz)M>-+$BBUwZ*%OXj2+-#r^J{-+aW z=2X-7-+!;3fBtz@qC^SI`l>>O3aVeferm&p4T=RU)zw8U@8_R?RSt>(>} zr|!Au9>uDNV%0;v^wLX;^>WwSmdXYMod2m2W>z0Wh#@Ft%9K$PCr(tX+op1yQdSo0 z*s6E$-YS3o{OZz6FIBI+@`_@8J7wj&QIO%ka6MDwvH&ahNvY=mSnjMw;wS4&olzr7v}BTx2q~us)#T=`|Pud zEe)AU_RE*Od-tll@4j1f>Q0?Hsb7En)fY`S{Erx>>m*S^F{QtUAuN-k(n}Oif6iF_@8hnk`rdk z2yNQ5kr~U63#Ei?h;qYIPd%m1J@;Ido}M1%s5MN0yFaB#fy_FRhOH( zckiw)yzoM`bm>x8yJYyE6#o+o^Ly{TCo6q?28}QywrJ5p?9uE;;!5`o|C8o_d|}?V zZ=Ygc3e~M!H&+JI3zh!#(@$bUzwNf$6olJJGW=I63;d5S%y->&m-tn9bvMr`!D8nn z(Vr(zp6pbWQjg*PzwAzu|FMOcT{T6$Sg>G$qXX#G${u>?A$8@IS30&iWcZ(15|ZG5 zT1*$vn{U3E;77b@(IQt}AJfv(i1k)t%Yv)zK;S^BQl*G}If&IR+uPza|4*JgN%QB= zkLVX~juCvqD^{#1KIRcOICLTj{zrEKh4&S=QO%h%C-cw4;cwVlzUZQh)T~*v9IiQf zb?^veAMEHCQ+U=b{_ohaLvc`pj6DZ9DC{&o^UO1f{lUd;p<~C6j=hbxqpKPH z`}bEI_2IhH(D?D=GZ-7Kb55UQr+;bB=bwLWYt?S@fB5j>(#HV<24w1^b>2;5Kmz`! zMSXXF^2sN3=bd*-7?MM8k*L-14ji!)kVKAr_St7q?{V@ZB4i2|E==H$o#ZC}5eXEH z9(dpZIc;~}qt$JlOT_;OVMZ(+LXPUxsbiJl$|qt4t5vH;?0YQrj~Fq+m3D+y%04Mn zyLN3_vt~``>6HHO75;~J>h$T;a*F-H!!J4ZJrVySgn9Sw-4YyHy?S-W8X2vk*I$2K z7FrM3AKE_z5clZOgLoI11`Qe%ddczs^XhUPhjInNU?USQZ==kyDw$<+i{-bm3OeTTH zS6y|Ls8+mAAa;!j@kI z&I4}1O#&=}#Une~VU_JB|IsgYEF-`{Ku4Z2V+L_J9M!5-i#Sl(j&3JiW<35!fWUAF zloZTnF#%gix|S5(2%T}lgbBo9STuU{=!{ZG18@x-xIk=ap{iA@ih&^fUMIfCyU#!We7f$s>*VsLO`BrfX8ZYg{ErZ3#=4LO z0VT){8aZ+#J^0{*5mf_z3%g=ie0}`!#}U_^Isv{|JhG!st8BOUAFof?g#%rC?X~f4 zv-Mg${znKiW(Md-(3hO1k3RZHw$O_gFCMjO=y4#%yoh?;iIYHRf`!E{a+Ck)6EOck zc%55>b;_hklLS@`C{&nK+@iSr&$P|+-xr=4C0I4uHM`CMYl8<;woTbA7f}t{b~B== znUM;PC%jmSxX;cL-+ue8?2g&(eB}oJ!Amx~sVlCyLiz|?kw%RgDTX%_2djn+8!GGy zx*3I^fdA3Av-veH9r6Mik)6Vs)w1EIz$Q!E;k^w1qmN7i{zu===3k-ch3p&Q*4xB$ z^>QRSvEvPKu&by-b~e!PKa#si@jv=+Kq)qhN&Fk49SkWoYSbv<2VQkfkl}x3E+@hN z=xPRvL1;Vs@2dOnzdv)S0sO|>xuVba>eb7!-W&d(Wi|MJ$t9Pl1pJRJ%qR-}%sk-> z4D8vWgZCd}JBv#!nCc`M{{PGEB>5j-m{An`R}s{z3k+9Qg>mfIu@e8s+qzkOG$r>N z{wK}<#KO$3e-d56X&TfIKm3rA0rE>BbLY-gyz`|74jkxOlMVlq=6_;g#wY@b9gwvM z8FJdT>y{KDssZ4T2o-Xh4F8iFf#if4MX{f);+;9gfsG0PgE|xEV3Exm=xSa8hcx_8 zC~?UPGl~N0Jo`u}&IqN}ty`C{bU)qzBz<7av9pt7`B#$Vli`0{PGwD)Q54jSCQX`% zE;)4QP{&bz;&vwo7qK2_+O(j@kYH zE+BmclJ)@P1wJ5NC&T}!Ba}U1wu<7wS8+(fiXTXo>}zUW^2I0G4}1tqt?=98*6=@* znB`2EQ55p}0p9|do8V~$M1773$yAHizHHpMF~b87sVqMI^i!`jG3oXg{%5c%=fZ3i zg`9fGtp}k-1}7wwT)TFyb=mb#xGqASfLerI&6+i9x{lbCN~Re8tJDdzH85Z*2c9a% zybz&*DGz?KTeohtZgK1r`Tda05?Q2>r4{NB%xyY@rU#h+v4ImKo$#`L26?OzfXY~L zgoN$LU5zLOBx=Wz>Ri^GgHQl$kUJX(Vh1_xutXKJ5R3a}PV;nUoeSqvS8)PUc62&72PX&H^EB0 z$Vc9_74XBJJ$rhwc{y%V%rp==F4^S*cr!$hhuAdda!b5XJ=C|WufCd~W^nkCHyV}N zR_He~Tl{(Mx#uKDhn-l;R$YGheDTE>>3{$GA3gf$qkd>^w%Vxe%nWY8mW?DsZlb+s zYgAJF(0AW`C&`7NW&j>oQ_^>4#()hOGDH9uIbE=(#btqa|1ii3o^mDC$b^+#v5&nP3Pr(yjqh7!FU^ z#tjO!ZQE8Hudro}%mbQJFoYR{h?K>cskUs{LfBZ*o#1#?rAie^w9~3pE8V+`{sl*v zgEqK9`|$=!nDNsM%4;{EYE^J%W(ado7DNGE@CHkmA<(*;sse0^44yFSzKIavO`_ll zGiGOoi6zE97PSLT|GE(39_!byFI)I-W`uHypTQJn%khR`xahIR9&?HJsjoKRj#YX) z8pRS9#0@_3$RqT^3onS@My&h%bbisIMYM9|N`mWaP)U17qgVs0o3pwJMxbEM%n)#d z!$ZYDwpRvDi6!&CIFHP>fN}`(tc-yQ?97bL>k!~+0(dc!LcyJx(S3l$FnTF5z&M>e zdGcSD`0Ve@nKK1eVesI=K5KdEo2y-Pc2-&R9$sr=e5A@DE?-1wl7B#~U?RBD!fwpFZ zGMK^0iE|x_6F;!nyiA-|TY^*()5uuZUT&(BZ8I~o#ce?60)LHDS_qc3b>54gZ@u-F zyg~Z+@9)Ltxz;8#Gl#I=4>O*h-XI~Yb>d$$Glz0HSFT(%V88%EG&3Myy+~umj1il7 z-@bjl*gRL;WM<|t_Iue%;76-V7<=vfYG&qe?gA(U8xfqDN^H2{*WLU+YSbw4@`L5Y zP$UNeziAT55~4P3+DK}N(9H-=cqt1+L~__oNRI&&CZw{!E*}W#8vuOx_~VZYRIlA_ z@MZbzsA4Dz2h!8i72|72E<*+{S8R)x?>xu~dA98&ws&XL#rawkX8@4&bDU5|a+lj# zw~xzC(;9p%C$mfA#*HPBO~Zx_C4&-YLd_@+$%KHaX&3F@y<4DoVO>E)d9!BCB>xC9 zXCXtBq39eiYDO4ekO>RADJO-e{rmTejv6Y+KtqDC*-5*0?UEl5>af%dNLs?7iI`DlG(3Yw@$J~B~?%W zZ!*FhXV78a1&kLg7+7>!1mU(z)xhF1RA+`DLpR2Z41qQjn*(P@DE2*pz5)mM#fuk9 zB6@4agmBw6Gh=ZHiv|dSj6l`Zt5;KzB1Hl{4#{-h2y+r#0*2f2<;y8=-n^m$z&vJ` zFk7yt5M-bfpYVIP&DlBU{qNiWMUqz`ZM1t{hdWR7o6&@C*p`eE8vqa=)A~ ze-d)Q_%kPD(b*dywCsQ+5!~>bur^l!CIh_|f(ZdFTC^w?C{Q3nc%ha+sBu78vAbvq z{=tI>3ES7$Mu%RGGE0^$DcNNkHELwki?i%c^j|O`Z4+_Dx(>mDzRF%}a==%kV8Mc7 zK9{KWfbU*x|!@xPoFK+Pryl5%QeWqxrMxSZo*y;{d}A zD9$&n*iQp1F;$^L1;xRxij!h07O=3p?fJ@E)oS+a*{VZ_4vJ@fX-9(w4b=4M(-prJ z?5Wh>rKTBS4jDk69Tfw?C{_zZfEb5PamuxjJKXt~b#66p-aN$#ITc$}6k9eFZ@Vi- zFLkFu-mKLKGscD02N7ZjN|`cc)WnGs73;R195U9i6^BhJ_Rmo4Q>_^EQL(=5$+kM& zs9*~-W;}-Dk|+`efKeRxr`Rjb;W5Zwb!_-Y39ZX?nTnxnF{l=pk=gsrSMAPeW4m|nt~dj&TDo*; zPK)xx^ZKh9j0z+xeS8LuutwlnS?tm5{G@yL)3kOp0jBkkG zu3o*m0I5U8iWW7a2`BV+Gy(z;B0}K61NY0I5)xkCc;k&UiF2PI986QvSD06G&nzE#6R(h#9z>vL2oMgZ{ZwUtxxGJ685cknRS-KY7cREs}5&(IbHS zLUt%bkHDoAs*jTd|LIbtN=X9GZr!>$S+!Gj>50#bkfvqJmQl~1J)L4?rh4#N=dE(; z(W8gN^FiG~zCk3;L}n{M88}Vwzi!#GB~6$x!Re}hJON(@%>VryG1{)k`cpjQ{LL^>){(r)iECJL=(wAGVu$5#=8_azt_PsrX1R zP)x*ioWKqpoc`T#Y=Wt-aN)x0wbx#Y+BTn`Ow%qp8@lS|&6_22sdMkQe`^{tWC#Ia zA37=2if9Bq9;uBHlI1kPELXdBZGrc4x^5@x(@vP7FGHYVTXmY&uU{`!R;yMmZq@hR zd#`Iz*We2Rb9E%`gc;%gAmFk&N&Jc?_K}t<5nb(70^+~l65c1vOYMXiuX&Kuz$tiz zTZl)9s`e@Y7Qy0?SKFA~c4;TfFnxiLGtX&a$9SpIPB8ME_6dBkc$Cw!y!O0y!py66 z;jtU9QicMMx`9pSRe~C3@yM%f%x=516J|Dh2`{j1>og$+Fg7RPPrP;O)|l1r+qciP zS3US*@hD~keR@GVVaBY(Z~?Sx)hfq_1dv=D-9gYxn>1-6sTx8X0V@mOy%-+AwO2h5 znqZ#Ok+c(L3=%Rixs_fFc>_71RD3X+Hf<`Y&boBzLdfh2vlu7Dq|u{C6Ozt5O@J4J zJ`eurNLuo_zha2q~Jb19=YXMjzHg7Z| zJ-y~&^M$RK;jC!n$dQ_jS@yaESY3F{-FM%8qUL0;6i+{;r`H^8zP)<&qVeO$6QWHF z5se!+j@WlZJo$9xhn8vv1`9J0RE(N6YZAx*={kN%^$VLMz>n_Ou_Fx|HY}-Ue0Y|*nIY2Qw$KU4GdSp4u{<^ zcI;Tii2RBd#bH;p`>LlubLcRgK7Cr%s8K`lYgVyYEcBB0|IeK}R{{kF4jia`U%7*N zLk(DOLM(jh)TtvW9ALI9RH%@3N!!nrD_0WIzO`!AiWn$T+kS?0OkbTjq?3~5hJgg> z=+UFHVF0_Y&NOS*EJ8$jF54rsqH~frb7G3W-7&g6QWBF9XeDYE=~u+dVsgjrC-Pf z5J1v@0T^viA;4^J71-B$_3HT^oEzyYkhF)fInh&UtrK7hwlHJhk=Kv6y#*-~8JvKq&kIFQ%f!Zw8#D5lAe9A! z&Um`L4mHjQv&CrS)I)APq$5KHCtg4)UNBmhUH=5m2Gj|tMZ73dyiKp>%$ehQyFAnY zBh2B00ikB69K~<}A~Y2%R#bxq4N@FA5`L@g-`Sa8l35~)6tc8J9pbdZfdfrXlF`A~ zG|7^AC*)?B?-*{2V7G-2Fx*N3$jExC9I1vB;2eYkU;_kG9Ltw4C*UjBs#QyJX9JEl zr+K;AfA{c4vt|LsZ2$lO07*qoM6N<$f(1|a#sB~S diff --git a/assets/img/04_01_b.png b/assets/img/04_01_b.png index d9a30290d6c9c78b72ee5bbffb47736eb57a5dbc..aa66c8e97cac15cc315e8316637abe319e357b17 100644 GIT binary patch literal 126734 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%0D*P>lPgwO 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 literal 4600 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 diff --git a/assets/img/04_01_c.png b/assets/img/04_01_c.png index 584ba952d3476c2d5f53e0c9efc18f7952b0a4fc..f989d694390551eb9ece831b0c29b4bd4f4f30ef 100644 GIT binary patch literal 140662 zcmeFZbySpX_dhCK5(bj(mn$1q3? zIdI13{eFMzywAhC&VT2uv)20u_kv;W``Y)u_Wta?BGgsoi3zC*@7%dVtnf-k^UfWd z{5yBB?D28YpBUPF2)%O$?dm0 z)Qn09I;LkBRpnv@n46gm->FR+QX-Vxqhm09#zr%2a_0>d1}*+uCyXzXPxi>o1j&%J zHEHn-)(n?e@gvFDR{TMGzm&pia3mc{Iv5zXQa)uTmfbn*2+b`l3}KE4V8B<@WLK1| zcMXuT)UfiAiwI`qDbS>RarEiLjUxK)UCxIOC4Z7=poGaDXGOoUCVPV)NS4mn)4kG_ z7!H7NAiw>jFh$)#@-^HneH^|=C>Mh>4^j8hmMa-3{MTT zomaZ;cJ0b%8VwA=iykHL>S-=}RC&Y9^<$mK(*_z+q2b|oaUPi?#A>CH*V(QKEH4N! z?tfzO&RX+_^)I}Dbev{fiU@_R`9e^1U4Xi991LtS$vd}RND0q;59S_I-}=wL?vf8Q z6QIJx#AgV+bIT>L9|vE~HzNh}KP`ZbFXu{p`@QJrc^L(o)%QoR-A){Oee~k9x2^lv zXa8ONzij`fi%}Yjx`|1Z|0PmbV%B3(??Lc*=Y-}I`QMCa(1Qoz zF)=!ll7Y;s871TS^6cW`ogqpq&Pz{g-VWU7G;CC6V`FPQnKA4rG?>D|z#i4eDJgm7 zx;Z*sq>`SI9J$D#`S->D7hoj$(dJzUE6(^2mv8kks97X=THmQUg#0HXK6V!)czmSWLhshw z(Fz*WM?e~|$gnW#GmLGO>j6$)#e{$a^VJXvoq zi|y7A1!@WN53S!n2-FKBo{ZU{_s}pVE%;VP^SNhGSuLjJa6n|M`@8c+ecIy&FMTe9YnJ`bM*~_TU>_S3%mW73YN*=@m z%I%-kHgTTIpRXJ!siXTj+ePuoJCuMsvdMk+6kPbzF?)Zh)o>ms1mNl$r-N;vgjPd)1uc?W(Snmh z-I7ldb~9~yb@iTtZrQLyGt}N8J0Uykxk<^yr$}7n^A=)zd@n_GKv4WvnCsSufLP72 zCZu|DBMCgqKV%adWmC6%z=CzKUocDZKrQMYKfDbAf*Q$7$~gGRA3k7jI(SR_=KeRz z`;QrdgIQEw+lygTwawHOJ-Zcr479t|rf)<~awq|V^VRQtwHmAt18QLzv!(>R_sT>U ze-1$OrMnX_jXbla*5_`;7B6)M28P$y*Ttb{WrLFq8~IcMo4x&sJG$42;~kV#v>Qm0 za{T(N?ovIw-6R!-Tc5!&b~lJ}NL;so(5=9_d2nzrgVB=CpxBenUpIYnqQ0sAVnr(V z-o?&)r>&i%OTd$-IgglX*)cb{BzZ0t;B&W2B9QX+^-O}nkx5N37D`)3M~v6pQZ|*) z)kViZzmTxl<0m0;r`+lCyNLT1FO}brKEQ^`1!jzcR#i)HrBT2zr?V~_O&jpiB#X-BuAkBuj$G$gxfs5o}KhRz(oT`k`6DfliN)~S%L8&D-knFI}Z zDnIYdG#W;G;^}9C>j?roNSi+vSM~UHbC;M2kxnlo${qvS?&GFVn4&`j{1F05iXvx_YYN zxz)1<)1<4bftB6RuXgNzP#))PD~R#I3nCP(sY;UZ?-GW;Z#e z)mYtIQ)JXpjD5$;b<4s*h)98Z_LV%Oy{7B}>u9;A#9T2PQK&kO(SZ08ENTDe4TvoV zZ+(MqEKKit{lNi6Jyn@zMMY({PKaVMUad~ix$}qCWo?S zy>_c4Vy|RG`#kO$Y`3Oef*w$L9a=YS4`d5o*F<1-Rf{@Ze=3TFPn>1W-4A+jpMh7I zNXq5mt$@_7!@%=gJK29V&Ii?i*a`l*NU>2#S!e<`2>dt>Z}k=yzU8(cmUaJ z0J#179-#|pIPXPssPl>Z-*vE?1;>FQzrEcEB7Rws1-|w^zdX9rpay))2r$;v%$u0d zqD^kD|3Oipd+a9@$oC=%QuX`+|kBN3k!<|G*QfZ(~ar(qa6*w zit>L$?wk>95zqaKz`#2rDZJ9sVI(@r%F5}}A;DtoH7@IlmHKsZ9X=-$75a5A3?Irn z@niV9ZcnO7OkbTJxkJQGS;fUo0s;a+y7Yv|jKGeTdYkd5@cBCV#a8ztBPmY5x549_ zcL#s|-CaAN3~FwE&hk(U1Qjs$Kbcm|nb6x&6-#G6IG$7!l`8-FEo>K0;!JAN!^%GU zUJc_4{LTAB&qeoSpVNI69;mfJwJl{ssj!QSi`&-NlX;q`&f0^knCg0pliRG`AKv=C zMguRY5S`B78SuaS@RRK>o^+d&C!MJ@+#II1rRRK#7h7%QfsSku_i7SE-&$D#1O&7h z}h}y}3H0L#y)hd`WZj-2JYb zfTZN)AtW2eZQ7f4@8JB0(yLeDPoF-W>H>p9!oqyzBJ!UGO14qfYzH_jn@^(RJv$eH z{4AmWFt;WQD@Q#x_BL3ruCK4xqLINwkpPAjd(1{ejX!>njj6rxPSihc>SSI)*i#mD z-bT$|pLL?cY3M05nws$zNBz%ci2wP*W?D4ifBM4zD^DQXauqE4`XAmxGDgzdy9EF! z=#~WIVDlhn(z)*jk1s8VOcCD>veanJ=9vAca&+=_!5skL(sN6GLjBw?!%9^}L;bz) zft4ZJd2!r*kmL6cL9(F?imZJ}`5>vZcJRR_i$vF*5V;TR&%3L22AvQgiAfaYUsrUs zbsjBlaBh$hk`QYJc4ZIW=(o${wY_to~;K>j-^;=cwtkBegBVbHQ`XN$~P3B4PD#@a8zq2Jra8KkfJnE zV^y$LEt+Z;rdOt0^}cjB$wa-tXce|lW1*iqW&PcYsaKYjE4rS@@{??pU$^YS+Q|)=xI2X0(PDHPfZxd&UX9k z%ampR4nAn(S%jZhUgnZbm+6yaGCZOcFj6IDPC)Ixo_+j#*Hr6azEe6Tw7W6vC~&ad((Zmqzq#AT9WxWHkqNQ%MB17MeX3VGnKHdDUA|tQW~LLCY+Ak{^52#3 z8ap=@qmQhY804fqa{NV5cm4>wxxo$hvG~jXg`59F)G}2G2fJq9hU`W10QWAT46F{o z4j7xkabg!VW^VX^$hJ1jl9DxPoG1hAo&lT0$IZBRFu=N!~2_ANzn`pDU?g9weSEDo<%ycw(oKcX*g&a5lgd)81N*8T_zL zkF;cb8CRxg>rk{>@7K~QG*!#Q>9AQ{=d)i4NOYp!Kl$=Wn9W8-Cn51&z8=NX)55PW zZC|;tFv)~Wp#l+5p;tkSfWML$xn$?I!8 zS3>MnQh5$zllW%r->8)Ir78jF25hK~_J!2K;CsnReS3nnYQetUMg`y*`lB=YI&S&H5(`zJmNBb^q;S2@u5lmu&d;ej6 z^DF*~mZcxZgp=9?#=dMKPmdq7e|O~MG6O$f2#|dFQu<`kRJ<%zTAGq>ZBr5Er}%}E zP}k^X`+b{1EeDZbG-x;HO}S^hD;MVvbvfPK!4c(79UUv=VmDc@+fKn&eCy3K4>A(f ze-Age;xX5m&Ig~@>(kS-s<$xmyta_TOI5fVw>$P*AVDNY8>ZV?=KrWJag0&!Zmjt1 z(09`au?xU&fi}I*7xoq}san)1=Y@r3v2gDSN zH(%@kGYCMrX=#HfQmd~l0*)Iq+iwg%1gRO9`j_^P1TMH(A}%FqJgw}#l38(Z_yY&X ziS=|eY&G9a(Ow(b9*Io(?G(%5?w-z#U0MD0p7{9&7X=X^FskVp7uc{v-aN86GX& z6@9KSbS^6CGevn$j(VXb<#h2XRgSu0)`&Ol~?c@9^ z{43+$iTh`{>J~-z;S)^*&9|{y1)nte70Ud(is0{q-&4{(DC_osAqDX_4?@h2g>$|{ zH4&w(xXzo1y*pY=v#?U&Dk*g|vuT$zx(;XVI8l*J30OC3Q*e^--3j}55m#qa*D1@W z7c=N^R^=Sn+U1(j5%SQ}>*9dFu6enuR3>3i?_6H>Xj12A&y%Z;*X7eL?96g{EX&Ro zaYmoAi&n!PvN0a?*%r9h^ z&bJ2@Byu2{aj6XEfp2`HC(apLMKHEQhk*UcuwpD<4?8ETR0^`Z9t&=5MNO~w7~6w~ zZ`Q4f+1VLY!btXJk+hd?FBoSZ`6H+(avjAq6Bo*pz1?-1xHj0}uUt%L-K(|VNp*Tt zKJ33sEAA%QM)FwK$|_WqB83K@S@JO*W%YN}#l(r~>WfoV-D2#cwcwW6Q4nuareahg z_^Dxk?A~mnO1g@-ytcYgY2X-ZNT_^SodOZR^Vppe__XnFUS?9HEnyi4w}y#h(Zpoz z)@@eoqOia%|Seb%!j^4M>Z4tsAAG7M5WX+7UT z1L_fgn`nB5 z>$O4}P}ktb_Qcxh+Wcd{VP-^RII+g}ff0Rsi=ceN2iuu?*JYR4M#U>NtczF0>pm-A z7k$n~O>KVea4ME-b$v957cou1^VGSR2{8~vAT9>0^+XKasFC5~CeCr1t+J_i`-nMZ zp$Gd%KEEMxTOpa#+2Hk$g+5=6$Roy!_dmLtC0!rXrPrSwts1m7<*w><&6eM=`k(4S zwmJ=&Gl~`_5wI+YQUGK+(wp1nC%fwiWK$C)@@)V&q}Q&y@O0Ny?ONtrTZn*{>&o4> zSwHO}f12bixSr`$9KG*ReL7x<+*Y{+s_FW8ayycgm$8Uuj_-7A(+5dV zD;JAsr64kC1?B$T;@MP4Zggfs+XIqjX7`;lnPawcn@gUb(2Ge;I;I$3MjY4AIEYqY z*`C~dc7uJG)}_M7j~1{MBF}IcQjBU?E0jM@DqWsxvu|WWB|@Wl7_;A7@-v>{$*}P} zEA@yvqkBRKl;(pRC%T0z*w6;JP~oJu6P+|w^KDC!1YE1dw6EZbU3;X>AgVd@dXnC^ zX`QsuFTBOfxX}qsuq)^p5t&Qx^*KsrJUQ{D8(T$i&(73k_@k5ljh#2)MI`>OXprlJ z!*TO#>rq1VQwaL&FLZu`@KJ3nc{X;g@eKLwsr~xvnW-HLt|0roNm!P4LIamb;IugOxP)7k$c}HnBSi(L+JzxLE#h@WUCivG&6y_<1&5TTstIh*R1cghI3RD%y-4^%sTWwN? z!{-@Q_f68%T79Y$a@RDEw%n%mgHxDQz6=QYA7(7-mM>QblnRq@P0UtZe~G0X5@;z@ z8GTD`zL&OOx(r?u<}_$kw4bS%SkSw!*u_235USJDu?$Jzdb>2aJasd&TzGYHZ#1Fz zd?k&t)|+4TqsX_GIXTvuaoU!_A^!8up&?3&%o6iSr*TAeLQ;D|M)&9*|vP_oD#>zD!r01boz80P0 z#;DZK+?my$reIx()>XUB5+DNztKXd~Ij!+#RE5+Ak@XG0RapVLL|kn=;uHYgv>3uf zPk>ZL0jjM=Ah19iGmAR;&JvvvlZw2r!!(JXDrF&)NUML+gOu1(pS>drekGTZR(HtE z*SMLK0V2iv)dUIKp=+gSLEy{rVI(xD`hhC#|J}2P)=Ap#bAgs>)!1jKX0kShQ}ZdQ zG&0FWSZmXN`NobhQKf6sDwPT8U+;ubk29H2sqR&(atfLnfVL|Hh4_TqtJT&ZV9g)qO&|Mk#K{(8}x1&h=xmwkd18%tBv~ z7jOG3yW>Q%6RM~xh3}=pJ1b0Oa$B1C2}8DlfwapesuP6X(lnJ$5@1kiwj9Da?w;Ta zcp)%B@Do_1?6lOUjAN4}DMYSBy+BBlBr$TIY-Nc7=uBHNx6e2Y(oQUjd9IeMmR@ia zdZN`-AS0Watp@G_Bt_Ge{?3=Po%rr~(uS8kW4Wu>}RKKkWd43J|~xGZ|_ z#k#24KtC&oL-6&%8djQcYu(dt@7Jy6Uch>yzR71-N2&Pki&5tWL_Be?%7->exEV1C zZueGtQ!42t_mZqu)S2tu9`9hA6i%P$W=9FPf4g|{%UnQOQgllS37$D z71qhBURwLf2xN$A?6hpyg zACPoy>X|;FB8cDg2(p@dZK7fD;o)#I^lJQKkaBi6bbeCcofo(4^Dm=P)Mj!WxFIQK zMR;XKI%$7sG`_%F5kEfR>{8yh&)v1}rJe<;7B;U2NBPEUFA-_?HAB+?LT^oT+-G2xl|Lm{@ zaB#TGakYgt(*R~qOe~X#Q}pnLu!gbU^Dc(&1RrTpIHgrw7!c^bdR_1|e|5US-m}nB zkCjWH`%w(yaeiKNBU~-5^-A#uN^rJ2*@RjX;t?hS#y^H=GN3< zv$8(d#gbRkD$z~-j^Qz1X0h$tV1Gjp!}1Uw?llQ^s5sivVEb~UZ7hs>8biN<_ALx9 z*uP`vi8W|bSOd5%ighcVn`p_D^qF|H^<_#J_%8;3tU5%!C!a=K9k~TStwK`G+&-Q& zNPtR73O38<3QlcEd$wH2qq8m{5_VO)1!_m`SH!u5k;+qMHhZ=QL%N639`lCzjN=e&gL?z0MRrFH;_h=%&wn~Xd=RMMBiCEKmvuUfXK zE0fb&O`{$-sq=!leJqDA@j|!NT=ypue~VGT?do+)Y!%Eu^VK0+R6>Py>#Xkz<@=E9 zI3Cgo9TOrFD>_l5lQ@niLqg}_Ly-81ub@efI-j=?-a>jvY0FR7jmcWZ6n1vC&MTG3 zxRmc_BBJwVRtcDC8z~qYs-cU;6$kMomEf18H-8d!F%JbuF#YNW+T+;2*+)OpxQhQI!zZFZm zt#J;KRbyRRuE*XZ3^UFNRLD^MO*Yn&rT3@+DMFQpdG?)FeD3WGNy&=+Le+Y9dw5V3 zYMYvRw+=8LpQO`*u5oV&)*$+$c{z(Vblk6dcT zKviy&<4Fm}$kg=-P0~8jMBWH4T+`N?G8a7%`R<}u=7Um{8ms6~f%E{kZfa`C#9i%~ z2u4_g5lP*%&J=FKi!JUHb{MX*^_Jzapdn1GaW zJ-cKUSzd299YzR{sLHaUaF+&|>Sz?~VbLVchhMnYtKiFd)<1A++DxxD-u=A03hpxU z4PEVe*Km=NA?O6NYo=F$)ooT+eq2}CUl+LH6A^_A|F5M zx;|Z`p!O?gCXUlwVf(ElfrHz-m1hqw>(;w|np%%FA#S-*G4V?WPvH2_q%*GPQGIma zqcH_agL?tnDB(#0Cv+5gVONuZeV>TwO%l=!?s0(e*e%VLgZjJCDzY z&ZEmq?X#(<3s||*V(cM3>Q~n3@ou-|$rk@B(~iyA*7eY+q{oKbMs^b_vrdmrPjy-%^I%n>YZKK>IjxuMMq2`r%69 z^i@SAU){QD)9SfO9jM;V;@UJd%;Du=0ygHZ<5rzPp@cjg?j%Kt&xPJj0Y#$9Jgp`d zb7`Qn;6QE7y|lra-_%k;*UVw(w)wL$67f_H+t#66{Y>sU4o3A)gVkJBfjDwl^y{?O zGF@pXvC1W|jA&%kaKVRO0N@?!ZsWngIS#A$f`iyWIY#T-9hlE{h=gqwf3;a^B+EZ^NW6WdLuS;y z7NE&saYI7OQ}^((o1^f&;bOjk0Fy}%Gq3;2{gRa$Y+`y*4Ij_KBVC0aD_SL3K30F! zRN>|$`Uj=LxTgOnVfQblwHxG=z4Vp`+8TRg9S)8-%UPGI>)U>A1pf|s8LPuqK3MH> z$WNZH>0^>~s4Q-HT3EoK7uHxYKEAL!CDC`{S$O%Nf|0@4f5>>}K2>1}13zKoJ%#{` zC)CNG3Vy^RT~#s#s{#}mpwSPw6(+A(Os7~3J!~KmnAV>(Zo19fcZ5_o<6dbPIV64! z#-cF8Y+~|$1nmeY{ajQe^z!UD9UEI7P`Y_1rt82i)u?Jm)TgV_(WpFbc2E7CLMmWz zC@~?^O7p|oR?H^dWX)37O#D7?F>$Ra->%$=(thrb?lQS1RN_a}lyIav2WD}X>iKtT zY{dpoln5MVO;^b0jyxjLHi~;hJtZ~)`utV`C+xf3);T|AaZ>GRKf6j%4px{ao4a9A z-^t$iSd2*ay_~$i>FEaI1^>IbAnwn$t_l%^3zB8ZWglMf2eLunVr_PBW(P%e5h_O@ z?{~2irk9=ZxV1J2m%J#hysM4b7+d;MNcFuS?^wK zTTE3dwLg`9Pf4*=ypV5r@-xaejW)VbhamQqHl#;u%3|f2N>;1M(1Q+^n*%0jmvym= z+S<0WPp1NbW*OOM0%&$u{?8FpORK3u+9w>h8mG9VE5cU)bi5ZBUJj-B1w*j)MTYjpTf0O~|n4;Vu zPhI@bV2n3Qx~Bp(^W9NoPm}Z6FM0aG$e}*H5kcibOlje&fD@8C^$pzz1>GXD@-( zAS3M`^J@LiLPlO>6x}~^HDFEv=6Iz);9ShJms71!z41aa)`UnCe76Q%K*mwZeuVVe1UcD?H8gDf7?!O#$UcrrrbLixu!3+i^Fy`n(o@7SwuyROj?9l?mC?pZ zX?#gZLGiq2=hv?{M^T;;N3}ioX~ysg2;Q0G=H{vf&Ib^alIm$|C%&<;pd=^HM^{VT z;ZU7S5qC{Z%};epm4-sHX$p!)J+^w1uoKk$XcXj6qkt)u^GSadO+Xa_wCsD;JYt-# zTMQl@82IR)sdVFTIa5s(7GAksI6Vf+Vv`G`E|iDLRFjP zX!9wUcZTXH1fj+Z`5~NG)jpw^l-3ly(;quxvq&B`Yd^GkdEC26oUP}uxxXW9Q_vE- z6#q!w>GSFFJXIKlliUe&p-hIYvimo@y&MD-Of!kxdv_iC1v}t+b*c`=*;*JRS&wQj z8@yY?iv@bo@S*=?W>}PNW-e+5AhkSonhjf{u*Bs{r)i%q43(3awZFuHHlG_(19PfH zPV?dEP#|`GI-n0}!eVBvFj|?(G(Q^a*Z;^$A=ceWfyDpl-4Vy<5dte~1(Q-rd$Xb_Jbw~=EmJ%jiAZToQCzD2osjGc8h)z_(F@;r84yCrILwja&0Xii;X{5 z|Mp^A6T1I+v)v)br#ldXTHLQWl!SH%yAiUUviGMrhPIBrHx5{kM$;lNGURi9EL z4Ntb^5rW6&`OD?CYB6c)O{3&8#QT&ESvlc4h#=H(@pR7?-;s>J<%uyK4sOUyBZ|5% z#Q(BVPeS{&fQuT6@Pl?rO-^>W1Qcn!jq=|$vt8_|vXfht36jDdl1M9rrV!zRb+jgj=sPUy4*taBc>c=6I2Muq;Z z1KhZav?V{i7Jm9PuhCRo>&79@SX*1W7~F`e_vh>DG(y$U#`v%OxVNeB=)#)5>!9S? z78{^#?fIVAs z1sBfjnbVDw;qVzfu`m^2((BiTAHzDY6G;|)D?5)CqozffC3TY4Me5J7P!}{3(|Dz# zI*U6E>9hI-;d_N2!~=3RTfpH;ZhG?@&xib-oj8V_1KD^|~}$*KTQW;NtLmRl}xfTAOKh=cQ-I z@9Ir~%>-x@#GJ|0>FSUV1(MPuZr>tYJU)qXzdm@|a!Od(BHC~hmE^PP$x@w^QzOYg zH(t=i$8>?ypVFAUR*&jS_9*!gT_e$W&eU=Em0%Lt+j{yrYWVwylX5Ff*Q9k@#7sll z>2ixI%oIHTiYcAgIOy!c*DVo2Am^F**|B&twZ*mNf#n9E&g1jjqi-fzl`-_-itei& z-<$^0^^|O+w0xl^`Kx!PkuH<<7V9rSVjh*FyAFq$9>*pT^b9gIXE&oLdAht!e5Tw^O&WJGLY9xH#F=bxd*=Rt=9wexZ!#zIGnL`e9EKOl#bg#j&ZKy}8q+6`*Zdy6ck0sQq*=Ol9IdQq0jlow`u z***BC7|u^hKORb1-Y`_((ecCq7Vvc|V8=0dT*|t_>GCGt%13#VG|?G zzhB2^GaE7EV3~DaIHf3~0wvPyRP6Rt$M94SJmq>8vIF|`{&JIksy`d`6Ug_-S~HBE5+p_-*H#7SyhsV$)&;nnod1I8Xljd1 zgI>FRdUJo+f~w;UB!G(&2b$ih@~FsyUBGQ&hA|qXJ}=(rzvR6s%(#1jgzrXwXk_DZAhDwP;88er;O3w1 z;%CTWD0Ert?r!Q}N9vo^=85nKh64{AvBrU~L0F<5^|`byp!ehN@kl-76ys=wMhUuM z-LZmSvg`hIZe`ssS(bnW%*O_Mppk3Y;ga$6dLB0)PAq+4t=4e2Uv^~}Enheyt-fJ= zc0eK$M6UUJ-?A_Q1|i$uLTUncX>xKWLlu}G8q325 zBqTa)m_CM2_baF`V~7dB)6xZ7?Wh8< z3wy_lq`1HW2uUOb;Jua_uSZ1bemkn@QpM3+8o*Ynb%N04`z1?7qZ z6u0S%0|p8Wu6A$>(>+meK`pg0h(u1KjD!|_mq=VYUfJvlFEt;lHWP;JAQ1e1oeDk^ zS?KQc{4ABh?X~u&7W4Q#b|+L7^WAVQnS+5{RY4GV)e|w%V{B{CK2m^u{yBGVj~oEB zZ2?vrSB*3@l$iV$I*C-<`gNC~7DP`^4mFqm-ZptKo6&~5+sSB#?tmCDC=NODD61*) z(VgzJnpw4-U8w9wq5v)Ql?+2(ubtkcmMBM05_Xhv@PJs zBhqgJj>Dd>O3?AFS63jdxi$UoMsAu!6uKw$WWNouW07F+qiDHCN>>yU8tc;Noyek` zlJk4D-+rn@WAukey2rO!Dw^&uJ(icXQN$N>3q`<(PDe^$tz@mvS#}LS%HY0`ZlxexGUO1WS*yw!J=Iroe42sx&h zAahGH3H8_Tl83$NE3M$naDNLsx*P>lR1DoNpSIG{h2+uljSNg#vMH~&$aomyD%tJj zKX7#oo&+Tb@@=OC)cvv=5u!icqOEpLfV9kvEtKHL?OH)O=CM%{#5k$t+@R<6S{dbm<={sDI(R-vV$Hxo{PK%M|AYh$ z*@gA2&Uj}h6zl{?e3Q62hq#|i>&@c2`Xe|%W~D|n34%gSWi?e53A!3^g3*ep7V(6B3w7qQ0BQjk(%%NPXF{#zQSGuVf zcP%$U%_9c-AJNf5opWmLS-U-5O>sFQQW>lLjvX};(|7RPb;Q#}G>cZ)*nC6kivry+ z{)*gmwdT4d(;!goVts9`+^0F?(OYz{7%M*+BOl5ZUm9B9fxIUbFG+XmJU^!K9cQ6? z_B*ex0039cc`17?Uw;tNuj5GfzSP7j^^pRL{Z)4#b{?EAh?@6YY3F1<2&(@H-gX15 zd!|M|r|^^6iR_QD9lMW-lwg*10MW_TH;02J#mUxgUqD z>I=y^1TnNef2QE6!ssE4HMqO<|J)dHTKX<1eoz)q(FjLC7Q)Ubq z8gkXtoD(3|DpG#u@&xwL1GxAhbEQnIV8w>be)f9=aEshZj^Zw@h<3+Fc&t;vQM#(? zwsD)sHd;8G{Xo=ly-`%6Jy%3r&61PFYO^6!CgIjfg1G%sIhh3LWC5bem!`j#-KMoo)$I2Cu zQj?AnJtQ4g%CsZL)5=64ELToQk*crY8PI7|y74=D=L`Epa|CM2NiuozMd-Nm3Fb?m zk{hpt1a~w*`<6czg+;6;hMzuD2oa7@qm$8Yh zatenPqf;U*c<2u3y3CKA9xm*n_p(QbXleaJ4KD*{2I7|?H z?Z@&E#PXmn;Yq;R&oF9Xmx8L64Qgu|nl0-;olDd^+3@eBjr3@<3MYR+KtO<&!1lLW z*)#;bR{v8RP-jOE9DNR^G`+_v)RWa7Es*-UzD~wX#Pl0(ihOIr*EA2pfG0aZ=RjO# zI>u@2{6Y&T_!(?XoKHUsJ&He)PJ{Lz!k7q6Z?mJTh1GctZ28O#%SQEhP?LUdztgL-MCs*gVhrC}2 zICwSJ7l!AFFianygKm#t?etII{=`9ndy{};2 z>r(OLp$fP@!q&-S;Lr;ePc6T7h)ExZ!L79(({#1aUrw5K$ z8@+zLg)ISJUGm^F7QHVrwZ>lOpGe!|yBZ_3^DBxQC_I|BB%fJ%6?@e}%mKR>17zwi zP)Nu~ze7aDH8oMF)Zo6W%OcT~iOq}7D5N@OgDy}<_SGFl=pmM= z?QBrz^$=HE^mR)JcUT`1qOY%yeiaAE{|xIK;9y+yAwzWYV%@RxK4}W9W);_?MmHdz z9^V(0Odj4T7Sr=KFf{!g7j;ZE!$(6@AK*xm=JbJ$|0uMTL=$py`DO&Mb3Bq$bUr%O#@#5-n+_2-wy_)>r_sPjK z(=kl150f($NWeFj%c5*AvV8Z2JAU`kP)h`~(|NDmW3eQ}*xsq^puCEtB{f+}q zq0xG+09iL~;-lIkc*MXW;G#cY16{v0T0Ws-iAa{(wL{nfnYI9a3j1^z#?n zJVk989CE&?`Ut-LL1z875|y9U>x;7&{v$q~%=!~wx)Klo7*zOae&h$cHwk3}f4m|gBKRcfKB~_D=~q<-`)t1)ut$XVrrw1$!hy=}UuSUyviv!@ zOEcNxuSub^3P~TI)&%m4^UZ8e%!&RudObzONPg-IbkN~31OKkf(fPzo>)kUZCgD<1 zTvEEd7hk)af4;0VZktKn+B^99O?7M#w`T8^XZms?T9Mney3qhZKCr*gQm1;8k&&^d z%(|P|P^^1`lQtm%^TxPBp?2wm5&tvU*&T*`#tsdmjw<_W4%5p7J%01`5!2<2q0=@u z_&h51v2fnp-0K(`A=T4ma2G$u=S_Plf~@;BQqki67hC9d4tGu0D-;5pOsjv6{>v5( z$QM1N0Xg$^*671dg05<_?66~_x`hd~b#>9hib`nKj9{tU_{HX!G#Xl5Y?fDd8lX*B zAsAWPm@o1#C>D@KpJ$*|Klj(@XU-zw96^l(mks)41);973()`5#%g88|h9n zlzK+FT*j^Sup>k`ixtf6>g=~_8i^?H`X?qOw`Kp+fg;QE>(j34dyI0=6EyhPiXC2qVkuf4y1AhI@A+6 zx4c2zT&s0mt#fBeCaWyJ+pTO8sSZG0G(ZwIE65J+VW2ZwP886`h+~NOg!4#+l{D(8 z4biz!spF`~-#!(scI^55fAMscQB`g2T6zN#Te`bMy1TnWx8PrS1@J)>f58B)PTn(2Km^K@YNlITO|-5rTF(BJRm z9JY`EF*Y`4(4>_T1^6u_0OorpoYw^4=MvW$CO5z}I4#ecSq1!l#alu|l(4iNUG%A3z4|4qP@-^7kohv`T0deA>o0%qr^+)Ygu+5YCxq(sCzVDKGRZi~HN& z>hROAcBY?glz)SNN%Up0oe5o$ffC(VAur z4UT?tV#6-N0Y=Jl@IvY=j@$!wg`J%mKjovsuE_wj`qvwM{LWVwurlO)67#eb2CdWNuoD`fnYQ^D1J011C zW+MXlGvHvmNvZ)mIoeNb-Xe+Xp~QCiRF1Ks3oqlY)WK))+t`?aP~D1e({bYghhl05THsao&hhrCe%h$l_t_qq3dnC~) z*+-ag!$T8k7 zeScN%$MAh3#NX_pg*JuBu~ zYCuYJ&*Vfge0uf((#PfKu<0j&`vw+x=Lq z!BeCcibhhFKq1xWH^dA5o|aZwUOrk@P7YDFw)3EUo3sWh7J(Sj)_-F&c{K|j=UfUL zzL6uobDP~I=BM&%aRpQjH_Kk-fU&!jYZ=mc$JMi4{RAxfNpu^_VE{$h3XPyiad z{ZQk>`sC7Ny{;kf?H-^`qbq?qVl+G4PcFrra3TK=$a2(pbv`dtRkcE9d#h|o(~K^) z7n(ZljHCt^#>?EyV)S?L_Z(B(w3TL;D=K`#kK_)cemsF@tLcFf#K~E-{57S6Yyc9Z z@p|4Sqma__WJ^?Hwgc;QlBK4qnoeWgQat?^{xv=TBOGV|oAhq% zj9L0Wp{i{T);6007=rXqr1Iq8=GMZ|cTF%KNiVt>6?(C4y5NBZA}kczcd_}{KtW)P zfZO404seKccQV{FZTE2=DrX3RgOvW>XwqZ~054nRU%Y=|ov`b-0SsX^QBhIR=X;9> zZFP0bCzna>Ibi78>sw%B0aH_Q(+S_c{+V40cbK>Gir!Dq%-+G;u5QHg9mi)_GIDa( zmKICh0S5Qjc;C}@gbX%M03AxV84|Q(`80qDR3{@I`?*9JjD>;1RdBX1>45mf<6@iV zq6J9vC%!jLm3evE=$3R)-vdj5xb)i20M!+c+Ud;xGYta;%5Bz$@8Q38a(_*r#k_ot zs`6TvQql{E+rAGAEAPUu2d2-TWaluICZ*S^ooCN~VMj@E0t zkXoLhJl*0)jlR?|MmPcnisRPjd*Hb05&T=}9LR1?nCrzb7vBZOtPI;p!w&J$Qq#>P-zg$Ak^JlO zW?|j$pibY~c{i3l&ncP!@t`M0lbZY{_@XCu0laQ^yX&>+XFFcq)R-BT45r!_3;xB zy*;woQ6q#qp(7$98UZvsJ++0*gl5ze_%!OOsuQQE%~8S#=)lUM;j@Q7H^5Xk)n()! zWgVTs*Tw-o{KdsZOX;t_2>)&(HzuHSU*ck+0jBMNsvV#n>Th0ap2v&P*8zg~K(aO; zPTP8H-#Zx09eCo*dGJ17w1DB?4K z0eU1Is5y|XF;z5yPYcW>6#C(}T<=8j{EP8yP@ z?$4)T+c_uL9`>s9z4?>$?Ih!YNYWo{1d9tLnLPHHkz!q1wb|vq{e_D3NmFI-8hEg zIy(5)Ha375X$KD~OiXxo2hgZUUf%&H&FJCKv1*AAK3}y6e{Kgrkdu#GPQD5rQ&If$ zSbrF@HnVCN1!}aAe_qQ%RCxCkiTplENiYE#+tbTyW6mNgxppnmR54oEoosb|Jup9? zvKa_vptob)YHPTNCx2)IOO0bomFs3ad>AY|l6+h%?5jVgCzfZo35Atm)ca+&EE zEoFIK)Ym5(v8Lfb{rhu;%f+%A8}V&s%DM?0nxS%FJf5y*B+J;!-W{n$UZBiKxo0j080Q2Jk_AuG68ce{>Viso$46lzm?1* z2Uap~lk3 zpqi2p+VUJaI({r~2C+`*@?7Z1#%EGk#Z3N)tAm*h;HUr+z=Y;w@iy)?vf&8uZUl&u zn%ZQ!*#no?mDbtCTbtauwJ- zK)qJwb1Xj8VEw;6EZmO{Y+ZjBQss~7AtlHS+*!KteR``n%OqkLK{<(4G(|2YZ+dZm z%$`31;m71;xn%;ao5i$eHO;0hK(*g*gwQmU$OY5H$H4b)OSNqn061U8D-$ruKY!9f zJUn=|vpv)m!~7W@nt|@Pc2u$Mo#%|d-JHc)8#6U^D6o^$WRDsC`?O4={!4xHEZXob z#Jr{0>x1r6&DFd_m!WR1;ZfJLu$PUsB`ErZF>8l^Ue>mHkGn4SCLOy!UN|l!3FS$b z!Z9@{2Bp&<8^KAzk_ZE zs-V~A%Pwc67jaS{i?pt`WQy;y>f|E@LAAG^I$22-)?3C23!{%q@OdP|K1Oi4W%9-X1PLgn4@;BMOhr z{4(X(MF&`;2mXI(=qQO5cekFkrimNd}R505}*Ynz$^VjADs=K9j>vB?zj6I|Fi{ss^HpML^vn+&=UYhw&XX)&Xi zlLTVr;GoKK4{u4-9y{+(%=ZVAj}570*`*)z$Y1ye26UQO)yD>NNz+s33>#7vc-`yN zz~~FDOa{&2IELOTiR`yPP6-DXVhU2yY_)~00la__;kM3BvGe#pJDFam0PnIk%(e0b zx;ci35BoiqAHwe2p@xwWv9?9Q)JgYs067H0#!mY%hdV3q{vW2#0ML)Ab~GcJOY^^_ zUTp?3<1O_xXx0al`(A3v>!-ujd82&r6KrhDW|I7Tr}$Vq(;Q%#Xath-4rJ=5`kI9x zE%>f85uTj2ZRs4^Z{G*h_m;WuLrs=XUMMLeFS<&=d#f@#lmX#l=`9{y@G}yv*6FH1hOd9=nExxmV{`}EuhWy_2pmCLHz1t>; z2*(a)2X;Ca*=szDGAEW~D6|SQr_#z=P_Q%Kr6B7DX?w0SAKCx12tZFZhLD8gzQf^L+WD3afC#AUUq+X?oumYoT zid0GSN8jvmjA#&r$^uHb_Bv*Yyk3Q_zx3r@$)=)q$*V4?(QRKNQr9DS)L6KOCc>5j z!iL05VR>N#Iyyw@a-RS~0gQTL?GlUH(bB+pwi{(wSYuPWEI{nAI%ZZ)$_$Ig@Qj_Dk|Nr* zv%2{e1d8(`D|WrVwDJbT4Y54Z#8|Gp8J7gI%~7~if`Wq4kwN67(z}2VJt7)-<}pW} z8Ea!zfvkhSfgRmc_RPM~*q*Nacy?IqKon&v{VrlkQ8=+q40ewkt5sBE;3eUHmgBeN zqzGsAlAMwv)IoO`pS>|TmFu5^DydtazGsQ!8UKym+OJd=%Pm*+vrTb6PSVk57%p;* zuqVM|FfK3rEFRUSrwJGXFs_l(V7$!7mK&Ibr9u@x#Dz9+mhxSEo^$r$oOz3tME|AP zTqktY$_2znK|b$yzgLLfwFFQaEVi@Eh2232$66rJw{K)(q0-Jo^cp2?0M$U1y8+PE zDTfWFF)30TmY~_n(LBi*lO-3a@0K*gaWy{J2BEK~=t=8jNvF}+PBQx*6upF%ld-biH1zM^2Y&zl{gU~2-J5nZ zSBqgxr@%_i(^$_^{HY%}PLF1cwCQ9W>+t0KV?L8oWI zUTnppQlFehh`R$|dL7qHz}9_z{g`E^mx!V(zCp~k@jvsvA*CIn7+T^%F*vg+t#<8I z^$ib8Sn>D-{2Uiu+m6j1gS^F042JR%%~5rWjjLmn0<6j z#Yq}JJ-CmQseXPug*4Y?6mMqe?hyL#7z|#EJe20>n+au-NU#_}+lp=k>ejd}e3Hv0 zG%PA1_Zu?93P1-Bx(fta`)r)cw5C2#HEO`8!4w&xceM^Hu|P3n3c%m!#E^8{fXrzB z(~_#%(RC?w8p*Z|ImOYstn++C#I%0uZ zOZdL*Y=rORtNxmplxTKnU}6iG7R~HLzE7`cygX(6+6AWC3??_y57E!C6*Rq;VQIvHuiKoY53yr z=mYkB*koM1?=VnTw^<|c!#QqpAUkfbduv;)e4uRL_-+tKsiRmbB(C%=+p#A`9b;Mu zy;K;7=#LK%=$vI9XhOa>LM8K4)fUx-sc6Su_i~F3mh6GedPnEg_J47+eoD1vmrFVw z<2^R+t9jqfHq9z^*(vp8s;CL^$n<(H#1xhXIYvrC*-tRJZm~*k`Okv zK#w=AFUf9Y;YO9z4@1P7u^hep_|oS_)DO*mFTS;-&9p!p^iMYwfGP^)2~_CHjbAFF z)Hf-CNa4J7r3L|$B!m(QR;aOGQp8NhmAU&r!HxmLleER&5vVrElIL-N9A}cM*ks;o zZPq=KCK0TzYbx5|jm~JybYyej_%UaW@?0|KvRYXC`oT5H<$xhS!$_3_l3 zQ1BW0`L2+j<)_jcNWwRYziAsf`S!jDHiAAV{(wTBKP(s_<&8Xx+q>Y;XfFj(JjAt z3&=*vspQ!I!rr*U8eI#%19bwBu_J&A zTugfRelsABz=IBK!w6UrCnW=O%a%MC`aNL*LV^I*IavyO4JHy+=!_8miqUl{_B^0B zz#hN$C`(_Dr2d0^jLENHL(c1Q&G3r{|mo`iVy zm>Ftk{F?F40iNIzZw{+B3D`~<>@`K{xbOOd0g*WqkPl%~{^wU$BgFhM}64Y6c66_d&rvQT%kH= zzkQC6wb!ok{@weYe9-ceH>-GwQGZt3#Nspb1{OlEtog{d zFdtgzm=9V+$ej2Qd;n~^pB1!SuoB!Ymw_N&8UB_p;>-aBiCfs3WOi$^^J`G2sORFg z@|cN<7AD8l{kXGS@BU=UB86+mxD+*k^^}9luZbnd_E-oUQM*4q{Ju~|rS7JgWk}8~ z9gtAD275Pb>FM7HoD3+OMqx!sw;;zOD(T<8w2Cy5JM@#&+20b`lr4`~-7-)+Ln<9VGkRdmLwW4&F+) zRm*VZsj1bS7vJE^NM}$oT=I7u@`uab$&=EKbYrM1J2-e)3Tj4xxTF$c@qiK>Vn{Bt zd+;R)y*Y@A$m;}WS8uuN8-{d}U~XA#h-y$jvfGO@&oor(#^@;8?;AYlfUaH2o7SOQ zPoZ|X>=_GCcHX+@6V&{ff9_%t3(RbN`Wh-3Z%6 z#Z=8P^|Oe!=pOF%4lV~l)>djxdidqv6}8`V5CZ!~ zUU2(+wdH%pvj7az>?v!Yxd=lg5`{qO#ogr7xyKPDN5ov+V8!D{0A6`5is_FqK#k}3 zdJS{T0F9I^LjPRA`k6ZcfaPdgW+1bs9l6vgAaE^)08PdRXxB(BY}>3RbclWAf1k)0 zY~=o(Sg?kY1hHieKN{DQ%b=JhSE4Z4(f!8%dz4%ugoq$KTw}+!v+#sO!lOa?mxj^l z54nofoVX9+yPmh0nV@i@D1_&WLQkcm#436xRy%stsy>B<{>ezGleT0GcydNYR6tzB zX&4k5*C|kLOQB?`=G@-aA9Y%|Bh*uO@(hy{7Ro`M`y-tdPERb!X`uyU^~h9Rclu`y zt)OA(G$|8%*QZGM@}stAC(vnPyS_vklScoP5K@H9S@>I;VdpBF{l$#i^Q64`ulf=e zTc?*XZGnD|Xqs_v#bLnun!*Kv7Q51qPY12!w6jv@t7Stg0WLIxojGg_MW)|52EtH7 z{B=ru793hpVk9ZxJ`?b{m0ZG%<-qp`8N=F=k~W`ot%L*Mu=M>dP~^tDA*Uw=Wo@0foz0#}IFu3#A8Ix&U*Gb32{d%i zs6k4ft1sD;mpH>CM7NRR9Yh|{ga1> z1Uk@P(0MaFzn8XIB$ZJgDQCPd0_=zl+hy;s>(GJ)bhL>U)u(O6B_*yYYZu&J%s^vw z2at209u|XkqMD}9KmhKAMB_Ht5uK}HfpyS-fHrVMhgqr^5T_>S>&?5}!mV7}U~_ftQqpmmK(^ZD*(b6oEig{isblreA?y*t5#nXqKx zr@H!?Br85|bf4M2Y_glLw)d9z2^+K#BG!V!? zen+dpnd;BeweBT=ya3nne6}}&TrS1>*Z9OnL_jU<*k@rM3*(TJUOto_RdI8f_Czxt z!f|!~ix9Pe03s7eWv3qM_4n;l5^$-E(|XtoBi8hNd^Liz1`OABcf@$T*B#$o@$i!( zp`~G5)83~SQeY6xb*>#%9y2uF$jHkPhxq0kk8x?V#J@=%)JK2E)hD?s$YA~c!qIXE z+xGD@UoDZem_)M9MCNpoVD(pIyx%iaI1?&5Q*Nv}YuKULvrdrJZ@Q-o6j{=<>M2`! zm9}VZ$yr^UgMTEo97(sI)=s{9%;8=lUI#}dAAGj^#K3?zxj&X$vPr(|`>1qErVr3q zMJ81*;^;kx>#FKsGd9F_#DpPBfVEmWAfRg(=Y!T82L}h4vbMXiRWKhLbl|FPGlWH> zR7V2MpKCRgz&`$Ra%rjQI;Wa#6e@1%9h88N)9>0*KpJ72#bCUyr05SU=kZFbP-0S& z3~$0w6^6VJ+JAd28wL!d8<=+2pTA&TEG5!Xu(w5;b&@u_5+hTq3I$=pOfRX_n8_Qh zSam9DoPYdqj@8f)k1C8cUfNkP(!F;gl#!9JHb-TjS3DI+ZR!}NA;c(e0sHZk_e{sE zte#q-)O-xsA3!1$@0_T zZm)cNd?Y4YM&|hi5Zfc_mj{E zKVLZ1nPle+L=o|Lp=SQYY*o4+ZT^WCuGcc@{d7SZ7Bh#lhe3LKkrmHsr*W>`i0~R}=+#hpDp$Y!^(!>Z+0a zS7s6NJV5n|kdrfFR$WyVeoW%7qM||pWU)pk6WDYVD4Pc$0|A^|m5*C(NZZDzS6av) zY{>;Z^sbhmBU3wol%~6QSmsL&?MW=&%wn+aNfVmb25vE(T7hQ7p|g6(GN?#qg?}te7mRA$YmN%WU>}7uZ6eB)WI{EWUbFxOha7H=HI0 z>A>CN_;gI-_+p51B0|UPOIf0+W47F$$C*Ee3^>B62d)**4g6{rbm6lxya8<5KS!7KQG_HZg`!10WkMFbV<`n2UE3$8am6Q{oH2VPTTRiIF+PD9%z^B>F(YLpOTW&PzK*j|M=<}8#D??{1cm1C=g=Fl*}nSie^$aW*lnQO8tDo zCaF*^O$>S%o9|aCAnQ36XBXYxU(dp^V*r585g9K|BI-WjxXP)?+jrYx_Tj3l5(gbhU}>oWq{Kg+DX zD(%+LjtWG&zc@22Yo~?*?iF|@^^MyUw6pP*ZKDw^rL~_`pXpGa?pcX_JcueItH*TJEq^s*^H{{K zJ}@nJ_rBbC?G9ATE!l^H6}tt!was0Ei2SpE07-05)tktPS8NW%g+mCsc73 z+9k4;fTW>GW>h)K!@~nq`ADwzg)^^ZDQTWW33Badi}`$g-hZU704x;t)*%_j__BT9 z$1+eXNzCufmd1?t#W|Y3*DQy#r-%k#YnaqAL{J`gWQQ+Lu)f-LSUBO~oQT4+_PVIw zqJ#>Dnvi^E(j`BA!n6J>LE8XX3QIh;idN4*JBEeIOTAp^e6DI7+!Kv4ef2$X&xjr`2ai-z#C{2}!0m2>D}192$>W6-dmD zx%0`ivnT7f&k%3?jw@#n>oO84?PT zi=yddXx48*1~h8FhtpGG%Imnm{`fw<$9V58Ea}Cs5s%FuzNog+BdMNszC5FdEh|P7 za6yp;{5idH4#=rZo6qNP*=1J5F{6lqo}H?X>#Eo!l~+<+5R8Ap7VGZBTcL51-So5R9J+Qe%piYLb-I z4wgdlQJ|hb1MmMzmuyOyS?G6pmD@`8BqL{k&6@aZrRLh9 zR_&;#XC^o2sFa&X&@2u}0d-XitVow@Bina|i}a6|4#k0Y!t?NMwMOfO5G?NvkQ)t`@HP(Au zL~976r|}b@;!bvM4lZUj-{f)i)bBe_W(P>{dpe~ zmIngZBWr%4jtqgSu>cXp_4&EU!=eUyLwYAU0G9z5gO~vzW*z(RW_^B<FUFp!%jQtl6_a`^65h(iW6EK# zS6(W*-2K5UV^ET(RP158l9VP09UV8OU8ddb-K;(bea2)gX^zd`WLn0)_HRjrw8~E^ z>B9^`p~S!-jxX=s#d}cN#*AUcxTqty7Z7ASnpoCLPqM5swstnx^~|X!6bm+*XQ!E{ zaA2jn$Z8!3=Z46E$8Pu#3*$KduJxoI#oj>j3sDpazDOly(7y|tlk=;it&CyCb0-(?4 z*wwC8$cj3}<3>w$^aqi}tNW5%##sUN-u(jg>NUi5j~jA(X@7+V3v!UY`s4iZhRduI ziu~*qw^kAwZc#a%D|DdgBVFFpqWViOo3dr2@7WlHMA13H9c7vY7Oys-e#)`>TGw+i z{|=OCoNBa|UggNp-<9+-r=(a0S1FnV3T9i zx~3MtjDBrzBVbk9Q+Ull&M$syY|qVfE3An@HVTc^GoB2(j*`jqEi(2db&F}Lkhu^8waxwGu=A31BZwUydr2P^thwJH*L9wW!W}?iuHa}3}2~WQS z5VM>tHehsLb^*Br574MNx2c@R;|5%lk=6!AA#lD*fB=Qx-e5%l$$T}MDx)33t9po& zGv%m?=&KVp(DfavgE;~8NzTPEG%-Ezb|$}w`H9@FNL+5F1%|?LhCpben<_|mU|`1U z4RqtYZ2Ej1e7S&|kj4pJJf+b0eT~BkD_oDc8p!rZ9XU(a@cxXA+7BIf1GS9MtQ80{ zeWpItK{#QY_bJ5_d{$_Vag2W6ugW^(I~)4b#|23X<_F!3aKxlkli?ITu&rN?!MDlm zJff+cIOCTBhtrWkrH!zSVKfSlvkk~`mV2I`{F^`-;_1j(>pvA!A7MPUGoGKMn$P=| zW}N^Dj&mvNSD#Ddn9g92o3$;P6q$pewD^?fMm7!8oZ6Ah87up3ju?G4=d z-d4tEovLpc*SS8Memr(^qaX8O2N8pO;!t+8BGf0IT3`!VQcZAr*5!ZHhfeWG_JIrj%w0o2pO zNY~(sU)1PKbKDMbJvgHFS1BKjbhnj@eLM1rcgRQjl(iln%)_#8kFgLL5!~BbcvDi8 z5q1ZA_AtiM<-#1{m(A|_jUuJ9?m;vo!l@ZZXCeZ4d}i%x^oAIY8U25=09I2CZ&p(( z94RB*iUfYU4PDU73`i&jmrJj=2Yrt#p8JgRHp5rQ-p`jw(EAyR5-qQG2wCn&w7BbS zyaeR<3FUV42VaGetYH=JKI`~*hfB)E=b-~F7jJrly9YaLE%r@o?lkVtg2Y~D7~c2K zYLMf0GtPOGG44whdwWJebT5rIQk^)n6pV;L=-JHAEt$;#ipFJu23Y0Xux438Zb$!G z-fih%SKa+})@c70(AR~X(^E$vwc_xM?8t+{5jX(qo@UXFN1K#1|E`NsM-}t1g0gVs z;~!#TA`KGFzaF4n>w$znM=QAT&9E=afBC@-o(Uch3XRrlKiruYIJ3#=Ir!S#jr;nS zD6X^4fYO+7%ke;wE(LOJJYAXMsrb&6+0li0bx;grRQ`J%-Lji4Cg}&nQGq8VJtvz% z@oLv9T6Za}W!N32xa;*FG#1aE;R#-w*l_Hll+Dcc#+&B=5o0CtmT0IZ@*Vm88HqZdj4pl_Xg?a2u$5mhB+vID7)R* z_}aKxPD|SIBe2pM3D(koBDp$Upcx(f4oT@e+AZhD)nU7sa*}^?%JyW^Jo`)JwBNlC z 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
)@%^YC+E4$Y^r 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 P00000NkvXXu0mjfG(ON~ diff --git a/assets/img/04_01_d.png b/assets/img/04_01_d.png index c00a214ddc86aa2ee5f52b4839f73b1b8249aa3e..72710b6e605a63b074344fcc288c96a42f0255cc 100644 GIT binary patch literal 184994 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�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

~PDJ+b5xyl;dzf(}#FcI2~T@-RhY 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ݯ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 literal 0 HcmV?d00001 diff --git a/chapters/04-patterns-of-inference.md b/chapters/04-patterns-of-inference.md index 1997944..25ea4b9 100644 --- a/chapters/04-patterns-of-inference.md +++ b/chapters/04-patterns-of-inference.md @@ -230,7 +230,7 @@ The figure below defines a Bayesian network for the medical diagnosis example. The graph contains a node for each `var` statement in our WebPPL program, with links to that node from each variable that appears in the assignment expression. There is a probability table ("CPT") for each node, with a column for each value of the variable, and a row for each combination of values for its parents in the graph. -![A Bayes net for the medical diagnosis example.]({{site.baseurl}}/assets/img/Med-diag-bnet1.jpg) +![A Bayes net for the medical diagnosis example.](../assets/img/Med-diag-bnet1.jpg) Simple generative models will have a corresponding graphical model that captures all of the dependencies (and *in*dependencies) of the model, without capturing the precise *form* of these functions. For example, while the graphical model shown above faithfully represents the probability distribution encoded by the WebPPL program, it captures the *noisy-OR* form of the causal dependencies only implicitly. @@ -244,6 +244,14 @@ More complicated generative models, which can be expressed as probabilistic prog Recursive models generally give rise to such ambiguous (or loopy) Bayes nets. +## Mem and Plate Notation + +If the same variable gets reused within a model (e.g., because of a memoized function), it is often useful to use plate notation. For example: + +![A Bayes net with plate notation.](../assets/img/plate_notation.png) + +In this simple model, `cough` depends on `cold` which depends on some prior $\alpha$. However, the value of `cough` and `cold` is determined independently for each patient `s`, which is what we want. + # From *A Priori* Dependence to Conditional Dependence The relationships between causal structure and statistical dependence become particularly interesting and subtle when we look at the effects of additional observations or assumptions. diff --git a/exercises/04-patterns-of-inference.md b/exercises/04-patterns-of-inference.md index 74b02ea..a54d04f 100644 --- a/exercises/04-patterns-of-inference.md +++ b/exercises/04-patterns-of-inference.md @@ -7,7 +7,7 @@ title: Patterns of inference - exercises For each of the following programs: -* Draw the dependency diagram (Bayes net). If you don't have software on your computer for doing this, Google Docs has a decent interface for creating drawings. +* Draw the dependency diagram (Bayes net), including the probability tables (see example in chapter). If you don't have software on your computer for doing this, Google Docs has a decent interface for creating drawings. * Use informal evaluation order reasoning and the intervention method to determine causal dependency between A and B. @@ -48,6 +48,8 @@ var b = z ? 'foo' : 'bar' e) +You do not need to include probability tables for this one. + ~~~~ var examFairPrior = Bernoulli({p: .8}) var doesHomeworkPrior = Bernoulli({p: .8}) From 68d851eff7f9444a2ca641b779fd967693dd0ae1 Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 18 Sep 2018 12:06:48 -0400 Subject: [PATCH 06/47] Fixed contingency tables in solutions for chapter 4 --- assets/img/04_01_a.png | Bin 173937 -> 153711 bytes assets/img/04_01_b.png | Bin 126734 -> 112318 bytes assets/img/04_01_c.png | Bin 140662 -> 117368 bytes assets/img/04_01_d.png | Bin 184994 -> 99153 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/img/04_01_a.png b/assets/img/04_01_a.png index 22717561c49074ac069a8b9752cfc18434c5ab42..84c80b46b97930ac280057727d17dc7fbcbdf82f 100644 GIT binary patch literal 153711 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 literal 173937 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%0D(371I{wrqIN@QeYJOLm#m)(7w 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

^DN0{T>R5QpZ}Y`=N%p zlv~{N@F`~(5SvPmgg8{vkE^uYe9%3@qZ~TXQB1xe-P-+^K*PLVD(T`MLcD`BV`@Uw z^=f$uatj}Zd078^tT(CgeDe;YOj(IML}0l^kj!F5*$XB#ou+d6BJTLuvEN5cG&Nxr zlC7@oj-Xi@nfA)$@qXI~E4lW3T3mOgN(h{?KmT~`CS}WxVb3Ty*j_L14!|=bLqkIa z?kxYo=ApdP__UZ;{DKUDe4wLYFzka;Eut3&iO!P>WHG+rEA)P>AS^Wm@u9~WJaPwp zZzPGn4ZoEUypd6>b9y@^?=-ujbF8$1=X-Poy&=1jvKoyYbS?gAexO`my!$J%A)MU6Y&g*`SHQyX8a*dEzEs7rh zB$jM>CidK`dr75tMw8#`Z#Yt>*8|l@+^uyPwx-nTfPPtB8Md{30y~z{d)|E5i$f|r ziG`7K$DqS@q*rSp4u zFM_2YkL-+6l3tEcp3xku#i=)z9=1v;Zp34NGdnRuBS2&wPN@(+ zm_=X=|5ipR6>Y5 zs>X~-UP$9jpSOdH5a71t4eO%K1tzvza!CaeuRzC0^}}Pak}q$+c!UNX7KKddB_#Gt zEh?ZWN))<=|0v?~qEd0u+ZzlNYygj$8BK0hz;3cnsKu<8QSdv)Dp3+Pt7`nDFs9(M z3jxI&?U+S+{uxEgVebC*H^pVnP?lzHhOFnA5F)9bW^d-a$qnho6TgBkXpIWYn~<0$ zK)oI@x=LOu9fK5ty2~eVkaXb7F`tU=PGxi0QP=M^M5GdP^cVn2=qLp^u`YSKCjN8T z^vB!wTO$VBA$ewKR|5SlPp2lD8{`XhIYde6L4^n|X!w-O=inV?v%w0BC^F#T(pd3; z?0%Rcsqm0%!lx)I=%VNXX*4Y!kg>Fx=tyZGcC6vwh=8%2WSK>XXR zBsv^2ul6MMD+_n0#NsQAhZ2ZfJF9~RWt11kS1xu%w^{-Zm5JZg6HW3 zn*L4w9VUd&WH(h>2KY~IQXle4;BGvxg2{T(ToTCV>%EnPW&^E%&NGCzj}Xu3GTqi5 zR`B8B<8t!KP$|o61BHbI%o9Hna2 z(Zw$2th=4_-xAos_DnQk=Ee?qy%HEN?8AtryZBj&2Y`#asP2}nlvv$OF}V>5wN0J` z-Ly|zgVZ9kggrF`3}^v=`oI;4UmEejikV~Hq5W!1F*WJ}vCuutrRfn7kB1-h<68P^ z`B5CizrX;F#W42#{>L3$j(f~L(=~fvGgr6Anp05P$jS{-_7;UPgScJ_{p&7W%l_(F z9ASSR6HfPus>m0)35L$p*|GX1K#j}l1?=^P`F7uWE&lHa#xFl_;qB{UmYYRzoxOy{ zVM2Gs5I3G@iY_K41X7%}kP;jZcn*p(#teuUR=P7s6u}|sp@^&Z?*aMmJCr=(Qn=iH zIUiOb&Q_{pQfM6BoZffc4n%GyCPhF+AuhX>Iy}BCb(;F4dBZa&OS_m$>)|%jVyD;n zWqTagEA7+zOWBka>sm3ZtL)1MQQw-MsDO;l^nUtwcOxSjYe%D_>I7LF898cDUS1!1 znU<`b4D?o7=vgH0r>b`+T1^N>N=6ClrnG`N(uyMN<{40iq6+bpt1V2cx1qbaOz_*= zGwQDy-`)GAiFd7JG%LyBp5*Y z)|2fOQnSOGv4?HB=mGFI2;xyO{Xi#!uR(k5vRwlThH(x%h+B)^?GM?pXEXwNoC~AH z%nT0w#Sj@>wXe)pd?%u)Pv}oTXwo~&UirBiFF#)%Sfj;r4YT^^L#s00bFR@Fzxx$j zw4p^u<>KD(i zQAxov!gg+_n*iy}=aVynqj@Y>Fvv_?V3Wt6w%)4~?f(HU<&8m{!4wcIG!M5?L3oTd zvcY@O;n1z7ut7O^piRHm*Q@3{OVSe~mlTG77hJeSgvAaZt0*}-A^&@-SSWO|iDy{| z@f9!O&jbfVd%uhJbiEZr1mTaXa}*}VbK3EQNAch0m7CkLBJ;Z&G#Or1%ev)Me498o zmS)s^wUD6_xWTrwx$WMT?8gtiXzXq{k+?qJMly({I?}zBrC;OjHn$^}te4AN49=D? zuX`mB%CP`4wI*UKXCQve^Qq0Z(ZrN7YaJ3pW;y_rqtk5mo3a1cR{?Pmvhf~mlxlCu z{Rvh3+-h}+j7%6RIy^t%@+ui!XqpbO{U$FjX;&Ai+j7+1^IOhfcb-2RTWQehvI|7$zW|fadWagR%Ph(cS)mx=gw2*|^@3SBy0N>CEv-XH9$gb?8bciFiX zB*2_xNH4|$60l1IX_n(dz+WQdlCkD0fIi`#dSC^V(=yJ${9V1#%fFGDIKfSc&CTCT3#$R-cEnnqcf8%laa(?#-!)@ z!YXGOUBfq~JCRR_E_0QH2#e%bHAU+a5P(D5M%*d3c%cE{q0^vK*AzWRZ`c1SZTxS% zw&fQDDT!&)JcAR2tSq72Ofe9e!-LCBAMTZ~eX8J)2gZ&gV{V;#$i6EDWxm=%_Fy*l zdJ{}J&qwE#PDMw&_lS>D@h4@&6u*g}l>%m1G5;iRP z;K-ofXKe@6!KonvH;i+AqXKV$?%ShD0?CId+8CEVjT7+!VtvYeUJ>P&#WXYL)0hV- zw{~D|tSK})LNEw8jP6XP&h8W@%}}A7n2GP|casI-2Q#tO}usxjk!1)u= zA5V=8%=1fL;T|>`EBA*o87O4h>^HNpG3dTzs9U}o-Suz@a|ODG7A#hzb_t+UkpS?9 zVQ;wnpC|0sUqD6G%8H@`ZeCyr`op_T8q@;9=9v)91 zZQd_=$$=>WLpsqn3dZ`2%Z!2Fn;~&gjO1)+@vUdjCR&||>#`bIYq(TA*oD}}V?Ex< zp+&<6w`FyN+PR-~8>z#Rq6)x>R`fsikpB>+uUaya9l_*;=ag=H-=1qoz>r%|7{yiO z=b5C>)Hg0JR;u5SO%E2+B$0YF+?;x%C+pkwAW>AF_5J z_<8xTtfC&VdpH0FmZq4_?t*}j&u>^)6X8c0W~vb(f;OL5SbBgQxhOEHVT8O;BLV8= zrNljE-3C(d2a%2x@44`;eW{7oft$w9CFR~G%hu8+Y%!z27^M#Rw4=`dMz7{2#X z`S4N9N?6hjq`X_Ann=Oe*Tv}09Tu0W_V~jyR1NO0Fwk-4Rgzv=g)P^o>eHQ+si}G$ z|4I(0t(G5MOsVL-*+oE7W+j{O$iyE}Dfl%`V8hMmkkE=!dt_6G{gi*Mf04}Ipb0{C zgp}LVrHrDaHw|_7__{~R9v`NpQ)Sg!FpJ@zI^a5ymE!072}e!S=UD)8Cu9}q79-f! zJeQ_%?AWn$TY9wTB(E}E^G&Jor){?Jqe@IY0@2Ic&FuKsz+$w`?~BUH${+!g-hH~1 z-BXDWJmv|VaS}Us9CrG=eaoItrE=TCJh}P``7IGJ15#rxM$lP3AT98(w-b0QIN$AG z=-0akh4I~|MD$(1N7g{_UpX$KO6!?^;KuA%l=gjEQ8Wx9G726~@=6;10-oHoXgg+w z{fk?Qm{bPOv5SRc)6buUIWqdM~%YqoeUEAUz%vj2e+Mej;{4%*75GH*- zo62O7E4WKe)VhbjZb~UUR2&`%Mrp-eq>YeOc3=rHjNP1{a_JQD)C`ecgiq&Q>DQ3# z3~%VEFO&JOV9QiS25W#*@97l{nco^pZBP6gE0!~STgD@ca*F-0BxZyVRCiRJI*I1tx4=QcuozFY3gQQ1 zF%WU6+t@}2Om6iq?en&>2GG&R!|HUFuXnCQtS|U6PM%&Zhdmh^?K~=C>jYk&zw~hq z>^J9}f9{_Kz&8fCeSwiXXmQKh_Gi!M_4O=YJvfRes13h8L7FVp$n@3N!uyDJ+Y!ws zHey320^CY19f(*mAVWXGdND!;^^TYxL znrcj+d?pVYiF_WiT$guy2mV~EUsI$7+WJ~Ni05^bgx#!^dg!!OAW_q)tRrkN%Q&8x zc`36bYtN4rg+zD?zb1F*Mr>?ize!bDq}-gHIRqqr0Mj)l@I6;@zhvSN!HyOlew^GM1XEP9sxprVt4lEp4d+U`ibinqmL$>q4u-B zdxyuS%fET4xykBfR|;@&VyE7EQ5b-HtFm5lM{WkdrR@0IXG6f=G{3$j?ZlYJXG1tLpI%t%ZPYlO@=)|}L7=r8qCh+NG<2Bi+(9WPn7hXJs+&vYWd$SE6E=l`L4``WD`==Mttfmde0pG|=9 zb}Pg?l+{KVy_|z==+M_gq0e@r^^!YKkT}2TndSMmra^0{W3CITaY5P;^%H^)lGxG6 zWNVbFB?GWfr}2KhfE^K#{P)Q6e-~^&s3>0qc#Xh;;vrO=Nw!LD((#{-H4q@3@Qb$a zav2X|Nx2MPvUKO-n#jB*`HBkipc%`a4au@%EoR9@4!!jc>k2k*fOr+M(LoNGuFxWl z$AWye{nc~aK(VbBB zrILNFB&>vf)jFlLi36>hzg`#1yw>9b$AvpXmy)HYa4APs`{A(Bq6e;dIX@5o9Nvw| z%Ed=1d1hLIMs7HpL6eKDHvRPy#i29Mv}4UN)nLY8=hq69QIMNe=ZGI)C>d8#>7OpVlenn(D!Xq4h zPkBCbX%8w`_s||Px1cZp;8hoZ7(kopfSi9PO91rAb|mrjWX=Z=L$S>8i0gp?cT?`d zS}ZR9bz9l|N(q=FOO!l0vokJq9F_68U7o;k;8HK|Gze4YM_INo#Z4 z@Z@#x2SKlpSIHC`t8y|YLa?ajy;{tip^s^+knw`mnQzrLTrenXwCr+S85`^&D&N^^ z4j)WvjZeZCVMtImjZCEHm9bg?#JD(F-MarE-jMW7J+~O6isF0JWOB!O%%@(nYe4|d5FKJ^ zIbx1yT~>8o9*|Av1B&zII=X{4F(E)gcD~h(%f!S~T3tO{Kh3?ShQLkWmkOzTP%7+mgse)p*ia<~ zK{4?-zr+y;+%>D5N*mO)wOwAVQ$c_lif-{}3laJ~7iG)?SX1tE(^GCoiy%y}75qVe z(GdPv`3KtBrWerQpb;DwCjxcnsV9~XuhOu^`cIIzi2fLzC9QnogaaK;5xlUn7N1{@{?1mKd0<2jFbtD;X{r-Are z(k@-X;7Fy@)uD5rmUYen3@BwM1@yUL&lh=@%rhH;{qM1sl>ss^h$7AnGkm9%LO5zJ z#=p+s_T{Ns0uD@xpfF_)kmIsoGq^6sAy$R3uf&Q@B+`jSXeqZ+tpb&erQx z7xD}O-;=me3x3eYC0U=%KFE_w9Q&C2{UU`z<6>-K66iUL6)=~mwO*4OMb(y#ePukc zHxANX-B70gyEK!?%W^a!ArV3QM|fK#uK8gb?Z?o{1C9%JXzQuPbV> za`_;@9`mH8JlQtI2YmV@Ms;6UR21Z_2M`5FN zI<;!n?@3flEud6SvIq^{je4HzkI_3=wOU@4`kH*if{v8vLxaCkZr2E`h22sEGATeo zo$f?Q!v}LIiXzil?e*npID^J0X!$ea0vFi+`x(opX!bOg-4J*Pk|zbCN<=;6G7Y!G zKWMH#HZ?m&G6A9l9>$*3at2(*;QOY>&3DBJJaLJck-Q3HN%WK`R}Bvf=k8_{q7c~a znN5LR^FeR}O_U*IX+djc`rS#ZzS1SFNCJ+OUD&M`gwI)h2x_4-y(VMbok^aaFHb9+ z_(CdmI%x=rwm4%U{B&=;c#H{V!=D%tVz)AjOm)k7k;4+OO50}W&1=?Z;d&>|sY0eP zI4n6O@CQO~M(dxe!V(s~L{k_T&5!s_yw1{!25+lLtm?B6F1&wM>S>)89rp`U`K#>x z>sa?nHv^t{$OU=_!bV0!h10dVbns_#a&IJ}PTwvomLvMtcm`#(*=82Or0^$_(a}h` ze;Y>Sj>AE>>{O{mENO4XgoCMAuoFnyH5b_4e}kT2bV+O8fLgiOd1BgeZH0mqtDE`N z4eqWsay&Mev~?7`_e^c6{)FRw8)Frh?-&d{pe8Z`1Fr^Z27>K24FSN?&jA3y@KiXN z*mfpSY)VQ9E8C0_z-i$6eltwxcDwJ;RDHf|BCri;UJ#U%gWnyj+iyL}ezPPuqB^4V z1DI!ap1Qxdlq=PP00ydvAQ_e~do~lYn!gVr;A6rL6u|}AYG5MHuocGW^z~Tadc68I z7+dreMJ8~rpGMKtl1+?szb2 z+vfBfJn5_R@#HiD=kSWiscLe`E{6Q86R=`xz_Zu0=n6eM)#f4N8@oDGo=C zu>mIw-q3t;Nlr-wa*122Ts`{Sa=hPE_(vjwe_4%vq>sH@y3>BOp=_JzZw}446n8GH#@W``~7;nwO(OKscXqE`}B%;Tqq= z=tO>;0M_(os(FxtKg=oD5*|CfzZ2PFdC}sM&|voTps;e)c=oHch?Vr_{y3lipDe8sy2h=`g<`==dJow zr$LZZ787=3YXhgH)NWR3!aM~TsC5O)U7YV(D4txO$SBJ zVt|+m(O<&A8(vQal>VcDF>1;gST9auqf)v2J&1b8@(N+?iw#k>o%-IrwkI~??!*Bn z(jnKqeFG+8l<+GR*{25SVA>Df2=(s-w!KcMTSE+pzfNlrXnTTfO&pH&{bD5-_X)8$ z{P+oQlVCAp2|GM6cQmgOp)4ucx>x{hjENNt*ZjT{{02t+byB{JAM@eOQYPWN{jlZp zo#OLTN7eB~3XPo*eC2dst{KEg1V(QTT%xwS0vcHxH$6R5lpHNEO<@>cBGB#NE}L(_ zQi_wh^U0+2`UCsTxg$&fkJP%t=LpjB?U=0NMv)yw+q*LK?tyfr4zZota?o3Zt4t`- z27c5bE>SUb*xQ}sPbK!o^0z7T8*puvpCJtA-hwc%iCV~qq?iH4yG+mhPJne`F{ceoUr`6hV_uo@15;q-~j|acLbUk<0WOf>hwt8Vq8e8yx z^d0@~ANKJ=%h+^9G9X6LpMSo|v(vcS%~)1Y2vcvyq?TDmmcT=y?m*IcUuCLskxd4v z>o2UWLyM{_UtgK0x9-ZNbPo;kZs2*y)j@pKW@2~NeOm0SE8hX(L^0u4=EDnyp6HE@ z1Wn~!SpFCSU!GSDQ4c|simqvF$H*i@OXR@RdAr4OY}VmAuIBf8apwH!WSK2|#|z?* zS3R2Uk4lL`coN$V5~l>b8vUHi)RP!47DR5dOt5h#%ps zJ)elWGx?MphDjXK&??4S>IF%qH*#*HH)@2s_ZV?UIu??5Ee%}4=iB#g)?=Xj57^C* zA=1~>Mtloe!nS0M-KcQAD9_$;XP0~^Ju@QWsujVe>lp_tN_-v>ccE7}5t&8*AzVfe zTDgBoF+9F5IkMH@=$90wHiI4L6{S`EVHCCUU{n*($Vf);+GRV~Pnqs${1{a0Zu@fi zDE(Gt?^mElYYAR|srA+8bU7WZfL*RPIU;@CkzCa=QCVxXfoeuB8Ns=QUw9^ESl`rx zPs=dgZl1S@|leWC+jh zzzpq*KO`0Xy&DeNn}1_C!Pr?LRjvf9&r(9sPLfien#l-h_?Tm)3wc^Ql*~UKu7{H? z@rebP?4@I(@IH-#d3GGsILdZRa+up{QrqQ4-`@V2X~AZ5MO&Z;(-YH(Yk7uJ*?Iqd zq~{p@F>n9Mh!i42GUPB{P}84_RTgwY}h??2k!)fl0cHk={BhFoadt%ZIs{Koddrb=J1G|!Ox^o2EMgW|o= zXXVSVp$ch+0UhA!ptA$5YB``+4D-m{7{(MbOzwBZrb^yOG8&XsahwUO!7_;v={O(g z_>4#~SZ(n%bYV<^HIfbKESo)MEw(Z!o+1gAnCL6?Te((V%pE#IK66t;in}s25Q@|6 znLQpOs)_?KTzHx_ZX5;baj?ChQqf&)@GNwy9`DBkuTCDzYxKZBNYj%U9Y~BY##=yg zLsJ;gt;OfEA*=&8%+*B6Pv0LNy?DfjBkj$`Cdx|Ii`{}v05q6{jj~?7pV^)@GQ?(K zg(Ot8&DFgC2+>>*7Ug|`e<=L`69+sHeB-3u2>cEsK^|m&Oc1|)9Z+y-ze@XQY%c=M zu9p4)vW|G$PvQdAMCYWueuqjt7&3zDf%Y%S-ns5Km_^I=u$U%N7D7EanXp?s{0^F) z81E-1%~o4N%Ps^;uagAPtly)|g@jq9i)Ih_heta8M@x~t!&e=CljSViNk^MK+GOpO z@5x|fPd2AxnA|`G!_!DSrxG>S@BD1Jf95M`&R{l9Sa1>Rpy-$kD4QrVf_S)IK($@H zenw+gBlgmBTI(TUz+dm#E}(WtU|P2T8-y6+4X!?%qcPf{fLWHt)^ed>5HJx3*zc}I z+3-&ZQc7d{wgmp5gi>(`e>!JuKTkjAi8q@X$hf)ab+COnpt!k}@EOd}Rzp0vB!aFr z%A;U#A*JrT;am4w`iT~gPtDSf#@x9Q`F;Wwm)V6P#ZBjz0%sB-@~O*4*~pY2Y#}^0 zL*#1xz*?cv3hm)?HPrs~0(VupK@~#PJdt*sRxpK9V*)+wtCwIqhuYUp zFN5H@8$Pyn9`?@tZH^Y-hxoF~o4+N1ZY!#Z@?@>k^=LuPb+6H9=fg;&#{Q#gX8rt> zh0y1oaYEgbsH(#p(l}}i9?I(hbLg+5N(0oCZcBqu4d$Pck0VK5&Bo)qo00IOXW@EG z>uMeDjKNg~I>MT#`Ifx9%ORPm_U~JW5oUCRK}>W&&S#?$D`5i0+n=~!;5yE&1D!(1 zWv7|DKL{YQSi@P;tk8a;lrOR}MB?9@#l{S}eBpRht1Nc8r&6J)?rW*=nc#-Hsd%H; z)3hV%e13lA7q=liIKey%!a<9gjq$G)PDP2w_lxdP(qb;O^3>7l&5UXUS3#IQ5ZlGj zV?TZA;& zb(+mRf*&*$$yb1~oxS5=djv9h-7+Yp&^aNKQorD?{RlD2@4u29T9|04IzhbRL}0}{ zas?sulKt(D3o?@t09TMiMWX)`bDPox#wQ<)fU`lBus7-?$5#+pqSb2DBEe6WqUqYT zqT()c+D-US^cOA%b!O|(6m%_D-7bk(DF1;Gb$dkl`CCZU0*W1N;zpEVRVh5SsNFtq z&S|DkmvPiDj`%l$^eRS7h2_Dx_ABNXp?{us*p0Za;(?PE!d3%Gu4ZED;6})3A&LXA zsPuR+k0DTHMO9;-z;RN}wNiI<-JNqQ%^dMJM z{Mk?9h?dB@vCL8EkIRPn>h#>7RFS{8;-|(>vpI&fhPW z+XL9^dh+v}qZi|!YJvap=>9p&J*oW;)RK`Q zE2r)+Op~iD?lD#H<0o$cLyzSouXHi?>N5Sqa{6al4{Y$i1M z3U-Wig);wT&il00v!2fDn2*G8OQAZ95Rd!R6IH z9=mru59{oHL>ZA*KlL2g_Z>VoH%Wp-34<4~!92QR4o$U!8IVZ!OsY%@h2Pv`UOh4I zjZDd0ua0;3)=~Xr)n17-c45$*v{pltJ&^cN$A$(&tYD_N{ZZZXax~rh;y`R*s=oB| zdLFlDNC|g450?`*r-EjHI;dx^*8)a$t%toBk1mV5ICdw*qM zVUjE?k}vV{6$#Keg}VL{(2W0J(V%|pC~rKXB?ZTwLoyF$#!rg1bp!L+Wq`>2z637n z{bfXngAO}uCj$XgyZZPxNFt^vYh-b7+S=-U9CcvJI_MQV=m2TG zlaWJHHbwe#Zh(`li0e;sZt88wQ)sDh#<~0QoYY0IcG1nt>NMGkH2z&9$&$GEW{O)0 z7mP_l%ahzj^kZxRx#9n%w*Q6fK4t>YZ5}^~pa6*Uu@$iQu=BZEBhpqkn|NZ1_-?!d z-R=9@brj|yK8sku=^w7;Mk@lGmz8=sDNK;5u*m zbj5nE2cLE^by7pHZhQ*Os(PlPByP51xDerw{J_W_m!4N+pl${PP<8ue5>tm5+o%GD zazbjI+$HB&`Z!t0UX@tvDAqAm@~WzSaOBIo4c2Xtt%)Q;Z#DK4hK?72MrL!eF#;yK z>zgprt01raC^WX7V8ifRxkB`Rx1|4t^Edx0W1iCL07^(eb?$cmDof6=y&YaXb6Lmu zfW7x?WLnF`pRmxBepV;@TeBXX?{_FV!Q<3fQPrBy$d)J(h6h$d7p6V0JYTqrTk4_w z1}OHHS*evGNnZMjP(JlwII{*$yUE7!5Y5e79iVeVut^}sdwNZ1gF~#om|eCEV|MXSRkLu(giEL8_e0AY^tM6vr!w-9a4I8onIXsmlRAHnr9$ zIj`&iSfb{OIeq^9VO$ruGM=n8JBSsoXJ!@hdvmKN6?g@9X93*>7eW3klN= zIBA*xAPN76R~}Fu8V}GtCV&p@177-^?|#4hyX?=k8(}$AaQ)gF#}Yl^(T}EjB7Yae zB^AFn2L?de*`cToO$;P0Nr~KOU~ZSfF>xIS0jyS!*uQ&n?*-uxD|evjHl;?;n9+k$ zHlo*z3-w?9iR7PD_l=4BsQq18OZ)jMQ2_dXTQ(H$Ye??pOQHHdhXFvYT8*~uz?C5b z!48hzOKFAcfr^DjhTDc3t8QVQ7*fBE%LQ)$>%*~u_Z^sSVF9$+) zRZ8Rin9Shu>TH;=KUAa}a#-#c*6SexLPjH0=#+h)_KwLod+MFvja%s}XYZOzETxtm z&Pk(j*^!cLDeD+Q4Bkr{tWk~mAJi219mY_SGUWa-U;ceIr&D+{>h52f0viA35Ak9G z)hau);Pezz5iQqs65o1GoLkVjysAcGr(?LGgqhyc5<&MXxoC!eS+e_Mz#pCo;Ixj{ zSiR9jPK@>hYFaeo8y8lH4uodbGU!fYgv<3hMpBIYP&*dU7Qts%JwHLCvx21NxGGU? zy()#c^PAC7)8{n^0O#(0^|W7Hh}%U!K?cSd#=}~t3Aw1Mj!b0fxW<>v;y`5>G7`#e z6l$O^xwRXmlCZ7#jh-QxYLgZC_AN2Emu5| z*USqVwo!1-mc%o61atC`SMt5pUV0foOAyZlHc~SE{TR5|@R?|cM zYv=Ufnpt+>uEFKx6+xOQ&RL1xi|^X)nfh=Kr&cmA=S~SYYTFN47e#*1>)r?@*zE`< zv~e9Vdh`KDPGd*kLB~Zdw|+o0jU#VP&OR1D87z44^tOAH-{?j3b}8l#2f0uWC7uw( zqV%i79w}bMKuY`#%l@~I-y9L|$B`o>Js=e3@E6yIHy&C>vQJ0KDXeZ@diYR1+Hi&2o2=D$g?~>HaIcMr1+SEjcn1(B zBRkd5IW&GBXDJ1@$GwZfrAZmzN2Vv@$~}hp)D=+dp?2x)oHgEJDwe}LC7Sb9f4by+ zXNtkN8RhYgI^7e|u#gjfXVh#HtvC=Vd{UdF{AVHxU?0!5`P+V}(M6dBnDPoCK@Vt` z*s<1YAgh9hWUaGi1A!2Y@d;L-1rmuokA&7}T_@b^k%hJ2I$@rHFGuup;!wTdAkh*> z)|>~5g$3O!O#wXz3bX?!dbH+dbX$m}3hrB>{TfZVZH0u18U=F%7UymwNZq%ic2;`} zZnMgTuvmUOK~`fOTT7rhnk98m1$XSyo*4J-JM3L3GF@A~21-;_aSdPu!aB}uL(q{T zZH-4feNOZ_&?s!A&jY(J|M`(~Ae<=}cwlRaQUbhnfXHgT1B0&L+Mur}Pc#^EO;+e; zw3q{0k};BwH6$g$RZWGTv9y~B@2kn5iu&H5zz?h~dvG0_HES4LjOo3i(JD|sxSBgI zkKq%s$@*q@DO2CG7llbt+1OJnm6t1-QzchPSH2WiS9I<`4W*fSj?CB|l?rBi(zAa= ztb8+wDQmoLCc?*~BKVQ5vum#Xpmp7vQDbv(wyd)bs&e+jmruEPs@s(K55ffP!?HEN zxE>HL5Mm^q)Jy76R@8}+mhz{BHBEuJeS$2_z-uM0OJE@WKO7;qD~JHc!3u14=1kBj zJzxx~``u{`>%3g#g_&eiKfcS_;}Ecj!lZJl&_;J!2&rk|Gb=S|W|aG$J<7qwNsn#2 z=CV?ZfCd93dc;cFpDiTosV0wD|p7!+g@^i82$$>4bP?RVN zl1AB*|GsAVu1lk)>!e~Mx)==j34?CIWTA8Z={?(SHnVQ)2 zp^i7fpG_eIf66fQq1Ht0MqD(96haWIW|5WLLw7g*&>tD z`=P^ke#n>ZAMfAaC060@Kdv}R2T*GEm^zJ7XmO_C}uY-6&2UE?5fr&C#4LPRoc&uw<=Zt=3{TlPA zz3wAYweQuGL^F(W?>`=en;GRF-B0U}OGaC|=&jzNM^vDXOJHGtm%E(222bCCu(1qv zpTnH>ZAWt|I=jBVa_OB_&n5GQ0F&`Tn}b4_>6e3&lVT0!;(*3HJO(GEL=9sVRv|R{bh!;;y56{a1!PcXN9TMxF`Q<3HLT8bseAvA(5?SkY5lyVd{OQ` z+@Dw65LiJVL*-8$IOH~w0!hRfqm&X=xNgaGcI_L3EK{M$YSN>uV%+JPTuvxd>-EXB zmsMe1&fIy$H?bl!oyn-VXv!s07{Dwrzz$^kCR4P6joBC%v*&kJ zpMQyuM;lx`cIKh5NOaFP8tmC~zRbPFCcPn`M2+*7Me!VI!T!b~rF1CECxcs=%>9!+ zk$Ky$bDxm(T zy6$;WWQ$oz8}^1>z5!M~N!-rtXh^ z!#EN<5I(JQt9jFS@b*6pX4{rTyhKNq*lbN1pi^eR>5tSF1Dve;HeC`7JK1`qJP)U* z7u(jP{fAK*wa$CgiGt9#dqT7{JK zvM_)&n_Rk#0dgPAa3fSd9TdvMSa-)Q6iS^YTtx68f>HC3s;Bm)wHEH-TfiX-G){2; zUFBu#H;dT8(gV=FF@RAP53jwmRVuVI1A&T7-~m<(8?uHqUpSVmDT0QaBqN%j=zeBy z*9vsA;Lz*ZUzU5`KlhIZ$&gd02%#D`_RT%tW^M9eP_9}IksM9Pq5Bp*w~c7VNdOo> z|M?*SSs;J(f}PPXTvajQ~7+|Wv?i1tdmwJ_XzA$bEx6%JC(jOg(^{f z`^U}X#&*@2hyqNV{x9w)yhR%xEHSfM>A`okJG<%1`q`|>+NsQ7KY~BDOQC9U9a%!} z+ADmvuE?M7UsXe2od>*525{cJJI-#`Ay@CncR%Xml8i+7&w7iql4iSe!boWx$oor! zwCH|#e91YG4v&e4)PBF&fx5ouIAGP>5m~1AQy=pQ0?BvN%j5QK z-xc(~)ocG_TJhul#fy9A^({#Vuz+O30AV{OBkfZy@>}O^KfTDgS0LcD4kP&QN(*aQ z?I08qN()OHYpxZ{MSlN~vPJ2P0yI@}I}3;1mM!CUT{En^O&_2wtbWc_{9w0pV9cjk~)wPV+kVo_pUuXYc=iV=#Jj_h=fv`fAmxnrl|g z$s&VuAENk>`j1F(-?{XZ;MHq6bEn-Ar0;X>1&emc#_HY+JLlniYoYs;>~3{Y@{Z)` z*?zvkNmeEJUW2Pb0q{w2T#l)965l|YD9|2a$=(4i@fe397|$wMvgZcdax3pGXe0kR zg#n%K~=nf?CU>uJ8T8BW$I#))^$RCfUFB&cQaYl4Pk#2~J(oB0wj zAsSw%kE`QIc$xLc&W5@yxU3#7Zy}uN`5H?{uO%pEv&ugysKYpIP@hsF<7eSr^#FCG5<&7!GFKJMtR**b3g!~ zPlBdwY)I5g9;SljUlm4@(($(qRGUMx>)Q^VUhIl6p>E!-(4isn+`yMP0CP%v{IIQD z?z81u&ItJ7L|3_JB0Johs;Rztc^@PpTh}##&@u3uzb5#dn2(fGYd>CH4e;akkIofi zzkQ)!&lzuj&(6PU)YoZ};86~#BNFsVU$L-@BqaSkd4d4QQZW%ySri1HRJhW zjvEUjT@;M^M%1G6OYH!1j8^r5+aS#5_*zhZOF!b9_91HXPcHuNt;ro_;$F3lvTIxo zg%nrXS`6j%Iyz$%4rWNzxw~t9k->8LIhYpv%2gDBJ$t6j=-*c0|I`lq1W@SbF_=yo z3TAMb!Z;}u&4n+2F*f9|k5z)6lyc-bfoKUU91JbQNZ+jxN#M~BBqx<^D|u@FuDWN9 z<1|B5S~^sspRNzP8!}b>)C5_{c-`4B;(MRpNtsj+gp~3hDY&$u3gds5kW-;T zaYz52#6@anGv`yq7jJN0H$e4u2Z(Ow(~YfztHSALh$ATxR87sY3<1ifL#Ndj1jfRZQtEMmdy?RY!RS z;^gli`59FH)TZ{<>XR{w+ZivZx@@CKnv}c2P5{f3tG;%PV?u~wu11%8j_ep#V{H*PTJsSuy%&>)aF`@mWfkljePQ+`+F6}~VGOKol3&!ji4)xN{~@~>|l*$CId z)%BMdoWC;Q7JuXwlewxk&`Mi2&eV3|a{7qq?))mb$&S{h0n!U{c3Uf|A!wz)j)h?Qd9rvma|fP?AVdLSinuS`x>3$?A0{;tJz|l@_5l% zK#7$eHzAWgL^)WSqGQij%3>{0^~n8KM-I*P*Sy)Dcs4j#)?YTMO5`$i46Vzjg zSNk3)*$8R`414WFi|U+5bY3rSz)MKh{VumpDXYg`%|*gJ(Ug#m9$05X-=))DO(b3n z^DViUcecQ$1V%J)7mRV7|7vkTo3on_$Tg}LnZekMzlzJu`cb}pgS|s+&ORJ{{JX}q zOmTHTa4hvl+vMgYC2ojhV8zBU)p9xkU4B;ky!Qwmw+zQ8*H>>)iDJs(V2zRnR!~ff zOG^5ppJxa0Sl<1_8wzD5Fk~BCwpK5@9z6@n>wtldp6+UB@8i;0-6f_mpZ{!PQqW^& zlU=5Z{`9v+@Ml>#X#E*%g)Lx42?f3hV0iYAg_*4lv0;Km%J0>Q+H%7623W^Yx{`IL z9bRzujD(cvbKPlOzB^isgP(`ZvCj`V?d@%vZ3n7+ zFWb@{mr0{>j3b?oG$T-CE6<*g*bDo5*63=$zdM}?g27}TMxHQ;sKF57_?$~PlT7?| zlo_2TaPo||A3Qirgjl9pexY5F9b@Z(-syWo)b=DvgRSF-186lO7DFL=*Q&vj-uIwK z)P{E+flMUMaA+-61xWy1Oxr`=%vOk&i6Uq_@pN1V5`5122+L-7I{4H(&ZA8%CQBUJ zmy*A}C8*vwR)XfZJ^1PAIz{s?8zE&dqXw7}-&P}>Q(cNk0(oYBIx9<8oc@I^oTy+M zpNX;7|0Av^Hha#my6E9t%japl$YDJ1OoW!C{oHP(mG*VQDG{dU93!bY4&hPVoS2HUN8*E<_x#kro zuA0!xR#0cu%l+_pRVB@_fH-U*1yZBmo)vutHwIA)jx%rS-v>AR!H>-UoMV{vet_QF zY~1y8dF6ZN&db#hPSIrf)B7W;LS>zrtN;-SfaHbc}E<^P@$$cHipqCaivY2 zr|l3B8J(iY5UQ_*8(Y`XvDGabg&cxwkg)O){*!qh`qL%&JmDP5CQ1Qxk1)pslU#dr z-d3l4&3yq+vj|(3g@><~S9}3qj^y)jP&%Uws&7Nla4D zROnbl`fN4X)3g=8F<8~V+pzuP>%$5xotSJVzM3}=f2u} zo@Yspk6H(c6>&Ex$jxUsIDat}&5lw`Df+t%bn0qHXSXQ%88J zM=Yf|2)L4PxiOD*K5_V5(WQ_I(;v4c`{p?_0}ydHui{u4i97GF0-Fvy1iR3yvF$gm zCXZfz*r*}OqMC{WempuzV7m(oK1`o6vyQKpq~rX_l)_O3Ith;#H(#h99LfD0`gk?G zEpU>>vtB6!nsJqP<$eok&-CEtYW4(^meq+U0Yas81JZ`I+MX+;&?7u!8ckm$RY=M6 z_cq$3iF+&kJTRdR#sUd}k$Fev8UJu_`QHM6w!I7b7+evE7A|J<)0fOIrH>b0O0QRa zuh#Bv5eO9ZRyNUEO9EYM4j17;t0AHhyGB0%Umq);X}u9KUQ-9H$Gh8 z0RRqF1!$rH{3xv3-KFO}%57BhBMRzV`7tf{jlMK!_hgiYP%$izolMtrFMg*ml1EHe z<1nG9cU#x{#j{b9v|YC0wFhU?K}HMsMk1?Q z&LsQOpJ6v!5T_?(XRA#TQ!&<5@W4y{7%Tf4)Ef{-d}rc>!7Kz zTu|v?&3CoMl`fi?pVpk(^1Qy%x5B^2;B4nC|Mkq=+}CHdw%b+j`D$YXJ?|6t_=7#T z($dl@{}(^UN2{QVZ@Idtiqes`@OH*JL!7!Tl+PxmlA&;-Eh$l))A8ZT|-w z3TwT}9dc+;;q+5=3}(+89ZMkJJCej;n`$dFE_N9FDAb0;?o@7P4xdp}@*>mj0@;9p zX^x_qHYJ1`d|3u(t6@*&&weAH^If^hKDNN`-np3U$;WcD)3FtqC>d_f8x8`GAJ#!l z+ugVvPNZg_#hnb8_8D%ht&oT=5_a|6qkTrZszNgMr4MN@ESZWYb-!||B_ZDlV$Z@m zZRLifqef`h&kBccMMq280yJ^C&rSFi-9Z=~|IHBIkAX|v-*szM)YXlGYOo4d?g_F# zZt;blI(vF@XN+MVy`uQda%~Uug*&mVq=bfiLS0QQ7{Xul!z&mfEA%W@Ed9JBJ&OJY zW8WU`uCV~Zv3bmdlo15S#zTftL$x04O}U=Ni@$-bznY|4Z-jCzs?at-&_@a+#0g1^ ze5Yajq$)j_8RSip@xApdL0BMN^dsledvgp!l_j&n^4e|V)fD2ly6rKtA$K!haLWJ( zDI36B&b*G*04Pah*@$~>dD)1=J{(hj*9;jW9s?c6c+IP`V$UFqbd2g9ZUoQ{FG9Kx zVN@94l^DU~Uj(E=CL{JU0o~zIGv&#@`RW&)|EGKc<3_wy`nL zuJ<+UjGSsPL`H~VwdDSnAKkGVuhRBe?!m#qGak|-Bi!N9k#K88Q!4OaLLW(C_n?w& z+%KU^Q%cCbF09HTurC>ZHV}J3CGwj*t;IFvJwiTGm|1mdO6NzvtS@8;_LSu5@7KDe zJ}v{sn?19s(gZ5Cp}DM$tk~&#KB}vwN#k$HG3077kS0c~1BSEIGlh!oE{D80(W0Xj z$?OwH1RYT=Lq{eUX>X?F!i4d^E-2s>NrN8SBsA{F;?CW94;mRw$yRpR%HH0Rb4=G( zj9_$(AcSjsZoi}`i|3YSkT~ulWIW2mwXR7IsHoDfDD^NE|Y?O5U6pDwLeVUkc7bBr9u5FJ7eKW*3Y9-FpR^73b!(g~OH;^j}5 zyU5b*4ig!ZvGmd@K?QC!*esyASNj^?N!o!}SDd;~|=>K{%VD%3m z;m%d_;s5tzuQ5Wypy4X@Gc)=>u&DkD;asCaxrpsOaRq;U^B+65+H$zE)~8zA4fCTpU9!6#tnyWe0uu=?tR-NkiA>=za2sWtQmj4q>{a5d@=>k4J z3E)Vfo%R4$mK^iTi5VN^weoM6abwv%$lsuj^>r=Fm=w)Floxb=BcPZHetvY%DK5va zkII^BiIf12iED|y5sMxcw=3lj=D1T(bNK)s6@cqCRkB%w-_agINMIlcyHF!vjAEW~ zZXib@#XY|!T}wD~?>ZAU9r|*-D9mLSzE7so3)B0=xUP2aw3u9kyEPj^kH5^`y4nWWnC}n#m zdgo0>vVh02q}wVTqt!llTO~tQM8mrS%A^YVHAJG14eL95+5O_JY3nXL>zARa6*I>Q z6TdB@12uI}DaZ?qF5&fiL7hI_EH-a&KMp(EA)FI({RYg^yTN|1;v z)d9((m~jJ!pHmIk@C>V|KAHDoJb~O#yY`pi<|C;fJWYqv)&Afsk9DduA*8(`%bu{6Wl^M+#lcDL~wa!K0;6Dd4PY&p@ei5r}>Fl#8G{b zea4gY*s~Xzh%fv*0tu@j_l&wNb)dWcWx<7RWq%(*4uF2tiS`_jPe}+GtGcNz|D8iwyGj=PeF4(`9#+XAu0O2BOGo#WEbAX&&SDobbVlUpCID zoxBA?@W5IX{XD3z{@)_T^X6L>N8FR{`xGAsDP^P%}3j58HB1jmOo`+z(Mj7kZ zN)WIBOPy?ZG#bq=hRUSx?AG(EZPO70PRC7V*~Pj))7PwuJR8g(@{22uEJyhxsQ7;Q zV+|7T@ofv}QMo4a+ZZ*MRx@0yQ}4ZkDsRc}`o(@zIokjUVm9LRJEAHOXvuy?Qr3x;Z*K6e{Wx1_G>snZD{s3AeE%N3y<`^2^< zi3^;LS~j15!fdliUMohh9qLyqmd1_YhD1(AI6^$=u1WR6ZbKOZkv(yBW1~m%YnMfu zfW()gKfX2bThTwmt+hNE9@{&J5SI;3z`L)XTI1w>*qfHhA&~4nC4?YbWcxCD)YjBIAtoMEuC9`w%ye* zX#@r4VP@Ss;u-5dr={MVYQ2y=ZQl9|GIUVEAcd0L(c1Xzsj{iC*LnNS61@cd4$EVv zWr7#eM`-{&QTbi_+vhcOJj-PZ@?W9f5S|c5TE0dbo~i8SZ}slC)-Gbq^?PpSuD#cM zu^e4h=P3`U3Ny=XNU=|d5mtRK6@3;pLTct%l9(RTJMP&|Tg={wy-N-Z6?IV;o86+4 z`<>y*T4mZN^>k+)V<>I?FvVb9-JusKdrRMy?}9Fqhh3nR@WZa~?$coQB^KY+3|OKT zzZHEqsft!$7v-W#OUCK=WC8zs4m0GlSjQHn%9hrW9xUL%u)0cGCw&;oXwt4{CyyzSVv^(;|@2t*# zj~Yu1{jM4FV^_X(BpVRqscQO>&3|+I{fQk~)yV{pAC&C2pVl=5L7H}z^!caG#BB7} z6-^Nm5^_RP;SA&>{$jH=X{@P23OaRcoXG~$kKXI&55gRqZ=~Nk4bXR+;(RcY03dE| z4pS1!IPD+Cey2&TUq>W_lH;F8M|0G(3iFD~xI=x#twmGik*Q)%h_AbjX!}|k-E+Hl z6k8Y)?JvsXQVfQ2zeWxMzt*gLpaGHtmT zc7y{l627CMaUGfQ`cP`VckgTptSGNL={njH(7f9uZS^XAh>1oAg3 z)fkEAC9{XUi+XSh)pe({AF=DZgTS5sJocO&`+L$#nr?Y+;pMv1qTpi{}5_;6=NKg6bFD$83z3_H% zcDt4(d6W9?=Pi|cU&NWS-WzuGZAh?ZICUMaK9lBRXJvdQ`M^nMCyqW>K^@XsFAyl% zyKn{QUH<(^B9eDfZN&okp>?5*PovEBaR_5{hAa34nH-p6_83Kp1(qv;yP!!M(e3W@$PKVtjE0>5v(iLZHT3lQz=4(ubPe^Pbf-5gGCT67c z_A+EQ$H0MOvlk^4_o%TpoIi=6w zXKFH49b=bH>i6&NL}IVHN_2`O1l^A3W44l99ZH0$M7Ke>HnU_)q6%LRjtzC4xYLV(YG`8lEZD>z+M5Q?;Z|d7-_AI~*KfM} z&4%k*Kz>tGFR(4XZE5ZBN;_1nvFBfnA)g8(DDdz(SdECK-kP7Cil+F2{oYKE#`X?= zHR(+;JWL8OYA4%9e5)QlM>Gv^Sz5Yy^IC*ffQl@<5`W90!z%JI&0aj!>Vlq|7j1}0 z-{nD5$8u;aVk9SU=VWf~1COT2^f1iCf%Iln0k5OO)slyqdy^AUKU3;AR~)4=`W!VNp*sV&q?*X(5pGPQ!>A9UN&- z({8}iY{(7^MVDpo@UlU8PbhL{fWDv?Q?U5}Su^X^Q7TW7l$&v%pkK5&u|FQ~Elz~c z9-3xTqbW{=XLTYdZ1!nK|DFiY;(^bYnzUBXq@&;VI=c-_sONW2Q9YOxNK?=zgi!RT zl^Ob*r=m#~FJy`Mj+?m2bdh_Hs^xP3%dviE8wy!rmswVH9QR5q{Nz5g$7JI zS=eVL0_F@=@ci?t)(3W-K)xYBjAFgZ9LQ+=u%Y1fM}7KabEA>2yHj^Ti_y>XHNv)c z8a13@3vG= zetIQdQTq^JjC#EGBp`4N(c+@`WrkG@nqQBJK&#d9UPZ(7zuWd9_8S5) zs~ywcrv=R(P%h%>%a89>T2X?uwE9Ta;UpBnQe)qA$fj}`jHXRG|wOeua`i$w=_2VH4#Z7_ppC8n_%$)c2Vz|6en? z#xFkw+nLko1L3???E6<2u;o74@yHDb$4Gr3>O57J9x44lD&%x0xTTQMID6v)6i|1AmMcabg3Bx8l}b$j1TV8s(R}rb*asp{co7i=7^C^$@tNeYQ9phhYf~Ng>aXpoxVx$s zmGNfEaVE*VoDN8-+O6>1E}wC$#_wf361Ly;<0q-qjr2!dc(6Nf%%&Mwx=+O$GZ<)B zPW?s$@77jY*_+l|mC;>qG`L?MSCUK}?ZL-64*+DSyp%4Cgk^W6Jg0Wx@u~T$u_4+B()TNPC-e{OvkSfq70rXrndiu zdU_gsQ}M_%qpp5%2gqD(eTk*rq`zCc>BjA&nEyTKco6_b_vtvr*r@Z}r}sy{wzW6j zBe2=Ju}1U9YrjCzSCYS7{3fLvr`CQRs^@#9+TPsSbP~9=Cp(!4ubjBSuUfGrfN|3o za+GX2&~UQ2Qd4NNp1N=~KD`|VFLm6O@ui3b-_|$6;Dsipme+ML_?yvojC|}GHdXZ1 zfEI0mbIyxPi;vsK_l^M*`j4UN!EZl)dj*5|mxl@EfZg3yxccSgtv5irGi7Dvwx_UU zaRCNh<30Kr_6VlQ$S|^`^rUQBY9O&RM&@tGN8;wGw2Hw$#MgQM7BRY0}&QSUt73 zSjeT1Qb|}DRnpcjz>4y^s<}V9G+-wAHQt z8sdJ2nx#qXUuq^tl%sfm!2ck}$v#sL&StZ(&9!~SQl7!_W^otK8pQRYF%9Ka~_5b=NwRFpizFc z$DcLf|IkvEudkVBM%!uEg00J?e7oYBjx7tU*1RMVPB!kBnfbmjU1xajwBkJNtF@wa zjgb6(7tFajt*eg0Tfuh%W=|?*pGMV&X zsOV+h(0*TkDg+f2pWac-6iRnV5# zx_&x7?{9gVgmnT+jw-ueArSzirSa@+Z(A%kz0*$htQFJ0Wbi%R?Q1cRIxTs7_VBzb z#-0e6!hC7fJi2X^Nr}0+OA%;8v{?sGJ)3XTHy$Co`zj(Az2h!= zkauTk3+WR7G%;;|D6WVz25oBn>w5hr6ayC?Lo~%{ms)bxo8|T9yw9C4-+oy@e=DS* zp`XLpwU7U$APCIiE--9{y(BY{5O~=wbvIR5YG4(3+GO3JCRj&V)!LFT)`u{>UDLBf zI8SWf5M7@86@rze^;t=HATm)l@vLp38*;somN8=!(X~i_97}c>&SAM$IP3Mach-24 z>9E1j0%6skQ=OjXh1&^4=p~N?RiG^ww(XFC4;!;lj|Hl)41Lf2;yF&U3L?Z84|8EX ztnIi8w@6ehK&h*v{Ll|i?#Au7;GDGPu*8! za*$uI(&Nw9Z+>7G&*mdzxAZt_7u>NEBIsJ&a6%S~K7LQ5AMllxt&dg4@LjvRyAO z(9JVylNwAbCSdGT3IXDO*s1;ID^(L8pYUPN_HFqm1w|!7jXZ;e;V7%BGf8FTywYJ? zvvz(zaL=QP%l4Jh)1J#lYJy!4V#&?I9m_t!Vt+tDxIxCVO44b-SxNZ*bw^ao3~2Fp zk9hRHMG@zcJDV1-N;2Vep}GGr{k=!mtEd!95xrm~dB{|we}1}peQDWp0afQ!WVjUV zY|YaTF#0%Eok_QZY5ra7ldV%p@+NCP!o#>Cfq~6s9}V~D6rtwJh4zbMiLF#L5z2Ko z2xO;Jk3tXkATJtLdW?Q7IGeRpZ=%$M-e*@js*U(@Lh{=mXxZ&A`|lqIcqbNMhHTLC zQ6+B&#SsnXETU$=6}e$w-*#Jcrrix!yf@JzK3S3Ev?A2nL_ zLU&ZK1z7VHB}XuBpg}aN?!g%bfaU333ue{EP4o z7_$R`s%sXnYk9QWs^_q$%FC<7Rg?HZ^BC3G=MDbsDa4C_(R4R=RiBvK0ZJ5Au^Twu zjCIh|aPnmY>e2}4<*t+;Fzf#EIGx68ok1BjrkXYj+Pk7%HaRhVbO-V;Hp(uxTLjq(?loBG=f*Qg@Xw42p{`1-!({Ql^J@9otA||GAUY(T)kA@&nF5k-2)KX^yKsc@EQ7NOTqJ~Nb z!Y}!jB)9-^DC>!*!P6=7HnY<&_Z02zMwxzKt)xS(LN)8zY>xT;G2|A=)>e{zbE=%L zsc!aGo)6XjQce_+D%#R~{Rxe){MC1(rv-cg&n(F9hhU?DMd$|W$B5q}KhV(t`)auVBmQVlWSSv4$-&%z1BHLPva(xq# zZoDpeOs3}SCfIdn+|H#JO=dFv4$emU#M{%^)@sqJ#^|fjc|R-93(kgJ%9_&mHA@Rd z`31p*&@My>nZP5Ch|gu$lKp#>z5e=w>(Yk$hk@;;UKay@Y)qN72BJ6d@MTHiIB;?(+fBhzT%AI-qStH0*? zbmRq|J1c8r(I^D^UPg92*6-QwdPfGwq!p(NyfCbIO&8#2Vo}L|mRr&aaA=-ZXYf`# z($ii%k@0RdaJI5aH}x(AIdk|53@4PJ`96D%Do@s1fM7g5ioXd;?ZQ=(0V%&~fCU#H#c7h*Ni z{P?f~OqV0Ur?0hh4C*`Gyw|-A>*+_Tn(6r`AszV{8xXl?I**x!8^UW8Tj=ii$RWVG zhMny}QGhbN40MM1a_h!=t7|=@dke{PEBDmu^u5O8hxQED)t-D)ud_ZwCx}ch(SM$f z2RQ$3BqH%~{5pWzRuec&bzi1`Z5Y{hd%xc{2gLRaU5%1565yt+@^ zQnJ!&U)}GybiVPAB(8_|(A8hZQGw^jv*z&AKk2KguB6FxlasC$vAYE=M6NWs$m(3W zdp$42J@|LtnOCgU2?IHsZ|T87qfM?$Hw;JME&n!M!N(L2Uoe8a)nqwR8Z!&~xt_W| z+YD%kU(P+kk+tvfbETaRAbF(OYZInOV#6)}!q? zMvH~Ciu%J3#@!E}SBg#uiS*|Y!##uNHhObdP8NN*KI3A5F4pDzo%h`SY>R7JM-%CG z2WH}r;uiD!+$|do>EK?@EGvcvMHG~JTH5;7*J&$@F#MgrZ@fe|RXx_)=f>oY$!<|F z=4GC6D>;wX<;z#TFuQhF3R5nZ7O>U1^fY;yTPHeXL+ddC$5n=2LHZI@eJ)a)Q zmjD(eTNCx`c?`J^5!7A|AWoh*0TPHmp7hno<;J{rMy0IJL3YM+v$hct{F80yJR(XmD_#0^>DQHS|Mkhjj=nBH>-s< zfUJCq*gw2qHofQwvPmqP-6)^Hc{&@-KmeW#)-5fmK+B(_sShHRWDr|j9yL?{mveJ49(u*SvG1&kBF_P?i zn7 zCv*({^NMrPzBh?(YR;#?ksKi(4aO__-H~w zyCN-oQ-~<-q{7bI%GvlA>S%XY8(7*tLqS=l3s8{m9ZfN6Xl)>_-zD^R>`sjCK zeH7Ww5~i^HZ-s(A`N^oOkb@oB0s7Bp9R=(hh_&*f6s}fILyN6vM9EeqGU;=Gi9%QF zMY#iTQHg;_10xqxqpiMvr^7Q9H(8G#CGX8@0LcGAEBNv~m-B0wD|0&uq<<^WUctaZ zRTZlBT0u{GOmk`n3ctn_!@)&I&S-o&t#)YzlM9lWMol}CN(*(&Zr2Y2ox}4U>HLCM z;ayuyXR8Ibt6qwo{)b4P_`w-SPoxl` z?Bi8Rsn;UpId{X4mT|Y;*uiGgt3sDwP^m(^R7ti3vX)n@WhqD1EyAx>5phL;buD(3 zMxEdNewiT9px}8x3?}XKk^XdJo>#y{%OtRR>90HIIa@Q@-eM|YlwaGBV<}m)`pA9eUMoScn5o=25P_Vt#PasIh|E&wJ*>W~j zq0PSmAJFI{VD*}l;C?@Zq_m{F;`*S0ukYb>hA2C&Vndi0VMjaq-U1>cK~S=wz5-}{ z*?7%=_cJW~s{Scqg=K6IGrow-dz(u;)=@{I0Foal&SAAQHXQ34cv2wFoi|`H+=mma zb4Qt^+LjlU9yk>Kb@i>MroNYk_>JA1u=Wf~>*}hsto&34a?#-CWf6KqboI}JpJ^R; z@v&34B@K4L6tpPmqQJ4XvBzx0O(uH)RYT5h=%_mrW1&cRs zkM!1-q2PPwVG^T=>?}6q7U6=imd?66H=8Zr0FLN<`|;E?n~5T=)`n9q8db${0S5N{ z(X|&Hil6{*pGAS|A^9=TF&>%xPyNml*mjSNhw`flt6>PHK8pRMC`Ni%t&o3t`8>Ho@62{SN3gw0 z469o=@SK~5Ro*kN5J5-lJ5dx*(@`k#^J)YwOU%T`$qAq9BJ`M}!sCXs6vZ-io4j)@ zo1^@>s;i7ro3KHL#73ti$({j}ZeKCGh(h8rczY5dtu~f=#oia~F6p|g35*!NK7aO~ zm^}1Ct_)r}RP}MmUiCPvMs*DZd%AQ-qGQ9^qOGuLx1^VL$=o{ZxU8!Cx@0!AJ*GiU z4w73DwW0@=${U4*r}^wE7GKwM>x24pIsj3R!;KW|YDsRkT9_7FoU0l+s@7}jj;_id zE!AF?HGfg<;|1@gAJxBT1PyB=D76IIP_LEcwXV*&XDe6Q@TDCv+A zzp!#@JLB%@WmUkpt2LgREc71P1xP&@b*}!>zfODOeAUL?>rD4dWC@r>{OlhuDoARn zkmL^Tl;f?Mr%{Mng^%>(TRN4s*akN(*mlcZ{iX!ZxK1l3ZI%#ZP#+6=+us$VY|CpR^Yd!6@nSKGSTf}oig#O zGCPMZ>5>SSb8l~x8w(o4Yrr3ZqguPZZy_~ci|sQ>JnqT)?L5evUI^4y3N&8u1nkO{5DZ?B^kBykGZ&4H^8{zyAwJc_PY1eMZ00pJtV)Sl`;D5DidHt|s-}~A?X6F$ z{E$4*OwCgn{pWpUt6+FP?Xq=Qyh=k%YnLOUJ?n$UHI<4JCf+u&vJ@gvqfhmNpu29# zWb=Vk-OBCH(jrWJ_49 z*((!r)rY1nk6pHW5y9?!p>H7tfWOebol7L1;$?aY0X!UK9~g74<)s6(b0^`O@#8pE zhUUcEI9S$|*x46(-X`r()p_pJdhK_M*WEw2+v041i>ywQoUcom{AARwyP&v4y`%Wr zZ${s;a5T%lE414|kl~E_5)pdkQ%c9pXpzgE2k@Cn&p#JHLsIr~-`YGZbp!uqJp8s| z_7-ygS~@SmHjsSFWof1Ha5#uHiIYv%PhVOax?247hwGh>fLae_Yt{z|{%e);&C7I` zqUQW}^`1o;QaPoa$FhGhlU>3*4;VMf&sPQF;~(?Q`8QPPmKJn+e)0Ek^R(7IW_*7n zcvb%5v&kfw(-tuAzXLrX#LiypT&BB z=&D=v$+}xjw*5@|JW~mqzBYI3ci9v!{m952DQ%!gm6EVK{;->Q`ozj!ZV)MO1-fGA z;FJ`1ubij>&F#-NuGZczHV!3-?H`sgDp(NGGnh9qJ|Fw0Sq9v@A1mNwFflwS0R0^0 z*ByuI8?AODOYpOd4_K^#b^d#(6?ZF2CxSjIt=bV|8CJ*L9R<@?qt6rPdT1GL_fOg6Id+fnE$M)xa)F35AFpjMRaKwHIg2!>-%gR&@lW1a1wWZn zy$CUaea-vpMwpl();+5ScpQt+wL|d!S$%yui^BLE%&}!Mw!TwAhsPQ_(RY9=`z%j~ zz5aTYsr<9X=_hOMO7~nqn_*fonxsNPz3b$Ku-7FXsFTMY9_MFIlC;Z7+wqt^YA8Q* z0LN*`*^%IVl$!=YBcN!>D`>-aCEbq0M|CKy%Q?2E-qtO5=ic7h*xlfKsYx5b?QAaa zwml!g*8OH19$)*j&er7=mbSZ2IU;Ag+kn&wR+@8TQuwrSXBDo)nb zDW=(@`3LPv3;lpb*pT`|zIsKqyGb4QM3kw?dvL5%ywkXgz!D zA69Yvim3E7iuTlrEa+TDk>&SS)crsl#vL;-g?7?acok$~655RoMED-)BOg{A?H|{4 zT$f@lhDk{B60dJ=3uJj*4AO}oZcS}jcdbixL)(3|&wu)Zz?^!e@;b3|9n*TEp2~?V z#~A#V!!NVycJ2CSL=00Kv1Do;PYCT-{Sj27sg-X_ViLJoq=%B<=275y4Td0`1F6#$ zGr4cxKHsJ2Pvg8?DB8}qboR`a``n8HW1xR3FI{DYhMMVlJ&a^OErN=cv;B(DECs)) zJB_N2fMcoU^{ne0_eryD#3il3|7q{a!=dilKNCulB_Xo(w8+jwW0#U-FHDxPManjo z>@hP9x=cw`@D=Kc2k@mikO@Av-yKJ&+1=gf7k>)iK! zKKJLGbKmF8L57g01T1@0Dcdy&^6Ci8rIJGd4C`JbK#u@2x8~?_aYoc_7cbc@KebPY z>6g4esi)mr*y3!9>Q42;%*~JWw{^J`mpR8vE`bUJT#D%JtHviO>SLtoyaWlwV$}x9 zcbl&D`f30s1&)(ZD@5<9`TUX6G+W-e?xuWL&OA3E3lo}dtr+v*vbvO0P$f4T15cI0 z`g{4)$cj7MxuR(c79mxI*R~uzDB+7=8W{u}J+KOngComKPYDC(kt%ncLuwC7)LH8qX<5!9M}NC|Mf%vvpyC|o^% zL3KUqa}X5>&fmRkRL68Yf1Mqr?c)II-uziHNG zy~t_*g}adE(2}7J7dyiI(rjw2kpaXxd>{a%mwtuPTgjyWhDbFH{&;BVdt(HKESZX5 zH@28L8J~>*kk>2*s7%D#veMgyGif24F*(9ZOE7mE&HbUK~$! zA_ygojRFpRpEVLB?6K44N?K9^OiBX1xDrb{w6(Q?wDa^7@hhQpxMm9uGp@JDktuDL zF3583TISi&?)=kDh*LpLsw*W;Yx?CtM4vHt5`EnWc_B2^VAvIkmT9dWVy*Gm8vC-a zxqfCvv{}9JljExI3r};k8dj+wd;A>4)Yj9^$w?n>4jb>Wz;^iQwRC?v!{N|L`^9tU zsRmbc>~FDW1U%gBZv^R7X#-(3mfCt)&OlAI0me3esgIWZ8KV+-Qy#f$$k@>`xK-Ra zs1|FH*+LtyS#);eEhUdW#s{o8QhxQ*U}6MDXUSR7#?sq%F)ZOFOZt(n<2%DRmr&AT zM&{=5Ba-^ixWz<-ebr>0xZ}h+VO>eAFN~+U1aA3;D-XsEL-;p;yOJ3DI?g`8sxrZC z)HgwS%E27bawAlzFn);#aYKG&U}&Qv?YqzCmy~asdWm-4hT4jGsWrkwYbkFg#rk6x zWpf$1!FJ7ys>6N_BvTJO^7o*VCh6$;qcJcliw^x@`Act%V@*XM7)2=i}JK9j~5v=+j$Fi+RYeY zy4~yy@A^%nQr^V}qxl+c=>lbss$emYexRuv%*OT_ z=VQyR-QUQ;!zd!3AOnASDZK5tTvPf&5r^=VW{^Wm!H;lp-;y5zLTz^lkDfw#f5w~| z@wH)#MPrgAIp$)Z`GXkuo3xK&gBdf1tyKJ{@8kWu@Cg8yT&gDqS!np1`-!Ib!&Ge? zbD+gsgaT+wq=5$^?!2|J6!V7e%G zin6$m6vuM6SJ@U*)s+?v{zU1;f%T-OEwUZ+fnd4U$VBqJBGHP3i0m2-jvr|+%5rjh zF&Cce>l2xE_@W$aJ;}E<$+Scq?)(qEm1wndXCgm}b6=vPzd5~sfQRT&pDT&O0` z5Bs&|HgYK;BH6|3jAueSx!&n;m5p8-3z=+o9MTf^_%<(T=@Rab*Rb|SOlf16ngd5X zH;vn#zAakT7-;(OlQw)jSJ*aBZk<*Lq=wx#2 z#p@0tu{TBg#zvFh$&C6yat3M(yvr9$lYWNIWm8TRqmox<#Cp@T#7f9gpNO_Ih*7+p zFB3IQ6~`Y~sN40$@;S2As2UZ@-N0(9HM(j(zZ%4`0o?F(1a42yOb0%K@WnSIdyi(- z`fUiw$(huX2rgH#E05BE_A{Ny#GY_O#-JtAe2hZg@T?>SG?7%J7=J}1#ur#NzcC@- zrI1(OR!uw?_Mnh9ghlgghNJ7U?cG&FvqgD_o!tAC5GmH%_p{?gnH_u|Jr6&7CxjL{ zFY3x|`@RJC$#CjKM`8RI0!uHQLVaT3;<8Ei7u`|8!UvR^{DM*{WHQ6Va9Z;EkZyCy zJ!zaa&boh~FZ(MyYhI~URfj#q|9VZNL1c6!+nCq=F3S=#t(K5UA>lm3WQNY8%1-tk ztT1*&)l}`e@99BL%wt5h!P%_>3bDYn%qia5#%672r7LA(7J(Rf^kHx?W^T4;vdk_A z19pqIFmvtK{vBHklf-dWZ>P<8+GPtG*yb^2;@a)QMavSq)5GlG>6wPj;T&0Ci6-W? z42?c)DRJ*g&YApdChAt3CveX@y_$F&9cz^RVUY&-I~4{R7jw!Ql%mtsYFLBEyMaIH zbBkEj_CLC2ZWrJPT#ql9`qR=bfcAx77^3z3$L&iOE(%?lUxg<+v_VY1*cFcv%A4r$ ztRy@ICk^Gx$-fM-x6g7Af$N$FY)=ohBV2Mj%DS+DaWGOq#bVp+9IH7le*j@LNASM5 zj;5Qe!KleoH@cEJ+Tj zsm;88+Q8e0N-Ng|sZrDyx~nY%sXb7Jrw_!UzB2#ub5k^8XmHT_y;K|h>zL%Xeckqs z&I8LD25*(T5L#cpu03e>BO&}e;J3CF*g17uN`lb?_v(^z^jscd%FMJJZkEx0Qx$Kz z{_O69r8Zc>+7o|Ul!MHQtasc!Z(MGuA4_T2x`41`S!4N3X1+^?ot-mQK8V-P=&1LZ zJCbFtZ6dZ}9HXQ9?dYX`=?dv1#M1uQLa?3O^ZVX|x zfP`07D!j6GijWljqDT2*U~*hFbq3gj_&GPeI7>!s}Y6Jbtc)dQ&4qbKu{&4R-x zmR3{3ugAOdGh2+e2N6ERwpbioi0oOe&H_m`e-4R-n}4Of|I=6MRT^NC8!TjdaE{rX za=HVlP+MYFxX=TKm3FHt$YacLOH7c~8~>?`zkW+)0K)0!4TaqM2YpX_6q)(YRrNRM z5Fo~`m0DRTcl+MP*S@}trluy8Cw1R??kQKeAg*9m@1gn1iHhTu%HI)*xIMc5m7BrZ0jW{DFZ}(JxRyn zTsH%CY-?s+orQCgzn7PnxaRozVA6Q4qU`fPT^dhuAC+Xcg~(uo_? zWLpJhXee;~tr;Z7i5#+xU31G~3*JS<-qJUkw2y@Qd*$b5q z$C=}p+JGY+2h`lH64e2$Q!4a@4)5q5u%QdKy(e&Z3(|QYPL4DaJitwRVOj|I_eX5u zslC$eN&%EmWEOsjv8(y$=XiZdHZy%cb~?G}ZR>y}wKT zT)=9DA`AbA(;Y6dS6#i%+OxV240l; zfY-QYRksv+)HFm)!qU=`Z!`4s=g*vW{cr1zB^6OgO?Smbfc8_zd(qnv$i)p;6d1G; zP%TbVpe$=MN^3(xAYEm;0*v{kC6*AvX0ESct_&3oHBk44wLmnQjn0wI+nW<@q-TY= z4OZYdbfRV!q-K4rruq7B8_Iw4`w30JPXn++m3D^_E$S9Mb6hxDapq8B;zR?4an!ch zz30Ff?N(m_vmT$IZ|94B#@&N%iOT?0GqpaLNjsENe!B>ej{eUij{U5-OP5x+fjNWk z@9^9e zoT=F(+a7BG!vpwQ!%nJ`ml)S!>hkLYWejl4Cno)o(}YIWMoksaimPO)*5S^&(xO{Y~3u19u5A?&msJeWD&^A zJFD+A9^AXvi9@Yl*N}zOzK2{P9a+)3gH8=591ajaB_$A|_#uj{h5C9Cxeyc6>0X5x z(zLgn2`^DMTaychK2m$|3^vO9aK;O{d@Slk>xX)JdKQrz_ur>IgJhsd39XZ9kecS0 zM>FuFNHS@*azt4$iH@qlY@T)a{C% zj~`IN~+Y7_D-hMJZ#)-FK9%usHv%io!*%Vf}~#k z>viBtgvP?f#X*pr-ObI7&5euA-pQPuLqI@){RJmGCnqcL1go=$oy%)?Ry$|fKL`11 z94S-hw@#K0E|&Io)OX{)eq-VvrP=??Was=ZvH$|v@BYKi!S;gv z-(v%>3g6uoRB^I21!le*Uz9`mk0<}*-oNG%X1|;Ke=X)uO8>YEkSdBL%>Hk-iDD`K zpw~r05=WAgda2=#yfc5_dt%}S@yqRW0Tsh*KmX%LRMXmyV%Ms0y_2p|tNGnhKYerS zV$JeFz3n`&0IUpZ2FYo!eF}*m-3w>8Ll?o~D994swJRq+4n2m8`)5h(bpmpO>t3St zEo)A79l=N_7}Wm%<&XPEadGh$%$R5AQuq!M=H}*T1mZ}@|K(3w3OdU6h5Hk{|MtM$ zn-(DC_f$%~Lp_B5hk=^VF?`2s7`i0?>s&|ybR^X0BU#r;PyP?HZRz_j$@qjh3ICTB z|GA)mB{~rydYOODg-6K1$f)-E_0Ok6hXi-iw5X#=NJtP9jdBFE4C}*c)1pP0BKyB;Y(=V{bg~w&>GjsB0DCkB?bvz-DT0zCEFB?D~EjEypL% z(WihgZ1Cen}n?0mMu|BF0Q`}^Z#5nLa%zRH&W?^1hS3DErihWRan z{%_l@q9`5EGO$Se`t-{x2BuuB z2T@i0fEkMR|flQ0S>B_|-r45O7ZX&<;=EII<&N|I1g z=9HC%>dVTO$$5~hHstm3v0>I!!UQ18fojrRRwxPWpj908?owiq z&&vrrR{X-^NCBQ?)aPpZSx^2@j{jIUg5YC>$}mFYm$u;u{T!Mo)7FktOkvS8mCZu) zjk>GSNoy`9^U!|SITcyHX&*P_$<&;ff8KKx4DNWOr!czA_4eQL)xFL?9{mCF0~3%@ zP~x~YNlkY*Lq}(BfjZ)+=lO-UOJx4??K2&{X3xOt-EIw2{`Nj=m0yJ7ErEbhad%iz z<^HWP5H@Tv6j;mDdx=U+{J3}=FOWOSIZb!9VY%bFh=v3n+pW3V2#}17wq*>+(M_V0 z)Nh9&co7ze7A(d1R8ST9Y7!F@qpYr6=P(KXK0s9iAT7asaGc*#b)N38Uoz^wJK#*A zga3@_sl>OD^s6zGi>H{HuaE*>5t+0ey~>13{r=q)aq+dPaLEEV6SFD|KAlhp%Ram* zb={iQD%Q_sIR1L}hxy902Tbn?Ywxdr*s8m&J0M4n8tNrUtEk}Qf@abr$IR|V7B;Br z&ce4-Rpv4;u2?17GPrA1^j+_6}lmS+ZO*@)ajPQAmios50@&KJg7$-k#kW-iJ)#bJ1sOYu5YB}LcQAqdVheX{ z$*W9zylsa>e%J|rxl^QpcZyVemEgCVPOTc{pFHy|hcM2tq`N!s#$G4$N93cKYUa`$ z3imr_Gmq>}uzz&F{OtybFLk3_z@JAQSs_RX2-2vdIKy!Nl#%yTxX=3>e{T?42)pNZ zWBW88UCU}ZnB12R;o$D+LPbV?Gk&Ufe$#ZX(5&%U*+HWIsRu@wexl{anbQuwHjJ*K~=&U zsDU)Pz)Xc%`hw4u@ulO0GReN5NU^&9i6|r@Qqp$m!ygnq1lWMP(yR7ciVi#iMk8rh z6R!e&SwgifE$b9n+NTZJxK?O|B>UEtVPot*o-I%LX_Ok3H#42tHnKM|6(0(ep}GM~ z4G;vJt~}Z&(5HWQQ2!u$A4R~6^JH?-D7_hmLPI0?($>qk6q~J9iVWXYJxs(M8{mwp z8?ZRnnzt&y)fLzB)PT``+KPpf&SA?Gs9ZfG;(t1+iEAJngoJ`iEq;)RtSWFf!9R&@Vjv)xd+FA|FI^+5?K{UM zhJvcQG)E>zG>(a^0t6&K^I0Y9ek+9s`~l)Y(o)R*E4|VIcP!mP>E|lkYo+}yKmHuz zzzN`)(SkoQ6(FzwEnF%90+77_H_rb*{sfq?vx{~7GX$i1-~gRxVr2YwlMo-D54b}N zbab5|RG7;j`Mgwj3}8^jf_eF zqr85_%gsIhwok5gi_QdLcDB1ex+htE`XY&rluAe z7DjvSsKK%C#UUs-W4ZG6D?zSLW9hx}{{)o&X663CGdO`Gz|miZ8v1x$ji5`A`bY`A@e2m7w2H z(G0lkKc%SxK72rP-Cr=I5CV_WMhGuUKhMp>pdOw=G4{KGG+iGmWM^e@pXLit{Znf5Co%059Rmvsq@(kFd3kv}TOn>{zgr0KwD-{x`0PtQe#8j+@ZsEWKL5pU2LTcS zJ6r?=1k_&GI5@`@k?ID3x8g_uxI1EZ?v8oSx8F*Lcndz7LAJD> z@afssBs8SnWi!j!&RfgguTs9lSJkcHqkjzsnwP>$M*4s5%8~+#sq}Pj&){fyvImnJ z+hcs~Fg%LrCqx-7NX7-0E3ghtqmrHevmmG9>z7~j@dv@R z;)8q1y=)9>@$sf=SIqUa6BSAo?@^Ukqa56I=j`GRE5Q~=aHU>mmKfL`NJ}fgAf!14 zNS*=NG7MjCLg8HLe|W)uq}^lnn~T<+A9@mE3^h1Rw(!()$LwJglX$9cH1fn&lEmlx zG`?3V8Q+`;3@|Z^g(Dv(sBCi5PNNPstL5TuT@5sU~T2F3DxA~Air4|XWX_4C)ydmUjhHMIWXn!t8z z^3+EBQ=+-wx1@YI;_;gdwhF-ano+83ny6r{DKNDvT5fyzN@OqRh4w;R3~@dKo8C9m zJ;{3+#pZQ$B@!gWS|Uy#B_sn$9yqzvJg6;m9Attk}5 zaJLx5?6IY0Gl~@t_fQa#ObUl0&ss@9+zE)&r>aEjPt*0I%kpJko5ck_%`#bm>I*>W zH;&5dI19P?^<{PVa34;|-CX8&yLMYmTwIK{P*OxcHjikBMWY~tiH}U)GV!y3DDE2; z99_!fm+8IOHeuZDrIxnJ4Ywr35*4m?J@_&Q=#o@oK;RtVU-}C8#N8l%Ir`|5 z!@d+Im@BVlFegyI0t4Ob1`Q4LqgnRNHCz7bAY)Q z&pgFBhGcWSE|KK%v@*Tn=m-(>&qh;D%P15HJYDMLZtPc2^2|LP!<|m|VDMubbhKaw zh^;nH1a@p8wV?tT8?19zcSe5+WT8%}m#bPNF78t0PqO#EejV zBTw$SIipLVPsjKoO}?o(lj4A(G$w8}en>SKR;*WiqVHCaCIvr=OdE$6kC&^<@F;|; zyPTKL_GlUv7|v>0Pgg)@Vq%KlR1SX8y_Whm^2utxDa_NQIyFAi+aw(H%1EMR675|1 z079BA>icwwiFJ4{*(~80MlqwC-6?%UX4UoxwJNtPH$hs%BLMmzTY-c^3A`{@a#4B8 z;FZc1V$5M?0$uc1mbcW(@})q5I7TV3amCiX>-6ln2LUx<`bv37_1r)SrZ<@(7N_rg z_$@P0Br~~JXF^=%A{rlGb>2^?bov4|TQ5wTvh7TJ8#CGvaeIB-XhlJl)9)&_b!7>- zhCOWP!R<`NvumE`drt@Tp7DH&ja#)i^?G|eaS4ivmu9<+xQ-coIHk}y+y3PAG$V;Z zujWlP>0oLudLbvo**wSTF!UY!x2k~HsamP$baZ*PP-Vfl=N*s7YhrXy6P5NjNmlnp z>a(%Aub}aIjeH8aUT2JaVk*y{uQ72|2BHK?D!zCsmp>3WvAgQbvvtiC9ZR6q6w1O^0kevK9>wOKH*f2=_lS2Rt=J~qhIX;v>+9dx&Gp6;RA9BW8 zon|~RU7ya7VjL_|;m9)G{6TQlajW65}!+X-p_Bo|Q2(f4%V@4{s*ytPX zdkuGPPQAqU?_^ zm{Tn}IQVC9mHD=d=(k6Y>hqW6J+;-($R`pV6-xCkloO-6ut~l&ED9^d)Gl2p zj&_iZE_f!UV6DwI{CU4?bL`A$ay6Tzbu1y2^3CO!Vh@fSl{(N3l$)NCL;dU;Jk54+aw9|uq#+@GuuhGZa2kKop`h338ww)>q}W-)q_zVAW|F z5dizkm6MRiW#x6hK#zYL9ZSq)AA#8$9n1K3R^DA;Q(_OZIr>fT2T5nyH`L#9ztY6ciCdO2#yKKE25%+ z9TSmz6ymBWVX-^3$;Lk1&PNH0vLA#M6bpdm!{zcxGTYB(gV65B^Z3eZYUrfx%y}2< zR~d|D`VE(ikTIukNl|Hk<7IhLN@nCKgSd1ERX0;t?dYUu=A;?#e}(zN8WvqJbj89}>5j`HEwJChf*imE&}1(gzowWq-;%;f*u5(4HY1mioQ&6%Cj<$)myTwqLe z9KO0|rWC<7{v+J=K6>HNlG@{Uq;7dhU8(W$nV3XyA4$&nDS^gu|^BlVM2)FF$V+m;aA;b+hI#_UtQ4UK*H3@g_MVfc%_S#gvXRJfd` zB?hSAPOr1=FXdqnk?p01tQpeev!_eUDE-$5F|k>czO-K}-!^KM#+QcbG~av!f1$ii z=7z_xYec5n+bvoT>^xwdb_yD_GS8i@_*(*wyUyRxoZ2U+Q;A)@sWEBJrm?~R^;L-w-i5&L$y`>9}^*HmFg&1VkJj>hr)i zp{`n~TA_}elcu=V~w7o+;@out9nyf#wZ6vx+ zeR@wLw7HX5I^Z2@29=Y55kF zl9|*Pbk*!NYrhRmwgZUQEJR51Kh0;lXb#RZtOpxFL7|PqTOqepnPD%B$VIw^*SiRvN@SX<@Bp zdc$n|lNsgqsrW&g*i5|M7cvl3ds9&5Kk~nx<2NT1oggeF@hEODHqr z1-s1j^t4RF?sVnk=gcBCql;GVcLA+WvADLqrDTE=Az&+~LI#I4T?2?_NGuljcK+1B z0rPNDB`h%COuW<3uF3ffzn}Qs0BlqjF;cicAas2tKs_v=^3|{`yEnGkEf7u;%P=eO z${J$h7;IPTv_v>F`|K5dgjU=b`>?Dt4taz#G&DwEXSL`Cv{p7J-C~bcFnD#CD6g)D z)}TrK_5_7>u}X~@%NBPBf76-U#e}Q!tDgU0t;q*b17T%-XK*4qY!u>l7NS?SH~AR$ zbd<$+t(Yfg?mr!cGwj;FFo^k>a3f?mi>dm;xgR`ZX*f}=F!P!V?Z*Spt)g$~2|~Q$ z(|1|n?#YZ_D^;82M-x4Y7(a)gSj{=tVl6DnsW7jq;M5r-j-MphiF~g-4Ct0COxGkx zX1c>FZ8ctXf>@2J#7!}gm926l`+l+wj0S7!7vNT3Ni3}lds1#Xrs-}#rMpP6_>3c- zz+YHa%40>xC7P3BvvcHE0g02oBZ%(_X`O+qzQ%;^ho(B+$u2Y%csvR`HZh)$oNQx4 zW*=5{_G;73?{T*J6f6Y39W=2@&uoK=)T6$ z?urV|Gu+{}9knwp)RFE;ScE?4m(&cpfNrrSM6T-OosAd=E;Nw$*` zE6%iQ@Zd~)W-&csg&On>$~VDDIa5^4G2ngYlDWZ!izs;Ubmr*|QU8yP5PWy7=|t!k zY66pz(TI=xMIZ7)o4d$=Mw8^epq)a$su)p_lXlE%Qn(TscQLu|@vuCZvq#5xGOBvGic*<@lh zZl36`U~+)rF|y8zDYP3FC{^<1wF{SwkrHGLf1s?ttbaXo+2OKgwxjt;x8HoWzHX+j zPL}Y~Hcz&#Gp@juL}jodK99m@(1&g* zS*cM4!@$M*q*)YZo57*PuSnQK5}u2LiE|3Z4eNe*#6S8vpGRd@H2J*o{&yF?5WHnA z0TwqOa)PvPB2dWM3sqsI+#r?r3C za{o?DO)^2x7m2%P%f-3K)-87NuGHCOzY${ATS%Rus%Hhh71|z8XVgoe%+Wjw)wC(m zIls7Z)VqpfCN?j5#SvdV^|z$ZW8IcrCRJrPmXdqv7Sait$W={DXir46wYGn?7NdG4 zB?vY%!NgvyGd$CzVMQvJdOQ-*+mIhYGqBv(zgvm|Uw6xV^M-_oeEWL9*!1&tHt!BlaKb&Jk z8O=TELkmel`W7z_iiYZY9Wjk5Q^cQGlxCek<^8-0l5>>3WsJQAl+{Uz3)85zubh&S z;0Xt}M}xK-*?gOwi*v=sIQxYkX>pc6djetAR#dn#WlGaVN^r zF&I6S0z5 ztQK2iwAgT6Z{&4(f*KGp{L#Xd+%wbHr$fMMu|6IY`G&+6=A`Bk;Ol;(EOM~l!Bk{W zlpCH3{ZNhSda;Y@`V%+8x~<~T#p=)QqWgTBQJD37IUo&20t!3_&!V|_*jVVi+{2Wp&e6UB!e$0TA~>$c3tE4TCj{B+Qqe)E(5eWuH= z$2x0fgvZwbbSs_u3IouHuiAx&Es*QSq$H(#foz~Nb+%!|tuJK3?-cpwHfA3}pG$Kw zAIqxid9v11zhtc4Q-ZNtbrv8e*r-VQ)p??oWhq5(*IBhM>WCNZT6O7by1E!~S}%q> z0Bx_g^fcG~R=schgq=q~kL>e?t4>cK&1_*;nntp(Q5Iaeic2gjn~rR?S1hG;^;}l^ z7lq&VM=C&QXO30dpW$0qS2t5_n+V>SN(b<+LT9_q0N8ubcCpE4aI&F6I3_w;0~)iZ zLPSVPO6P@*kFPB&`|*f}hDM^Cjz`?vy8$Rh^;3QRbcdP+fk4p-2?eCAdJL?rN^PCN9qYk%I$8FjhOTKi zZTsH(>>}Kte7cUo0FD9FQp$!ECWBlOF0+kqg?l5>H!3Qg2(R69X|axkrTcyh6jg_@ zUL{U7r#1twF!xU{f<&us=GQuUrv+7_y4DkTp5m2iny8iuo|3;KZA8p9SS-HK)OW)f zub7}6&#BR63EusV0E^R#4w}mAx-ItEk0O3>8SfEoZ`T){oS1f@;9D4u8u3WFP#Aze9#|v$ zYF)Y>se9NHen$-GtgXWLht{Wz9Y^9UOwJN~hl2_YYq-V{IF(x$?JCJzF>%V1;{w~` zZ7ji*F&cFyDK+CsPBi}hrPxzx9SJ?Us=7!h~w14HAnwX^ZERt^smo!klJG`8^I<;P7 z<>uA^hSP$AcgLH2yw+jWw))fhz~IDB`b$-tZl|++G0y8-ew{W~vzP1`GhZ$A-kwWc z8PDcwowgk}H{JFeHD8+U>*Q({npwZlaBX#*qq$45gB01~%Mem#GCy@3A>%pPE=;+hT!404EHw{u*jA4(6pS(fA zA!+WrAAjOJlQIgzq&sl5pza+!W?-Jpv5cboUP`j79p?lc7*dJ55YT>0<3xmniL0VI znUYLG(%Ah(bn)8f?M%}fMuK%04mpbPu4uPXk7#p{x9wtVNzLN-w4-}Q))IU`1=@iH z`PNA+mH+^gXQ7zADD@6&x|&pB>SkRqj&wEiKM=Xu8*~j_ScSzhiDj(l$pv}wSzINo zY04XB^%%1cXG;ne24VU>@joj#kLriekt(f1b8F^|x^ zn4oM4MSrgP&H#V{8XY7Z!%<@Dzs z&y!#4Jib?K=4P^AvavBh?pyiw@Pt9V%UjOf9(Hwj=c9y6(@(bxO!Cc*uk#}D6B`Ul zA~T-Y8rB$a<=kXd#IA4EV|y`YSgmGvMqO-0@qSe!)N_h~TU~|naXZ3D>TOK8g3vTS zh|ify&oug!-(HwfyIkVG)ccNFk@iu zF|zISHe;~f7G3{%no&$Z6rF$FM?ZxHuIMxp)(~*KGPB zvY&;pQq&7Fu*)}(k1Ud zfBsxxGtWl8p!X^!&<1!wTw}rJlF6&mvY085@-zaS{6m>G!R){walU6|z}MyFH}oxU z#%iWaKH~ao+%w);O2iEXE?6^Jjn`U|lqyZPE8q1zU^Q-;@)1`6Z;P7eNoz#h# z9Ub0dCvqUkww_N=N~n3!$LNt(cM0v-vJZGD6t62M;HbvQN z(J$<(oAu^Ay(a}jXdP2m$!q}*}jdG1$ zn(BR<<>H~$OtXsE({W82D+^vqrki4xEpn(6_0o}+DwRu(y23v8aJFLO2B~e%8q15w zY^=?%X-$oS`SF;(FEG51PnR_piI<%B6L;l{y`@@AOLP`0OzLA}V)j#?>8q7Haix84 zWWFiWgH!#i$=b24gjluVootR6^|1cHn~k8q^93#m$~IMY`Z3A*%UaRM`E_a?(gBAd z3&67oR*KqK5efO5+4I)ER+pbnlL5?9QZ$HnA{v)^s+Irh^3y$nom+6(o;x4;i}L&$ zn=-S?o4^q?k)5~D({5O?e)5Uz&J78(7QZ(0>@;IFWwMZ)*8W0c@-#I#_@kjpdkOQK zKGk^7ZTG$(R{&Zk;4P-cuAglhY{6<4G2=UR&(^0HQH+x|>(76)UoQHxVL=t;0t&O3 zzjR@p1vx&|caZ%WY$Txi30|-_gC}@D_!V=yv`X?kow7pBJ0WR9G3x|g8>o~>J&(5g zvyq7Us?>p4EB)-fwiy!h;(=SjPqq`K&Th%`kS|(A3va+x*ycl%iErW79Y21CG8pD5 z>7QDx;MK@=5ofH%Qp7y2pS;Fx?#mJ{xWGwPff~>%U#MOACgm2_p)>W)+M0!X7im^D z4L@2p&Q75KDIH|Wdb!z620v%6@;&jKCj8)^h5>Qi)%v9C)y`bw$p8k;`fd$-l+5rM z=Y0`6>YriixP&*Z$3)erQj>(*%)E8q4!<&5fA`g)rd%le}{)bYTTsL098 zqj==lewS5=aR6$$8YD8o$)N~!V}U`bR5ax*JH{is`JG=%Od34~>vf@WiS5J-B{_Wy z#!Ilj9b_6^-i_~NXB^*}P8FzWZIj8DS%;aGgQM;ZptXS$#3$ePj6pp7zUh;gG3BNm ze>Yt~fSah7obO=NC35*+_c3Y*Si)^?&U!loov4bRaIHg`ih(;t6=iHOv^{#A?XC4e!vA!wN~p^n#D6G<_J^@+YGne zlVmEztFC-%laNWU54ozCn%GcVH@IjV0Ne(p|4zMIpa^ zzYtvVoTrk(-8tJC2$2yL@~cTrlWk7tlM@*0U|OY|V&=g|DO@pVn8bT#qM31ccY5e& z`@%{;E~&S-{I3ysQIHvfq!F>g$^;09fc;dsO3PB!Q*N)2 zjR}NPOfn|dx|Y1O$t>rUa*_U9zcaTZA?Mh`T~2DVL>?cf4vMHWLH=hFtTWXk7d0Xo z-+mfz#o_y9p>UA{fC+9a{%56X4hCW(=R-1C(3EjE=U6MBCb?~^_te>DwxRjPjrOrG zOPkOWG^=Q7GKh)ditJEl8HBqP%zbK=67=1qg*5Ix4Cia1_{J$t7V#wAzcKM-Rj4w$ za<)H(!+@)+(bO)+4xHR#@jSQFYDsSNv;A0%IvgxY3rAQ5d?;9V6P1KZg4C*!oIk5V zb{=MqXCdtl4yvp5;F<2trJvo3WFJZmPNogZ(#O~jah1UG3hhS@7ACZhFv53>7ll1j zL8Fl;gNZ9u!%}Y#`+x1ojtoV0#p^@b1n_^*W)3V;s%_br#kY5S;KFm^CmcHe1b{Nc zEG-H)gHX&o-@SxM_}t!xqE?FDGraYyKgv;Xoe-EPMd2?3uX)VWS=H|eZqj^V1q)ma zC37p}o^IOZOjN7Uj6}3`yQ3hZS+SdxzNqG+wV`gwVJL469}+_tMA55&QK-SyLAaDt z0k^Gz_k{vg%#$30iO|X_sg+%LWp)+x5c^eJ+B-$WUgUO1_K5>ILlvzALQ59*&g+A& zqz;J7?NT1_jt;$29Patl%US^F-Qrk=OaN8>#HT;r%qAmsr^d!}5RjW_T)`_Z#8n5G zG5)t-QL>P$b%DCpxPX-cRSY&pmk1M&j`qeKk;$mY6bGbtL8K zH+gQ$uJ;j-IPw`Z-pRY+l1~_jRoeo`;oR6qu&rp{GB=e!5x2obZ9S#!dSw=GY=z2YlIO^5Yj&u4RL0&X-xdD-euTA|=MKB^ z8z<~!-$9aklkpBgM1wlXdUj?2;V;(lSu{u(R&W345~#tlO~>4RXzRPyoZIH$^DVjXL$n1^){Evg?WT$I zVCls8g`DE|iu%)&nFS4$4^oN>5#0K}M8w9|jT^I5$!uY<$#ndnwRgy7BS+(QWSghh1^|8Y zg1BG56}%`|$8Y$BU#c`bL6)4^WZ6}3HMPs~{$yg2ZG;t}Q-DH*R6YyI^eY{~zgEkw zStDCT%@g%pZ#-LYzQp!|tlX#aUdn`I=_x%gd)tL~bA2?F!0(trr!KL zYu|Vh`|9(l9GkgdhCXl79Slo{@9{x|M1|wgA5eGI%$m+Z6^l5yImcN-eb0;HL0m)& zzH}0q5+pW8Vgyg};o2n`-j#!z;BcqIuz|A*+iZg8**OdXPph?3n+rmmp$bY~`38Cje0N`F2{9;bNwCsgbg0DRjSSR+qi~o_G!b!@lZT1d}Gj-Z&P{AQoIF4V4`h2D>v6CtWImx#QEfqVMca z)KmPI94hl1-EW?J&U_ePBHh{kBu>gd{^t`bv!f3w;#^bAM=PLF;zR=v){5kd*ND*4 zdi2EUwyvYra>m#n{oi5t*79E04KQ5BaE6|my1mLZ;Q^j^ zIFquyn6azC0tePmABKBz%dg`sBYionaQ_<2+CC?UTh{}hYumkm4E$!(+Im-6kPU0I zb)aI?uvz2KnCVNE4I&Z&YrmrSI*?eflJ=!$V@Lh^eTzDv-9Uz*O#5W2O3T>yB74V% zCUK^xWc&44$rN?hW^QW9H(Hsk)hHFP)A&r%maDG8HAe2)R<5leGdWrXpU_wv+cWP4 zk97fGFzmBZ$O)ikHfQadT}y0irz^5|iXI8kwm0F+l-l`XMYLdI4t1Dc1aJ$jc#w3S~o*|1rDvn^`Byntg)TV0rFjfVL5)l z7~z$;EYtoE0LaUE1k#QDO*JGL{jL3R^T~Ga$iK@J_IFq)R#s_&8~L>URf2(mnYDgc z8A*h)h~Z5=kGkUO&#)wlN1X<01O(|#WH_2r^kL75uD?2IY9yr(2su4_PbHJHLV|X! z(K5JE7J!!+=<)MMkY2^RPg+GfKUtEz_UhIJ1>%85kwPFvBZPX+JIOu!3v;Tlat8pF zo0$hbOZ0Bw$hZ;@E~}B@{%sV!n=>H0$Xc_wR{D4YlK(sTY8rmYqcSQQ1GT- zT7D5S`Giq?U_VPv$k(21j<6bzKdsIR$rde9nI|GO@D9^if!lzQiWgw&oMhbd*JF&`2vP zQUsFR2`^s1Pw~6;C^o1Yjek9yqeO0Qatl~nmr(`_k2_5VMLug`#{k1>!0%&Q6Yf*SNUaK3dt*?(Ec-ed) zl_LnPl_liADh>Y=#Mon?eQ)g|;A(Ldwk!!ZIPzb55tKlFhqY4GY`G`0vpnl}IhM+8 z4P#l)W;3kc;A_74!dAP40yK>@Zq3#$VxaJ{-^6GeZO-lBB;}_1&d9y|!&6v^5QFKO zCuhr0`Hag2Nh4(uKK`IiJuHp_WQG%XZ4->#f1+P5-s2QqXoFQFb{CrwzbF&V{->Fe z`y0>-O80)f>dz`BcZ|5QayXzODCiGf-=D(9#x^zgoby;uuD`w9j){!?fm5DimBh3z zvfps@PW{WYuE5)_@QDbq+l`|8Z%{QS4V=I1H6wf>RuiGR)SCUZVg9+;8mG;vez$di zCy)tbiY|@uZK^U)nwziJ*iTwe@%gQJ2|t{+bY{x_RYw&k0rpz+#UE)=Kr~9Ry>Ct? zA9I;~uKey{WRy}F+@-`fpEZ&xQwa1%u@vpTr1A$^jygIzEXVWI20!CN&#(P%kEncr z^X+-HTXQm|BG!ZVW4dF*R@oCsXdc)E6x@_1d&DIr?Rfi*Av}$s6vYT1V2)&yV_d#D zam2QVlFX;Sj!%FU5Qi2x9{j6MVv)$9&S0j_IoHVd!t~BT8(f|N`qakLUIreA8DIa< zoy`Qir+(^#;hdU$9U2;%B=L{7e2JG^#Wf2+>Z|W~&Ur{6-+3p2THDwM^5DS(;VM#M zY-Ge;eZ&hGuFrSzbbC_exH;u&IxipLvkRGg7dQf3&e}!e{Du9`1Mu}~jIG*#0$#mU zTi9}}@Audax8>+g1C^X$oJSdiw6F32lloZLy(}^^(z^`ar1>1WR8UEuXNk z0hlx**+&MkJ#8zq`4@+P-SWQo=f%NGWG~1sAcG8XT9fzr)j{S7G@Y%1p~3Ecc~{^IRh-Q}^rwjE_r{$)D|;0k24b zB9tcJq&S;yg;4qCJ>oLsuUp$iDTxq1{0LOM6haGM*+m8O&kv_dPC(u4%?XbqL@#Bz z%m>GTQ&l1zM!GrVcUvh4-eK?xs%W%|2VC68GXA$Uj!B7^Ea1~se`M4Rzr^~d{9=DC z!2t(gMi7P5(AeWYvB^5@-4pUbVS<6~23)=z%O<>K4oBiZzlm!j4UQZk3#EO2l zdh7ekqUTGfB1ipPkA=WRTtus-em8|t%l##&Z_ESBp8AWoVF4Pls5F-%`F3(l@5AB0 z>%Sq`Xq30aL;t$=ufdvngam$S2<;3}8gZO9jT5l;nc|kSX<{BO(&hR>DWbR1`9(cd z)Tau(t7pz}WuEGzr4Y;VYd%z+3r$!SU~}N(Ou{e;#O%kZB&@$Aj$iqXFwD-`KU>@m zq>!OyCCT%SlZI}VfaQ8D;FPt~a;CuExSAz)*v_e*b4h}MiKzy}6DNSrzEwSI=WOOB zd^YD?4|HH20}*XuLqmhFN;hC-TYy&1{Wg3tMZ|VjY6$H~^VxzI`%Nj8A6uT_zxc}C zh-6us(1gqIFU9Ig%D~Kg*9v;lC3dT}(iIV>1buV==Z<0o9)%!3_M1w$WU@!2olN2a zlYoG(is(fa7wWtI?;L~g8-U8zXebGD5=4A?Wu>vii1;D03UL}x$= zyEw=5yyF{VkMl#vaqs(zwdPuD&UwfE)$_G9KhhrTZ{(c+*;Z!Uk{!qCGv3{aJGpFW z1wFkCmKs+8K=OdT5E&KqY;{)lv<`XttCEgRT2aICrai7iqu9asN$lD_}=UuJ_2}NloC7;1MkM%~; zhdR649rD6d&+Vy0lcJ)a&ux4l5SCb|^MHCb!QOPK5Ij75KtMp=*!}MM6|D35?nr+e zOHw5-D7(m=*&d4B&gg>)*gl!gRq1;g51Idd#;pD6Q-CiTG2Kmhs~ca_^)|ih$pFWr z%@Jeu{3=|xGGb$Ef+zN6>XW--bao?NCI9>CWI-;X{|^0UQE)bFe;5ZW03~QtQc__s zA;&fdx~2gX7Sib0C9UX$pwX@$s9I(6=ef-se8>z&2@26%s`AH=aQJ*QVG$AODQ?%| zc9sj`5mY@J1kKA{C^nl(_PuB|VH>>&gpDBzpQNNFO0?VbnrG=JsHGEgrZkkOYJWvL@K|7NRa^EdLe3Mo6Dqm2zK86VYGciib0A~HNj zKNO2K_goI&T8*Wh3$*=q0J1u{2Hi+k!n{q{I2 zw1K%^O20YWUIE(-NjUr;NozP3WEKLs8@M5TIYpbjSq0Fno&@4hD=$%9do7HT+~JME zq#gCWyUVpu@+9rjFO`H;#n{P+s;6I~7)-XsYzCKl5a=l2}uiIgw#$U{q zAvM&108j}z z(?~|1YpNh#YZaTYBR`r%JO&g#3c#xjBpAJ4H94{C>g>#uh+%q^(9V8_Jx8~!ukudX z)0T^!Zc&z$loUz|S#t{a(CDAeYFITgV>YVLeKFzI><&`!HIPyiF4Wuip(!sp?G#Ga z(HpoBKMjpRM{Mut_@ni39Rm^}NR&x$E6f(&FSy<8fxLC-d0~kF1BV9U8L3>Bo(H+WjMYq_bd5vNJ}`F zb@fI+_EY{9`lY&o@H1XaE&A^{PF;knGF!+)=f53R>F1%OY!kOVJ8VPeHs-*%%;7L- z<_*)3*i~x2jxwv?V>c8$h4#g8!-RwBN^h2mu24$~Jl)L_o~DB!2q&PT-b5FAI^LLd zfAMhF{E*FNJPERl2M6RobCicilZ9qenSp;oA&+tkS{1n6(vPZT#Ugdu`kGpewRC_p z`Y#Wc?M|xFDuJZD4T3(UpriqXo7jCG_Het&U-q;aPN1QXjn>@taon=E8+w0tGxjiv z$JE6|X7TNT+xgt2@u-vVv>D+?&Hohji9lK$ip{Z(_%ALT&-Wmw=3viJgME+AE=(!xFsluRmM}&0OO=!!}SaeO@TC@`DZNK7=ZRO*Y_b14^b4N z*#}MQ0k-Ruhbz*N2Pd0yN7I$O^XAQD=b{Lm;QJ}#gb1&{aNGj{`Axv8XYhxAmBzP9 zWE>n*NH+Z`{945CZH9^M=YMsPx~r3ulivq^7$8({L2F?%UsMOdpbUiXywg(~>L$$UBcr@U*9(p7CEw1C%YVOw3`lz6_;2%S za~U3gg-15>w7d|h%c1A}&C&xM4UJeR?|G~=@0mQHIye}G)5e4%S9}}!EnYvFufz`yA6Wk!qswpsN5|U7Tlxqn!S%3xmaqrA zX?F+DjriMFKn`*GrD&Tk>e%5*+XP@jF{;;mCUv{~_36{6_%zN$Y|m$ysSlCr~2kBdk1D`U|cX3&Of&+PwvgMHVKiptJ1hzlqX<#*AHvuM^22kDiPJ!BC z;K?xw6erTjK#&#(Rsn8z`KaRi*y+_~iZNgWY|mEa-=9}E)AH~%^w!q|3XCDcAt2-f z4+f{*(ykYzqzC<<(c0;8WLQ#B)B zk0rzm<_8gTUdzIt5fM?7d6mA4=cRUWPY@#nZZ{~Gqi_a#dq?}2n+pz_A2j!7E5|@P zJs&j3o%A(mD$G$ne*6eV@b^xKtq4g0vooZ2t^^6l!1Kub5s!2#o(#Pkd$=~Nmoxqw z&~x}bm#?{Bh#u>Ej;>Pd&D0912xq<@K@TRT7vC9HIl}ZretxLWwp5rfw>O%6D%IOf zuaN5hX1wU75Dq40dbH_Jg(V5jn3%}iijrxVY9;H9jLqDjNQR~xnA7lh-mCQpPy`cJ z)B~5v#7aJw3?unA1o&OphQ|twN-{PT1SoD6!DOdxTF_irKrohwa?t>=e@bn-dK;8> zYJ1|Q|79LacxfA=dP|AEnRqcWIW^qd0>h$fQdb3;r@d4BT#D{Bbt$WqLh(7$iB(0g z`=hSCvpjOtNv`$18eJ^a6au_5?-gVoZiLQcayN@M!-g_ZJ;v=lGK(~KAp%mc5mZv6 z)1|r!>golLVZ(mj5@E+>9InHf{!q_WQfC(2O^T zL{c927vJ7DY~;eSoi&4SSca1RU;G9^oJb`#S(Gf)g+lX4)AKmZ1PawNx;x*Sm6e&G zVMJ#Q%$zi965vhx*)|>_;3yt`Y;QU_X*w5r;wS#;J9g3UpKJ5M)s)M+us%LM(slWd zFcIUb;bhQyRP#!iEjI)m`O*1g$9>*rOv-7+2k&%5l$4g1R@`*9g4|)#dv7mLA?@L; zL-8#1J*X$BsHpNlL*TUe{s=QQ`tLpdi^k*K>|5YSna}HLJZAp^Hsan$T`o50`RO*r3Z(obAqF|0ES4 zt78+^+nd*Dv+OC6yFFf;uqs){0=S|Isr@eAl5y{ZAE$}Wf<;4!azUGs9(dbmiRV_=!Ddxi-A!NX(kXZT*?UacACbAX zC!Py!%PZ1-==F)LM$_s+r+B;w!5t+hSR*XGa&l&I+e&P(Bd@EdDei*J*rVb$#advH z{J5(CU8%k5DYVCg-rv)%Cpc_Oz) znlEJD^n4%$>GS>U(Q@e@R7CvVC4iEQqDe#O+@ZCFpX)c)d3kw>!JNdWonPCE2sS&? z5b5RG@82IXGBP-&yQZ;&1?=qD=@eR&O6wwzY!wJ~!BNxm?edkMNqI=={17?5m&oAz_y<54>wC2G(YvHF+5#w&cCCqPfScWfR^`VLYHr6 zCy`Y6f#NY1w4#9}+=CH&`BNriXh>2;VO7~PHs}PZs+wFbUp{le02P!kR|GmzURzg} z%kO6evC5ZM$t+50oD+_F*^TGQQC*h=yWMmxFt`0|&k4mCQuzs+(Uvv=z9!E~wHuAM z`QEMS_2-K^;|uE{FX{DNX9ZiI(d)qGd^EoorcC2`rG<*O6Ad}}tGky|!R0gRnYm7p zH@^tHohoX74Y0V9ufZmjaW6%O3Ava+gRzCVT@ZX}p@g8FoM zb5r!qtFJL|*XMhI;3gT>H=>d7_$g^R!aoi>uhsSpV(zrli4&eci*-Yb%g>}^n)Q1V z??D3!joux~U8M}y4Pf~kxx4WtM`x))eZRJ>o1eZ%Lo89ChjK$qWaKxLHBf?OLLs`S z#a8y3nT_qR9~oR?#ag0~Y`$iWM%Q;#sYG}Ls%~0*?~)nF}-ef2pwZT|UsqIlbVqenwrxS2dTU!lt`B(uqjA4KQ{JTwEv9+@Dl4)f(90EgJOi!L`Xx68Oesm@-T7SQ z0a|g>b>7pnAPr2|;>PoMgAr^(!u$@Nj5+$QIJ~sT!GQtc4 zq1!VnD_f#9Nma6zAbPl;CUt2sV|fV?S*v@vAwt)R^)l{U@GsFiPTz>_&~I|lr1vXGobIzp4o9T+X`&X!pEw5P0`me~ZX1@r&tF#CfBvjI zp8@TfaCahge;CvIh~U^38PI2uoTzw`LEDEuh`sjKVsWS|l(Y+gq~}PAPF=+I-}vfk zoktuuz0*&5UcG_?J-Vsel0fe2$9ALj&IZk$ElYA8Ig`~()tWiFF zc-4uVWc(STbh4zdWn9gqk#fjNcGS{9SL;*f(!1ewhvVeHR*Yg_8&zlZ5c7MkXYQ`d zsJYZAvP=dM1M{ltW$1m2&IEEw(Yh1o&KN}*N)r2h&jab1`+o;iAGAoxFbEqI#SRl{ znmXL}xG%OQ8jDi4FA+99BT?s+A+TD_p2Q4$;to)G7ieXUG&+45hq%Zc2g2M77z3St6Hm2y$38S7Y z&0=?R#s%}x#C%wF{-nb zKlz>a8nqr{jVaCx^9~zhSs{1~!tu4Wd9ihH9`;2H?#ku8)aAK1wZ;9RTP$yx#EGfJ zWxfvSh@S~cBU4*XV|JJu6?%se(bF_+%%o}3F(v}<#RbZhKZ?ODT~#Yx_INt>+u!wa zVkz`HsKcFZO&MlvcnwfdydkYM>`E%ZWtW_`>q_$vqgHzBFN{=#>SbEzcbHpS7T+SC z+6h{oi<_ucz9@F9`BFNB& z5=Nh{2aU}!NuucRxu39@i`SPosEVcR&(cJ{U=1q0RnVdEmY0ksSl2%lw$~zcIe}s^ zXjEgr%uy7q4AF(wQP${)`F(N2kJV44uNje*Qg|6qCRci+?6y#;8OwFy)Zbvm`BO(| zWd|k_51OhJx{nz0Cs#eMgPeUFf#exqaeO@WQv@xKe5RBDH{P_B{EeLch?W4=!3dG` z8JX}RK?`?K*i+jL{{qsrm2JmR`?I8Pt#M}99MdQ_lJM}O(P68zj zd)|H5ueeShFI(F(MLOhiL>wJ)cp4doQT5+{`RPnR->h1IJ2{kfIPDhect;%TbYyYr z$FmvV$-fNSe=SGz37zyq&#FSV*pQIpcce*1l^~W-$&ZP}#tEjR48!Ttw8xj8#M3V} zJR1<18Si~^MK0k*$=~G>V(FX;_-KkXe5GTO@3c zH~5$%NcdLw7DQ6{9}?Lgw#~j9BnJ`jy%544>h%|1c6m=xiZiCAEQ}o>&rGbZrB`jJ zkxj_IAfvX$#&wJSqEyF0wRFuu6-qcOaP&)QZzIC*<%I@B$SiaE^!!Vt0uK33_sz81 zDXq=kT6zJ_Y2x77eUCdyC-uYkrXhdIqBfkV2N;=!%=us6RCq0qOl4M9H_W|7Kfm)0 zdKn;2Yh1FL#7L(o%6Ke;lbTkWO5CYW2aOM$`rWXAc5n-~|@ z*SM%wMDE-b)OoS&rUWjouE7lVMCA{=QG1xFx0Q`=wF4Q1JdUT{sjJZajl5wVYZz~o z&#V)rOR3MrTHx^_s$fOLgSiWdiZ@dhiZz$FS8#Z zOA`foYG9=vEJb%*dX2s_m2GOmCt;-sO9+QV(Egz@w#hv5pH(fr zK*#^PYr#(#`4dgsO)HxB7ssXf`JO+43WJ0=V82IWWVgvaGb4wFUcgM62^mE~HZzEAJ~Hyt zOd~1ef|NtUf_|{h86j0-$`e2PxG1OZ0qSnn5%Un|*SFc%)(K;HN+Bd4U!n-|ZW?s#jiJ{<|CNA>D_Bd(xc!{niB%tHs*GFG^9n0tXK1(ug zG=44?0=FCQk)2I#)^ugy0-96GWqL@DY)vq8Y3<8L8Yt7ahz_n+fQ@XfdjHNO<~68a zRev(|QT>O%N(^D;-KI~rO80QdKWi$Ec3NpHuP{km`{qMU8Ga9zBmDS5p-hYJ<(;6s zJc{#D#1C2KEGYh~@QV*Z@CZEmyCJ=9-LR7cAEA&H0_s9Pk%&IB#%%C;d~^H z^nQ;kXPG-SJ5l#{CmPi{iq`(S-@}H7%Ki5XZGOaIUU&8OI#c)QVq9@PsyMo@_?hJz zJ%mXcyzY5P+QQmtE@>|ev#>V(Y3X>fu^+n(y^$YeaJ__&R`v(^tKSngakImqqoY43 z@%`_BK+bO|1;dT?n>xDK}z z)-diu@Er|X?{}vo)jp~i0`-t~HjX8qw>@tUm1H2tcHH|?_eHLPVjV004y&Zcj zL}zd5;~ujZ`~HUfIbkD8!emj)Xv&oCUi3n@m_$eE7`!TWjO+a~U+F~e8b6FnU+0u0 z%0%k3wl41tq(~Zi3Kf@pS>#IXHed3$Z%eNT9irfff?9qcVIS_-ALtAv^NNX!kG$|) zT>KRMF5CkiX`IeIZuL0ec*-kGrD6aZ#O5n>KLK(Bz^}Zg;x9Qgjs%VxqPz2_cp6VE~`ehT7 z@M1i(mT_5L%=C??oBlH;+%AG;I}Tt-G)oU^BO%}CBRV9UE?qN%SZ~P4qDirKbo-(i zXUi>aFD+kDQxmQ)lOx5Z2xJCyRhcjG^=h4@>-*b%1Su!vS)kPG|6NyP7;3w5U7V(Z zb_%#b75qpj9_4`~Q-IVTcKPAm-c^&t#b%P`0vfg%Ec0f8_H(|Wucdd~Ci6~MwMHWoz8&>l35Fyf<^MjRy#5>~eLL~YNcy3VLxkj4iV#2ev=ExaS&;B^%mab51H*;|P@ z9G`DGYdk)b-OGyz1N)}zFboT$;&KDJ?_>vf8a9||>FH5B>_%VIS~~mCLth*sDSklsq733~r;__+i!(B~As@7IW&o`8*adx1OQ8?mUTE4z1cK3do z`;vx(vrFg%3j_TNiKg2bNte#EXO!<2(X*1$^vI#ZP9_@7Rd>Oki{2RJ=Y3w#L+XX? zZX@+~9omyD`aCB2N4;Wvo`=?~Oj6TA1UBvT5={6jJF0W#vH`X0_sh2>L$98=-ji}# zJORTAa!jleP8dtBOTcCUw=a>EzQp!1y7GN6A^jgR02lL0TWYqTj{(jp(cNE_^P-U1 z_@OHOa;$%|lzJyoU*LL0>u6TUz0K5mUKN`uE6Gno~)dU2w-sbO4dXt|VnvE`v@ z)}JAQeh#O5fHNqVp08~zbUx5*Z*_exgu}@@ zrL`mXh5-1Tx%?11!P)!F%gqT(zda`wzI#WG<9s6m<@0fQT#A!J)duUOn6oqI%bGSJ zcr`ronR%Y88~5l{N$oq+X9$VZ&)y`iezqe%n6Jf#pp%MB6=_ta4n4koYQ)~|CtMIx zqWk^T)Hn)&CML zmW3j0(A7!-rFqvK+5rnmIZxwTtuu0sMx(qj%iU$`*!MaxZY-`;^X0fYXVI`k{IY(l zt6vg>mxtvc8q0+EAwAXekYC03xN{0s+j;LyuJ2#(-at)nK`V&qegKEF*zkoqJ+kGs zGBW!^4Hjf{)H17#2s*LoM>vaTKS&Jokd?Q5B?70e@Zv;Mm#S^zPSm#WORzRqwENNf zs^UA69rJidk9Qrp>C&@?gtnniAA`QAncN;(Vhr?g5VF(aVAd zZ)5N3kG3N41LA+O?#?yBlQOCY%#T`^>u*4HF+IBo z8QBoO9s!|{5jEhc=1@;hD_|_K+MDTi1_=rXJW*F~AN2Q!OAPgZKoFjxlN8YMJ!-lQ z)4>pG5W$PL3K=H6IbX5x%RZfk;FU4XdO^D{5`LeSBm4E~AKf;_{e~=P;wND{6(5J0 z!fG*d8RJM#E}jNg49o=_Pt84A&x?Qi2jIWT0idRerr7xi%^M~#GNevzVz=XrLtfBU z&&e0%=y%;9DR4N|&ma|3hqDkd^Ljg^#ZTOl^Z`&2Ibun;+5|BG7i@y{>o`ND}m z13pRRuC8FC6_-5Wobb+YBO138z$9P$v%2j$obkuOVITJP#GP=$K_RuG2IIRZ`s&zJ zN^5|Cc_hvz`PuqQ`P?2H+zl@={ax$TA9)Q-m8?pG8us1^^@OnAJfGDPLJL@QERQMg zFD4Bxukx%v%_tOX^SM%qG842F-E$W;alX{>;@ufyW0Rqi=ZstZZQ^pgpMU9jl93$4 zLb48pY6B{|>XiP`z}#E~C5NG28y`2dCm0HVoP~OMHl+*#ycmdIB z9-6#io?E}|pAnd~x}j!;(Y))tD{qE|mYo}mwykD388>F@xEeO!Oxmgb4mpBK12OcD zdRyXLc0WixiaXs}yuzrAEhJ(z!9%j*;zTTq2M&e}g1Vb@OCML9Fm+o>|zLRa8C7Ie)^<8BghSj|2|=Vne7G z?&HOWV-J_0J`|69C5-Fm0lC(1$KOe(`0>R$-<@r}+zfmz;azGb<5PCZNtiUNpn~Jz zgx0ww!PI_AFS6?O%6*qXqVsW>+RC(*@&b+DJUzE~c9(Dw-TK}NUB_M3%ghsV+Wj5z zOkO|T*-v=4+Np^FDfrHF0h0^8Q+{(e-%tWi?KY?Cx&_s@cK0dyWsyhd5-pLIx|Z^& z_Jvk&M<}VD-)jzp+OL__(@iOrTh!O{Q{=gnoQctm{;2LJk5XUYU50XDO)c8sFp&^G z9oluxnNIYvEm{=ApG8eJ+uS};T*HZAMO^Eo%SYo_+c8sh7L{&BujJ!jog>vKHFeKa z4ayg^9hj+8SD#;o5_*`qQmy(D7PSiFwYTPbdKDC%QEl`b$-U&v^-{M^9)D{!S`FG7 zi9C*2fbiiL5+VX#tw=?m_yVC`3YGxI-*v1|jpOq2lBTZ_dzR&AVq!rp6$J&>8$8hP zH_+2d1%!df<_*|BD^Meq-bNizAG`P&b7qyp8Rcs%wwVLnje$eo^gxpmd5#>t_rFCUs4WwT;>c@n#%t(nQ-@O1HB)AS3)rRZ75>#5TY zVWs&{uXz(ayhPO0y`mSi;o+@^N5?tUuUqJ38)AIGre0luuE{f?>FclTWiq^qH0mA} zOPjEsMr{=BZxN!*`c)y;@lCeg>tvkh=lUPKA35D6POn8xU5M^WcPS!cVEABAH$ORy z(x^vsVl~&wc07|MED9=a>v+m1cob_fVY+?B{X)+$y`<(jw3kCwsxVMBLlL z>&iT+?@2~p8SGW9BhBZNgM#belMDq6VulDBK0U+wgfC%egzV4V+zJyU(0n}?$UUFI zwIkE<@sX50bu6FNpf6GaeJZw{oM$huJmKC82*fnMTLQz#4_9+A(G3%pk5Tl>jp7|A zIl1R?wVR*D%EsK&vHirSOOY;>{<*lDZnL#CJ`j4NPyC&?7c!L1A7}-}U6c7rw~{$A z#tWOjItIx=6Q4}Jk-A3g8gau676CbJ+H58eacw8`WX^RyXS|rgv3D{MF z5rKVi`bXZ>qG{8J2^o^Ir$_rO z22@l*A*$+<>Ok_Kgfdz zd-ePitn9%|IRaLU;Qa5A10F*N*W>VAv(ZT#sE;ac-ykSQuV6gJaHf*>GaRV-oUZ~G z+c)dH!dwyYMI<85pSklZPN@Y|iE5frNhkIT2M3trV=WLPjnFX}u$cK+OB1)`7EnYg1;V>x)OApk<-D{G5zBK&pyz@Z* z-Y>j8_!1eCKk@mV3V7M5KbT|+{jSXt(PA)dQqY-r9j(d7$9H&fksYOUQp4b;uwKkV zsN*R5h|A(*3i6O?`T}eU%e0!}LW7vmR@+COPFvGqqpoEjq<0F_z8s&5P(5>qijp_F zsI9vp%h3|X{)FC$UYTRZ<-I%4!kLr~I;x$iH923Jl^>F=P1tZ<8ZaJiF1ZsqlLLah ztj!v>Stf{U^b%Y9LYF+T|H!NqS8MroKQZ?vJM65ziu*gz*o6S_ea@n2Li4&Rz% zChGXZ9rjZ*H!>!Bl}+%H!k7%7{- ze*Kc#Sb^`u3`<(NF1Nfq)K+yW#H8>^!>XMpZ`O@e-xof3Kd5XlX3Uue)U zu)y+ zdPDJ9Q87z}P%IH?W+Csuth!ip+TK`Sb{}v_Aq*vKQSGl4t)~*|LN^D51gdW_I5=1B zGIMfrCXSx=kHJQ-`oRT3&4CLWacKhk9JOO|u$GPnb!l|G)mxf?Ej9B-1?zPEa$@Te zU;o=EL!nOJ9}K38`R>FlVS zRSnFS?j%J`2Mf;vLa&_`ZZT$E@%OL3lGxl#@3s|dZ+cR4#%U;|1S9<2*ssNK->$Ta zDZA|c9q`+{hp{Yw^_J@65hgJ)s=fWaO65kX->Q&$NDp9+cpdeo$;ivUSSVDs_SoJY z)qUc(6XlJ7ZiL)6J*~`$D?rT(QFxCC)4McC*xk}1FmKhz7)(HRRQz#r|B))=XA&ux zG+k+oXIA%zY5>{Ooka@s-2qp4bJ~;e8d9Ar@*z}cvE$2X`B}0J<4PS(|$z9w4aH~ z$aEE`l(XtXO085QUjZ>7BH+U2is&EyxI*${3u#vc+Jcct(ny=t`Y-=^0W@zI&dd8- z;_-N`+#!(h^#{bGPsFCzSEZJHKqs72q6Ri!pkie*i~~)CAW_vB6e=xi3RY#@8b-UM>+)#oW#Ts8yXwQ zJ;PAPzzh09>-Xy<0(nOwC2-qrdDxj@G_J@GuB~+!36$f@F^4z9X;Nt23puXSx-opp zyJt3jDnl3mX%7%SJGLkCWi^YK+do*la=72S(DBDV{nlx$qfOb1-mAs(!Bk(i$ZW9} zCy`#Aacv>5M^Qe8E-?7|GcOybr31%3*MU>c<@TmD;Q}La7_4p4>=qCI-+8b{BQ|)L zMbWT5>VF#0Tdc5U5f5j3)~B;0pzPVE($!Xre4tvZ00=Z=fQ1 z@CO3UZ^x=b)J!O6)BHa}d&=NGUSVQmr_=JEZg!Tjm7PjclLdr2K_TE>MhXnXf;^I^u;vR!Xm5_(~!2kCk zK--~Qd<)=Db@}9+y|r*H`6RKgIPO#jEH&tWP>P1IHe?V#9QQHfvzy>Q%Joe#b7Y?- zm*B$yHloBk$Eg&;K!r}PBrmW}AFn_+t6pdy3eAL{k0vgace5Gf^gpKLc~CUI>5oK%Zau9yf8zS#h@wiVKS| zDGqHQQk7a{STcv69k@Rb0y&m>#FfJ@YovzrS>vR+CzH~!uZE34U!{Tohvn~)6cB<1 z(#Khy5Qcq=qe5~*3Aa&=EWdYcZ~W`?!9V+-qdz8DslY2mKZe+MDxn@U zyzTElEuL+5I#rfaiM~o5qU_b0BV7P8VAimXswJH+qhB=qub!bmi|>N+Au@%(rt&&b zm6!_K!}6;9x7N)TjpDL3uSPUnN$Z}-j%XvE74py2NG6wZ!jvN8zt#D1&YQy)1)Mfq z=?sDh0r53?QqPct9_w)$tLbtiOh4J32M8?hKX~Nbh77MY{u}P4r37wIdZiWl`T6S_ z%T^^Zw2pw1^Sk^SklSdOACaT*R?k~Wr1L<~h<^hjGC|TNQXf{BFh^-`xcyyisYx)y z!U)pViQnlj9T|l~44y7syORy(vD8a_F9o zTCH!y4u-$^O2fm`xV=B)efvA5#4-B^i{Z8;EYO>kh<8A05F!r>Kq4_4Zvg5lQfirG z6Psk}0to?jP3ZdiS0HD(958oFZ(JwBMhf$A#Q;HquhYNq)jvU^L=d*@q^7Lwi`uw$ zKl%>paH($BA@CsL$os70xU~jePWkoA6*<2uE`##$mS%DZ1B{Bzn6BH_P_VwS-k%U@ zffUi8EA2T-#z}j?HiWc)ezE%)!FaDrar#DCr82uU1X2C9cnq2!~LBlvSxqawde@Dy0Hyj zk81KcoaVLt-mDL>L|y~h{og>Be$-1}%-T)a%<_s4QEn6S@+9Tqd3gFUuVO)e$F?`9 zbX%Gb!Ei@wtz+_U?TP_onIbPI_f$qk#=+Tn?sFeeHLcF~i12VvAUovPT7S$#N=nx{ z@%8ofxHsv7RA+)-`y^ae?dyZwYYn$1e6a7B%7nBYPp3;}`72|roT8#mUsOU?_>7vL zI|ZC**F0&rl^a{tjYU8zfdou0P|aR&gmcVWcvGPhs4pV~Vqnzn?CeNf8DrLM(6Vw; z!HhKePU2A^hw%@&knCLOr)NmRe9=$|@ZM=|DIjM#to`EhB1dCWBrp8>rm;Tg_Zi2T zsAN#FT@mX64LkEa!u{<zn4kLhJ3wC@?miT4bWgM-62{q3RP8TzlDisWSPn3UMkrRhaV^*!mx&LW0kGT^DyamTo)?ofY zQ35+i7MWRR1+fu-%SZwY411EYSf=}m+}m#+ojRoF`wJ**0-Ik{K*!WT<*Rb(E@BKP zS(&ah?x(X?t@cpS%%j2gckh=5WCU=R^mx`a+|By6P$VjFVH}g&w}sS){n2*;`NBBx z9pI38Zj`Hgg{i&&^B8MJGYF%Z-B0xJ3i@HVaP|F?*UOdH{oJn~bK<9s7nM15lOLS0 zE`FpH;KmK;5yRFUdmmSuHbg;ab7EJCtK2Z?QRJd=eG4tm5Je<)+yOO1@3ut1J~tvH zNo_PdB?eVXUtL|p;xjGZV00v_)%)vb8QKdQcisK8>2T$O@dELVVq3yi$2jjn; zs}gM3V;?0Yx2<}*y^KG0Gm#x{bdp+D?4Cd@p)SU)|O5K+*)p@#=up(X*M6I^Y*B znaraSxEB^1n=@b7t}IVmFhuD%Nb5cn63%vymnjOWV_-!zB6dY?ot~3}n3i!5^u(YN zTzMw-lZ*U*)ci|*JeL9Lu=1@p+j?;axAqybx}|g_Lgtnnb2aWb%ywB|zM89qhP>O= zl-2P^3ll7+x*e*ZX?s}F&|P7XdlmThBT9sAGo?MtV1X|woRZD^iqEa@NN8!PS)q{I zT5Ed_lR~3>86v8|CfrIUGmApoE|J&OV_(L|(Ok|=wGec<;lhu|wPpSM{93|B#1T=C z&4wSMZ(4{3FyEl5E++PgwV`r5#pzu2k8{DjB5Q02is)9L;}6O`WI>vydc<+o>eF<8 zaU2;LzjQl%5JOW>AV84qyIQyl?jjLC>0Kk%J`#ve60U3FgkaXj1cy?B|z(x5a%z4;s(;}*I|b;Tgg&)lVR zrd`8HS%0Vh>jt=lFh80xr~``>RY`=I1!hGurrKZBWDJF z#o|KF^U^ZCe=pZJQm}`!UBUMM$!bPp*j zFW)KmL%)8siBKyjc~GClv2zs77{@89Y>*WRH9tDPIW}Dp_Shx&^>DcK*%} z7il%ei}WyEON@>a)!H$Dy-%_qTtFXmv-XEDXoQ0YA~eP0{|<`UMcpD%8~r|CfPK(- zyF9<1Bke|}!#)KFssTbKgZxh~nSYydTF%e#tNX z)mjJ&dBOPh47jhH0$1ckD(j+~ zK#6S>uJOnB?BtRGW`Q^g;4v@2Vp6LRc30`2(kdfk?z*mLm z#XA=S$y1?FjpnIKb-9Z_SI_%6O!9MguDR~OAJyz#JMw}k=%%rVTKuQ$+VM|B_xqVE zb0P`Rq8^r)1Ox$u<_(wtT5|voI7TYGGf-U7ukTTcKe2HX78P9s&V%U>PV}e=Jk66~ z&5GM0QTei;AO`G8tP}X?`ob%}R&8uv!TX2`X-ZMsXC8i=vkD0eMEF3dGoJtFi(|(- zI7xW=W?)!@@$#iVp!^s$Q@;{ihcDzK(E#xo|e4Pt*0 z%%HG<J-{>Wn6936OpZ%0iW;AAO z-IJ%$GQrcb%FE*(OwPvBQ#`nLDz4~n5L36y5$)A{@rkYB{=DM!~46p*4 z^)5EvP=ln7%e1L%_!?rkzBw^nzHkmdMs44VfBx(tVQ5YkLv-+OKWDEi;`7>*IL+u5 z@Tq_hJ>W4;cTC50rMcD0&|*M1Iws!g>DK5>wDVmB(}>VfJCn%&@%_O~C-f`f|uS(`4i*E?S_1){_!P$6vriq-Sj zy%2XdYf{M1x}u_}<4HkYEhNP6X`=7maZHo~e(hSiUYT`2yMmezKGu>s^dPVhg3PouJPL zxAs|Y%mlT=D2GAIBYEW?U_!-!d}<9F*DFlVw;=k$h{UAr!-!?ix&49iCP@}zLt_un zA666gcFlL(KG$1x*7J4hj#%`)?;Tb;moAzg8qcfGfTPD&$>}4K^soP8b=s6mGGUlV zeQ7EaWm=~pM~Xou;^tEFl161QIVk>e;W{a{XQkR*$dWDim_I2^&R(grW z2Uo4tgpH6MVZ^X(i6X((@f4X)QVGo&d`QKGZxT$i7rXoWgUXL3iVkYrvz&=%)8rD= zudc3A*Fd8By_)H_6j(?OkYf@ksAfn{C6)fDBUM>38-rb;V%iU+lEBiEI{3gP+%m>rMfhE^)y2A85lT^EN3cci;m7ir; z^#;}IeP;f1b2`8ZLL$aJ2ka&c!nvh@{%Ae622yrz{;t2>x?(EPHK`q5_J5y{ixLA9 z6M|?!FAxLJfke6+;n7crbe+46QfNkxR=R-G=kuO$lIG)A>vZJCDFFP$Y!C9YD=WkB z!59BL*g5;Qt*ve9xQ3{xpINZM)OJx3Q+sEp_?!tlSa$TEUS3hW)BKZS ztD_#ePh8y`03rk2a@nnX%C84Mi8QzJm1klR^!y(m9xx-U1g2;(s+pMBQj-0cEK4-Y ze>MbjE2oZOk&w(AVf514ZfxNqbZ4j4G(bx#Z4? zCJ$R!4N`WQNJOKLM4VsT?BEf)aUQmVO=fGKWB3)+=pIxb57Q`z4~blRCftuR){T>!=tdxhUUt8PWMpDiU^JJX%H&1V8XxFx_irR5G{Z(_XZHZg5_YPtziOm_yL>&Xg~$ z@RaAbo5Y(%te1I)m~t41=Y0knA!_}eO!dQx8T>DSb)ksqJ>1MIVCxXPzgz*fV8He1 zu=Bl{eZ67+H&`15@04vI*!-^~FzY1*?5~;Z_q!%IkuWPSGjNd<C}gh}azzP18Lt z_TRG`cjAAt9W{5bgYt5@>&$_?@5{#x=U(wK^1qt@s zPZ?>lU7oD6)QHiI9%tK+gJt@oLDwn_l1l}!FT{Ww@)Nj)hq69m(J5H8GSJYMYKF0; zg!=9BC&62muRkqWUY6|q5DsdpKwK=l=veo73t@O-ff3g=q-j@v{#gm!$?>uM<`6~0 z!~IPvvc#2jI!Fkco12f``fy_bfmp9AHt3FsnX*$G1o&BJy_LsgtOj;|qs}M-O;8zH zZGv{v79!h=3)_FhALLP*r!XmI{a7(8p!qt-o7&q2jT15y{d!{t$zZGg_!C8QEl+Qf6)%pY}+d#h>i%_7+94`bu*j4?d!yFCgFW zgTq{{BOL&x8@i=-k&u)3QoD1vUrW^VL5OwdoF38JjUxbYFCrzh+%Qtk2BY;VIruao zAwja$`>cQ_MpL3hznK); zqK~G}ynBt?4_Z8tlGSrAvo`ob9!@zYdwdiE?Ep~q&I@##QEe6FE%Si-rYTzuQ~D)Z4yQ4yHKHyI zNlTdE!LMJ|e&5poM_m%ilv$0vkn`h5Gy&&h*2YuJi4xt&va+&?-<@70st34|6eWh0&fo|aI z{LuZm$2fkfyL@wdK5N(IdC(Xd5rH(C;#MUA*Z#{3R6`oo6X1@yk|Bi>s4D|#Vl7Jd zz56b}j)GR0oQwx7?4clPMhC%cF^dlFOh=u9jyMqZy^7qSFvh{c3e3x+AJDEC4`w&6 zN8CKtsD>&9cw~S7n=Vlsbivi|8+QeEef`_u7KSO8jwPSNln^h%1u)p)ni}4C6`R#ma-HnsgER$GtI&iw1CyAE#C_d}Ed? zas%?1?~i(p)4S#7O4;K4fKIGWKgH@;Fij;ZHAmQ-Q3Cr4%<7QT(<5bIWPCI4y~NsU z8kd7flna!isUv}}^@}AflA`Kvnd#|=GLgYyXJAV4ckPKnTqJ>NNq~rr`|tf$h0tx} z?d0^mD(5*3%}Znt7JnTO4>vhrWK}F~tJ;meGX0c$bOwroVx@f_&faD? zR6GE6vcv8ayNy&6lV8M#Axz^f6V2&)en`mi1t>ac8<>}~WZgdhh5dAz5tj&E=rqiB7E z!RNQTHk?pd-Ro#jAIZM83Bh6guQtQW0;)B{uGZ6>e|84rQw$!)Ww|%E19IdV?&cu4 zd8Cle>knYV76L~dKSKnL`5615$JR>N?2b-eCk zNCc94(akeZaCfVLRPxvuNc0n$aZLuY_d@+X-{P!wfkPR@Jm!~ED*x?hPH4wIicJgq zk3hi@6EsaHvB`mB3utKAeSmSgo5h3{)7}gMq?T=f5B?pV$H5)kVWtjvW`q5+S~n$q z`pTjk8yl+k{5vlUnu##Lraqp35s>j_CfFqK@geNr^Ay@~hW=sJCgf8ne}4ZBEe5D? zfUwyrL$mfB4bXxKrCT==AXxuy(5k!zc-`SlRF;Mm7=}nT86du?QO8QwNNA>gdXyUv zJ-LppmG1ec;S5~=I}x^l^+-7;;9o@vxT#xPTk&~p(_j15G%+wU+xQwb#KY~T`_*{Q zmK#5bCKEx^y)xX;H9E2R2qa*-&{l67Y{yrvU?7<$0kS;xZBv^6_5ig(BnU{#I+P95 z{uuIiqy0X8B7>rEKo1=BZ&>NkA>lAMvEEiZorFYX=zF5MN6?kll2R= z?P{rkt7y^@m@)xm3;s=&H5Ajq1_S~2!>t~-TJd`r(2xOCB-ue?3lfx{E`*&)yi71; zWMr?>d7oAs%3bZ0we?5;2mn+iMsjxKe;0(`D71MR9a2|UM+jC_D%ll4kqKDxrCC0M zU`}y@UY4p`wiExUl#_ zo9%!4at5BzPu$4%++B zV|TAAwZT)!vQg~uB&CH`-g~Iq^$5o3Ng|?wO*7H-Ji0Sx+5z*4_U|~cOg*%cvxV?a(jBEv%fN~!R zO)5mqIKOrR?HYRu0Dh!E5^?aPali-QDQ&pbdXBZy9~PCQZzzH1S}v!x>Q9IWJ<>2? zN+PC5EXtVwEFd&7QS5On+E=2Qn)qmB!YJY6YI=J67~aNo(k0hDn zwFxpH5s)g?Ya}j+*+oIzglorC#`Xq5+&B}46p)00=-`fHL8heuYB`NaOLXRdkxFdN z9((GlcdQ3wgB>3**J$HcFaSgTrL*&oa|RX`m-OgzIzoRC73~ouu_qm^h2VFk;8P~c z$;y653r{zr{2wI%ly|_60VFU`1!Obp$4?jbCIr#f_#Dg~U?B(Bm>N>TNKuiOl$?sz zW7=zDdt(+xfrJGRk?hQs%ri1xw#2QKHr2Q+w!jRGv+6!`nP94X)yPr8(Rr+^wXDg( zhYJ%9OBc}x0C7dS^-0bC#1?KZuawo);FOzo4$#JgTsmODX}{zb*vsJlviNcGxG0s=&&+|}?9j?M~RmX!vtt7F`ECl!t0!p}PfbBSAk z^+0AVv=P++d2hT}r2Y7fhFY~fGHbl(H_$!J86B!L`g7Gu(XoN-C5lvt5b)W>Wo40s zZx1DIm(YFfPi-rG6(q?4J@1p(F(QbKDE3P_qe+lKFP|=_Wq*bc5F6eQJ+11(gd^6v zkBB5LU;c0b=0X?(V0P+RC=G8#{~*ObxgMyEZ_d~An5@9X8$Z1~>LLT<3G~Uq;Q@9i zHGrRRHDq66XqX+(oo@~YR!sYMPAJ!luZ8ABGu`}+=ds{`^y2HDi^p;}9n^!q{58!s z0Hlrb-`~F{_m9TJ@Eu&95XJV)KD=BZdywvslKOn?Qwbm;&xvGlO#GL?G3`x=#_sU6iS^TLW(5*HQ0n+7=w4w)VjVbO z5G?0nyzS} zWN;P?foVbev3=X=3V1-HCje!aKu{tV$7K}+ui!`hZgK{cW>N`b>^S?PWq7T$U3yf1 ze}8{wIkkb44-E#k6KSlu7BP^d-s>zXL26$cRscazr{%oOlVdRemdp-Z zhji8*xR)(N1b+W(-YKRf7h7sS8wZs068O8D$>w`_t(vSeslulmIqxxI-JW0H0;Dv3 zN$olz2n=SVcR#cJcjH&B?w-u8D$e$vq%;5iiUi&1!$Vg;y35lcR=398opbOAx{JGo_8JChG^MV@K zklJOpK(p8l;8(%;fWTVE4NC`WFjB;(X%G03lx4g9=nd@%78_^p=>()Ul3d* z27Z;5lG)!ogIY;S6n7C!CW`>*a0HNnfJ~U|5LA?h?r_Y*2C%^K-vMSB6xUi|xoU94 z(EJYVe+xh{Pk^ugoK4m`=NaVdsvVf7LGLTyy3F_Ay8+GPPo`tqm4PA76mx5HP(m>+vv>!#IN7^PEmT$rKg*)e~9${QrG7;zV%z zMDtg0kCkrsV*aSf2w#yxGdO6%Cgy*K@m7l_Z}>Zz?cwRUl-lIJ^nQGhUeDc7r4)+S z+-zw;9)nER*RwaVNpX?AsT1@fFOXLt=nJ1evge?C32A>}DW~{(KARA+Y@JIw9SR#7 zP5Jx`ZiJH~Hd9r5l0xxCyOUH*CgLXP0*Qk|dDtEyOzAmVjEYwRZhE_-oR65pxYn9f zUu6-YEvfD>%~!h47)8I(yKJ*QaJJSIYW}dqX?nQ#WZv(pUhs(oezDfBuCB*#`e^w$ zVGzsGGBVx+SIjcBOb6x;;qFig3eKgJmmRo(EixJXUQnR75q6ghi)bG;7Ur1iPkFh!1~O)f`XUoL~dnyLDK%+tvkRw*`dDx@x<``peaK zg2#vPnw49kSkF`VnQ`fSTbkzRhB&8)%*xo=)DeFXU;xch`@ZwS(wDA-j*B;yaq8Cg z!<%fjEp9rzHfZ~`YuYHgPp3+b^79#9uD9Ab45Zh;m$lnkk&Yr3!P75kz|z&8NcygZ zUm7ne&l^bebLrOIyGoNgO#N~Mu3Vm1qc`%&9g z*T0VG^lErlI<|e0PC+-#5^Z!wWNS$4g5E3Ho818S?K1uV8U)(pr{Ds83=q?5eon-! za%`|L;c}JEJFf+=H*;h|UIT}+?NE`h#b=YpHB8y6&~%Bx=k;$SuuqEp+L`{IX3+Z! z;(uO5UZq6M8sDM?QHM`E{3IeAOg3R%Dn%I)cz^u(?KuAG9Uo8S3Sp+<4bi5*MP zFW6f=UvFCsJ?~9f6d5EdAH$i&lCNk&jg9Okrxusb6Jegq9w|rr30KAu?<2;TY5YuM z3c}Nt%lb+j{Fd=3H2gx`)t;t0+nSz-vP^#^Iu>&ghF-NX2T?;y+hmu#I~zsxAf_cg#N>j0us z>zVI}=z@oj^gOm`>Y6#Q^l?YoA(%1iKssB5{_Y-3xpJ^|L3wsiMFHLgHy6IOEEV{l z_p!XEh~=ko^8Vw!$^q3p$#020%BKGwn}wK*`s#(tE?;{K%61#g%TCphq9>dM$a9f> z9%2*^tJ5U$HGQHw+ncdgc!)v_F{qc617y$yUiOatctv*+kb^V0nZjnN?u z`tlBXiNpzomQ^C8ov2CJi+VexMcnQO{j>h|>Qa$toPx(V9ujgIclUh#jV^?=>16tL zR}S}w${#tL1xZtG9{J2Q;C)jYJpSobt zx_W*j06)Ey9Yy+3>AmtmnNEU_CBGbrzI_ zTxS<_b(YrmVeQs(8s7HBRN?gr%*bR_!M!B#JlwOI-Nqpk>b!?q zkso-!nVD?x+t^Y0WZm5DVb-Q#sBmD)LEy$GUsAx?5d*xL z=gHPk6}kjszbxcj47@7g&Yl!)nJcTSVO+ePT62{+Egg7`HKS_hkcZ6P<6$yoU5NoB zf7_|Pf(n&{^$ki95wenf99~B*boJ*2hW`^DlhE4RekpHzS^fx?~c~oPn;&xf?xW;%+K#4#d`c5Eh2>D7eK8PV;D7eZ!;W4mU7k5hNNh#?TV& zqjF-8BWP7)-h16Vu3nct>G#=fGbMS5=T!$Pm$`~Ds{`7ZnyN1Bz0dgD!;HU& zJ-_7Q!*o6RWnRIl-D2~pj2+wv76Jrj>-h*=0_7$p5R5Mq3+sC3$S{ijBO_>|g<%oCv%(|zwjK1J_? zXOjn;b2Db}3VX8=Ck(YtSIqlnhevg2x~1raM^fp5sjs`gxxaC;+XxzXGOqK@vZnhe zBQ(y97cnK+=Bd)JlB*vN%2t)~Mo)1VyL*1-!_LO3D5r97dp<=KVXY=)6-4nF4vR(+ zpOu!{RbYAtUFPHqEkhUzfg_eUJ zdq0pGMn^|`5HkICtMZeq2&9x&IRUmva$#Y;jdOf13k=B^()XY#GAp*H_0kikX5>l( zGejH^ir}(CSjTI!k(FI z!@2i|#Ze`8)+2a&QU6ryez`8H{o74}#I&L9fy8C3?%5?=8B8(3A!t==W z@pY`w40(C4vfR};zwa(0Q-A$j^c~LJl}yx94>5b}N2oCg(WIC+EAco_PIQ{an7<ku=%Z(+MrA_!O_!-v%{zsKctUUEcI@`GS!`F%lVyENQlHgR5y z&t#kCEw`eJKtgujY7A_9I>U{7uhGxDpY=iZhP>*R67N7tVO2ak6+FFa3I(;fbOzoN z8Iuy)VFr3No;udE5eFxyk;Z%ywV3U?--4x%DZ4Ih;;W`~D`UUga3G&EJhDf8>z8tEMNd4HMf7cTU17HTZ~Hla zEkY}LV1(@#-9-ZyTG>+9dP4;ii{8u5i$0b6gmkf(?z~1 zUWeWQ9WtKbYl?Q?e79#ud}o5L|A=#Z*zMjM$f3aOJkV8Hy{cxP74KjnE|`NyJQzZs z=YR3pxeVAG^6nQq4kauK(Gbp7n#0GDkJSIZG*cwCEAs^o>~6j@mR3fH6Y}0G^p__&VxJ3J?fE9wgkwDMRpmLzfN_9f zv;z#2{uZAh_o&^VW+ZQ*a4+RRwdESFAk(+`W?x_&s{zHX;pp+N=84I4Tz#X_lLO%B zaKC@98YzFfVvNu8j*TDga zRuB_iVE(r7TxcBi_!nzaVyL*YDu1=0gYj(ukEFa*-bgikI;9Qz8m0Cu|E<=MEJt=)9b_on;`GXh=f)CnK zCtB*yFtTbI~^qM1t0ilBwwg^k3#0rpwS6MF_eqVjvo7t+kh99tdweabLzHx!raWAxj5 z-4B+QG<;edvFh`0v63Ze$BtufHErNzD`UOyA!zqrN0Fba@@-TT3$}jA5=ZG%*0O0u zQkkm^35@9K5>KSF=BkvB`8~ax&pS05@NH+!^w-z$@h7rPiSncsih4#xbNMqEBF~5c zI@2QeM=_ftUyz}-3NXr6a{(ic^xDSy?z7sKd4We1 zOT!kv-k#5&C$~Cr1QX_0a1K&!jXCTt_~OfKaGti0Mwk2!vmGZbw|PTFKZLw*`=eo^ z;D{cqfPZcb13j3>BKt$(Dn8=?5(!P@H+ z?(v3|@dm2>22-w*gIJ^*&sGhZg42r&|4=#hk-?0P&+`Ih+sVb!3Vmav_}Dn>RL`%N zeqW8+AVmHS^SsGlIhN9UUUBA`UsQu}1%JhB7iHMJZ^`#XOGb<(f&mk&7yZx$;rJ{l zzIR$>wxhKN2gY#z@bL1e+wnws^v(0Y(of(%wv4D+7R;s2=)BLEJ#14mCai6%wd_YeuowVMllTeM@|UPDlB<2BD*)VDz;NqAaW41}`svo7NiE z>08qG`)y<`BA?O%EEek2zvt3p?KHa+jq0Tae~)4U1i^q0krGQJW9g#`g9>#gKljjm z{mjV-qi}^oETyIZqqjZu!2{(;AiiuxGkhk7!8M$H^ee26+EC~8IJ^VT`wo(eSFIn@ zW&@4Ib|%c`BL4Zj{j4pEp;xmlowAFMq%;({RHw0`s=ttoi6Wh)mEuOirVFhlXE~7O zP@lE2!@t~qlDo~V8oAdevWz>0=qiFA-2nNK5g&Q|30X%sef<5gO5$b1quS||%e$Vt zsfKI0+ZyX4Reb?9aYW*| z@3ROs16l!29ADl#tc9ivg!T3f3MuC)hVDMepLU3D8^0EeTe6=FMZpFZaHBuin!wZ= zB;|(z9abQSpBj#P8KFSVvw<4W#mojx)58>XPE|kpm2-8>3@jS+VmfGJ= zIS}*RVSiQJhc$yKoQ^p76VR+7jcq4=U&H-GQz-~@hBY{i_t{2`+&GjWV|z_sGwax8 zb$xQ1`$u5l+gK{>$JL^4?s~KHW>R=$K`*X#;=Y=GC-fm+MerrlNSC`t6NvBg6(pS& zA`9=q8ZHQ~-adNAEFx9v#@qA^5^ZaLaxQKkbq(*6+hDHj@_G=*w}xmbmo7dq@W_d# zdGSr_uh}y~thmC1+%z)ns@f6z6N~omNTE_kV(Ef+!rY`i;z_A5nOOx0LeH5x^G{_g za4ncZ%bmP(MOTn{3zQYW#MTx-Y<2+jPcJZGHue_f9o837cxO;S@A{qnegTEsAqX_I z{s|+U6F+`L*m~;)Mu{wf8SP_Y+-Z5#jAH(ev11>Ftr{&}Rl_LnIcb1v>0Mi&^TH3k z8=U3MiQ=jF*nlxXXT&0Y%itFs*`A>;2sZo3c;7IEJiI1}6lp+XqaSzvvgV2?&?92H`H znbDm>x}xBFo$;q-?OehtucL0i!}YuE7#GbR5*;Id38YwDAqy(;w)=TjEWTJ0;+p$O zAj)~6^k;awph+&Z;ep-G;wnMVJx{xlXc|A7*09v_gEBO7eFWc6)l%=a?ohpy!{5?6 zj0H2v*XmGO@D<6&#B_a0{N2~o$Ww+Do-z4`hVLjsNIAsx+VV2k5dG2+GLxNUQojk^ z(EQAY$Hbb|qyieWy4LZ`ylF}Ay`I}7;{}r8$rEn2w&Ii&T*UcCZF4&13LZ#}q;O&9 z87>{y-^wNvy>y4CSMvXG{4&6h1Y>c>-|FMp_Hvbmr@ddHIWkJkip;KdIbrDFf%xl) z2p>^zU%9HK?;gK{TVo0-j_)Kf!AE%|f4UfmzWw`}h}*g)`(@;*MXaCSqwjVLnJ}@E z71fFJ>wuRDWHKIOU9X+nXt}vx$6Us?Kp_mpYVl`TqJhZLkAgN99-IFtBsspdnjT;d zq>pldY-y^DE-xB*bf{#T(I2X1)awlK^TQ1UwAp*l8O(9#k=%p|KpHAC2*(VB^K* zS-28tC_nba>F60?9#JLA`;3HBdL*-gkS;4NuD3KENS1;(NWpg$CPSfi!7w^UL3_Z} zKZ?8U$^Q709dD@dGrBXDHF0_=Z=M>ZmN|%!$7u_gP8esocT@ z5qwAu2GeL6M!&4BuY>QlRQxg3>+v_Wigyd*t{J5{b<1^io^5@zc=x|MkyT+S1?GcD z2mSFm&sm(pZNgdDVG_CDN81LMWXzCX7rP$a&wg5&+!as6%7wG?`5iu2Uc9ugQol1W z@_`cD(-q%)1@3Ay#gLOuU0lxaU^>o7}n%vm_Ubi#u|Z2KUzaaNNhL($pOV}QNiD5S7Y}>gN_;GSM`5deVzg$mVbE%hd~_P9 zJFMf3!4;mbmJqH84e!AjoWuZb*)LU5iOGFaX)g+ti$17tteNHcu=s7iQdyzoF@MMD zc*@1niQcm+-Ki9I^drQ}>Euu}OqSNV&W&KMGgc~FIlmsI{E~c zrV+&l%ID77J_>7yZ)s>JK1O=6uHG2x5UVS)+MUfWio?iZZ2oQ((DU4To>6oS+{j&E z1}%V3MF5A7_{C!B9Op2mY(K|GRdPl~xhK7uKG$!(VOc0C#p!IpM5}KKQI>-hM^o5f zra`7}adAig8$G@U+qs&j;Dc3@l(?M6WIhN9d))VavK)1Vbk1GS>)m_XB`EgphP?T7 zk6o?j&RO%=>BT|X_44Uf@ul;+OQLHIN`BXy~<6jR+;R_W=eQ60jlBfISQnS$^Bdu1R zUi_(8EMNA!kL|+jl-DLfl!bZTnUikk-BH}%_*KE5ao�yw=US5Z7MH;ziN6w~p{2 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 SGVB2Vl&-2@NtZW!`2PT<44@$Z literal 126734 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%0D*P>lPgwO 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 diff --git a/assets/img/04_01_c.png b/assets/img/04_01_c.png index f989d694390551eb9ece831b0c29b4bd4f4f30ef..7ce442d25c059e7f0c8101cb9b2a45371f0a4530 100644 GIT binary patch literal 117368 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 z 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 literal 140662 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 z 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
)@%^YC+E4$Y^r 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

Ni(BTWw-pPnB~9)aFE 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 tpFhLFXJ$-?MagCS|HWaReIOJ|36J}mvI09 literal 184994 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�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

~PDJ+b5xyl;dzf(}#FcI2~T@-RhY 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 Date: Tue, 18 Sep 2018 12:21:17 -0400 Subject: [PATCH 07/47] hid solutions for future problem sets --- chapters/04-patterns-of-inference.md | 2 +- solutions/04.1-agents-as-programs.md | 424 ---------------- solutions/05-observing-sequences.md | 346 ------------- solutions/05.1-sequential-decisions.md | 407 --------------- solutions/06-inference-about-inference.md | 410 --------------- solutions/07-inference-process.md | 471 ------------------ .../08-learning-as-conditional-inference.md | 440 ---------------- solutions/09-hierarchical-models.md | 211 -------- solutions/14-bayesian-data-analysis.md | 373 -------------- 9 files changed, 1 insertion(+), 3083 deletions(-) delete mode 100644 solutions/04.1-agents-as-programs.md delete mode 100644 solutions/05-observing-sequences.md delete mode 100644 solutions/05.1-sequential-decisions.md delete mode 100644 solutions/06-inference-about-inference.md delete mode 100644 solutions/07-inference-process.md delete mode 100644 solutions/08-learning-as-conditional-inference.md delete mode 100644 solutions/09-hierarchical-models.md delete mode 100644 solutions/14-bayesian-data-analysis.md diff --git a/chapters/04-patterns-of-inference.md b/chapters/04-patterns-of-inference.md index 25ea4b9..0a01802 100644 --- a/chapters/04-patterns-of-inference.md +++ b/chapters/04-patterns-of-inference.md @@ -250,7 +250,7 @@ If the same variable gets reused within a model (e.g., because of a memoized fun ![A Bayes net with plate notation.](../assets/img/plate_notation.png) -In this simple model, `cough` depends on `cold` which depends on some prior $\alpha$. However, the value of `cough` and `cold` is determined independently for each patient `s`, which is what we want. +In this simple model, `cough` depends on `cold` which depends on some prior $$\alpha$$. However, the value of `cough` and `cold` is determined independently for each patient `s`, which is what we want. # From *A Priori* Dependence to Conditional Dependence diff --git a/solutions/04.1-agents-as-programs.md b/solutions/04.1-agents-as-programs.md deleted file mode 100644 index 7d69e7f..0000000 --- a/solutions/04.1-agents-as-programs.md +++ /dev/null @@ -1,424 +0,0 @@ ---- -layout: exercise -title: Agents as Probabilistic Programs - exercises -custom_js: -- assets/js/box2d.js -- assets/js/physics.js ---- - -## Exercise 1: Factors - -### a) - -*Take our standard coin-flipping model. Use `factor` to create a "soft" condition on the outcome being heads, such that there is an approx. 95% chance of heads.* - -```js -var dist = Infer({method: 'enumerate'}, - function () { - var A = flip() - factor(A*3) //edit this line - return A -}); -viz(dist) -``` - -![](Figures/agents-as-programs-1.png) - -This is actually quite close to 95%: - -`{"probs":[0.04742587317756678,0.9525741268224333],"support":[false,true]}` - - -### b) - -In this model, we flip 3 coins. Use `factor` to favor an outcome of 2 heads and 1 tails: - -```js -var softHeads = Infer({}, function() { - var a = flip(0.5); - var b = flip(0.5); - var c = flip(0.5); - factor(1*((a+b+c)==2)); - return a; - } -}); - -viz(softHeads); -``` - -![](Figures/agents-as-programs-2.png) - -## Exercise 2: The Ultimatum Game - -### a) - -*The ultimatum game requires two players: A proposer and a responder. The proposer has to decide how to allocate \$10 between the two players in \$1 increments. Once this proposal is made, the responder decides whether to accept the proposal. If the responder accepts, both players are awarded the money according to the proposal. If the responder rejects, neither player gets anything.* - -*If the responder was a strict utilitarian, s/he would accept any offer of \$1 or more. Assume the proposer is a soft maximizer who wants to keep as much of the \$10 as possible. Complete the code below to find out how much the proposer will offer:* - -~~~~ -var responder = function(offer) { - - return (offer>0 ? true : false); - -} - -var proposer = Infer({method: "enumerate"}, function(){ - - var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward = responder(offer) ? (10 - offer) : 0; - - factor(reward) - return(offer) - }) - -viz(proposer); -~~~~ - -![](Figures/agents-as-programs-3.png) - -### b) - -*People, it turns out, act very differently than the model above suggests. Responders will often reject low offers as "unfair", even though this means they get nothing. Assume that the responder decides whether to accept in proportion to the percentage of the \$10 allocated to her, raised to some power `alpha` (you can think of `alpha` as "spitefulness"). Complete the code below to determine how much the proposer should offer:* - -```js -var alpha = 2 - -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer = Infer({method: "enumerate"}, function(){ - var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward = responder(offer,alpha) ? (10 - offer) : 0; - factor(reward) - return(offer) - }) - -viz(proposer); -``` - -![](Figures/agents-as-programs-4.png) - -### c) - -*You can think of the variable `alpha` in the code above as encoding spitefulness: the degree to which the responder is willing to forego a reward in order to prevent the proposer from having a reward. See how setting `alpha` to 4, 6, 10, 25, and 50 affects what the proposer does. Explain the results.* - -~![](Figures/agents-as-programs-5-1.png) -~![](Figures/agents-as-programs-5-2.png) -~![](Figures/agents-as-programs-5-3.png) -~![](Figures/agents-as-programs-5-4.png) -~![](Figures/agents-as-programs-5-5.png) - -As alpha increases, the responder becomes increasingly unlikely to accept any offer less than \$10. Thus, no matter what the proposer offers, she'll probably end up with \$0. This makes her indifferent to the choice. - -### d) - -*The models above assume the proposer knows the responder's decision function. Let's soften that assumption: the proposer knows that the responder's value of `alpha` is somewhere on the range [0.5, 5]. Suppose the proposer offered \$2 and the responder rejects it. What is the most likely level of `alpha`?* - -(Hint: you may find it helpful to find a different place for `alpha` than within the definition of `responder`.) - -```js -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer = Infer({method: "MCMC", samples:50000}, function(){ - var alpha = uniform(0.5,5) - var offer = 2; - var reward = responder(offer, alpha) ? (10 - offer) : 0; - condition(reward==0) - return(alpha) -}) - -viz(proposer) -``` - -![](Figures/agents-as-programs-6.png) - - -### e) - -*Again, suppose the proposer offered \$2 and the responder rejected it. Suppose they are going to play a second round. How much should the proposer offer? How does this change if the first (rejected) offer was \$8?* - -Here is a straight-forward if not especially computationally-efficient model: - -```js -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer1 = Infer({method: "MCMC", samples:50000}, function(){ - var alpha = uniform(0.5,5) - var offer1 = 2 - var reward1 = responder(offer1, alpha) ? (10 - offer1): 0; - condition(reward1==0) - return(alpha) -}) - -var makeoffer = Infer({method: "forward", samples:1000}, function(){ - - var alpha2 = sample(proposer1) - - var proposer2 = Infer({method: "MCMC", samples:5000}, function(){ - var offer2 = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward2 = responder(offer2, alpha2) ? (10 - offer2) : 0 - factor(reward2) - return(offer2) - }) - - return sample(proposer2) -}); - -viz(makeoffer) -``` - -With offer1 = 2: - -![](Figures/agents-as-programs-7-1.png) - -With offer1 = 8: - -![](Figures/agents-as-programs-7-2.png) - -The differences are underwhelming. The reason is `factor(reward2)` actually puts a lot of pressure on the proposer getting a large payout. If we change `factor(reward2)` to `factor(Math.pow(reward2,1))`, we get more impressive differences. - -With offer1 = 2: - -![](Figures/agents-as-programs-7-3.png) - -With offer1 = 8: - -![](Figures/agents-as-programs-7-4.png) - -## Exercise 3: The Prisoner's Dilemma - -*In the prisoner's dilemma, two thieves work together on a bank heist. Afterwards, they are apprehended by the police. The police interrogate the thieves separately. They tell each thief that if she confesses, she will get a lenient sentence. If not, she will get 10 years. However, the thieves know that the police need at least one of them to confess; if neither of them confesses, the police don't have enough evidence to charge them, and they will both go free.* - -*What's the longest the lenient sentence can be (in round years) such that it makes sense for the thief to confess (that is, where she has a greater than 50% chance of confessing)? Use `factor(percentYearsFreedom)` where `percentYearsFreedom` is the percentage of the next 10 years the thief will not be in jail. (Assume that this incident has scared her straight and she will not commit any other crimes.)* - -```js -var thiefRats = function(){ - return (flip()? true: false) -} - -var lenient = 6 - -var thief = Infer({}, function(){ - var otherThiefRats = thiefRats(); - var IRat = thiefRats(); - var years = (otherThiefRats? - (IRat? lenient : 10) : - (IRat? lenient : 0)); - var percentYearsFreedom = (10-years)/10 - factor(percentYearsFreedom) - return(IRat) -}) - -viz(thief) -``` - -From trial-and-error, if the lenient sentence is 6 years, the thief should be indifferent. - -![](Figures/agents-as-programs-11.png) - -Alternatively, you can infer the correct answer as follows: - -```js -var sentences = RandomInteger({n:10}) - -var thiefRats = function(){ - return (flip()? true: false) -} - -var thief = Infer({}, function(){ - var LenientSentence = sample(sentences); - var iRat = thiefRats() - var uRat = thiefRats() - var percentYearsFreedom = 1 - (iRat ? LenientSentence/10 : (uRat ? LenientSentence/10 : 0)) - factor (1*(percentYearsFreedom > .5)) - return LenientSentence -}) - -viz(thief) -``` - -![](Figures/agents-as-programs-12.png) - -As you can see, we end up prefering lenient sentences no longer than 4 years. - -## Exercise 4: Exploring RSA - -For this exercise, modify the RSA model introduced in the main text as necessary. - -### a) - -*How does increasing the optimality of the speaker affect the pragmatic listener's inferences? Try a couple values and report the results.* - -For convenience, we turn `alpha` into a parameter: - -```js -// Here is the code from the Frank and Goodman RSA model - -// possible objects of reference -var meaningPrior = function() { - uniformDraw([ - {shape: "square", color: "blue"}, - {shape: "circle", color: "blue"}, - {shape: "square", color: "green"} - ]) -} - -// possible one-word utterances -var utterances = ["blue","green","square","circle"] - -// meaning function to interpret the utterances -var meaning = function(utterance, obj){ - (utterance === "blue" || utterance === "green") ? utterance === obj.color : - (utterance === "circle" || utterance === "square") ? utterance === obj.shape : - true -} - -// literal listener -var literalListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior(); - condition(meaning(utterance, obj)) - return obj - }}) -} - -// pragmatic speaker -var speaker = function(obj,alpha){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * literalListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener -var pragmaticListener = function(utterance,alpha){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker(obj,alpha),utterance) - return obj - }}) -} - - -print("pragmatic listener's interpretation of 'blue', given alpha = 0.01:") -viz.table(pragmaticListener("blue", 0.01)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 1:") -viz.table(pragmaticListener("blue", 1)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 4:") -viz.table(pragmaticListener("blue", 4)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 10:") -viz.table(pragmaticListener("blue", 10)) -``` - -![](Figures/agents-as-programs-8.png) - -As `alpha` increases, the pragmatic listener is increasingly likely to interpret `blue` as referring to the blue square. - -### b) - -*How do the inferences of $$L_{2}$$ compare to those of $$L_{1}$$?* - -```js -// Here is the code from the Frank and Goodman RSA model - -// possible objects of reference -var meaningPrior = function() { - uniformDraw([ - {shape: "square", color: "blue"}, - {shape: "circle", color: "blue"}, - {shape: "square", color: "green"} - ]) -} - -// possible one-word utterances -var utterances = ["blue","green","square","circle"] - -// meaning function to interpret the utterances -var meaning = function(utterance, obj){ - (utterance === "blue" || utterance === "green") ? utterance === obj.color : - (utterance === "circle" || utterance === "square") ? utterance === obj.shape : - true -} - -var alpha = 1 - -// literal listener -var literalListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior(); - condition(meaning(utterance, obj)) - return obj - }}) -} - -// pragmatic speaker -var speaker = function(obj){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * literalListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener -var pragmaticListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker(obj),utterance) - return obj - }}) -} - -// pragmatic speaker2 -var speaker2 = function(obj){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * pragmaticListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener #2 -var listener3 = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker2(obj),utterance) - return obj - }}) -} - -print("L1's interpretation of 'blue'") -viz.table(pragmaticListener("blue")) - -print("L2's interpretation of 'blue'") -viz.table(listener3("blue")) -``` - -![](Figures/agents-as-programs-9.png) - -There is little additional effect. - -### c) - -*Add a blue circle to the scenario. What happens to the interpretion of "blue"? Why?* - -It becomes 50/50 between 'blue circle' and 'blue square'. This is because 'blue' is now useful for distinguishing between the two circles as well. - -### d) - -*Is there any way to get “blue” to refer to something green? Why or why not?* - -In this model, the literal listener expects the speaker to tell the literal truth, albeit with some noise. So there is no way to prefer an interpretation that is literally false to one that is literally true. So we'd need to relax the assumption that the literal listener expects the speaker to always tell the truth. \ No newline at end of file diff --git a/solutions/05-observing-sequences.md b/solutions/05-observing-sequences.md deleted file mode 100644 index 1c3c377..0000000 --- a/solutions/05-observing-sequences.md +++ /dev/null @@ -1,346 +0,0 @@ ---- -layout: exercise -title: Observing sequences - exercises ---- - - -## Exercise 1: What word comes next? - -a) *In human languages, certain words are more likely to follow others. "The" is more likely to be followed by "dog" than "rhino", and even less likely to be followed by "sings". * - -*Let's consider a fragment of English consisting of only the words "dogs", "cats", "chase", and "sleep". This fragment does not contain punctuation or capital letters. Now, suppose that somebody says, "dogs chase cats". Determine how likely "chase" is to be followed by each word in the vocabulary.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - - let obs = ['dogs', 'chase', 'cats']; - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return []; - return [word].concat(generateSentence(word, sentence)); - } - - condition(comparray(obs, generateSentence('start'))) - - return transition('chase'); - -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-1.png) - -b) *Assume now that in addition to saying "dogs chase cats", your interlocutor said a second sentence. However, you only heard the first word, which again was "dogs". What is the distribution across likely second words in this sentence? NOTE: If you are not careful, you will end up assigning some probability to "undefined". Be careful.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - condition(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - condition(newSentence[0] == 'dogs'); - return newSentence[1]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-2.png) - -c) *Suppose again that somebody said "dogs chase cats". Now suppose they spoke another sentence, where again the second word was "chase". Show that the most likely first word was "dogs". * - -```js -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - condition(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - condition(newSentence[1] == 'chase'); - return newSentence[0]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-3.png) - -## Exercise 2: Hidden Markov Model - -a) *Return to the model from Exercise 1b. Suppose that the second sentence, instead of beginning with "dogs", began with "cats". Provide the marginal distribution on the second word of that sentence.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - condition(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - condition(newSentence[0] == 'cats'); - return newSentence[1]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-4.png) - -b) *In Exercise 2a, you should have found that an ungrammatical sequence like "cats cats" is as likely as a grammatical sequence like "cats sleep". Why is this?* - -The model hasn't observed anything other than 'stop' as following the word 'cats'. This implies that 'stop' is the most likely option, but also that the algorithm is totally indifferent towards all the other words -- since this is a language without grammar, all words are treated the same (they literally coexist as entries in a single list). - -c) *Let's try a hidden Markov model instead. Note that two of the words in our fragment of English are nouns ("dogs", "cats") and two are verbs ("chase", "sleep").* - -*Model sentence generation as involving Markov transitions between parts of speech, rather than between the words themselves. * - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dogs','cats']) : - (pos=="V") ? uniformDraw(['chase','sleep']) : - 'stop' -} -var POS = ["N", "V", "stop"] - -var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - -var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - -let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); -} - -var sentence = generateSentence("start"); -print(sentence) -``` - -d) *Try Exercise 2a, but using our new hidden Markov model. Show that we are now more likely to get the grammatical phrases "cats chase" or "cats sleep" than "cats cats" or "cats dogs".* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dogs','cats']) : - (pos=="V") ? uniformDraw(['chase','sleep']) : - 'stop' -} -var POS = ["N", "V", "stop"] - -var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: false}, function() { - var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - - var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - - let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); - } - let obs = ['dogs', 'chase', 'cats', 'stop']; - condition(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - condition(newSentence[0] == 'cats'); - return newSentence[1]; -}) - -viz(hmm) -``` - -![](Figures/sequences-of-observations-5.png) - -## Exercise 3: Phrase structure grammars - -a) *Extend your hidden Markov model from Exercise 2 so that our fragment of English additionally includes the determiners "the" and "a" as well as the adverb "diligently". Make "dogs", "cats", "chase", and "sleep" singular ("dog", "cat", "chases", "sleeps"). Condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* - -*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. - - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dog','cat']) : - (pos=="V") ? uniformDraw(['chases','sleeps']) : - (pos=="D") ? uniformDraw(['the','a']) : - (pos=="A") ? 'dilligently' : - 'stop' -} -var POS = ["N", "V", "D", "A", "stop"] - -var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: true}, function() { - var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - - var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - - let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); - } - let obs = ['the', 'dog', 'chases', 'a', 'cat', 'stop']; - - factor(comparray(obs, generateSentence('start'))*5) - - var sent1 = generateSentence('start'); - var sent2 = generateSentence('start'); - var sent3 = generateSentence('start'); - var sent4 = generateSentence('start'); - var sent5 = generateSentence('start'); - - return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} -}) - -print(hmm) -``` - -NOTE: This may take several tries to get it to run. Using `factor` instead of `condition` will work much better. We return to this in [Algorithms for Inference](07-inference-process.md). - -b) *Let us consider a phrase structure grammar for our English fragment instead, modeled on the one in Chapter 5. Again, condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* - -*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; - -var D = function() {return uniformDraw(['the', 'a'])}; -var N = function() {return uniformDraw(['cat', 'dog'])}; -var V = function() {return uniformDraw(['chases', 'sleeps'])} -var A = function() {return uniformDraw(['diligently'])} -var AP = function() {return uniformDraw([A()])} -var NP = function() {return [D(), N()]} -var VP = function() {return uniformDraw([[V(), AP()], - [V(), NP()]])} -var S = function() {return [NP(), VP()]} - -var psg = Infer({method:'MCMC', burn:10000, samples: 1000, onlyMAP: true}, function() { - let obs = [['the', 'dog'], ['chases', ['a', 'cat']]] - condition(comparray(obs, S())) - - - var sent1 = S(); - var sent2 = S(); - var sent3 = S(); - var sent4 = S(); - var sent5 = S(); - - return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} -}) - -print(psg) -``` - -c) *Which model produced better English sentences, the hidden Markov model in Exercise 3a or the phrase structure grammar model in Exercise 3b? Why do you suppose that is?* - -The phrase structure grammar produces much more sensible sentences, because it has a lot of prior knowlege about sentence structure. For instance, it is not capable of producing sentences with two articles in a row. - diff --git a/solutions/05.1-sequential-decisions.md b/solutions/05.1-sequential-decisions.md deleted file mode 100644 index 9df0e00..0000000 --- a/solutions/05.1-sequential-decisions.md +++ /dev/null @@ -1,407 +0,0 @@ ---- -layout: exercise -title: "Sequential decisions" -description: "Markov Decision Processes and Partially-Observable Markof Decision Processes" ---- - -## Exercise 1 - -Consider our "line-world" example from the chapter: - -'''js -var ___ = ' '; -var D = { name: 'Donut' }; - -var grid = [ - ['___', '___', '___', '___', D] -]; - -var mdp = makeGridWorldMDP({ grid, start: [0, 0] }); - -var transition = function(state, action) { - return state + action; -}; - -var utility = function(state) { - if (state === 4) { - return 1; - } else { - return 0; - } -}; - -var makeAgent = function() { - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-1, 0, 1]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; - - var expectedUtility = function(state, action, timeLeft) { - var u = utility(state, action); - var newTimeLeft = timeLeft - 1; - if (newTimeLeft === 0) { - return u; - } else { - return u + expectation(Infer({ model() { - var nextState = transition(state, action); - var nextAction = sample(act(nextState, newTimeLeft)); - return expectedUtility(nextState, nextAction, newTimeLeft); - }})); - } - }; - - return { act }; -} - - -var act = makeAgent().act; - -var simulate = function(state, timeLeft){ - if (timeLeft === 0){ - return []; - } else { - var action = sample(act(state, timeLeft)); - var nextState = transition(state, action); - return [state].concat(simulate(nextState, timeLeft - 1)) - } -}; - -var startState = 0; -var totalTime = 5; -viz.gridworld(mdp.world, { trajectory : [mdp.startState] }); -print("Agent's trajectory: " + simulate(startState, totalTime)); -''' - -### a) -*Change the world such that it is a loop, i.e. moving right from state `4` moves to state `0`, and moving left from state `0` moves to state `4`. How does this change the agent's sequence of actions?* - -Edit `transition()` to: - -```js -var transition = function(state, action) { - var nextstate = state + action - return (nextstate < 0) ? 4 : - (nextstate > 4) ? 0 : - nextstate; -}; -``` - -Agent now moves left to arrive at Donut shopt in a single move. - -![](Figures/sequential-decisions-1.PNG) - - -### b) -*Change the agent's action space such that the agent can also move two steps at a time. How does this change the agent's sequence of actions?* - -Edit `act()` as follows: - -```js - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-2, -1, 0, 1, 2]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; -``` - -Agent now only requires two moves to reach donut shop. - -![](Figures/sequential-decisions-2.PNG) - -### c) -*Change the agent's utility function such that the agent moves as far as possible to the right, given its available total time.* - -Edit `utility()` as follows: - -```js -var utility = function(state) { - return state; -}; -``` - -Agent now moves right on every time step. This is easiest to see if we increase the total amount of time (e.g., `var totalTime = 7`): - -![](Figures/sequential-decisions-3.PNG) - -## Exercise 2 - -*Consider this "line-world" involving a cookie shop and a donut shop. Bob starts out in between the donut shop and the cookie shop. Assume you observe Bob go to the donut shop in 3 time steps. Edit the code above to write a model to *infer* Bob's utility function for cookies and donuts. Use any reasonable prior.* - -~~~~ -// Anything that doesn't involve random choices can be put outside of the model - -var ___ = ' '; -var D = { name: 'Donut' }; -var C = { name: 'Cookie' }; - - var grid = [ - [C, '___', '___', '___', '___', '___', D] - ]; - -var mdp = makeGridWorldMDP({ grid, start: [3, 0] }); - -var transition = function(state, action) { - return state + action; - }; - -var model = function() { - - let utilities = [sample(Uniform({a: 0, b: 10})), sample(Uniform({a: 0, b: 10}))] - var utility = function(state) { - return (state == 0) ? utilities[0] : - (state == 6) ? utilities[1] : - 0; - }; - - var makeAgent = function() { - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-1, 0, 1]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; - - var expectedUtility = function(state, action, timeLeft) { - var u = utility(state, action); - var newTimeLeft = timeLeft - 1; - if (newTimeLeft === 0) { - return u; - } else { - return u + expectation(Infer({ model() { - var nextState = transition(state, action); - var nextAction = sample(act(nextState, newTimeLeft)); - return expectedUtility(nextState, nextAction, newTimeLeft); - }})); - } - }; - - return { act }; - } - - var act = makeAgent().act; - - var simulate = function(state, timeLeft){ - if (timeLeft === 0){ - return []; - } else { - var action = sample(act(state, timeLeft)); - var nextState = transition(state, action); - return [state].concat(simulate(nextState, timeLeft - 1)) - } - }; - - var startState = 3; - var totalTime = 4; - let path = simulate(startState, totalTime); - condition(path[3] == 6); - return { - Cookie: utilities[0], - Donut: utilities[1] - } - } - -var post = Infer({method: 'MCMC', samples: 10000}, model) -viz(post); -~~~~ - -![](Figures/sequential-decisions-4.PNG) - -Rejection sampling also works pretty well. This is with only 1,000 samples: - -![](Figures/sequential-decisions-5.PNG) - -Either way, we infer that the utility for Donut is likely to be at least slightly higher than that of Cookie. - - -## Exercise 3 - -*Use the codebox below to explore different levels of softmax noise. Find a setting of `utilityTable` and `alpha` such that the agent goes to West and East equally often and nearly always takes the most direct route to both East and West. Included below is code for simulating many trajectories and returning the trajectory length. You may find it helpful to extend this code to measure whether the route taken by the agent is direct or not.* - -The following code is useful for iteratively adjusting the parameters until the desired result is found. - -```js -///fold: -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; -viz.gridworld(world) -/// - - -var utilityTable = { - East: 10, - West: 5.91, - Hill: -10, - timeCost: -1 -} - -var alpha = 5; // <- SOFTMAX NOISE - -// Create parameterized agent -var utility = makeUtilityFunction(utilityTable); -var agent = makeMDPAgent({ utility, alpha }, world); - -var trajectories = Infer({model() { - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - return {locs} - }, - method: 'forward', - samples: 100000 -}); -viz.table(trajectories) -``` - -Note that the parameters given provide a nice result: - - - - -So we can definitely pick some values by trial and error. But that's boring. Let's infer it instead. The utility of West has to be less than the utility of East, or we'd never go to east. So let's fix the utility of East at 10 and find a value for West that is smaller. We'll also pick an alpha. Let's constrain it to between 0.1 and 6.0, just so we don't have too large of a space to search. - -Now, we'll factor an equal number of times on having gone straight to West and having gone straight to East. - -```js -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; - -viz.gridworld(world) -var vals = Infer({ - model() { - var West = uniform({a: 1, b: 10}) - var utilityTable = { - East: 10, - West: West, - Hill: -10, - timeCost: -.1 - } - - // Create parameterized agent - var utility = makeUtilityFunction(utilityTable); - var alpha = uniform(0.1, 5); // <- SOFTMAX NOISE - var agent = makeMDPAgent({ utility, alpha }, world); - repeat(10, function(){ - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - factor(1*(locs == [[0,1],[1,1],[2,1],[2,2]])) - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - factor(1*(locs == [[0,1],[1,1],[2,1],[3,1],[4,1],[4,2]])) - }) - return {West: West, alpha: alpha} - }, - method: 'MCMC', - samples: 5000 -}); -repeat(10,function(){print(sample(vals))}) -``` - -![](Figures/sequential-decisions-6.PNG) - -We can see that a value of West near 9.0 and alpha near 0.4 tends to work. Let's confirm this through forward simulation - -```js -///fold: -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; -viz.gridworld(world) -/// - - -var utilityTable = { - East: 10, - West: 3, - Hill: -10, - timeCost: -.1 -} - -var alpha = 0.4; // <- SOFTMAX NOISE - -// Create parameterized agent -var utility = makeUtilityFunction(utilityTable); -var agent = makeMDPAgent({ utility, alpha }, world); - -var trajectories = Infer({model() { - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - return {locs} - }, - method: 'forward', - samples: 10000 -}); -viz.table(trajectories) -``` \ No newline at end of file diff --git a/solutions/06-inference-about-inference.md b/solutions/06-inference-about-inference.md deleted file mode 100644 index 0a726a6..0000000 --- a/solutions/06-inference-about-inference.md +++ /dev/null @@ -1,410 +0,0 @@ ---- -layout: exercise -title: Inference about inference - exercises ---- - -## Exercise 1: Tricky Agents - -What would happen if Sally knew you were watching her and wanted to deceive you? - -a) *Complete the code below so that `chooseAction` chooses a misdirection if Sally is deceptive. Then describe and show what happens if you knew Sally was deceptive and chose action "b".* - -~~~~ -var actionPrior = Categorical({vs: ['a', 'b', 'c'], ps: [1/3, 1/3, 1/3]}); -var foodPrior = Categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [1/3, 1/3, 1/3]}); - -var vendingMachine = function(state action) { - return (action == 'a' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.8, .1, .1]}) : - action == 'b' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.1, .8, .1]}) : - action == 'c' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.1, .1, .8]}) : - 'nothing'); - -var chooseAction = function(goal, transition, state, deceive) { - return Infer({method: 'enumerate'}, function() { - var action = sample(actionPrior); - condition((!deceive && goal(transition(state,action))) || (deceive && !goal(transition(state, action)))) - return action; - }) -}; - -var goalPosterior = Infer({method: 'enumerate'}, function() { - var deceive = flip(); - var goalFood = sample(foodPrior); - var goal = function(outcome) {return outcome == goalFood}; - var sallyActionDist = chooseAction(goal, vendingMachine, 'state', deceive); - condition(deceive && sample(sallyActionDist) == 'b') - return goalFood; -}); - -viz.auto(goalPosterior); -~~~~ - -Results: Given the conditions, the probabilities that Alice wants a bagel or doughnut (p=0.45 for both) are much larger than the probability she wants a cooke (p=0.1): -![](Figures/inference-about-inference-1a.png) - -b) *What happens if you don't know Sally is deceptive and she chooses "b" and then "b". What if she chooses "a" and then "b." Show the models and describe the difference in behavior. Is she deceptive in each case?* - -For the first possibility, we condition on: - -~~~~ -condition(sample(sallyActionDist) == 'b' && sample(sallyActionDist)=='b'); -~~~~ - -We suspect that Sally wants a cookie and was not deceptive, since she chose the option most likely to give her a cookie both times: - -![](Figures/inference-about-inference-1b.png) - -(Note that we can confirm that the model does not believe Sally is being deceptive by returning the value of `deceive`.) - -For the second possibility, we condition on: - -~~~~ -condition(sample(sallyActionDist) == 'a' && sample(sallyActionDist)=='b'); -~~~~ - -It is most likely that Alice wants a doughnut, i.e. that the button most likely to result in her goal is 'c'. The model predicts from her inconsistency (swiching from 'a' to 'b) that it is most likely that she is deceptive. If she was not being deceptive, she would have chosen the same thing both times. So her true goal is the result of the only button she didn't press: 'c': -![](Figures/inference-about-inference-1c.png) - -(Note that we can confirm that the model believes Sally is being deceptive by returning the value of `deceive`.) - -## Exercise 2: Monty Hall. - -*Here, we will use the tools of Bayesian inference to explore a classic statistical puzzle -- the Monty Hall problem. Here is one statement of the problem:* - -> Alice is on a game show and she's given the choice of three doors. Behind one door is a car; behind the others, goats. She picks door 1. The host, Monty, knows what's behind the doors and opens another door, say No. 3, revealing a goat. He then asks Alice if she wants to switch doors. Should she switch? - -*Intuitively, it may seem like switching doesn't matter. However, the canonical solution is that you should switch doors. We'll explore (a) the intuition that switching doesn't matter, (b) the canonical solution, and more.* - -a) *Whether you should switch depends crucially on how you believe Monty chooses doors to pick. First, write the model such that the host randomly picks doors (for this, fill in `montyRandom`). In this setting, should Alice switch? Or does it not matter? Hint: it is useful to condition on the exact doors that we discussed in the problem description.* - -~~~~ -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyRandom = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return sample(chooseDoor); - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidBoth; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -~~~~ - -In this case, it doesn't matter whether Alice switches. *A priori* all doors are equally likely to be the prize door. Monte has eliminated one, but there's no reason to favor either of the other two: - -![](Figures/inference-about-inference-PartA_1.PNG) - -b) *Now, fill in* `montyAvoidBoth` *(make sure you switch your* `var montyFunction = ...` *alias to use* `montyAvoidBoth`). *Here, Monty randomly picks a door that is neither the prize door nor Alice's door. For both-avoiding Monty, you'll find that Alice should switch. - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyAvoidBoth = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - return montyDoor; - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidBoth; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` - -By running the model, we see that switching doors allows Alice to find the car 2/3 of the time: -![](Figures/inference-about-inference-PartB.PNG) - -*This is unintuitive -- we know that Monty picked door 3, so why should the process he used to arrive at this choice matter? By hand, compute the probability table for* $$P(\text{Prize } \mid \text{Alice picks door 1}, \text{Monty picks door 3}, \text{Door 3 is not the prize})$$ under both `montyRandom` and `montyAvoidBoth`. *Using these tables, explain why Alice should switch for both-avoiding Monty but why switching doesn't matter for random Monty. Hint: you will want to compare particular rows of these tables.* - -Under `montyRandom`, here are the probabilities prior to conditioning: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 1 | 0.037 | -| 1 | 1 | 2 | 0.037 | -| 1 | 1 | 3 | 0.037 | -| 1 | 2 | 1 | 0.037 | -| 1 | 2 | 2 | 0.037 | -| 1 | 2 | 3 | 0.037 | -| 1 | 3 | 1 | 0.037 | -| 1 | 3 | 2 | 0.037 | -| 1 | 3 | 3 | 0.037 | -| 2 | 1 | 1 | 0.037 | -| 2 | 1 | 2 | 0.037 | -| 2 | 1 | 3 | 0.037 | -| 2 | 2 | 1 | 0.037 | -| 2 | 2 | 2 | 0.037 | -| 2 | 2 | 3 | 0.037 | -| 2 | 3 | 1 | 0.037 | -| 2 | 3 | 2 | 0.037 | -| 2 | 3 | 3 | 0.037 | -| 3 | 1 | 1 | 0.037 | -| 3 | 1 | 2 | 0.037 | -| 3 | 1 | 3 | 0.037 | -| 3 | 2 | 1 | 0.037 | -| 3 | 2 | 2 | 0.037 | -| 3 | 2 | 3 | 0.037 | -| 3 | 3 | 1 | 0.037 | -| 3 | 3 | 2 | 0.037 | -| 3 | 3 | 3 | 0.037 | - -After we condition on Alice choosing Door 1, Monte choosing Door 3, and Door 3 not being the prize, there are only two remaining possibilities: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 3 | 0.037 | -| 1 | 2 | 3 | 0.037 | - -These are equally likely in the prior and thus equally likely in the posterior. - -Under `montyAvoidBoth`: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 1 | 0 | -| 1 | 1 | 2 | 0.06 | -| 1 | 1 | 3 | 0.06 | -| 1 | 2 | 1 | 0 | -| 1 | 2 | 2 | 0 | -| 1 | 2 | 3 | 0.11 | -| 1 | 3 | 1 | 0 | -| 1 | 3 | 2 | 0.11 | -| 1 | 3 | 3 | 0 | -| 2 | 1 | 1 | 0 | -| 2 | 1 | 2 | 0 | -| 2 | 1 | 3 | 0.11 | -| 2 | 2 | 1 | 0.06 | -| 2 | 2 | 2 | 0 | -| 2 | 2 | 3 | 0.06 | -| 2 | 3 | 1 | 0.11 | -| 2 | 3 | 2 | 0 | -| 2 | 3 | 3 | 0 | -| 3 | 1 | 1 | 0 | -| 3 | 1 | 2 | 0.11 | -| 3 | 1 | 3 | 0 | -| 3 | 2 | 1 | 0.11 | -| 3 | 2 | 2 | 0 | -| 3 | 2 | 3 | 0 | -| 3 | 3 | 1 | 0.06 | -| 3 | 3 | 2 | 0.06 | -| 3 | 3 | 3 | 0 | - -Again, conditioning leaves only the two possibilities: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 3 | 0.06 | -| 1 | 2 | 3 | 0.11 | - -Thus, in the posterior, the possibility where Door 2 is the prize door is twice as likely as the possibility where Door 1 is the prize door. Alice should switch. - -c) *Fill in* `montyAvoidAlice`. *Here, Monty randomly picks a door that is simply not Alice's door. Should Alice switch here?* - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyAvoidAlice = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != aliceDoor); - return montyDoor; - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidAlice; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` - -In this case, Alice should be indifferent to switching. -![](Figures/inference-about-inference-PartD.PNG) - -d) Fill in `montyAvoidPrize`. Here, Monty randomly picks a door that is simply not the prize door. Should Alice switch here? - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyAvoidPrize = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor); - return montyDoor; - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidPrize; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` - -Here, Alice should be indifferent towards staying or switching, since she has a 50/50 chance on expectation: -![](Figures/inference-about-inference-PartD.PNG) - -e) *An interesting cognitive question is: why do we have the initial intuition that switching shouldn't matter? Given your explorations, propose an answer.* - -[Note: There's no right answer to this. Here are two reasonable answers.] - -*Answer 1*: Either we believe that Monte is trying to avoid the prize door or we believe he is acting randomly. Either possibility would lead to the (correct) prediction that we think Alice should be indifferent to switching. - -*Answer 2*: We are uncertain as to what Monte's strategy is, and so we average over the four possibilities: - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyRandom = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return sample(chooseDoor); - }); -}; - -var montyAvoidBoth = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - return montyDoor; - }); -}; - -var montyAvoidAlice = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != aliceDoor); - return montyDoor; - }); -}; - -var montyAvoidPrize = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor); - return montyDoor; - }); -}; - -var chooseMontyFunction = function(){ - var f = randomInteger(4); - return f==0? montyRandom : - f==1? montyAvoidBoth : - f==2? montyAvoidAlice : - montyAvoidPrize -} - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = chooseMontyFunction() - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - //condition(montyDoor != prizeDoor && montyDoor != aliceDoor); //Part A - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` -This results in a slight bias towards not switching, but it's close enough to 50/50 that we may not sense of a distinction between switching and not switching. -![](Figures/inference-about-inference-PartE.PNG) diff --git a/solutions/07-inference-process.md b/solutions/07-inference-process.md deleted file mode 100644 index ab16246..0000000 --- a/solutions/07-inference-process.md +++ /dev/null @@ -1,471 +0,0 @@ ---- -layout: exercise -title: Algorithms for Inference - exercises -description: MCMC, etc. ---- - -## Exercise 1. Sampling Implicit Curves - -In the code box below, the `curve` function defines a vaguely heart-shaped curve. Below, we use rejection sampling to sample points along the boundary of the curve. - -~~~~ -var curve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - return x2 + term1*term1 - 1; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var model = function() { - var x = gaussian(xmu, xsigma); - var y = gaussian(ymu, ysigma); - var c_xy = curve(x, y); - condition(Math.abs(c_xy) < 0.01); - return {x: x, y: y}; -}; - -var post = Infer({method: 'rejection', samples: 1000}, model); -viz.auto(post); -~~~~ - -### a) - -*Try using MCMC with the m-h recipe instead of rejection sampling. You'll notice that it does not fare as well as rejection sampling. Why not?* - -Once M-H finds a state with reasonable probability, its proposals are generally going to be states with much lower probability (since almost every state it very low probability in this model). Thus, it is going to tend to get stuck in place and rarely sample new states. In contrast, every accepted sample in rejection sampling is likely to be unique. This can be demonstrated with the following code - -~~~~ -///fold: -var curve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - return x2 + term1*term1 - 1; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var model = function() { - var x = gaussian(xmu, xsigma); - var y = gaussian(ymu, ysigma); - var c_xy = curve(x, y); - condition(Math.abs(c_xy) < 0.01); - return {x: x, y: y}; -}; -/// - -var postr = Infer({method: 'rejection', samples: 1000}, model); -var postm = Infer({method: 'MCMC', samples: 1000}, model); -print("Rejection sampling:") -print("Distinct locations sampled: " + Object.keys(postr.getDist()).length) -viz.auto(postr); - -print("Metropolis-Hastings sampling:") -print("Distinct locations sampled: " + Object.keys(postm.getDist()).length) -viz.auto(postm); -~~~~ - -![](Figures/inference-process-1.PNG) - -Metropolis-Hastings sampling: - -![](Figures/inference-process-2.PNG) - -### b) - -*How can you change the model (or the inference algorithm) to make MCMC successfully trace the curves? Note that there are multiple ways to approach this problem. Your solution should result in a graph that clearly traces a heart-shaped figure -- though it need not do quite as well as rejection sampling.* - -#### Solution #1: Find a better proposal distribution - -~~~~ -// Using multivariate gaussian -var curve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - return x2 + term1*term1 - 1; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var mu = Vector([xmu, ymu]); -var sigma = Vector([xsigma, ysigma]); - -var model = function() { - var xy = sample(DiagCovGaussian({mu: mu, sigma: sigma})); - var x = T.get(xy, 0); - var y = T.get(xy, 1); - var c_xy = curve(x, y); - condition(Math.abs(c_xy) < 0.01); - return {x: x, y: y}; -}; - -var post = Infer({method: 'MCMC', samples: 30000}, model); -viz.auto(post); -~~~~ - -![](Figures/inference-process-3.PNG) - -Notice that this still requires many, many more samples than does rejection sampling, and provides less accurate results. - -#### Solution #2: Use Hamiltonian MCMC - -~~~~ -// Solution 2: Using HMC -var curve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - return x2 + term1*term1 - 1; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var model = function() { - var x = gaussian(xmu, xsigma); - var y = gaussian(ymu, ysigma); - var c_xy = curve(x, y); - condition(Math.abs(c_xy) < 0.01); - return {x: x, y: y}; -}; - -var post = Infer({ - method: 'MCMC', - kernel: { HMC: { stepSize: 0.1, steps: 10 } }, - samples: 10000 -}, model); -viz.auto(post); -~~~~ - -![](Figures/inference-process-4.PNG) - -Notice that this still requires many, many more samples than does rejection sampling, and provides less accurate results. - - -## Exercise 2. Metropolis-Hastings Part 1 - -Recall our code from the chapter that implements an Metropolis-Hastings markov chain: - -```js -var p = 0.7 - -//the target distribution (not normalized): -//prob = 0 if x condition is violated, otherwise proportional to geometric distribution -var target_dist = function(x){ - return (x < 3 ? 0 : (p * Math.pow((1-p),(x-1)))) -} - -// the proposal function and distribution, -// here we're equally likely to propose x+1 or x-1. -var proposal_fn = function(x){ - return (flip() ? x - 1 : x + 1) -} -var proposal_dist = function (x1, x2){ - return 0.5 -} - -// the MH recipe: -var accept = function (x1, x2){ - let p = Math.min(1, (target_dist(x2) * proposal_dist(x2, x1)) / (target_dist(x1) * proposal_dist(x1,x2))) - return flip(p) -} -var transition = function(x){ - let proposed_x = proposal_fn(x) - return (accept(x, proposed_x) ? proposed_x : x) -} - -//the MCMC loop: -var mcmc = function(state, iterations){ - return ((iterations == 1) ? [state] : mcmc(transition(state), iterations-1).concat(state)) -} - -var chain = mcmc(3, 10000) // mcmc for conditioned geometric -viz.table(chain) -``` - -Notice that `chain` is a list of samples, *not* a WebPPL probability distribution object. `viz.table` helpfully compiles a probability distribution for us. However, other functions such as `viz.marginals` will not work, because they require a WebPPL probability distribution object. - -To see the difference, try running `print(chain)` and compare that to the output of running `print(post)` at the end of the code block for Exercise 1. - -Edit the code below to derive a WebPPL probability distribution object from `chain`. Prove that this works by running `viz.marginals()` on your distribution. - -HINT: The WebPPL function `Infer()` returns a probability distribution object. Can you find a way to use `Infer()` to sample from `chain`, thus returning a probability distribution object? - -```js -var p = 0.7 - -//the target distribution (not normalized): -//prob = 0 if x condition is violated, otherwise proportional to geometric distribution -var target_dist = function(x){ - return (x < 3 ? 0 : (p * Math.pow((1-p),(x-1)))) -} - -// the proposal function and distribution, -// here we're equally likely to propose x+1 or x-1. -var proposal_fn = function(x){ - return (flip() ? x - 1 : x + 1) -} -var proposal_dist = function (x1, x2){ - return 0.5 -} - -// the MH recipe: -var accept = function (x1, x2){ - let p = Math.min(1, (target_dist(x2) * proposal_dist(x2, x1)) / (target_dist(x1) * proposal_dist(x1,x2))) - return flip(p) -} -var transition = function(x){ - let proposed_x = proposal_fn(x) - return (accept(x, proposed_x) ? proposed_x : x) -} - -//the MCMC loop: -var mcmc = function(state, iterations){ - return ((iterations == 1) ? [state] : mcmc(transition(state), iterations-1).concat(state)) -} - -var chain = mcmc(3, 10000) // mcmc for conditioned geometric - -var post = Infer({method: 'forward'}, function(){ - return sample(Categorical({vs: chain})) -}) - -viz.marginals(post) -``` - -![](Figures/inference-process-6.PNG) - - -## Exercise 3. Metropolis-Hastings Part 2 - -Consider this very simple model that chooses `y` and `w` such that `-10 * w + y * (1 - w)` is as close as possible to `0`: - -~~~~ -var p = function(x,y,w){ - return Gaussian({mu: 0, sigma:0.1}).score(x*w + y*(1-w)) -} - -var mymodel = function(){ - var x = -10 - var y = uniform(-100,100) - var w = dirichlet(Vector([1,1])).data[0] - factor(p(x,y,w)) - return {y: y, w: w, s: x*w + y*(1-w)} -} - -var post = Infer({ - method: 'MCMC', - samples: 5000, - lag: 100, -}, mymodel); - -viz.marginals(post) -~~~~ - -By looking at the marginal distribution of `s`, we can see that `Infer()` tends to choose values of `y` and `w` that satisfy our condition. - -### a) - -*Try re-writing the model to use rejection sampling. Note that you will need to find a way to turn the `factor` statement into a `condition` statement (Hint: See Exercise #1). Is using rejection sampling here a good idea? Why or why not?* - -Here is a version of the code using rejection sampling: - -~~~~ -var p = function(x,y,w){ - return Math.abs(x*w + y*(1-w)) < .01 -} - -var mymodel = function(){ - var x = -10 - var y = uniform(-100,100) - var w = dirichlet(Vector([1,1])).data[0] - condition(p(x,y,w)) - return {y: y, w: w, s: x*w + y*(1-w)} -} - -var post = Infer({ - method: 'rejection', - samples: 1000, -}, mymodel); - -viz.marginals(post) -~~~~ - -This is a bad idea, though. The problem is that the range of `y` is extremely wide and our prior is uniform. As a result, random samples from the prior are almost always rejected. - -### b) - -*Describe a proposal distribution that you could use for Metropolis-Hastings inference for this model. Show that it satisfies the necessary conditions.* - -We'll use a multivariate Gaussian centered on the current state, and with a reasonable-sized sigma. That is, too large of a sigma and proposals will usually be rejected. Too small of a sigma and it will take too long to traverse the stationary distribution. - -Showing detailed balance is straightforward: - -$$p(x)\pi(x \rightarrow x') =? \space p(x')\pi(x' \rightarrow x)$$ - -$$\rightarrow p(x) \min\left(1, \frac{p(x')q(x'\rightarrow x)}{p(x)q(x\rightarrow x')}\right) =? \space p(x') \min\left(1, \frac{p(x)q(x\rightarrow x')}{p(x')q(x'\rightarrow x)}\right)$$ - -Importantly, the proposal distribution is symmetric for `x` and `x'`, this reduces to - -$$\rightarrow p(x) \min\left(1, \frac{p(x')}{p(x)}\right) =? \space p(x') \min\left(1, \frac{p(x)}{p(x')}\right)$$ - -Suppose that $$p(x) > p(x')$$. This gives us: - -$$p(x) \frac{p(x')}{p(x)} =? \space p(x') * 1$$ - -$$\rightarrow p(x') == p(x')$$ - -which is what we wanted. It is straightforward to show that the equation also holds when $$p(x) \lt p(x')$$ and when $$p(x) == p(x')$$. - -### c) - -Edit the code below to implement your Metropolis-Hastings recipe. Use `viz.marginals` to show that it reliably chooses values of `y` and `w` that satisfy the condition. - -~~~~ -var x = -10 // Fix this variable. - -// target distribution -var target_dist = function(state){ - var y = state[0] - var w = state[1] - return (y < -100 || y > 100 || w < 0 || w > 1) ? 0 : - Math.exp(Gaussian({mu: 0, sigma:1}).score(x*w + y*(1-w))) -} - -// the proposal function and distribution, -var proposal_fn = function(state){ - var y = state[0] - var w = state[1] - var aprop = sample(DiagCovGaussian({mu: Vector([y, w]), sigma: Vector([3, .2])})) - return [aprop.data[0], aprop.data[1]] -} -var proposal_dist = function (state1, state2){ - return Math.exp(DiagCovGaussian({mu: Vector(state1), sigma: Vector([3, .2])}).score(Vector(state2))) -} - -// the MH recipe: -var accept = function (state1, state2){ - let p = Math.min(1, (target_dist(state2) * proposal_dist(state2, state1)) - / (target_dist(state1) * proposal_dist(state1,state2))) - return flip(p) -} -var transition = function(state){ - let proposed_state = proposal_fn(state) - return (accept(state, proposed_state) ? proposed_state : state) -} - -//the MCMC loop: -var mcmc = function(state, iterations){ - var y = state[0] - var w = state[1] - var s = x*w + y*(1-w) - var stateobj = {y: y, w: w, s: s} - return ((iterations == 1) ? [stateobj] : mcmc(transition(state), iterations-1).concat(stateobj)) -} - - -var chain = mcmc([0,.5], 5000) - -var post = Infer({method: 'forward'}, function(){ - return sample(Categorical({vs: chain})) -}) - -viz.marginals(post) -~~~~ - -![](Figures/inference-process-5.PNG) - -## Exercise 4. Topic models - -### a) - -In the model below, we are presented with six very boring texts. Implement a topic model that will infer the probability distribution across words for each of two topics. - -~~~~ -var vocabulary = ['DNA', 'evolution', 'parsing', 'phonology']; -var eta = ones([vocabulary.length, 1]) - -var numTopics = 2 -var alpha = ones([numTopics, 1]) - -var corpus = [ - 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), - 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), - 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), - 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' '), - 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' '), - 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' ') -] - -var model = function() { - - var topics = repeat(numTopics, function() { - return T.toScalars(dirichlet({alpha: eta})) - }) - - mapData({data: corpus}, function(doc) { - var topicDist = dirichlet({alpha: alpha}) - mapData({data: doc}, function(word) { - var z = sample(Discrete({ps: topicDist})) - var topic = topics[z] - observe(Categorical({ps: topic, vs: vocabulary}), word) - }) - }) - - return topics -} - -var results = Infer({method: 'MCMC', samples: 20000}, model) - -//plot expected probability of each word, for each topic: -print("Topic 1:") -viz.bar(vocabulary, map(function(i) {return expectation(results, function(v) {return v[0][i]})}, _.range(vocabulary.length))) -print("Topic 2:") -viz.bar(vocabulary, map(function(i) {return expectation(results, function(v) {return v[1][i]})}, _.range(vocabulary.length))) -~~~~ - -You should find that one topic loads primarily on "DNA" and "evolution": - -![](Figures/inference-process-8.PNG) - -Whereas he other loads primarily on "parsing" and "phonology": - -![](Figures/inference-process-7.PNG) - -Which is which will vary across runs. - -### b) - -*Run your code from (a) several times. You should see that sometimes Topic 1 favors the words 'DNA' and 'evolution' and Topic 2 favors 'parsing' and 'phonology'. Other times, this is reversed, with Topic 1 favoring 'parsing' and 'phonology' and Topic 2 favoring 'DNA' and 'evolution'. Why is this?* - -There is nothing special about the labels "Topic 1" and "Topic 2". It is no more likely for "Topic 1" to be the "biology" topic than for it to be the "linguistics" topic. Sometimes, inference finds one solution. Sometimes, it finds the other. - -### c) - -*If we ran MCMC on the model in (a) for an infinite amount of time, we would no longer see a distinction between Topic 1 and Topic 2. Why?* - -Although any given high-probability sapmle should result in the two topics splitting the vocabulary ("DNA" and "Evolution" in one topic, "parsing" and "phonology" in the other), it is no more likely that Topic 1 should be the "biology" topic than be the "linguistics" topic. So in expectation, everything should wash out. This is called **label degeneracy**. - -*Given the answer to that question, why does our model in (a) seem to work* - -The probability distribution for this model has two modes (high-probability regions of parameter space): One in which Topic 1 is the "biology" topic and Topic 2 is in the "linguistics" topic, and one in which these are reversed. - -Getting from one mode to the other requires a very large change in the parameters. If Metropolis-Hastings is implemented correctly, it is *possible* for the chain to move from one mode to the other, but it is pretty unlikely. Our chain was probably not run long enough to have a reasonable chance of exploring both modes. Instead, it finds one and stays there for the duration. *Which* one it finds is random, which explains (b) above. a \ No newline at end of file diff --git a/solutions/08-learning-as-conditional-inference.md b/solutions/08-learning-as-conditional-inference.md deleted file mode 100644 index 42e22b4..0000000 --- a/solutions/08-learning-as-conditional-inference.md +++ /dev/null @@ -1,440 +0,0 @@ ---- -layout: exercise -title: learning - exercises ---- - -## 1. Calculating learning curves - -#### a) - -How does a *learning curve* differ from a *learning trajectory*? - -*A learning curve depicts how much one knows as a function of experience. A learning trajectory depicts how one's beliefs change as a function of experience.* - -#### b) - -In the chapter, we graphed *learning trajectories* for a number of models. Below is one of these models (the one with the Beta(10,10) prior). In the chapter, we observed how the model's best guess as to the weight of the coin changed across a sequence of sucessive heads. See what happens if instead we see heads and tails in alternation: - -(Notice that we make use of [globalStore](https://webppl.readthedocs.io/en/master/globalstore.html) to create our data set.) - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// - -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -//creating 50 pairs of 'h' and 't' alternating -globalStore.fullDataSet = ['h', 't'] -var ignore = repeat(49, function(){ - globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) -}); - -var observedDataSizes = [0,2,4,6,8,10,20,30,40,50,70,100]; -var estimates = map(function(N) { - return expectation(weightPosterior(globalStore.fullDataSet.slice(0,N))) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -It looks like we haven't learned anything! Indeed, since our best estimate for the coin's weight was 0.5 *prior* to observing anything, our best estimate is hardly going to change when we get data consistent with that prior. - -The problem is that we've been looking at the MAP (maximum a posteriori) estimate. Edit the code below to see whether our posterior *distribution* is at all changed by observing this data set. (You only need to compare the prior and the posterior after all 100 observations): - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; - -var pseudoCounts = {a: 10, b: 10}; - -//creating 50 pairs of 'h' and 't' alternating -globalStore.fullDataSet = ['h', 't'] -var ignore = repeat(49, function(){ - globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) -}); -/// - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -var prior = Beta(pseudoCounts) -var post = weightPosterior(globalStore.fullDataSet) - -viz(prior); //should graph the prior distribution on weights -viz(post); //should graph the posterior distribution on weights -~~~~ - -![](Figures/learning-as-inference-1.PNG) - -#### c) - -Ideally, we'd like to see how our belief distribution shifts as more data comes in. A particularly good measure would be entropy. Unfortunately, calculating entropy for a Beta distribution is [somewhat involved](https://en.wikipedia.org/wiki/Beta_distribution#Quantities_of_information_(entropy)). - -A somewhat hacky alternative we can use is variance: the expected squared difference between a sample from the distribution and the distribution mean. This is hacky because it doesn't take into account the shape of the distribution, and so won't give us quite what we want if the distribution is non-symmetric. - -Edit the code below to see how variance changes as more data is observed. - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; - -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -//creating 256 pairs of 'h' and 't' alternating -globalStore.fullDataSet = ['h', 't'] -var ignore = repeat(499, function(){ - globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) -}); -/// - -var observedDataSizes = [0,2,4,8,16,32,64,128,256,512]; -var posts = map(function(N) { - return weightPosterior(globalStore.fullDataSet.slice(0,N)) -}, observedDataSizes); -// returns an array of posteriors of length observedDataSizes.length - -var variances = mapN(function(i){ - var mymean = expectation(Infer({method: 'forward', samples:1000}, function(){ - return sample(posts[i]) - })) - var variance = expectation(Infer({method: 'forward', samples:1000}, function(){ - return Math.pow(sample(posts[i]) - mymean,2) - })) - return(variance) -}, observedDataSizes.length) - -viz.line(observedDataSizes, variances); -~~~~ - -![](Figures/learning-as-inference-2.PNG) - -## 2. Causal Power - -Consider our model of causal power from the chapter: - -~~~~js -var observedData = [{C:true, E:false}] - -var causalPowerPost = Infer({method: 'MCMC', samples: 10000, lag:2}, function() { - // Causal power of C to cause E - var cp = uniform(0, 1) - - // Background probability of E - var b = uniform(0, 1) - - var obsFn = function(datum) { - // The noisy causal relation to get E given C - var E = (datum.C && flip(cp)) || flip(b) - condition( E == datum.E) - } - - mapData({data: observedData}, obsFn) - - return {causal_power: cp, background: b} -}); - -viz.marginals(causalPowerPost); -~~~~ - -#### a) - -Find a set of observations that result in inferring a fairly high causal power for C and a low background probability of E. Explain why this works. - -```js -var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:false, E:false},{C:false, E:false},{C:false, E:false}] -``` - -![](Figures/learning-as-inference-3.PNG) - -*The fact that we never observe E even in the absence of C suggests a low baserate of E. Given that, and the fact that we do see E when C is present suggests a high causal power for C.* - -#### b) - -Find a set of observations that result in inferring a fairly low causal power for C and a high background probability of E. Explain why this works. - -```js -var observedData = [{C:true, E:false},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}] -``` - -*We frequently see E regardless of the presence of C, suggesting a high background rate. The only time we didn't observe E was the one time C was actually present, suggesting low causal power for C.* - -![](Figures/learning-as-inference-5.PNG) - -#### c) - -Find a set of observations that result in inferring a fairly high causal power for C and a high background probability of E. Explain why this works. - -```js -var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true}] -``` - -*One option is to observe C a number of times with E present. This is ambiguous between a high causal power for C and a high background rate of E, so both are considered reasonably likely.* - -![](Figures/learning-as-inference-6.PNG) - -#### d) - -Suppose every time C is present, so is the effect E. Suppose C is present at least 5 times. Is there a way to nonetheless fail to infer a high causal power for C? - -*Yes, given enough times observing E even in the absence of C:* - -```js -var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}]; -``` - -![](Figures/learning-as-inference-4.PNG) - -## 3. Inferring Functions - -Consider our model of function inference from the chapter: - -~~~~js -///fold: -// make expressions easier to look at -var prettify = function(e) { - if (e == 'x' || _.isNumber(e)) { - return e - } else { - var op = e[0] - var arg1 = prettify(e[1]) - var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') - var arg2 = prettify(e[2]) - var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') - return prettyarg1 + ' ' + op + ' ' + prettyarg2 - } -} - -var plus = function(a,b) { - return a + b; -} - -var multiply = function(a,b) { - return Math.round(a * b,0); -} - -var divide = function(a,b) { - return Math.round(a/b,0); -} - -var minus = function(a,b) { - return a - b; -} - -var power = function(a,b) { - return Math.pow(a,b); -} - -// make expressions runnable -var runify = function(e) { - if (e == 'x') { - return function(z) { return z } - } else if (_.isNumber(e)) { - return function(z) { return e } - } else { - var op = (e[0] == '+') ? plus : - (e[0] == '-') ? minus : - (e[0] == '*') ? multiply : - (e[0] == '/') ? divide : - power; - var arg1Fn = runify(e[1]) - var arg2Fn = runify(e[2]) - return function(z) { - return op(arg1Fn(z),arg2Fn(z)) - } - } -} - -var randomConstantFunction = function() { - return uniformDraw(_.range(10)) -} - -var randomCombination = function(f,g) { - var op = uniformDraw(['+','-','*','/','^']); - return [op, f, g]; -} - -// sample an arithmetic expression -var randomArithmeticExpression = function() { - if (flip(0.3)) { - return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) - } else { - if (flip()) { - return 'x' - } else { - return randomConstantFunction() - } - } -} -/// - -viz.table(Infer({method: 'enumerate', maxExecutions: 100}, function() { - var e = randomArithmeticExpression(); - var s = prettify(e); - var f = runify(e); - - condition(f(0) == 0) - condition(f(2) == 4) - - return {s: s}; -})) -~~~~ - -Why does this think the probability of `x * 2` is so much lower than `x * x`? - -HINT: Think about the probability assigned to `x ^ 2`. - -*The two expressions differ in the final draw from the recursive function `randomArithmeticExpression`. On each step through the function, there is a 0.3 * 0.5 = 0.15 chance of returning `x`, but only a 0.3 * 0.5 * 0.1 = 0.015 chance of drawing `2`.* - -#### b) - -Let's reconceptualize of our program as a sequence-generator. Suppose that the first number in the sequence ($$f(1)$$) is `1` and the second number ($$f(2)$$) is `4`. What number comes next? - -~~~~js -///fold: -// make expressions easier to look at -var prettify = function(e) { - if (e == 'x' || _.isNumber(e)) { - return e - } else { - var op = e[0] - var arg1 = prettify(e[1]) - var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') - var arg2 = prettify(e[2]) - var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') - return prettyarg1 + ' ' + op + ' ' + prettyarg2 - } -} - -var plus = function(a,b) { - return a + b; -} - -var multiply = function(a,b) { - return Math.round(a * b,0); -} - -var divide = function(a,b) { - return Math.round(a/b,0); -} - -var minus = function(a,b) { - return a - b; -} - -var power = function(a,b) { - return Math.pow(a,b); -} - -// make expressions runnable -var runify = function(e) { - if (e == 'x') { - return function(z) { return z } - } else if (_.isNumber(e)) { - return function(z) { return e } - } else { - var op = (e[0] == '+') ? plus : - (e[0] == '-') ? minus : - (e[0] == '*') ? multiply : - (e[0] == '/') ? divide : - power; - var arg1Fn = runify(e[1]) - var arg2Fn = runify(e[2]) - return function(z) { - return op(arg1Fn(z),arg2Fn(z)) - } - } -} - -var randomConstantFunction = function() { - return uniformDraw(_.range(10)) -} - -var randomCombination = function(f,g) { - var op = uniformDraw(['+','-','*','/','^']); - return [op, f, g]; -} - -// sample an arithmetic expression -var randomArithmeticExpression = function() { - if (flip(0.3)) { - return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) - } else { - if (flip()) { - return 'x' - } else { - return randomConstantFunction() - } - } -} -/// - -viz.table(Infer({method: 'enumerate', maxExecutions: 10000}, function() { - var e = randomArithmeticExpression(); - var s = prettify(e); - var f = runify(e); - - condition(f(1) == 1) - condition(f(2) == 4) - - return {'f(3)':f(3)}; -})) -~~~~ - -Not surprisingly, the model predicts `9` as the most likely next number. However, it also puts significant probability on `27`. Why does this happen? - -*These results are largely due to the high probability of the functions `x * x` and `x ^ x`, which return give `9` and `27` for `f(3)`, respectively.* - -#### c) - -Many people find the high probability assignmed by our model in (b) to `27` to be unintuitive. This suggests our model is an imperfect model of human intuitions. How could we decrease the probability of inferring `27`? (HINT: Consider the priors). - -*Currently, each function (`*`, `^`, `+`) is equally likely (they are drawn from a uniform distriution). We could decrease the probability of the latter function by decreasing the probability of drawing `^`. It seems reasonable that people are less likely to consider sequences made from powers, though this would need to be tested.* \ No newline at end of file diff --git a/solutions/09-hierarchical-models.md b/solutions/09-hierarchical-models.md deleted file mode 100644 index c913ee0..0000000 --- a/solutions/09-hierarchical-models.md +++ /dev/null @@ -1,211 +0,0 @@ ---- -layout: exercise -title: Hierarchical models -description: The power of abstraction. ---- - -## Exercise 1: Pseudocounts - -The main text states that you can think of the Dirichlet parameter $$\alpha = [\alpha_1, \alpha_2, ..., \alpha_n]$$ "as a kind of prior" over categories $$[A_1, A_2, ..., A_n]$$. α is not a prior in the usual sense, since it is not a probability distribution. What α represents instead is a virtual observation. Thus if $$\alpha = [2, 2, 1]$$, that is the equivalent of having already observed the first category and second category twice each, and the third category one time only. - -Complete the code below to prove that setting $$\alpha = [2, 3, 1, 1, 1]$$ is equivalent to setting $$\alpha = [1, 1, 1, 1, 1]$$ and then observing the first category once and the second category twice: - -~~~~js -var colors = ['black', 'blue', 'green', 'orange', 'red']; - -var observedData = [ -{bag: 'bag1', draw: 'blue'}, -{bag: 'bag1', draw: 'blue'}, -{bag: 'bag1', draw: 'black'}] - -var observed = Infer({method: 'MCMC', samples: 20000}, function(){ - var makeBag = mem(function(bag){ - var colorProbs = T.toScalars(dirichlet(ones([colors.length, 1]))) - return Categorical({vs: colors, ps: colorProbs}) - }) - - var obsFn = function(datum){ - observe(makeBag(datum.bag), datum.draw) - } - - mapData({data: observedData}, obsFn) - - return {bag1: sample(makeBag('bag1'))} -}) - -viz.marginals(observed) - -var usealpha = Infer({method: 'forward', samples: 20000}, function(){ - var makeBag = mem(function(bag){ - var colorProbs = T.toScalars(dirichlet(Vector([2,3,1,1,1]))) - return Categorical({vs: colors, ps: colorProbs}) - }) - - return {bag1: sample(makeBag('bag1'))} -}) - -viz.marginals(usealpha) -~~~~ - -## Exercise 2: Rotten apples - -On any given day, a given grocery store has some number of apples for sale. Some of these apples may be mushy or even rotten. The probability that each apple is rotten is not independent: a ripening fruit emits chemicals that encourages other fruit to ripen as well. As they say, [one rotten apple spoils the whole barrel](https://idiomation.wordpress.com/2013/03/27/one-bad-apple-spoils-the-whole-barrel/). - -For each apple in a barrel, assume the probability that the apple is rotten is `flip(p)` where `p` is drawn from some prior. An appropriate prior distribution is Beta. Recall that the Beta distribution is just a Dirichlet that returns a vector of length one. So it, too, is defined based on pseudocounts `[a, b]`. Thus `Beta({a: 10, b: 2})` returns the equivalent of a Beta distribution conditioned on having previously seen 10 heads and 2 tails. - -To get a sense of the Beta distribution, run the following code: - -~~~~js -viz(Beta({a: 1, b: 1}) -viz(Beta({a: 10, b: 1}) -viz(Beta({a: 1, b: 10}) -viz(Beta({a: .1, b: .2}) -~~~~ - -Note that the final example gives a very nice prior for our apples: most of the time, the probability of a rotten apple is quite low. The rest of the time, the probability is very high. Middling probabilities are rare. - -#### a) - -Write a function `makeBarrel` that returns a function (a 'barrel') that takes a single argument *N* and returns a vector representing the rottenness of *N* apples from that barrel (where `true` is rotten and `false` is not rotten). That is, the following code: - -```norun -var abarrel = makeBarrel('b') -abarrel(5) -``` - -should return something like `[true, true, true, false, true]`. - -Complete the following codebox: - -~~~~js -var makeBarrel = mem(function(barrel){ - var p = beta({a: .1, b: .2}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } -}) - -var post = Infer({method: 'forward'}, function(){ - var abarrel = makeBarrel('b') - return Math.sum(abarrel(10)) -}) -viz(post) -~~~~ - -#### b) - -Some grocery stores have fresher produce than others. So let's create a function `makeStore` that returns a makeBarrel function, which works as it did in (a). Importantly, each store has its own Beta parameters `[a, b]` drawn from some prior. - -HINT: In order to maintain the likelihood that in a given barrel, either most of the apples are rotten or few are, you need to ensure that `a < 1` and `b < 1`. However, if `a` is much larger than `b` (or vice versa), you will get extreme results with *every* apple being rotten or *every* apple being good. - -~~~~js -var makeStore = mem(function(store){ - var prior = flip() ? [.1, .3] : [.3, .1] - - var makeBarrel = mem(function(barrel){ - var p = beta({a: prior[0], b: prior[1]}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } - }) - - return makeBarrel -}) - -viz(Infer({method: 'forward', samples:10000}, function(){ - var S = makeStore('S') - var B1 = S('B1') - var B2 = S('B2') - return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) -})) - -viz(Infer({method: 'forward', samples:10000}, function(){ - var S1 = makeStore('S1') - var S2 = makeStore('S2') - var B1 = S1('B1') - var B2 = S2('B2') - return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) -})) -~~~~ - -#### c) - -We can keep going. Some cities are located in apple country and thus have more access to fresh apples. Most stores in those cities are going to mostly have good barrels with good apples. Other cities have less access to fresh apples, and so more of their stores will have bad barrels with rotten apples. - -In the code block below, create a `makeCity` function, which returns a `makeStore` function, which works as in (b). In (b), each store had a prior on `[a, b]`. Let's put a prior on *that* prior, such that cities either tend to have good stores or tend to have bad stores. - -NOTE: Again, it is not necessary to be overly fancy with these priors. - -~~~~js -var makeCity = mem(function(city){ - var hprior = beta({a: .25, b: .25}) - - var makeStore = mem(function(store){ - var prior = flip(hprior) ? [.1, .3] : [.3, .1] - - var makeBarrel = mem(function(barrel){ - var p = beta({a: prior[0], b: prior[1]}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } - }) - - return makeBarrel - }) - - return makeStore -}) - -var C1 = makeCity("C1") -var S1 = C1("S1") -var B1 = S1("B1") - -viz(Infer({method: 'forward'}, function(){ - return Math.sum(B1(10)) -})) -//repeat to see different kinds of cities -~~~~ - -#### d) - -Suppose you go to a store in a city. The store has a barrel of 10 apples, 7 of which are rotten. You leave and go to another store in the same city. It also has has a barrel with 10 apples. Using your code above, how many of these apples are likely to be rotten? - -~~~~js -var makeCity = mem(function(city){ - var hprior = beta({a: .25, b: .25}) - - var makeStore = mem(function(store){ - var prior = flip(hprior) ? [.1, .3] : [.3, .1] - - var makeBarrel = mem(function(barrel){ - var p = beta({a: prior[0], b: prior[1]}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } - }) - - return makeBarrel - }) - - return makeStore -}) - -var amod = Infer({method: 'MCMC', samples:5000, lag: 100}, function(){ - var C = makeCity("C") - var S1 = C("S1") - var B1 = S1("B1") - - condition(Math.sum(B1(10)) == 7) - - var S2 = C("S2") - var B2 = S2("B2") - - return Math.sum(B2(10)) -}) - -viz(amod) -~~~~ \ No newline at end of file diff --git a/solutions/14-bayesian-data-analysis.md b/solutions/14-bayesian-data-analysis.md deleted file mode 100644 index 80d8adb..0000000 --- a/solutions/14-bayesian-data-analysis.md +++ /dev/null @@ -1,373 +0,0 @@ ---- -layout: exercise -title: Bayesian Data Analysis - solutions -custom_js: -- assets/js/towData.js -- assets/js/towConfigurations.js ---- - -## Exercise 1: Experimenting with priors and predictives - -### a) - -> Try different beta priors on `p`, by changing `priorDist = Uniform(...)` to `p = Beta({a: 10,b: 10})`, `Beta({a: 1, b: 5})` and `Beta({a: 0.1, b: 0.1})`. -> (Note that `beta(1,1)` is mathematically the same as `uniform(0,1)`.) -> Use the figures produced to describe the assumptions these priors capture, and how they interact with the same data to produce posterior inferences and predictions. - -`a` can intuitively be thought of as the number of tails flips we've seen before, and `b` as the number of heads flips. If `a` is greater than `b`, the distribution will be skewed to the left. If those numbers are less than `1`, we have strong intuitions against 50-50. - -### b) - -> In the current simple binomial setting, for example, predictive distributions could be found by an experiment that is different because it has `n' != n` observations. -> Change the model to implement an example of this. - -~~~~ -// observed data -var k = 1 // number of successes -var n = 20 // number of attempts -var new_n = 5 // number of attempts in the followup experiment -var priorDist = Beta({a: 1, b: 1}); - -var model = function() { - var p = sample(priorDist); - - // Observed k number of successes, assuming a binomial - observe(Binomial({p : p, n: n}), k); - - // sample from binomial with updated p - var posteriorPredictive = binomial(p, new_n); - - // sample fresh p (for visualization) - var prior_p = sample(priorDist); - // sample from binomial with fresh p (for visualization) - var priorPredictive = binomial(prior_p, n); - - return { - prior: prior_p, priorPredictive : priorPredictive, - posterior : p, posteriorPredictive : posteriorPredictive - }; -} - -var opts = {method: "MCMC", samples: 2500, lag: 50}; -var posterior = Infer(opts, model); - -viz.marginals(posterior) -~~~~ - -## Exercise 2: Parameter fitting vs. Parameter integration - -~~~~ -// Prior on task difficulty is uniform on [0, ..., 0.9], with a spike on 0.9 -var sampleTaskDifficulty = function() { - return flip() ? .9 : randomInteger(10) / 10; -}; - -// Compute posterior after seeing one subject perform well on the task -var taskDifficultyPosterior = Infer({method: 'enumerate'}, function(){ - var taskDifficulty = sampleTaskDifficulty(); - - // subject will perform well if the task is not too difficult - var subjectPerformsWell = !flip(taskDifficulty) - - // observe that they perform well (i.e. this value is true) - condition(subjectPerformsWell) - return taskDifficulty; -}) - -// Most likely task-difficulty is still .9 -taskDifficultyPosterior.MAP().val - -// But a lot of probability mass is on lower values -viz.hist(taskDifficultyPosterior, {numBins: 9}) - -// Indeed, the expected subject ability is around .4 -expectation(taskDifficultyPosterior) -~~~~ - -### a) - -> Would you proceed with more data collection or would you change your paradigm? -How did you come to this conclusion? - -*Note:* This is subjective. Justify your answer. - -Personally, I'm leaning towards going for it. -If this participant did well, probably other participants won't do too badly. -Depends on the relative costs of tweaking the experiment, having a task that's too difficult or too easy, and doing data collection. - -### b) - -> The traditional approach is the value (or "point-wise estimate") approach: take the value that corresponds to the best fit (e.g., by using least-squares or maximum-likelihood estimation; here, you would have taken the Maximum A Posteriori (or, MAP) estimate, which would be 0.9). -> Why might this not be a good idea? -> Provide two answers. -> One that applies to the data collection situation above, and one that applies to the metaphor of model or theory evaluation. - -* The MAP is only 0.9 because of our strong prior beliefs. -* The second most likely value is the complete opposite. - - -## Exercise 3: BDA of Bayesian Cognitive Models - -> We saw in this chapter how to analyze our models of cognition by using Bayesian statistical techniques. -> Compare and contrast the results of our cognitive model of tug-of-war with our regression models. -> Some questions to ponder: -> -> * What phenomena in the data was it better able to capture? - -Explaining away Alice's strength if Bob and Alice win on a team together, but then Bob also wins on his own. - -> * What, if anything, did it fail to capture? - -Teamwork, excitement or nervousness due to a winning streak, intimidation or loafing (e.g. being lazy because you think it wouldn't make a difference anyway) - -> * Are there other aspects of the model you could 'lift' into the Bayesian Data Analysis (i.e. fixed parameters that you could put a prior on and include in your joint inference)? - -Lazy pulling isn't obviously a factor of 1/2. We could put a prior on that and fit to people's responses about strengths. - -> * How does WebPPL expose commonalities between these two models? - -Both are models, both infer parameters of the model, both set priors on the model parameters and update the parameters based on the observations. - -## Exercise 4 - - -~~~~ -///fold: - -// alternative proposal distribution for metropolis-hastings algorithm -var uniformKernel = function(prevVal) { - return Uniform({a: prevVal - 0.2, b: prevVal + 0.2}); -}; - -var toProbs = function(predictions) { - return _.object(map(function(i) {return "predictive: cond" + i + " P(true)";}, _.range(1, predictions.length + 1)), - map(function(model) {return Math.exp(model.score(true))}, predictions)) -} - -var dataSummary = function(data) { - return map(function(condData) { - return filter(function(d) {return d}, condData).length/11 - }, data) -}; - -var predictiveSummary = function(model) { - var labels = map(function(i) {return "predictive: cond" + i + " P(true)"}, _.range(1, 6)); - return map(function(label) { - return expectation(model, function(s) { - return s[label] - }); - }, labels); -}; -/// - -// 5 experiment conditions / stimuli -var possibleEvidenceStream = [ - [['A']], - [['A', 'B']], - [['A', 'B'], ['B']], - [['A', 'B'], ['A', 'B']], - [[]] -]; - -// for each condition. -// note: always the question "is A a blicket?" -var data = [ - repeat(10, function(){return true}).concat(false), - repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), - repeat(4, function(){return true}).concat(repeat(7, function(){return false})), - repeat(8, function(){return true}).concat(repeat(3, function(){return false})), - repeat(2, function(){return true}).concat(repeat(9, function(){return false})) -]; - -// Same model as above, but parameterized -var detectingBlickets = mem(function(evidence, params) { - return Infer({method: 'enumerate'}, function() { - var blicket = mem(function(block) {return flip(params.blicketBaseRate)}) - var power = function(block) {return blicket(block) ? params.blicketPower : params.nonBlicketPower} - var machine = function(blocks) { - return (blocks.length == 0 ? - flip(params.machineSpontaneouslyGoesOff) : - flip(power(first(blocks))) || machine(rest(blocks))) - } - map(function(blocks){condition(machine(blocks))}, evidence) - return blicket('A') - }) -}) - -var dataAnalysis = Infer({method: 'MCMC', samples: 5000, callbacks: [editor.MCMCProgress()]}, function() { - var params = { - blicketBaseRate: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - blicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - nonBlicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - machineSpontaneouslyGoesOff: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}) - } - - var cognitiveModelPredictions = map(function(evidence) { - return detectingBlickets(evidence,params); - }, possibleEvidenceStream); - - // observe each data point under the model's predictions - map2(function(dataForStim, modelPosterior) { - map(function(dataPoint) { - observe(modelPosterior, dataPoint); - }, dataForStim) - }, data, cognitiveModelPredictions) - - var predictives = toProbs(cognitiveModelPredictions) - return _.extend(params, predictives) -}) - -viz.marginals(dataAnalysis); -viz.scatter(predictiveSummary(dataAnalysis), dataSummary(data), - {xLabel: 'model', yLabel: 'data'}) -~~~~ - - -### a) - -> What are the parameters of this model? In the plainest English you can muster, interpret the current values of the parameters. What do they mean? - -`blicketBaseRate` | 0.4 | blickets are common, but not *that* common -`blicketPower` | 0.9 | blickets rarely fail to be detected -`nonBlicketPower` | 0.05 | very occasionally, we get false blicket detections -`machineSpontaneouslyGoesOff` | 0.05 | very oaccasionally, the detector just goes offf - - -### b) - -> What does the `Infer` statement in `dataAnalysis` return? - -Fitting to the data, what are the likely params and predictions? - -> What does the `Infer` statement in `detectingBlickets` return? Why are there two queries in this program? - -The cognitive model involves an inference of what people will say given the evidence they see. - -### c) - -`blicketBaseRate` | blickets are common, but not *that* common -`blicketPower` | blickets rarely fail to set off the detector -`nonBlicketPower` | non-blickets *occasionally* might set off the detector -`machineSpontaneouslyGoesOff` | *occasionally* the detector might just go off for no reason -`predictive: cond1 P(true)` | `A` is probably a blicket... -`predictive: cond2 P(true)` | `A` is slightly more likely to be a blicket -`predictive: cond3 P(true)` | no idea if `A` is a blicket -`predictive: cond4 P(true)` | `A` is more likely than not a blicket... -`predictive: cond5 P(true)` | `A` is probably not a blicket...? -model (`x`) vs. data (`y`) | We can accurately guess people's response from model, but they're not exactly 1-1 - -### d) - -> How do your interpretations relate to the parameter values that were set in the original program? - -Basically the expectation. - -### e) - -> Look carefully at the priors (in the code) and the posteriors (in the plots) over blicketPower and nonBlicketPower. Did we impose any a priori assumptions about the relationship between these parameters? Think about the experimental setup. Do you think we would be justified in imposing any assumptions? Why or why not? What do the posteriors tell you? How was the data analysis model able to arrive at this conclusion? - -The priors over `blicketPower` and `nonBlicketPower` don't actually encode the information that `blicketPower` should be higher than `nonBlicketPower`. -But this was basically told to kids in the experiment ("Blickets make the machine go off"), and kids show they know this from the responses they gave (when `A` makes the machine go off most of the time, they call it a blicket, not a non-blicket). - -The data analysis actually learns this asymmetric from the kids' responses. -To see this, we can switch the `true` and `false` responses that kids give. - -~~~~ -var data = [ - repeat(10, function(){return false}).concat(true), - repeat(6 , function(){return false}).concat(repeat(5, function(){return true})), - repeat(4, function(){return false}).concat(repeat(7, function(){return true})), - repeat(8, function(){return false}).concat(repeat(3, function(){return true})), - repeat(2, function(){return false}).concat(repeat(9, function(){return true})) -]; -~~~~ - -When we do that, we see that `nonBlicketPower` is greater than `blicketPower` in the posteriors. - -Leaving this relationship for the model to infer is a nice sanity check. It's cool that we can learn the appropriate relationship (`blicketPower > nonBlicketPower`) from the data, but it would be OK to bake it in. It wasn't a key part of our theory, and we're pretty confident that kids understand. - -### f) - -> Do you notice anything about the scatter plot? How would you interpret this? Is there something we could add to the data analysis model to account for this? - -There seems to be a linear relationship betweeen model and data, but the values are not always equal. If we add some scaling factor, we could get from model to accurate predictions of people's responses. - -### g) - -> Now, we're going to examine the predictions of the model if we had done a more traditional analysis of point-estimates of parameters (i.e. fitting parameters). Examine your histograms and determine the "maximum a posteriori" (MAP) value for each parameter. Plug those into the code below and run it. - -~~~~ -///fold: -var toProbs = function(predictions) { - return _.object(map(function(i) {return "predictive: cond" + i + " P(true)";}, _.range(1, predictions.length + 1)), - map(function(model) {return Math.exp(model.score(true))}, predictions)) -} - -var dataSummary = function(data) { - return map(function(condData) { - return filter(function(d) {return d}, condData).length/11 - }, data) -}; - -// 5 experiment conditions / stimuli -var possibleEvidenceStream = [ - [['A']], - [['A', 'B']], - [['A', 'B'], ['B']], - [['A', 'B'], ['A', 'B']], - [[]] -]; - -var data = [ - repeat(10, function(){return true}).concat(false), - repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), - repeat(4, function(){return true}).concat(repeat(7, function(){return false})), - repeat(8, function(){return true}).concat(repeat(3, function(){return false})), - repeat(2, function(){return true}).concat(repeat(9, function(){return false})) -]; - -// for each condition. -// note: always the question "is A a blicket?" -var data = [ - repeat(10, function(){return true}).concat(false), - repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), - repeat(4, function(){return true}).concat(repeat(7, function(){return false})), - repeat(8, function(){return true}).concat(repeat(3, function(){return false})), - repeat(2, function(){return true}).concat(repeat(9, function(){return false})) -]; - -// Same model as above, but parameterized -var detectingBlickets = mem(function(evidence, params) { - return Infer({method: 'enumerate'}, function() { - var blicket = mem(function(block) {return flip(params.blicketBaseRate)}) - var power = function(block) {return blicket(block) ? params.blicketPower : params.nonBlicketPower} - var machine = function(blocks) { - return (blocks.length == 0 ? - flip(params.machineSpontaneouslyGoesOff) : - flip(power(first(blocks))) || machine(rest(blocks))) - } - map(function(blocks){condition(machine(blocks))}, evidence) - return blicket('A') - }) -}) -/// - -var params = { - blicketBaseRate : ..., - blicketPower: ..., - nonBlicketPower: ..., - machineSpontaneouslyGoesOff: ... -}; - -var bestFitModelPredictions = map(function(evidence) { - return Math.exp(detectingBlickets(evidence, params).score(true)); -}, possibleEvidenceStream) - -viz.scatter(bestFitModelPredictions, dataSummary(data)) -~~~~ - -### h) - -> What can you conclude about the two ways of looking at parameters in this model's case? Do you think the model is relatively robust to different parameter settings? - -Setting the parameters to just the modes changes the model fit. The fit is a lot better when we fit all the paramters at once. Some of the relationships between those parameters matter, in a way that we haven't really captured in the strucutre of our model. From 02e36b3a63cea01cc00fe796ce9d9376b3d567c5 Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 25 Sep 2018 10:09:53 -0400 Subject: [PATCH 08/47] Updated sequences of observations. solution key still needs to be fixed --- _prod.yml | 2 +- chapters/05-observing-sequences.md | 46 +- exercises/05-observing-sequences.md | 66 +-- solutions/.04.1-agents-as-programs.md | 424 ++++++++++++++++ solutions/.05-observing-sequences.md | 344 +++++++++++++ solutions/.05.1-sequential-decisions.md | 407 +++++++++++++++ solutions/.07-inference-process.md | 471 ++++++++++++++++++ .../.08-learning-as-conditional-inference.md | 440 ++++++++++++++++ solutions/.09-hierarchical-models.md | 211 ++++++++ solutions/.14-bayesian-data-analysis.md | 373 ++++++++++++++ solutions/06-inference-about-inference.md | 410 +++++++++++++++ 11 files changed, 3142 insertions(+), 52 deletions(-) create mode 100644 solutions/.04.1-agents-as-programs.md create mode 100644 solutions/.05-observing-sequences.md create mode 100644 solutions/.05.1-sequential-decisions.md create mode 100644 solutions/.07-inference-process.md create mode 100644 solutions/.08-learning-as-conditional-inference.md create mode 100644 solutions/.09-hierarchical-models.md create mode 100644 solutions/.14-bayesian-data-analysis.md create mode 100644 solutions/06-inference-about-inference.md diff --git a/_prod.yml b/_prod.yml index 8b689b6..9fa261d 100644 --- a/_prod.yml +++ b/_prod.yml @@ -1,2 +1,2 @@ markdown: kramdown -baseurl: https://probmods.org +baseurl: https://marielajennings.github.io/probmods2/ diff --git a/chapters/05-observing-sequences.md b/chapters/05-observing-sequences.md index e41206d..9774f99 100644 --- a/chapters/05-observing-sequences.md +++ b/chapters/05-observing-sequences.md @@ -4,10 +4,6 @@ title: Models for sequences of observations description: Generative models of the relations between data points --- -### Authors: Noah Goodman; Timothy J. O'Donnell; Josh Tenenbaum - - - In the last chapter we learned about common [patterns of inference](04-patterns-of-inference.html) that can result from a few observations, given the right model structure. There are also many common patterns of *data* that arise from certain model structures. It is common, for instance, to have a sequence of observations that we believe was each generated from the same causal process: a sequence of coin flips, a series of temperature readings from a weather station, the words in a sentence. @@ -160,40 +156,40 @@ Notice that the sequences sampled from this model have "runs" of true or false m We can use a Markov model as a better (but still drastically simplified) model for sequences of words in language. ~~~~ -var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'stop']; +var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'STOP']; var transition = function(word) { - var ps = (word == 'start' ? [0.0032, 0.4863, 0.0789, 0.0675, 0.1974, 0.1387, 0.0277] : + var ps = (word == 'START' ? [0.0032, 0.4863, 0.0789, 0.0675, 0.1974, 0.1387, 0.0277] : word == 'chef' ? [0.0699, 0.1296, 0.0278, 0.4131, 0.1239, 0.2159, 0.0194] : word == 'omelet' ? [0.2301, 0.0571, 0.1884, 0.1393, 0.0977, 0.1040, 0.1831] : word == 'soup' ? [0.1539, 0.0653, 0.0410, 0.1622, 0.2166, 0.2664, 0.0941] : word == 'eat' ? [0.0343, 0.0258, 0.6170, 0.0610, 0.0203, 0.2401, 0.0011] : word == 'work' ? [0.0602, 0.2479, 0.0034, 0.0095, 0.6363, 0.02908, 0.0133] : word == 'bake' ? [0.0602, 0.2479, 0.0034, 0.0095, 0.6363, 0.02908, 0.0133] : - console.error("word (" + word + ") not recognized")) + console.error("word (" + word + ") not recognized")) return categorical({vs: vocab, ps: ps}); } var sampleWords = function(lastWord) { - if(lastWord == 'stop') { - return []; + if(lastWord == 'STOP') { + return [lastWord]; } else { var nextWord = transition(lastWord); return [lastWord].concat(sampleWords(nextWord)); } } -sampleWords('start') +sampleWords('START') ~~~~ Each word is sampled from a categorical distribution whose parameters depend on the previous word, with this dependence specified in the `transition` function. -Notice that we control the length of the generated list here not with a fixed parameter, but by using the model itself: We start the recursion by sampling given the special symbol `start`. -When we sample the symbol `stop` we end the recursion. +Notice that we control the length of the generated list here not with a fixed parameter, but by using the model itself: We start the recursion by sampling given the special symbol `START`. +When we sample the symbol `STOP` we end the recursion. Like the geometric distribution, this [stochastic recursion](02-generative-models.html#stochastic-recursion) can produce unbounded structures---in this case lists of words of arbitrary length. The above code may seem unnecessarily complex because it explicitly lists every transition probability. Suppose that we put a prior distribution on the multinomial transitions instead. Using `mem` this is very straightforward: ~~~~ -var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'stop'] +var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'STOP'] var wordToDistribution = mem(function(word) { return dirichlet(ones([vocab.length,1])) @@ -204,15 +200,15 @@ var transition = function(word) { } var sampleWords = function(lastWord) { - if(lastWord == 'stop') { - return [] + if(lastWord == 'STOP') { + return [lastWord] } else { var nextWord = transition(lastWord) return [lastWord].concat(sampleWords(nextWord)) } } -sampleWords('start') +sampleWords('START') ~~~~ This is very much like the way we created an exchangeable model above, except instead of one unknown probability list, we have one for each previous word. Models like this are often called "hierarchical" n-gram models. We consider [hierarchical models](09-hierarchical-models.html) in more detail in a later chapter. @@ -262,7 +258,7 @@ var isFairDist = function(sequence) { function () { var isFair = flip() var init = flip() - condition(_.isEqual(sequence, markov(isFair, init, sequence.length))); + factor(_.isEqual(sequence, markov(isFair, init, sequence.length))); return isFair }) } @@ -273,7 +269,9 @@ print("01010 is fair?") viz(isFairDist([false, true, false, true, false])) ~~~~ -This version thinks that alternating sequences are non-random, but there are other non-uniform generative processes (such as all-true) that it doesn't detect. How could we extend this model to detect more non-random sequences? +(Q: Why did we use `factor` instead of `condition` above?) + +This version thinks that alternating sequences are non-random, but there are other non-uniform generative processes (such as all-true) that it doesn't detect. How could we extend this model to detect more non-random sequences? # Hidden Markov Models @@ -282,7 +280,7 @@ Another popular model in computational linguistics is the hidden Markov model (H ~~~~ var ones = function(n) {return Vector(repeat(n, function() {return 1}))}; -var states = ['s1', 's2', 's3', 's4', 's5', 's6', 's7', 's8', 'stop']; +var states = ['s1', 's2', 's3', 's4', 's5', 's6', 's7', 's8', 'STOP']; var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake'] var stateToObsModel = mem(function(state) { @@ -290,7 +288,7 @@ var stateToObsModel = mem(function(state) { }) var observation = function(state) { - return categorical({ps: stateToObsModel(state), vs: vocab}) + return (state == "START" ? 'START' : categorical({ps: stateToObsModel(state), vs: vocab})) } var stateToTransitionModel = mem(function(state) { @@ -302,12 +300,12 @@ var transition = function(state) { } var sampleWords = function(lastState) { - return (lastState == 'stop' ? - [] : + return (lastState == 'STOP' ? + [lastState] : [observation(lastState)].concat(sampleWords(transition(lastState)))); } -sampleWords('start') +sampleWords('START') ~~~~ @@ -317,6 +315,8 @@ The models above generate sequences of words, but lack constituent structure (or Probabilistic context-free grammars (PCFGs) are a straightforward (and canonical) way to generate sequences of words with constituent structure. There are many ways to write a PCFG in WebPPL. One especially direct way (inspired by Prolog programming) is to let each non-terminal be represented by a WebPPL function; here constituency is embodied by one procedure calling another---that is by causal dependence. +(Notice that we've dispensed with the `START` and `STOP` symbols. Why do they become unnecessary with this formalism?) + ~~~~ var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; diff --git a/exercises/05-observing-sequences.md b/exercises/05-observing-sequences.md index d74cf7e..212fdac 100644 --- a/exercises/05-observing-sequences.md +++ b/exercises/05-observing-sequences.md @@ -12,21 +12,25 @@ Let's consider a fragment of English consisting of only the words "dogs", "cats" HINT: In the partial code below, I set the 'onlyMAP' parameter for inference to 'true'. As a result, Infer() only returns the most likely (maximum a posteriori) result. You may find that this simplifies deriving the required distribution. To see what the consequences of 'onlyMAP' are, try setting it to 'false'. +HINT 2: Think carefully about whether you want to use `condition` or `factor`. + ~~~~ //Helper function to compare arrays var comparray = function(arr1,arr2){ return (JSON.stringify(arr1) === JSON.stringify(arr2)) } +var vocab = //TODO + var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) + var wordToDistribution = mem(function(word) { + return dirichlet(ones([vocab.length,1])) + }) - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } //TODO ... @@ -43,15 +47,17 @@ var comparray = function(arr1,arr2){ return (JSON.stringify(arr1) === JSON.stringify(arr2)) } -var mm = Infer({method:'MCMC', burn:10000, samples: 50000}, function() { +var vocab = //TODO + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) + var wordToDistribution = mem(function(word) { + return dirichlet(ones([vocab.length,1])) + }) - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } //TODO ... @@ -68,21 +74,23 @@ var comparray = function(arr1,arr2){ return (JSON.stringify(arr1) === JSON.stringify(arr2)) } -var mm = Infer({method:'MCMC', burn:10000, samples: 50000}, function() { +var vocab = //TODO + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) + var wordToDistribution = mem(function(word) { + return dirichlet(ones([vocab.length,1])) + }) - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } //TODO ... }) -viz(mm) +print(mm) ~~~~ ## Exercise 2: Hidden Markov Model @@ -95,15 +103,17 @@ var comparray = function(arr1,arr2){ return (JSON.stringify(arr1) === JSON.stringify(arr2)) } -var mm = Infer({method:'MCMC', burn:10000, samples: 50000}, function() { +var vocab = //TODO + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) + var wordToDistribution = mem(function(word) { + return dirichlet(ones([vocab.length,1])) + }) - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } //TODO ... diff --git a/solutions/.04.1-agents-as-programs.md b/solutions/.04.1-agents-as-programs.md new file mode 100644 index 0000000..7d69e7f --- /dev/null +++ b/solutions/.04.1-agents-as-programs.md @@ -0,0 +1,424 @@ +--- +layout: exercise +title: Agents as Probabilistic Programs - exercises +custom_js: +- assets/js/box2d.js +- assets/js/physics.js +--- + +## Exercise 1: Factors + +### a) + +*Take our standard coin-flipping model. Use `factor` to create a "soft" condition on the outcome being heads, such that there is an approx. 95% chance of heads.* + +```js +var dist = Infer({method: 'enumerate'}, + function () { + var A = flip() + factor(A*3) //edit this line + return A +}); +viz(dist) +``` + +![](Figures/agents-as-programs-1.png) + +This is actually quite close to 95%: + +`{"probs":[0.04742587317756678,0.9525741268224333],"support":[false,true]}` + + +### b) + +In this model, we flip 3 coins. Use `factor` to favor an outcome of 2 heads and 1 tails: + +```js +var softHeads = Infer({}, function() { + var a = flip(0.5); + var b = flip(0.5); + var c = flip(0.5); + factor(1*((a+b+c)==2)); + return a; + } +}); + +viz(softHeads); +``` + +![](Figures/agents-as-programs-2.png) + +## Exercise 2: The Ultimatum Game + +### a) + +*The ultimatum game requires two players: A proposer and a responder. The proposer has to decide how to allocate \$10 between the two players in \$1 increments. Once this proposal is made, the responder decides whether to accept the proposal. If the responder accepts, both players are awarded the money according to the proposal. If the responder rejects, neither player gets anything.* + +*If the responder was a strict utilitarian, s/he would accept any offer of \$1 or more. Assume the proposer is a soft maximizer who wants to keep as much of the \$10 as possible. Complete the code below to find out how much the proposer will offer:* + +~~~~ +var responder = function(offer) { + + return (offer>0 ? true : false); + +} + +var proposer = Infer({method: "enumerate"}, function(){ + + var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); + var reward = responder(offer) ? (10 - offer) : 0; + + factor(reward) + return(offer) + }) + +viz(proposer); +~~~~ + +![](Figures/agents-as-programs-3.png) + +### b) + +*People, it turns out, act very differently than the model above suggests. Responders will often reject low offers as "unfair", even though this means they get nothing. Assume that the responder decides whether to accept in proportion to the percentage of the \$10 allocated to her, raised to some power `alpha` (you can think of `alpha` as "spitefulness"). Complete the code below to determine how much the proposer should offer:* + +```js +var alpha = 2 + +var responder = function(offer, alpha) { + var p = Math.pow(offer/10,alpha) + return(flip(p)); +} + +var proposer = Infer({method: "enumerate"}, function(){ + var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); + var reward = responder(offer,alpha) ? (10 - offer) : 0; + factor(reward) + return(offer) + }) + +viz(proposer); +``` + +![](Figures/agents-as-programs-4.png) + +### c) + +*You can think of the variable `alpha` in the code above as encoding spitefulness: the degree to which the responder is willing to forego a reward in order to prevent the proposer from having a reward. See how setting `alpha` to 4, 6, 10, 25, and 50 affects what the proposer does. Explain the results.* + +~![](Figures/agents-as-programs-5-1.png) +~![](Figures/agents-as-programs-5-2.png) +~![](Figures/agents-as-programs-5-3.png) +~![](Figures/agents-as-programs-5-4.png) +~![](Figures/agents-as-programs-5-5.png) + +As alpha increases, the responder becomes increasingly unlikely to accept any offer less than \$10. Thus, no matter what the proposer offers, she'll probably end up with \$0. This makes her indifferent to the choice. + +### d) + +*The models above assume the proposer knows the responder's decision function. Let's soften that assumption: the proposer knows that the responder's value of `alpha` is somewhere on the range [0.5, 5]. Suppose the proposer offered \$2 and the responder rejects it. What is the most likely level of `alpha`?* + +(Hint: you may find it helpful to find a different place for `alpha` than within the definition of `responder`.) + +```js +var responder = function(offer, alpha) { + var p = Math.pow(offer/10,alpha) + return(flip(p)); +} + +var proposer = Infer({method: "MCMC", samples:50000}, function(){ + var alpha = uniform(0.5,5) + var offer = 2; + var reward = responder(offer, alpha) ? (10 - offer) : 0; + condition(reward==0) + return(alpha) +}) + +viz(proposer) +``` + +![](Figures/agents-as-programs-6.png) + + +### e) + +*Again, suppose the proposer offered \$2 and the responder rejected it. Suppose they are going to play a second round. How much should the proposer offer? How does this change if the first (rejected) offer was \$8?* + +Here is a straight-forward if not especially computationally-efficient model: + +```js +var responder = function(offer, alpha) { + var p = Math.pow(offer/10,alpha) + return(flip(p)); +} + +var proposer1 = Infer({method: "MCMC", samples:50000}, function(){ + var alpha = uniform(0.5,5) + var offer1 = 2 + var reward1 = responder(offer1, alpha) ? (10 - offer1): 0; + condition(reward1==0) + return(alpha) +}) + +var makeoffer = Infer({method: "forward", samples:1000}, function(){ + + var alpha2 = sample(proposer1) + + var proposer2 = Infer({method: "MCMC", samples:5000}, function(){ + var offer2 = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); + var reward2 = responder(offer2, alpha2) ? (10 - offer2) : 0 + factor(reward2) + return(offer2) + }) + + return sample(proposer2) +}); + +viz(makeoffer) +``` + +With offer1 = 2: + +![](Figures/agents-as-programs-7-1.png) + +With offer1 = 8: + +![](Figures/agents-as-programs-7-2.png) + +The differences are underwhelming. The reason is `factor(reward2)` actually puts a lot of pressure on the proposer getting a large payout. If we change `factor(reward2)` to `factor(Math.pow(reward2,1))`, we get more impressive differences. + +With offer1 = 2: + +![](Figures/agents-as-programs-7-3.png) + +With offer1 = 8: + +![](Figures/agents-as-programs-7-4.png) + +## Exercise 3: The Prisoner's Dilemma + +*In the prisoner's dilemma, two thieves work together on a bank heist. Afterwards, they are apprehended by the police. The police interrogate the thieves separately. They tell each thief that if she confesses, she will get a lenient sentence. If not, she will get 10 years. However, the thieves know that the police need at least one of them to confess; if neither of them confesses, the police don't have enough evidence to charge them, and they will both go free.* + +*What's the longest the lenient sentence can be (in round years) such that it makes sense for the thief to confess (that is, where she has a greater than 50% chance of confessing)? Use `factor(percentYearsFreedom)` where `percentYearsFreedom` is the percentage of the next 10 years the thief will not be in jail. (Assume that this incident has scared her straight and she will not commit any other crimes.)* + +```js +var thiefRats = function(){ + return (flip()? true: false) +} + +var lenient = 6 + +var thief = Infer({}, function(){ + var otherThiefRats = thiefRats(); + var IRat = thiefRats(); + var years = (otherThiefRats? + (IRat? lenient : 10) : + (IRat? lenient : 0)); + var percentYearsFreedom = (10-years)/10 + factor(percentYearsFreedom) + return(IRat) +}) + +viz(thief) +``` + +From trial-and-error, if the lenient sentence is 6 years, the thief should be indifferent. + +![](Figures/agents-as-programs-11.png) + +Alternatively, you can infer the correct answer as follows: + +```js +var sentences = RandomInteger({n:10}) + +var thiefRats = function(){ + return (flip()? true: false) +} + +var thief = Infer({}, function(){ + var LenientSentence = sample(sentences); + var iRat = thiefRats() + var uRat = thiefRats() + var percentYearsFreedom = 1 - (iRat ? LenientSentence/10 : (uRat ? LenientSentence/10 : 0)) + factor (1*(percentYearsFreedom > .5)) + return LenientSentence +}) + +viz(thief) +``` + +![](Figures/agents-as-programs-12.png) + +As you can see, we end up prefering lenient sentences no longer than 4 years. + +## Exercise 4: Exploring RSA + +For this exercise, modify the RSA model introduced in the main text as necessary. + +### a) + +*How does increasing the optimality of the speaker affect the pragmatic listener's inferences? Try a couple values and report the results.* + +For convenience, we turn `alpha` into a parameter: + +```js +// Here is the code from the Frank and Goodman RSA model + +// possible objects of reference +var meaningPrior = function() { + uniformDraw([ + {shape: "square", color: "blue"}, + {shape: "circle", color: "blue"}, + {shape: "square", color: "green"} + ]) +} + +// possible one-word utterances +var utterances = ["blue","green","square","circle"] + +// meaning function to interpret the utterances +var meaning = function(utterance, obj){ + (utterance === "blue" || utterance === "green") ? utterance === obj.color : + (utterance === "circle" || utterance === "square") ? utterance === obj.shape : + true +} + +// literal listener +var literalListener = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior(); + condition(meaning(utterance, obj)) + return obj + }}) +} + +// pragmatic speaker +var speaker = function(obj,alpha){ + Infer({model: function(){ + var utterance = uniformDraw(utterances) + factor(alpha * literalListener(utterance).score(obj)) + return utterance + }}) +} + +// pragmatic listener +var pragmaticListener = function(utterance,alpha){ + Infer({model: function(){ + var obj = meaningPrior() + observe(speaker(obj,alpha),utterance) + return obj + }}) +} + + +print("pragmatic listener's interpretation of 'blue', given alpha = 0.01:") +viz.table(pragmaticListener("blue", 0.01)) + +print("pragmatic listener's interpretation of 'blue', given alpha = 1:") +viz.table(pragmaticListener("blue", 1)) + +print("pragmatic listener's interpretation of 'blue', given alpha = 4:") +viz.table(pragmaticListener("blue", 4)) + +print("pragmatic listener's interpretation of 'blue', given alpha = 10:") +viz.table(pragmaticListener("blue", 10)) +``` + +![](Figures/agents-as-programs-8.png) + +As `alpha` increases, the pragmatic listener is increasingly likely to interpret `blue` as referring to the blue square. + +### b) + +*How do the inferences of $$L_{2}$$ compare to those of $$L_{1}$$?* + +```js +// Here is the code from the Frank and Goodman RSA model + +// possible objects of reference +var meaningPrior = function() { + uniformDraw([ + {shape: "square", color: "blue"}, + {shape: "circle", color: "blue"}, + {shape: "square", color: "green"} + ]) +} + +// possible one-word utterances +var utterances = ["blue","green","square","circle"] + +// meaning function to interpret the utterances +var meaning = function(utterance, obj){ + (utterance === "blue" || utterance === "green") ? utterance === obj.color : + (utterance === "circle" || utterance === "square") ? utterance === obj.shape : + true +} + +var alpha = 1 + +// literal listener +var literalListener = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior(); + condition(meaning(utterance, obj)) + return obj + }}) +} + +// pragmatic speaker +var speaker = function(obj){ + Infer({model: function(){ + var utterance = uniformDraw(utterances) + factor(alpha * literalListener(utterance).score(obj)) + return utterance + }}) +} + +// pragmatic listener +var pragmaticListener = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior() + observe(speaker(obj),utterance) + return obj + }}) +} + +// pragmatic speaker2 +var speaker2 = function(obj){ + Infer({model: function(){ + var utterance = uniformDraw(utterances) + factor(alpha * pragmaticListener(utterance).score(obj)) + return utterance + }}) +} + +// pragmatic listener #2 +var listener3 = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior() + observe(speaker2(obj),utterance) + return obj + }}) +} + +print("L1's interpretation of 'blue'") +viz.table(pragmaticListener("blue")) + +print("L2's interpretation of 'blue'") +viz.table(listener3("blue")) +``` + +![](Figures/agents-as-programs-9.png) + +There is little additional effect. + +### c) + +*Add a blue circle to the scenario. What happens to the interpretion of "blue"? Why?* + +It becomes 50/50 between 'blue circle' and 'blue square'. This is because 'blue' is now useful for distinguishing between the two circles as well. + +### d) + +*Is there any way to get “blue” to refer to something green? Why or why not?* + +In this model, the literal listener expects the speaker to tell the literal truth, albeit with some noise. So there is no way to prefer an interpretation that is literally false to one that is literally true. So we'd need to relax the assumption that the literal listener expects the speaker to always tell the truth. \ No newline at end of file diff --git a/solutions/.05-observing-sequences.md b/solutions/.05-observing-sequences.md new file mode 100644 index 0000000..6784ab0 --- /dev/null +++ b/solutions/.05-observing-sequences.md @@ -0,0 +1,344 @@ +--- +layout: exercise +title: Observing sequences - exercises +--- + + +## Exercise 1: What word comes next? + +a) *In human languages, certain words are more likely to follow others. "The" is more likely to be followed by "dog" than "rhino", and even less likely to be followed by "sings". * + +*Let's consider a fragment of English consisting of only the words "dogs", "cats", "chase", and "sleep". This fragment does not contain punctuation or capital letters. Now, suppose that somebody says, "dogs chase cats". Determine how likely "chase" is to be followed by each word in the vocabulary.* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + + let obs = ['dogs', 'chase', 'cats']; + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return []; + return [word].concat(generateSentence(word, sentence)); + } + + factor(comparray(obs, generateSentence('start'))) + + return transition('chase'); + +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-1.png) + +b) *Assume now that in addition to saying "dogs chase cats", your interlocutor said a second sentence. However, you only heard the first word, which again was "dogs". What is the distribution across likely second words in this sentence? NOTE: If you are not careful, you will end up assigning some probability to "undefined". Be careful.* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' + return [word].concat(generateSentence(word, sentence)); + } + + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[0] == 'dogs'); + return newSentence[1]; +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-2.png) + +c) *Suppose again that somebody said "dogs chase cats". Now suppose they spoke another sentence, where again the second word was "chase". Show that the most likely first word was "dogs". * + +```js +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' + return [word].concat(generateSentence(word, sentence)); + } + + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[1] == 'chase'); + return newSentence[0]; +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-3.png) + +## Exercise 2: Hidden Markov Model + +a) *Return to the model from Exercise 1b. Suppose that the second sentence, instead of beginning with "dogs", began with "cats". Provide the marginal distribution on the second word of that sentence.* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' + return [word].concat(generateSentence(word, sentence)); + } + + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[0] == 'cats'); + return newSentence[1]; +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-4.png) + +b) *In Exercise 2a, you should have found that an ungrammatical sequence like "cats cats" is as likely as a grammatical sequence like "cats sleep". Why is this?* + +The model hasn't observed anything other than 'stop' as following the word 'cats'. This implies that 'stop' is the most likely option, but also that the algorithm is totally indifferent towards all the other words -- since this is a language without grammar, all words are treated the same (they literally coexist as entries in a single list). + +c) *Let's try a hidden Markov model instead. Note that two of the words in our fragment of English are nouns ("dogs", "cats") and two are verbs ("chase", "sleep").* + +*Model sentence generation as involving Markov transitions between parts of speech, rather than between the words themselves. * + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var drawWord = function(pos){ + return (pos=="N") ? uniformDraw(['dogs','cats']) : + (pos=="V") ? uniformDraw(['chase','sleep']) : + 'stop' +} +var POS = ["N", "V", "stop"] + +var posToDistribution = mem(function(pos) { + return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) + }) + +var transition = function(pos) { + return categorical({ps: posToDistribution(pos), vs: POS}) + } + +let generateSentence = function(lastPOS) { + let nextPOS = transition(lastPOS); + let word = drawWord(nextPOS); + return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); +} + +var sentence = generateSentence("start"); +print(sentence) +``` + +d) *Try Exercise 2a, but using our new hidden Markov model. Show that we are now more likely to get the grammatical phrases "cats chase" or "cats sleep" than "cats cats" or "cats dogs".* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var drawWord = function(pos){ + return (pos=="N") ? uniformDraw(['dogs','cats']) : + (pos=="V") ? uniformDraw(['chase','sleep']) : + 'stop' +} +var POS = ["N", "V", "stop"] + +var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: false}, function() { + var posToDistribution = mem(function(pos) { + return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) + }) + + var transition = function(pos) { + return categorical({ps: posToDistribution(pos), vs: POS}) + } + + let generateSentence = function(lastPOS) { + let nextPOS = transition(lastPOS); + let word = drawWord(nextPOS); + return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); + } + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[0] == 'cats'); + return newSentence[1]; +}) + +viz(hmm) +``` + +![](Figures/sequences-of-observations-5.png) + +## Exercise 3: Phrase structure grammars + +a) *Extend your hidden Markov model from Exercise 2 so that our fragment of English additionally includes the determiners "the" and "a" as well as the adverb "diligently". Make "dogs", "cats", "chase", and "sleep" singular ("dog", "cat", "chases", "sleeps"). Condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* + +*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. + + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var drawWord = function(pos){ + return (pos=="N") ? uniformDraw(['dog','cat']) : + (pos=="V") ? uniformDraw(['chases','sleeps']) : + (pos=="D") ? uniformDraw(['the','a']) : + (pos=="A") ? 'dilligently' : + 'stop' +} +var POS = ["N", "V", "D", "A", "stop"] + +var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: true}, function() { + var posToDistribution = mem(function(pos) { + return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) + }) + + var transition = function(pos) { + return categorical({ps: posToDistribution(pos), vs: POS}) + } + + let generateSentence = function(lastPOS) { + let nextPOS = transition(lastPOS); + let word = drawWord(nextPOS); + return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); + } + let obs = ['the', 'dog', 'chases', 'a', 'cat', 'stop']; + + factor(comparray(obs, generateSentence('start'))*5) + + var sent1 = generateSentence('start'); + var sent2 = generateSentence('start'); + var sent3 = generateSentence('start'); + var sent4 = generateSentence('start'); + var sent5 = generateSentence('start'); + + return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} +}) + +print(hmm) +``` + +b) *Let us consider a phrase structure grammar for our English fragment instead, modeled on the one in Chapter 5. Again, condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* + +*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; + +var D = function() {return uniformDraw(['the', 'a'])}; +var N = function() {return uniformDraw(['cat', 'dog'])}; +var V = function() {return uniformDraw(['chases', 'sleeps'])} +var A = function() {return uniformDraw(['diligently'])} +var AP = function() {return uniformDraw([A()])} +var NP = function() {return [D(), N()]} +var VP = function() {return uniformDraw([[V(), AP()], + [V(), NP()]])} +var S = function() {return [NP(), VP()]} + +var psg = Infer({method:'MCMC', burn:10000, samples: 1000, onlyMAP: true}, function() { + let obs = [['the', 'dog'], ['chases', ['a', 'cat']]] + factor(comparray(obs, S())) + + + var sent1 = S(); + var sent2 = S(); + var sent3 = S(); + var sent4 = S(); + var sent5 = S(); + + return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} +}) + +print(psg) +``` + +c) *Which model produced better English sentences, the hidden Markov model in Exercise 3a or the phrase structure grammar model in Exercise 3b? Why do you suppose that is?* + +The phrase structure grammar produces much more sensible sentences, because it has a lot of prior knowlege about sentence structure. For instance, it is not capable of producing sentences with two articles in a row. + diff --git a/solutions/.05.1-sequential-decisions.md b/solutions/.05.1-sequential-decisions.md new file mode 100644 index 0000000..9df0e00 --- /dev/null +++ b/solutions/.05.1-sequential-decisions.md @@ -0,0 +1,407 @@ +--- +layout: exercise +title: "Sequential decisions" +description: "Markov Decision Processes and Partially-Observable Markof Decision Processes" +--- + +## Exercise 1 + +Consider our "line-world" example from the chapter: + +'''js +var ___ = ' '; +var D = { name: 'Donut' }; + +var grid = [ + ['___', '___', '___', '___', D] +]; + +var mdp = makeGridWorldMDP({ grid, start: [0, 0] }); + +var transition = function(state, action) { + return state + action; +}; + +var utility = function(state) { + if (state === 4) { + return 1; + } else { + return 0; + } +}; + +var makeAgent = function() { + var act = function(state, timeLeft) { + return Infer({ model() { + var action = uniformDraw([-1, 0, 1]); + var eu = expectedUtility(state, action, timeLeft); + factor(100 * eu); + return action; + }}); + }; + + var expectedUtility = function(state, action, timeLeft) { + var u = utility(state, action); + var newTimeLeft = timeLeft - 1; + if (newTimeLeft === 0) { + return u; + } else { + return u + expectation(Infer({ model() { + var nextState = transition(state, action); + var nextAction = sample(act(nextState, newTimeLeft)); + return expectedUtility(nextState, nextAction, newTimeLeft); + }})); + } + }; + + return { act }; +} + + +var act = makeAgent().act; + +var simulate = function(state, timeLeft){ + if (timeLeft === 0){ + return []; + } else { + var action = sample(act(state, timeLeft)); + var nextState = transition(state, action); + return [state].concat(simulate(nextState, timeLeft - 1)) + } +}; + +var startState = 0; +var totalTime = 5; +viz.gridworld(mdp.world, { trajectory : [mdp.startState] }); +print("Agent's trajectory: " + simulate(startState, totalTime)); +''' + +### a) +*Change the world such that it is a loop, i.e. moving right from state `4` moves to state `0`, and moving left from state `0` moves to state `4`. How does this change the agent's sequence of actions?* + +Edit `transition()` to: + +```js +var transition = function(state, action) { + var nextstate = state + action + return (nextstate < 0) ? 4 : + (nextstate > 4) ? 0 : + nextstate; +}; +``` + +Agent now moves left to arrive at Donut shopt in a single move. + +![](Figures/sequential-decisions-1.PNG) + + +### b) +*Change the agent's action space such that the agent can also move two steps at a time. How does this change the agent's sequence of actions?* + +Edit `act()` as follows: + +```js + var act = function(state, timeLeft) { + return Infer({ model() { + var action = uniformDraw([-2, -1, 0, 1, 2]); + var eu = expectedUtility(state, action, timeLeft); + factor(100 * eu); + return action; + }}); + }; +``` + +Agent now only requires two moves to reach donut shop. + +![](Figures/sequential-decisions-2.PNG) + +### c) +*Change the agent's utility function such that the agent moves as far as possible to the right, given its available total time.* + +Edit `utility()` as follows: + +```js +var utility = function(state) { + return state; +}; +``` + +Agent now moves right on every time step. This is easiest to see if we increase the total amount of time (e.g., `var totalTime = 7`): + +![](Figures/sequential-decisions-3.PNG) + +## Exercise 2 + +*Consider this "line-world" involving a cookie shop and a donut shop. Bob starts out in between the donut shop and the cookie shop. Assume you observe Bob go to the donut shop in 3 time steps. Edit the code above to write a model to *infer* Bob's utility function for cookies and donuts. Use any reasonable prior.* + +~~~~ +// Anything that doesn't involve random choices can be put outside of the model + +var ___ = ' '; +var D = { name: 'Donut' }; +var C = { name: 'Cookie' }; + + var grid = [ + [C, '___', '___', '___', '___', '___', D] + ]; + +var mdp = makeGridWorldMDP({ grid, start: [3, 0] }); + +var transition = function(state, action) { + return state + action; + }; + +var model = function() { + + let utilities = [sample(Uniform({a: 0, b: 10})), sample(Uniform({a: 0, b: 10}))] + var utility = function(state) { + return (state == 0) ? utilities[0] : + (state == 6) ? utilities[1] : + 0; + }; + + var makeAgent = function() { + var act = function(state, timeLeft) { + return Infer({ model() { + var action = uniformDraw([-1, 0, 1]); + var eu = expectedUtility(state, action, timeLeft); + factor(100 * eu); + return action; + }}); + }; + + var expectedUtility = function(state, action, timeLeft) { + var u = utility(state, action); + var newTimeLeft = timeLeft - 1; + if (newTimeLeft === 0) { + return u; + } else { + return u + expectation(Infer({ model() { + var nextState = transition(state, action); + var nextAction = sample(act(nextState, newTimeLeft)); + return expectedUtility(nextState, nextAction, newTimeLeft); + }})); + } + }; + + return { act }; + } + + var act = makeAgent().act; + + var simulate = function(state, timeLeft){ + if (timeLeft === 0){ + return []; + } else { + var action = sample(act(state, timeLeft)); + var nextState = transition(state, action); + return [state].concat(simulate(nextState, timeLeft - 1)) + } + }; + + var startState = 3; + var totalTime = 4; + let path = simulate(startState, totalTime); + condition(path[3] == 6); + return { + Cookie: utilities[0], + Donut: utilities[1] + } + } + +var post = Infer({method: 'MCMC', samples: 10000}, model) +viz(post); +~~~~ + +![](Figures/sequential-decisions-4.PNG) + +Rejection sampling also works pretty well. This is with only 1,000 samples: + +![](Figures/sequential-decisions-5.PNG) + +Either way, we infer that the utility for Donut is likely to be at least slightly higher than that of Cookie. + + +## Exercise 3 + +*Use the codebox below to explore different levels of softmax noise. Find a setting of `utilityTable` and `alpha` such that the agent goes to West and East equally often and nearly always takes the most direct route to both East and West. Included below is code for simulating many trajectories and returning the trajectory length. You may find it helpful to extend this code to measure whether the route taken by the agent is direct or not.* + +The following code is useful for iteratively adjusting the parameters until the desired result is found. + +```js +///fold: +var makeHikeMDP = function(options) { + var H = { name: 'Hill' }; + var W = { name: 'West' }; + var E = { name: 'East' }; + var ___ = ' '; + var grid = [ + [___, ___, ___, ___, ___], + [___, '#', ___, ___, ___], + [___, '#', W , '#', E ], + [___, ___, ___, ___, ___], + [ H , H , H , H , H ] + ]; + return makeGridWorldMDP(_.assign({ grid }, options)); +}; + +var mdp = makeHikeMDP({ + start: [0, 1], + totalTime: 13, + transitionNoiseProbability: 0.1 +}); + +var world = mdp.world; +var startState = mdp.startState; +var makeUtilityFunction = mdp.makeUtilityFunction; +viz.gridworld(world) +/// + + +var utilityTable = { + East: 10, + West: 5.91, + Hill: -10, + timeCost: -1 +} + +var alpha = 5; // <- SOFTMAX NOISE + +// Create parameterized agent +var utility = makeUtilityFunction(utilityTable); +var agent = makeMDPAgent({ utility, alpha }, world); + +var trajectories = Infer({model() { + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + return {locs} + }, + method: 'forward', + samples: 100000 +}); +viz.table(trajectories) +``` + +Note that the parameters given provide a nice result: + + + + +So we can definitely pick some values by trial and error. But that's boring. Let's infer it instead. The utility of West has to be less than the utility of East, or we'd never go to east. So let's fix the utility of East at 10 and find a value for West that is smaller. We'll also pick an alpha. Let's constrain it to between 0.1 and 6.0, just so we don't have too large of a space to search. + +Now, we'll factor an equal number of times on having gone straight to West and having gone straight to East. + +```js +var makeHikeMDP = function(options) { + var H = { name: 'Hill' }; + var W = { name: 'West' }; + var E = { name: 'East' }; + var ___ = ' '; + var grid = [ + [___, ___, ___, ___, ___], + [___, '#', ___, ___, ___], + [___, '#', W , '#', E ], + [___, ___, ___, ___, ___], + [ H , H , H , H , H ] + ]; + return makeGridWorldMDP(_.assign({ grid }, options)); +}; + +var mdp = makeHikeMDP({ + start: [0, 1], + totalTime: 13, + transitionNoiseProbability: 0.1 +}); + +var world = mdp.world; +var startState = mdp.startState; +var makeUtilityFunction = mdp.makeUtilityFunction; + +viz.gridworld(world) +var vals = Infer({ + model() { + var West = uniform({a: 1, b: 10}) + var utilityTable = { + East: 10, + West: West, + Hill: -10, + timeCost: -.1 + } + + // Create parameterized agent + var utility = makeUtilityFunction(utilityTable); + var alpha = uniform(0.1, 5); // <- SOFTMAX NOISE + var agent = makeMDPAgent({ utility, alpha }, world); + repeat(10, function(){ + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + factor(1*(locs == [[0,1],[1,1],[2,1],[2,2]])) + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + factor(1*(locs == [[0,1],[1,1],[2,1],[3,1],[4,1],[4,2]])) + }) + return {West: West, alpha: alpha} + }, + method: 'MCMC', + samples: 5000 +}); +repeat(10,function(){print(sample(vals))}) +``` + +![](Figures/sequential-decisions-6.PNG) + +We can see that a value of West near 9.0 and alpha near 0.4 tends to work. Let's confirm this through forward simulation + +```js +///fold: +var makeHikeMDP = function(options) { + var H = { name: 'Hill' }; + var W = { name: 'West' }; + var E = { name: 'East' }; + var ___ = ' '; + var grid = [ + [___, ___, ___, ___, ___], + [___, '#', ___, ___, ___], + [___, '#', W , '#', E ], + [___, ___, ___, ___, ___], + [ H , H , H , H , H ] + ]; + return makeGridWorldMDP(_.assign({ grid }, options)); +}; + +var mdp = makeHikeMDP({ + start: [0, 1], + totalTime: 13, + transitionNoiseProbability: 0.1 +}); + +var world = mdp.world; +var startState = mdp.startState; +var makeUtilityFunction = mdp.makeUtilityFunction; +viz.gridworld(world) +/// + + +var utilityTable = { + East: 10, + West: 3, + Hill: -10, + timeCost: -.1 +} + +var alpha = 0.4; // <- SOFTMAX NOISE + +// Create parameterized agent +var utility = makeUtilityFunction(utilityTable); +var agent = makeMDPAgent({ utility, alpha }, world); + +var trajectories = Infer({model() { + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + return {locs} + }, + method: 'forward', + samples: 10000 +}); +viz.table(trajectories) +``` \ No newline at end of file diff --git a/solutions/.07-inference-process.md b/solutions/.07-inference-process.md new file mode 100644 index 0000000..ab16246 --- /dev/null +++ b/solutions/.07-inference-process.md @@ -0,0 +1,471 @@ +--- +layout: exercise +title: Algorithms for Inference - exercises +description: MCMC, etc. +--- + +## Exercise 1. Sampling Implicit Curves + +In the code box below, the `curve` function defines a vaguely heart-shaped curve. Below, we use rejection sampling to sample points along the boundary of the curve. + +~~~~ +var curve = function(x, y) { + var x2 = x*x; + var term1 = y - Math.pow(x2, 1/3); + return x2 + term1*term1 - 1; +}; +var xbounds = [-1, 1]; +var ybounds = [-1, 1.6]; + +var xmu = 0.5 * (xbounds[0] + xbounds[1]); +var ymu = 0.5 * (ybounds[0] + ybounds[1]); +var xsigma = 0.5 * (xbounds[1] - xbounds[0]); +var ysigma = 0.5 * (ybounds[1] - ybounds[0]); + +var model = function() { + var x = gaussian(xmu, xsigma); + var y = gaussian(ymu, ysigma); + var c_xy = curve(x, y); + condition(Math.abs(c_xy) < 0.01); + return {x: x, y: y}; +}; + +var post = Infer({method: 'rejection', samples: 1000}, model); +viz.auto(post); +~~~~ + +### a) + +*Try using MCMC with the m-h recipe instead of rejection sampling. You'll notice that it does not fare as well as rejection sampling. Why not?* + +Once M-H finds a state with reasonable probability, its proposals are generally going to be states with much lower probability (since almost every state it very low probability in this model). Thus, it is going to tend to get stuck in place and rarely sample new states. In contrast, every accepted sample in rejection sampling is likely to be unique. This can be demonstrated with the following code + +~~~~ +///fold: +var curve = function(x, y) { + var x2 = x*x; + var term1 = y - Math.pow(x2, 1/3); + return x2 + term1*term1 - 1; +}; +var xbounds = [-1, 1]; +var ybounds = [-1, 1.6]; + +var xmu = 0.5 * (xbounds[0] + xbounds[1]); +var ymu = 0.5 * (ybounds[0] + ybounds[1]); +var xsigma = 0.5 * (xbounds[1] - xbounds[0]); +var ysigma = 0.5 * (ybounds[1] - ybounds[0]); + +var model = function() { + var x = gaussian(xmu, xsigma); + var y = gaussian(ymu, ysigma); + var c_xy = curve(x, y); + condition(Math.abs(c_xy) < 0.01); + return {x: x, y: y}; +}; +/// + +var postr = Infer({method: 'rejection', samples: 1000}, model); +var postm = Infer({method: 'MCMC', samples: 1000}, model); +print("Rejection sampling:") +print("Distinct locations sampled: " + Object.keys(postr.getDist()).length) +viz.auto(postr); + +print("Metropolis-Hastings sampling:") +print("Distinct locations sampled: " + Object.keys(postm.getDist()).length) +viz.auto(postm); +~~~~ + +![](Figures/inference-process-1.PNG) + +Metropolis-Hastings sampling: + +![](Figures/inference-process-2.PNG) + +### b) + +*How can you change the model (or the inference algorithm) to make MCMC successfully trace the curves? Note that there are multiple ways to approach this problem. Your solution should result in a graph that clearly traces a heart-shaped figure -- though it need not do quite as well as rejection sampling.* + +#### Solution #1: Find a better proposal distribution + +~~~~ +// Using multivariate gaussian +var curve = function(x, y) { + var x2 = x*x; + var term1 = y - Math.pow(x2, 1/3); + return x2 + term1*term1 - 1; +}; +var xbounds = [-1, 1]; +var ybounds = [-1, 1.6]; + +var xmu = 0.5 * (xbounds[0] + xbounds[1]); +var ymu = 0.5 * (ybounds[0] + ybounds[1]); +var xsigma = 0.5 * (xbounds[1] - xbounds[0]); +var ysigma = 0.5 * (ybounds[1] - ybounds[0]); + +var mu = Vector([xmu, ymu]); +var sigma = Vector([xsigma, ysigma]); + +var model = function() { + var xy = sample(DiagCovGaussian({mu: mu, sigma: sigma})); + var x = T.get(xy, 0); + var y = T.get(xy, 1); + var c_xy = curve(x, y); + condition(Math.abs(c_xy) < 0.01); + return {x: x, y: y}; +}; + +var post = Infer({method: 'MCMC', samples: 30000}, model); +viz.auto(post); +~~~~ + +![](Figures/inference-process-3.PNG) + +Notice that this still requires many, many more samples than does rejection sampling, and provides less accurate results. + +#### Solution #2: Use Hamiltonian MCMC + +~~~~ +// Solution 2: Using HMC +var curve = function(x, y) { + var x2 = x*x; + var term1 = y - Math.pow(x2, 1/3); + return x2 + term1*term1 - 1; +}; +var xbounds = [-1, 1]; +var ybounds = [-1, 1.6]; + +var xmu = 0.5 * (xbounds[0] + xbounds[1]); +var ymu = 0.5 * (ybounds[0] + ybounds[1]); +var xsigma = 0.5 * (xbounds[1] - xbounds[0]); +var ysigma = 0.5 * (ybounds[1] - ybounds[0]); + +var model = function() { + var x = gaussian(xmu, xsigma); + var y = gaussian(ymu, ysigma); + var c_xy = curve(x, y); + condition(Math.abs(c_xy) < 0.01); + return {x: x, y: y}; +}; + +var post = Infer({ + method: 'MCMC', + kernel: { HMC: { stepSize: 0.1, steps: 10 } }, + samples: 10000 +}, model); +viz.auto(post); +~~~~ + +![](Figures/inference-process-4.PNG) + +Notice that this still requires many, many more samples than does rejection sampling, and provides less accurate results. + + +## Exercise 2. Metropolis-Hastings Part 1 + +Recall our code from the chapter that implements an Metropolis-Hastings markov chain: + +```js +var p = 0.7 + +//the target distribution (not normalized): +//prob = 0 if x condition is violated, otherwise proportional to geometric distribution +var target_dist = function(x){ + return (x < 3 ? 0 : (p * Math.pow((1-p),(x-1)))) +} + +// the proposal function and distribution, +// here we're equally likely to propose x+1 or x-1. +var proposal_fn = function(x){ + return (flip() ? x - 1 : x + 1) +} +var proposal_dist = function (x1, x2){ + return 0.5 +} + +// the MH recipe: +var accept = function (x1, x2){ + let p = Math.min(1, (target_dist(x2) * proposal_dist(x2, x1)) / (target_dist(x1) * proposal_dist(x1,x2))) + return flip(p) +} +var transition = function(x){ + let proposed_x = proposal_fn(x) + return (accept(x, proposed_x) ? proposed_x : x) +} + +//the MCMC loop: +var mcmc = function(state, iterations){ + return ((iterations == 1) ? [state] : mcmc(transition(state), iterations-1).concat(state)) +} + +var chain = mcmc(3, 10000) // mcmc for conditioned geometric +viz.table(chain) +``` + +Notice that `chain` is a list of samples, *not* a WebPPL probability distribution object. `viz.table` helpfully compiles a probability distribution for us. However, other functions such as `viz.marginals` will not work, because they require a WebPPL probability distribution object. + +To see the difference, try running `print(chain)` and compare that to the output of running `print(post)` at the end of the code block for Exercise 1. + +Edit the code below to derive a WebPPL probability distribution object from `chain`. Prove that this works by running `viz.marginals()` on your distribution. + +HINT: The WebPPL function `Infer()` returns a probability distribution object. Can you find a way to use `Infer()` to sample from `chain`, thus returning a probability distribution object? + +```js +var p = 0.7 + +//the target distribution (not normalized): +//prob = 0 if x condition is violated, otherwise proportional to geometric distribution +var target_dist = function(x){ + return (x < 3 ? 0 : (p * Math.pow((1-p),(x-1)))) +} + +// the proposal function and distribution, +// here we're equally likely to propose x+1 or x-1. +var proposal_fn = function(x){ + return (flip() ? x - 1 : x + 1) +} +var proposal_dist = function (x1, x2){ + return 0.5 +} + +// the MH recipe: +var accept = function (x1, x2){ + let p = Math.min(1, (target_dist(x2) * proposal_dist(x2, x1)) / (target_dist(x1) * proposal_dist(x1,x2))) + return flip(p) +} +var transition = function(x){ + let proposed_x = proposal_fn(x) + return (accept(x, proposed_x) ? proposed_x : x) +} + +//the MCMC loop: +var mcmc = function(state, iterations){ + return ((iterations == 1) ? [state] : mcmc(transition(state), iterations-1).concat(state)) +} + +var chain = mcmc(3, 10000) // mcmc for conditioned geometric + +var post = Infer({method: 'forward'}, function(){ + return sample(Categorical({vs: chain})) +}) + +viz.marginals(post) +``` + +![](Figures/inference-process-6.PNG) + + +## Exercise 3. Metropolis-Hastings Part 2 + +Consider this very simple model that chooses `y` and `w` such that `-10 * w + y * (1 - w)` is as close as possible to `0`: + +~~~~ +var p = function(x,y,w){ + return Gaussian({mu: 0, sigma:0.1}).score(x*w + y*(1-w)) +} + +var mymodel = function(){ + var x = -10 + var y = uniform(-100,100) + var w = dirichlet(Vector([1,1])).data[0] + factor(p(x,y,w)) + return {y: y, w: w, s: x*w + y*(1-w)} +} + +var post = Infer({ + method: 'MCMC', + samples: 5000, + lag: 100, +}, mymodel); + +viz.marginals(post) +~~~~ + +By looking at the marginal distribution of `s`, we can see that `Infer()` tends to choose values of `y` and `w` that satisfy our condition. + +### a) + +*Try re-writing the model to use rejection sampling. Note that you will need to find a way to turn the `factor` statement into a `condition` statement (Hint: See Exercise #1). Is using rejection sampling here a good idea? Why or why not?* + +Here is a version of the code using rejection sampling: + +~~~~ +var p = function(x,y,w){ + return Math.abs(x*w + y*(1-w)) < .01 +} + +var mymodel = function(){ + var x = -10 + var y = uniform(-100,100) + var w = dirichlet(Vector([1,1])).data[0] + condition(p(x,y,w)) + return {y: y, w: w, s: x*w + y*(1-w)} +} + +var post = Infer({ + method: 'rejection', + samples: 1000, +}, mymodel); + +viz.marginals(post) +~~~~ + +This is a bad idea, though. The problem is that the range of `y` is extremely wide and our prior is uniform. As a result, random samples from the prior are almost always rejected. + +### b) + +*Describe a proposal distribution that you could use for Metropolis-Hastings inference for this model. Show that it satisfies the necessary conditions.* + +We'll use a multivariate Gaussian centered on the current state, and with a reasonable-sized sigma. That is, too large of a sigma and proposals will usually be rejected. Too small of a sigma and it will take too long to traverse the stationary distribution. + +Showing detailed balance is straightforward: + +$$p(x)\pi(x \rightarrow x') =? \space p(x')\pi(x' \rightarrow x)$$ + +$$\rightarrow p(x) \min\left(1, \frac{p(x')q(x'\rightarrow x)}{p(x)q(x\rightarrow x')}\right) =? \space p(x') \min\left(1, \frac{p(x)q(x\rightarrow x')}{p(x')q(x'\rightarrow x)}\right)$$ + +Importantly, the proposal distribution is symmetric for `x` and `x'`, this reduces to + +$$\rightarrow p(x) \min\left(1, \frac{p(x')}{p(x)}\right) =? \space p(x') \min\left(1, \frac{p(x)}{p(x')}\right)$$ + +Suppose that $$p(x) > p(x')$$. This gives us: + +$$p(x) \frac{p(x')}{p(x)} =? \space p(x') * 1$$ + +$$\rightarrow p(x') == p(x')$$ + +which is what we wanted. It is straightforward to show that the equation also holds when $$p(x) \lt p(x')$$ and when $$p(x) == p(x')$$. + +### c) + +Edit the code below to implement your Metropolis-Hastings recipe. Use `viz.marginals` to show that it reliably chooses values of `y` and `w` that satisfy the condition. + +~~~~ +var x = -10 // Fix this variable. + +// target distribution +var target_dist = function(state){ + var y = state[0] + var w = state[1] + return (y < -100 || y > 100 || w < 0 || w > 1) ? 0 : + Math.exp(Gaussian({mu: 0, sigma:1}).score(x*w + y*(1-w))) +} + +// the proposal function and distribution, +var proposal_fn = function(state){ + var y = state[0] + var w = state[1] + var aprop = sample(DiagCovGaussian({mu: Vector([y, w]), sigma: Vector([3, .2])})) + return [aprop.data[0], aprop.data[1]] +} +var proposal_dist = function (state1, state2){ + return Math.exp(DiagCovGaussian({mu: Vector(state1), sigma: Vector([3, .2])}).score(Vector(state2))) +} + +// the MH recipe: +var accept = function (state1, state2){ + let p = Math.min(1, (target_dist(state2) * proposal_dist(state2, state1)) + / (target_dist(state1) * proposal_dist(state1,state2))) + return flip(p) +} +var transition = function(state){ + let proposed_state = proposal_fn(state) + return (accept(state, proposed_state) ? proposed_state : state) +} + +//the MCMC loop: +var mcmc = function(state, iterations){ + var y = state[0] + var w = state[1] + var s = x*w + y*(1-w) + var stateobj = {y: y, w: w, s: s} + return ((iterations == 1) ? [stateobj] : mcmc(transition(state), iterations-1).concat(stateobj)) +} + + +var chain = mcmc([0,.5], 5000) + +var post = Infer({method: 'forward'}, function(){ + return sample(Categorical({vs: chain})) +}) + +viz.marginals(post) +~~~~ + +![](Figures/inference-process-5.PNG) + +## Exercise 4. Topic models + +### a) + +In the model below, we are presented with six very boring texts. Implement a topic model that will infer the probability distribution across words for each of two topics. + +~~~~ +var vocabulary = ['DNA', 'evolution', 'parsing', 'phonology']; +var eta = ones([vocabulary.length, 1]) + +var numTopics = 2 +var alpha = ones([numTopics, 1]) + +var corpus = [ + 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), + 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), + 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), + 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' '), + 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' '), + 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' ') +] + +var model = function() { + + var topics = repeat(numTopics, function() { + return T.toScalars(dirichlet({alpha: eta})) + }) + + mapData({data: corpus}, function(doc) { + var topicDist = dirichlet({alpha: alpha}) + mapData({data: doc}, function(word) { + var z = sample(Discrete({ps: topicDist})) + var topic = topics[z] + observe(Categorical({ps: topic, vs: vocabulary}), word) + }) + }) + + return topics +} + +var results = Infer({method: 'MCMC', samples: 20000}, model) + +//plot expected probability of each word, for each topic: +print("Topic 1:") +viz.bar(vocabulary, map(function(i) {return expectation(results, function(v) {return v[0][i]})}, _.range(vocabulary.length))) +print("Topic 2:") +viz.bar(vocabulary, map(function(i) {return expectation(results, function(v) {return v[1][i]})}, _.range(vocabulary.length))) +~~~~ + +You should find that one topic loads primarily on "DNA" and "evolution": + +![](Figures/inference-process-8.PNG) + +Whereas he other loads primarily on "parsing" and "phonology": + +![](Figures/inference-process-7.PNG) + +Which is which will vary across runs. + +### b) + +*Run your code from (a) several times. You should see that sometimes Topic 1 favors the words 'DNA' and 'evolution' and Topic 2 favors 'parsing' and 'phonology'. Other times, this is reversed, with Topic 1 favoring 'parsing' and 'phonology' and Topic 2 favoring 'DNA' and 'evolution'. Why is this?* + +There is nothing special about the labels "Topic 1" and "Topic 2". It is no more likely for "Topic 1" to be the "biology" topic than for it to be the "linguistics" topic. Sometimes, inference finds one solution. Sometimes, it finds the other. + +### c) + +*If we ran MCMC on the model in (a) for an infinite amount of time, we would no longer see a distinction between Topic 1 and Topic 2. Why?* + +Although any given high-probability sapmle should result in the two topics splitting the vocabulary ("DNA" and "Evolution" in one topic, "parsing" and "phonology" in the other), it is no more likely that Topic 1 should be the "biology" topic than be the "linguistics" topic. So in expectation, everything should wash out. This is called **label degeneracy**. + +*Given the answer to that question, why does our model in (a) seem to work* + +The probability distribution for this model has two modes (high-probability regions of parameter space): One in which Topic 1 is the "biology" topic and Topic 2 is in the "linguistics" topic, and one in which these are reversed. + +Getting from one mode to the other requires a very large change in the parameters. If Metropolis-Hastings is implemented correctly, it is *possible* for the chain to move from one mode to the other, but it is pretty unlikely. Our chain was probably not run long enough to have a reasonable chance of exploring both modes. Instead, it finds one and stays there for the duration. *Which* one it finds is random, which explains (b) above. a \ No newline at end of file diff --git a/solutions/.08-learning-as-conditional-inference.md b/solutions/.08-learning-as-conditional-inference.md new file mode 100644 index 0000000..42e22b4 --- /dev/null +++ b/solutions/.08-learning-as-conditional-inference.md @@ -0,0 +1,440 @@ +--- +layout: exercise +title: learning - exercises +--- + +## 1. Calculating learning curves + +#### a) + +How does a *learning curve* differ from a *learning trajectory*? + +*A learning curve depicts how much one knows as a function of experience. A learning trajectory depicts how one's beliefs change as a function of experience.* + +#### b) + +In the chapter, we graphed *learning trajectories* for a number of models. Below is one of these models (the one with the Beta(10,10) prior). In the chapter, we observed how the model's best guess as to the weight of the coin changed across a sequence of sucessive heads. See what happens if instead we see heads and tails in alternation: + +(Notice that we make use of [globalStore](https://webppl.readthedocs.io/en/master/globalstore.html) to create our data set.) + +~~~~js +///fold: +var makeCoin = function(weight) { + return function() { + return flip(weight) ? 'h' : 't'; + } +}; +/// + +var pseudoCounts = {a: 10, b: 10}; + +var weightPosterior = function(observedData){ + return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { + var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) + var coinDist = Bernoulli({p: coinWeight}) + var obsFn = function(datum){observe(coinDist, datum=='h')} + mapData({data: observedData}, obsFn) + return coinWeight + }) +} + +//creating 50 pairs of 'h' and 't' alternating +globalStore.fullDataSet = ['h', 't'] +var ignore = repeat(49, function(){ + globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) +}); + +var observedDataSizes = [0,2,4,6,8,10,20,30,40,50,70,100]; +var estimates = map(function(N) { + return expectation(weightPosterior(globalStore.fullDataSet.slice(0,N))) +}, observedDataSizes); +viz.line(observedDataSizes, estimates); +~~~~ + +It looks like we haven't learned anything! Indeed, since our best estimate for the coin's weight was 0.5 *prior* to observing anything, our best estimate is hardly going to change when we get data consistent with that prior. + +The problem is that we've been looking at the MAP (maximum a posteriori) estimate. Edit the code below to see whether our posterior *distribution* is at all changed by observing this data set. (You only need to compare the prior and the posterior after all 100 observations): + +~~~~js +///fold: +var makeCoin = function(weight) { + return function() { + return flip(weight) ? 'h' : 't'; + } +}; + +var pseudoCounts = {a: 10, b: 10}; + +//creating 50 pairs of 'h' and 't' alternating +globalStore.fullDataSet = ['h', 't'] +var ignore = repeat(49, function(){ + globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) +}); +/// + +var weightPosterior = function(observedData){ + return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { + var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) + var coinDist = Bernoulli({p: coinWeight}) + var obsFn = function(datum){observe(coinDist, datum=='h')} + mapData({data: observedData}, obsFn) + return coinWeight + }) +} + +var prior = Beta(pseudoCounts) +var post = weightPosterior(globalStore.fullDataSet) + +viz(prior); //should graph the prior distribution on weights +viz(post); //should graph the posterior distribution on weights +~~~~ + +![](Figures/learning-as-inference-1.PNG) + +#### c) + +Ideally, we'd like to see how our belief distribution shifts as more data comes in. A particularly good measure would be entropy. Unfortunately, calculating entropy for a Beta distribution is [somewhat involved](https://en.wikipedia.org/wiki/Beta_distribution#Quantities_of_information_(entropy)). + +A somewhat hacky alternative we can use is variance: the expected squared difference between a sample from the distribution and the distribution mean. This is hacky because it doesn't take into account the shape of the distribution, and so won't give us quite what we want if the distribution is non-symmetric. + +Edit the code below to see how variance changes as more data is observed. + +~~~~js +///fold: +var makeCoin = function(weight) { + return function() { + return flip(weight) ? 'h' : 't'; + } +}; + +var pseudoCounts = {a: 10, b: 10}; + +var weightPosterior = function(observedData){ + return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { + var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) + var coinDist = Bernoulli({p: coinWeight}) + var obsFn = function(datum){observe(coinDist, datum=='h')} + mapData({data: observedData}, obsFn) + return coinWeight + }) +} + +//creating 256 pairs of 'h' and 't' alternating +globalStore.fullDataSet = ['h', 't'] +var ignore = repeat(499, function(){ + globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) +}); +/// + +var observedDataSizes = [0,2,4,8,16,32,64,128,256,512]; +var posts = map(function(N) { + return weightPosterior(globalStore.fullDataSet.slice(0,N)) +}, observedDataSizes); +// returns an array of posteriors of length observedDataSizes.length + +var variances = mapN(function(i){ + var mymean = expectation(Infer({method: 'forward', samples:1000}, function(){ + return sample(posts[i]) + })) + var variance = expectation(Infer({method: 'forward', samples:1000}, function(){ + return Math.pow(sample(posts[i]) - mymean,2) + })) + return(variance) +}, observedDataSizes.length) + +viz.line(observedDataSizes, variances); +~~~~ + +![](Figures/learning-as-inference-2.PNG) + +## 2. Causal Power + +Consider our model of causal power from the chapter: + +~~~~js +var observedData = [{C:true, E:false}] + +var causalPowerPost = Infer({method: 'MCMC', samples: 10000, lag:2}, function() { + // Causal power of C to cause E + var cp = uniform(0, 1) + + // Background probability of E + var b = uniform(0, 1) + + var obsFn = function(datum) { + // The noisy causal relation to get E given C + var E = (datum.C && flip(cp)) || flip(b) + condition( E == datum.E) + } + + mapData({data: observedData}, obsFn) + + return {causal_power: cp, background: b} +}); + +viz.marginals(causalPowerPost); +~~~~ + +#### a) + +Find a set of observations that result in inferring a fairly high causal power for C and a low background probability of E. Explain why this works. + +```js +var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:false, E:false},{C:false, E:false},{C:false, E:false}] +``` + +![](Figures/learning-as-inference-3.PNG) + +*The fact that we never observe E even in the absence of C suggests a low baserate of E. Given that, and the fact that we do see E when C is present suggests a high causal power for C.* + +#### b) + +Find a set of observations that result in inferring a fairly low causal power for C and a high background probability of E. Explain why this works. + +```js +var observedData = [{C:true, E:false},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}] +``` + +*We frequently see E regardless of the presence of C, suggesting a high background rate. The only time we didn't observe E was the one time C was actually present, suggesting low causal power for C.* + +![](Figures/learning-as-inference-5.PNG) + +#### c) + +Find a set of observations that result in inferring a fairly high causal power for C and a high background probability of E. Explain why this works. + +```js +var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true}] +``` + +*One option is to observe C a number of times with E present. This is ambiguous between a high causal power for C and a high background rate of E, so both are considered reasonably likely.* + +![](Figures/learning-as-inference-6.PNG) + +#### d) + +Suppose every time C is present, so is the effect E. Suppose C is present at least 5 times. Is there a way to nonetheless fail to infer a high causal power for C? + +*Yes, given enough times observing E even in the absence of C:* + +```js +var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, + {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}]; +``` + +![](Figures/learning-as-inference-4.PNG) + +## 3. Inferring Functions + +Consider our model of function inference from the chapter: + +~~~~js +///fold: +// make expressions easier to look at +var prettify = function(e) { + if (e == 'x' || _.isNumber(e)) { + return e + } else { + var op = e[0] + var arg1 = prettify(e[1]) + var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') + var arg2 = prettify(e[2]) + var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') + return prettyarg1 + ' ' + op + ' ' + prettyarg2 + } +} + +var plus = function(a,b) { + return a + b; +} + +var multiply = function(a,b) { + return Math.round(a * b,0); +} + +var divide = function(a,b) { + return Math.round(a/b,0); +} + +var minus = function(a,b) { + return a - b; +} + +var power = function(a,b) { + return Math.pow(a,b); +} + +// make expressions runnable +var runify = function(e) { + if (e == 'x') { + return function(z) { return z } + } else if (_.isNumber(e)) { + return function(z) { return e } + } else { + var op = (e[0] == '+') ? plus : + (e[0] == '-') ? minus : + (e[0] == '*') ? multiply : + (e[0] == '/') ? divide : + power; + var arg1Fn = runify(e[1]) + var arg2Fn = runify(e[2]) + return function(z) { + return op(arg1Fn(z),arg2Fn(z)) + } + } +} + +var randomConstantFunction = function() { + return uniformDraw(_.range(10)) +} + +var randomCombination = function(f,g) { + var op = uniformDraw(['+','-','*','/','^']); + return [op, f, g]; +} + +// sample an arithmetic expression +var randomArithmeticExpression = function() { + if (flip(0.3)) { + return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) + } else { + if (flip()) { + return 'x' + } else { + return randomConstantFunction() + } + } +} +/// + +viz.table(Infer({method: 'enumerate', maxExecutions: 100}, function() { + var e = randomArithmeticExpression(); + var s = prettify(e); + var f = runify(e); + + condition(f(0) == 0) + condition(f(2) == 4) + + return {s: s}; +})) +~~~~ + +Why does this think the probability of `x * 2` is so much lower than `x * x`? + +HINT: Think about the probability assigned to `x ^ 2`. + +*The two expressions differ in the final draw from the recursive function `randomArithmeticExpression`. On each step through the function, there is a 0.3 * 0.5 = 0.15 chance of returning `x`, but only a 0.3 * 0.5 * 0.1 = 0.015 chance of drawing `2`.* + +#### b) + +Let's reconceptualize of our program as a sequence-generator. Suppose that the first number in the sequence ($$f(1)$$) is `1` and the second number ($$f(2)$$) is `4`. What number comes next? + +~~~~js +///fold: +// make expressions easier to look at +var prettify = function(e) { + if (e == 'x' || _.isNumber(e)) { + return e + } else { + var op = e[0] + var arg1 = prettify(e[1]) + var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') + var arg2 = prettify(e[2]) + var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') + return prettyarg1 + ' ' + op + ' ' + prettyarg2 + } +} + +var plus = function(a,b) { + return a + b; +} + +var multiply = function(a,b) { + return Math.round(a * b,0); +} + +var divide = function(a,b) { + return Math.round(a/b,0); +} + +var minus = function(a,b) { + return a - b; +} + +var power = function(a,b) { + return Math.pow(a,b); +} + +// make expressions runnable +var runify = function(e) { + if (e == 'x') { + return function(z) { return z } + } else if (_.isNumber(e)) { + return function(z) { return e } + } else { + var op = (e[0] == '+') ? plus : + (e[0] == '-') ? minus : + (e[0] == '*') ? multiply : + (e[0] == '/') ? divide : + power; + var arg1Fn = runify(e[1]) + var arg2Fn = runify(e[2]) + return function(z) { + return op(arg1Fn(z),arg2Fn(z)) + } + } +} + +var randomConstantFunction = function() { + return uniformDraw(_.range(10)) +} + +var randomCombination = function(f,g) { + var op = uniformDraw(['+','-','*','/','^']); + return [op, f, g]; +} + +// sample an arithmetic expression +var randomArithmeticExpression = function() { + if (flip(0.3)) { + return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) + } else { + if (flip()) { + return 'x' + } else { + return randomConstantFunction() + } + } +} +/// + +viz.table(Infer({method: 'enumerate', maxExecutions: 10000}, function() { + var e = randomArithmeticExpression(); + var s = prettify(e); + var f = runify(e); + + condition(f(1) == 1) + condition(f(2) == 4) + + return {'f(3)':f(3)}; +})) +~~~~ + +Not surprisingly, the model predicts `9` as the most likely next number. However, it also puts significant probability on `27`. Why does this happen? + +*These results are largely due to the high probability of the functions `x * x` and `x ^ x`, which return give `9` and `27` for `f(3)`, respectively.* + +#### c) + +Many people find the high probability assignmed by our model in (b) to `27` to be unintuitive. This suggests our model is an imperfect model of human intuitions. How could we decrease the probability of inferring `27`? (HINT: Consider the priors). + +*Currently, each function (`*`, `^`, `+`) is equally likely (they are drawn from a uniform distriution). We could decrease the probability of the latter function by decreasing the probability of drawing `^`. It seems reasonable that people are less likely to consider sequences made from powers, though this would need to be tested.* \ No newline at end of file diff --git a/solutions/.09-hierarchical-models.md b/solutions/.09-hierarchical-models.md new file mode 100644 index 0000000..c913ee0 --- /dev/null +++ b/solutions/.09-hierarchical-models.md @@ -0,0 +1,211 @@ +--- +layout: exercise +title: Hierarchical models +description: The power of abstraction. +--- + +## Exercise 1: Pseudocounts + +The main text states that you can think of the Dirichlet parameter $$\alpha = [\alpha_1, \alpha_2, ..., \alpha_n]$$ "as a kind of prior" over categories $$[A_1, A_2, ..., A_n]$$. α is not a prior in the usual sense, since it is not a probability distribution. What α represents instead is a virtual observation. Thus if $$\alpha = [2, 2, 1]$$, that is the equivalent of having already observed the first category and second category twice each, and the third category one time only. + +Complete the code below to prove that setting $$\alpha = [2, 3, 1, 1, 1]$$ is equivalent to setting $$\alpha = [1, 1, 1, 1, 1]$$ and then observing the first category once and the second category twice: + +~~~~js +var colors = ['black', 'blue', 'green', 'orange', 'red']; + +var observedData = [ +{bag: 'bag1', draw: 'blue'}, +{bag: 'bag1', draw: 'blue'}, +{bag: 'bag1', draw: 'black'}] + +var observed = Infer({method: 'MCMC', samples: 20000}, function(){ + var makeBag = mem(function(bag){ + var colorProbs = T.toScalars(dirichlet(ones([colors.length, 1]))) + return Categorical({vs: colors, ps: colorProbs}) + }) + + var obsFn = function(datum){ + observe(makeBag(datum.bag), datum.draw) + } + + mapData({data: observedData}, obsFn) + + return {bag1: sample(makeBag('bag1'))} +}) + +viz.marginals(observed) + +var usealpha = Infer({method: 'forward', samples: 20000}, function(){ + var makeBag = mem(function(bag){ + var colorProbs = T.toScalars(dirichlet(Vector([2,3,1,1,1]))) + return Categorical({vs: colors, ps: colorProbs}) + }) + + return {bag1: sample(makeBag('bag1'))} +}) + +viz.marginals(usealpha) +~~~~ + +## Exercise 2: Rotten apples + +On any given day, a given grocery store has some number of apples for sale. Some of these apples may be mushy or even rotten. The probability that each apple is rotten is not independent: a ripening fruit emits chemicals that encourages other fruit to ripen as well. As they say, [one rotten apple spoils the whole barrel](https://idiomation.wordpress.com/2013/03/27/one-bad-apple-spoils-the-whole-barrel/). + +For each apple in a barrel, assume the probability that the apple is rotten is `flip(p)` where `p` is drawn from some prior. An appropriate prior distribution is Beta. Recall that the Beta distribution is just a Dirichlet that returns a vector of length one. So it, too, is defined based on pseudocounts `[a, b]`. Thus `Beta({a: 10, b: 2})` returns the equivalent of a Beta distribution conditioned on having previously seen 10 heads and 2 tails. + +To get a sense of the Beta distribution, run the following code: + +~~~~js +viz(Beta({a: 1, b: 1}) +viz(Beta({a: 10, b: 1}) +viz(Beta({a: 1, b: 10}) +viz(Beta({a: .1, b: .2}) +~~~~ + +Note that the final example gives a very nice prior for our apples: most of the time, the probability of a rotten apple is quite low. The rest of the time, the probability is very high. Middling probabilities are rare. + +#### a) + +Write a function `makeBarrel` that returns a function (a 'barrel') that takes a single argument *N* and returns a vector representing the rottenness of *N* apples from that barrel (where `true` is rotten and `false` is not rotten). That is, the following code: + +```norun +var abarrel = makeBarrel('b') +abarrel(5) +``` + +should return something like `[true, true, true, false, true]`. + +Complete the following codebox: + +~~~~js +var makeBarrel = mem(function(barrel){ + var p = beta({a: .1, b: .2}) + + return function(N){ + return repeat(N, function() {flip(p)}) + } +}) + +var post = Infer({method: 'forward'}, function(){ + var abarrel = makeBarrel('b') + return Math.sum(abarrel(10)) +}) +viz(post) +~~~~ + +#### b) + +Some grocery stores have fresher produce than others. So let's create a function `makeStore` that returns a makeBarrel function, which works as it did in (a). Importantly, each store has its own Beta parameters `[a, b]` drawn from some prior. + +HINT: In order to maintain the likelihood that in a given barrel, either most of the apples are rotten or few are, you need to ensure that `a < 1` and `b < 1`. However, if `a` is much larger than `b` (or vice versa), you will get extreme results with *every* apple being rotten or *every* apple being good. + +~~~~js +var makeStore = mem(function(store){ + var prior = flip() ? [.1, .3] : [.3, .1] + + var makeBarrel = mem(function(barrel){ + var p = beta({a: prior[0], b: prior[1]}) + + return function(N){ + return repeat(N, function() {flip(p)}) + } + }) + + return makeBarrel +}) + +viz(Infer({method: 'forward', samples:10000}, function(){ + var S = makeStore('S') + var B1 = S('B1') + var B2 = S('B2') + return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) +})) + +viz(Infer({method: 'forward', samples:10000}, function(){ + var S1 = makeStore('S1') + var S2 = makeStore('S2') + var B1 = S1('B1') + var B2 = S2('B2') + return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) +})) +~~~~ + +#### c) + +We can keep going. Some cities are located in apple country and thus have more access to fresh apples. Most stores in those cities are going to mostly have good barrels with good apples. Other cities have less access to fresh apples, and so more of their stores will have bad barrels with rotten apples. + +In the code block below, create a `makeCity` function, which returns a `makeStore` function, which works as in (b). In (b), each store had a prior on `[a, b]`. Let's put a prior on *that* prior, such that cities either tend to have good stores or tend to have bad stores. + +NOTE: Again, it is not necessary to be overly fancy with these priors. + +~~~~js +var makeCity = mem(function(city){ + var hprior = beta({a: .25, b: .25}) + + var makeStore = mem(function(store){ + var prior = flip(hprior) ? [.1, .3] : [.3, .1] + + var makeBarrel = mem(function(barrel){ + var p = beta({a: prior[0], b: prior[1]}) + + return function(N){ + return repeat(N, function() {flip(p)}) + } + }) + + return makeBarrel + }) + + return makeStore +}) + +var C1 = makeCity("C1") +var S1 = C1("S1") +var B1 = S1("B1") + +viz(Infer({method: 'forward'}, function(){ + return Math.sum(B1(10)) +})) +//repeat to see different kinds of cities +~~~~ + +#### d) + +Suppose you go to a store in a city. The store has a barrel of 10 apples, 7 of which are rotten. You leave and go to another store in the same city. It also has has a barrel with 10 apples. Using your code above, how many of these apples are likely to be rotten? + +~~~~js +var makeCity = mem(function(city){ + var hprior = beta({a: .25, b: .25}) + + var makeStore = mem(function(store){ + var prior = flip(hprior) ? [.1, .3] : [.3, .1] + + var makeBarrel = mem(function(barrel){ + var p = beta({a: prior[0], b: prior[1]}) + + return function(N){ + return repeat(N, function() {flip(p)}) + } + }) + + return makeBarrel + }) + + return makeStore +}) + +var amod = Infer({method: 'MCMC', samples:5000, lag: 100}, function(){ + var C = makeCity("C") + var S1 = C("S1") + var B1 = S1("B1") + + condition(Math.sum(B1(10)) == 7) + + var S2 = C("S2") + var B2 = S2("B2") + + return Math.sum(B2(10)) +}) + +viz(amod) +~~~~ \ No newline at end of file diff --git a/solutions/.14-bayesian-data-analysis.md b/solutions/.14-bayesian-data-analysis.md new file mode 100644 index 0000000..80d8adb --- /dev/null +++ b/solutions/.14-bayesian-data-analysis.md @@ -0,0 +1,373 @@ +--- +layout: exercise +title: Bayesian Data Analysis - solutions +custom_js: +- assets/js/towData.js +- assets/js/towConfigurations.js +--- + +## Exercise 1: Experimenting with priors and predictives + +### a) + +> Try different beta priors on `p`, by changing `priorDist = Uniform(...)` to `p = Beta({a: 10,b: 10})`, `Beta({a: 1, b: 5})` and `Beta({a: 0.1, b: 0.1})`. +> (Note that `beta(1,1)` is mathematically the same as `uniform(0,1)`.) +> Use the figures produced to describe the assumptions these priors capture, and how they interact with the same data to produce posterior inferences and predictions. + +`a` can intuitively be thought of as the number of tails flips we've seen before, and `b` as the number of heads flips. If `a` is greater than `b`, the distribution will be skewed to the left. If those numbers are less than `1`, we have strong intuitions against 50-50. + +### b) + +> In the current simple binomial setting, for example, predictive distributions could be found by an experiment that is different because it has `n' != n` observations. +> Change the model to implement an example of this. + +~~~~ +// observed data +var k = 1 // number of successes +var n = 20 // number of attempts +var new_n = 5 // number of attempts in the followup experiment +var priorDist = Beta({a: 1, b: 1}); + +var model = function() { + var p = sample(priorDist); + + // Observed k number of successes, assuming a binomial + observe(Binomial({p : p, n: n}), k); + + // sample from binomial with updated p + var posteriorPredictive = binomial(p, new_n); + + // sample fresh p (for visualization) + var prior_p = sample(priorDist); + // sample from binomial with fresh p (for visualization) + var priorPredictive = binomial(prior_p, n); + + return { + prior: prior_p, priorPredictive : priorPredictive, + posterior : p, posteriorPredictive : posteriorPredictive + }; +} + +var opts = {method: "MCMC", samples: 2500, lag: 50}; +var posterior = Infer(opts, model); + +viz.marginals(posterior) +~~~~ + +## Exercise 2: Parameter fitting vs. Parameter integration + +~~~~ +// Prior on task difficulty is uniform on [0, ..., 0.9], with a spike on 0.9 +var sampleTaskDifficulty = function() { + return flip() ? .9 : randomInteger(10) / 10; +}; + +// Compute posterior after seeing one subject perform well on the task +var taskDifficultyPosterior = Infer({method: 'enumerate'}, function(){ + var taskDifficulty = sampleTaskDifficulty(); + + // subject will perform well if the task is not too difficult + var subjectPerformsWell = !flip(taskDifficulty) + + // observe that they perform well (i.e. this value is true) + condition(subjectPerformsWell) + return taskDifficulty; +}) + +// Most likely task-difficulty is still .9 +taskDifficultyPosterior.MAP().val + +// But a lot of probability mass is on lower values +viz.hist(taskDifficultyPosterior, {numBins: 9}) + +// Indeed, the expected subject ability is around .4 +expectation(taskDifficultyPosterior) +~~~~ + +### a) + +> Would you proceed with more data collection or would you change your paradigm? +How did you come to this conclusion? + +*Note:* This is subjective. Justify your answer. + +Personally, I'm leaning towards going for it. +If this participant did well, probably other participants won't do too badly. +Depends on the relative costs of tweaking the experiment, having a task that's too difficult or too easy, and doing data collection. + +### b) + +> The traditional approach is the value (or "point-wise estimate") approach: take the value that corresponds to the best fit (e.g., by using least-squares or maximum-likelihood estimation; here, you would have taken the Maximum A Posteriori (or, MAP) estimate, which would be 0.9). +> Why might this not be a good idea? +> Provide two answers. +> One that applies to the data collection situation above, and one that applies to the metaphor of model or theory evaluation. + +* The MAP is only 0.9 because of our strong prior beliefs. +* The second most likely value is the complete opposite. + + +## Exercise 3: BDA of Bayesian Cognitive Models + +> We saw in this chapter how to analyze our models of cognition by using Bayesian statistical techniques. +> Compare and contrast the results of our cognitive model of tug-of-war with our regression models. +> Some questions to ponder: +> +> * What phenomena in the data was it better able to capture? + +Explaining away Alice's strength if Bob and Alice win on a team together, but then Bob also wins on his own. + +> * What, if anything, did it fail to capture? + +Teamwork, excitement or nervousness due to a winning streak, intimidation or loafing (e.g. being lazy because you think it wouldn't make a difference anyway) + +> * Are there other aspects of the model you could 'lift' into the Bayesian Data Analysis (i.e. fixed parameters that you could put a prior on and include in your joint inference)? + +Lazy pulling isn't obviously a factor of 1/2. We could put a prior on that and fit to people's responses about strengths. + +> * How does WebPPL expose commonalities between these two models? + +Both are models, both infer parameters of the model, both set priors on the model parameters and update the parameters based on the observations. + +## Exercise 4 + + +~~~~ +///fold: + +// alternative proposal distribution for metropolis-hastings algorithm +var uniformKernel = function(prevVal) { + return Uniform({a: prevVal - 0.2, b: prevVal + 0.2}); +}; + +var toProbs = function(predictions) { + return _.object(map(function(i) {return "predictive: cond" + i + " P(true)";}, _.range(1, predictions.length + 1)), + map(function(model) {return Math.exp(model.score(true))}, predictions)) +} + +var dataSummary = function(data) { + return map(function(condData) { + return filter(function(d) {return d}, condData).length/11 + }, data) +}; + +var predictiveSummary = function(model) { + var labels = map(function(i) {return "predictive: cond" + i + " P(true)"}, _.range(1, 6)); + return map(function(label) { + return expectation(model, function(s) { + return s[label] + }); + }, labels); +}; +/// + +// 5 experiment conditions / stimuli +var possibleEvidenceStream = [ + [['A']], + [['A', 'B']], + [['A', 'B'], ['B']], + [['A', 'B'], ['A', 'B']], + [[]] +]; + +// for each condition. +// note: always the question "is A a blicket?" +var data = [ + repeat(10, function(){return true}).concat(false), + repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), + repeat(4, function(){return true}).concat(repeat(7, function(){return false})), + repeat(8, function(){return true}).concat(repeat(3, function(){return false})), + repeat(2, function(){return true}).concat(repeat(9, function(){return false})) +]; + +// Same model as above, but parameterized +var detectingBlickets = mem(function(evidence, params) { + return Infer({method: 'enumerate'}, function() { + var blicket = mem(function(block) {return flip(params.blicketBaseRate)}) + var power = function(block) {return blicket(block) ? params.blicketPower : params.nonBlicketPower} + var machine = function(blocks) { + return (blocks.length == 0 ? + flip(params.machineSpontaneouslyGoesOff) : + flip(power(first(blocks))) || machine(rest(blocks))) + } + map(function(blocks){condition(machine(blocks))}, evidence) + return blicket('A') + }) +}) + +var dataAnalysis = Infer({method: 'MCMC', samples: 5000, callbacks: [editor.MCMCProgress()]}, function() { + var params = { + blicketBaseRate: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), + blicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), + nonBlicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), + machineSpontaneouslyGoesOff: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}) + } + + var cognitiveModelPredictions = map(function(evidence) { + return detectingBlickets(evidence,params); + }, possibleEvidenceStream); + + // observe each data point under the model's predictions + map2(function(dataForStim, modelPosterior) { + map(function(dataPoint) { + observe(modelPosterior, dataPoint); + }, dataForStim) + }, data, cognitiveModelPredictions) + + var predictives = toProbs(cognitiveModelPredictions) + return _.extend(params, predictives) +}) + +viz.marginals(dataAnalysis); +viz.scatter(predictiveSummary(dataAnalysis), dataSummary(data), + {xLabel: 'model', yLabel: 'data'}) +~~~~ + + +### a) + +> What are the parameters of this model? In the plainest English you can muster, interpret the current values of the parameters. What do they mean? + +`blicketBaseRate` | 0.4 | blickets are common, but not *that* common +`blicketPower` | 0.9 | blickets rarely fail to be detected +`nonBlicketPower` | 0.05 | very occasionally, we get false blicket detections +`machineSpontaneouslyGoesOff` | 0.05 | very oaccasionally, the detector just goes offf + + +### b) + +> What does the `Infer` statement in `dataAnalysis` return? + +Fitting to the data, what are the likely params and predictions? + +> What does the `Infer` statement in `detectingBlickets` return? Why are there two queries in this program? + +The cognitive model involves an inference of what people will say given the evidence they see. + +### c) + +`blicketBaseRate` | blickets are common, but not *that* common +`blicketPower` | blickets rarely fail to set off the detector +`nonBlicketPower` | non-blickets *occasionally* might set off the detector +`machineSpontaneouslyGoesOff` | *occasionally* the detector might just go off for no reason +`predictive: cond1 P(true)` | `A` is probably a blicket... +`predictive: cond2 P(true)` | `A` is slightly more likely to be a blicket +`predictive: cond3 P(true)` | no idea if `A` is a blicket +`predictive: cond4 P(true)` | `A` is more likely than not a blicket... +`predictive: cond5 P(true)` | `A` is probably not a blicket...? +model (`x`) vs. data (`y`) | We can accurately guess people's response from model, but they're not exactly 1-1 + +### d) + +> How do your interpretations relate to the parameter values that were set in the original program? + +Basically the expectation. + +### e) + +> Look carefully at the priors (in the code) and the posteriors (in the plots) over blicketPower and nonBlicketPower. Did we impose any a priori assumptions about the relationship between these parameters? Think about the experimental setup. Do you think we would be justified in imposing any assumptions? Why or why not? What do the posteriors tell you? How was the data analysis model able to arrive at this conclusion? + +The priors over `blicketPower` and `nonBlicketPower` don't actually encode the information that `blicketPower` should be higher than `nonBlicketPower`. +But this was basically told to kids in the experiment ("Blickets make the machine go off"), and kids show they know this from the responses they gave (when `A` makes the machine go off most of the time, they call it a blicket, not a non-blicket). + +The data analysis actually learns this asymmetric from the kids' responses. +To see this, we can switch the `true` and `false` responses that kids give. + +~~~~ +var data = [ + repeat(10, function(){return false}).concat(true), + repeat(6 , function(){return false}).concat(repeat(5, function(){return true})), + repeat(4, function(){return false}).concat(repeat(7, function(){return true})), + repeat(8, function(){return false}).concat(repeat(3, function(){return true})), + repeat(2, function(){return false}).concat(repeat(9, function(){return true})) +]; +~~~~ + +When we do that, we see that `nonBlicketPower` is greater than `blicketPower` in the posteriors. + +Leaving this relationship for the model to infer is a nice sanity check. It's cool that we can learn the appropriate relationship (`blicketPower > nonBlicketPower`) from the data, but it would be OK to bake it in. It wasn't a key part of our theory, and we're pretty confident that kids understand. + +### f) + +> Do you notice anything about the scatter plot? How would you interpret this? Is there something we could add to the data analysis model to account for this? + +There seems to be a linear relationship betweeen model and data, but the values are not always equal. If we add some scaling factor, we could get from model to accurate predictions of people's responses. + +### g) + +> Now, we're going to examine the predictions of the model if we had done a more traditional analysis of point-estimates of parameters (i.e. fitting parameters). Examine your histograms and determine the "maximum a posteriori" (MAP) value for each parameter. Plug those into the code below and run it. + +~~~~ +///fold: +var toProbs = function(predictions) { + return _.object(map(function(i) {return "predictive: cond" + i + " P(true)";}, _.range(1, predictions.length + 1)), + map(function(model) {return Math.exp(model.score(true))}, predictions)) +} + +var dataSummary = function(data) { + return map(function(condData) { + return filter(function(d) {return d}, condData).length/11 + }, data) +}; + +// 5 experiment conditions / stimuli +var possibleEvidenceStream = [ + [['A']], + [['A', 'B']], + [['A', 'B'], ['B']], + [['A', 'B'], ['A', 'B']], + [[]] +]; + +var data = [ + repeat(10, function(){return true}).concat(false), + repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), + repeat(4, function(){return true}).concat(repeat(7, function(){return false})), + repeat(8, function(){return true}).concat(repeat(3, function(){return false})), + repeat(2, function(){return true}).concat(repeat(9, function(){return false})) +]; + +// for each condition. +// note: always the question "is A a blicket?" +var data = [ + repeat(10, function(){return true}).concat(false), + repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), + repeat(4, function(){return true}).concat(repeat(7, function(){return false})), + repeat(8, function(){return true}).concat(repeat(3, function(){return false})), + repeat(2, function(){return true}).concat(repeat(9, function(){return false})) +]; + +// Same model as above, but parameterized +var detectingBlickets = mem(function(evidence, params) { + return Infer({method: 'enumerate'}, function() { + var blicket = mem(function(block) {return flip(params.blicketBaseRate)}) + var power = function(block) {return blicket(block) ? params.blicketPower : params.nonBlicketPower} + var machine = function(blocks) { + return (blocks.length == 0 ? + flip(params.machineSpontaneouslyGoesOff) : + flip(power(first(blocks))) || machine(rest(blocks))) + } + map(function(blocks){condition(machine(blocks))}, evidence) + return blicket('A') + }) +}) +/// + +var params = { + blicketBaseRate : ..., + blicketPower: ..., + nonBlicketPower: ..., + machineSpontaneouslyGoesOff: ... +}; + +var bestFitModelPredictions = map(function(evidence) { + return Math.exp(detectingBlickets(evidence, params).score(true)); +}, possibleEvidenceStream) + +viz.scatter(bestFitModelPredictions, dataSummary(data)) +~~~~ + +### h) + +> What can you conclude about the two ways of looking at parameters in this model's case? Do you think the model is relatively robust to different parameter settings? + +Setting the parameters to just the modes changes the model fit. The fit is a lot better when we fit all the paramters at once. Some of the relationships between those parameters matter, in a way that we haven't really captured in the strucutre of our model. diff --git a/solutions/06-inference-about-inference.md b/solutions/06-inference-about-inference.md new file mode 100644 index 0000000..0a726a6 --- /dev/null +++ b/solutions/06-inference-about-inference.md @@ -0,0 +1,410 @@ +--- +layout: exercise +title: Inference about inference - exercises +--- + +## Exercise 1: Tricky Agents + +What would happen if Sally knew you were watching her and wanted to deceive you? + +a) *Complete the code below so that `chooseAction` chooses a misdirection if Sally is deceptive. Then describe and show what happens if you knew Sally was deceptive and chose action "b".* + +~~~~ +var actionPrior = Categorical({vs: ['a', 'b', 'c'], ps: [1/3, 1/3, 1/3]}); +var foodPrior = Categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [1/3, 1/3, 1/3]}); + +var vendingMachine = function(state action) { + return (action == 'a' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.8, .1, .1]}) : + action == 'b' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.1, .8, .1]}) : + action == 'c' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.1, .1, .8]}) : + 'nothing'); + +var chooseAction = function(goal, transition, state, deceive) { + return Infer({method: 'enumerate'}, function() { + var action = sample(actionPrior); + condition((!deceive && goal(transition(state,action))) || (deceive && !goal(transition(state, action)))) + return action; + }) +}; + +var goalPosterior = Infer({method: 'enumerate'}, function() { + var deceive = flip(); + var goalFood = sample(foodPrior); + var goal = function(outcome) {return outcome == goalFood}; + var sallyActionDist = chooseAction(goal, vendingMachine, 'state', deceive); + condition(deceive && sample(sallyActionDist) == 'b') + return goalFood; +}); + +viz.auto(goalPosterior); +~~~~ + +Results: Given the conditions, the probabilities that Alice wants a bagel or doughnut (p=0.45 for both) are much larger than the probability she wants a cooke (p=0.1): +![](Figures/inference-about-inference-1a.png) + +b) *What happens if you don't know Sally is deceptive and she chooses "b" and then "b". What if she chooses "a" and then "b." Show the models and describe the difference in behavior. Is she deceptive in each case?* + +For the first possibility, we condition on: + +~~~~ +condition(sample(sallyActionDist) == 'b' && sample(sallyActionDist)=='b'); +~~~~ + +We suspect that Sally wants a cookie and was not deceptive, since she chose the option most likely to give her a cookie both times: + +![](Figures/inference-about-inference-1b.png) + +(Note that we can confirm that the model does not believe Sally is being deceptive by returning the value of `deceive`.) + +For the second possibility, we condition on: + +~~~~ +condition(sample(sallyActionDist) == 'a' && sample(sallyActionDist)=='b'); +~~~~ + +It is most likely that Alice wants a doughnut, i.e. that the button most likely to result in her goal is 'c'. The model predicts from her inconsistency (swiching from 'a' to 'b) that it is most likely that she is deceptive. If she was not being deceptive, she would have chosen the same thing both times. So her true goal is the result of the only button she didn't press: 'c': +![](Figures/inference-about-inference-1c.png) + +(Note that we can confirm that the model believes Sally is being deceptive by returning the value of `deceive`.) + +## Exercise 2: Monty Hall. + +*Here, we will use the tools of Bayesian inference to explore a classic statistical puzzle -- the Monty Hall problem. Here is one statement of the problem:* + +> Alice is on a game show and she's given the choice of three doors. Behind one door is a car; behind the others, goats. She picks door 1. The host, Monty, knows what's behind the doors and opens another door, say No. 3, revealing a goat. He then asks Alice if she wants to switch doors. Should she switch? + +*Intuitively, it may seem like switching doesn't matter. However, the canonical solution is that you should switch doors. We'll explore (a) the intuition that switching doesn't matter, (b) the canonical solution, and more.* + +a) *Whether you should switch depends crucially on how you believe Monty chooses doors to pick. First, write the model such that the host randomly picks doors (for this, fill in `montyRandom`). In this setting, should Alice switch? Or does it not matter? Hint: it is useful to condition on the exact doors that we discussed in the problem description.* + +~~~~ +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1,2,3] +var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); + +var montyRandom = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + return sample(chooseDoor); + }); +}; + +Infer({method: 'enumerate'}, function() { + var aliceDoor = sample(chooseDoor); + var prizeDoor = sample(chooseDoor); + var montyFunction = montyAvoidBoth; + + var montyDoorDist = montyFunction(aliceDoor, prizeDoor); + + let montyDoor = sample(montyDoorDist); + condition(montyDoor != prizeDoor && montyDoor != aliceDoor); + + let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] + + display("Likelihood of winning if Alice switches doors:") + return switchDoor==prizeDoor; +}); +~~~~ + +In this case, it doesn't matter whether Alice switches. *A priori* all doors are equally likely to be the prize door. Monte has eliminated one, but there's no reason to favor either of the other two: + +![](Figures/inference-about-inference-PartA_1.PNG) + +b) *Now, fill in* `montyAvoidBoth` *(make sure you switch your* `var montyFunction = ...` *alias to use* `montyAvoidBoth`). *Here, Monty randomly picks a door that is neither the prize door nor Alice's door. For both-avoiding Monty, you'll find that Alice should switch. + +```javascript +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1,2,3] +var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); + +var montyAvoidBoth = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + let montyDoor = sample(chooseDoor); + condition(montyDoor != prizeDoor && montyDoor != aliceDoor); + return montyDoor; + }); +}; + +Infer({method: 'enumerate'}, function() { + var aliceDoor = sample(chooseDoor); + var prizeDoor = sample(chooseDoor); + var montyFunction = montyAvoidBoth; + + var montyDoorDist = montyFunction(aliceDoor, prizeDoor); + + let montyDoor = sample(montyDoorDist); + condition(montyDoor != prizeDoor && montyDoor != aliceDoor); + + let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] + + display("Likelihood of winning if Alice switches doors:") + return switchDoor==prizeDoor; +}); +``` + +By running the model, we see that switching doors allows Alice to find the car 2/3 of the time: +![](Figures/inference-about-inference-PartB.PNG) + +*This is unintuitive -- we know that Monty picked door 3, so why should the process he used to arrive at this choice matter? By hand, compute the probability table for* $$P(\text{Prize } \mid \text{Alice picks door 1}, \text{Monty picks door 3}, \text{Door 3 is not the prize})$$ under both `montyRandom` and `montyAvoidBoth`. *Using these tables, explain why Alice should switch for both-avoiding Monty but why switching doesn't matter for random Monty. Hint: you will want to compare particular rows of these tables.* + +Under `montyRandom`, here are the probabilities prior to conditioning: + +| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | +|--------------|------------|--------------|------------------------| +| 1 | 1 | 1 | 0.037 | +| 1 | 1 | 2 | 0.037 | +| 1 | 1 | 3 | 0.037 | +| 1 | 2 | 1 | 0.037 | +| 1 | 2 | 2 | 0.037 | +| 1 | 2 | 3 | 0.037 | +| 1 | 3 | 1 | 0.037 | +| 1 | 3 | 2 | 0.037 | +| 1 | 3 | 3 | 0.037 | +| 2 | 1 | 1 | 0.037 | +| 2 | 1 | 2 | 0.037 | +| 2 | 1 | 3 | 0.037 | +| 2 | 2 | 1 | 0.037 | +| 2 | 2 | 2 | 0.037 | +| 2 | 2 | 3 | 0.037 | +| 2 | 3 | 1 | 0.037 | +| 2 | 3 | 2 | 0.037 | +| 2 | 3 | 3 | 0.037 | +| 3 | 1 | 1 | 0.037 | +| 3 | 1 | 2 | 0.037 | +| 3 | 1 | 3 | 0.037 | +| 3 | 2 | 1 | 0.037 | +| 3 | 2 | 2 | 0.037 | +| 3 | 2 | 3 | 0.037 | +| 3 | 3 | 1 | 0.037 | +| 3 | 3 | 2 | 0.037 | +| 3 | 3 | 3 | 0.037 | + +After we condition on Alice choosing Door 1, Monte choosing Door 3, and Door 3 not being the prize, there are only two remaining possibilities: + +| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | +|--------------|------------|--------------|------------------------| +| 1 | 1 | 3 | 0.037 | +| 1 | 2 | 3 | 0.037 | + +These are equally likely in the prior and thus equally likely in the posterior. + +Under `montyAvoidBoth`: + +| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | +|--------------|------------|--------------|------------------------| +| 1 | 1 | 1 | 0 | +| 1 | 1 | 2 | 0.06 | +| 1 | 1 | 3 | 0.06 | +| 1 | 2 | 1 | 0 | +| 1 | 2 | 2 | 0 | +| 1 | 2 | 3 | 0.11 | +| 1 | 3 | 1 | 0 | +| 1 | 3 | 2 | 0.11 | +| 1 | 3 | 3 | 0 | +| 2 | 1 | 1 | 0 | +| 2 | 1 | 2 | 0 | +| 2 | 1 | 3 | 0.11 | +| 2 | 2 | 1 | 0.06 | +| 2 | 2 | 2 | 0 | +| 2 | 2 | 3 | 0.06 | +| 2 | 3 | 1 | 0.11 | +| 2 | 3 | 2 | 0 | +| 2 | 3 | 3 | 0 | +| 3 | 1 | 1 | 0 | +| 3 | 1 | 2 | 0.11 | +| 3 | 1 | 3 | 0 | +| 3 | 2 | 1 | 0.11 | +| 3 | 2 | 2 | 0 | +| 3 | 2 | 3 | 0 | +| 3 | 3 | 1 | 0.06 | +| 3 | 3 | 2 | 0.06 | +| 3 | 3 | 3 | 0 | + +Again, conditioning leaves only the two possibilities: + +| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | +|--------------|------------|--------------|------------------------| +| 1 | 1 | 3 | 0.06 | +| 1 | 2 | 3 | 0.11 | + +Thus, in the posterior, the possibility where Door 2 is the prize door is twice as likely as the possibility where Door 1 is the prize door. Alice should switch. + +c) *Fill in* `montyAvoidAlice`. *Here, Monty randomly picks a door that is simply not Alice's door. Should Alice switch here?* + +```javascript +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1,2,3] +var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); + +var montyAvoidAlice = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + let montyDoor = sample(chooseDoor); + condition(montyDoor != aliceDoor); + return montyDoor; + }); +}; + +Infer({method: 'enumerate'}, function() { + var aliceDoor = sample(chooseDoor); + var prizeDoor = sample(chooseDoor); + var montyFunction = montyAvoidAlice; + + var montyDoorDist = montyFunction(aliceDoor, prizeDoor); + + let montyDoor = sample(montyDoorDist); + condition(montyDoor != prizeDoor && montyDoor != aliceDoor); + + let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] + + display("Likelihood of winning if Alice switches doors:") + return switchDoor==prizeDoor; +}); +``` + +In this case, Alice should be indifferent to switching. +![](Figures/inference-about-inference-PartD.PNG) + +d) Fill in `montyAvoidPrize`. Here, Monty randomly picks a door that is simply not the prize door. Should Alice switch here? + +```javascript +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1,2,3] +var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); + +var montyAvoidPrize = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + let montyDoor = sample(chooseDoor); + condition(montyDoor != prizeDoor); + return montyDoor; + }); +}; + +Infer({method: 'enumerate'}, function() { + var aliceDoor = sample(chooseDoor); + var prizeDoor = sample(chooseDoor); + var montyFunction = montyAvoidPrize; + + var montyDoorDist = montyFunction(aliceDoor, prizeDoor); + + let montyDoor = sample(montyDoorDist); + condition(montyDoor != prizeDoor && montyDoor != aliceDoor); + + let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] + + display("Likelihood of winning if Alice switches doors:") + return switchDoor==prizeDoor; +}); +``` + +Here, Alice should be indifferent towards staying or switching, since she has a 50/50 chance on expectation: +![](Figures/inference-about-inference-PartD.PNG) + +e) *An interesting cognitive question is: why do we have the initial intuition that switching shouldn't matter? Given your explorations, propose an answer.* + +[Note: There's no right answer to this. Here are two reasonable answers.] + +*Answer 1*: Either we believe that Monte is trying to avoid the prize door or we believe he is acting randomly. Either possibility would lead to the (correct) prediction that we think Alice should be indifferent to switching. + +*Answer 2*: We are uncertain as to what Monte's strategy is, and so we average over the four possibilities: + +```javascript +// Here's a function that might be handy: it removes some set of badItems from a list l +// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1,2,3] +var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); + +var montyRandom = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + return sample(chooseDoor); + }); +}; + +var montyAvoidBoth = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + let montyDoor = sample(chooseDoor); + condition(montyDoor != prizeDoor && montyDoor != aliceDoor); + return montyDoor; + }); +}; + +var montyAvoidAlice = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + let montyDoor = sample(chooseDoor); + condition(montyDoor != aliceDoor); + return montyDoor; + }); +}; + +var montyAvoidPrize = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + let montyDoor = sample(chooseDoor); + condition(montyDoor != prizeDoor); + return montyDoor; + }); +}; + +var chooseMontyFunction = function(){ + var f = randomInteger(4); + return f==0? montyRandom : + f==1? montyAvoidBoth : + f==2? montyAvoidAlice : + montyAvoidPrize +} + +Infer({method: 'enumerate'}, function() { + var aliceDoor = sample(chooseDoor); + var prizeDoor = sample(chooseDoor); + var montyFunction = chooseMontyFunction() + + var montyDoorDist = montyFunction(aliceDoor, prizeDoor); + + let montyDoor = sample(montyDoorDist); + //condition(montyDoor != prizeDoor && montyDoor != aliceDoor); //Part A + + let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] + + display("Likelihood of winning if Alice switches doors:") + return switchDoor==prizeDoor; +}); +``` +This results in a slight bias towards not switching, but it's close enough to 50/50 that we may not sense of a distinction between switching and not switching. +![](Figures/inference-about-inference-PartE.PNG) From deb873c51180d60e884b13761f98312983eb34d2 Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 16 Oct 2018 11:01:36 -0400 Subject: [PATCH 09/47] made 07 visible --- solutions/{.07-inference-process.md => 07-inference-process.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename solutions/{.07-inference-process.md => 07-inference-process.md} (100%) diff --git a/solutions/.07-inference-process.md b/solutions/07-inference-process.md similarity index 100% rename from solutions/.07-inference-process.md rename to solutions/07-inference-process.md From a86559f5fdc9b829f7b2bb08e99977eb34e276a6 Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 23 Oct 2018 09:54:27 -0400 Subject: [PATCH 10/47] Fixed type-o in Algorithms for Inference --- chapters/07-inference-process.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapters/07-inference-process.md b/chapters/07-inference-process.md index 39b163f..28e6d81 100644 --- a/chapters/07-inference-process.md +++ b/chapters/07-inference-process.md @@ -287,7 +287,7 @@ var makeLines = function(n, lines, prevScore){ }; var lineDist = Infer( - { method: 'MCMC', samples=50}, + { method: 'MCMC', samples:50}, function(){ var lines = makeLines(4, [], 0); var finalGeneratedImage = Draw(50, 50, true); From 585fd5c137e88555bc08bacc9089e9dc99d792ed Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Thu, 1 Nov 2018 12:22:28 -0400 Subject: [PATCH 11/47] released answers --- solutions/.04.1-agents-as-programs.md | 424 ------------------------ solutions/.05-observing-sequences.md | 344 ------------------- solutions/.05.1-sequential-decisions.md | 407 ----------------------- 3 files changed, 1175 deletions(-) delete mode 100644 solutions/.04.1-agents-as-programs.md delete mode 100644 solutions/.05-observing-sequences.md delete mode 100644 solutions/.05.1-sequential-decisions.md diff --git a/solutions/.04.1-agents-as-programs.md b/solutions/.04.1-agents-as-programs.md deleted file mode 100644 index 7d69e7f..0000000 --- a/solutions/.04.1-agents-as-programs.md +++ /dev/null @@ -1,424 +0,0 @@ ---- -layout: exercise -title: Agents as Probabilistic Programs - exercises -custom_js: -- assets/js/box2d.js -- assets/js/physics.js ---- - -## Exercise 1: Factors - -### a) - -*Take our standard coin-flipping model. Use `factor` to create a "soft" condition on the outcome being heads, such that there is an approx. 95% chance of heads.* - -```js -var dist = Infer({method: 'enumerate'}, - function () { - var A = flip() - factor(A*3) //edit this line - return A -}); -viz(dist) -``` - -![](Figures/agents-as-programs-1.png) - -This is actually quite close to 95%: - -`{"probs":[0.04742587317756678,0.9525741268224333],"support":[false,true]}` - - -### b) - -In this model, we flip 3 coins. Use `factor` to favor an outcome of 2 heads and 1 tails: - -```js -var softHeads = Infer({}, function() { - var a = flip(0.5); - var b = flip(0.5); - var c = flip(0.5); - factor(1*((a+b+c)==2)); - return a; - } -}); - -viz(softHeads); -``` - -![](Figures/agents-as-programs-2.png) - -## Exercise 2: The Ultimatum Game - -### a) - -*The ultimatum game requires two players: A proposer and a responder. The proposer has to decide how to allocate \$10 between the two players in \$1 increments. Once this proposal is made, the responder decides whether to accept the proposal. If the responder accepts, both players are awarded the money according to the proposal. If the responder rejects, neither player gets anything.* - -*If the responder was a strict utilitarian, s/he would accept any offer of \$1 or more. Assume the proposer is a soft maximizer who wants to keep as much of the \$10 as possible. Complete the code below to find out how much the proposer will offer:* - -~~~~ -var responder = function(offer) { - - return (offer>0 ? true : false); - -} - -var proposer = Infer({method: "enumerate"}, function(){ - - var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward = responder(offer) ? (10 - offer) : 0; - - factor(reward) - return(offer) - }) - -viz(proposer); -~~~~ - -![](Figures/agents-as-programs-3.png) - -### b) - -*People, it turns out, act very differently than the model above suggests. Responders will often reject low offers as "unfair", even though this means they get nothing. Assume that the responder decides whether to accept in proportion to the percentage of the \$10 allocated to her, raised to some power `alpha` (you can think of `alpha` as "spitefulness"). Complete the code below to determine how much the proposer should offer:* - -```js -var alpha = 2 - -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer = Infer({method: "enumerate"}, function(){ - var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward = responder(offer,alpha) ? (10 - offer) : 0; - factor(reward) - return(offer) - }) - -viz(proposer); -``` - -![](Figures/agents-as-programs-4.png) - -### c) - -*You can think of the variable `alpha` in the code above as encoding spitefulness: the degree to which the responder is willing to forego a reward in order to prevent the proposer from having a reward. See how setting `alpha` to 4, 6, 10, 25, and 50 affects what the proposer does. Explain the results.* - -~![](Figures/agents-as-programs-5-1.png) -~![](Figures/agents-as-programs-5-2.png) -~![](Figures/agents-as-programs-5-3.png) -~![](Figures/agents-as-programs-5-4.png) -~![](Figures/agents-as-programs-5-5.png) - -As alpha increases, the responder becomes increasingly unlikely to accept any offer less than \$10. Thus, no matter what the proposer offers, she'll probably end up with \$0. This makes her indifferent to the choice. - -### d) - -*The models above assume the proposer knows the responder's decision function. Let's soften that assumption: the proposer knows that the responder's value of `alpha` is somewhere on the range [0.5, 5]. Suppose the proposer offered \$2 and the responder rejects it. What is the most likely level of `alpha`?* - -(Hint: you may find it helpful to find a different place for `alpha` than within the definition of `responder`.) - -```js -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer = Infer({method: "MCMC", samples:50000}, function(){ - var alpha = uniform(0.5,5) - var offer = 2; - var reward = responder(offer, alpha) ? (10 - offer) : 0; - condition(reward==0) - return(alpha) -}) - -viz(proposer) -``` - -![](Figures/agents-as-programs-6.png) - - -### e) - -*Again, suppose the proposer offered \$2 and the responder rejected it. Suppose they are going to play a second round. How much should the proposer offer? How does this change if the first (rejected) offer was \$8?* - -Here is a straight-forward if not especially computationally-efficient model: - -```js -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer1 = Infer({method: "MCMC", samples:50000}, function(){ - var alpha = uniform(0.5,5) - var offer1 = 2 - var reward1 = responder(offer1, alpha) ? (10 - offer1): 0; - condition(reward1==0) - return(alpha) -}) - -var makeoffer = Infer({method: "forward", samples:1000}, function(){ - - var alpha2 = sample(proposer1) - - var proposer2 = Infer({method: "MCMC", samples:5000}, function(){ - var offer2 = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward2 = responder(offer2, alpha2) ? (10 - offer2) : 0 - factor(reward2) - return(offer2) - }) - - return sample(proposer2) -}); - -viz(makeoffer) -``` - -With offer1 = 2: - -![](Figures/agents-as-programs-7-1.png) - -With offer1 = 8: - -![](Figures/agents-as-programs-7-2.png) - -The differences are underwhelming. The reason is `factor(reward2)` actually puts a lot of pressure on the proposer getting a large payout. If we change `factor(reward2)` to `factor(Math.pow(reward2,1))`, we get more impressive differences. - -With offer1 = 2: - -![](Figures/agents-as-programs-7-3.png) - -With offer1 = 8: - -![](Figures/agents-as-programs-7-4.png) - -## Exercise 3: The Prisoner's Dilemma - -*In the prisoner's dilemma, two thieves work together on a bank heist. Afterwards, they are apprehended by the police. The police interrogate the thieves separately. They tell each thief that if she confesses, she will get a lenient sentence. If not, she will get 10 years. However, the thieves know that the police need at least one of them to confess; if neither of them confesses, the police don't have enough evidence to charge them, and they will both go free.* - -*What's the longest the lenient sentence can be (in round years) such that it makes sense for the thief to confess (that is, where she has a greater than 50% chance of confessing)? Use `factor(percentYearsFreedom)` where `percentYearsFreedom` is the percentage of the next 10 years the thief will not be in jail. (Assume that this incident has scared her straight and she will not commit any other crimes.)* - -```js -var thiefRats = function(){ - return (flip()? true: false) -} - -var lenient = 6 - -var thief = Infer({}, function(){ - var otherThiefRats = thiefRats(); - var IRat = thiefRats(); - var years = (otherThiefRats? - (IRat? lenient : 10) : - (IRat? lenient : 0)); - var percentYearsFreedom = (10-years)/10 - factor(percentYearsFreedom) - return(IRat) -}) - -viz(thief) -``` - -From trial-and-error, if the lenient sentence is 6 years, the thief should be indifferent. - -![](Figures/agents-as-programs-11.png) - -Alternatively, you can infer the correct answer as follows: - -```js -var sentences = RandomInteger({n:10}) - -var thiefRats = function(){ - return (flip()? true: false) -} - -var thief = Infer({}, function(){ - var LenientSentence = sample(sentences); - var iRat = thiefRats() - var uRat = thiefRats() - var percentYearsFreedom = 1 - (iRat ? LenientSentence/10 : (uRat ? LenientSentence/10 : 0)) - factor (1*(percentYearsFreedom > .5)) - return LenientSentence -}) - -viz(thief) -``` - -![](Figures/agents-as-programs-12.png) - -As you can see, we end up prefering lenient sentences no longer than 4 years. - -## Exercise 4: Exploring RSA - -For this exercise, modify the RSA model introduced in the main text as necessary. - -### a) - -*How does increasing the optimality of the speaker affect the pragmatic listener's inferences? Try a couple values and report the results.* - -For convenience, we turn `alpha` into a parameter: - -```js -// Here is the code from the Frank and Goodman RSA model - -// possible objects of reference -var meaningPrior = function() { - uniformDraw([ - {shape: "square", color: "blue"}, - {shape: "circle", color: "blue"}, - {shape: "square", color: "green"} - ]) -} - -// possible one-word utterances -var utterances = ["blue","green","square","circle"] - -// meaning function to interpret the utterances -var meaning = function(utterance, obj){ - (utterance === "blue" || utterance === "green") ? utterance === obj.color : - (utterance === "circle" || utterance === "square") ? utterance === obj.shape : - true -} - -// literal listener -var literalListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior(); - condition(meaning(utterance, obj)) - return obj - }}) -} - -// pragmatic speaker -var speaker = function(obj,alpha){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * literalListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener -var pragmaticListener = function(utterance,alpha){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker(obj,alpha),utterance) - return obj - }}) -} - - -print("pragmatic listener's interpretation of 'blue', given alpha = 0.01:") -viz.table(pragmaticListener("blue", 0.01)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 1:") -viz.table(pragmaticListener("blue", 1)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 4:") -viz.table(pragmaticListener("blue", 4)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 10:") -viz.table(pragmaticListener("blue", 10)) -``` - -![](Figures/agents-as-programs-8.png) - -As `alpha` increases, the pragmatic listener is increasingly likely to interpret `blue` as referring to the blue square. - -### b) - -*How do the inferences of $$L_{2}$$ compare to those of $$L_{1}$$?* - -```js -// Here is the code from the Frank and Goodman RSA model - -// possible objects of reference -var meaningPrior = function() { - uniformDraw([ - {shape: "square", color: "blue"}, - {shape: "circle", color: "blue"}, - {shape: "square", color: "green"} - ]) -} - -// possible one-word utterances -var utterances = ["blue","green","square","circle"] - -// meaning function to interpret the utterances -var meaning = function(utterance, obj){ - (utterance === "blue" || utterance === "green") ? utterance === obj.color : - (utterance === "circle" || utterance === "square") ? utterance === obj.shape : - true -} - -var alpha = 1 - -// literal listener -var literalListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior(); - condition(meaning(utterance, obj)) - return obj - }}) -} - -// pragmatic speaker -var speaker = function(obj){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * literalListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener -var pragmaticListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker(obj),utterance) - return obj - }}) -} - -// pragmatic speaker2 -var speaker2 = function(obj){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * pragmaticListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener #2 -var listener3 = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker2(obj),utterance) - return obj - }}) -} - -print("L1's interpretation of 'blue'") -viz.table(pragmaticListener("blue")) - -print("L2's interpretation of 'blue'") -viz.table(listener3("blue")) -``` - -![](Figures/agents-as-programs-9.png) - -There is little additional effect. - -### c) - -*Add a blue circle to the scenario. What happens to the interpretion of "blue"? Why?* - -It becomes 50/50 between 'blue circle' and 'blue square'. This is because 'blue' is now useful for distinguishing between the two circles as well. - -### d) - -*Is there any way to get “blue” to refer to something green? Why or why not?* - -In this model, the literal listener expects the speaker to tell the literal truth, albeit with some noise. So there is no way to prefer an interpretation that is literally false to one that is literally true. So we'd need to relax the assumption that the literal listener expects the speaker to always tell the truth. \ No newline at end of file diff --git a/solutions/.05-observing-sequences.md b/solutions/.05-observing-sequences.md deleted file mode 100644 index 6784ab0..0000000 --- a/solutions/.05-observing-sequences.md +++ /dev/null @@ -1,344 +0,0 @@ ---- -layout: exercise -title: Observing sequences - exercises ---- - - -## Exercise 1: What word comes next? - -a) *In human languages, certain words are more likely to follow others. "The" is more likely to be followed by "dog" than "rhino", and even less likely to be followed by "sings". * - -*Let's consider a fragment of English consisting of only the words "dogs", "cats", "chase", and "sleep". This fragment does not contain punctuation or capital letters. Now, suppose that somebody says, "dogs chase cats". Determine how likely "chase" is to be followed by each word in the vocabulary.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - - let obs = ['dogs', 'chase', 'cats']; - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return []; - return [word].concat(generateSentence(word, sentence)); - } - - factor(comparray(obs, generateSentence('start'))) - - return transition('chase'); - -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-1.png) - -b) *Assume now that in addition to saying "dogs chase cats", your interlocutor said a second sentence. However, you only heard the first word, which again was "dogs". What is the distribution across likely second words in this sentence? NOTE: If you are not careful, you will end up assigning some probability to "undefined". Be careful.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[0] == 'dogs'); - return newSentence[1]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-2.png) - -c) *Suppose again that somebody said "dogs chase cats". Now suppose they spoke another sentence, where again the second word was "chase". Show that the most likely first word was "dogs". * - -```js -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[1] == 'chase'); - return newSentence[0]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-3.png) - -## Exercise 2: Hidden Markov Model - -a) *Return to the model from Exercise 1b. Suppose that the second sentence, instead of beginning with "dogs", began with "cats". Provide the marginal distribution on the second word of that sentence.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[0] == 'cats'); - return newSentence[1]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-4.png) - -b) *In Exercise 2a, you should have found that an ungrammatical sequence like "cats cats" is as likely as a grammatical sequence like "cats sleep". Why is this?* - -The model hasn't observed anything other than 'stop' as following the word 'cats'. This implies that 'stop' is the most likely option, but also that the algorithm is totally indifferent towards all the other words -- since this is a language without grammar, all words are treated the same (they literally coexist as entries in a single list). - -c) *Let's try a hidden Markov model instead. Note that two of the words in our fragment of English are nouns ("dogs", "cats") and two are verbs ("chase", "sleep").* - -*Model sentence generation as involving Markov transitions between parts of speech, rather than between the words themselves. * - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dogs','cats']) : - (pos=="V") ? uniformDraw(['chase','sleep']) : - 'stop' -} -var POS = ["N", "V", "stop"] - -var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - -var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - -let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); -} - -var sentence = generateSentence("start"); -print(sentence) -``` - -d) *Try Exercise 2a, but using our new hidden Markov model. Show that we are now more likely to get the grammatical phrases "cats chase" or "cats sleep" than "cats cats" or "cats dogs".* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dogs','cats']) : - (pos=="V") ? uniformDraw(['chase','sleep']) : - 'stop' -} -var POS = ["N", "V", "stop"] - -var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: false}, function() { - var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - - var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - - let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); - } - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[0] == 'cats'); - return newSentence[1]; -}) - -viz(hmm) -``` - -![](Figures/sequences-of-observations-5.png) - -## Exercise 3: Phrase structure grammars - -a) *Extend your hidden Markov model from Exercise 2 so that our fragment of English additionally includes the determiners "the" and "a" as well as the adverb "diligently". Make "dogs", "cats", "chase", and "sleep" singular ("dog", "cat", "chases", "sleeps"). Condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* - -*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. - - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dog','cat']) : - (pos=="V") ? uniformDraw(['chases','sleeps']) : - (pos=="D") ? uniformDraw(['the','a']) : - (pos=="A") ? 'dilligently' : - 'stop' -} -var POS = ["N", "V", "D", "A", "stop"] - -var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: true}, function() { - var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - - var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - - let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); - } - let obs = ['the', 'dog', 'chases', 'a', 'cat', 'stop']; - - factor(comparray(obs, generateSentence('start'))*5) - - var sent1 = generateSentence('start'); - var sent2 = generateSentence('start'); - var sent3 = generateSentence('start'); - var sent4 = generateSentence('start'); - var sent5 = generateSentence('start'); - - return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} -}) - -print(hmm) -``` - -b) *Let us consider a phrase structure grammar for our English fragment instead, modeled on the one in Chapter 5. Again, condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* - -*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; - -var D = function() {return uniformDraw(['the', 'a'])}; -var N = function() {return uniformDraw(['cat', 'dog'])}; -var V = function() {return uniformDraw(['chases', 'sleeps'])} -var A = function() {return uniformDraw(['diligently'])} -var AP = function() {return uniformDraw([A()])} -var NP = function() {return [D(), N()]} -var VP = function() {return uniformDraw([[V(), AP()], - [V(), NP()]])} -var S = function() {return [NP(), VP()]} - -var psg = Infer({method:'MCMC', burn:10000, samples: 1000, onlyMAP: true}, function() { - let obs = [['the', 'dog'], ['chases', ['a', 'cat']]] - factor(comparray(obs, S())) - - - var sent1 = S(); - var sent2 = S(); - var sent3 = S(); - var sent4 = S(); - var sent5 = S(); - - return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} -}) - -print(psg) -``` - -c) *Which model produced better English sentences, the hidden Markov model in Exercise 3a or the phrase structure grammar model in Exercise 3b? Why do you suppose that is?* - -The phrase structure grammar produces much more sensible sentences, because it has a lot of prior knowlege about sentence structure. For instance, it is not capable of producing sentences with two articles in a row. - diff --git a/solutions/.05.1-sequential-decisions.md b/solutions/.05.1-sequential-decisions.md deleted file mode 100644 index 9df0e00..0000000 --- a/solutions/.05.1-sequential-decisions.md +++ /dev/null @@ -1,407 +0,0 @@ ---- -layout: exercise -title: "Sequential decisions" -description: "Markov Decision Processes and Partially-Observable Markof Decision Processes" ---- - -## Exercise 1 - -Consider our "line-world" example from the chapter: - -'''js -var ___ = ' '; -var D = { name: 'Donut' }; - -var grid = [ - ['___', '___', '___', '___', D] -]; - -var mdp = makeGridWorldMDP({ grid, start: [0, 0] }); - -var transition = function(state, action) { - return state + action; -}; - -var utility = function(state) { - if (state === 4) { - return 1; - } else { - return 0; - } -}; - -var makeAgent = function() { - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-1, 0, 1]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; - - var expectedUtility = function(state, action, timeLeft) { - var u = utility(state, action); - var newTimeLeft = timeLeft - 1; - if (newTimeLeft === 0) { - return u; - } else { - return u + expectation(Infer({ model() { - var nextState = transition(state, action); - var nextAction = sample(act(nextState, newTimeLeft)); - return expectedUtility(nextState, nextAction, newTimeLeft); - }})); - } - }; - - return { act }; -} - - -var act = makeAgent().act; - -var simulate = function(state, timeLeft){ - if (timeLeft === 0){ - return []; - } else { - var action = sample(act(state, timeLeft)); - var nextState = transition(state, action); - return [state].concat(simulate(nextState, timeLeft - 1)) - } -}; - -var startState = 0; -var totalTime = 5; -viz.gridworld(mdp.world, { trajectory : [mdp.startState] }); -print("Agent's trajectory: " + simulate(startState, totalTime)); -''' - -### a) -*Change the world such that it is a loop, i.e. moving right from state `4` moves to state `0`, and moving left from state `0` moves to state `4`. How does this change the agent's sequence of actions?* - -Edit `transition()` to: - -```js -var transition = function(state, action) { - var nextstate = state + action - return (nextstate < 0) ? 4 : - (nextstate > 4) ? 0 : - nextstate; -}; -``` - -Agent now moves left to arrive at Donut shopt in a single move. - -![](Figures/sequential-decisions-1.PNG) - - -### b) -*Change the agent's action space such that the agent can also move two steps at a time. How does this change the agent's sequence of actions?* - -Edit `act()` as follows: - -```js - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-2, -1, 0, 1, 2]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; -``` - -Agent now only requires two moves to reach donut shop. - -![](Figures/sequential-decisions-2.PNG) - -### c) -*Change the agent's utility function such that the agent moves as far as possible to the right, given its available total time.* - -Edit `utility()` as follows: - -```js -var utility = function(state) { - return state; -}; -``` - -Agent now moves right on every time step. This is easiest to see if we increase the total amount of time (e.g., `var totalTime = 7`): - -![](Figures/sequential-decisions-3.PNG) - -## Exercise 2 - -*Consider this "line-world" involving a cookie shop and a donut shop. Bob starts out in between the donut shop and the cookie shop. Assume you observe Bob go to the donut shop in 3 time steps. Edit the code above to write a model to *infer* Bob's utility function for cookies and donuts. Use any reasonable prior.* - -~~~~ -// Anything that doesn't involve random choices can be put outside of the model - -var ___ = ' '; -var D = { name: 'Donut' }; -var C = { name: 'Cookie' }; - - var grid = [ - [C, '___', '___', '___', '___', '___', D] - ]; - -var mdp = makeGridWorldMDP({ grid, start: [3, 0] }); - -var transition = function(state, action) { - return state + action; - }; - -var model = function() { - - let utilities = [sample(Uniform({a: 0, b: 10})), sample(Uniform({a: 0, b: 10}))] - var utility = function(state) { - return (state == 0) ? utilities[0] : - (state == 6) ? utilities[1] : - 0; - }; - - var makeAgent = function() { - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-1, 0, 1]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; - - var expectedUtility = function(state, action, timeLeft) { - var u = utility(state, action); - var newTimeLeft = timeLeft - 1; - if (newTimeLeft === 0) { - return u; - } else { - return u + expectation(Infer({ model() { - var nextState = transition(state, action); - var nextAction = sample(act(nextState, newTimeLeft)); - return expectedUtility(nextState, nextAction, newTimeLeft); - }})); - } - }; - - return { act }; - } - - var act = makeAgent().act; - - var simulate = function(state, timeLeft){ - if (timeLeft === 0){ - return []; - } else { - var action = sample(act(state, timeLeft)); - var nextState = transition(state, action); - return [state].concat(simulate(nextState, timeLeft - 1)) - } - }; - - var startState = 3; - var totalTime = 4; - let path = simulate(startState, totalTime); - condition(path[3] == 6); - return { - Cookie: utilities[0], - Donut: utilities[1] - } - } - -var post = Infer({method: 'MCMC', samples: 10000}, model) -viz(post); -~~~~ - -![](Figures/sequential-decisions-4.PNG) - -Rejection sampling also works pretty well. This is with only 1,000 samples: - -![](Figures/sequential-decisions-5.PNG) - -Either way, we infer that the utility for Donut is likely to be at least slightly higher than that of Cookie. - - -## Exercise 3 - -*Use the codebox below to explore different levels of softmax noise. Find a setting of `utilityTable` and `alpha` such that the agent goes to West and East equally often and nearly always takes the most direct route to both East and West. Included below is code for simulating many trajectories and returning the trajectory length. You may find it helpful to extend this code to measure whether the route taken by the agent is direct or not.* - -The following code is useful for iteratively adjusting the parameters until the desired result is found. - -```js -///fold: -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; -viz.gridworld(world) -/// - - -var utilityTable = { - East: 10, - West: 5.91, - Hill: -10, - timeCost: -1 -} - -var alpha = 5; // <- SOFTMAX NOISE - -// Create parameterized agent -var utility = makeUtilityFunction(utilityTable); -var agent = makeMDPAgent({ utility, alpha }, world); - -var trajectories = Infer({model() { - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - return {locs} - }, - method: 'forward', - samples: 100000 -}); -viz.table(trajectories) -``` - -Note that the parameters given provide a nice result: - - - - -So we can definitely pick some values by trial and error. But that's boring. Let's infer it instead. The utility of West has to be less than the utility of East, or we'd never go to east. So let's fix the utility of East at 10 and find a value for West that is smaller. We'll also pick an alpha. Let's constrain it to between 0.1 and 6.0, just so we don't have too large of a space to search. - -Now, we'll factor an equal number of times on having gone straight to West and having gone straight to East. - -```js -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; - -viz.gridworld(world) -var vals = Infer({ - model() { - var West = uniform({a: 1, b: 10}) - var utilityTable = { - East: 10, - West: West, - Hill: -10, - timeCost: -.1 - } - - // Create parameterized agent - var utility = makeUtilityFunction(utilityTable); - var alpha = uniform(0.1, 5); // <- SOFTMAX NOISE - var agent = makeMDPAgent({ utility, alpha }, world); - repeat(10, function(){ - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - factor(1*(locs == [[0,1],[1,1],[2,1],[2,2]])) - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - factor(1*(locs == [[0,1],[1,1],[2,1],[3,1],[4,1],[4,2]])) - }) - return {West: West, alpha: alpha} - }, - method: 'MCMC', - samples: 5000 -}); -repeat(10,function(){print(sample(vals))}) -``` - -![](Figures/sequential-decisions-6.PNG) - -We can see that a value of West near 9.0 and alpha near 0.4 tends to work. Let's confirm this through forward simulation - -```js -///fold: -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; -viz.gridworld(world) -/// - - -var utilityTable = { - East: 10, - West: 3, - Hill: -10, - timeCost: -.1 -} - -var alpha = 0.4; // <- SOFTMAX NOISE - -// Create parameterized agent -var utility = makeUtilityFunction(utilityTable); -var agent = makeMDPAgent({ utility, alpha }, world); - -var trajectories = Infer({model() { - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - return {locs} - }, - method: 'forward', - samples: 10000 -}); -viz.table(trajectories) -``` \ No newline at end of file From 6a7ffa747cd37ea658f6dc77a4e4490aa93b7e7a Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Mon, 12 Nov 2018 12:39:53 -0500 Subject: [PATCH 12/47] fixed link to Piantadosi, error in hierarchical models exercises. Added answer keys. --- assets/bibliography.bib | 2 +- exercises/09-hierarchical-models.md | 8 +- solutions/04.1-agents-as-programs.md | 424 +++++++++++++++++++++++++ solutions/05-observing-sequences.md | 344 ++++++++++++++++++++ solutions/05.1-sequential-decisions.md | 407 ++++++++++++++++++++++++ 5 files changed, 1180 insertions(+), 5 deletions(-) create mode 100644 solutions/04.1-agents-as-programs.md create mode 100644 solutions/05-observing-sequences.md create mode 100644 solutions/05.1-sequential-decisions.md diff --git a/assets/bibliography.bib b/assets/bibliography.bib index 46d24fe..4d24402 100644 --- a/assets/bibliography.bib +++ b/assets/bibliography.bib @@ -16,7 +16,7 @@ @article{piantadosi2012bootstrapping pages={199--217}, year={2012}, publisher={Elsevier}, - Url={https://colala.bcs.rochester.edu/papers/piantadosi2012bootstrapping.pdf} + Url={http://old.nbu.bg/cogs/events/5_4_D_piantadosi2012bootstrapping.pdf} } @article{cheng1997covariation, diff --git a/exercises/09-hierarchical-models.md b/exercises/09-hierarchical-models.md index 29eaae3..cba2a70 100644 --- a/exercises/09-hierarchical-models.md +++ b/exercises/09-hierarchical-models.md @@ -96,10 +96,10 @@ For each apple in a barrel, assume the probability that the apple is rotten is ` To get a sense of the Beta distribution, run the following code: ~~~~js -viz(Beta({a: 1, b: 1}) -viz(Beta({a: 10, b: 1}) -viz(Beta({a: 1, b: 10}) -viz(Beta({a: .1, b: .2}) +viz(Beta({a: 1, b: 1})) +viz(Beta({a: 10, b: 1})) +viz(Beta({a: 1, b: 10})) +viz(Beta({a: .1, b: .2})) ~~~~ Note that the final example gives a very nice prior for our apples: most of the time, the probability of a rotten apple is quite low. The rest of the time, the probability is very high. Middling probabilities are rare. diff --git a/solutions/04.1-agents-as-programs.md b/solutions/04.1-agents-as-programs.md new file mode 100644 index 0000000..7d69e7f --- /dev/null +++ b/solutions/04.1-agents-as-programs.md @@ -0,0 +1,424 @@ +--- +layout: exercise +title: Agents as Probabilistic Programs - exercises +custom_js: +- assets/js/box2d.js +- assets/js/physics.js +--- + +## Exercise 1: Factors + +### a) + +*Take our standard coin-flipping model. Use `factor` to create a "soft" condition on the outcome being heads, such that there is an approx. 95% chance of heads.* + +```js +var dist = Infer({method: 'enumerate'}, + function () { + var A = flip() + factor(A*3) //edit this line + return A +}); +viz(dist) +``` + +![](Figures/agents-as-programs-1.png) + +This is actually quite close to 95%: + +`{"probs":[0.04742587317756678,0.9525741268224333],"support":[false,true]}` + + +### b) + +In this model, we flip 3 coins. Use `factor` to favor an outcome of 2 heads and 1 tails: + +```js +var softHeads = Infer({}, function() { + var a = flip(0.5); + var b = flip(0.5); + var c = flip(0.5); + factor(1*((a+b+c)==2)); + return a; + } +}); + +viz(softHeads); +``` + +![](Figures/agents-as-programs-2.png) + +## Exercise 2: The Ultimatum Game + +### a) + +*The ultimatum game requires two players: A proposer and a responder. The proposer has to decide how to allocate \$10 between the two players in \$1 increments. Once this proposal is made, the responder decides whether to accept the proposal. If the responder accepts, both players are awarded the money according to the proposal. If the responder rejects, neither player gets anything.* + +*If the responder was a strict utilitarian, s/he would accept any offer of \$1 or more. Assume the proposer is a soft maximizer who wants to keep as much of the \$10 as possible. Complete the code below to find out how much the proposer will offer:* + +~~~~ +var responder = function(offer) { + + return (offer>0 ? true : false); + +} + +var proposer = Infer({method: "enumerate"}, function(){ + + var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); + var reward = responder(offer) ? (10 - offer) : 0; + + factor(reward) + return(offer) + }) + +viz(proposer); +~~~~ + +![](Figures/agents-as-programs-3.png) + +### b) + +*People, it turns out, act very differently than the model above suggests. Responders will often reject low offers as "unfair", even though this means they get nothing. Assume that the responder decides whether to accept in proportion to the percentage of the \$10 allocated to her, raised to some power `alpha` (you can think of `alpha` as "spitefulness"). Complete the code below to determine how much the proposer should offer:* + +```js +var alpha = 2 + +var responder = function(offer, alpha) { + var p = Math.pow(offer/10,alpha) + return(flip(p)); +} + +var proposer = Infer({method: "enumerate"}, function(){ + var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); + var reward = responder(offer,alpha) ? (10 - offer) : 0; + factor(reward) + return(offer) + }) + +viz(proposer); +``` + +![](Figures/agents-as-programs-4.png) + +### c) + +*You can think of the variable `alpha` in the code above as encoding spitefulness: the degree to which the responder is willing to forego a reward in order to prevent the proposer from having a reward. See how setting `alpha` to 4, 6, 10, 25, and 50 affects what the proposer does. Explain the results.* + +~![](Figures/agents-as-programs-5-1.png) +~![](Figures/agents-as-programs-5-2.png) +~![](Figures/agents-as-programs-5-3.png) +~![](Figures/agents-as-programs-5-4.png) +~![](Figures/agents-as-programs-5-5.png) + +As alpha increases, the responder becomes increasingly unlikely to accept any offer less than \$10. Thus, no matter what the proposer offers, she'll probably end up with \$0. This makes her indifferent to the choice. + +### d) + +*The models above assume the proposer knows the responder's decision function. Let's soften that assumption: the proposer knows that the responder's value of `alpha` is somewhere on the range [0.5, 5]. Suppose the proposer offered \$2 and the responder rejects it. What is the most likely level of `alpha`?* + +(Hint: you may find it helpful to find a different place for `alpha` than within the definition of `responder`.) + +```js +var responder = function(offer, alpha) { + var p = Math.pow(offer/10,alpha) + return(flip(p)); +} + +var proposer = Infer({method: "MCMC", samples:50000}, function(){ + var alpha = uniform(0.5,5) + var offer = 2; + var reward = responder(offer, alpha) ? (10 - offer) : 0; + condition(reward==0) + return(alpha) +}) + +viz(proposer) +``` + +![](Figures/agents-as-programs-6.png) + + +### e) + +*Again, suppose the proposer offered \$2 and the responder rejected it. Suppose they are going to play a second round. How much should the proposer offer? How does this change if the first (rejected) offer was \$8?* + +Here is a straight-forward if not especially computationally-efficient model: + +```js +var responder = function(offer, alpha) { + var p = Math.pow(offer/10,alpha) + return(flip(p)); +} + +var proposer1 = Infer({method: "MCMC", samples:50000}, function(){ + var alpha = uniform(0.5,5) + var offer1 = 2 + var reward1 = responder(offer1, alpha) ? (10 - offer1): 0; + condition(reward1==0) + return(alpha) +}) + +var makeoffer = Infer({method: "forward", samples:1000}, function(){ + + var alpha2 = sample(proposer1) + + var proposer2 = Infer({method: "MCMC", samples:5000}, function(){ + var offer2 = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); + var reward2 = responder(offer2, alpha2) ? (10 - offer2) : 0 + factor(reward2) + return(offer2) + }) + + return sample(proposer2) +}); + +viz(makeoffer) +``` + +With offer1 = 2: + +![](Figures/agents-as-programs-7-1.png) + +With offer1 = 8: + +![](Figures/agents-as-programs-7-2.png) + +The differences are underwhelming. The reason is `factor(reward2)` actually puts a lot of pressure on the proposer getting a large payout. If we change `factor(reward2)` to `factor(Math.pow(reward2,1))`, we get more impressive differences. + +With offer1 = 2: + +![](Figures/agents-as-programs-7-3.png) + +With offer1 = 8: + +![](Figures/agents-as-programs-7-4.png) + +## Exercise 3: The Prisoner's Dilemma + +*In the prisoner's dilemma, two thieves work together on a bank heist. Afterwards, they are apprehended by the police. The police interrogate the thieves separately. They tell each thief that if she confesses, she will get a lenient sentence. If not, she will get 10 years. However, the thieves know that the police need at least one of them to confess; if neither of them confesses, the police don't have enough evidence to charge them, and they will both go free.* + +*What's the longest the lenient sentence can be (in round years) such that it makes sense for the thief to confess (that is, where she has a greater than 50% chance of confessing)? Use `factor(percentYearsFreedom)` where `percentYearsFreedom` is the percentage of the next 10 years the thief will not be in jail. (Assume that this incident has scared her straight and she will not commit any other crimes.)* + +```js +var thiefRats = function(){ + return (flip()? true: false) +} + +var lenient = 6 + +var thief = Infer({}, function(){ + var otherThiefRats = thiefRats(); + var IRat = thiefRats(); + var years = (otherThiefRats? + (IRat? lenient : 10) : + (IRat? lenient : 0)); + var percentYearsFreedom = (10-years)/10 + factor(percentYearsFreedom) + return(IRat) +}) + +viz(thief) +``` + +From trial-and-error, if the lenient sentence is 6 years, the thief should be indifferent. + +![](Figures/agents-as-programs-11.png) + +Alternatively, you can infer the correct answer as follows: + +```js +var sentences = RandomInteger({n:10}) + +var thiefRats = function(){ + return (flip()? true: false) +} + +var thief = Infer({}, function(){ + var LenientSentence = sample(sentences); + var iRat = thiefRats() + var uRat = thiefRats() + var percentYearsFreedom = 1 - (iRat ? LenientSentence/10 : (uRat ? LenientSentence/10 : 0)) + factor (1*(percentYearsFreedom > .5)) + return LenientSentence +}) + +viz(thief) +``` + +![](Figures/agents-as-programs-12.png) + +As you can see, we end up prefering lenient sentences no longer than 4 years. + +## Exercise 4: Exploring RSA + +For this exercise, modify the RSA model introduced in the main text as necessary. + +### a) + +*How does increasing the optimality of the speaker affect the pragmatic listener's inferences? Try a couple values and report the results.* + +For convenience, we turn `alpha` into a parameter: + +```js +// Here is the code from the Frank and Goodman RSA model + +// possible objects of reference +var meaningPrior = function() { + uniformDraw([ + {shape: "square", color: "blue"}, + {shape: "circle", color: "blue"}, + {shape: "square", color: "green"} + ]) +} + +// possible one-word utterances +var utterances = ["blue","green","square","circle"] + +// meaning function to interpret the utterances +var meaning = function(utterance, obj){ + (utterance === "blue" || utterance === "green") ? utterance === obj.color : + (utterance === "circle" || utterance === "square") ? utterance === obj.shape : + true +} + +// literal listener +var literalListener = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior(); + condition(meaning(utterance, obj)) + return obj + }}) +} + +// pragmatic speaker +var speaker = function(obj,alpha){ + Infer({model: function(){ + var utterance = uniformDraw(utterances) + factor(alpha * literalListener(utterance).score(obj)) + return utterance + }}) +} + +// pragmatic listener +var pragmaticListener = function(utterance,alpha){ + Infer({model: function(){ + var obj = meaningPrior() + observe(speaker(obj,alpha),utterance) + return obj + }}) +} + + +print("pragmatic listener's interpretation of 'blue', given alpha = 0.01:") +viz.table(pragmaticListener("blue", 0.01)) + +print("pragmatic listener's interpretation of 'blue', given alpha = 1:") +viz.table(pragmaticListener("blue", 1)) + +print("pragmatic listener's interpretation of 'blue', given alpha = 4:") +viz.table(pragmaticListener("blue", 4)) + +print("pragmatic listener's interpretation of 'blue', given alpha = 10:") +viz.table(pragmaticListener("blue", 10)) +``` + +![](Figures/agents-as-programs-8.png) + +As `alpha` increases, the pragmatic listener is increasingly likely to interpret `blue` as referring to the blue square. + +### b) + +*How do the inferences of $$L_{2}$$ compare to those of $$L_{1}$$?* + +```js +// Here is the code from the Frank and Goodman RSA model + +// possible objects of reference +var meaningPrior = function() { + uniformDraw([ + {shape: "square", color: "blue"}, + {shape: "circle", color: "blue"}, + {shape: "square", color: "green"} + ]) +} + +// possible one-word utterances +var utterances = ["blue","green","square","circle"] + +// meaning function to interpret the utterances +var meaning = function(utterance, obj){ + (utterance === "blue" || utterance === "green") ? utterance === obj.color : + (utterance === "circle" || utterance === "square") ? utterance === obj.shape : + true +} + +var alpha = 1 + +// literal listener +var literalListener = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior(); + condition(meaning(utterance, obj)) + return obj + }}) +} + +// pragmatic speaker +var speaker = function(obj){ + Infer({model: function(){ + var utterance = uniformDraw(utterances) + factor(alpha * literalListener(utterance).score(obj)) + return utterance + }}) +} + +// pragmatic listener +var pragmaticListener = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior() + observe(speaker(obj),utterance) + return obj + }}) +} + +// pragmatic speaker2 +var speaker2 = function(obj){ + Infer({model: function(){ + var utterance = uniformDraw(utterances) + factor(alpha * pragmaticListener(utterance).score(obj)) + return utterance + }}) +} + +// pragmatic listener #2 +var listener3 = function(utterance){ + Infer({model: function(){ + var obj = meaningPrior() + observe(speaker2(obj),utterance) + return obj + }}) +} + +print("L1's interpretation of 'blue'") +viz.table(pragmaticListener("blue")) + +print("L2's interpretation of 'blue'") +viz.table(listener3("blue")) +``` + +![](Figures/agents-as-programs-9.png) + +There is little additional effect. + +### c) + +*Add a blue circle to the scenario. What happens to the interpretion of "blue"? Why?* + +It becomes 50/50 between 'blue circle' and 'blue square'. This is because 'blue' is now useful for distinguishing between the two circles as well. + +### d) + +*Is there any way to get “blue” to refer to something green? Why or why not?* + +In this model, the literal listener expects the speaker to tell the literal truth, albeit with some noise. So there is no way to prefer an interpretation that is literally false to one that is literally true. So we'd need to relax the assumption that the literal listener expects the speaker to always tell the truth. \ No newline at end of file diff --git a/solutions/05-observing-sequences.md b/solutions/05-observing-sequences.md new file mode 100644 index 0000000..6784ab0 --- /dev/null +++ b/solutions/05-observing-sequences.md @@ -0,0 +1,344 @@ +--- +layout: exercise +title: Observing sequences - exercises +--- + + +## Exercise 1: What word comes next? + +a) *In human languages, certain words are more likely to follow others. "The" is more likely to be followed by "dog" than "rhino", and even less likely to be followed by "sings". * + +*Let's consider a fragment of English consisting of only the words "dogs", "cats", "chase", and "sleep". This fragment does not contain punctuation or capital letters. Now, suppose that somebody says, "dogs chase cats". Determine how likely "chase" is to be followed by each word in the vocabulary.* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + + let obs = ['dogs', 'chase', 'cats']; + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return []; + return [word].concat(generateSentence(word, sentence)); + } + + factor(comparray(obs, generateSentence('start'))) + + return transition('chase'); + +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-1.png) + +b) *Assume now that in addition to saying "dogs chase cats", your interlocutor said a second sentence. However, you only heard the first word, which again was "dogs". What is the distribution across likely second words in this sentence? NOTE: If you are not careful, you will end up assigning some probability to "undefined". Be careful.* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' + return [word].concat(generateSentence(word, sentence)); + } + + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[0] == 'dogs'); + return newSentence[1]; +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-2.png) + +c) *Suppose again that somebody said "dogs chase cats". Now suppose they spoke another sentence, where again the second word was "chase". Show that the most likely first word was "dogs". * + +```js +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' + return [word].concat(generateSentence(word, sentence)); + } + + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[1] == 'chase'); + return newSentence[0]; +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-3.png) + +## Exercise 2: Hidden Markov Model + +a) *Return to the model from Exercise 1b. Suppose that the second sentence, instead of beginning with "dogs", began with "cats". Provide the marginal distribution on the second word of that sentence.* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { + + let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + let generateSentence = function(lastState, sentence) { + let word = transition(lastState); + if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' + return [word].concat(generateSentence(word, sentence)); + } + + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[0] == 'cats'); + return newSentence[1]; +}) + +viz(mm) +``` + +![](Figures/sequences-of-observations-4.png) + +b) *In Exercise 2a, you should have found that an ungrammatical sequence like "cats cats" is as likely as a grammatical sequence like "cats sleep". Why is this?* + +The model hasn't observed anything other than 'stop' as following the word 'cats'. This implies that 'stop' is the most likely option, but also that the algorithm is totally indifferent towards all the other words -- since this is a language without grammar, all words are treated the same (they literally coexist as entries in a single list). + +c) *Let's try a hidden Markov model instead. Note that two of the words in our fragment of English are nouns ("dogs", "cats") and two are verbs ("chase", "sleep").* + +*Model sentence generation as involving Markov transitions between parts of speech, rather than between the words themselves. * + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var drawWord = function(pos){ + return (pos=="N") ? uniformDraw(['dogs','cats']) : + (pos=="V") ? uniformDraw(['chase','sleep']) : + 'stop' +} +var POS = ["N", "V", "stop"] + +var posToDistribution = mem(function(pos) { + return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) + }) + +var transition = function(pos) { + return categorical({ps: posToDistribution(pos), vs: POS}) + } + +let generateSentence = function(lastPOS) { + let nextPOS = transition(lastPOS); + let word = drawWord(nextPOS); + return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); +} + +var sentence = generateSentence("start"); +print(sentence) +``` + +d) *Try Exercise 2a, but using our new hidden Markov model. Show that we are now more likely to get the grammatical phrases "cats chase" or "cats sleep" than "cats cats" or "cats dogs".* + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var drawWord = function(pos){ + return (pos=="N") ? uniformDraw(['dogs','cats']) : + (pos=="V") ? uniformDraw(['chase','sleep']) : + 'stop' +} +var POS = ["N", "V", "stop"] + +var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: false}, function() { + var posToDistribution = mem(function(pos) { + return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) + }) + + var transition = function(pos) { + return categorical({ps: posToDistribution(pos), vs: POS}) + } + + let generateSentence = function(lastPOS) { + let nextPOS = transition(lastPOS); + let word = drawWord(nextPOS); + return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); + } + let obs = ['dogs', 'chase', 'cats', 'stop']; + factor(comparray(obs, generateSentence('start'))) + + let newSentence = generateSentence('start'); + factor(newSentence[0] == 'cats'); + return newSentence[1]; +}) + +viz(hmm) +``` + +![](Figures/sequences-of-observations-5.png) + +## Exercise 3: Phrase structure grammars + +a) *Extend your hidden Markov model from Exercise 2 so that our fragment of English additionally includes the determiners "the" and "a" as well as the adverb "diligently". Make "dogs", "cats", "chase", and "sleep" singular ("dog", "cat", "chases", "sleeps"). Condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* + +*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. + + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var drawWord = function(pos){ + return (pos=="N") ? uniformDraw(['dog','cat']) : + (pos=="V") ? uniformDraw(['chases','sleeps']) : + (pos=="D") ? uniformDraw(['the','a']) : + (pos=="A") ? 'dilligently' : + 'stop' +} +var POS = ["N", "V", "D", "A", "stop"] + +var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: true}, function() { + var posToDistribution = mem(function(pos) { + return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) + }) + + var transition = function(pos) { + return categorical({ps: posToDistribution(pos), vs: POS}) + } + + let generateSentence = function(lastPOS) { + let nextPOS = transition(lastPOS); + let word = drawWord(nextPOS); + return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); + } + let obs = ['the', 'dog', 'chases', 'a', 'cat', 'stop']; + + factor(comparray(obs, generateSentence('start'))*5) + + var sent1 = generateSentence('start'); + var sent2 = generateSentence('start'); + var sent3 = generateSentence('start'); + var sent4 = generateSentence('start'); + var sent5 = generateSentence('start'); + + return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} +}) + +print(hmm) +``` + +b) *Let us consider a phrase structure grammar for our English fragment instead, modeled on the one in Chapter 5. Again, condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* + +*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. + +```js +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; + +var D = function() {return uniformDraw(['the', 'a'])}; +var N = function() {return uniformDraw(['cat', 'dog'])}; +var V = function() {return uniformDraw(['chases', 'sleeps'])} +var A = function() {return uniformDraw(['diligently'])} +var AP = function() {return uniformDraw([A()])} +var NP = function() {return [D(), N()]} +var VP = function() {return uniformDraw([[V(), AP()], + [V(), NP()]])} +var S = function() {return [NP(), VP()]} + +var psg = Infer({method:'MCMC', burn:10000, samples: 1000, onlyMAP: true}, function() { + let obs = [['the', 'dog'], ['chases', ['a', 'cat']]] + factor(comparray(obs, S())) + + + var sent1 = S(); + var sent2 = S(); + var sent3 = S(); + var sent4 = S(); + var sent5 = S(); + + return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} +}) + +print(psg) +``` + +c) *Which model produced better English sentences, the hidden Markov model in Exercise 3a or the phrase structure grammar model in Exercise 3b? Why do you suppose that is?* + +The phrase structure grammar produces much more sensible sentences, because it has a lot of prior knowlege about sentence structure. For instance, it is not capable of producing sentences with two articles in a row. + diff --git a/solutions/05.1-sequential-decisions.md b/solutions/05.1-sequential-decisions.md new file mode 100644 index 0000000..9df0e00 --- /dev/null +++ b/solutions/05.1-sequential-decisions.md @@ -0,0 +1,407 @@ +--- +layout: exercise +title: "Sequential decisions" +description: "Markov Decision Processes and Partially-Observable Markof Decision Processes" +--- + +## Exercise 1 + +Consider our "line-world" example from the chapter: + +'''js +var ___ = ' '; +var D = { name: 'Donut' }; + +var grid = [ + ['___', '___', '___', '___', D] +]; + +var mdp = makeGridWorldMDP({ grid, start: [0, 0] }); + +var transition = function(state, action) { + return state + action; +}; + +var utility = function(state) { + if (state === 4) { + return 1; + } else { + return 0; + } +}; + +var makeAgent = function() { + var act = function(state, timeLeft) { + return Infer({ model() { + var action = uniformDraw([-1, 0, 1]); + var eu = expectedUtility(state, action, timeLeft); + factor(100 * eu); + return action; + }}); + }; + + var expectedUtility = function(state, action, timeLeft) { + var u = utility(state, action); + var newTimeLeft = timeLeft - 1; + if (newTimeLeft === 0) { + return u; + } else { + return u + expectation(Infer({ model() { + var nextState = transition(state, action); + var nextAction = sample(act(nextState, newTimeLeft)); + return expectedUtility(nextState, nextAction, newTimeLeft); + }})); + } + }; + + return { act }; +} + + +var act = makeAgent().act; + +var simulate = function(state, timeLeft){ + if (timeLeft === 0){ + return []; + } else { + var action = sample(act(state, timeLeft)); + var nextState = transition(state, action); + return [state].concat(simulate(nextState, timeLeft - 1)) + } +}; + +var startState = 0; +var totalTime = 5; +viz.gridworld(mdp.world, { trajectory : [mdp.startState] }); +print("Agent's trajectory: " + simulate(startState, totalTime)); +''' + +### a) +*Change the world such that it is a loop, i.e. moving right from state `4` moves to state `0`, and moving left from state `0` moves to state `4`. How does this change the agent's sequence of actions?* + +Edit `transition()` to: + +```js +var transition = function(state, action) { + var nextstate = state + action + return (nextstate < 0) ? 4 : + (nextstate > 4) ? 0 : + nextstate; +}; +``` + +Agent now moves left to arrive at Donut shopt in a single move. + +![](Figures/sequential-decisions-1.PNG) + + +### b) +*Change the agent's action space such that the agent can also move two steps at a time. How does this change the agent's sequence of actions?* + +Edit `act()` as follows: + +```js + var act = function(state, timeLeft) { + return Infer({ model() { + var action = uniformDraw([-2, -1, 0, 1, 2]); + var eu = expectedUtility(state, action, timeLeft); + factor(100 * eu); + return action; + }}); + }; +``` + +Agent now only requires two moves to reach donut shop. + +![](Figures/sequential-decisions-2.PNG) + +### c) +*Change the agent's utility function such that the agent moves as far as possible to the right, given its available total time.* + +Edit `utility()` as follows: + +```js +var utility = function(state) { + return state; +}; +``` + +Agent now moves right on every time step. This is easiest to see if we increase the total amount of time (e.g., `var totalTime = 7`): + +![](Figures/sequential-decisions-3.PNG) + +## Exercise 2 + +*Consider this "line-world" involving a cookie shop and a donut shop. Bob starts out in between the donut shop and the cookie shop. Assume you observe Bob go to the donut shop in 3 time steps. Edit the code above to write a model to *infer* Bob's utility function for cookies and donuts. Use any reasonable prior.* + +~~~~ +// Anything that doesn't involve random choices can be put outside of the model + +var ___ = ' '; +var D = { name: 'Donut' }; +var C = { name: 'Cookie' }; + + var grid = [ + [C, '___', '___', '___', '___', '___', D] + ]; + +var mdp = makeGridWorldMDP({ grid, start: [3, 0] }); + +var transition = function(state, action) { + return state + action; + }; + +var model = function() { + + let utilities = [sample(Uniform({a: 0, b: 10})), sample(Uniform({a: 0, b: 10}))] + var utility = function(state) { + return (state == 0) ? utilities[0] : + (state == 6) ? utilities[1] : + 0; + }; + + var makeAgent = function() { + var act = function(state, timeLeft) { + return Infer({ model() { + var action = uniformDraw([-1, 0, 1]); + var eu = expectedUtility(state, action, timeLeft); + factor(100 * eu); + return action; + }}); + }; + + var expectedUtility = function(state, action, timeLeft) { + var u = utility(state, action); + var newTimeLeft = timeLeft - 1; + if (newTimeLeft === 0) { + return u; + } else { + return u + expectation(Infer({ model() { + var nextState = transition(state, action); + var nextAction = sample(act(nextState, newTimeLeft)); + return expectedUtility(nextState, nextAction, newTimeLeft); + }})); + } + }; + + return { act }; + } + + var act = makeAgent().act; + + var simulate = function(state, timeLeft){ + if (timeLeft === 0){ + return []; + } else { + var action = sample(act(state, timeLeft)); + var nextState = transition(state, action); + return [state].concat(simulate(nextState, timeLeft - 1)) + } + }; + + var startState = 3; + var totalTime = 4; + let path = simulate(startState, totalTime); + condition(path[3] == 6); + return { + Cookie: utilities[0], + Donut: utilities[1] + } + } + +var post = Infer({method: 'MCMC', samples: 10000}, model) +viz(post); +~~~~ + +![](Figures/sequential-decisions-4.PNG) + +Rejection sampling also works pretty well. This is with only 1,000 samples: + +![](Figures/sequential-decisions-5.PNG) + +Either way, we infer that the utility for Donut is likely to be at least slightly higher than that of Cookie. + + +## Exercise 3 + +*Use the codebox below to explore different levels of softmax noise. Find a setting of `utilityTable` and `alpha` such that the agent goes to West and East equally often and nearly always takes the most direct route to both East and West. Included below is code for simulating many trajectories and returning the trajectory length. You may find it helpful to extend this code to measure whether the route taken by the agent is direct or not.* + +The following code is useful for iteratively adjusting the parameters until the desired result is found. + +```js +///fold: +var makeHikeMDP = function(options) { + var H = { name: 'Hill' }; + var W = { name: 'West' }; + var E = { name: 'East' }; + var ___ = ' '; + var grid = [ + [___, ___, ___, ___, ___], + [___, '#', ___, ___, ___], + [___, '#', W , '#', E ], + [___, ___, ___, ___, ___], + [ H , H , H , H , H ] + ]; + return makeGridWorldMDP(_.assign({ grid }, options)); +}; + +var mdp = makeHikeMDP({ + start: [0, 1], + totalTime: 13, + transitionNoiseProbability: 0.1 +}); + +var world = mdp.world; +var startState = mdp.startState; +var makeUtilityFunction = mdp.makeUtilityFunction; +viz.gridworld(world) +/// + + +var utilityTable = { + East: 10, + West: 5.91, + Hill: -10, + timeCost: -1 +} + +var alpha = 5; // <- SOFTMAX NOISE + +// Create parameterized agent +var utility = makeUtilityFunction(utilityTable); +var agent = makeMDPAgent({ utility, alpha }, world); + +var trajectories = Infer({model() { + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + return {locs} + }, + method: 'forward', + samples: 100000 +}); +viz.table(trajectories) +``` + +Note that the parameters given provide a nice result: + + + + +So we can definitely pick some values by trial and error. But that's boring. Let's infer it instead. The utility of West has to be less than the utility of East, or we'd never go to east. So let's fix the utility of East at 10 and find a value for West that is smaller. We'll also pick an alpha. Let's constrain it to between 0.1 and 6.0, just so we don't have too large of a space to search. + +Now, we'll factor an equal number of times on having gone straight to West and having gone straight to East. + +```js +var makeHikeMDP = function(options) { + var H = { name: 'Hill' }; + var W = { name: 'West' }; + var E = { name: 'East' }; + var ___ = ' '; + var grid = [ + [___, ___, ___, ___, ___], + [___, '#', ___, ___, ___], + [___, '#', W , '#', E ], + [___, ___, ___, ___, ___], + [ H , H , H , H , H ] + ]; + return makeGridWorldMDP(_.assign({ grid }, options)); +}; + +var mdp = makeHikeMDP({ + start: [0, 1], + totalTime: 13, + transitionNoiseProbability: 0.1 +}); + +var world = mdp.world; +var startState = mdp.startState; +var makeUtilityFunction = mdp.makeUtilityFunction; + +viz.gridworld(world) +var vals = Infer({ + model() { + var West = uniform({a: 1, b: 10}) + var utilityTable = { + East: 10, + West: West, + Hill: -10, + timeCost: -.1 + } + + // Create parameterized agent + var utility = makeUtilityFunction(utilityTable); + var alpha = uniform(0.1, 5); // <- SOFTMAX NOISE + var agent = makeMDPAgent({ utility, alpha }, world); + repeat(10, function(){ + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + factor(1*(locs == [[0,1],[1,1],[2,1],[2,2]])) + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + factor(1*(locs == [[0,1],[1,1],[2,1],[3,1],[4,1],[4,2]])) + }) + return {West: West, alpha: alpha} + }, + method: 'MCMC', + samples: 5000 +}); +repeat(10,function(){print(sample(vals))}) +``` + +![](Figures/sequential-decisions-6.PNG) + +We can see that a value of West near 9.0 and alpha near 0.4 tends to work. Let's confirm this through forward simulation + +```js +///fold: +var makeHikeMDP = function(options) { + var H = { name: 'Hill' }; + var W = { name: 'West' }; + var E = { name: 'East' }; + var ___ = ' '; + var grid = [ + [___, ___, ___, ___, ___], + [___, '#', ___, ___, ___], + [___, '#', W , '#', E ], + [___, ___, ___, ___, ___], + [ H , H , H , H , H ] + ]; + return makeGridWorldMDP(_.assign({ grid }, options)); +}; + +var mdp = makeHikeMDP({ + start: [0, 1], + totalTime: 13, + transitionNoiseProbability: 0.1 +}); + +var world = mdp.world; +var startState = mdp.startState; +var makeUtilityFunction = mdp.makeUtilityFunction; +viz.gridworld(world) +/// + + +var utilityTable = { + East: 10, + West: 3, + Hill: -10, + timeCost: -.1 +} + +var alpha = 0.4; // <- SOFTMAX NOISE + +// Create parameterized agent +var utility = makeUtilityFunction(utilityTable); +var agent = makeMDPAgent({ utility, alpha }, world); + +var trajectories = Infer({model() { + var trajectory = simulateMDP(startState, world, agent); + var locs = map(function(v){return(v.loc)}, trajectory) + return {locs} + }, + method: 'forward', + samples: 10000 +}); +viz.table(trajectories) +``` \ No newline at end of file From d2e3bd01b36b330c0e79cccbe3cc3d112dad9e05 Mon Sep 17 00:00:00 2001 From: jkhartshorne Date: Tue, 20 Nov 2018 10:07:38 -0500 Subject: [PATCH 13/47] All solutions now visible --- ...ional-inference.md => 08-learning-as-conditional-inference.md} | 0 .../{.09-hierarchical-models.md => 09-hierarchical-models.md} | 0 ....14-bayesian-data-analysis.md => 14-bayesian-data-analysis.md} | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename solutions/{.08-learning-as-conditional-inference.md => 08-learning-as-conditional-inference.md} (100%) rename solutions/{.09-hierarchical-models.md => 09-hierarchical-models.md} (100%) rename solutions/{.14-bayesian-data-analysis.md => 14-bayesian-data-analysis.md} (100%) diff --git a/solutions/.08-learning-as-conditional-inference.md b/solutions/08-learning-as-conditional-inference.md similarity index 100% rename from solutions/.08-learning-as-conditional-inference.md rename to solutions/08-learning-as-conditional-inference.md diff --git a/solutions/.09-hierarchical-models.md b/solutions/09-hierarchical-models.md similarity index 100% rename from solutions/.09-hierarchical-models.md rename to solutions/09-hierarchical-models.md diff --git a/solutions/.14-bayesian-data-analysis.md b/solutions/14-bayesian-data-analysis.md similarity index 100% rename from solutions/.14-bayesian-data-analysis.md rename to solutions/14-bayesian-data-analysis.md From 7d76a30edaac307a7bcd0c4c448f48b9f3c1bef7 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Sun, 22 Jan 2023 15:40:52 -0500 Subject: [PATCH 14/47] Not sure what this commit is --- .gitattributes | 0 .gitignore | 0 CNAME | 0 README.md | 0 _config.yml | 0 _layouts/chapter.html | 0 _layouts/default.html | 0 _layouts/exercise.html | 0 _prod.yml | 0 assets/bibliography.bib | 0 assets/css/bootstrap-theme.min.css | 0 assets/css/bootstrap-theme.min.css.map | 0 assets/css/bootstrap.min.css | 0 assets/css/bootstrap.min.css.map | 0 assets/css/default.css | 0 assets/css/draw.css | 0 assets/css/fonts/KaTeX_AMS-Regular.eot | Bin assets/css/fonts/KaTeX_AMS-Regular.ttf | Bin assets/css/fonts/KaTeX_AMS-Regular.woff | Bin assets/css/fonts/KaTeX_AMS-Regular.woff2 | Bin assets/css/fonts/KaTeX_Caligraphic-Bold.eot | Bin assets/css/fonts/KaTeX_Caligraphic-Bold.ttf | Bin assets/css/fonts/KaTeX_Caligraphic-Bold.woff | Bin assets/css/fonts/KaTeX_Caligraphic-Bold.woff2 | Bin .../css/fonts/KaTeX_Caligraphic-Regular.eot | Bin .../css/fonts/KaTeX_Caligraphic-Regular.ttf | Bin .../css/fonts/KaTeX_Caligraphic-Regular.woff | Bin .../css/fonts/KaTeX_Caligraphic-Regular.woff2 | Bin assets/css/fonts/KaTeX_Fraktur-Bold.eot | Bin assets/css/fonts/KaTeX_Fraktur-Bold.ttf | Bin assets/css/fonts/KaTeX_Fraktur-Bold.woff | Bin assets/css/fonts/KaTeX_Fraktur-Bold.woff2 | Bin assets/css/fonts/KaTeX_Fraktur-Regular.eot | Bin assets/css/fonts/KaTeX_Fraktur-Regular.ttf | Bin assets/css/fonts/KaTeX_Fraktur-Regular.woff | Bin assets/css/fonts/KaTeX_Fraktur-Regular.woff2 | Bin assets/css/fonts/KaTeX_Main-Bold.eot | Bin assets/css/fonts/KaTeX_Main-Bold.ttf | Bin assets/css/fonts/KaTeX_Main-Bold.woff | Bin assets/css/fonts/KaTeX_Main-Bold.woff2 | Bin assets/css/fonts/KaTeX_Main-Italic.eot | Bin assets/css/fonts/KaTeX_Main-Italic.ttf | Bin assets/css/fonts/KaTeX_Main-Italic.woff | Bin assets/css/fonts/KaTeX_Main-Italic.woff2 | Bin assets/css/fonts/KaTeX_Main-Regular.eot | Bin assets/css/fonts/KaTeX_Main-Regular.ttf | Bin assets/css/fonts/KaTeX_Main-Regular.woff | Bin assets/css/fonts/KaTeX_Main-Regular.woff2 | Bin assets/css/fonts/KaTeX_Math-BoldItalic.eot | Bin assets/css/fonts/KaTeX_Math-BoldItalic.ttf | Bin assets/css/fonts/KaTeX_Math-BoldItalic.woff | Bin assets/css/fonts/KaTeX_Math-BoldItalic.woff2 | Bin assets/css/fonts/KaTeX_Math-Italic.eot | Bin assets/css/fonts/KaTeX_Math-Italic.ttf | Bin assets/css/fonts/KaTeX_Math-Italic.woff | Bin assets/css/fonts/KaTeX_Math-Italic.woff2 | Bin assets/css/fonts/KaTeX_Math-Regular.eot | Bin assets/css/fonts/KaTeX_Math-Regular.ttf | Bin assets/css/fonts/KaTeX_Math-Regular.woff | Bin assets/css/fonts/KaTeX_Math-Regular.woff2 | Bin assets/css/fonts/KaTeX_SansSerif-Bold.eot | Bin assets/css/fonts/KaTeX_SansSerif-Bold.ttf | Bin assets/css/fonts/KaTeX_SansSerif-Bold.woff | Bin assets/css/fonts/KaTeX_SansSerif-Bold.woff2 | Bin assets/css/fonts/KaTeX_SansSerif-Italic.eot | Bin assets/css/fonts/KaTeX_SansSerif-Italic.ttf | Bin assets/css/fonts/KaTeX_SansSerif-Italic.woff | Bin assets/css/fonts/KaTeX_SansSerif-Italic.woff2 | Bin assets/css/fonts/KaTeX_SansSerif-Regular.eot | Bin assets/css/fonts/KaTeX_SansSerif-Regular.ttf | Bin assets/css/fonts/KaTeX_SansSerif-Regular.woff | Bin .../css/fonts/KaTeX_SansSerif-Regular.woff2 | Bin assets/css/fonts/KaTeX_Script-Regular.eot | Bin assets/css/fonts/KaTeX_Script-Regular.ttf | Bin assets/css/fonts/KaTeX_Script-Regular.woff | Bin assets/css/fonts/KaTeX_Script-Regular.woff2 | Bin assets/css/fonts/KaTeX_Size1-Regular.eot | Bin assets/css/fonts/KaTeX_Size1-Regular.ttf | Bin assets/css/fonts/KaTeX_Size1-Regular.woff | Bin assets/css/fonts/KaTeX_Size1-Regular.woff2 | Bin assets/css/fonts/KaTeX_Size2-Regular.eot | Bin assets/css/fonts/KaTeX_Size2-Regular.ttf | Bin assets/css/fonts/KaTeX_Size2-Regular.woff | Bin assets/css/fonts/KaTeX_Size2-Regular.woff2 | Bin assets/css/fonts/KaTeX_Size3-Regular.eot | Bin assets/css/fonts/KaTeX_Size3-Regular.ttf | Bin assets/css/fonts/KaTeX_Size3-Regular.woff | Bin assets/css/fonts/KaTeX_Size3-Regular.woff2 | Bin assets/css/fonts/KaTeX_Size4-Regular.eot | Bin assets/css/fonts/KaTeX_Size4-Regular.ttf | Bin assets/css/fonts/KaTeX_Size4-Regular.woff | Bin assets/css/fonts/KaTeX_Size4-Regular.woff2 | Bin assets/css/fonts/KaTeX_Typewriter-Regular.eot | Bin assets/css/fonts/KaTeX_Typewriter-Regular.ttf | Bin .../css/fonts/KaTeX_Typewriter-Regular.woff | Bin .../css/fonts/KaTeX_Typewriter-Regular.woff2 | Bin assets/css/index.css | 0 assets/css/katex.min.css | 0 assets/css/littlefoot.css | 0 assets/css/webppl-editor.css | 0 assets/css/webppl-viz.css | 0 assets/data/enumerateToW1.csv | 0 assets/data/mcmc100_positiveStrength_ToW1.csv | 0 assets/data/towData.Rdata | Bin assets/data/towData.csv | 0 assets/img/04_01_a.png | Bin assets/img/04_01_b.png | Bin assets/img/04_01_c.png | Bin assets/img/04_01_d.png | Bin assets/img/04_01_e.png | Bin assets/img/Beta_distribution_pdf.png | Bin assets/img/CRP.swf | Bin assets/img/Cancer-world-tree.png | Bin assets/img/Checkershadow_illusion_small.png | Bin assets/img/Checkershadow_proof_small.png | Bin assets/img/Concentration.png | Bin assets/img/Cond-dep1.jpg | Bin assets/img/Curve_fitting.png | Bin assets/img/Gamma-dist.png | Bin assets/img/Kersten_et_al_explaining_away.png | Bin assets/img/Marg-dep1.jpg | Bin assets/img/Med-diag-bnet1.jpg | Bin assets/img/Medin54-bugs.png | Bin assets/img/Normal_distribution_pdf.png | Bin assets/img/Pme.png | Bin assets/img/Sicp-lambda-diagram.png | Bin assets/img/blocks-world.png | Bin assets/img/blocks.png | Bin assets/img/boa-learningcurves-1bag.png | Bin assets/img/boa-learningcurves-manybags.png | Bin assets/img/box.png | Bin assets/img/ch1_donut_new.png | Bin assets/img/cog_32x32.png | Bin assets/img/favicon.ico | Bin assets/img/flip0.7.png | Bin assets/img/flip0.7.svg | 0 assets/img/grey_wash_wall.png | Bin assets/img/nisbett_model_humans.png | Bin assets/img/pedagogy-pic.png | Bin assets/img/plate_notation.png | Bin assets/img/pomdp_graph.png | Bin assets/img/rsa_scene.png | Bin assets/img/rsa_schema.png | Bin assets/img/russ_cow_roc.png | Bin assets/img/russ_model_graphical.png | Bin assets/img/russ_results_categories.png | Bin assets/img/scalar.png | Bin assets/img/shape_bias_results_model.png | Bin assets/img/unifying-table.png | Bin assets/img/unifying.png | Bin assets/js/bootstrap.min.js | 0 assets/js/box2d.js | 0 assets/js/chapter.js | 0 assets/js/custom.js | 0 assets/js/draw.js | 0 assets/js/ga.js | 0 assets/js/index.js | 0 assets/js/jquery.min.js | 0 assets/js/katex.min.js | 0 assets/js/littlefoot.min.js | 0 assets/js/paper-full.js | 0 assets/js/parse-bibtex.js | 0 assets/js/physics.js | 0 assets/js/plinko.js | 0 assets/js/towConfigurations.js | 0 assets/js/towData.js | 0 assets/js/webppl-editor.min.css | 0 assets/js/webppl-editor.min.js | 0 assets/js/webppl-viz.min.css | 0 assets/js/webppl-viz.min.js | 0 assets/js/webppl.min.js | 0 assets/pdfs/MarkovModels.pdf | Bin assets/scripts/14-bda-of-tow.Rmd | 0 chapters/01-introduction.md | 0 chapters/02-generative-models.md | 0 chapters/03-conditioning.md | 0 chapters/04-patterns-of-inference.md | 0 chapters/04.1-agents-as-programs.md | 0 chapters/05-observing-sequences.md | 448 ------ chapters/05.1-sequential-decisions.md | 0 chapters/06-inference-about-inference.md | 0 chapters/07-inference-process.md | 1285 ----------------- .../08-learning-as-conditional-inference.md | 750 ---------- chapters/09-hierarchical-models.md | 0 chapters/10-occam's-razor.md | 0 chapters/11-mixture-models.md | 0 chapters/12-non-parametric-models.md | 0 chapters/14-bayesian-data-analysis.md | 0 chapters/99-appendix-js-basics.md | 0 chapters/appendix-math-review.md | 0 chapters/deepprbmods.md | 0 exercises/02-generative-models.md | 0 exercises/03-conditioning.md | 0 exercises/04-patterns-of-inference.md | 0 exercises/04.1-agents-as-programs.md | 0 exercises/05-observing-sequences.md | 206 --- exercises/05.1-sequential-decisions.md | 0 exercises/06-inference-about-inference.md | 0 exercises/07-inference-process.md | 326 ----- .../08-learning-as-conditional-inference.md | 0 exercises/09-hierarchical-models.md | 190 --- exercises/10-occam's-razor.md | 0 exercises/13-appendix-js-basics.md | 0 exercises/14-bayesian-data-analysis.md | 0 index.md | 0 package.json | 0 readings/01-introduction.md | 0 readings/02-generative-models.md | 0 readings/03-conditioning.md | 0 readings/04-patterns-of-inference.md | 0 readings/04.1-agents-as-programs.md | 0 readings/05-observing-sequences.md | 0 readings/05.1-sequential-decisions.md | 0 readings/06-inference-about-inference.md | 0 readings/07-inference-process.md | 0 .../08-learning-as-conditional-inference.md | 18 - readings/09-hierarchical-models.md | 0 solutions/02-generative-models.md | 0 solutions/03-conditioning.md | 0 solutions/04-patterns-of-inference.md | 0 solutions/04.1-agents-as-programs.md | 0 solutions/05-observing-sequences.md | 344 ----- solutions/05.1-sequential-decisions.md | 0 solutions/06-inference-about-inference.md | 410 ------ solutions/07-inference-process.md | 0 .../08-learning-as-conditional-inference.md | 0 solutions/09-hierarchical-models.md | 0 solutions/14-bayesian-data-analysis.md | 0 solutions/Figures/agents-as-programs-1.png | Bin solutions/Figures/agents-as-programs-10.png | Bin solutions/Figures/agents-as-programs-11.png | Bin solutions/Figures/agents-as-programs-12.png | Bin solutions/Figures/agents-as-programs-2.png | Bin solutions/Figures/agents-as-programs-3.png | Bin solutions/Figures/agents-as-programs-4.png | Bin solutions/Figures/agents-as-programs-5-1.png | Bin solutions/Figures/agents-as-programs-5-2.png | Bin solutions/Figures/agents-as-programs-5-3.png | Bin solutions/Figures/agents-as-programs-5-4.png | Bin solutions/Figures/agents-as-programs-5-5.png | Bin solutions/Figures/agents-as-programs-6.png | Bin solutions/Figures/agents-as-programs-7-1.png | Bin solutions/Figures/agents-as-programs-7-2.png | Bin solutions/Figures/agents-as-programs-7-3.png | Bin solutions/Figures/agents-as-programs-7-4.png | Bin solutions/Figures/agents-as-programs-8.png | Bin solutions/Figures/agents-as-programs-9.png | Bin .../inference-about-inference-PartE.PNG | Bin solutions/Figures/inference-process-1.png | Bin solutions/Figures/inference-process-2.png | Bin solutions/Figures/inference-process-3.png | Bin solutions/Figures/inference-process-4.png | Bin solutions/Figures/inference-process-5.png | Bin solutions/Figures/inference-process-6.png | Bin solutions/Figures/inference-process-7.png | Bin solutions/Figures/inference-process-8.png | Bin solutions/Figures/learning-as-inference-1.png | Bin solutions/Figures/learning-as-inference-2.png | Bin solutions/Figures/learning-as-inference-3.png | Bin solutions/Figures/learning-as-inference-4.png | Bin solutions/Figures/learning-as-inference-5.png | Bin solutions/Figures/learning-as-inference-6.png | Bin .../Figures/sequences-of-observations-1.png | Bin .../Figures/sequences-of-observations-2.png | Bin .../Figures/sequences-of-observations-3.png | Bin .../Figures/sequences-of-observations-4.png | Bin .../Figures/sequences-of-observations-5.png | Bin solutions/Figures/sequential-decisions-1.png | Bin solutions/Figures/sequential-decisions-2.png | Bin solutions/Figures/sequential-decisions-3.png | Bin solutions/Figures/sequential-decisions-4.png | Bin solutions/Figures/sequential-decisions-5.png | Bin solutions/Figures/sequential-decisions-6.png | Bin solutions/Figures/sequential-decisions-7.png | Bin 274 files changed, 3977 deletions(-) mode change 100644 => 100755 .gitattributes mode change 100644 => 100755 .gitignore mode change 100644 => 100755 CNAME mode change 100644 => 100755 README.md mode change 100644 => 100755 _config.yml mode change 100644 => 100755 _layouts/chapter.html mode change 100644 => 100755 _layouts/default.html mode change 100644 => 100755 _layouts/exercise.html mode change 100644 => 100755 _prod.yml mode change 100644 => 100755 assets/bibliography.bib mode change 100644 => 100755 assets/css/bootstrap-theme.min.css mode change 100644 => 100755 assets/css/bootstrap-theme.min.css.map mode change 100644 => 100755 assets/css/bootstrap.min.css mode change 100644 => 100755 assets/css/bootstrap.min.css.map mode change 100644 => 100755 assets/css/default.css mode change 100644 => 100755 assets/css/draw.css mode change 100644 => 100755 assets/css/fonts/KaTeX_AMS-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_AMS-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_AMS-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_AMS-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Bold.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Bold.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Bold.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Bold.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Caligraphic-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Bold.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Bold.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Bold.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Bold.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Fraktur-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Bold.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Bold.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Bold.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Bold.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Italic.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Italic.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Italic.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Italic.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Main-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-BoldItalic.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-BoldItalic.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-BoldItalic.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-BoldItalic.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Italic.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Italic.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Italic.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Italic.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Math-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Bold.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Bold.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Bold.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Bold.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Italic.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Italic.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Italic.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Italic.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_SansSerif-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Script-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Script-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Script-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Script-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Size1-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Size1-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Size1-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Size1-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Size2-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Size2-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Size2-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Size2-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Size3-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Size3-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Size3-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Size3-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Size4-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Size4-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Size4-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Size4-Regular.woff2 mode change 100644 => 100755 assets/css/fonts/KaTeX_Typewriter-Regular.eot mode change 100644 => 100755 assets/css/fonts/KaTeX_Typewriter-Regular.ttf mode change 100644 => 100755 assets/css/fonts/KaTeX_Typewriter-Regular.woff mode change 100644 => 100755 assets/css/fonts/KaTeX_Typewriter-Regular.woff2 mode change 100644 => 100755 assets/css/index.css mode change 100644 => 100755 assets/css/katex.min.css mode change 100644 => 100755 assets/css/littlefoot.css mode change 100644 => 100755 assets/css/webppl-editor.css mode change 100644 => 100755 assets/css/webppl-viz.css mode change 100644 => 100755 assets/data/enumerateToW1.csv mode change 100644 => 100755 assets/data/mcmc100_positiveStrength_ToW1.csv mode change 100644 => 100755 assets/data/towData.Rdata mode change 100644 => 100755 assets/data/towData.csv mode change 100644 => 100755 assets/img/04_01_a.png mode change 100644 => 100755 assets/img/04_01_b.png mode change 100644 => 100755 assets/img/04_01_c.png mode change 100644 => 100755 assets/img/04_01_d.png mode change 100644 => 100755 assets/img/04_01_e.png mode change 100644 => 100755 assets/img/Beta_distribution_pdf.png mode change 100644 => 100755 assets/img/CRP.swf mode change 100644 => 100755 assets/img/Cancer-world-tree.png mode change 100644 => 100755 assets/img/Checkershadow_illusion_small.png mode change 100644 => 100755 assets/img/Checkershadow_proof_small.png mode change 100644 => 100755 assets/img/Concentration.png mode change 100644 => 100755 assets/img/Cond-dep1.jpg mode change 100644 => 100755 assets/img/Curve_fitting.png mode change 100644 => 100755 assets/img/Gamma-dist.png mode change 100644 => 100755 assets/img/Kersten_et_al_explaining_away.png mode change 100644 => 100755 assets/img/Marg-dep1.jpg mode change 100644 => 100755 assets/img/Med-diag-bnet1.jpg mode change 100644 => 100755 assets/img/Medin54-bugs.png mode change 100644 => 100755 assets/img/Normal_distribution_pdf.png mode change 100644 => 100755 assets/img/Pme.png mode change 100644 => 100755 assets/img/Sicp-lambda-diagram.png mode change 100644 => 100755 assets/img/blocks-world.png mode change 100644 => 100755 assets/img/blocks.png mode change 100644 => 100755 assets/img/boa-learningcurves-1bag.png mode change 100644 => 100755 assets/img/boa-learningcurves-manybags.png mode change 100644 => 100755 assets/img/box.png mode change 100644 => 100755 assets/img/ch1_donut_new.png mode change 100644 => 100755 assets/img/cog_32x32.png mode change 100644 => 100755 assets/img/favicon.ico mode change 100644 => 100755 assets/img/flip0.7.png mode change 100644 => 100755 assets/img/flip0.7.svg mode change 100644 => 100755 assets/img/grey_wash_wall.png mode change 100644 => 100755 assets/img/nisbett_model_humans.png mode change 100644 => 100755 assets/img/pedagogy-pic.png mode change 100644 => 100755 assets/img/plate_notation.png mode change 100644 => 100755 assets/img/pomdp_graph.png mode change 100644 => 100755 assets/img/rsa_scene.png mode change 100644 => 100755 assets/img/rsa_schema.png mode change 100644 => 100755 assets/img/russ_cow_roc.png mode change 100644 => 100755 assets/img/russ_model_graphical.png mode change 100644 => 100755 assets/img/russ_results_categories.png mode change 100644 => 100755 assets/img/scalar.png mode change 100644 => 100755 assets/img/shape_bias_results_model.png mode change 100644 => 100755 assets/img/unifying-table.png mode change 100644 => 100755 assets/img/unifying.png mode change 100644 => 100755 assets/js/bootstrap.min.js mode change 100644 => 100755 assets/js/box2d.js mode change 100644 => 100755 assets/js/chapter.js mode change 100644 => 100755 assets/js/custom.js mode change 100644 => 100755 assets/js/draw.js mode change 100644 => 100755 assets/js/ga.js mode change 100644 => 100755 assets/js/index.js mode change 100644 => 100755 assets/js/jquery.min.js mode change 100644 => 100755 assets/js/katex.min.js mode change 100644 => 100755 assets/js/littlefoot.min.js mode change 100644 => 100755 assets/js/paper-full.js mode change 100644 => 100755 assets/js/parse-bibtex.js mode change 100644 => 100755 assets/js/physics.js mode change 100644 => 100755 assets/js/plinko.js mode change 100644 => 100755 assets/js/towConfigurations.js mode change 100644 => 100755 assets/js/towData.js mode change 100644 => 100755 assets/js/webppl-editor.min.css mode change 100644 => 100755 assets/js/webppl-editor.min.js mode change 100644 => 100755 assets/js/webppl-viz.min.css mode change 100644 => 100755 assets/js/webppl-viz.min.js mode change 100644 => 100755 assets/js/webppl.min.js mode change 100644 => 100755 assets/pdfs/MarkovModels.pdf mode change 100644 => 100755 assets/scripts/14-bda-of-tow.Rmd mode change 100644 => 100755 chapters/01-introduction.md mode change 100644 => 100755 chapters/02-generative-models.md mode change 100644 => 100755 chapters/03-conditioning.md mode change 100644 => 100755 chapters/04-patterns-of-inference.md mode change 100644 => 100755 chapters/04.1-agents-as-programs.md delete mode 100644 chapters/05-observing-sequences.md mode change 100644 => 100755 chapters/05.1-sequential-decisions.md mode change 100644 => 100755 chapters/06-inference-about-inference.md delete mode 100644 chapters/07-inference-process.md delete mode 100644 chapters/08-learning-as-conditional-inference.md mode change 100644 => 100755 chapters/09-hierarchical-models.md mode change 100644 => 100755 chapters/10-occam's-razor.md mode change 100644 => 100755 chapters/11-mixture-models.md mode change 100644 => 100755 chapters/12-non-parametric-models.md mode change 100644 => 100755 chapters/14-bayesian-data-analysis.md mode change 100644 => 100755 chapters/99-appendix-js-basics.md mode change 100644 => 100755 chapters/appendix-math-review.md mode change 100644 => 100755 chapters/deepprbmods.md mode change 100644 => 100755 exercises/02-generative-models.md mode change 100644 => 100755 exercises/03-conditioning.md mode change 100644 => 100755 exercises/04-patterns-of-inference.md mode change 100644 => 100755 exercises/04.1-agents-as-programs.md delete mode 100644 exercises/05-observing-sequences.md mode change 100644 => 100755 exercises/05.1-sequential-decisions.md mode change 100644 => 100755 exercises/06-inference-about-inference.md delete mode 100644 exercises/07-inference-process.md mode change 100644 => 100755 exercises/08-learning-as-conditional-inference.md delete mode 100644 exercises/09-hierarchical-models.md mode change 100644 => 100755 exercises/10-occam's-razor.md mode change 100644 => 100755 exercises/13-appendix-js-basics.md mode change 100644 => 100755 exercises/14-bayesian-data-analysis.md mode change 100644 => 100755 index.md mode change 100644 => 100755 package.json mode change 100644 => 100755 readings/01-introduction.md mode change 100644 => 100755 readings/02-generative-models.md mode change 100644 => 100755 readings/03-conditioning.md mode change 100644 => 100755 readings/04-patterns-of-inference.md mode change 100644 => 100755 readings/04.1-agents-as-programs.md mode change 100644 => 100755 readings/05-observing-sequences.md mode change 100644 => 100755 readings/05.1-sequential-decisions.md mode change 100644 => 100755 readings/06-inference-about-inference.md mode change 100644 => 100755 readings/07-inference-process.md delete mode 100644 readings/08-learning-as-conditional-inference.md mode change 100644 => 100755 readings/09-hierarchical-models.md mode change 100644 => 100755 solutions/02-generative-models.md mode change 100644 => 100755 solutions/03-conditioning.md mode change 100644 => 100755 solutions/04-patterns-of-inference.md mode change 100644 => 100755 solutions/04.1-agents-as-programs.md delete mode 100644 solutions/05-observing-sequences.md mode change 100644 => 100755 solutions/05.1-sequential-decisions.md delete mode 100644 solutions/06-inference-about-inference.md mode change 100644 => 100755 solutions/07-inference-process.md mode change 100644 => 100755 solutions/08-learning-as-conditional-inference.md mode change 100644 => 100755 solutions/09-hierarchical-models.md mode change 100644 => 100755 solutions/14-bayesian-data-analysis.md mode change 100644 => 100755 solutions/Figures/agents-as-programs-1.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-10.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-11.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-12.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-2.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-3.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-4.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-5-1.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-5-2.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-5-3.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-5-4.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-5-5.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-6.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-7-1.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-7-2.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-7-3.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-7-4.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-8.png mode change 100644 => 100755 solutions/Figures/agents-as-programs-9.png mode change 100644 => 100755 solutions/Figures/inference-about-inference-PartE.PNG mode change 100644 => 100755 solutions/Figures/inference-process-1.png mode change 100644 => 100755 solutions/Figures/inference-process-2.png mode change 100644 => 100755 solutions/Figures/inference-process-3.png mode change 100644 => 100755 solutions/Figures/inference-process-4.png mode change 100644 => 100755 solutions/Figures/inference-process-5.png mode change 100644 => 100755 solutions/Figures/inference-process-6.png mode change 100644 => 100755 solutions/Figures/inference-process-7.png mode change 100644 => 100755 solutions/Figures/inference-process-8.png mode change 100644 => 100755 solutions/Figures/learning-as-inference-1.png mode change 100644 => 100755 solutions/Figures/learning-as-inference-2.png mode change 100644 => 100755 solutions/Figures/learning-as-inference-3.png mode change 100644 => 100755 solutions/Figures/learning-as-inference-4.png mode change 100644 => 100755 solutions/Figures/learning-as-inference-5.png mode change 100644 => 100755 solutions/Figures/learning-as-inference-6.png mode change 100644 => 100755 solutions/Figures/sequences-of-observations-1.png mode change 100644 => 100755 solutions/Figures/sequences-of-observations-2.png mode change 100644 => 100755 solutions/Figures/sequences-of-observations-3.png mode change 100644 => 100755 solutions/Figures/sequences-of-observations-4.png mode change 100644 => 100755 solutions/Figures/sequences-of-observations-5.png mode change 100644 => 100755 solutions/Figures/sequential-decisions-1.png mode change 100644 => 100755 solutions/Figures/sequential-decisions-2.png mode change 100644 => 100755 solutions/Figures/sequential-decisions-3.png mode change 100644 => 100755 solutions/Figures/sequential-decisions-4.png mode change 100644 => 100755 solutions/Figures/sequential-decisions-5.png mode change 100644 => 100755 solutions/Figures/sequential-decisions-6.png mode change 100644 => 100755 solutions/Figures/sequential-decisions-7.png diff --git a/.gitattributes b/.gitattributes old mode 100644 new mode 100755 diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/CNAME b/CNAME old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/_config.yml b/_config.yml old mode 100644 new mode 100755 diff --git a/_layouts/chapter.html b/_layouts/chapter.html old mode 100644 new mode 100755 diff --git a/_layouts/default.html b/_layouts/default.html old mode 100644 new mode 100755 diff --git a/_layouts/exercise.html b/_layouts/exercise.html old mode 100644 new mode 100755 diff --git a/_prod.yml b/_prod.yml old mode 100644 new mode 100755 diff --git a/assets/bibliography.bib b/assets/bibliography.bib old mode 100644 new mode 100755 diff --git a/assets/css/bootstrap-theme.min.css b/assets/css/bootstrap-theme.min.css old mode 100644 new mode 100755 diff --git a/assets/css/bootstrap-theme.min.css.map b/assets/css/bootstrap-theme.min.css.map old mode 100644 new mode 100755 diff --git a/assets/css/bootstrap.min.css b/assets/css/bootstrap.min.css old mode 100644 new mode 100755 diff --git a/assets/css/bootstrap.min.css.map b/assets/css/bootstrap.min.css.map old mode 100644 new mode 100755 diff --git a/assets/css/default.css b/assets/css/default.css old mode 100644 new mode 100755 diff --git a/assets/css/draw.css b/assets/css/draw.css old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_AMS-Regular.eot b/assets/css/fonts/KaTeX_AMS-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_AMS-Regular.ttf b/assets/css/fonts/KaTeX_AMS-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_AMS-Regular.woff b/assets/css/fonts/KaTeX_AMS-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_AMS-Regular.woff2 b/assets/css/fonts/KaTeX_AMS-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Bold.eot b/assets/css/fonts/KaTeX_Caligraphic-Bold.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Bold.ttf b/assets/css/fonts/KaTeX_Caligraphic-Bold.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Bold.woff b/assets/css/fonts/KaTeX_Caligraphic-Bold.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Bold.woff2 b/assets/css/fonts/KaTeX_Caligraphic-Bold.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Regular.eot b/assets/css/fonts/KaTeX_Caligraphic-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Regular.ttf b/assets/css/fonts/KaTeX_Caligraphic-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Regular.woff b/assets/css/fonts/KaTeX_Caligraphic-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Caligraphic-Regular.woff2 b/assets/css/fonts/KaTeX_Caligraphic-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Bold.eot b/assets/css/fonts/KaTeX_Fraktur-Bold.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Bold.ttf b/assets/css/fonts/KaTeX_Fraktur-Bold.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Bold.woff b/assets/css/fonts/KaTeX_Fraktur-Bold.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Bold.woff2 b/assets/css/fonts/KaTeX_Fraktur-Bold.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Regular.eot b/assets/css/fonts/KaTeX_Fraktur-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Regular.ttf b/assets/css/fonts/KaTeX_Fraktur-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Regular.woff b/assets/css/fonts/KaTeX_Fraktur-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Fraktur-Regular.woff2 b/assets/css/fonts/KaTeX_Fraktur-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Bold.eot b/assets/css/fonts/KaTeX_Main-Bold.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Bold.ttf b/assets/css/fonts/KaTeX_Main-Bold.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Bold.woff b/assets/css/fonts/KaTeX_Main-Bold.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Bold.woff2 b/assets/css/fonts/KaTeX_Main-Bold.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Italic.eot b/assets/css/fonts/KaTeX_Main-Italic.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Italic.ttf b/assets/css/fonts/KaTeX_Main-Italic.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Italic.woff b/assets/css/fonts/KaTeX_Main-Italic.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Italic.woff2 b/assets/css/fonts/KaTeX_Main-Italic.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Regular.eot b/assets/css/fonts/KaTeX_Main-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Regular.ttf b/assets/css/fonts/KaTeX_Main-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Regular.woff b/assets/css/fonts/KaTeX_Main-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Main-Regular.woff2 b/assets/css/fonts/KaTeX_Main-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-BoldItalic.eot b/assets/css/fonts/KaTeX_Math-BoldItalic.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-BoldItalic.ttf b/assets/css/fonts/KaTeX_Math-BoldItalic.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-BoldItalic.woff b/assets/css/fonts/KaTeX_Math-BoldItalic.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-BoldItalic.woff2 b/assets/css/fonts/KaTeX_Math-BoldItalic.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Italic.eot b/assets/css/fonts/KaTeX_Math-Italic.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Italic.ttf b/assets/css/fonts/KaTeX_Math-Italic.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Italic.woff b/assets/css/fonts/KaTeX_Math-Italic.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Italic.woff2 b/assets/css/fonts/KaTeX_Math-Italic.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Regular.eot b/assets/css/fonts/KaTeX_Math-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Regular.ttf b/assets/css/fonts/KaTeX_Math-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Regular.woff b/assets/css/fonts/KaTeX_Math-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Math-Regular.woff2 b/assets/css/fonts/KaTeX_Math-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Bold.eot b/assets/css/fonts/KaTeX_SansSerif-Bold.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Bold.ttf b/assets/css/fonts/KaTeX_SansSerif-Bold.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Bold.woff b/assets/css/fonts/KaTeX_SansSerif-Bold.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Bold.woff2 b/assets/css/fonts/KaTeX_SansSerif-Bold.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Italic.eot b/assets/css/fonts/KaTeX_SansSerif-Italic.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Italic.ttf b/assets/css/fonts/KaTeX_SansSerif-Italic.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Italic.woff b/assets/css/fonts/KaTeX_SansSerif-Italic.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Italic.woff2 b/assets/css/fonts/KaTeX_SansSerif-Italic.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Regular.eot b/assets/css/fonts/KaTeX_SansSerif-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Regular.ttf b/assets/css/fonts/KaTeX_SansSerif-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Regular.woff b/assets/css/fonts/KaTeX_SansSerif-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_SansSerif-Regular.woff2 b/assets/css/fonts/KaTeX_SansSerif-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Script-Regular.eot b/assets/css/fonts/KaTeX_Script-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Script-Regular.ttf b/assets/css/fonts/KaTeX_Script-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Script-Regular.woff b/assets/css/fonts/KaTeX_Script-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Script-Regular.woff2 b/assets/css/fonts/KaTeX_Script-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size1-Regular.eot b/assets/css/fonts/KaTeX_Size1-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size1-Regular.ttf b/assets/css/fonts/KaTeX_Size1-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size1-Regular.woff b/assets/css/fonts/KaTeX_Size1-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size1-Regular.woff2 b/assets/css/fonts/KaTeX_Size1-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size2-Regular.eot b/assets/css/fonts/KaTeX_Size2-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size2-Regular.ttf b/assets/css/fonts/KaTeX_Size2-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size2-Regular.woff b/assets/css/fonts/KaTeX_Size2-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size2-Regular.woff2 b/assets/css/fonts/KaTeX_Size2-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size3-Regular.eot b/assets/css/fonts/KaTeX_Size3-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size3-Regular.ttf b/assets/css/fonts/KaTeX_Size3-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size3-Regular.woff b/assets/css/fonts/KaTeX_Size3-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size3-Regular.woff2 b/assets/css/fonts/KaTeX_Size3-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size4-Regular.eot b/assets/css/fonts/KaTeX_Size4-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size4-Regular.ttf b/assets/css/fonts/KaTeX_Size4-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size4-Regular.woff b/assets/css/fonts/KaTeX_Size4-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Size4-Regular.woff2 b/assets/css/fonts/KaTeX_Size4-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Typewriter-Regular.eot b/assets/css/fonts/KaTeX_Typewriter-Regular.eot old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Typewriter-Regular.ttf b/assets/css/fonts/KaTeX_Typewriter-Regular.ttf old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Typewriter-Regular.woff b/assets/css/fonts/KaTeX_Typewriter-Regular.woff old mode 100644 new mode 100755 diff --git a/assets/css/fonts/KaTeX_Typewriter-Regular.woff2 b/assets/css/fonts/KaTeX_Typewriter-Regular.woff2 old mode 100644 new mode 100755 diff --git a/assets/css/index.css b/assets/css/index.css old mode 100644 new mode 100755 diff --git a/assets/css/katex.min.css b/assets/css/katex.min.css old mode 100644 new mode 100755 diff --git a/assets/css/littlefoot.css b/assets/css/littlefoot.css old mode 100644 new mode 100755 diff --git a/assets/css/webppl-editor.css b/assets/css/webppl-editor.css old mode 100644 new mode 100755 diff --git a/assets/css/webppl-viz.css b/assets/css/webppl-viz.css old mode 100644 new mode 100755 diff --git a/assets/data/enumerateToW1.csv b/assets/data/enumerateToW1.csv old mode 100644 new mode 100755 diff --git a/assets/data/mcmc100_positiveStrength_ToW1.csv b/assets/data/mcmc100_positiveStrength_ToW1.csv old mode 100644 new mode 100755 diff --git a/assets/data/towData.Rdata b/assets/data/towData.Rdata old mode 100644 new mode 100755 diff --git a/assets/data/towData.csv b/assets/data/towData.csv old mode 100644 new mode 100755 diff --git a/assets/img/04_01_a.png b/assets/img/04_01_a.png old mode 100644 new mode 100755 diff --git a/assets/img/04_01_b.png b/assets/img/04_01_b.png old mode 100644 new mode 100755 diff --git a/assets/img/04_01_c.png b/assets/img/04_01_c.png old mode 100644 new mode 100755 diff --git a/assets/img/04_01_d.png b/assets/img/04_01_d.png old mode 100644 new mode 100755 diff --git a/assets/img/04_01_e.png b/assets/img/04_01_e.png old mode 100644 new mode 100755 diff --git a/assets/img/Beta_distribution_pdf.png b/assets/img/Beta_distribution_pdf.png old mode 100644 new mode 100755 diff --git a/assets/img/CRP.swf b/assets/img/CRP.swf old mode 100644 new mode 100755 diff --git a/assets/img/Cancer-world-tree.png b/assets/img/Cancer-world-tree.png old mode 100644 new mode 100755 diff --git a/assets/img/Checkershadow_illusion_small.png b/assets/img/Checkershadow_illusion_small.png old mode 100644 new mode 100755 diff --git a/assets/img/Checkershadow_proof_small.png b/assets/img/Checkershadow_proof_small.png old mode 100644 new mode 100755 diff --git a/assets/img/Concentration.png b/assets/img/Concentration.png old mode 100644 new mode 100755 diff --git a/assets/img/Cond-dep1.jpg b/assets/img/Cond-dep1.jpg old mode 100644 new mode 100755 diff --git a/assets/img/Curve_fitting.png b/assets/img/Curve_fitting.png old mode 100644 new mode 100755 diff --git a/assets/img/Gamma-dist.png b/assets/img/Gamma-dist.png old mode 100644 new mode 100755 diff --git a/assets/img/Kersten_et_al_explaining_away.png b/assets/img/Kersten_et_al_explaining_away.png old mode 100644 new mode 100755 diff --git a/assets/img/Marg-dep1.jpg b/assets/img/Marg-dep1.jpg old mode 100644 new mode 100755 diff --git a/assets/img/Med-diag-bnet1.jpg b/assets/img/Med-diag-bnet1.jpg old mode 100644 new mode 100755 diff --git a/assets/img/Medin54-bugs.png b/assets/img/Medin54-bugs.png old mode 100644 new mode 100755 diff --git a/assets/img/Normal_distribution_pdf.png b/assets/img/Normal_distribution_pdf.png old mode 100644 new mode 100755 diff --git a/assets/img/Pme.png b/assets/img/Pme.png old mode 100644 new mode 100755 diff --git a/assets/img/Sicp-lambda-diagram.png b/assets/img/Sicp-lambda-diagram.png old mode 100644 new mode 100755 diff --git a/assets/img/blocks-world.png b/assets/img/blocks-world.png old mode 100644 new mode 100755 diff --git a/assets/img/blocks.png b/assets/img/blocks.png old mode 100644 new mode 100755 diff --git a/assets/img/boa-learningcurves-1bag.png b/assets/img/boa-learningcurves-1bag.png old mode 100644 new mode 100755 diff --git a/assets/img/boa-learningcurves-manybags.png b/assets/img/boa-learningcurves-manybags.png old mode 100644 new mode 100755 diff --git a/assets/img/box.png b/assets/img/box.png old mode 100644 new mode 100755 diff --git a/assets/img/ch1_donut_new.png b/assets/img/ch1_donut_new.png old mode 100644 new mode 100755 diff --git a/assets/img/cog_32x32.png b/assets/img/cog_32x32.png old mode 100644 new mode 100755 diff --git a/assets/img/favicon.ico b/assets/img/favicon.ico old mode 100644 new mode 100755 diff --git a/assets/img/flip0.7.png b/assets/img/flip0.7.png old mode 100644 new mode 100755 diff --git a/assets/img/flip0.7.svg b/assets/img/flip0.7.svg old mode 100644 new mode 100755 diff --git a/assets/img/grey_wash_wall.png b/assets/img/grey_wash_wall.png old mode 100644 new mode 100755 diff --git a/assets/img/nisbett_model_humans.png b/assets/img/nisbett_model_humans.png old mode 100644 new mode 100755 diff --git a/assets/img/pedagogy-pic.png b/assets/img/pedagogy-pic.png old mode 100644 new mode 100755 diff --git a/assets/img/plate_notation.png b/assets/img/plate_notation.png old mode 100644 new mode 100755 diff --git a/assets/img/pomdp_graph.png b/assets/img/pomdp_graph.png old mode 100644 new mode 100755 diff --git a/assets/img/rsa_scene.png b/assets/img/rsa_scene.png old mode 100644 new mode 100755 diff --git a/assets/img/rsa_schema.png b/assets/img/rsa_schema.png old mode 100644 new mode 100755 diff --git a/assets/img/russ_cow_roc.png b/assets/img/russ_cow_roc.png old mode 100644 new mode 100755 diff --git a/assets/img/russ_model_graphical.png b/assets/img/russ_model_graphical.png old mode 100644 new mode 100755 diff --git a/assets/img/russ_results_categories.png b/assets/img/russ_results_categories.png old mode 100644 new mode 100755 diff --git a/assets/img/scalar.png b/assets/img/scalar.png old mode 100644 new mode 100755 diff --git a/assets/img/shape_bias_results_model.png b/assets/img/shape_bias_results_model.png old mode 100644 new mode 100755 diff --git a/assets/img/unifying-table.png b/assets/img/unifying-table.png old mode 100644 new mode 100755 diff --git a/assets/img/unifying.png b/assets/img/unifying.png old mode 100644 new mode 100755 diff --git a/assets/js/bootstrap.min.js b/assets/js/bootstrap.min.js old mode 100644 new mode 100755 diff --git a/assets/js/box2d.js b/assets/js/box2d.js old mode 100644 new mode 100755 diff --git a/assets/js/chapter.js b/assets/js/chapter.js old mode 100644 new mode 100755 diff --git a/assets/js/custom.js b/assets/js/custom.js old mode 100644 new mode 100755 diff --git a/assets/js/draw.js b/assets/js/draw.js old mode 100644 new mode 100755 diff --git a/assets/js/ga.js b/assets/js/ga.js old mode 100644 new mode 100755 diff --git a/assets/js/index.js b/assets/js/index.js old mode 100644 new mode 100755 diff --git a/assets/js/jquery.min.js b/assets/js/jquery.min.js old mode 100644 new mode 100755 diff --git a/assets/js/katex.min.js b/assets/js/katex.min.js old mode 100644 new mode 100755 diff --git a/assets/js/littlefoot.min.js b/assets/js/littlefoot.min.js old mode 100644 new mode 100755 diff --git a/assets/js/paper-full.js b/assets/js/paper-full.js old mode 100644 new mode 100755 diff --git a/assets/js/parse-bibtex.js b/assets/js/parse-bibtex.js old mode 100644 new mode 100755 diff --git a/assets/js/physics.js b/assets/js/physics.js old mode 100644 new mode 100755 diff --git a/assets/js/plinko.js b/assets/js/plinko.js old mode 100644 new mode 100755 diff --git a/assets/js/towConfigurations.js b/assets/js/towConfigurations.js old mode 100644 new mode 100755 diff --git a/assets/js/towData.js b/assets/js/towData.js old mode 100644 new mode 100755 diff --git a/assets/js/webppl-editor.min.css b/assets/js/webppl-editor.min.css old mode 100644 new mode 100755 diff --git a/assets/js/webppl-editor.min.js b/assets/js/webppl-editor.min.js old mode 100644 new mode 100755 diff --git a/assets/js/webppl-viz.min.css b/assets/js/webppl-viz.min.css old mode 100644 new mode 100755 diff --git a/assets/js/webppl-viz.min.js b/assets/js/webppl-viz.min.js old mode 100644 new mode 100755 diff --git a/assets/js/webppl.min.js b/assets/js/webppl.min.js old mode 100644 new mode 100755 diff --git a/assets/pdfs/MarkovModels.pdf b/assets/pdfs/MarkovModels.pdf old mode 100644 new mode 100755 diff --git a/assets/scripts/14-bda-of-tow.Rmd b/assets/scripts/14-bda-of-tow.Rmd old mode 100644 new mode 100755 diff --git a/chapters/01-introduction.md b/chapters/01-introduction.md old mode 100644 new mode 100755 diff --git a/chapters/02-generative-models.md b/chapters/02-generative-models.md old mode 100644 new mode 100755 diff --git a/chapters/03-conditioning.md b/chapters/03-conditioning.md old mode 100644 new mode 100755 diff --git a/chapters/04-patterns-of-inference.md b/chapters/04-patterns-of-inference.md old mode 100644 new mode 100755 diff --git a/chapters/04.1-agents-as-programs.md b/chapters/04.1-agents-as-programs.md old mode 100644 new mode 100755 diff --git a/chapters/05-observing-sequences.md b/chapters/05-observing-sequences.md deleted file mode 100644 index 9774f99..0000000 --- a/chapters/05-observing-sequences.md +++ /dev/null @@ -1,448 +0,0 @@ ---- -layout: chapter -title: Models for sequences of observations -description: Generative models of the relations between data points ---- - -In the last chapter we learned about common [patterns of inference](04-patterns-of-inference.html) that can result from a few observations, given the right model structure. -There are also many common patterns of *data* that arise from certain model structures. -It is common, for instance, to have a sequence of observations that we believe was each generated from the same causal process: a sequence of coin flips, a series of temperature readings from a weather station, the words in a sentence. -In this chapter we explore models for sequences of observations, moving from simple models to those with increasingly complex statistical dependence between the observations. - - -# Independent and Exchangeable Sequences - -If the observations have *nothing* to do with each other, except that they have the same distribution, they are called *identically, independently distributed* (usually abbreviated to i.i.d.). For instance the values that come from calling `flip` are i.i.d. To verify this, let's first check whether the distribution of two flips in a sequence look the same (are "identical"): - -~~~~ -var genSequence = function() {return repeat(2, flip)} -var sequenceDist = Infer({method: 'enumerate'}, genSequence) -viz.marginals(sequenceDist) -~~~~ - -Now let's check that the first and second flips are independent, by conditioning on the first and seeing that the distribution of the second is (approximately) unchanged: - -~~~~ -var genSequence = function() {return repeat(2, flip)} -var sequenceCondDist = function(firstVal) { - return Infer({method: 'enumerate'}, - function() { - var s = genSequence() - condition(s[0] == firstVal) - return {second: s[1]}; - }) -} - -viz(sequenceCondDist(true)) -viz(sequenceCondDist(false)) -~~~~ - -It is easy to build other i.i.d. sequences in WebPPL; we simply construct a stochastic thunk and evaluate it several times. For instance, here is an extremely simple model for the words in a sentence: - -~~~~ -var words = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'stop'] -var probs = [0.0032, 0.4863, 0.0789, 0.0675, 0.1974, 0.1387, 0.0277] -var thunk = function() {return categorical({ps: probs, vs: words})}; - -repeat(10, thunk) -~~~~ - -In this example the different words are indeed independent: you can show as above (by conditioning) that the first word tells you nothing about the second word. -However, constructing sequences in this way it is easy to accidentally create a sequence that is not entirely independent. For instance: - -~~~~ -var words = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'stop'] -var probs = (flip() ? - [0.0032, 0.4863, 0.0789, 0.0675, 0.1974, 0.1387, 0.0277] : - [0.3699, 0.1296, 0.0278, 0.4131, 0.0239, 0.0159, 0.0194]) -var thunk = function() {return categorical({ps: probs, vs: words})}; - -repeat(10, thunk) -~~~~ - -While the sequence looks very similar, the words are not independent: learning about the first word tells us something about the `probs`, which in turn tells us about the second word. Let's show this in a slightly simpler example: - -~~~~ -var sequenceCondDist = function(firstVal) { - return Infer({method: 'enumerate'}, - function() { - var prob = flip() ? 0.2 : 0.7 - var thunk = function() {return flip(prob)} - var s = repeat(2, thunk) - condition(s[0] == firstVal) - return {second: s[1]} - }); -}; - -viz(sequenceCondDist(true)) -viz(sequenceCondDist(false)) -~~~~ - -Conditioning on the first value tells us something about the second. This model is thus not i.i.d., but it does have a slightly weaker property: it is [exchangeable](https://en.wikipedia.org/wiki/Exchangeable_random_variables), meaning that the probability of a sequence of values remains the same if permuted into any order. - -It turns out that exchangeable sequences can always be modeled in the form used for the last example: -[de Finetti's theorem](https://en.wikipedia.org/wiki/De_Finetti%27s_theorem) says that, under certain technical conditions, any exchangeable sequence can be represented as follows, for some `latentPrior` distribution and `observe` function: - -~~~~ norun -var latent = sample(latentPrior) -var thunk = function() {return observe(latent)} -var sequence = repeat(2,thunk) -~~~~ - -## Polya's urn - -A classic example is the Polya urn model. Here, an urn contains some number of white and black balls. On each step we draw a random ball from the urn, note its color, and return it to the urn along with *another* ball of that color. Here is this model in WebPPL: - -~~~~ -var urnSeq = function(urn, samples) { - if(samples == 0) { - return [] - } else { - var ball = uniformDraw(urn) - return [ball].concat(urnSeq(urn.concat([ball]), samples-1)) - } -} - -var urnDist = Infer({method: 'enumerate'}, - function(){return urnSeq(['b', 'w'],3).join("")}) - -viz(urnDist) -~~~~ - -Observe that this model is exchangeable---permutations of a sequence all have the same probability (e.g., `bbw`, `bwb`, `wbb` have the same probability; `bww`, `wbw`, `wwb` do too). -The Polya urn is an examples of a "rich get richer" dynamic, which has many applications for modeling the real world. - -Next, consider the de Finetti representation of this model: - -~~~~ -var urn_deFinetti = function(urn, samples) { - var numWhite = sum(map(function(b){return b=='w'},urn)) - var numBlack = urn.length - numWhite - var latentPrior = Beta({a: numWhite, b: numBlack}) - var latent = sample(latentPrior) - return repeat(samples, function() {return flip(latent) ? 'b' : 'w'}) -} - -var urnDist = Infer({method: 'forward', samples: 10000}, - function(){return urn_deFinetti(['b', 'w'],3).join("")}) - -viz(urnDist) -~~~~ - -Here, we sample a shared latent parameter -- in this case, a sample from a Beta distribution -- generating the sequence samples independently given this parameter. -We obtain the same distribution on sequences of draws. - - -# Markov Models - -Exchangeable sequences don't depend on the order of the observations, but often the order *is* important. For instance, the temperature today is highly correlated with the temperature yesterday---if we were building a model of temperature readings we would want to take this into account. -The simplest assumption we can make to include the order of the observations is that each observation depends on the previous observation, but not (directly) on the ones before that. This is called a *Markov model* (or, in linguistics and biology, a *bi-gram model*). Here is a simple Markov model for Boolean values: - -~~~~ -var markov = function(prevObs, n) { - if(n == 0) { - return []; - } else { - var nextObs = prevObs ? flip(0.9) : flip(0.1); - return [nextObs].concat(markov(nextObs, n - 1)); - } -}; - -markov(true, 10) -~~~~ - -Notice that the sequences sampled from this model have "runs" of true or false more than in the i.i.d. or exchangeable models above. This is because the `nextObs` will tend to be similar to the `prevObs`. How would you adjust this model to make it tend to switch on each observation, rather than tending to stay the same? - -We can use a Markov model as a better (but still drastically simplified) model for sequences of words in language. - -~~~~ -var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'STOP']; -var transition = function(word) { - var ps = (word == 'START' ? [0.0032, 0.4863, 0.0789, 0.0675, 0.1974, 0.1387, 0.0277] : - word == 'chef' ? [0.0699, 0.1296, 0.0278, 0.4131, 0.1239, 0.2159, 0.0194] : - word == 'omelet' ? [0.2301, 0.0571, 0.1884, 0.1393, 0.0977, 0.1040, 0.1831] : - word == 'soup' ? [0.1539, 0.0653, 0.0410, 0.1622, 0.2166, 0.2664, 0.0941] : - word == 'eat' ? [0.0343, 0.0258, 0.6170, 0.0610, 0.0203, 0.2401, 0.0011] : - word == 'work' ? [0.0602, 0.2479, 0.0034, 0.0095, 0.6363, 0.02908, 0.0133] : - word == 'bake' ? [0.0602, 0.2479, 0.0034, 0.0095, 0.6363, 0.02908, 0.0133] : - console.error("word (" + word + ") not recognized")) - return categorical({vs: vocab, ps: ps}); -} - -var sampleWords = function(lastWord) { - if(lastWord == 'STOP') { - return [lastWord]; - } else { - var nextWord = transition(lastWord); - return [lastWord].concat(sampleWords(nextWord)); - } -} - -sampleWords('START') -~~~~ - -Each word is sampled from a categorical distribution whose parameters depend on the previous word, with this dependence specified in the `transition` function. -Notice that we control the length of the generated list here not with a fixed parameter, but by using the model itself: We start the recursion by sampling given the special symbol `START`. -When we sample the symbol `STOP` we end the recursion. -Like the geometric distribution, this [stochastic recursion](02-generative-models.html#stochastic-recursion) can produce unbounded structures---in this case lists of words of arbitrary length. - -The above code may seem unnecessarily complex because it explicitly lists every transition probability. Suppose that we put a prior distribution on the multinomial transitions instead. Using `mem` this is very straightforward: - -~~~~ -var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake', 'STOP'] - -var wordToDistribution = mem(function(word) { - return dirichlet(ones([vocab.length,1])) -}) - -var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) -} - -var sampleWords = function(lastWord) { - if(lastWord == 'STOP') { - return [lastWord] - } else { - var nextWord = transition(lastWord) - return [lastWord].concat(sampleWords(nextWord)) - } -} - -sampleWords('START') -~~~~ - -This is very much like the way we created an exchangeable model above, except instead of one unknown probability list, we have one for each previous word. Models like this are often called "hierarchical" n-gram models. We consider [hierarchical models](09-hierarchical-models.html) in more detail in a later chapter. - - -# Example: Subjective Randomness - -What does a random sequence look like? Is 00101 more random than 00000? Is the former a better example of a sequence coming from a fair coin than the latter? Most people say so, but notice that if you flip a fair coin, these two sequences are equally probable. Yet these intuitions about randomness are pervasive and often misunderstood: In 1936 the Zenith corporation attempted to test the hypothesis the people are sensitive to psychic transmissions. During a radio program, a group of psychics would attempt to transmit a randomly drawn sequence of ones and zeros to the listeners. Listeners were asked to write down and then mail in the sequence they perceived. The data thus generated showed no systematic effect of the transmitted sequence---but it did show a strong preference for certain sequences [@Goodfellow1938]. -The preferred sequences included 00101, 00110, 01100, and 01101. - -@Griffiths2001 suggested that we can explain this bias if people are considering not the probability of the sequence under a fair-coin process, but the probability that the sequence would have come from a fair process as opposed to a non-uniform (trick) process: - -~~~~ -var isFairDist = function(sequence) { - return Infer({method: 'enumerate'}, - function () { - var isFair = flip() - var realWeight = isFair ? .5 : .2; - var coin = function() {return flip(realWeight)}; - condition(_.isEqual(sequence, repeat(5, coin))) - return isFair - }) -} - -print("00101 is fair?") -viz(isFairDist([false, false, true, false, true])) -print("00000 is fair?") -viz(isFairDist([false, false, false, false, false])) -~~~~ - -This model posits that when considering randomness, as well as when imagining random sequences, people are more concerned with distinguishing a "truly random" generative process from a trick process. This version of the model doesn't think 01010 looks any less random than 01100 (try it), because even its "trick process" is i.i.d. and hence does not distinguish order. -We could extend the model to consider a Markov model as the alternative (trick) generative process: - -~~~~ -var markov = function(isFair, prev, n) { - if(n == 0) { - return []; - } else { - var next = flip(isFair ? 0.5 : - prev ? 0.1 : 0.9); - return [next].concat(markov(isFair, next, n - 1)); - } -} - -var isFairDist = function(sequence) { - return Infer({method: 'enumerate'}, - function () { - var isFair = flip() - var init = flip() - factor(_.isEqual(sequence, markov(isFair, init, sequence.length))); - return isFair - }) -} - -print("00101 is fair?") -viz(isFairDist([false, false, true, false, true])) -print("01010 is fair?") -viz(isFairDist([false, true, false, true, false])) -~~~~ - -(Q: Why did we use `factor` instead of `condition` above?) - -This version thinks that alternating sequences are non-random, but there are other non-uniform generative processes (such as all-true) that it doesn't detect. How could we extend this model to detect more non-random sequences? - - -# Hidden Markov Models - -Another popular model in computational linguistics is the hidden Markov model (HMM). The HMM extends the Markov model by assuming that the "actual" states aren't observable. Instead there is an "observation model" that generates an observation from each "hidden state". We use the same construction as above to generate an unknown observation model. - -~~~~ -var ones = function(n) {return Vector(repeat(n, function() {return 1}))}; -var states = ['s1', 's2', 's3', 's4', 's5', 's6', 's7', 's8', 'STOP']; -var vocab = ['chef', 'omelet', 'soup', 'eat', 'work', 'bake'] - -var stateToObsModel = mem(function(state) { - return dirichlet(ones(vocab.length)); -}) - -var observation = function(state) { - return (state == "START" ? 'START' : categorical({ps: stateToObsModel(state), vs: vocab})) -} - -var stateToTransitionModel = mem(function(state) { - return dirichlet(ones(states.length)); -}) - -var transition = function(state) { - return categorical({ps: stateToTransitionModel(state), vs: states}); -} - -var sampleWords = function(lastState) { - return (lastState == 'STOP' ? - [lastState] : - [observation(lastState)].concat(sampleWords(transition(lastState)))); -} - -sampleWords('START') -~~~~ - - -# Probabilistic Context-free Grammars - -The models above generate sequences of words, but lack constituent structure (or "hierarchical structure" in the linguistic sense). - -Probabilistic context-free grammars (PCFGs) are a straightforward (and canonical) way to generate sequences of words with constituent structure. There are many ways to write a PCFG in WebPPL. One especially direct way (inspired by Prolog programming) is to let each non-terminal be represented by a WebPPL function; here constituency is embodied by one procedure calling another---that is by causal dependence. - -(Notice that we've dispensed with the `START` and `STOP` symbols. Why do they become unnecessary with this formalism?) - -~~~~ -var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; - -var D = function() {return uniformDraw(['the', 'a'])}; - -var N = function() {return uniformDraw(['chef', 'soup', 'omelet'])}; - -var V = function() {return uniformDraw(['cooks', 'works'])} - -var A = function() {return uniformDraw(['diligently'])} - -var AP = function() {return uniformDraw([A()])} - -var NP = function() {return [D(), N()]} - -var VP = function() {return uniformDraw([[V(), AP()], - [V(), NP()]])} - -var S = function() {return [NP(), VP()]} - -S() -~~~~ - -Now, let's look at one of the procedures defining our PCFG in detail. - -~~~~norun -var VP = function() {return uniformDraw([[V(), AP()], - [V(), NP()]])} -~~~~ - -When `VP` is called, it samples one of two possible expansions, in this case either `[V AP]` or `[V NP]`. These two lists correspond to the "right-hand sides" (RHSs) of the rules $$VP \longrightarrow V\ AP$$ and $$VP \longrightarrow V\ NP$$ in the standard representation of PCFGs. These are lists that consist of symbols which are actually the names of other procedures. Therefore when we sample from them, they themselves recursively sample their RHSs until no more recursion can take place. Note that our terminal symbols deterministically return the terminal symbol. - -While it is most common to use PCFGs as models of strings (for linguistic applications), they can be useful as components of any probabilistic model where constituent structure is required. For instance, in a later chapter we will see how PCFGs can be used to construct the hypothesis space for models of concept learning. - - - -Reading & Discussion: [Readings]({{site.baseurl}}/readings/05-observing-sequences.html) - -Test your knowledge: [Exercises]({{site.baseurl}}/exercises/05-observing-sequences.html) - -Next chapter: [Inference about inference]({{site.baseurl}}/chapters/06-inference-about-inference.html) diff --git a/chapters/05.1-sequential-decisions.md b/chapters/05.1-sequential-decisions.md old mode 100644 new mode 100755 diff --git a/chapters/06-inference-about-inference.md b/chapters/06-inference-about-inference.md old mode 100644 new mode 100755 diff --git a/chapters/07-inference-process.md b/chapters/07-inference-process.md deleted file mode 100644 index 28e6d81..0000000 --- a/chapters/07-inference-process.md +++ /dev/null @@ -1,1285 +0,0 @@ ---- -layout: chapter -title: Algorithms for inference -description: From competence to process, efficiency tradeoffs of different algorithms. -custom_js: -- assets/js/box2d.js -- assets/js/physics.js -- assets/js/draw.js -- assets/js/custom.js -- assets/js/paper-full.js -custom_css: -- /assets/css/draw.css ---- - -Portions of the examples here were adapted from "[Notes of the PPAML Summer School 2016](http://probmods.github.io/ppaml2016/)". - - -# Analytic Solutions - -Conceptually, the simplest way to determine the probability of some variable under Bayesian inference is simply to apply Bayes' Rule and then carry out all the necessary multiplication, etc. However, this is not always possible. - -For instance, suppose your model involves a continuous function such as a `gaussian` and `gamma`. Such choices can take on an infinite number of possible values, so it is not possible to consider every one of them. In WebPPL, if we use `method: 'enumerate'` to try to calculate the analytic solution for such a model using, we get a runtime error: - -~~~~ -var gaussianModel = function() { - return sample(Gaussian({mu: 0, sigma: 1})) -}; -Infer({method: 'enumerate'}, gaussianModel); -~~~~ - -Even when all the variables are categorical, problems arise quickly. As a program makes more random choices, and as these choices gain more possible values, the number of possible execution paths through the program grows exponentially. Explicitly enumerating all of these paths can be prohibitively expensive. For instance, consider this program which computes the posterior distribution on rendered 2D lines, conditioned on those lines approximately matching this target image: - -diagram - -~~~~ -///fold: -var targetImage = Draw(50, 50, false); -loadImage(targetImage, "../assets/img/box.png"); - -var drawLines = function(drawObj, lines){ - var line = lines[0]; - drawObj.line(line[0], line[1], line[2], line[3]); - if (lines.length > 1) { - drawLines(drawObj, lines.slice(1)); - } -}; -/// - -var makeLines = function(n, lines, prevScore){ - // Add a random line to the set of lines - var x1 = randomInteger(50); - var y1 = randomInteger(50); - var x2 = randomInteger(50); - var y2 = randomInteger(50); - var newLines = lines.concat([[x1, y1, x2, y2]]); - // Compute image from set of lines - var generatedImage = Draw(50, 50, false); - drawLines(generatedImage, newLines); - // Factor prefers images that are close to target image - var newScore = -targetImage.distance(generatedImage)/1000; - factor(newScore - prevScore); - generatedImage.destroy(); - // Generate remaining lines (unless done) - return (n==1) ? newLines : makeLines(n-1, newLines, newScore); -}; - -var lineDist = Infer( - { method: 'enumerate', strategy: 'depthFirst', maxExecutions: 10 }, - function(){ - var lines = makeLines(4, [], 0); - var finalGeneratedImage = Draw(50, 50, true); - drawLines(finalGeneratedImage, lines); - return lines; - }); - -viz.table(lineDist); -~~~~ - -Running this program, we can see that enumeration starts by growing a line from the bottom-right corner of the image, and then proceeds to methodically plot out every possible line length that could be generated. These are all fairly terrible at matching the target image, and there are billions more states like them that enumeration would have to wade through in order to find those few that have high probability. - -# Approximate Inference - -Luckily, it is often possible to estimate the posterior probability fairly accurately, even though we cannot calculate it exactly. There are a number of different algorithms, each of which has different properties. - -## Rejection Sampling - -Rejection sampling (implemented in `method:"rejection"`), which we introduced in [conditioning]({{site.baseurl}}/chapters/03-conditioning.html), is conceptually the simplest. However, it is not very efficient. Recall that it works by randomly sampling values for the variables and then checking to see if the condition is met, rejecting the sample if it is not. If the condition is *a priori* unlikely, the vast majority of samples will be rejected, and so it will take a very large number of samples to find computations that do so. To see this, try running the following model with progressively smaller values for `baserate`: - -~~~~ -var baserate = 0.1 - -var model = function(){ - var A = flip(baserate) - var B = flip(baserate) - var C = flip(baserate) - condition(A+B+C >= 2) - return A -} - -viz(Infer({method: 'rejection', samples: 100}, model)) -~~~~ - -Even for this simple program -- and even though we are only asking for 100 successful (non-rejected) samples -- lowering the baserate by just one order of magnitude, to $$0.01$$, slows down inference considerably. Lowering the baserate to $$0.001$$ makes inference impractical. - -It can be useful to compare this directly to what happens with enumeration. Changing the baserate has no effect on runtime, but adding additional variables (var D = flip(baserate), var E = flip(baserate), etc.) can slow down inference dramatically. (Why?) - -~~~~ -var baserate = 0.1 - -var model = function(){ - var A = flip(baserate) - var B = flip(baserate) - var C = flip(baserate) - condition(A+B+C >= 2) - return A -} - -viz(Infer({method: 'enumerate'}, model)) -~~~~ - -## Markov chain Monte Carlo (MCMC) - -With rejection sampling, each sample is an independent draw from the model's prior. Markov chain Monte Carlo, in contrast involves a random walk through the posterior. Each sample depends on the prior sample -- but ony the prior sample (it is a *Markov* chain). We describe this in more detail below. - -Importantly, while you can approximate an arbitrary conditional distribution with arbitrary precision using rejection sampling or MCMC if you run the algorithms long enough, MCMC tends to approach the conditional distribution much more rapidly. Consider again this simple model: - -~~~~ -var baserate = 0.1 - -var model = function(){ - var A = flip(baserate) - var B = flip(baserate) - var C = flip(baserate) - condition(A+B+C >= 2) - return A -} - -viz(Infer({method: 'MCMC', lag: 100}, model)) -~~~~ - -Again, see what happens in the above inference as you lower the baserate. Unlike rejection sampling, inference will not slow down appreciably, though results will become less stable. Unlike enumeration, inference should also not slow down exponentially as the size of the state space is increased. -This is an example of the kind of tradeoffs that are common between different inference algorithms. - -Next, we provide more intuition on how MCMC works. - -#### Markov chains as samplers - - - -We have already seen [Markov models](05-observing-sequences.html#markov-models) used to describe sequences of observations. A Markov model (or Markov *chain*, as it is often called in the context of inference algorithms) is a discrete dynamical system that unfolds over iterations of the `transition` function. -Here is a Markov chain: - -~~~~ -var states = ['a', 'b', 'c', 'd']; -var transition = function(state){ - return (state == 'a' ? sample(Categorical({vs: states, ps: [.48, .48, .02, .02]})) : - state == 'b' ? sample(Categorical({vs: states, ps: [.48, .48, .02, .02]})) : - state == 'c' ? sample(Categorical({vs: states, ps: [.02, .02, .48, .48]})) : - state == 'd' ? sample(Categorical({vs: states, ps: [.02, .02, .48, .48]})) : - false) -} - -var chain = function(state, n){ - return (n == 0 ? state : chain(transition(state), n-1)) -} - - -print("State after 10 steps:") -viz.hist(repeat(1000,function() {chain('a',10)})) -viz.hist(repeat(1000,function() {chain('c',10)})) - -print("State after 25 steps:") -viz.hist(repeat(1000,function() {chain('a',25)})) -viz.hist(repeat(1000,function() {chain('c',25)})) - -print("State after 50 steps:") -viz.hist(repeat(1000,function() {chain('a',50)})) -viz.hist(repeat(1000,function() {chain('c',50)})) -~~~~ - -Notice that the distribution of states after only a few steps is highly influenced by the starting state. In the long run the distribution looks the same from any starting state: this long-run distribution is the called the *stable distribution* (also known as *stationary distribution*). To define *stationary distribution* formally, let $$p(x)$$ be the target distribution, and let $$\pi(x \rightarrow x')$$ be the transition distribution (i.e. the `transition` function in the above program). Since the stationary distribution is characterized by not changing when the transition is applied we have a *balance condition*: -$$p(x') = \sum_x p(x)\pi(x \rightarrow x')$$. -Note that the balance condition holds for the distribution as a whole---a single state can of course be moved by the transition. - -For the chain above, the stable distribution is uniform---we have another (fairly baroque!) way to sample from the uniform distribution on `['a', 'b', 'c', 'd']`! Of course we could have sampled from the uniform distribution using other Markov chains. For instance the following chain is more natural, since it transitions uniformly: - -~~~~ -var states = ['a', 'b', 'c', 'd']; -var transition = function(state){ - return sample(Categorical({vs: states, ps: [.25, .25, .25, .25]})) - } - -var chain = function(state, n){ - return (n == 0 ? state : chain(transition(state), n-1)) -} - - -print("State after 10 steps:") -viz.hist(repeat(1000,function() {chain('a',10)})) -viz.hist(repeat(1000,function() {chain('c',10)})) - -print("State after 25 steps:") -viz.hist(repeat(1000,function() {chain('a',25)})) -viz.hist(repeat(1000,function() {chain('c',25)})) - -print("State after 50 steps:") -viz.hist(repeat(1000,function() {chain('a',50)})) -viz.hist(repeat(1000,function() {chain('c',50)})) -~~~~ - -Notice that this chain converges much more quickly to the uniform distribution. Edit the code to confirm to yourself that the chain converges on the stationary distribution after a single step. -The number of steps it takes for the distribution on states to reach the stable distribution (and hence lose traces of the starting state) is called the *burn-in time*. Thus, while we can use a Markov chain as a way to (approximately) sample from its stable distribution, the efficiency depends on burn-in time. -While many Markov chains have the same stable distribution they can have very different burn-in times, and hence different efficiency. - -While state space in our examples above involved a finite number of states (4!), Markov chains can also be constructed over infinite state spaces. Here's a chain over the integers: - -~~~~ -var p = 0.7 - -var transition = function(state){ - return (state == 3 ? sample(Categorical({vs: [3, 4], ps: [(1 - 0.5 * (1 - p)), (0.5 * (1 - p))]})) : - sample(Categorical({vs: [(state - 1), state, (state + 1)], ps: [0.5, (0.5 - 0.5 * (1 - p)), (0.5 * (1 - p))]}))) -} - -var chain = function(state, n){ - return (n == 0 ? state : chain(transition(state), n-1)) -} - -var samples = repeat(5000, function() {chain(3, 250)}) -viz.table(samples) -~~~~ - -As we can see, this Markov chain has as its stationary distribution a [geometric distribution](https://en.wikipedia.org/wiki/Geometric_distribution) conditioned to be greater than 2. The Markov chain above *implements* the inference below, in the sense that it specifies a way to sample from the required conditional distribution. -We can get the same computation using `Infer`: - -~~~~ -var p = .7 - -var geometric = function(p){ - return ((flip(p) == true) ? 1 : (1 + geometric(p))) -} - -var post = Infer({method: 'MCMC', samples: 25000, lag: 10, model: function(){ - var mygeom = geometric(p); - condition(mygeom>2) - return(mygeom) - } -}) - -viz.table(post) -~~~~ - -Thus, MCMC involves identifying a Markov chain whose stationary distribution matches the condition distribution you'd like to estimate. That is, you want a Markov chain such that in the limit a histogram (or density plot) of states in the Markov chain approaches the conditional distribution in question. - -As we have already seen, each successive sample from a Markov chain is highly correlated with the prior state. (Why?). To see another example, let's return to our attempt to match the 2D image. This time, we will take 50 MCMC samples: - -~~~~ -///fold: -var targetImage = Draw(50, 50, false); -loadImage(targetImage, "../assets/img/box.png"); - -var drawLines = function(drawObj, lines){ - var line = lines[0]; - drawObj.line(line[0], line[1], line[2], line[3]); - if (lines.length > 1) { - drawLines(drawObj, lines.slice(1)); - } -}; -/// - -var makeLines = function(n, lines, prevScore){ - // Add a random line to the set of lines - var x1 = randomInteger(50); - var y1 = randomInteger(50); - var x2 = randomInteger(50); - var y2 = randomInteger(50); - var newLines = lines.concat([[x1, y1, x2, y2]]); - // Compute image from set of lines - var generatedImage = Draw(50, 50, false); - drawLines(generatedImage, newLines); - // Factor prefers images that are close to target image - var newScore = -targetImage.distance(generatedImage)/1000; - factor(newScore - prevScore); - generatedImage.destroy(); - // Generate remaining lines (unless done) - return (n==1) ? newLines : makeLines(n-1, newLines, newScore); -}; - -var lineDist = Infer( - { method: 'MCMC', samples:50}, - function(){ - var lines = makeLines(4, [], 0); - var finalGeneratedImage = Draw(50, 50, true); - drawLines(finalGeneratedImage, lines); - return lines; - }); - -viz.table(lineDist); -~~~~ - -As you can see, each successive sample is highly similar to the previous one. Since the first sample is chosen randomly, the sequence you see will be very different if you re-run the model. If you run the chain long enough, these local correlations wash out. However, that can result in a very large collection of samples. For convenience, modelers sometimes record only every Nth states in the chain. WebPPL provides an option for MCMC called `'lag'`, which we actually saw in the first example from this section. - - - - - - -#### Metropolis-Hastings - -Fortunately, it turns out htat for any given (condition) distribution we might want to sample from, there is at least one Markov chain with a matching stationary distribution. There are a number of methods for finding an appropriate Markov chain. One particularly common method is *Metropolis Hastings* recipe. - -To create the necessary transition function, we first create a *proposal distribution*, $$q(x\rightarrow x')$$, which does not need to have the target distribution as its stationary distribution, but should be easy to sample from (otherwise it will be unwieldy to use!). A common option for continuous state spaces is to sample a new state from a multivariate Gaussian centered on the current state. To turn a proposal distribution into a transition function with the right stationary distribution, we either accepting or reject the proposed transition with probability: $$\min\left(1, \frac{p(x')q(x'\rightarrow x)}{p(x)q(x\rightarrow x')}\right).$$ -That is, we flip a coin with that probability: if it comes up heads our next state is $x'$, otherwise our next state is still $$x$$. - -Such a transition function not only satisfies the *balance condition*, it actually satisfies a stronger condition, *detailed balance*. Specifically, $$p(x)\pi(x \rightarrow x') = p(x')\pi(x' \rightarrow x)$$. -(To show that detailed balance implies balance, substitute the right-hand side of the detailed balance equation into the balance equation, replacing the summand, and then simplify.) It can be shown that the *Metropolis-hastings algorithm* gives a transition probability (i.e. $$\pi(x\rightarrow x')$$) that satisfies detailed balance and thus balance. (Recommended exercise: prove this fact. Hint: the probability of transitioning depends on first proposing a given new state, then accepting it; if you don't accept the proposal you "transition" to the original state.) - -Note that in order to use this recipe we need to have a function that computes the target probability (not just one that samples from it) and the transition probability, but they need not be normalized (since the normalization terms will cancel). - -We can use this recipe to construct a Markov chain for the conditioned geometric distribution, as above, by using a proposal distribution that is equally likely to propose one number higher or lower: - -~~~~ -var p = 0.7 - -//the target distribution (not normalized): -//prob = 0 if x condition is violated, otherwise proportional to geometric distribution -var target_dist = function(x){ - return (x < 3 ? 0 : (p * Math.pow((1-p),(x-1)))) -} - -// the proposal function and distribution, -// here we're equally likely to propose x+1 or x-1. -var proposal_fn = function(x){ - return (flip() ? x - 1 : x + 1) -} -var proposal_dist = function (x1, x2){ - return 0.5 -} - -// the MH recipe: -var accept = function (x1, x2){ - let p = Math.min(1, (target_dist(x2) * proposal_dist(x2, x1)) / (target_dist(x1) * proposal_dist(x1,x2))) - return flip(p) -} -var transition = function(x){ - let proposed_x = proposal_fn(x) - return (accept(x, proposed_x) ? proposed_x : x) -} - -//the MCMC loop: -var mcmc = function(state, iterations){ - return ((iterations == 1) ? [state] : mcmc(transition(state), iterations-1).concat(state)) -} - -var chain = mcmc(3, 10000) // mcmc for conditioned geometric -viz.table(chain) -~~~~ - -Note that the transition function that is automatically derived using the MH recipe is actually the same as the one we wrote by hand earlier: - -```js -var transition = function(state){ - return (state == 3 ? sample(Categorical({vs: [3, 4], ps: [(1 - 0.5 * (1 - p)), (0.5 * (1 - p))]})) : - sample(Categorical({vs: [(state - 1), state, (state + 1)], ps: [0.5, (0.5 - 0.5 * (1 - p)), (0.5 * (1 - p))]}))) -} -``` - - - -#### Hamiltonian Monte Carlo - -WebPPL's `method:'MCMC'` uses *Metropolis-Hastings* by default. However, it is not the only option, nor is it always the best. When the input to a `factor` statement is a function of multiple variables, those variables become correlated in the posterior distribution. If the induced correlation is particularly strong, MCMC can sometimes become 'stuck.' In controling the random walk, Metropolis-Hastings choses a new point in probability space to go to and then decides whether or not to go based on the probability of the new point. If it has difficulty finding new points with reasonable probability, it will get stuck and simplly stay where it is. Given an infinite amount of time, Metropolis-Hastings will recover. However, the first N samples will be heavily dependent on where the chain started (the first sample) and will be a poor approximation of the true posterior. - -Take this example below, where we use a Gaussian likelihood factor to encourage ten uniform random numbers to sum to the value 5: - -~~~~ -var bin = function(x) { - return Math.floor(x * 1000) / 1000; -}; - -var constrainedSumModel = function() { - var xs = repeat(10, function() { - return uniform(0, 1); - }); - var targetSum = xs.length / 2; - factor(Gaussian({mu: targetSum, sigma: 0.005}).score(sum(xs))); - return map(bin, xs); -}; - -var post = Infer({ - method: 'MCMC', - samples: 5000, - callbacks: [MCMC_Callbacks.finalAccept] -}, constrainedSumModel); -var samps = repeat(10, function() { return sample(post); }); -reduce(function(x, acc) { - return acc + 'sum: ' + sum(x).toFixed(3) + ' | nums: ' + x.toString() + '\n'; -}, '', samps); -~~~~ - -The output box displays 10 random samples from the posterior. You'll notice that they are all very similiar, despite there being many distinct ways for ten real numbers to sum to 5. The reason is technical but straight-forward. The program above uses the `callbacks` option to `MCMC` to display the final acceptance ratio (i.e. the percentage of proposed samples that were accepted)--it should be around 1-2%, which is very inefficient. - -To deal with situations like this one, WebPPL provides an implementation of [Hamiltonian Monte Carlo](http://docs.webppl.org/en/master/inference.html#kernels), or HMC. HMC automatically computes the gradient of the posterior with respect to the random choices made by the program. It can then use the gradient information to make coordinated proposals to all the random choices, maintaining posterior correlations. Below, we apply HMC to `constrainedSumModel`: - -~~~~ -///fold: -var bin = function(x) { - return Math.floor(x * 1000) / 1000; -}; - -var constrainedSumModel = function() { - var xs = repeat(10, function() { - return uniform(0, 1); - }); - var targetSum = xs.length / 2; - factor(Gaussian({mu: targetSum, sigma: 0.005}).score(sum(xs))); - return map(bin, xs); -}; -/// - -var post = Infer({ - method: 'MCMC', - samples: 100, - callbacks: [MCMC_Callbacks.finalAccept], - kernel: { - HMC : { steps: 50, stepSize: 0.0025 } - } -}, constrainedSumModel); -var samps = repeat(10, function() { return sample(post); }); -reduce(function(x, acc) { - return acc + 'sum: ' + sum(x).toFixed(3) + ' | nums: ' + x.toString() + '\n'; -}, '', samps); -~~~~ - -The approximate posterior samples produced by this program are more varied, and the final acceptance rate is much higher. - -There are a couple of caveats to keep in mind when using HMC: - - - Its parameters can be extremely sensitive. Try increasing the `stepSize` option to `0.004` and seeing how the output samples degenerate. - - It is only applicable to continuous random choices, due to its gradient-based nature. You can still use HMC with models that include discrete choices, though: under the hood, this will alternate between HMC for the continuous choices and MH for the discrete choices. - -## Particle Filters - -Particle filters -- also known as [Sequential Monte Carlo](http://docs.webppl.org/en/master/inference.html#smc) -- maintain a collection of samples (particles) that are resampled upon encountering new evidence. They are particularly useful for models that incrementally update beliefs as new observations come in. Before considering such models, though, let's get a sense of how particle filters work. Below, we apply a particle filter to our 2D image rendering model, using `method: 'SMC'`. - -~~~~ -///fold: 2D image drawing -var targetImage = Draw(50, 50, false); -loadImage(targetImage, "../assets/img/box.png") - -var drawLines = function(drawObj, lines){ - var line = lines[0]; - drawObj.line(line[0], line[1], line[2], line[3]); - if (lines.length > 1) { - drawLines(drawObj, lines.slice(1)); - } -} - -var makeLines = function(n, lines, prevScore){ - // Add a random line to the set of lines - var x1 = randomInteger(50); - var y1 = randomInteger(50); - var x2 = randomInteger(50); - var y2 = randomInteger(50); - var newLines = lines.concat([[x1, y1, x2, y2]]); - // Compute image from set of lines - var generatedImage = Draw(50, 50, false); - drawLines(generatedImage, newLines); - // Factor prefers images that are close to target image - var newScore = -targetImage.distance(generatedImage)/1000; - factor(newScore - prevScore); - generatedImage.destroy(); - // Generate remaining lines (unless done) - return (n==1) ? newLines : makeLines(n-1, newLines, newScore); -} -/// - -var numParticles = 100; - -var post = Infer( - {method: 'SMC', particles: numParticles}, - function(){ - return makeLines(4, [], 0); - }); - -repeat(20, function() { - var finalGeneratedImage = Draw(50, 50, true); - var lines = sample(post); - drawLines(finalGeneratedImage, lines); -}); -~~~~ - -Try running this program multiple times. Note that while each run produces different outputs, within a run, all of the output particles look extremely similar. We will return to this issue later on in the next section. - -Notice the variable `numParticles`. This sets the number of estimates (particles) drawn at each inference step. More particles tends to mean more precise estimates. Try adjusting `numParticles` in order to see the difference in accuracy. - -For another example, consider inferring the 2D location of a static object given several noisy observations of its position, i.e. from a radar detector: - -~~~~ -///fold: helper drawing function -var drawPoints = function(canvas, positions, strokeColor){ - if (positions.length == 0) { return []; } - var next = positions[0]; - canvas.circle(next[0], next[1], 5, strokeColor, "white"); - drawPoints(canvas, positions.slice(1), strokeColor); -}; -/// - -var observe = function(pos, obs) { - factor(Gaussian({mu: pos[0], sigma: 5}).score(obs[0])); - factor(Gaussian({mu: pos[1], sigma: 5}).score(obs[1])); -}; - -var radarStaticObject = function(observations) { - var pos = [gaussian(200, 100), gaussian(200, 100)]; - map(function(obs) { observe(pos, obs); }, observations); - return pos; -}; - -var trueLoc = [250, 250] -var numParticles = 1000 -var numObservations = 20 - -var observations = repeat(numObservations, function() { - return [ gaussian(trueLoc[0], 100), gaussian(trueLoc[1], 100) ]; -}); - -var posterior = Infer({method: 'SMC', particles: 1000}, function() { - return radarStaticObject(observations); -}); -var posEstimate = sample(posterior); - -var canvas = Draw(400, 400, true); -drawPoints(canvas, observations, 'grey'); // observations -drawPoints(canvas, [posEstimate], 'blue'); // estimate -drawPoints(canvas, [trueLoc], 'green'); // actual location -posEstimate; -~~~~ - -We display the true location (`trueLoc`) in green, the observations in grey, and the inferred location (`posEstimate`) in blue. Again, try adjusting the number of particles (`numParticles`) and number of observations (`numObservations`) to see how these affect accuracy. - -#### Interlude on `factor` vs. `condition` - -Although we initially introduced conditioning using the function `condition`, we have often used `factor` instead of `condition`. While the notion of conditioning on an observation is conceptually straight-forward, it has a number of computational drawbacks. In our model above, any given observation is *a priori* exremely unlikey, since our target can appear anywhere. For obvious reasons, rejection sampling will work poorly, since the chance that a random sample from a Gaussian will take on the value `x` is negligible. Thus, randomly sampling and only retaining the samples where the Gaussian did take on the value `x` is an inefficient strategy. MCMC similarly has difficulty when the vast majority of possible parameter settings have probability 0. (Why?) In contrast, `factor` provides a much softer constraint: parameter values that do not give rise to our observations are low-probability, but not impossible. - - -#### Incremental inference based on incremental evidence - -When a particle filter encounters new evidence, it updates its collection of particles (estimates). Those particles that predict the new data well are likely to be retained or even multiplied. Those particles that do not predict the new data well are likely to be eliminated. Thus, particle filters integrate new data with prior beliefs. This makes them particularly well-suited for programs that interleave inference and observation. - -Below, we extend the the radar detection example to infer the trajectory of a moving object, rather than the position of a static one--the program receives a sequence of noisy observations and must infer the underlying sequence of true object locations. Our program assumes that the object's motion is governed by a momentum term which is a function of its previous two locations; this tends to produce smoother trajectories. - -The code below generates observations from a randomly-sampled underlying trajectory (notice that we only have one observation per time step): - -~~~~ -///fold: helper functions for drawing -var drawLines = function(canvas, start, positions){ - if (positions.length == 0) { return []; } - var next = positions[0]; - canvas.line(start[0], start[1], next[0], next[1], 4, 0.2); - drawLines(canvas, next, positions.slice(1)); -}; - -var drawPoints = function(canvas, positions, mycolor){ - if (positions.length == 0) { return []; } - var next = positions[0]; - canvas.circle(next[0], next[1], 2, mycolor, "white"); - drawPoints(canvas, positions.slice(1), mycolor); -}; -/// - -var genObservation = function(pos){ - return map( - function(x){ return gaussian(x, 15); }, - pos - ); -}; - -var init = function(){ - var state1 = [gaussian(300, 1), gaussian(300, 1)]; - var state2 = [gaussian(300, 1), gaussian(300, 1)]; - var states = [state1, state2]; - var observations = map(genObservation, states); - return { - states: states, - observations: observations - }; -}; - -var transition = function(lastPos, secondLastPos){ - return map2( - function(lastX, secondLastX){ - var momentum = (lastX - secondLastX) * .7; - return gaussian(lastX + momentum, 3); - }, - lastPos, - secondLastPos - ); -}; - -var trajectory = function(n) { - var prevData = (n == 2) ? init() : trajectory(n - 1); - var prevStates = prevData.states; - var prevObservations = prevData.observations; - var newState = transition(last(prevStates), secondLast(prevStates)); - var newObservation = genObservation(newState); - return { - states: prevStates.concat([newState]), - observations: prevObservations.concat([newObservation]) - } -}; - -var numSteps = 80; -var atrajectory = trajectory(numSteps) -var synthObservations = atrajectory.observations; -var trueLocs = atrajectory.states; -var canvas = Draw(400, 400, true) -drawPoints(canvas, synthObservations, "grey") // observations -drawPoints(canvas, trueLocs, "blue") // actual trajectory -~~~~ - -The actual trajectory is displayed in blue. The observations are in grey. - -We can then use `'SMC'` inference to estimate the underlying trajectory which generated a synthetic observation sequence: - -~~~~ -///fold: -var drawLines = function(canvas, start, positions, mycolor){ - if (positions.length == 0) { return []; } - var next = positions[0]; - canvas.line(start[0], start[1], next[0], next[1], 4, 0.2, mycolor); - drawLines(canvas, next, positions.slice(1), mycolor); -}; - -var drawPoints = function(canvas, positions, mycolor){ - if (positions.length == 0) { return []; } - var next = positions[0]; - canvas.circle(next[0], next[1], 2, mycolor, "white"); - drawPoints(canvas, positions.slice(1), mycolor); -}; - -var genObservation = function(pos){ - return map( - function(x){ return gaussian(x, 15); }, - pos - ); -}; - -var init = function(){ - var state1 = [gaussian(250, 1), gaussian(250, 1)]; - var state2 = [gaussian(250, 1), gaussian(250, 1)]; - var states = [state1, state2]; - var observations = map(genObservation, states); - return { - states: states, - observations: observations - }; -}; - -var transition = function(lastPos, secondLastPos){ - return map2( - function(lastX, secondLastX){ - var momentum = (lastX - secondLastX) * .7; - return gaussian(lastX + momentum, 3); - }, - lastPos, - secondLastPos - ); -}; - -var trajectory = function(n) { - var prevData = (n == 2) ? init() : trajectory(n - 1); - var prevStates = prevData.states; - var prevObservations = prevData.observations; - var newState = transition(last(prevStates), secondLast(prevStates)); - var newObservation = genObservation(newState); - return { - states: prevStates.concat([newState]), - observations: prevObservations.concat([newObservation]) - } -}; -/// - -var observe = function(pos, trueObs){ - return map2( - function(x, trueObs) { - return factor(Gaussian({mu: x, sigma: 5}).score(trueObs)); - }, - pos, - trueObs - ); -}; - -var initWithObs = function(trueObs){ - var state1 = [gaussian(250, 1), gaussian(250, 1)]; - var state2 = [gaussian(250, 1), gaussian(250, 1)]; - var obs1 = observe(state1, trueObs[0]); - var obs2 = observe(state2, trueObs[1]); - return { - states: [state1, state2], - observations: [obs1, obs2] - } -}; - -var trajectoryWithObs = function(n, trueObservations) { - var prevData = (n == 2) ? - initWithObs(trueObservations.slice(0, 2)) : - trajectoryWithObs(n-1, trueObservations.slice(0, n-1)); - var prevStates = prevData.states; - var prevObservations = prevData.observations; - var newState = transition(last(prevStates), secondLast(prevStates)); - var newObservation = observe(newState, trueObservations[n-1]); - return { - states: prevStates.concat([newState]), - observations: prevObservations.concat([newObservation]) - } -}; - -var numSteps = 80; -var numParticles = 10; - -// Gen synthetic observations -var atrajectory = trajectory(numSteps) -var synthObservations = atrajectory.observations; -var trueLocs = atrajectory.states; - -// Infer underlying trajectory using particle filter -var posterior = Infer({method: 'SMC', particles: numParticles}, function() { - return trajectoryWithObs(numSteps, synthObservations); -}); -var inferredTrajectory = sample(posterior).states; - -// Draw model output -var canvas = Draw(400, 400, true) -drawPoints(canvas, synthObservations, "grey") // observations -drawLines(canvas, inferredTrajectory[0], inferredTrajectory.slice(1), "blue") // inferred -drawLines(canvas, trueLocs[0], trueLocs.slice(1), "green") // true -~~~~ - -Again, the actual trajectory is in green, the observations are in grey, and the inferred trajectory is in green. Try increasing or decreasing the number of particles to see how this affects inference. - -[Here](http://dritchie.github.io/web-procmod/) is a more complex example of using SMC to generate a 3D model that matches a given volumetric target (Note: this demo uses a much older version of WebPPL, so some of the syntax is different / not compatible with the code we've been working with). - -## Variational Inference - -The previous parts of this chapter focused on Monte Carlo methods for approximate inference: algorithms that generate a (large) collection of samples to represent the posterior distribution. This is a [*non-parametric*](https://en.wikipedia.org/wiki/Nonparametric_statistics) representation of the posterior. Non-parametric methods are highly flexible but can require a very many expensive samples. - -On the other side of the same coin, we have [*parametric*](https://en.wikipedia.org/wiki/Parametric_statistics) representations--that is, we can try to design and fit a parameterized density function to approximate the posterior distribution. By definition a parametric function can be described by some finite number of parameters. For instance, a Gaussian is fully described by two numbers: its mean and standard deviation. By approximating a complex posterior distribution within a parametric family, we can often acheive reasonabe result much more quickly. Unlike Monte Carlo methods, however, if the true posterior is badly fit by the family we will never get good results. - -Thus, if we believe we can fit the distribution of interest reasonably well parametrically, there are a number of advantages to doing so. This is the approach taken by the family of [variational inference](http://docs.webppl.org/en/master/inference.html#optimization) methods, and WebPPL provides a version of these algorithms via the `optimize` inference option (the name 'optimize' comes from the fact that we're optimizing the parameters of a density function to make it as close as possible to the true posterior). - -Below, we use `optimize` to fit the hyperparameters of a Gaussian distribution from data: - -~~~~ -var trueMu = 3.5; -var trueSigma = 0.8; - -var data = repeat(100, function() { return gaussian(trueMu, trueSigma); }); - -var gaussianModel = function() { - var mu = gaussian(0, 1); - var sigma = Math.exp(gaussian(0, 1)); - var G = Gaussian({mu: mu, sigma: sigma}); - map(function(d) { - factor(G.score(d)); - }, data); - return {mu: mu, sigma: sigma}; -}; - -var post = Infer({ - method: 'optimize', - optMethod: 'adam', - steps: 500, - // Also try using MCMC and seeing how long it takes to converge - // method: 'MCMC', - // onlyMAP: true, - // samples: 5000 -}, gaussianModel); - -sample(post); -~~~~ - -Run this code, then try using MCMC to achieve the same result. You'll notice that MCMC takes significantly longer to converge. - -How does `optimize` work? By default, it takes the given arguments of random choices in the program (in this case, the arguments `(0, 1)` and `(0, 1)` to the two `gaussian` random choices used as priors) and replaces with them with free parameters which it then optimizes to bring the resulting distribution as close as possible to the true posterior. This approach is also known as *mean-field variational inference*: approximating the posterior with a product of independent distributions (one for each random choice in the program). There are other methods for variational inference in addition to *mean-field*. - - - -# Process-level cognitive modeling - -As we noted in an earlier chapter, there is an interesting parallel between the `Infer` abstraction, which separates model specification from inference method, and the idea of levels of analysis in cognitive science @Marr1982. -For most of this book we are interested in the *computational* level of describing what people know about the world and what inferences that knowledge licenses. -That is, we treat the model argument to `infer` as the scientific hypothesis, and the options (including 'method') argument as a engineering detail needed to derive predictions. -We can make a great deal of progress with this level of abstraction. - -The *algorithmic* level goes further, attempting to describe the process by which people draw these inferences, and taking the options to `Infer` as part of the hypotheses. -While `Infer` specifies an ideal, different methods for inference will approximate this ideal better or worse in different cases; they will also do so with different time and space tradeoffs. -Is it reasonable to interpret the inference algorithms that we borrow from statistics as psychological hypotheses at the algorithmic level? *Which algorithm* does the brain use for inference? Could it be MCMC? Enumeration? - -If we take the algorithms for inference as psychological hypotheses, then the approximation and resource-usage characteristics of the algorithms will be the signature phenomena of interest. - - - - - - - -Test your knowledge: [Exercises]({{site.baseurl}}/exercises/07-inference-process.html) - -Reading & Discussion: [Readings]({{site.baseurl}}/readings/07-inference-process.html) - -Next chapter: [Learning as conditional inference]({{site.baseurl}}/chapters/08-learning-as-conditional-inference.html) diff --git a/chapters/08-learning-as-conditional-inference.md b/chapters/08-learning-as-conditional-inference.md deleted file mode 100644 index c990b03..0000000 --- a/chapters/08-learning-as-conditional-inference.md +++ /dev/null @@ -1,750 +0,0 @@ ---- -layout: chapter -title: Learning as conditional inference -description: How inferences change as data accumulate. ---- - - -The line between "reasoning" and "learning" is unclear in cognition. -Just as reasoning can be seen as a form of conditional inference, so can learning: discovering persistent facts about the world (for example, causal processes or causal properties of objects). -By saying that we are learning "persistent" facts we are indicating that there is something to infer which we expect to be relevant to many observations over time. -Thus, we will formulate learning as inference in a model that (1) has a fixed latent value of interest, the *hypothesis*, and (2) has a sequence of observations, the *data points*. This will be a special class of [models for sequences of observations]({{site.baseurl}}/chapters/05-observing-sequences.html)---roughly those that fit the pattern of [Bayes rule](03-conditioning.html#bayes-rule): - - - -~~~~ norun -Infer({...}, function() { - var hypothesis = sample(prior) - var obsFn = function(datum){...uses hypothesis...} - mapData({data: observedData}, obsFn) - return hypothesis -}); -~~~~ - -The `prior` samples a hypothesis from the *hypothesis space*. -This distribution expresses our prior knowledge about how the process we observe is likely to work, before we have observed any data. -The function `obsFn` captures the relation between the `hypothesis` and a single `datum`, and will usually contain an `observe` statement. -Here we have used the special operator [`mapData`](http://webppl.readthedocs.io/en/master/functions/arrays.html?highlight=mapData) whose meaning is the same as `map`. We use `mapData` both to remind ourselves that we are expressing the special pattern of observing a sequence of observations, and because some inference algorithms can use this hint to do better learning. - -When thinking about learning as inference, there are several key questions. First, what can be inferred about the hypothesis given a certain subset of the observed data? For example, in most cases, you cannot learn much about the weight of an object based on its color. However, if there is a correlation between weight and color -- as is the case in many children's toys -- observing color does allow you to learn about weight. - -Second, what is the relationship between the amount of input (how much data we've observed) and the knowledge gained? In psychology, this relationship is often characterized with a *learning curve*, representing a belief as a function of amount of data. -In general, getting more data allows us to update our beliefs. But some data, in some models, has a much bigger effect. -In addition, while knowledge often changes gradually as data is acucmulated, it sometimes jumps in non-linear ways; these are usually the most psychologically interesting predictions. - - - -# Example: Learning About Coins - -As a simple illustration of learning, imagine that a friend pulls a coin out of her pocket and offers it to you to flip. You flip it five times and observe a set of all heads: - -`[H, H, H, H, H]`. - -Does this seem at all surprising? To most people, flipping five heads in a row is a minor coincidence but nothing to get excited about. But suppose you flip it five more times and continue to observe only heads. Now the data set looks like this: - -`[H, H, H, H, H, H, H, H, H, H]` - -Most people would find this a highly suspicious coincidence and begin to suspect that perhaps their friend has rigged this coin in some way -- maybe it's a weighted coin that always comes up heads no matter how you flip it. This inference could be stronger or weaker, of course, depending on what you believe about your friend or how she seems to act; did she offer a large bet that you would flip more heads than tails? Now you continue to flip five more times and again observe nothing but heads -- so the data set now consists of 15 heads in a row: - -`[H, H, H, H, H, H, H, H, H, H, H, H, H, H, H]` - -Regardless of your prior beliefs, it is almost impossible to resist the inference that the coin is a trick coin. - -This "learning curve" reflects a highly systematic and rational process of conditional inference. - -For simplicity let's consider only two hypotheses, two possible definitions of `coin`, representing a fair coin and a trick coin that produces heads 95% of the time. A priori, how likely is any coin offered up by a friend to be a trick coin? Of course there is no objective or universal answer to that question, but for the sake of illustration let's assume that the *prior probability* of seeing a trick coin is 1 in a 1000, versus 999 in 1000 for a fair coin. These probabilities determine the weight passed to `makeCoin`. Now to inference: - -~~~~ -var observedData = ['h', 'h', 'h', 'h', 'h'] -var fairPrior = 0.999 -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't' - } -} - -var fairnessPosterior = Infer({method: 'enumerate'}, function() { - var fair = flip(fairPrior) - var coin = makeCoin(fair ? 0.5 : 0.95) - var obsFn = function(datum){condition(datum == coin())} - mapData({data: observedData}, obsFn) - return {fair: fair} -}) - -viz(fairnessPosterior) -~~~~ - -Try varying the number of flips and the number of heads observed. You should be able to reproduce the intuitive learning curve described above. Observing 5 heads in a row is not enough to suggest a trick coin, although it does raise the hint of this possibility: its chances are now a few percent, approximately 30 times the baseline chance of 1 in a 1000. After observing 10 heads in a row, the odds of trick coin and fair coin are now roughly comparable, although fair coin is still a little more likely. After seeing 15 or more heads in a row without any tails, the odds are now strongly in favor of the trick coin. - -Study how this learning curve depends on the choice of `fairPrior`. There is certainly a dependence. If we set `fairPrior` to be 0.5, equal for the two alternative hypotheses, just 5 heads in a row are sufficient to favor the trick coin by a large margin. If `fairPrior` is 99 in 100, 10 heads in a row are sufficient. We have to increase `fairPrior` quite a lot, however, before 15 heads in a row is no longer sufficient evidence for a trick coin: even at `fairPrior` = 0.9999, 15 heads without a single tail still weighs in favor of the trick coin. This is because the evidence in favor of a trick coin accumulates exponentially as the data set increases in size; each successive `h` flip increases the evidence by nearly a factor of 2. - -Learning is always about the shift from one state of knowledge to another. The speed of that shift provides a way to diagnose the strength of a learner's initial beliefs. Here, the fact that somewhere between 10 and 15 heads in a row is sufficient to convince most people that the coin is a trick coin suggests that for most people, the a priori probability of encountering a trick coin in this situation is somewhere between 1 in a 100 and 1 in 10,000---a reasonable range. Of course, if you begin with the suspicion that any friend who offers you a coin to flip is liable to have a trick coin in his pocket, then just seeing five heads in a row should already make you very suspicious---as we can see by setting `fairPrior` to a value such as 0.9. - -## Learning trajectories - -When studying learning as conditional inference, that is when considering an *ideal learner model*, we are particularly interested in the dynamics of how inferred hypotheses change as a function of amount of data (often thought of as time the learner spends acquiring data). We can map out the *trajectory* of learning by plotting a summary of the posterior distribution over hypotheses as a function of the amount of observed data. Here we plot the expectation that the coin is fair in the above example: - -~~~~ -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't' - } -}; -/// - -var fairnessPosterior = function(observedData) { - return Infer({method: 'enumerate'}, function() { - var fair = flip(0.999) - var coin = makeCoin(fair ? 0.5 : 0.95) - var obsFn = function(datum){condition(datum == coin())} - mapData({data: observedData}, obsFn) - return {fair: fair} - }) -} - - -var trueWeight = .9; -var trueCoin = makeCoin(trueWeight); -var fullDataSet = repeat(100, trueCoin); -var observedDataSizes = [1,3,6,10,20,30,50,70,100]; -var estimates = map(function(N) { - return expectation(fairnessPosterior(fullDataSet.slice(0,N)), function(x){return x.fair}) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -Notice that different runs of this program can give quite different trajectories, but always end up in the same place in the long run. This is because the data set used for learning is different on each run. This is a feature, not a bug: real learners have idiosyncratic experience, even if they are al drawn from the same distribution. Of course, we are often interested in the average behavior of an ideal learner: we could average this plot over many randomly chosen data sets, simulating many different learners. - -# Learning a Continuous Parameter - -The previous example represents perhaps the simplest imaginable case of learning. Typical learning problems in human cognition or AI are more complex in many ways. For one, learners are almost always confronted with more than two hypotheses about the causal structure that might underlie their observations. Indeed, hypothesis spaces for learning are often infinite. Countably infinite hypothesis spaces are encountered in models of learning for domains traditionally considered to depend on "discrete" or "symbolic" knowledge; hypothesis spaces of grammars in language acquisition are a canonical example. Hypothesis spaces for learning in domains traditionally considered more "continuous", such as perception or motor control, are typically uncountable and parametrized by one or more continuous dimensions. In causal learning, both discrete and continuous hypothesis spaces typically arise. (In statistics, making conditional inferences over continuous hypothesis spaces given data is often called *parameter estimation*.) - -We can explore a basic case of learning with continuous hypothesis spaces by slightly enriching our coin flipping example. Suppose that our hypothesis generator `makeCoin`, instead of simply flipping a coin to determine which of two coin weights to use, can choose *any* coin weight between 0 and 1. -The following program computes conditional inferences about the weight of a coin drawn from a *prior distribution* described by the `Uniform` function, conditioned on a set of observed flips. - -~~~~ -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// -var observedData = ['h', 'h', 'h', 'h', 'h'] - -var weightPosterior = Infer({method: 'rejection', samples: 1000}, function() { - var coinWeight = sample(Uniform({a: 0, b: 1})) - var coin = makeCoin(coinWeight) - var obsFn = function(datum){condition(datum == coin())} - mapData({data: observedData}, obsFn) - return coinWeight -}) - -viz(weightPosterior) -~~~~ - - -Experiment with different data sets, varying both the number of flips and the relative proportion of heads and tails. How does the shape of the conditional distribution change? The location of its peak reflects a reasonable "best guess" about the underlying coin weight. It will be roughly equal to the proportion of heads observed, reflecting the fact that our prior knowledge is basically uninformative; a priori, any value of `coinWeight` is equally likely. The spread of the conditional distribution reflects a notion of confidence in our beliefs about the coin weight. The distribution becomes more sharply peaked as we observe more data, because each flip, as an independent sample of the process we are learning about, provides additional evidence the process's unknown parameters. - - We can again look at the learning trajectory in this example: - -~~~~ -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', samples: 1000}, function() { - var coinWeight = sample(Uniform({a: 0, b: 1})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -var fullDataSet = repeat(100, function(){return 'h'}); -var observedDataSizes = [0,1,2,4,8,16,25,30,50,70,100]; -var estimates = map(function(N) { - return expectation(weightPosterior(fullDataSet.slice(0,N))) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -(Note that we have made two changes for algorithmic efficiency: we have re-written `obsFn` to use `observe` instead of `condition`, and we have switched to method `MCMC`. Think about why this helps!) -You can explore what is learned by plotting different kinds of statistics by passing a function to the `expectation`. For example, the absolute difference between the true mean and the estimated mean, or a confidence measure like the standard error of the mean. - -# A Structured Hypothesis Space - -It is easy to see that the previous WebPPL program doesn't really capture our intuitions about coins, or at least not in the most familiar everyday scenarios. Imagine that you have just received a quarter in change from a store -- or even better, taken it from a nicely wrapped-up roll of quarters that you have just picked up from a bank. Your prior expectation at this point is that the coin is almost surely fair. If you flip it 10 times and get 7 heads out of 10, you'll think nothing of it; that could easily happen with a fair coin and there is no reason to suspect the weight of this particular coin is anything other than 0.5. But running the above query with uniform prior beliefs on the coin weight, you'll guess the weight in this case is around 0.7. Our hypothesis generating function needs to be able to draw `coinWeight` not from a uniform distribution, but from some other function that can encode various expectations about how likely the coin is to be fair, skewed towards heads or tails, and so on. - -One option is the Beta distribution. The Beta distribution takes parameters `a` and `b`, which can be thought of as the number of *prior* observations of `h` and `t`, respectively. - -~~~~ -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// - -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -var fullDataSet = repeat(100, function(){return 'h'}); -var observedDataSizes = [0,1,2,4,6,8,10,20,30,40,50,70,100]; -var estimates = map(function(N) { - return expectation(weightPosterior(fullDataSet.slice(0,N))) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -We are getting closer, in that learning is far more conservative. In fact, it is too conservative: after getting heads 100 times in a row, most humans will conclude the coin can *only* come up heads. The model, in contrast, still expects the coin to come up tails around 10% of the time. - -We can of course decrease our priors `a` and `b` to get faster learning, but then we will just go back to our earlier problem. The problem is that our Beta is putting much less prior probability on a coin with weight 1.0 than a coin with weight 0.9, whereas most humans probably have the opposite prior. While we can address this by using fractional values for `a` and `b`, this results in a model that strongly disfavors fair coins. What we really want is a prior that puts high probability on weights of 0.0, 0.5, and 1.0, with low probability on everything else. - -The following model expects coins to come in one of four categories: fair, always heads, always tails, and 'bent' -- where a 'bent' coint can have any weight from 0 to 1: - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// - -var priors = {fair:.999, allHeads:.0005, allTails:.00025, bent:.00025} -var drawWeight = function(priors){ - var type = sample(Categorical({vs: ['fair', 'allHeads', 'allTails', 'bent'], ps:[priors.fair, priors.allHeads, priors.allTails, priors.bent]})) - return (type == 'fair') ? 0.5 : - (type == 'allHeads') ? 1.0 : - (type == 'allTails') ? 0.0 : - sample(Uniform({a:0, b:1})) -} - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:2500, samples: 500, lag:100}, function() { - var coinWeight = drawWeight(priors) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -var fullDataSet = repeat(50, function(){return 'h'}); -var observedDataSizes = [0,1,2,4,6,8,10,12,15,20,25,30,40,50]; -var estimates = map(function(N) { - return expectation(weightPosterior(fullDataSet.slice(0,N))) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -This model stubbornly believes the coin is fair until around 10 successive heads have been observed. After that, it rapidly concludes that the coin can only come up heads. The shape of this learning trajectory is much closer to what we would expect for humans. - -Importantly, the model *can* infer an intermediate weight such as 0.85, albeit with some reluctance: - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// - -var priors = {fair:.999, allHeads:.0005, allTails:.00025, bent:.00025} -var drawWeight = function(priors){ - var type = sample(Categorical({vs: ['fair', 'allHeads', 'allTails', 'bent'], ps:[priors.fair, priors.allHeads, priors.allTails, priors.bent]})) - return (type == 'fair') ? 0.5 : - (type == 'allHeads') ? 1.0 : - (type == 'allTails') ? 0.0 : - sample(Uniform({a:0, b:1})) -} - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:2500, samples: 500, lag:100}, function() { - var coinWeight = drawWeight(priors) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -var coin = makeCoin(.85) -var fullDataSet = repeat(200, function(){return coin()}); -var observedDataSizes = [0,2,4,6,10,15,20,25,30,40,50,75,100,200]; -var estimates = map(function(N) { - return expectation(weightPosterior(fullDataSet.slice(0,N))) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -Once again, it takes us a little while to begin to suspect the coin isn't fair. However, once we make that conclusion, we rapidly shift our beliefs about the coin's weight. Interestingly, the speed at which we reject the 'fair coin' hypothesis is related to how far the coin's actual weight is from 0.5 (Why?): - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// - -var priors = {fair:.999, allHeads:.0005, allTails:.00025, bent:.00025} -var drawWeight = function(priors){ - var type = sample(Categorical({vs: ['fair', 'allHeads', 'allTails', 'bent'], ps:[priors.fair, priors.allHeads, priors.allTails, priors.bent]})) - return (type == 'fair') ? 0.5 : - (type == 'allHeads') ? 1.0 : - (type == 'allTails') ? 0.0 : - sample(Uniform({a:0, b:1})) -} - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:2500, samples: 500, lag:100}, function() { - var coinWeight = drawWeight(priors) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -var coin = makeCoin(.7) -var fullDataSet = repeat(200, function(){return coin()}); -var observedDataSizes = [0,2,4,6,10,15,20,25,30,40,50,75,100,200]; -var estimates = map(function(N) { - return expectation(weightPosterior(fullDataSet.slice(0,N))) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -This model is a simple example of a *hierarchical prior* which we explore in detail in a later chapter. - - -## Example: Estimating Causal Power - - - - -Modeling beliefs about coins makes for clear examples, but it's obviously not a very important cognitive problem. However, many important cognitive problems have a remarkably similar structure. - -For instance, a common problem for cognition is *causal learning*: from observed evidence about the co-occurrence of events, attempt to infer the causal structure relating them. An especially simple case that has been studied by psychologists is *elemental causal induction*: causal learning when there are only two events, a potential cause C and a potential effect P. Cheng and colleagues @cheng1997covariation have suggested assuming that C and background effects can both cause E, with a noisy-or interaction. Causal learning then becomes an example of parameter learning, where the parameter is the "causal power" of C to cause E: - -~~~~ -var observedData = [{C:true, E:true}, {C:true, E:true}, {C:false, E:false}, {C:true, E:true}] - -var causalPowerPost = Infer({method: 'MCMC', samples: 10000}, function() { - // Causal power of C to cause E - var cp = uniform(0, 1) - - // Background probability of E - var b = uniform(0, 1) - - var obsFn = function(datum) { - // The noisy causal relation to get E given C - var E = (datum.C && flip(cp)) || flip(b) - condition( E == datum.E) - } - - mapData({data: observedData}, obsFn) - - return {causal_power: cp} -}); - -viz(causalPowerPost); -~~~~ - -Experiment with this model: when does it conclude that a causal relation is likely (high `cp`)? Does this match your intuitions? What role does the background rate `b` play? What happens if you change the functional relationship in `obsFn`? - - - -# Learning with a Language of Thought - -An important worry about Bayesian models of learning is that the Hypothesis space must either be too simple (as in the models above), specified in a rather ad-hoc way, or both. There is a tension here: human representations of the world are enormously complex and so the space of possible representations must be correspondingly big, and yet we would like to understand the representational resources in simple and uniform terms. How can we construct very large (possibly infinite) hypothesis spaces, and priors over them? One possibility is to use a grammar to specify a *hypothesis language*: a small grammar can generate an infinite array of potential hypotheses. Because grammars are themselves generative processes, a prior is provided for free from this formulation. - -## Example: Inferring an Arithmetic Expression - - - -Consider the following WebPPL program, which induces an arithmetic function from examples. This model can learn any function consisting of the integers 0 to 9 and the operations add, subtract, multiply, divide, and raise to a power. (The helper functions `prettify` and `runify`, above the fold, make the expression pretty to look at and a runnable function, respectively.) - -~~~~ -///fold: -// make expressions easier to look at -var prettify = function(e) { - if (e == 'x' || _.isNumber(e)) { - return e - } else { - var op = e[0] - var arg1 = prettify(e[1]) - var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') - var arg2 = prettify(e[2]) - var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') - return prettyarg1 + ' ' + op + ' ' + prettyarg2 - } -} - -// make expressions runnable -var runify = function(e) { - if (e == 'x') { - return function(z) { return z } - } else if (_.isNumber(e)) { - return function(z) { return e } - } else { - var op = (e[0] == '+') ? plus : - (e[0] == '-') ? minus : - (e[0] == '*') ? multiply : - (e[0] == '/') ? divide : - power; - var arg1Fn = runify(e[1]) - var arg2Fn = runify(e[2]) - return function(z) { - return op(arg1Fn(z),arg2Fn(z)) - } - } -} -/// - -var plus = function(a,b) { - return a + b; -} - -var multiply = function(a,b) { - return Math.round(a * b,0); -} - -var divide = function(a,b) { - return Math.round(a/b,0); -} - -var minus = function(a,b) { - return a - b; -} - -var power = function(a,b) { - return Math.pow(a,b); -} - -var randomConstantFunction = function() { - return uniformDraw(_.range(10)) -} - -var randomCombination = function(f,g) { - var op = uniformDraw(['+','-','*','/','^']); - return [op, f, g]; -} - -// sample an arithmetic expression -var randomArithmeticExpression = function() { - if (flip()) { - return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) - } else { - if (flip()) { - return 'x' - } else { - return randomConstantFunction() - } - } -} - -viz.table(Infer({method: 'enumerate', maxExecutions: 100}, function() { - var e = randomArithmeticExpression(); - var s = prettify(e); - var f = runify(e); - condition(f(1) == 3); - - return {s: s}; -})) -~~~~ - -The query asks for an arithmetic expression on variable `x` such that it evaluates to `3` when `x` is `1`. In this example there are many extensionally equivalent ways to satisfy the condition, for instance the expressions `3`, `1 + 2`, and `x + 2`, but because the more complex expressions require more choices to generate, they are chosen less often. What happens if we observe more data? For instance, try changing the condition in the above query to `f(1) == 3 && f(2) == 4`. This model learns from an infinite hypothesis space---all expressions made from 'x', '+', '-', and constant integers---but specifies both the hypothesis space and its prior using the simple generative process `randomArithmeticExpression`. - -Notice that the model puts the most probability on a function that always returns `3` ($$f(x) = 3$$). This is the simplest hypothesis consistent with the data. Let's see what happens if we have more data: - -~~~~ -///fold: -// make expressions easier to look at -var prettify = function(e) { - if (e == 'x' || _.isNumber(e)) { - return e - } else { - var op = e[0] - var arg1 = prettify(e[1]) - var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') - var arg2 = prettify(e[2]) - var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') - return prettyarg1 + ' ' + op + ' ' + prettyarg2 - } -} - -var plus = function(a,b) { - return a + b; -} - -var multiply = function(a,b) { - return Math.round(a * b,0); -} - -var divide = function(a,b) { - return Math.round(a/b,0); -} - -var minus = function(a,b) { - return a - b; -} - -var power = function(a,b) { - return Math.pow(a,b); -} - -// make expressions runnable -var runify = function(e) { - if (e == 'x') { - return function(z) { return z } - } else if (_.isNumber(e)) { - return function(z) { return e } - } else { - var op = (e[0] == '+') ? plus : - (e[0] == '-') ? minus : - (e[0] == '*') ? multiply : - (e[0] == '/') ? divide : - power; - var arg1Fn = runify(e[1]) - var arg2Fn = runify(e[2]) - return function(z) { - return op(arg1Fn(z),arg2Fn(z)) - } - } -} - -var randomConstantFunction = function() { - return uniformDraw(_.range(10)) -} - -var randomCombination = function(f,g) { - var op = uniformDraw(['+','-','*','/','^']); - return [op, f, g]; -} - -// sample an arithmetic expression -var randomArithmeticExpression = function() { - if (flip()) { - return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) - } else { - if (flip()) { - return 'x' - } else { - return randomConstantFunction() - } - } -} -/// - -viz.table(Infer({method: 'enumerate', maxExecutions: 100}, function() { - var e = randomArithmeticExpression(); - var s = prettify(e); - var f = runify(e); - condition(f(1) == 3); - condition(f(2) == 6); - - return {s: s}; -})) -~~~~ - - -## Example: Rational Rules - -How can we account for the productivity of human concepts (the fact that every child learns a remarkable number of different, complex concepts)? The "classical" theory of concepts formation accounted for this productivity by hypothesizing that concepts are represented compositionally, by logical combination of the features of objects (see for example Bruner, Goodnow, and Austin, 1951). That is, concepts could be thought of as rules for classifying objects (in or out of the concept) and concept learning was a process of deducing the correct rule. - -While this theory was appealing for many reasons, it failed to account for a variety of categorization experiments. Here are the training examples, and one transfer example, from the classic experiment of Medin and Schaffer (1978). The bar graph above the stimuli shows the portion of human participants who said that bug was a "fep" in the test phase (the data comes from a replication by Nosofsky, Gluck, Palmeri, McKinley (1994); the bug stimuli are courtesy of Pat Shafto): - - - -Notice three effects: there is a gradient of generalization (rather than all-or-nothing classification), some of the Feps are better (or more typical) than others (this is called "typicality"), and the transfer item is a ''better'' Fep than any of the Fep exemplars (this is called "prototype enhancement"). Effects like these were difficult to capture with classical rule-based models of category learning, which led to deterministic behavior. As a result of such difficulties, psychological models of category learning turned to more uncertain, prototype and exemplar based theories of concept representation. These models were able to predict behavioral data very well, but lacked compositional conceptual structure. - -Is it possible to get graded effects from rule-based concepts? Perhaps these effects are driven by uncertainty in *learning* rather than uncertainty in the representations themselves? To explore these questions Goodman, Tenenbaum, Feldman, and Griffiths (2008) introduced the Rational Rules model, which learns deterministic rules by probabilistic inference. This model has an infinite hypothesis space of rules (represented in propositional logic), which are generated compositionally. Here is a slightly simplified version of the model, applied to the above experiment: - -~~~~ -// first set up the training (cat A/B) and test objects: -var numFeatures = 4; - -var makeObj = function(l) {return _.zipObject(['trait1', 'trait2', 'trait3', 'trait4'], l)} -var AObjects = map(makeObj, [[0,0,0,1], [0,1,0,1], [0,1,0,0], [0,0,1,0], [1,0,0,0]]) -var BObjects = map(makeObj, [[0,0,1,1], [1,0,0,1], [1,1,1,0], [1,1,1,1]]) -var TObjects = map(makeObj, [[0,1,1,0], [0,1,1,1], [0,0,0,0], [1,1,0,1], [1,0,1,0], [1,1,0,0], [1,0,1,1]]) - -//here are the human results from Nosofsky et al, for comparison: -var humanA = [.77, .78, .83, .64, .61] -var humanB = [.39, .41, .21, .15] -var humanT = [.56, .41, .82, .40, .32, .53, .20] - -// two parameters: stopping probability of the grammar, and noise probability: -var tau = 0.3; -var noiseParam = Math.exp(-1.5) - -// a generative process for disjunctive normal form propositional equations: -var traitPrior = Categorical({vs: ['trait1', 'trait2', 'trait3', 'trait4'], - ps: [.25, .25, .25, .25]}); -var samplePred = function() { - var trait = sample(traitPrior); - var value = flip() - return function(x) {return x[trait] == value}; -} - -var sampleConj = function() { - if(flip(tau)) { - var c = sampleConj(); - var p = samplePred(); - return function(x) {return c(x) && p(x)}; - } else { - return samplePred(); - } -} - -var getFormula = function() { - if(flip(tau)) { - var c = sampleConj(); - var f = getFormula(); - return function(x) {return c(x) || f(x)}; - } else { - return sampleConj(); - } -} - -var rulePosterior = Infer({method: 'MCMC', samples: 20000}, function() { - // sample a classification formula - var rule = getFormula(); - // condition on correctly (up to noise) accounting for A & B categories - var obsFnA = function(datum){observe(Bernoulli({p: rule(datum) ? 0.999999999 : noiseParam}), true)} - mapData({data:AObjects}, obsFnA) - var obsFnB = function(datum){observe(Bernoulli({p: !rule(datum) ? 0.999999999 : noiseParam}), true)} - mapData({data:BObjects}, obsFnB) - // return posterior predictive - var allObjs = TObjects.concat(AObjects).concat(BObjects); - return _.zipObject(_.range(allObjs.length), map(rule, allObjs)); -}) - -//build predictive distribution for each item -var predictives = map(function(item){return expectation(rulePosterior,function(x){x[item]})}, _.range(15)) - -var humanData = humanT.concat(humanA).concat(humanB) -viz.scatter(predictives, humanData) -~~~~ - - -Goodman, et al, have used to this model to capture a variety of classic categorization effects [@Goodman2008b]. Thus probabilistic induction of (deterministic) rules can capture many of the graded effects previously taken as evidence against rule-based models. - -This style of compositional concept induction model, can be naturally extended to more complex hypothesis spaces. For examples, see: - -* Compositionality in rational analysis: Grammar-based induction for concept learning. N. D. Goodman, J. B. Tenenbaum, T. L. Griffiths, and J. Feldman (2008). In M. Oaksford and N. Chater (Eds.). The probabilistic mind: Prospects for Bayesian cognitive science. - -* A Bayesian Model of the Acquisition of Compositional Semantics. S. T. Piantadosi, N. D. Goodman, B. A. Ellis, and J. B. Tenenbaum (2008). Proceedings of the Thirtieth Annual Conference of the Cognitive Science Society. - -* Piantadosi, S. T., & Jacobs, R. A. (2016). Four Problems Solved by the Probabilistic Language of Thought. Current Directions in Psychological Science, 25(1). - -It has been used to model theory acquisition, learning natural numbers concepts, etc. Further, there is no reason that the concepts need to be deterministic; in WebPPL stochastic functions can be constructed compositionally and learned by induction: - -* Learning Structured Generative Concepts. A. Stuhlmueller, J. B. Tenenbaum, and N. D. Goodman (2010). Proceedings of the Thirty-Second Annual Conference of the Cognitive Science Society. - -Reading & Discussion: [Readings]({{site.baseurl}}/readings/08-learning-as-conditional-inference.html) - -Test your knowledge: [Exercises]({{site.baseurl}}/exercises/08-learning-as-conditional-inference.html) - -Next chapter: [Hierarchical models]({{site.baseurl}}/chapters/09-hierarchical-models.html) diff --git a/chapters/09-hierarchical-models.md b/chapters/09-hierarchical-models.md old mode 100644 new mode 100755 diff --git a/chapters/10-occam's-razor.md b/chapters/10-occam's-razor.md old mode 100644 new mode 100755 diff --git a/chapters/11-mixture-models.md b/chapters/11-mixture-models.md old mode 100644 new mode 100755 diff --git a/chapters/12-non-parametric-models.md b/chapters/12-non-parametric-models.md old mode 100644 new mode 100755 diff --git a/chapters/14-bayesian-data-analysis.md b/chapters/14-bayesian-data-analysis.md old mode 100644 new mode 100755 diff --git a/chapters/99-appendix-js-basics.md b/chapters/99-appendix-js-basics.md old mode 100644 new mode 100755 diff --git a/chapters/appendix-math-review.md b/chapters/appendix-math-review.md old mode 100644 new mode 100755 diff --git a/chapters/deepprbmods.md b/chapters/deepprbmods.md old mode 100644 new mode 100755 diff --git a/exercises/02-generative-models.md b/exercises/02-generative-models.md old mode 100644 new mode 100755 diff --git a/exercises/03-conditioning.md b/exercises/03-conditioning.md old mode 100644 new mode 100755 diff --git a/exercises/04-patterns-of-inference.md b/exercises/04-patterns-of-inference.md old mode 100644 new mode 100755 diff --git a/exercises/04.1-agents-as-programs.md b/exercises/04.1-agents-as-programs.md old mode 100644 new mode 100755 diff --git a/exercises/05-observing-sequences.md b/exercises/05-observing-sequences.md deleted file mode 100644 index 212fdac..0000000 --- a/exercises/05-observing-sequences.md +++ /dev/null @@ -1,206 +0,0 @@ ---- -layout: exercise -title: Observing sequences - exercises ---- - - -## Exercise 1: What word comes next? - -a) In human languages, certain words are more likely to follow others. "The" is more likely to be followed by "dog" than "rhino", and even less likely to be followed by "sings". - -Let's consider a fragment of English consisting of only the words "dogs", "cats", "chase", and "sleep". This fragment does not contain punctuation or capital letters. Now, suppose that somebody says, "dogs chase cats". Determine how likely "chase" is to be followed by each word in the vocabulary. - -HINT: In the partial code below, I set the 'onlyMAP' parameter for inference to 'true'. As a result, Infer() only returns the most likely (maximum a posteriori) result. You may find that this simplifies deriving the required distribution. To see what the consequences of 'onlyMAP' are, try setting it to 'false'. - -HINT 2: Think carefully about whether you want to use `condition` or `factor`. - -~~~~ -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var vocab = //TODO - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - - var wordToDistribution = mem(function(word) { - return dirichlet(ones([vocab.length,1])) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - //TODO ... - -}) - -print(mm) -~~~~ - -b) Assume now that in addition to saying "dogs chase cats", your interlocutor said a second sentence. However, you only heard the first word, which again was "dogs". What is the distribution across likely second words in this sentence? NOTE: If you are not careful, you will end up assigning some probability to "undefined". Be careful. - -~~~~ -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var vocab = //TODO - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - - var wordToDistribution = mem(function(word) { - return dirichlet(ones([vocab.length,1])) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - //TODO ... - -}) - -print(mm) -~~~~ - -c) Suppose again that somebody said "dogs chase cats". Now suppose they spoke another sentence, where again the second word was "chase". Show that the most likely first word was "dogs". - -~~~~ -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var vocab = //TODO - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - - var wordToDistribution = mem(function(word) { - return dirichlet(ones([vocab.length,1])) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - //TODO ... - -}) - -print(mm) -~~~~ - -## Exercise 2: Hidden Markov Model - -a) Return to the model from Exercise 1b. Suppose that the second sentence, instead of beginning with "dogs", began with "cats". Provide the marginal distribution on the second word of that sentence. - -~~~~ -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var vocab = //TODO - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { - - var wordToDistribution = mem(function(word) { - return dirichlet(ones([vocab.length,1])) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - //TODO ... - -}) - -viz(mm) -~~~~ - -b) In Exercise 2a, you should have found that an ungrammatical sequence like "cats cats" is as likely as a grammatical sequence like "cats sleep". Why is this? - -c) Let's try a hidden Markov model instead. Note that two of the words in our fragment of English are nouns ("dogs", "cats") and two are verbs ("chase", "sleep"). - -Model sentence generation as involving Markov transitions between parts of speech, rather than between the words themselves. - -~~~~ - -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var POS = ["N","V","STOP"] -var N = function() {return uniformDraw(['dogs','cats'])} -var V = function() {return uniformDraw(["chase","sleep"])} - -//TODO -- generative model goes here. - -var sentence = //TODO - -print(sentence) - -~~~~ - -d) Try Exercise 2a, but using our new hidden Markov model. Show that we are now more likely to get the grammatical phrases "cats chase" or "cats sleep" than "cats cats" or "cats dogs". - -~~~~ -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var POS = ["N","V","STOP"] -var N = function() {return uniformDraw(['dogs','cats'])} -var V = function() {return uniformDraw(["chase","sleep"])} - -var hmm = Infer({method:'MCMC', burn:10000, samples: 50000, lag:10, onlyMAP:true}, function() { - - //TODO - -}) - -viz(hmm) - -~~~~ - -## Exercise 3: Phrase structure grammars - -a) Extend your hidden Markov model from Exercise 2 so that our fragment of English additionally includes the determiners "the" and "a" as well as the adverb "diligently". Condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences. - -~~~~ -var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; - -var D = function() {return uniformDraw(['the', 'a'])}; -var N = function() {return uniformDraw(['cat', 'dog'])}; -var V = function() {return uniformDraw(['chases', 'sleeps'])} -var A = function() {return uniformDraw(['diligently'])} - -//TODO -~~~~ - -b) Let us consider a phrase structure grammar for our English fragment instead, modeled on the one in Chapter 5. Again, condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences. - -~~~~ -var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; - -var D = function() {return uniformDraw(['the', 'a'])}; -var N = function() {return uniformDraw(['cat', 'dog'])}; -var V = function() {return uniformDraw(['chases', 'sleeps'])} -var A = function() {return uniformDraw(['diligently'])} -var AP = function() {return uniformDraw([A()])} -var NP = function() {return [D(), N()]} -var VP = function() {return uniformDraw([[V(), AP()], - [V(), NP()]])} -var S = function() {return [NP(), VP()]} - -//TODO -~~~~ - -c) Which model produced better English sentences, the hidden Markov model in Exercise 3a or the phrase structure grammar model in Exercise 3b? Why do you suppose that is? - diff --git a/exercises/05.1-sequential-decisions.md b/exercises/05.1-sequential-decisions.md old mode 100644 new mode 100755 diff --git a/exercises/06-inference-about-inference.md b/exercises/06-inference-about-inference.md old mode 100644 new mode 100755 diff --git a/exercises/07-inference-process.md b/exercises/07-inference-process.md deleted file mode 100644 index 4069b7a..0000000 --- a/exercises/07-inference-process.md +++ /dev/null @@ -1,326 +0,0 @@ ---- -layout: exercise -title: Algorithms for Inference - exercises -description: MCMC, etc. ---- - -## Exercise 1. Sampling Implicit Curves - -In the code box below, the `curve` function defines a vaguely heart-shaped curve. Below, we use rejection sampling to sample points along the boundary of the curve. - -~~~~ -var curve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - return x2 + term1*term1 - 1; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var model = function() { - var x = gaussian(xmu, xsigma); - var y = gaussian(ymu, ysigma); - var c_xy = curve(x, y); - condition(Math.abs(c_xy) < 0.01); - return {x: x, y: y}; -}; - -var post = Infer({method: 'rejection', samples: 1000}, model); -viz.auto(post); -~~~~ - -### a) - -Try using MCMC with the m-h recipe instead of rejection sampling. You'll notice that it does not fare as well as rejection sampling. Why not? - -### b) - -How can you change the model (or the inference algorithm) to make MCMC successfully trace the curves? Note that there are multiple ways to approach this problem. Your solution should result in a graph that clearly traces a heart-shaped figure -- though it need not do quite as well as rejection sampling. - - -## Exercise 2. Metropolis-Hastings Part 1 - -Recall our code from the chapter that implements an Metropolis-Hastings markov chain: - -~~~~ -var p = 0.7 - -//the target distribution (not normalized): -//prob = 0 if x condition is violated, otherwise proportional to geometric distribution -var target_dist = function(x){ - return (x < 3 ? 0 : (p * Math.pow((1-p),(x-1)))) -} - -// the proposal function and distribution, -// here we're equally likely to propose x+1 or x-1. -var proposal_fn = function(x){ - return (flip() ? x - 1 : x + 1) -} -var proposal_dist = function (x1, x2){ - return 0.5 -} - -// the MH recipe: -var accept = function (x1, x2){ - let p = Math.min(1, (target_dist(x2) * proposal_dist(x2, x1)) / (target_dist(x1) * proposal_dist(x1,x2))) - return flip(p) -} -var transition = function(x){ - let proposed_x = proposal_fn(x) - return (accept(x, proposed_x) ? proposed_x : x) -} - -//the MCMC loop: -var mcmc = function(state, iterations){ - return ((iterations == 1) ? [state] : mcmc(transition(state), iterations-1).concat(state)) -} - -var chain = mcmc(3, 10000) // mcmc for conditioned geometric -viz.table(chain) -~~~~ - -Notice that `chain` is a list of samples, *not* a WebPPL probability distribution object. `viz.table` helpfully compiles a probability distribution for us. However, other functions such as `viz.marginals` will not work, because they require a WebPPL probability distribution object. - -To see the difference, try running `print(chain)` and compare that to the output of running `print(post)` at the end of the code block for Exercise 1. - -Edit the code below to derive a WebPPL probability distribution object from `chain`. HINT: The WebPPL function `Infer()` returns a probability distribution object. Can you find a way to use `Infer()` to sample from `chain`, thus returning a probability distribution object? - -~~~~ -var p = 0.7 - -//the target distribution (not normalized): -//prob = 0 if x condition is violated, otherwise proportional to geometric distribution -var target_dist = function(x){ - return (x < 3 ? 0 : (p * Math.pow((1-p),(x-1)))) -} - -// the proposal function and distribution, -// here we're equally likely to propose x+1 or x-1. -var proposal_fn = function(x){ - return (flip() ? x - 1 : x + 1) -} -var proposal_dist = function (x1, x2){ - return 0.5 -} - -// the MH recipe: -var accept = function (x1, x2){ - let p = Math.min(1, (target_dist(x2) * proposal_dist(x2, x1)) / (target_dist(x1) * proposal_dist(x1,x2))) - return flip(p) -} -var transition = function(x){ - let proposed_x = proposal_fn(x) - return (accept(x, proposed_x) ? proposed_x : x) -} - -//the MCMC loop: -var mcmc = function(state, iterations){ - return ((iterations == 1) ? [state] : mcmc(transition(state), iterations-1).concat(state)) -} - -var chain = mcmc(3, 10000) // mcmc for conditioned geometric -viz.table(chain) -~~~~ - -## Exercise 3. Metropolis-Hastings Part 2 - -Consider this very simple model that chooses `y` and `w` such that `-10 * w + y * (1 - w)` is as close as possible to `0`: - -~~~~ -var p = function(x,y,w){ - return Gaussian({mu: 0, sigma:0.1}).score(x*w + y*(1-w)) -} - -var mymodel = function(){ - var x = -10 - var y = uniform(-100,100) - var w = dirichlet(Vector([1,1])).data[0] - factor(p(x,y,w)) - return {y: y, w: w, s: x*w + y*(1-w)} -} - -var post = Infer({ - method: 'MCMC', - samples: 5000, - lag: 100, -}, mymodel); - -viz.marginals(post) -~~~~ - -By looking at the marginal distribution of `s`, we can see that `Infer()` tends to choose values of `y` and `w` that satisfy our condition. - -### a) - -Try re-writing the model to use rejection sampling. Note that you will need to find a way to turn the `factor` statement into a `condition` statement (Hint: See Exercise #1). Is using rejection sampling here a good idea? Why or why not? - -### b) - -Describe a proposal distribution that you could use for Metropolis-Hastings inference for this model. Show that it satisfies the necessary conditions. - -### c) - -Edit the code below to implement your Metropolis-Hastings recipe. Use `viz.marginals` to show that it reliably chooses values of `y` and `w` that satisfy the condition. - -Hint 1: Check out possible [WebPPL distributions](https://webppl.readthedocs.io/en/master/distributions.html) you might use. - -Hint 2: Many WebPPL distributions require vectors as input. Turn an array into a vector with the function `Vector()` (e.g., `Vector([x, y])`). - -Hint 3: Remember that `dist.score(x)` returns the log probability (density) of `x` given distribution `dist`. To turn that into a a probability, use `Math.exp()`. - -~~~~ -var x = -10 // Fix this variable. - -// target distribution -var target_dist = function(state){ - var y = state[0] - var w = state[1] - return // your code here. - // remember if y or w are outside their bounds, probability = 0 -} - -// the proposal function and distribution, -var proposal_fn = function(state){ - var y = state[0] - var w = state[1] - var aprop = // your code here - return [aprop.data[0], aprop.data[1]] -} -var proposal_dist = function (state1, state2){ - return // your code here -} - -// the MH recipe: -var accept = function (state1, state2){ - let p = Math.min(1, (target_dist(state2) * proposal_dist(state2, state1)) - / (target_dist(state1) * proposal_dist(state1,state2))) - return flip(p) -} -var transition = function(state){ - let proposed_state = proposal_fn(state) - return (accept(state, proposed_state) ? proposed_state : state) -} - -//the MCMC loop: -var mcmc = function(state, iterations){ - var y = state[0] - var w = state[1] - var s = x*w + y*(1-w) - var stateobj = {y: y, w: w, s: s} - return ((iterations == 1) ? [stateobj] : mcmc(transition(state), iterations-1).concat(stateobj)) -} - - -var chain = mcmc([0,.5], 5000) // go ahead and use this starting value - -var post = // your code here (use answer from Exercise #2) -viz.marginals(post) -~~~~ - - -## Exercise 4. Topic models - -[Topic models](https://en.wikipedia.org/wiki/Topic_model) are a popular method for classifying texts. A "topic" is a probability distribution over a vocabulary. Importantly, different topics have different distributions: a topic pertaining to animals will have higher probability on "wolf" than a topic pertaining to programming. Crucially, different documents are assumed to be generated by drawing words from one or more topics. The job of the model is to, based on some set of documents, infer the latent topics, their probability distributions, and which topics are implicated in which documents. - -Topic models are an example of a [mixture model](11-mixture-models.html). The following code box shows a very simple mixture model, in which each data point was generated by one of three Gaussian distributions, each with its own mean and standard deviation. The variable `weights` represents the relative proportion of data generated by each Gaussian. For instance, the first Gaussian generates 40% of the data. We can use MCMC to recover the means, standard deviations, and weights. - -~~~~ -var mus = [-2, 0, 2]; -var sigmas = [0.25, 1, 0.5]; -var weights = [0.4, 0.1, 0.5]; - -var data = repeat(100, function() { - var i = discrete(weights); - return gaussian(mus[i], sigmas[i]); -}); - -var gaussianMixtureModel = function() { - var weights = dirichlet(Vector([1, 1, 1])); - var mus = repeat(3, function() { return gaussian(0, 1); }); - var sigmas = repeat(3, function() { return Math.exp(gaussian(0, 1)); }); - map(function(d) { - var i = discrete(weights); - factor(Gaussian({mu: mus[i], sigma: sigmas[i]}).score(d)); - }, data); - return {mus: mus, sigmas: sigmas, weights: weights}; -}; - -var post = Infer({ - method: 'MCMC', - steps: 1000 -}, gaussianMixtureModel); - -print(sample(post)) -~~~~ - -Note that the order of the Gaussians returned by `post` won't necessarily be the same as in `mus`. Thus, we may see a result like this: - -``` -{"mus":[2.0588258375411383,-1.502841653870516,-0.3507690954089829],"sigmas":[0.7751841178726206,0.8098945135050652,1.411033688748035],"weights":{"dims":[3,1],"length":3,"data":{"0":0.12358930290684293,"1":0.35801309847048407,"2":0.5183975986226731}}} -``` - -The Gaussian with the mean near `2` is listed first rather than last. You may see a different ordering. We return to this issue in (b) and (c), below. - -### a) - -In the model below, we are presented with six very boring texts. Implement a topic model that will infer the probability distribution across words for each of two topics. - -~~~~ -var vocabulary = ['DNA', 'evolution', 'parsing', 'phonology']; -var eta = ones([vocabulary.length, 1]) - -var numTopics = 2 -var alpha = ones([numTopics, 1]) - -var corpus = [ - 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), - 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), - 'DNA evolution DNA evolution DNA evolution DNA evolution DNA evolution'.split(' '), - 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' '), - 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' '), - 'parsing phonology parsing phonology parsing phonology parsing phonology parsing phonology'.split(' ') -] - -var model = function() { - - var topics = repeat(numTopics, function() { - return T.toScalars(dirichlet({alpha: eta})) - }) - - mapData({data: corpus}, function(doc) { - - // your code here - - }) - }) - - return topics -} - -var results = // your code here - -//plot expected probability of each word, for each topic: -print("Topic 1:") -viz.bar(vocabulary, map(function(i) {return expectation(results, function(v) {return v[0][i]})}, _.range(vocabulary.length))) -print("Topic 2:") -viz.bar(vocabulary, map(function(i) {return expectation(results, function(v) {return v[1][i]})}, _.range(vocabulary.length))) -~~~~ - -### b) - -Run your code from (a) several times. You should see that sometimes Topic 1 favors the words 'DNA' and 'evolution' and Topic 2 favors 'parsing' and 'phonology'. Other times, this is reversed, with Topic 1 favoring 'parsing' and 'phonology' and Topic 2 favoring 'DNA' and 'evolution'. - -Why is this? - -### c) - -If we ran MCMC on the model in (a) for an infinite amount of time, we would no longer see a distinction between Topic 1 and Topic 2. Why? - -Given the answer to that question, why does our model in (a) seem to work? - -HINT: We do not need to run our initial mixture model example above nearly as long to get the same effect. This is why we printed samples from the distribution. diff --git a/exercises/08-learning-as-conditional-inference.md b/exercises/08-learning-as-conditional-inference.md old mode 100644 new mode 100755 diff --git a/exercises/09-hierarchical-models.md b/exercises/09-hierarchical-models.md deleted file mode 100644 index cba2a70..0000000 --- a/exercises/09-hierarchical-models.md +++ /dev/null @@ -1,190 +0,0 @@ ---- -layout: exercise -title: Hierarchical models -description: The power of abstraction. ---- - -## Exercise 1: Pseudocounts - -The main text states that you can think of the Dirichlet parameter $$\alpha = [\alpha_1, \alpha_2, ..., \alpha_n]$$ "as a kind of prior" over categories $$[A_1, A_2, ..., A_n]$$. α is not a prior in the usual sense, since it is not a probability distribution. What α represents instead is a virtual observation. Thus if $$\alpha = [2, 2, 1]$$, that is the equivalent of having already observed the first category and second category twice each, and the third category one time only. - -Complete the code below to prove that setting $$\alpha = [2, 3, 1, 1, 1]$$ is equivalent to setting $$\alpha = [1, 1, 1, 1, 1]$$ and then observing the first category once and the second category twice: - -~~~~js -var colors = ['black', 'blue', 'green', 'orange', 'red']; - -var observedData = [ -{bag: 'bag1', draw: 'blue'}, -{bag: 'bag1', draw: 'blue'}, -{bag: 'bag1', draw: 'black'}] - -// first model: set alpha = [1, 1, 1, 1, 1] and observe `observedData` -var observed = Infer({method: 'MCMC', samples: 20000}, function(){ - var makeBag = mem(function(bag){ - var colorProbs = T.toScalars(dirichlet(ones([colors.length, 1]))) - return Categorical({vs: colors, ps: colorProbs}) - }) - - var obsFn = function(datum){ - observe(makeBag(datum.bag), datum.draw) - } - - mapData({data: observedData}, obsFn) - - return {bag1: sample(makeBag('bag1'))} -}) - -viz.marginals(observed) - -// second model. Set alpha = [2, 3, 1, 1, 1] -var usealpha = Infer( - - // your code here - -) - -viz.marginals(usealpha) // should roughly match first figure -~~~~ - - - -## Exercise 2: Rotten apples - -On any given day, a given grocery store has some number of apples for sale. Some of these apples may be mushy or even rotten. The probability that each apple is rotten is not independent: a ripening fruit emits chemicals that encourages other fruit to ripen as well. As they say, [one rotten apple spoils the whole barrel](https://idiomation.wordpress.com/2013/03/27/one-bad-apple-spoils-the-whole-barrel/). - -For each apple in a barrel, assume the probability that the apple is rotten is `flip(p)` where `p` is drawn from some prior. An appropriate prior distribution is Beta. Recall that the Beta distribution is just a Dirichlet that returns a vector of length one. So it, too, is defined based on pseudocounts `[a, b]`. Thus `Beta({a: 10, b: 2})` returns the equivalent of a Beta distribution conditioned on having previously seen 10 heads and 2 tails. - -To get a sense of the Beta distribution, run the following code: - -~~~~js -viz(Beta({a: 1, b: 1})) -viz(Beta({a: 10, b: 1})) -viz(Beta({a: 1, b: 10})) -viz(Beta({a: .1, b: .2})) -~~~~ - -Note that the final example gives a very nice prior for our apples: most of the time, the probability of a rotten apple is quite low. The rest of the time, the probability is very high. Middling probabilities are rare. - -#### a) - -Write a function `makeBarrel` that returns a function (a 'barrel') that takes a single argument *N* and returns a vector representing the rottenness of *N* apples from that barrel (where `true` is rotten and `false` is not rotten). That is, the following code: - -```norun -var abarrel = makeBarrel('b') -abarrel(5) -``` - -should return something like `[true, true, true, false, true]`. - -Complete the following codebox: - -~~~~js - -// your code here - -var post = Infer({method: 'forward'}, function(){ - //helper function to inspect your code. Do not edit. - var abarrel = makeBarrel('b') - return Math.sum(abarrel(10)) -}) -viz(post) -~~~~ - -#### b) - -Some grocery stores have fresher produce than others. So let's create a function `makeStore` that returns a makeBarrel function, which works as it did in (a). Importantly, each store has its own Beta parameters `[a, b]` drawn from some prior. - -HINT: In order to maintain the likelihood that in a given barrel, either most of the apples are rotten or few are, you need to ensure that `a < 1` and `b < 1`. However, if `a` is much larger than `b` (or vice versa), you will get extreme results with *every* apple being rotten or *every* apple being good. - -NOTE: No need to be overly fancy with this prior. Pick something simple that you know will give you what you want: stores that tend to have bad barrels and stores that tend to have good barrels. - -~~~~js -var makeStore = // your code here - -// Following code inspects your functions -viz(Infer({method: 'forward', samples:10000}, function(){ - var S = makeStore('S') - var B1 = S('B1') - var B2 = S('B2') - return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) -})) // should generally be little difference - -viz(Infer({method: 'forward', samples:10000}, function(){ - var S1 = makeStore('S1') - var S2 = makeStore('S2') - var B1 = S1('B1') - var B2 = S2('B2') - return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) -})) // difference should be larger on average -~~~~ - -#### c) - -We can keep going. Some cities are located in apple country and thus have more access to fresh apples. Most stores in those cities are going to mostly have good barrels with good apples. Other cities have less access to fresh apples, and so more of their stores will have bad barrels with rotten apples. - -In the code block below, create a `makeCity` function, which returns a `makeStore` function, which works as in (b). In (b), each store had a prior on `[a, b]`. Let's put a prior on *that* prior, such that cities either tend to have good stores or tend to have bad stores. - -HINT: Again, it is not necesary to have an overly fancy prior here. If you are spending hours trying to find just the right prior distribution, you are over-thinking it. - -~~~~js -var makeCity = // your code here - - -//Make sure the following code runs: -var C1 = makeCity("C1") -var S1 = C1("S1") -var B1 = S1("B1") - -viz(Infer({method: 'forward'}, function(){ - return Math.sum(B1(10)) -})) -//repeat to see different kinds of cities -~~~~ - -#### d) - -Suppose you go to a store in a city. The store has a barrel of 10 apples, 7 of which are rotten. You leave and go to another store in the same city. It also has has a barrel with 10 apples. Using your code above, how many of these apples are likely to be rotten? - -~~~~js -// your code here - -~~~~ \ No newline at end of file diff --git a/exercises/10-occam's-razor.md b/exercises/10-occam's-razor.md old mode 100644 new mode 100755 diff --git a/exercises/13-appendix-js-basics.md b/exercises/13-appendix-js-basics.md old mode 100644 new mode 100755 diff --git a/exercises/14-bayesian-data-analysis.md b/exercises/14-bayesian-data-analysis.md old mode 100644 new mode 100755 diff --git a/index.md b/index.md old mode 100644 new mode 100755 diff --git a/package.json b/package.json old mode 100644 new mode 100755 diff --git a/readings/01-introduction.md b/readings/01-introduction.md old mode 100644 new mode 100755 diff --git a/readings/02-generative-models.md b/readings/02-generative-models.md old mode 100644 new mode 100755 diff --git a/readings/03-conditioning.md b/readings/03-conditioning.md old mode 100644 new mode 100755 diff --git a/readings/04-patterns-of-inference.md b/readings/04-patterns-of-inference.md old mode 100644 new mode 100755 diff --git a/readings/04.1-agents-as-programs.md b/readings/04.1-agents-as-programs.md old mode 100644 new mode 100755 diff --git a/readings/05-observing-sequences.md b/readings/05-observing-sequences.md old mode 100644 new mode 100755 diff --git a/readings/05.1-sequential-decisions.md b/readings/05.1-sequential-decisions.md old mode 100644 new mode 100755 diff --git a/readings/06-inference-about-inference.md b/readings/06-inference-about-inference.md old mode 100644 new mode 100755 diff --git a/readings/07-inference-process.md b/readings/07-inference-process.md old mode 100644 new mode 100755 diff --git a/readings/08-learning-as-conditional-inference.md b/readings/08-learning-as-conditional-inference.md deleted file mode 100644 index d91a647..0000000 --- a/readings/08-learning-as-conditional-inference.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -layout: exercise -title: Learning as Infernece - readings ---- - -## 1. Learning numbers - -@piantadosi2012bootstrapping - -This is a long paper. Focus on the first 11 pages (through and including Sec. 4.1). - -#### Reading questions: - -a) What stages do children go through in learning numbers? - -b) Why does the model go through several stages before finally learning the number system? - - \ No newline at end of file diff --git a/readings/09-hierarchical-models.md b/readings/09-hierarchical-models.md old mode 100644 new mode 100755 diff --git a/solutions/02-generative-models.md b/solutions/02-generative-models.md old mode 100644 new mode 100755 diff --git a/solutions/03-conditioning.md b/solutions/03-conditioning.md old mode 100644 new mode 100755 diff --git a/solutions/04-patterns-of-inference.md b/solutions/04-patterns-of-inference.md old mode 100644 new mode 100755 diff --git a/solutions/04.1-agents-as-programs.md b/solutions/04.1-agents-as-programs.md old mode 100644 new mode 100755 diff --git a/solutions/05-observing-sequences.md b/solutions/05-observing-sequences.md deleted file mode 100644 index 6784ab0..0000000 --- a/solutions/05-observing-sequences.md +++ /dev/null @@ -1,344 +0,0 @@ ---- -layout: exercise -title: Observing sequences - exercises ---- - - -## Exercise 1: What word comes next? - -a) *In human languages, certain words are more likely to follow others. "The" is more likely to be followed by "dog" than "rhino", and even less likely to be followed by "sings". * - -*Let's consider a fragment of English consisting of only the words "dogs", "cats", "chase", and "sleep". This fragment does not contain punctuation or capital letters. Now, suppose that somebody says, "dogs chase cats". Determine how likely "chase" is to be followed by each word in the vocabulary.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - - let obs = ['dogs', 'chase', 'cats']; - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return []; - return [word].concat(generateSentence(word, sentence)); - } - - factor(comparray(obs, generateSentence('start'))) - - return transition('chase'); - -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-1.png) - -b) *Assume now that in addition to saying "dogs chase cats", your interlocutor said a second sentence. However, you only heard the first word, which again was "dogs". What is the distribution across likely second words in this sentence? NOTE: If you are not careful, you will end up assigning some probability to "undefined". Be careful.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[0] == 'dogs'); - return newSentence[1]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-2.png) - -c) *Suppose again that somebody said "dogs chase cats". Now suppose they spoke another sentence, where again the second word was "chase". Show that the most likely first word was "dogs". * - -```js -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[1] == 'chase'); - return newSentence[0]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-3.png) - -## Exercise 2: Hidden Markov Model - -a) *Return to the model from Exercise 1b. Suppose that the second sentence, instead of beginning with "dogs", began with "cats". Provide the marginal distribution on the second word of that sentence.* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP: false}, function() { - - let vocab = ['dogs', 'cats', 'chase', 'sleep', 'stop']; - - var wordToDistribution = mem(function(word) { - return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) - }) - - var transition = function(word) { - return categorical({ps: wordToDistribution(word), vs: vocab}) - } - - let generateSentence = function(lastState, sentence) { - let word = transition(lastState); - if (word == 'stop') return ['stop']; //to avoid probabilities on 'undefined' - return [word].concat(generateSentence(word, sentence)); - } - - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[0] == 'cats'); - return newSentence[1]; -}) - -viz(mm) -``` - -![](Figures/sequences-of-observations-4.png) - -b) *In Exercise 2a, you should have found that an ungrammatical sequence like "cats cats" is as likely as a grammatical sequence like "cats sleep". Why is this?* - -The model hasn't observed anything other than 'stop' as following the word 'cats'. This implies that 'stop' is the most likely option, but also that the algorithm is totally indifferent towards all the other words -- since this is a language without grammar, all words are treated the same (they literally coexist as entries in a single list). - -c) *Let's try a hidden Markov model instead. Note that two of the words in our fragment of English are nouns ("dogs", "cats") and two are verbs ("chase", "sleep").* - -*Model sentence generation as involving Markov transitions between parts of speech, rather than between the words themselves. * - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dogs','cats']) : - (pos=="V") ? uniformDraw(['chase','sleep']) : - 'stop' -} -var POS = ["N", "V", "stop"] - -var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - -var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - -let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); -} - -var sentence = generateSentence("start"); -print(sentence) -``` - -d) *Try Exercise 2a, but using our new hidden Markov model. Show that we are now more likely to get the grammatical phrases "cats chase" or "cats sleep" than "cats cats" or "cats dogs".* - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dogs','cats']) : - (pos=="V") ? uniformDraw(['chase','sleep']) : - 'stop' -} -var POS = ["N", "V", "stop"] - -var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: false}, function() { - var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - - var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - - let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); - } - let obs = ['dogs', 'chase', 'cats', 'stop']; - factor(comparray(obs, generateSentence('start'))) - - let newSentence = generateSentence('start'); - factor(newSentence[0] == 'cats'); - return newSentence[1]; -}) - -viz(hmm) -``` - -![](Figures/sequences-of-observations-5.png) - -## Exercise 3: Phrase structure grammars - -a) *Extend your hidden Markov model from Exercise 2 so that our fragment of English additionally includes the determiners "the" and "a" as well as the adverb "diligently". Make "dogs", "cats", "chase", and "sleep" singular ("dog", "cat", "chases", "sleeps"). Condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* - -*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. - - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var drawWord = function(pos){ - return (pos=="N") ? uniformDraw(['dog','cat']) : - (pos=="V") ? uniformDraw(['chases','sleeps']) : - (pos=="D") ? uniformDraw(['the','a']) : - (pos=="A") ? 'dilligently' : - 'stop' -} -var POS = ["N", "V", "D", "A", "stop"] - -var hmm = Infer({method:'MCMC', burn:10000, samples: 1000, lag:10, onlyMAP: true}, function() { - var posToDistribution = mem(function(pos) { - return dirichletDrift({alpha:ones([POS.length,1]), concentration:10}) - }) - - var transition = function(pos) { - return categorical({ps: posToDistribution(pos), vs: POS}) - } - - let generateSentence = function(lastPOS) { - let nextPOS = transition(lastPOS); - let word = drawWord(nextPOS); - return (word == 'stop') ? [word] : [word].concat(generateSentence(nextPOS)); - } - let obs = ['the', 'dog', 'chases', 'a', 'cat', 'stop']; - - factor(comparray(obs, generateSentence('start'))*5) - - var sent1 = generateSentence('start'); - var sent2 = generateSentence('start'); - var sent3 = generateSentence('start'); - var sent4 = generateSentence('start'); - var sent5 = generateSentence('start'); - - return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} -}) - -print(hmm) -``` - -b) *Let us consider a phrase structure grammar for our English fragment instead, modeled on the one in Chapter 5. Again, condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences.* - -*Note that for the solution used here, it's convenient (but not necessary) to set* `onlyMAP: true`. - -```js -//Helper function to compare arrays -var comparray = function(arr1,arr2){ - return (JSON.stringify(arr1) === JSON.stringify(arr2)) -} - -var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; - -var D = function() {return uniformDraw(['the', 'a'])}; -var N = function() {return uniformDraw(['cat', 'dog'])}; -var V = function() {return uniformDraw(['chases', 'sleeps'])} -var A = function() {return uniformDraw(['diligently'])} -var AP = function() {return uniformDraw([A()])} -var NP = function() {return [D(), N()]} -var VP = function() {return uniformDraw([[V(), AP()], - [V(), NP()]])} -var S = function() {return [NP(), VP()]} - -var psg = Infer({method:'MCMC', burn:10000, samples: 1000, onlyMAP: true}, function() { - let obs = [['the', 'dog'], ['chases', ['a', 'cat']]] - factor(comparray(obs, S())) - - - var sent1 = S(); - var sent2 = S(); - var sent3 = S(); - var sent4 = S(); - var sent5 = S(); - - return {sent1: sent1, sent2: sent2, sent3: sent3, sent4: sent4, sent5: sent5} -}) - -print(psg) -``` - -c) *Which model produced better English sentences, the hidden Markov model in Exercise 3a or the phrase structure grammar model in Exercise 3b? Why do you suppose that is?* - -The phrase structure grammar produces much more sensible sentences, because it has a lot of prior knowlege about sentence structure. For instance, it is not capable of producing sentences with two articles in a row. - diff --git a/solutions/05.1-sequential-decisions.md b/solutions/05.1-sequential-decisions.md old mode 100644 new mode 100755 diff --git a/solutions/06-inference-about-inference.md b/solutions/06-inference-about-inference.md deleted file mode 100644 index 0a726a6..0000000 --- a/solutions/06-inference-about-inference.md +++ /dev/null @@ -1,410 +0,0 @@ ---- -layout: exercise -title: Inference about inference - exercises ---- - -## Exercise 1: Tricky Agents - -What would happen if Sally knew you were watching her and wanted to deceive you? - -a) *Complete the code below so that `chooseAction` chooses a misdirection if Sally is deceptive. Then describe and show what happens if you knew Sally was deceptive and chose action "b".* - -~~~~ -var actionPrior = Categorical({vs: ['a', 'b', 'c'], ps: [1/3, 1/3, 1/3]}); -var foodPrior = Categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [1/3, 1/3, 1/3]}); - -var vendingMachine = function(state action) { - return (action == 'a' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.8, .1, .1]}) : - action == 'b' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.1, .8, .1]}) : - action == 'c' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], ps: [.1, .1, .8]}) : - 'nothing'); - -var chooseAction = function(goal, transition, state, deceive) { - return Infer({method: 'enumerate'}, function() { - var action = sample(actionPrior); - condition((!deceive && goal(transition(state,action))) || (deceive && !goal(transition(state, action)))) - return action; - }) -}; - -var goalPosterior = Infer({method: 'enumerate'}, function() { - var deceive = flip(); - var goalFood = sample(foodPrior); - var goal = function(outcome) {return outcome == goalFood}; - var sallyActionDist = chooseAction(goal, vendingMachine, 'state', deceive); - condition(deceive && sample(sallyActionDist) == 'b') - return goalFood; -}); - -viz.auto(goalPosterior); -~~~~ - -Results: Given the conditions, the probabilities that Alice wants a bagel or doughnut (p=0.45 for both) are much larger than the probability she wants a cooke (p=0.1): -![](Figures/inference-about-inference-1a.png) - -b) *What happens if you don't know Sally is deceptive and she chooses "b" and then "b". What if she chooses "a" and then "b." Show the models and describe the difference in behavior. Is she deceptive in each case?* - -For the first possibility, we condition on: - -~~~~ -condition(sample(sallyActionDist) == 'b' && sample(sallyActionDist)=='b'); -~~~~ - -We suspect that Sally wants a cookie and was not deceptive, since she chose the option most likely to give her a cookie both times: - -![](Figures/inference-about-inference-1b.png) - -(Note that we can confirm that the model does not believe Sally is being deceptive by returning the value of `deceive`.) - -For the second possibility, we condition on: - -~~~~ -condition(sample(sallyActionDist) == 'a' && sample(sallyActionDist)=='b'); -~~~~ - -It is most likely that Alice wants a doughnut, i.e. that the button most likely to result in her goal is 'c'. The model predicts from her inconsistency (swiching from 'a' to 'b) that it is most likely that she is deceptive. If she was not being deceptive, she would have chosen the same thing both times. So her true goal is the result of the only button she didn't press: 'c': -![](Figures/inference-about-inference-1c.png) - -(Note that we can confirm that the model believes Sally is being deceptive by returning the value of `deceive`.) - -## Exercise 2: Monty Hall. - -*Here, we will use the tools of Bayesian inference to explore a classic statistical puzzle -- the Monty Hall problem. Here is one statement of the problem:* - -> Alice is on a game show and she's given the choice of three doors. Behind one door is a car; behind the others, goats. She picks door 1. The host, Monty, knows what's behind the doors and opens another door, say No. 3, revealing a goat. He then asks Alice if she wants to switch doors. Should she switch? - -*Intuitively, it may seem like switching doesn't matter. However, the canonical solution is that you should switch doors. We'll explore (a) the intuition that switching doesn't matter, (b) the canonical solution, and more.* - -a) *Whether you should switch depends crucially on how you believe Monty chooses doors to pick. First, write the model such that the host randomly picks doors (for this, fill in `montyRandom`). In this setting, should Alice switch? Or does it not matter? Hint: it is useful to condition on the exact doors that we discussed in the problem description.* - -~~~~ -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyRandom = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return sample(chooseDoor); - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidBoth; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -~~~~ - -In this case, it doesn't matter whether Alice switches. *A priori* all doors are equally likely to be the prize door. Monte has eliminated one, but there's no reason to favor either of the other two: - -![](Figures/inference-about-inference-PartA_1.PNG) - -b) *Now, fill in* `montyAvoidBoth` *(make sure you switch your* `var montyFunction = ...` *alias to use* `montyAvoidBoth`). *Here, Monty randomly picks a door that is neither the prize door nor Alice's door. For both-avoiding Monty, you'll find that Alice should switch. - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyAvoidBoth = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - return montyDoor; - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidBoth; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` - -By running the model, we see that switching doors allows Alice to find the car 2/3 of the time: -![](Figures/inference-about-inference-PartB.PNG) - -*This is unintuitive -- we know that Monty picked door 3, so why should the process he used to arrive at this choice matter? By hand, compute the probability table for* $$P(\text{Prize } \mid \text{Alice picks door 1}, \text{Monty picks door 3}, \text{Door 3 is not the prize})$$ under both `montyRandom` and `montyAvoidBoth`. *Using these tables, explain why Alice should switch for both-avoiding Monty but why switching doesn't matter for random Monty. Hint: you will want to compare particular rows of these tables.* - -Under `montyRandom`, here are the probabilities prior to conditioning: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 1 | 0.037 | -| 1 | 1 | 2 | 0.037 | -| 1 | 1 | 3 | 0.037 | -| 1 | 2 | 1 | 0.037 | -| 1 | 2 | 2 | 0.037 | -| 1 | 2 | 3 | 0.037 | -| 1 | 3 | 1 | 0.037 | -| 1 | 3 | 2 | 0.037 | -| 1 | 3 | 3 | 0.037 | -| 2 | 1 | 1 | 0.037 | -| 2 | 1 | 2 | 0.037 | -| 2 | 1 | 3 | 0.037 | -| 2 | 2 | 1 | 0.037 | -| 2 | 2 | 2 | 0.037 | -| 2 | 2 | 3 | 0.037 | -| 2 | 3 | 1 | 0.037 | -| 2 | 3 | 2 | 0.037 | -| 2 | 3 | 3 | 0.037 | -| 3 | 1 | 1 | 0.037 | -| 3 | 1 | 2 | 0.037 | -| 3 | 1 | 3 | 0.037 | -| 3 | 2 | 1 | 0.037 | -| 3 | 2 | 2 | 0.037 | -| 3 | 2 | 3 | 0.037 | -| 3 | 3 | 1 | 0.037 | -| 3 | 3 | 2 | 0.037 | -| 3 | 3 | 3 | 0.037 | - -After we condition on Alice choosing Door 1, Monte choosing Door 3, and Door 3 not being the prize, there are only two remaining possibilities: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 3 | 0.037 | -| 1 | 2 | 3 | 0.037 | - -These are equally likely in the prior and thus equally likely in the posterior. - -Under `montyAvoidBoth`: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 1 | 0 | -| 1 | 1 | 2 | 0.06 | -| 1 | 1 | 3 | 0.06 | -| 1 | 2 | 1 | 0 | -| 1 | 2 | 2 | 0 | -| 1 | 2 | 3 | 0.11 | -| 1 | 3 | 1 | 0 | -| 1 | 3 | 2 | 0.11 | -| 1 | 3 | 3 | 0 | -| 2 | 1 | 1 | 0 | -| 2 | 1 | 2 | 0 | -| 2 | 1 | 3 | 0.11 | -| 2 | 2 | 1 | 0.06 | -| 2 | 2 | 2 | 0 | -| 2 | 2 | 3 | 0.06 | -| 2 | 3 | 1 | 0.11 | -| 2 | 3 | 2 | 0 | -| 2 | 3 | 3 | 0 | -| 3 | 1 | 1 | 0 | -| 3 | 1 | 2 | 0.11 | -| 3 | 1 | 3 | 0 | -| 3 | 2 | 1 | 0.11 | -| 3 | 2 | 2 | 0 | -| 3 | 2 | 3 | 0 | -| 3 | 3 | 1 | 0.06 | -| 3 | 3 | 2 | 0.06 | -| 3 | 3 | 3 | 0 | - -Again, conditioning leaves only the two possibilities: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 3 | 0.06 | -| 1 | 2 | 3 | 0.11 | - -Thus, in the posterior, the possibility where Door 2 is the prize door is twice as likely as the possibility where Door 1 is the prize door. Alice should switch. - -c) *Fill in* `montyAvoidAlice`. *Here, Monty randomly picks a door that is simply not Alice's door. Should Alice switch here?* - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyAvoidAlice = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != aliceDoor); - return montyDoor; - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidAlice; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` - -In this case, Alice should be indifferent to switching. -![](Figures/inference-about-inference-PartD.PNG) - -d) Fill in `montyAvoidPrize`. Here, Monty randomly picks a door that is simply not the prize door. Should Alice switch here? - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyAvoidPrize = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor); - return montyDoor; - }); -}; - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = montyAvoidPrize; - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` - -Here, Alice should be indifferent towards staying or switching, since she has a 50/50 chance on expectation: -![](Figures/inference-about-inference-PartD.PNG) - -e) *An interesting cognitive question is: why do we have the initial intuition that switching shouldn't matter? Given your explorations, propose an answer.* - -[Note: There's no right answer to this. Here are two reasonable answers.] - -*Answer 1*: Either we believe that Monte is trying to avoid the prize door or we believe he is acting randomly. Either possibility would lead to the (correct) prediction that we think Alice should be indifferent to switching. - -*Answer 2*: We are uncertain as to what Monte's strategy is, and so we average over the four possibilities: - -```javascript -// Here's a function that might be handy: it removes some set of badItems from a list l -// e.g. removeBadItems(['nut', 'cake', 'nut', 'bagel'], ['cake', 'bagel']) => ['nut', 'nut'] -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1,2,3] -var chooseDoor = Categorical({vs: doors, ps: [1/3, 1/3, 1/3]}); - -var montyRandom = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return sample(chooseDoor); - }); -}; - -var montyAvoidBoth = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor && montyDoor != aliceDoor); - return montyDoor; - }); -}; - -var montyAvoidAlice = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != aliceDoor); - return montyDoor; - }); -}; - -var montyAvoidPrize = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - let montyDoor = sample(chooseDoor); - condition(montyDoor != prizeDoor); - return montyDoor; - }); -}; - -var chooseMontyFunction = function(){ - var f = randomInteger(4); - return f==0? montyRandom : - f==1? montyAvoidBoth : - f==2? montyAvoidAlice : - montyAvoidPrize -} - -Infer({method: 'enumerate'}, function() { - var aliceDoor = sample(chooseDoor); - var prizeDoor = sample(chooseDoor); - var montyFunction = chooseMontyFunction() - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - - let montyDoor = sample(montyDoorDist); - //condition(montyDoor != prizeDoor && montyDoor != aliceDoor); //Part A - - let switchDoor = removeBadItems(doors, [aliceDoor, montyDoor])[0] - - display("Likelihood of winning if Alice switches doors:") - return switchDoor==prizeDoor; -}); -``` -This results in a slight bias towards not switching, but it's close enough to 50/50 that we may not sense of a distinction between switching and not switching. -![](Figures/inference-about-inference-PartE.PNG) diff --git a/solutions/07-inference-process.md b/solutions/07-inference-process.md old mode 100644 new mode 100755 diff --git a/solutions/08-learning-as-conditional-inference.md b/solutions/08-learning-as-conditional-inference.md old mode 100644 new mode 100755 diff --git a/solutions/09-hierarchical-models.md b/solutions/09-hierarchical-models.md old mode 100644 new mode 100755 diff --git a/solutions/14-bayesian-data-analysis.md b/solutions/14-bayesian-data-analysis.md old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-1.png b/solutions/Figures/agents-as-programs-1.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-10.png b/solutions/Figures/agents-as-programs-10.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-11.png b/solutions/Figures/agents-as-programs-11.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-12.png b/solutions/Figures/agents-as-programs-12.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-2.png b/solutions/Figures/agents-as-programs-2.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-3.png b/solutions/Figures/agents-as-programs-3.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-4.png b/solutions/Figures/agents-as-programs-4.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-5-1.png b/solutions/Figures/agents-as-programs-5-1.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-5-2.png b/solutions/Figures/agents-as-programs-5-2.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-5-3.png b/solutions/Figures/agents-as-programs-5-3.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-5-4.png b/solutions/Figures/agents-as-programs-5-4.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-5-5.png b/solutions/Figures/agents-as-programs-5-5.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-6.png b/solutions/Figures/agents-as-programs-6.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-7-1.png b/solutions/Figures/agents-as-programs-7-1.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-7-2.png b/solutions/Figures/agents-as-programs-7-2.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-7-3.png b/solutions/Figures/agents-as-programs-7-3.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-7-4.png b/solutions/Figures/agents-as-programs-7-4.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-8.png b/solutions/Figures/agents-as-programs-8.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/agents-as-programs-9.png b/solutions/Figures/agents-as-programs-9.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-about-inference-PartE.PNG b/solutions/Figures/inference-about-inference-PartE.PNG old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-1.png b/solutions/Figures/inference-process-1.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-2.png b/solutions/Figures/inference-process-2.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-3.png b/solutions/Figures/inference-process-3.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-4.png b/solutions/Figures/inference-process-4.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-5.png b/solutions/Figures/inference-process-5.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-6.png b/solutions/Figures/inference-process-6.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-7.png b/solutions/Figures/inference-process-7.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/inference-process-8.png b/solutions/Figures/inference-process-8.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/learning-as-inference-1.png b/solutions/Figures/learning-as-inference-1.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/learning-as-inference-2.png b/solutions/Figures/learning-as-inference-2.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/learning-as-inference-3.png b/solutions/Figures/learning-as-inference-3.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/learning-as-inference-4.png b/solutions/Figures/learning-as-inference-4.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/learning-as-inference-5.png b/solutions/Figures/learning-as-inference-5.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/learning-as-inference-6.png b/solutions/Figures/learning-as-inference-6.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequences-of-observations-1.png b/solutions/Figures/sequences-of-observations-1.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequences-of-observations-2.png b/solutions/Figures/sequences-of-observations-2.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequences-of-observations-3.png b/solutions/Figures/sequences-of-observations-3.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequences-of-observations-4.png b/solutions/Figures/sequences-of-observations-4.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequences-of-observations-5.png b/solutions/Figures/sequences-of-observations-5.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequential-decisions-1.png b/solutions/Figures/sequential-decisions-1.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequential-decisions-2.png b/solutions/Figures/sequential-decisions-2.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequential-decisions-3.png b/solutions/Figures/sequential-decisions-3.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequential-decisions-4.png b/solutions/Figures/sequential-decisions-4.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequential-decisions-5.png b/solutions/Figures/sequential-decisions-5.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequential-decisions-6.png b/solutions/Figures/sequential-decisions-6.png old mode 100644 new mode 100755 diff --git a/solutions/Figures/sequential-decisions-7.png b/solutions/Figures/sequential-decisions-7.png old mode 100644 new mode 100755 From ad9b1e2520017d44a384a83fb7c1f9d246eb0dd2 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 25 Jan 2023 13:13:11 -0500 Subject: [PATCH 15/47] actually added the readings --- readings/conditional-dependence.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100755 readings/conditional-dependence.md diff --git a/readings/conditional-dependence.md b/readings/conditional-dependence.md new file mode 100755 index 0000000..02236db --- /dev/null +++ b/readings/conditional-dependence.md @@ -0,0 +1,28 @@ +--- +layout: exercise +title: Conditional Dependence - Readings +description: Conditional dependence. +--- + +## 1. Models of causal reasoning + +Read "[Hierarchical Bayesian inference in the visual cortex](https://leelab.cnbc.cmu.edu/publication/assets/links/hierachical.pdf)" by Tai Sing Lee and David Mumford. + +#### Reading questions: + +a) Which of Marr's levels are Lee and Mumford targetting? + +b) Describe one or two ways in which the model relates to the content from the chapter. + +c) Lee and Mumford's model involves both bottom-up and top-down reasoning. What computational problem does this pose, and how do particle filters help? + +## Optional + +To learn more about how discussions of causal, statistical, and conditional dependence have informed developmental psychology, read "[A theory of causal learning in children: causal maps and Bayes nets](https://pages.ucsd.edu/~rlevy/gopnik-etal-2004.pdf)" by Alison Gopnik and colleagues. + +## Extras + +* If you are unfamiliar with the terms "top-down" and "bottom-up" processing, read [this](https://www.simplypsychology.org/top-down-processing.html#:~:text=Top%2Ddown%20processing%20is%20perceiving,beliefs%2C%20values%20and%20social%20influences.) and [this](https://www.simplypsychology.org/bottom-up-processing.html#:~:text=Bottom%2Dup%20processing%20is%20the%20process%20of%20'sensation'%2C,organize%2C%20and%20interpret%20these%20sensations). + +* To get a basic overview of the parts of the brain involved in vision, read [the Wikipedia page on the visual cortex](https://en.wikipedia.org/wiki/Visual_cortex) + From d3884ab0f69e76534c3d4591f50f5315a8804205 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 1 Feb 2023 20:09:11 -0500 Subject: [PATCH 16/47] Added ChatGPT responses to the reading questions for chapters 3 and 4. --- readings/conditional-dependence.md | 43 ++++++++++++++++++++++++++++-- readings/dependence.md | 14 ++++++++++ 2 files changed, 55 insertions(+), 2 deletions(-) diff --git a/readings/conditional-dependence.md b/readings/conditional-dependence.md index 02236db..f56984f 100755 --- a/readings/conditional-dependence.md +++ b/readings/conditional-dependence.md @@ -6,16 +6,38 @@ description: Conditional dependence. ## 1. Models of causal reasoning -Read "[Hierarchical Bayesian inference in the visual cortex](https://leelab.cnbc.cmu.edu/publication/assets/links/hierachical.pdf)" by Tai Sing Lee and David Mumford. +Read "[Hierarchical Bayesian inference in the visual cortex](https://web.archive.org/web/20170810151948id_/http://cvcl.mit.edu/SUNSeminar/LeeMumford2003.pdf)" by Tai Sing Lee and David Mumford. #### Reading questions: -a) Which of Marr's levels are Lee and Mumford targetting? +a) Which of Marr's levels are Lee and Mumford targeting? + +Here's what ChatGPT says: + +>In the paper "Hierarchical Bayesian inference in the visual cortex" by Tai Sing Lee and David Mumford, the authors are targeting the computational level of Marr's levels of analysis. b) Describe one or two ways in which the model relates to the content from the chapter. +With a little bit of help, ChatGPT can produce this: + +>The "Hierarchical Bayesian inference in the visual cortex" model by Tai Sing Lee and David Mumford relates to the content in Chapter 4 of Probabilistic Models of Cognition in the following ways: +> +>Bayesian models of cognition: Chapter 4 of Probabilistic Models of Cognition covers Bayesian models of cognition, which are mathematical models that use Bayesian probability theory to explain how people process and make inferences about sensory information. Lee and Mumford's model of hierarchical Bayesian inference in the visual cortex fits within this framework, as it proposes that the visual cortex performs Bayesian inference to infer the most likely explanation of sensory input based on prior knowledge and context. +> +>Hierarchical models: The hierarchical aspect of Lee and Mumford's model is also relevant to the content in Chapter 4, as the chapter covers the use of hierarchical models in probabilistic models of cognition. Hierarchical models enable the modeling of complex, multi-level processes by breaking them down into simpler, more manageable components. In the case of Lee and Mumford's model, the hierarchy refers to the levels of abstraction in the visual cortex, from lower-level features to higher-level object representations. +> +>These similarities highlight how Lee and Mumford's model fits within the broader framework of probabilistic models of cognition, and how it contributes to our understanding of how the visual cortex performs inferences and processes sensory information. + c) Lee and Mumford's model involves both bottom-up and top-down reasoning. What computational problem does this pose, and how do particle filters help? +From ChatGPT: + +>The "Hierarchical Bayesian inference in the visual cortex" model by Tai Sing Lee and David Mumford involves both bottom-up and top-down reasoning, which poses a computational challenge. Bottom-up reasoning refers to the processing of sensory information starting from the most basic features, while top-down reasoning refers to the use of prior knowledge and context to guide processing. This combination of bottom-up and top-down reasoning creates a highly complex inference problem, as the visual cortex must balance the influence of sensory data with prior knowledge and context to make accurate inferences about the visual scene. +> +>Particle filters help to address this computational problem by providing a probabilistic framework for combining bottom-up and top-down information. Particle filters are a type of Monte Carlo method that generates a set of particle estimates of the state of a system. In the case of the visual cortex, these particles represent different hypotheses about the explanation of the sensory input, taking into account both bottom-up and top-down information. The visual cortex then uses Bayesian inference to update the particle estimates based on the new sensory information and refine its inferences about the visual scene. +> +>In this way, particle filters provide a way to balance bottom-up and top-down information in a computationally efficient manner, enabling the visual cortex to perform complex inferences about the visual scene based on a combination of sensory data and prior knowledge. + ## Optional To learn more about how discussions of causal, statistical, and conditional dependence have informed developmental psychology, read "[A theory of causal learning in children: causal maps and Bayes nets](https://pages.ucsd.edu/~rlevy/gopnik-etal-2004.pdf)" by Alison Gopnik and colleagues. @@ -26,3 +48,20 @@ To learn more about how discussions of causal, statistical, and conditional depe * To get a basic overview of the parts of the brain involved in vision, read [the Wikipedia page on the visual cortex](https://en.wikipedia.org/wiki/Visual_cortex) +If you tell ChatGPT you don't have enough background to understand this paper, here's what it suggests. I can't say that it's wrong, but it's not very helpful: + +>If you don't have a strong background in the topics covered in the paper "Hierarchical Bayesian inference in the visual cortex" by Tai Sing Lee and David Mumford, I recommend starting with the following resources: +> +>Introduction to Bayesian Statistics: Bayesian statistics is the mathematical framework used in the paper, and understanding the basics of Bayesian statistics is essential for comprehending the model. There are many resources available online to help you learn about Bayesian statistics, such as online courses, tutorials, and introductory texts. +> +>Vision and the Visual Cortex: The paper focuses on how the visual cortex performs inferences about visual scenes, so understanding the basics of vision and the visual cortex is also important. You can start by reading introductory texts on vision and the visual cortex, or taking online courses on these topics. +> +>Particle Filters: Particle filters are a specific type of algorithm used in the paper to perform Bayesian inference. Understanding particle filters is key to understanding the computational problem the paper addresses and how it solves it. You can learn about particle filters by reading introductory texts, watching videos, or taking online courses. +> +>Once you have a solid understanding of these basics, you will be better equipped to understand the paper "Hierarchical Bayesian inference in the visual cortex" and its contributions to the field. + + + + + + diff --git a/readings/dependence.md b/readings/dependence.md index acd2ec4..fb86c1b 100755 --- a/readings/dependence.md +++ b/readings/dependence.md @@ -11,8 +11,22 @@ In the chapter, we discussed how to reason about causation using generative mode #### Reading questions: a) According to Gerstenberg and colleagues, how do human notions of causality match the notion of causal dependence discussed in the chapter? How do they differ? +For the record, here is what ChatGPT says: + +>Gerstenberg and colleagues proposed a counterfactual simulation model to account for human causal judgments for physical events. According to their model, human notions of causality align with the notion of causal dependence in that both involve considering the necessary and sufficient conditions for an effect to occur. +> +>However, the model also suggests that human causal judgments are influenced by a range of factors beyond strict causal dependence, such as heuristics, biases, and prior beliefs. These additional factors can lead to differences between human notions of causality and the formal definition of causal dependence. +> +>For example, humans may rely on heuristics such as temporal proximity or covariation, rather than causal relationships, to make causal judgments. Additionally, humans may make causal judgments based on limited or biased information, whereas the definition of causal dependence requires complete and accurate information about the causal relationships between events. +> +>In conclusion, Gerstenberg and colleagues’ model suggests that human notions of causality match the notion of causal dependence to some extent, but also differ due to the influence of heuristics, biases, and prior beliefs. + b) Gerstenberg and colleagues rely on reasoning through simulation. In what ways is this similar to embodiment or other classic simulation-based theories? +Here is what ChatGPT thinks: + +>The "counterfactual simulation model of causal judgments" by Gerstenberg et al. is similar to embodiment and other classic simulation-based theories in that it posits that our understanding of the physical world is based on mental simulations. The authors argue that our causal judgments, or beliefs about what would happen in a hypothetical scenario, are based on simulating the consequences of counterfactual events in our minds. This is similar to embodiment theories, which suggest that our perception and understanding of the world is shaped by the way our body interacts with the environment, and that mental simulations play a key role in this process. Additionally, the simulation-based approach used by Gerstenberg et al. is similar to other classic simulation-based theories, such as mental models theory, which suggest that we build internal representations, or mental models, of the world and use these models to understand and predict the outcomes of events. + ## Extras * **Embodiment**. For an overview of psychological theories based on embodied simulation, read [this](https://onlinelibrary.wiley.com/doi/pdf/10.1002/wcs.55). From 7634937b9ac9c4088a877f7c298032bf54af51bf Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Thu, 2 Feb 2023 10:22:01 -0500 Subject: [PATCH 17/47] Fixing the link to readings for Social Cognition. Adding ChatGPT to Social Cognition readings. --- chapters/social-cognition.md | 4 ---- readings/social-cognition.md | 6 +++++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/chapters/social-cognition.md b/chapters/social-cognition.md index 83a26ea..1cfc99b 100755 --- a/chapters/social-cognition.md +++ b/chapters/social-cognition.md @@ -882,10 +882,6 @@ Multi-step, suboptimal planning as inference Gergely and Csibra principle of efficiency and equifinality come from Bayes Occam. --> -<<<<<<< HEAD:chapters/06-inference-about-inference.md -Reading & Discussion: [Readings]({{site.baseurl}}/readings/06-inference-about-inference.html) -======= Reading & Discussion: [Readings]({{site.baseurl}}/readings/social-cognition.html) ->>>>>>> upstream/master:chapters/social-cognition.md Test your knowledge: [Exercises]({{site.baseurl}}/exercises/social-cognition.html) diff --git a/readings/social-cognition.md b/readings/social-cognition.md index cb2ea2c..f763f48 100755 --- a/readings/social-cognition.md +++ b/readings/social-cognition.md @@ -1,6 +1,6 @@ --- layout: exercise -title: Inference about inference - readings +title: Social Cognition - readings --- ## 1. Natural pedagogy @@ -11,6 +11,10 @@ title: Inference about inference - readings a) The model in the reading invokes a theory of mind (learners are reasoning about teachers' mental states) but a relatively simple theory of mind (the kinds of mental states ascribed are not complex). Would this be sufficient for learning more complex ideas (like mathematics or how to tune a bicycle)? If not, what might you want to add to the learner's theory of mind? +As usual, ChatGPT has some thoughts: + +> The model in "Learning From Others: The Consequences of Psychological Reasoning for Human Learning" by Pat Shafto and colleagues uses a relatively simple theory of mind, which focuses on reasoning about teachers' mental states to facilitate learning. However, this simple theory of mind may not be sufficient for learning more complex ideas such as mathematics or how to tune a bicycle. To enhance the learner's theory of mind in these cases, additional components may be necessary, such as the ability to infer the teacher's goals, beliefs, and intentions, as well as an understanding of how the teacher's mental states relate to the task at hand. Additionally, the ability to reason about one's own mental states, such as self-awareness, may also play a role in learning complex ideas. + ## Extras ### Extra math **Theory of Mind**. For more on Theory of Mind, see @carlson:2013theory. \ No newline at end of file From 01c248ee78d428f50a93d0961cb9a6cd9ee18653 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 8 Feb 2023 20:34:24 -0500 Subject: [PATCH 18/47] changed 'informal evaluation order reasoning' -- a phrase that appears nowhere on the internet other than in a single exercise in our textbook -- to 'informal causal dependence order reasoning', which I think is what was meant. --- exercises/dependence.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/dependence.md b/exercises/dependence.md index a2cfa50..5e1a4bb 100644 --- a/exercises/dependence.md +++ b/exercises/dependence.md @@ -9,7 +9,7 @@ For each of the following programs: * Draw the dependency diagram (Bayes net). If you don't have software on your computer for doing this, Google Docs has a decent interface for creating drawings. -* Use informal evaluation order reasoning and the intervention method to determine causal dependency between A and B. +* Use informal causal dependence order reasoning and the intervention method to determine causal dependency between A and B. * Use conditioning to determine whether A and B are statistically dependent. From 9f81e71bb1d53e2d57038e564ab1626ddd6c633d Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Thu, 9 Feb 2023 10:05:00 -0500 Subject: [PATCH 19/47] Updated readings for Social Cognition --- readings/social-cognition.md | 74 ++++++++++++++++++++++++++++++++++-- 1 file changed, 71 insertions(+), 3 deletions(-) diff --git a/readings/social-cognition.md b/readings/social-cognition.md index f763f48..f5931b9 100755 --- a/readings/social-cognition.md +++ b/readings/social-cognition.md @@ -3,7 +3,37 @@ layout: exercise title: Social Cognition - readings --- -## 1. Natural pedagogy +## 1. Generics & Rational Speech Acts + +Read [this chapter](http://www.problang.org/chapters/07-generics.html) from another WebPPL textbook that extends the scalar implicature model we saw in the chapter to handle generics. + +#### Reading questions: +a) How does the notion of 'informativity' help the model determine a meaning for generics? + +From ChatGPT: + +> Informativity refers to the amount of new information conveyed by a statement. In the context of generics, informativity is used to determine the likelihood of a statement being true. A more informative generic statement is one that is true for a higher percentage of the members of the category being referred to, while a less informative statement is one that is only true for a smaller percentage of the category. +> +> The scalar implicature model uses informativity to determine the meaning of generics by considering the probability of a statement being true based on its informativity. The model reasons that a more informative generic statement is more likely to be true and uses this information to determine the meaning of the statement. For example, if the statement "Dogs are loyal" is more informative, meaning that a higher percentage of dogs are indeed loyal, the model will use this information to determine the meaning of the statement. + +b) How does this model reinterpret the relationship between what a sentence "literally" means, and what it implies? + +ChatGPT tries really, really hard on this one: + +> In the scalar implicature model, the relationship between the literal meaning of a sentence and what it implies is reinterpreted in terms of probabilistic reasoning. In this model, the literal meaning of a sentence is represented as a probability distribution over the space of possible meanings, and the implicatures are computed based on these probabilities and the context in which the sentence is used. + +> For example, consider the sentence "Some dogs are loyal." The literal meaning of this sentence is represented as a probability distribution over the set of all possible worlds, with each world being a possible scenario in which the sentence is true. The model would use this probability distribution to compute the scalar implicatures of the sentence, which represent the additional information that is conveyed by the sentence beyond its literal meaning. + +> In this way, the scalar implicature model reinterprets the relationship between the literal meaning of a sentence and its implicatures as a probabilistic relationship. The literal meaning of a sentence is represented as a probability distribution over possible meanings, and the implicatures are computed based on this distribution and the context in which the sentence is used. The result is a more nuanced understanding of the relationship between what a sentence "literally" means and what it implies, based on probabilistic reasoning and taking into account the context in which the sentence is used. + +c) To understand "birds lay eggs," the model assumes that people know the actual distributions of various properties across the animal kingdom. This is not realistic. Does that invalidate the model? + +ChatGPT's thoughts on the matter: + +> This limitation of the model does not necessarily invalidate the model, but rather highlights the fact that models of language understanding, like any other models, make simplifying assumptions that may not perfectly reflect reality. The purpose of models like this is to provide a simplified representation of reality that allows for testing and exploration of certain questions and theories related to language understanding. + + +## 2. Natural pedagogy @Shafto:2012by @@ -15,6 +45,44 @@ As usual, ChatGPT has some thoughts: > The model in "Learning From Others: The Consequences of Psychological Reasoning for Human Learning" by Pat Shafto and colleagues uses a relatively simple theory of mind, which focuses on reasoning about teachers' mental states to facilitate learning. However, this simple theory of mind may not be sufficient for learning more complex ideas such as mathematics or how to tune a bicycle. To enhance the learner's theory of mind in these cases, additional components may be necessary, such as the ability to infer the teacher's goals, beliefs, and intentions, as well as an understanding of how the teacher's mental states relate to the task at hand. Additionally, the ability to reason about one's own mental states, such as self-awareness, may also play a role in learning complex ideas. +## 3. Adjectives & Rational Speech Acts + +Start by reading @schmidt2009tall, which provides some background on the basic problem. Then read @lassiter2017adjectival to see how the Rational Speech Act model can be applied to this problem. + +#### Reading questions: +a) How does the notion of 'informativity' help Lassiter and Goodman's model determine the meaning for gradable adjectives? + +b) Do you think Lassiter and Goodman's model should be understood as a processing model that explains how people interpret gradable adjectives in real time? Why or why not? + +## 4. Making decisions about ethics. + +In the main chapter, the scenarios the agent had to consider were very simple. Real-life decision-making is much more complex. Read "[Inference of intention and permissibility in moral decision making](https://mindmodeling.org/cogsci2015/papers/0199/paper0199.pdf)" by Max Kleiman-Weiner, Tobias Gerstenberg, Sydney Levine, and Joshua Tenenbaum. + +#### Reading questions: +a) How do influence diagrams allow the agent to reason about actions? What do these allow that goes beyond what we saw in the chapter? + +ChatGPT provides an excellent example of an answer that is both more-or-less true and completely useless: + +> Influence diagrams are a graphical representation of the probabilistic relationships between variables in a decision-making process. + +> In this paper, the authors use influence diagrams to model an agent's reasoning about actions in moral decision-making scenarios. The influence diagrams allow the agent to reason about the relationships between different factors that influence its decision-making process, such as the intention behind an action, the permissibility of an action, and the outcomes of an action. By using influence diagrams, the agent can take into account multiple factors and their probabilistic relationships when making a decision, leading to a more nuanced understanding of the decision-making process. + +> Influence diagrams allow the agent to reason about actions in a way that goes beyond what was presented in the Social Cognition chapter of Probabilistic Models of Cognition. While the scenarios in the Social Cognition chapter were relatively simple, influence diagrams provide a more flexible and expressive way of modeling the relationships between variables in more complex decision-making scenarios. This allows the agent to take into account multiple factors and their probabilistic relationships when making a decision, leading to a more nuanced understanding of the decision-making process. + +> In conclusion, the use of influence diagrams in moral decision making allows an agent to reason about actions in a more complex and nuanced way, taking into account multiple factors and their probabilistic relationships. This provides a more flexible and expressive way of modeling the relationships between variables in decision-making scenarios, beyond what was presented in the Social Cognition chapter of Probabilistic Models of Cognition. + +b) What theoretical questions was the model intended to explore? What modeling assumptions are tangential to the investigation? + +ChatGPT's answer: + +> To explore these questions, the authors made a number of modeling assumptions. First, they assumed that people make decisions based on the influence of multiple factors, such as the intention behind an action, the permissibility of an action, and the outcomes of an action. Second, they assumed that the relationships between these factors are probabilistic in nature. Third, they assumed that the decision-making process is influenced by prior beliefs and biases. + +> These assumptions are tangential to the investigation as they form the basis for the model and help to capture the complexity of moral decision making. By taking into account multiple factors and their probabilistic relationships, the model provides a more nuanced understanding of the decision-making process, beyond what would be possible with simpler models. + ## Extras -### Extra math -**Theory of Mind**. For more on Theory of Mind, see @carlson:2013theory. \ No newline at end of file +### Extra psychology +* **Theory of Mind**. For more on Theory of Mind, see @carlson:2013theory. + +* **Gricean Theory**. The scalar implicature theory (and RSA in general) are derived from earlier philosophical work by H. Paul Grice. The wikipedia article on the [Cooperative Principle](https://en.wikipedia.org/wiki/Cooperative_principle) provides an excellent overview of Gricean Theory. "[Experimental pragmatics: A Gricean turn in the study of language](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.233.1679&rep=rep1&type=pdf)" by Ira Noveck and Anne Reboul provides a very accessible discussion of psychological research up through 2008. + +* **Expected Utility**. The Stanford Encyclopedia of Philosophy provides a [useful introduction](https://plato.stanford.edu/entries/rationality-normative-utility/) to the notion of "expected utility", which plays a major role in many approaches to decision-making. From a5f98218d2b0ab7347c976329ccba1c6a3477582 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Thu, 9 Feb 2023 10:18:31 -0500 Subject: [PATCH 20/47] Fixed the weird problem in conditioning. Updated answer key. --- exercises/conditioning.md | 2 +- solutions/conditioning.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/exercises/conditioning.md b/exercises/conditioning.md index 0fc5503..8c0dc5d 100644 --- a/exercises/conditioning.md +++ b/exercises/conditioning.md @@ -149,7 +149,7 @@ Describe (using ordinary English) the `smilesModel` program in Exercise 3b. Extend `smilesModel` to create a version of the model considers two additional factors: -1. People will smile 80% of the time if they want something from you and 50% if they do not. +1. Wanting something causes people to smile 80\% of the time. 2. *Nice* people will only want something from you 20% of the time; non-nice people 50% of the time. Don't forget that nice people also smile more often! diff --git a/solutions/conditioning.md b/solutions/conditioning.md index c3dff8c..ef97df9 100644 --- a/solutions/conditioning.md +++ b/solutions/conditioning.md @@ -290,7 +290,7 @@ Most people are nice. Nice people smile a lot, other people smile less. Alice sm > Extend `smilesModel` to create a version of the model considers two additional factors: -> 1. People will smile 80% of the time if they want something from you and 50% if they do not. +> 1. Wanting something causes people to smile 80\% of the time. > 2. *Nice* people will only want something from you 20% of the time; non-nice people 50% of the time. > Don't forget that nice people also smile more often! From 7016e443804d040c0a54152518c96aff8d743103 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Tue, 14 Feb 2023 14:46:44 -0500 Subject: [PATCH 21/47] Updated social cognition. Also added Monty Hall back to conditional dependence. --- chapters/social-cognition.md | 99 ++++++++++ exercises/conditional-dependence.md | 203 ++++++++++++++++++++ exercises/social-cognition.md | 288 ++++++++++++++-------------- 3 files changed, 442 insertions(+), 148 deletions(-) diff --git a/chapters/social-cognition.md b/chapters/social-cognition.md index 1cfc99b..c613752 100755 --- a/chapters/social-cognition.md +++ b/chapters/social-cognition.md @@ -758,6 +758,105 @@ viz.auto(listener("some", 1)) We see that if the listener hears "some" the probability of three out of three is low, even though the basic meaning of "some" is equally consistent with 3/3, 1/3, and 2/3. This is called the "some but not all" implicature. +### Softmax + +So far, our models assume that people always have an option available that will get them what they want, that all undesired options are equally undesirable, and that people will also choose a behavior that gets them what they want. The first two assumptions assumption is implausible and the third one turns out to be wrong: people are actually ``soft-maximizers`` and choose an action with probability proportional to the reward. (Why this is the case is a fascinating area of psychology we will not explore here.) + +WebPPL allows us to switch from a strict maximizer to a soft-maximizer by using `factor` instead of `condition`. `factor` is more general than `condition` and was described in ["Conditioning"](conditioning.html). As described there, `factor(score)` adds `score` to the log probability of the current distribution. + +Let's try an example: + +~~~~ +var dist1 = Infer({method: 'enumerate'}, + function () { + var A = flip() + return A +}); + +var dist2 = Infer({method: 'enumerate'}, + function () { + var A = flip() + A ? factor(1) : factor(0) + return A +}); + +viz(dist1) +viz(dist2) +~~~~ + +Consider that the probability of heads and tails in `dist1` are both .5. Adding 1 to the log probability of heads means + +$$log(P(H)) + 1 = log(.5) + 1 \approx .307$$ + +Adding 0 to the log probability of tails means + +$$log(P(T)) + 0 = log(.5) \approx -.693$$ + +Of course, these two probabilities no longer sum to 1, so we need to normalize: + +$$P(H) = \frac{P(H)}{P(H) + P(T)} \approx \frac{e^.307}{e^.307 + e^{-.693}} \approx .731$$ + +If you run the code above, you should see that our numbers match. + +#### Example: Scalar Implicature, Part 2 + +Let's return to our scalar implicature example. By converting conditions to factors, we can reformulate this model in a more general way. + +The listener infers the probability of utterance $u$ having meaning $m$ as proportional to the probability the speaker would have uttered $u$ to convey $m$ times the prior probability that someone might want to convey $m$: + +$$P_{L}(m\mid u) \propto P_{S}(u\mid m) \cdot P(m)$$ + +To define $P_{S}(u\mid m)$, let's assume that speakers put utility on listeners gaining tru knowledge. So $U_{S}$: + +$$U_{S}(u; m) = log(L(m\mid u)) - C(u)$$ + +Speaker utility increases the more probability the listener puts on the intended meaning and decreases according to utterance "cost". This encodes a very real trade-off: unambiguous speech is great for the listener but often requires more effort on the part of the speaker. Researchers have implemented the cost function differently, but a simple first-pass option is to consider either word frequency (lower frequency words have higher cost) or length (longer sentences have higher cost). A more psycholinguistically-informed model might use a more articulated cost function. + +Now let's update our model, ignoring the issue of utterance cost. Notice it's basically the same model, with except that the speaker function uses a factor. + +~~~~ +var allSprouted = function(state) {return state == 3} +var someSprouted = function(state) {return state > 0} +var noneSprouted = function(state) {return state == 0} +var meaning = function(words) { + return (words == 'all' ? allSprouted : + words == 'some' ? someSprouted : + words == 'none' ? noneSprouted : + console.error("unknown words")) +} + +var statePrior = Categorical({vs: [0,1,2,3], + ps: [1/4, 1/4, 1/4, 1/4]}) +var sentencePrior = Categorical({vs: ["all", "some", "none"], + ps: [1/3, 1/3, 1/3]}) + +//speaker maximization +var alpha = 1 + +var speaker = function(state, depth) { + return Infer({function() { + var words = sample(sentencePrior) + factor(alpha*listener(words, depth).score(state)) + return words + }) +}; + +var listener = function(words, depth) { + return Infer({function() { + var state = sample(statePrior); + var wordsMeaning = meaning(words) + condition(depth == 0 ? wordsMeaning(state) : + _.isEqual(words, sample(speaker(state, depth - 1)))) + return state; + }) +}; + +print("Pragmatic listener's interpretation of 'some':") +viz(listener( "some", 1)) +~~~~ + + + diff --git a/exercises/conditional-dependence.md b/exercises/conditional-dependence.md index 2b9f021..66a2c6d 100644 --- a/exercises/conditional-dependence.md +++ b/exercises/conditional-dependence.md @@ -81,3 +81,206 @@ viz.table(Infer({method: 'enumerate'}, function() { ... })); ~~~~ + +## Exercise 2: Monty Hall. + +Here, we will use the tools of Bayesian inference to explore a classic statistical puzzle -- the Monty Hall problem. +Here is one statement of the problem: + +> Alice is on a game show, and she's given the choice of three doors. +> Behind one door is a car; behind the others, goats. +> She picks door 1. The host, +> Monty, knows what's behind the doors and opens another door, say No. 3, revealing a goat. +> He then asks Alice if she wants to switch doors. +> Should she switch? + +Intuitively, it may seem like switching doesn't matter. +However, the canonical solution is that you *should* switch doors. +We will explore why this is the case. + +For this problem, we will assume (condition) that we observe Monty opening the door that +is neither Alice's door nor the prize door. + +### Exercise 2.1 + +The decision to switch depends crucially on how you believe Monty chooses doors to pick. +First, write the model such that the host *randomly* picks doors (for this, fill in `montyRandom`). +In this setting, should Alice switch, or does it not matter? + +~~~~ +///fold: +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1, 2, 3]; +/// + +var montyRandom = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + return ... + }) +}; + +var model = function(switch_cond) { + var aliceDoor = ... + var prizeDoor = ... + var montyDoor = ... + + condition(montyDoor != prizeDoor); + condition(montyDoor != aliceDoor); + + return ... +} + +display("P(win) if Alice doesn't switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); +display("P(win) if Alice does switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); +~~~~ + + +### Exercise 2.2 + +This time, fill in the code so that Monty behaves according to the original Monty Hall problem, +i.e. picking the door that is neither the prize door nor Alice's door. +For both-avoiding Monty, you'll find that Alice *should* switch. + +~~~~ +///fold: +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1, 2, 3]; +/// + +var montyAvoidBoth = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + return ... + }) +}; + +var model = function(switch_cond) { + var aliceDoor = ... + var prizeDoor = ... + var montyDoor = ... + + condition(montyDoor != prizeDoor); + condition(montyDoor != aliceDoor); + + return ... +} + +display("P(win) if Alice doesn't switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); +display("P(win) if Alice does switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); +~~~~ + + +### Exercise 2.3 + +This is unintuitive -- we know that Monty picked door 3, so why should the process he used to arrive at this choice matter? +By hand, complete the probability table for P(Alice, Prize, Monty) under both `montyRandom` and `montyAvoidBoth`. +Your tables should look like: + +Alice's door| Prize door| Monty's Door| P(Alice, Prize, Monty) +-------------| -----------| -------------| ----------------------- +1| 1| 1| ... +1| 1| 2| ... +...| ...| ...| ... + +Using these tables, explain why Alice should switch for both-avoiding Monty but why switching doesn't matter for random Monty. +Hint: you will want to compare particular *rows* of these tables. + + +### Exercise 2.4 + +This time, fill in the code so that Monty randomly chooses between the two doors that aren't Alice's door. +What should Alice do now? + +~~~~ +///fold: +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1, 2, 3]; +/// + +var montyAvoidAlice = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + return ... + }) +}; + +var model = function(switch_cond) { + var aliceDoor = ... + var prizeDoor = ... + var montyDoor = ... + + condition(montyDoor != prizeDoor); + condition(montyDoor != aliceDoor); + + return ... +} + +display("P(win) if Alice doesn't switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); +display("P(win) if Alice does switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); +~~~~ + + +### Exercise 2.5 + +This time, fill in the code so that Monty randomly chooses between the two doors that aren't the prize door. +What should Alice do now? + +~~~~ +///fold: +var removeBadItems = function(l, badItems) { + return reduce(function(badItem, remainingL) { + return remove(badItem, remainingL) + }, l, badItems); +} + +var doors = [1, 2, 3]; +/// + +var montyAvoidPrize = function(aliceDoor, prizeDoor) { + return Infer({method: 'enumerate'}, function() { + return ... + }) +}; + +var model = function(switch_cond) { + var aliceDoor = ... + var prizeDoor = ... + var montyDoor = ... + + condition(montyDoor != prizeDoor); + condition(montyDoor != aliceDoor); + + return ... +} + +display("P(win) if Alice doesn't switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); +display("P(win) if Alice does switch"); +viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); +~~~~ + + +### Exercise 2.6 + +The psychological question is why do people have the initial intuition that switching shouldn’t matter? +Given your explorations, propose a hypothesis. +Can you think of an experiment that would test this hypothesis? diff --git a/exercises/social-cognition.md b/exercises/social-cognition.md index dc980d8..76c1b10 100644 --- a/exercises/social-cognition.md +++ b/exercises/social-cognition.md @@ -54,205 +54,197 @@ Explain how deceptiveness and preferences interact to produce her actions. ~~~~ ~~~~ -## Exercise 2: Monty Hall. +## Exercise 2: Factors -Here, we will use the tools of Bayesian inference to explore a classic statistical puzzle -- the Monty Hall problem. -Here is one statement of the problem: +The `factor` function can be very helpful. The WebPPL manual has this to say about `factor`: -> Alice is on a game show, and she's given the choice of three doors. -> Behind one door is a car; behind the others, goats. -> She picks door 1. The host, -> Monty, knows what's behind the doors and opens another door, say No. 3, revealing a goat. -> He then asks Alice if she wants to switch doors. -> Should she switch? +> `factor(score)` adds `score` to the log probability of the current distribution. -Intuitively, it may seem like switching doesn't matter. -However, the canonical solution is that you *should* switch doors. -We will explore why this is the case. +Let's try an example: + +~~~~ +var dist1 = Infer({method: 'enumerate'}, + function () { + var A = flip() + return A +}); + +var dist2 = Infer({method: 'enumerate'}, + function () { + var A = flip() + A ? factor(1) : factor(0) + return A +}); + +viz(dist1) +viz(dist2) +~~~~ + +Consider that the probability of heads and tails in `dist1` are both .5. Adding 1 to the log probability of heads means + +$$log(P(H)) + 1 = log(.5) + 1 \approx .307$$ + +Adding 0 to the log probability of tails means + +$$log(P(T)) + 0 = log(.5) \approx -.693$$ + +Of course, these two probabilities no longer sum to 1, so we need to normalize: + +$$P(H) = \frac{P(H)}{P(H) + P(T)} \approx \frac{e^.307}{e^.307 + e^{-.693}} \approx .731$$ + +If you run the code above, you should see that our numbers match. -For this problem, we will assume (condition) that we observe Monty opening the door that -is neither Alice's door nor the prize door. -### Exercise 2.1 +### a) -The decision to switch depends crucially on how you believe Monty chooses doors to pick. -First, write the model such that the host *randomly* picks doors (for this, fill in `montyRandom`). -In this setting, should Alice switch, or does it not matter? +Try to use factor to get approximately 95\% probability of heads (this does not need to be exact; just get close): ~~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} +var dist = Infer({method: 'enumerate'}, + function () { + var A = flip() + factor(A) //edit this line + return A +}); +viz(dist) +~~~~ -var doors = [1, 2, 3]; -/// +### b) -var montyRandom = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return ... - }) -}; +In this model, we flip 3 coins. Use `factor` to favor an outcome of 2 heads and 1 tails: -var model = function(switch_cond) { - var aliceDoor = ... - var prizeDoor = ... - var montyDoor = ... - - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - - return ... -} +~~~~ +var softHeads = Infer({ + model() { + var a = flip(0.5); + var b = flip(0.5); + var c = flip(0.5); + factor( \\your code here ); + return a; + } +}); -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); +viz(softHeads); ~~~~ +## Exercise 3: The Ultimatum Game + +### a) -### Exercise 2.2 +The ultimatum game requires two players: A proposer and a responder. The proposer has to decide how to allocate \$10 between the two players in \$1 increments. Once this proposal is made, the responder decides whether to accept the proposal. If the responder accepts, both players are awarded the money according to the proposal. If the responder rejects, neither player gets anything. -This time, fill in the code so that Monty behaves according to the original Monty Hall problem, -i.e. picking the door that is neither the prize door nor Alice's door. -For both-avoiding Monty, you'll find that Alice *should* switch. +If the responder was a strict utilitarian, s/he would accept any offer of \$1 or more. Assume the proposer is a soft maximizer who wants to keep as much of the \$10 as possible. Complete the code below to find out how much the proposer will offer: ~~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); + +var responder = function(offer) { + + // your code here + } -var doors = [1, 2, 3]; -/// +var proposer = Infer({method: "enumerate"}, function(){ + + // your code here + + factor(reward) + return(offer) + }) -var montyAvoidBoth = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return ... - }) -}; +viz(proposer); +~~~~ -var model = function(switch_cond) { - var aliceDoor = ... - var prizeDoor = ... - var montyDoor = ... - - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - - return ... -} +### b) + +People, it turns out, act very differently than the model above suggests. Responders will often reject low offers as "unfair", even though this means they get nothing. Assume that the responder decides whether to accept in proportion to the percentage of the \$10 allocated to her, raised to some power `alpha` (you can think of `alpha` as "spitefulness"). Complete the code below to determine how much the proposer should offer: -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); ~~~~ +var responder = function(offer, alpha) { + var p = Math.pow(offer/10,alpha) + return(flip(p)); +} + +var proposer = Infer({method: "enumerate"}, function(){ + + // your code here + + factor(reward) + return(offer) + }) -### Exercise 2.3 +viz(proposer); +~~~~ -This is unintuitive -- we know that Monty picked door 3, so why should the process he used to arrive at this choice matter? -By hand, complete the probability table for P(Alice, Prize, Monty) under both `montyRandom` and `montyAvoidBoth`. -Your tables should look like: +### c) -Alice's door| Prize door| Monty's Door| P(Alice, Prize, Monty) --------------| -----------| -------------| ----------------------- -1| 1| 1| ... -1| 1| 2| ... -...| ...| ...| ... +You can think of the variable `alpha` in the code above as encoding spitefulness: the degree to which the responder is willing to forego a reward in order to prevent the proposer from having a reward. See how setting `alpha` to 4, 6, 10, 25, and 50 affects what the proposer does. Explain the results. -Using these tables, explain why Alice should switch for both-avoiding Monty but why switching doesn't matter for random Monty. -Hint: you will want to compare particular *rows* of these tables. +### d) -### Exercise 2.4 +The models above assume the proposer knows the responder's decision function. Let's soften that assumption: the proposer knows that the responder's value of `alpha` is somewhere on the range [0.5, 5]. Suppose the proposer offer \$2 and the responder rejects it. What is the most likely level of `alpha`? How does that change if the first offer was \$8? -This time, fill in the code so that Monty randomly chooses between the two doors that aren't Alice's door. -What should Alice do now? +(Hint: you may find it helpful to find a different place for `alpha` than within the definition of `responder`.) ~~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); +var responder = function(offer, alpha) { + + // your code here + } -var doors = [1, 2, 3]; -/// +var proposer = Infer({method: "MCMC", samples:50000}, function(){ -var montyAvoidAlice = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return ... - }) -}; + // your code here -var model = function(switch_cond) { - var aliceDoor = ... - var prizeDoor = ... - var montyDoor = ... - - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - - return ... -} +]}) -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); +viz(proposer) ~~~~ +### e) + +Extend the model in (d) as follows: Suppose the proposer and responder are going to play twice. Does it ever make sense for the responder to reject the first proposal in order to increase the total expected payoff across the two games? (If you cannot figure out how to write the model, a verbal description is OK.) -### Exercise 2.5 +## Exercise 4: The Prisoner's Dilemma -This time, fill in the code so that Monty randomly chooses between the two doors that aren't the prize door. -What should Alice do now? +### a + +In the prisoner's dilemma, two thieves work together on a bank heist. Afterwards, they are apprehended by the police. The police interrogate the thieves separately. They tell each thief that if they confess they'll get a lenient sentence. If one confesses and the other doesn't, though, the one who doesn't confess will get the maximum sentences of 10 years. If neither confesses, the prosecutors will charge them with some other crime (probably resisting arrest) and they'll each get 5 years. + +What's the longest the lenient sentence can be (in round years) such that it makes sense for the thief to confess (that is, where she has a greater than 50% chance of confessing)? Use `factor(percentYearsFreedom)` where `percentYearsFreedom` is the percentage of the next 10 years the thief will not be in jail. (Assume that this incident has scared her straight and she will not commit any other crimes.) ~~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); +var thiefRats = function(){ + return (flip()? true: false) } -var doors = [1, 2, 3]; -/// +var thief = Infer({}, function(){ -var montyAvoidPrize = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return ... - }) -}; + // your code here -var model = function(switch_cond) { - var aliceDoor = ... - var prizeDoor = ... - var montyDoor = ... - - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - - return ... -} +}) -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); +viz(thief) ~~~~ +### b + +Try using `factor` to make the theives more maximizing (they are even more likely to make the choice that maximizes their years of freedom). How does this affect the answer to part (a)? + +## Exercise 5: Exploring RSA + +In this exercise, we'll look at the final model of scalar implicature from th emain text a bit more. Modify it as necessary. + +### a) + +How does increasing the optimality of the speaker affect the pragmatic listener's inferences? Try a couple values and report the results. + +### b) + +Increase the depth to 2. How does that compare to a model with depth of 1? -### Exercise 2.6 +### c) -The psychological question is why do people have the initial intuition that switching shouldn’t matter? -Given your explorations, propose a hypothesis. -Can you think of an experiment that would test this hypothesis? +Is there any way to get ``some'' to refer to 0? Why or why not? \ No newline at end of file From 492ccd712c6253a8910030f78a6ab075d2512386 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Tue, 14 Feb 2023 15:00:58 -0500 Subject: [PATCH 22/47] Updated social cognition text. Also wrote exercises. --- chapters/social-cognition.md | 5 ++--- readings/social-cognition.md | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/chapters/social-cognition.md b/chapters/social-cognition.md index c613752..3756b3f 100755 --- a/chapters/social-cognition.md +++ b/chapters/social-cognition.md @@ -802,11 +802,11 @@ If you run the code above, you should see that our numbers match. Let's return to our scalar implicature example. By converting conditions to factors, we can reformulate this model in a more general way. -The listener infers the probability of utterance $u$ having meaning $m$ as proportional to the probability the speaker would have uttered $u$ to convey $m$ times the prior probability that someone might want to convey $m$: +The listener infers the probability of utterance $$u$$ having meaning $$m$$ as proportional to the probability the speaker would have uttered $$u$$ to convey $$m$$ times the prior probability that someone might want to convey $m$: $$P_{L}(m\mid u) \propto P_{S}(u\mid m) \cdot P(m)$$ -To define $P_{S}(u\mid m)$, let's assume that speakers put utility on listeners gaining tru knowledge. So $U_{S}$: +To define $$P_{S}(u\mid m)$$, let's assume that speakers put utility on listeners gaining true knowledge. So $U_{S}$: $$U_{S}(u; m) = log(L(m\mid u)) - C(u)$$ @@ -856,7 +856,6 @@ viz(listener( "some", 1)) ~~~~ - diff --git a/readings/social-cognition.md b/readings/social-cognition.md index f5931b9..fc18992 100755 --- a/readings/social-cognition.md +++ b/readings/social-cognition.md @@ -8,7 +8,7 @@ title: Social Cognition - readings Read [this chapter](http://www.problang.org/chapters/07-generics.html) from another WebPPL textbook that extends the scalar implicature model we saw in the chapter to handle generics. #### Reading questions: -a) How does the notion of 'informativity' help the model determine a meaning for generics? +a) H. Paul Grice argued that listeners believe speakers will be as informative as possible. One way to measure informativity is in terms of the degree to which the listener's beliefs would be updated (presumably correctly). How does the notion of 'informativity' help the model determine a meaning for generics? From ChatGPT: From 4012475c0eaf519c05c7538c6d2a7a7c6c0d26da Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 15 Feb 2023 14:40:15 -0500 Subject: [PATCH 23/47] Moved the old grammar exercises into the LOT exercises. --- exercises/lot-learning.md | 200 +++++++++++++++++++++++++++++++++++++- 1 file changed, 195 insertions(+), 5 deletions(-) diff --git a/exercises/lot-learning.md b/exercises/lot-learning.md index f3d9100..300865c 100644 --- a/exercises/lot-learning.md +++ b/exercises/lot-learning.md @@ -3,7 +3,197 @@ layout: exercise title: Learning with a language of thought - exercises --- -## Exercise 1: Inferring Functions +## Exercise 1: What word comes next? + +a) In human languages, certain words are more likely to follow others. "The" is more likely to be followed by "dog" than "rhino", and even less likely to be followed by "sings". + +Let's consider a fragment of English consisting of only the words "dogs", "cats", "chase", and "sleep". This fragment does not contain punctuation or capital letters. Now, suppose that somebody says, "dogs chase cats". Determine how likely "chase" is to be followed by each word in the vocabulary. + +HINT: In the partial code below, I set the 'onlyMAP' parameter for inference to 'true'. As a result, Infer() only returns the most likely (maximum a posteriori) result. You may find that this simplifies deriving the required distribution. To see what the consequences of 'onlyMAP' are, try setting it to 'false'. + +~~~~ +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000, onlyMAP:true}, function() { + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + //TODO ... + +}) + +print(mm) +~~~~ + +b) Assume now that in addition to saying "dogs chase cats", your interlocutor said a second sentence. However, you only heard the first word, which again was "dogs". What is the distribution across likely second words in this sentence? NOTE: If you are not careful, you will end up assigning some probability to "undefined". Be careful. + +~~~~ +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000}, function() { + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + //TODO ... + +}) + +print(mm) +~~~~ + +c) Suppose again that somebody said "dogs chase cats". Now suppose they spoke another sentence, where again the second word was "chase". Show that the most likely first word was "dogs". + +~~~~ +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000}, function() { + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + //TODO ... + +}) + +viz(mm) +~~~~ + +## Exercise 2: Hidden Markov Model + +a) Return to the model from Exercise 1b. Suppose that the second sentence, instead of beginning with "dogs", began with "cats". Provide the marginal distribution on the second word of that sentence. + +~~~~ +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var mm = Infer({method:'MCMC', burn:10000, samples: 50000}, function() { + + var wordToDistribution = mem(function(word) { + return dirichletDrift({alpha:ones([vocab.length,1]), concentration:10}) + }) + + var transition = function(word) { + return categorical({ps: wordToDistribution(word), vs: vocab}) + } + + //TODO ... + +}) + +viz(mm) +~~~~ + +b) In Exercise 2a, you should have found that an ungrammatical sequence like "cats cats" is as likely as a grammatical sequence like "cats sleep". Why is this? + +c) Let's try a hidden Markov model instead. Note that two of the words in our fragment of English are nouns ("dogs", "cats") and two are verbs ("chase", "sleep"). + +Model sentence generation as involving Markov transitions between parts of speech, rather than between the words themselves. + +~~~~ + +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var POS = ["N","V","STOP"] +var N = function() {return uniformDraw(['dogs','cats'])} +var V = function() {return uniformDraw(["chase","sleep"])} + +//TODO -- generative model goes here. + +var sentence = //TODO + +print(sentence) + +~~~~ + +d) Try Exercise 2a, but using our new hidden Markov model. Show that we are now more likely to get the grammatical phrases "cats chase" or "cats sleep" than "cats cats" or "cats dogs". + +~~~~ +//Helper function to compare arrays +var comparray = function(arr1,arr2){ + return (JSON.stringify(arr1) === JSON.stringify(arr2)) +} + +var POS = ["N","V","STOP"] +var N = function() {return uniformDraw(['dogs','cats'])} +var V = function() {return uniformDraw(["chase","sleep"])} + +var hmm = Infer({method:'MCMC', burn:10000, samples: 50000, lag:10, onlyMAP:true}, function() { + + //TODO + +}) + +viz(hmm) + +~~~~ + +## Exercise 3: Phrase structure grammars + +a) Extend your hidden Markov model from Exercise 2 so that our fragment of English additionally includes the determiners "the" and "a" as well as the adverb "diligently". Condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences. + +~~~~ +var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; + +var D = function() {return uniformDraw(['the', 'a'])}; +var N = function() {return uniformDraw(['cat', 'dog'])}; +var V = function() {return uniformDraw(['chases', 'sleeps'])} +var A = function() {return uniformDraw(['diligently'])} + +//TODO +~~~~ + +b) Let us consider a phrase structure grammar for our English fragment instead, modeled on the one in Chapter 5. Again, condition on "The dog chases a cat" being a sentence in the language and generate some additional sentences. + +~~~~ +var uniformDraw = function (xs) {return xs[randomInteger(xs.length)]}; + +var D = function() {return uniformDraw(['the', 'a'])}; +var N = function() {return uniformDraw(['cat', 'dog'])}; +var V = function() {return uniformDraw(['chases', 'sleeps'])} +var A = function() {return uniformDraw(['diligently'])} +var AP = function() {return uniformDraw([A()])} +var NP = function() {return [D(), N()]} +var VP = function() {return uniformDraw([[V(), AP()], + [V(), NP()]])} +var S = function() {return [NP(), VP()]} + +//TODO +~~~~ + +c) Which model produced better English sentences, the hidden Markov model in Exercise 3a or the phrase structure grammar model in Exercise 3b? Why do you suppose that is? + +## Exercise 4: Inferring Functions Consider our model of function inference from the chapter. We can reconceptualize our program as a sequence-generator by making the input arguments 1,2,3,…. @@ -58,19 +248,19 @@ viz.table(Infer({method: 'enumerate', maxExecutions: 1000}, function() { })) ~~~~ -### Exercise 1.1 +### Exercise 4.1 Not surprisingly, the model predicts `9` as the most likely result for `f(3)`. However, it also puts significant probability on `27`. Explain why these two numbers have the highest posterior probabilities. -### Exercise 1.2 +### Exercise 4.2 Why is the probability of `x ** 2` is so much lower than `x * x`? -### Exercise 1.3 +### Exercise 4.3 Many people find the high probability assigned to `27` to be unintuitive (i.e. if we ran this as an experiment, 27 would be a very infrequent response). This suggests our model is an imperfect model of human intuitions. @@ -79,7 +269,7 @@ How could we decrease the probability of inferring `27`? HINT: Consider the priors. -## Exercise 2: Role-governed concepts (optional) +## Exercise 5: Role-governed concepts (optional) In the Rational Rules model we saw in the chapter, concepts were defined in terms of the features of single objects (e.g. "it's a raven if it has black wings"). Psychologists have suggested that many concepts are not defined by the features of a single objects, but instead by the relations the object has to other objects. From ad5cecf918885909a7009f7fd95ae3294516880c Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 15 Feb 2023 15:07:56 -0500 Subject: [PATCH 24/47] Some minor updates to text for algorithms for inference. --- chapters/inference-algorithms.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/chapters/inference-algorithms.md b/chapters/inference-algorithms.md index 5563263..00b052e 100644 --- a/chapters/inference-algorithms.md +++ b/chapters/inference-algorithms.md @@ -52,7 +52,7 @@ var time = function(foo, trials) { time(infModel, 10) ~~~~ -Even for this simple program, lowering the baserate by just one order of magnitude, to $$0.01$$, will make rejection sampling impractical. +Even for this simple program, lowering the baserate by just one order of magnitude, to $$0.01$$, dramatically increases the amount of time the program takes (try it). Another option that we've seen before is to enumerate all of the possible executions of the model, using the rules of probability to calculate the conditional distribution: @@ -81,7 +81,7 @@ var infModel = function(){ time(infModel, 10) ~~~~ -Notice that the time it takes for this program to run doesn't depend on the baserate. Unfortunately it does depend critically on the number of random choices in an execution history: the number of possible histories that must be considered grows exponentially in the number of random choices. To see this we modify the model to allow a flexible number of `flip` choices: +Notice that the time it takes for this program to run doesn't depend on the baserate (use the code above to prove this to yourself). Unfortunately it does depend critically on the number of random choices in an execution history: the number of possible histories that must be considered grows exponentially in the number of random choices. To see this we modify the model to allow a flexible number of `flip` choices: ~~~~ ///fold: @@ -107,6 +107,8 @@ var infModel = function(){ time(infModel, 10) ~~~~ +Try trippling the number of flips. You should see that this increases the runtime by about 30x. + The dependence on size of the execution space renders enumeration impractical for many models. In addition, enumeration isn't feasible at all when the model contains a continuous distribution (because there are uncountably many value that would need to be enumerated). Try inserting `var x = gaussian(0,1)` in the above model. There are many other algorithms and techniques for probabilistic inference, reviewed below. They each have their own performance characteristics. For instance, *Markov chain Monte Carlo* inference approximates the posterior distribution via a random walk (described in detail below). @@ -135,8 +137,7 @@ var infModel = function(){ time(infModel, 10) ~~~~ -See what happens in the above inference as you lower the baserate. Unlike rejection sampling, inference will not slow down appreciably (but results will become less stable). Unlike enumeration, inference should also not slow down exponentially as the size of the state space is increased. -This is an example of the kind of trade offs that are common between different inference algorithms. +See what happens in the above inference as you lower the baserate. Unlike rejection sampling, inference slows down only moderately (but results will become less stable). Unlike enumeration, tripling the number of flips has only a mild impact on runtime (try it). This is an example of the kind of trade offs that are common between different inference algorithms. The varying performance characteristics of different algorithms for (approximate) inference mean that getting accurate results for complex models can depend on choosing the right algorithm (with the right parameters). In what follows we aim to gain some intuition for how and when algorithms work, without being exhaustive. @@ -408,7 +409,7 @@ To construct a Markov chain that converges to a stationary distribution of inter Fortunately, it turns out that for any given (conditional) distribution there are Markov chains with a matching stationary distribution. There are a number of methods for finding an appropriate Markov chain. One particularly common method is *Metropolis Hastings* recipe. To create the necessary transition function, we first create a *proposal distribution*, $$q(x\rightarrow x')$$, which does not need to have the target distribution as its stationary distribution, but should be easy to sample from (otherwise it will be unwieldy to use!). A common option for continuous state spaces is to sample a new state from a multivariate Gaussian centered on the current state. To turn a proposal distribution into a transition function with the right stationary distribution, we either accepting or reject the proposed transition with probability: $$\min\left(1, \frac{p(x')q(x'\rightarrow x)}{p(x)q(x\rightarrow x')}\right).$$ -That is, we flip a coin with that probability: if it comes up heads our next state is $x'$, otherwise our next state is still $$x$$. +That is, we flip a coin with that probability: if it comes up heads our next state is $$x'$$, otherwise our next state is still $$x$$. Such a transition function not only satisfies the *balance condition*, it actually satisfies a stronger condition, *detailed balance*. Specifically, $$p(x)\pi(x \rightarrow x') = p(x')\pi(x' \rightarrow x)$$. (To show that detailed balance implies balance, substitute the right-hand side of the detailed balance equation into the balance equation, replacing the summand, and then simplify.) It can be shown that the *Metropolis-hastings algorithm* gives a transition probability (i.e. $$\pi(x\rightarrow x')$$) that satisfies detailed balance and thus balance. (Recommended exercise: prove this fact. Hint: the probability of transitioning depends on first proposing a given new state, then accepting it; if you don't accept the proposal you "transition" to the original state.) @@ -547,6 +548,8 @@ A particle filter -- also known as [Sequential Monte Carlo](http://docs.webppl.o The particles are "re-sampled" upon encountering new evidence, in order to adjust the numbers so that the population will be approximately distributed according to the model. SMC is particularly useful for models where beliefs can be incrementally updated as new observations come in. +It is recommended that you watch [Particle Filters Explained without Equations](https://www.youtube.com/watch?v=aUkBa1zMKv4) before continuing on, in order to develop some intuitions for how particle filters work. + Let's consider another simple model, where five real numbers are constrained to be close to their neighbors: ~~~~ From 0854da2399a823678f5bea3d0778e555399c7793 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 15 Feb 2023 20:53:07 -0500 Subject: [PATCH 25/47] Finished minor edits to inference algorithms text. --- chapters/inference-algorithms.md | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/chapters/inference-algorithms.md b/chapters/inference-algorithms.md index 00b052e..cb6d55f 100644 --- a/chapters/inference-algorithms.md +++ b/chapters/inference-algorithms.md @@ -920,8 +920,11 @@ Again, the actual trajectory is in green, the observations are in grey, and the # Variational Inference -The previous parts of this chapter focused on Monte Carlo methods for approximate inference: algorithms that generate a (large) collection of samples to represent a conditional distribution. -Another way to represent a distribution is by finding the closest approximation among a set (or "family") of simpler distributions. This is the approach taken by *variational inference*. At a high level, we declare a set of models that have the same choices as our target model, but don't have any conditions (i.e. no `condition`, `observe`, or `factor`); we then try to find the member of this set closest to our target model and use it as the result of `Infer`. +The previous parts of this chapter focused on Monte Carlo methods for approximate inference: algorithms that generate a (large) collection of samples to represent a conditional distribution. An advantage of this method is that it is guaranteed to give you the right answer in the long run. A disadvantage is that the long run is a very long time (potentially long after the heat death of the universe). Even in the best cases, Monte Carlo methods tend to be computationally intensive and slow. + +*Variational inference* involves reprsenting the distribution you want (the probability distribution) by finding the closest approximation among a set (or "family") of simpler distributions. This is generally much faster, though with the disadvantage that the answer is often guaranteed to be wrong. (Since Monte Carlo is only guaranteed to be correct in the long run, in practice this difference is not always that meaningful.) + +At a high level, we declare a set of models that have the same choices as our target model, but don't have any conditions (i.e. no `condition`, `observe`, or `factor`); we then try to find the member of this set closest to our target model and use it as the result of `Infer`. To search for a good approximating model, we will eventually use gradient-based techniques. For this reason, we don't want a set of isolated models, but a continuous family. In WebPPL we declare parameters of a family with `param()`. For instance, here is a family of Gaussian distributions with fixed variance but different means: From e0987684cd0f959831ff380f73bc764360062ee0 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 15 Feb 2023 21:23:04 -0500 Subject: [PATCH 26/47] updated readings for inference algorithms --- readings/inference-algorithms.md | 38 +++++++++++++++++++++++--------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/readings/inference-algorithms.md b/readings/inference-algorithms.md index d547057..15198b5 100755 --- a/readings/inference-algorithms.md +++ b/readings/inference-algorithms.md @@ -4,28 +4,46 @@ title: "Algorithms for Inference - readings" description: "MCMC, Gibbs, Metropolis Hastings, Particle Filters, Variational Bayes" --- -## 1. Discussion of MCMC +## 1. Algorithmic-level theories -@T.L.Griffiths:2008:dd194 - Sec. 5.0 Markov Chain Monte Carlo (pp. 31-34) +Read "[Evolution in mind: Evolutionary dynamics, cognitive processes, and Bayesian inference](https://suchow.io/assets/docs/suchow2017tics.pdf)" by Jordan Suchow, David Bourgin, and Tom Griffiths. #### Reading questions: -a) Under what conditions is it *not* necessary to use an approximate sampling method to solve a Bayesian equation? +a) Suchow and colleagues suggest partical filters are a useful way of thinking about maintenance in working memory, that in fact partical filters are simply a good engineering design for working memory. Why would rejection sampling not work? What about Metropolis-Hastings? -b) What are the major differences between Gibbs sampling and Metropolis-Hastings sampling? +ChatGPT actually makes some useful points about the three sampling methods, but doesn't really tie the argument together. Still, you might find it a useful place to start: + +> Suhcow and colleagues suggest that particle filters, which are commonly used in the field of engineering for state estimation and tracking, can be seen as a useful model for understanding maintenance in working memory. In this model, working memory is represented as a set of particles, or possible states, that are continuously updated based on incoming sensory information. + +> Rejection sampling is a technique used in statistics to generate samples from a probability distribution. It involves sampling from a proposal distribution and then rejecting samples that do not meet certain criteria. While this approach could potentially be used to model working memory maintenance, it is less efficient than particle filters because it requires a large number of samples to be generated in order to obtain an accurate representation of the underlying distribution. -## 2. Particle filters +> Metropolis-Hastings is another statistical technique used to generate samples from a probability distribution. It involves iteratively generating new samples based on a proposal distribution and accepting or rejecting them based on a specified acceptance criterion. While this approach could be used to model working memory maintenance, it can be computationally expensive and requires careful tuning of the proposal distribution and acceptance criterion to ensure accurate sampling. -[Particle Filters Explained without Equations](https://www.youtube.com/watch?v=aUkBa1zMKv4) +> In contrast, particle filters are designed to efficiently track and estimate the state of a system over time, and are well-suited to modeling the continuous updates and maintenance processes involved in working memory. They are computationally efficient and do not require as much fine-tuning as other statistical techniques, making them a useful engineering design for working memory. -#### Viewing questions: +PS ChatGPT really did misspell "Suchow". It is not entirely clear what to make of that. -a) As the number of particles increases, what happens to a particle filter's accuracy? What happens to its run-time? Would you want an infinite number of particles? Why or why not? +b) Suchow and colleagues suggest that Metropolis-Hastings may be a useful way of thinking about creativity, that in fact Metropolis-Hastings may be a useful way of *instantiating* creativity. Why would it work better than rejections sampling? Than partical filters? -b) Describe a phenomenon that particle filters be particularly good for modeling. Why do you think a particle filter would be helpful? +ChatGPT's answer was pretty similar in form to the one for (a), so it is not copied here. + +## 2. Discussion of MCMC + +Read Sec. 5 (``Markov Chain Monte Carlo'') of [Bayesian models of cognition](https://kilthub.cmu.edu/articles/journal_contribution/Bayesian_models_of_cognition/6613682/1/files/12106358.pdf) by Tom Griffiths, Charles Kemp, and Josh Tenenbaum. + +#### Reading questions: + +a) Under what conditions is it *not* necessary to use an approximate sampling method to solve a Bayesian equation? + +b) What are the major differences between Gibbs sampling and Metropolis-Hastings sampling? ## Extras +### Extra modeling +* **[Empmirical evidence for Markov Chain Monte Carlo in Memory Search](https://escholarship.org/content/qt72r6n6cn/qt72r6n6cn.pdf)** A short paper describing a model closely related to the memory model discussed by Suchow and colleagues. Although it's short, it goes into the math in a bit more detail, which may be helpful. + ### Extra math -**Algorithms for Inference** For a somewhat longer, mathier disucssion of MCMC algorithms, see @andrieu2003introduction. +* **Algorithms for Inference** For a somewhat longer, mathier disucssion of MCMC algorithms, see @andrieu2003introduction. +* **[Gibbs sampling for the uninitiated](http://users.umiacs.umd.edu/~resnik/pubs/LAMP-TR-153.pdf)** Gibbs sampling is not really covered in this chapter, but it is important. Readers who want to know more can consult this text. \ No newline at end of file From 53a929842e58872addc5561aa755dfa8ab5f727a Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 15 Feb 2023 22:43:20 -0500 Subject: [PATCH 27/47] Updated exercises for algorithms for inference --- exercises/inference-algorithms.md | 90 ++- solutions/03-conditioning.md | 533 -------------- solutions/04-patterns-of-inference.md | 222 ------ solutions/04.1-agents-as-programs.md | 424 ----------- solutions/05.1-sequential-decisions.md | 407 ----------- .../08-learning-as-conditional-inference.md | 440 ------------ solutions/09-hierarchical-models.md | 211 ------ solutions/14-bayesian-data-analysis.md | 373 ---------- solutions/Figures/agents-as-programs-1.png | Bin 14729 -> 0 bytes solutions/Figures/agents-as-programs-10.png | Bin 18183 -> 0 bytes solutions/Figures/agents-as-programs-11.png | Bin 12295 -> 0 bytes solutions/Figures/agents-as-programs-12.png | Bin 13527 -> 0 bytes solutions/Figures/agents-as-programs-2.png | Bin 16414 -> 0 bytes solutions/Figures/agents-as-programs-3.png | Bin 19221 -> 0 bytes solutions/Figures/agents-as-programs-4.png | Bin 17447 -> 0 bytes solutions/Figures/agents-as-programs-5-1.png | Bin 20236 -> 0 bytes solutions/Figures/agents-as-programs-5-2.png | Bin 21870 -> 0 bytes solutions/Figures/agents-as-programs-5-3.png | Bin 21481 -> 0 bytes solutions/Figures/agents-as-programs-5-4.png | Bin 21322 -> 0 bytes solutions/Figures/agents-as-programs-5-5.png | Bin 20202 -> 0 bytes solutions/Figures/agents-as-programs-6.png | Bin 20854 -> 0 bytes solutions/Figures/agents-as-programs-7-1.png | Bin 17951 -> 0 bytes solutions/Figures/agents-as-programs-7-2.png | Bin 17791 -> 0 bytes solutions/Figures/agents-as-programs-7-3.png | Bin 19290 -> 0 bytes solutions/Figures/agents-as-programs-7-4.png | Bin 19267 -> 0 bytes solutions/Figures/agents-as-programs-8.png | Bin 78571 -> 0 bytes solutions/Figures/agents-as-programs-9.png | Bin 28870 -> 0 bytes .../Figures/inference-about-inference-1a.PNG | Bin 31013 -> 0 bytes .../Figures/inference-about-inference-1b.PNG | Bin 34385 -> 0 bytes .../Figures/inference-about-inference-1c.PNG | Bin 32091 -> 0 bytes .../Figures/inference-about-inference-1d.PNG | Bin 30196 -> 0 bytes .../inference-about-inference-PartA_1.PNG | Bin 35813 -> 0 bytes .../inference-about-inference-PartB.PNG | Bin 32239 -> 0 bytes .../inference-about-inference-PartC.PNG | Bin 31131 -> 0 bytes .../inference-about-inference-PartD.PNG | Bin 35943 -> 0 bytes .../inference-about-inference-PartE.PNG | Bin 27755 -> 0 bytes solutions/Figures/inference-process-1.png | Bin 29472 -> 0 bytes solutions/Figures/inference-process-2.png | Bin 29652 -> 0 bytes solutions/Figures/inference-process-3.png | Bin 42387 -> 0 bytes solutions/Figures/inference-process-4.png | Bin 38896 -> 0 bytes solutions/Figures/inference-process-5.png | Bin 20601 -> 0 bytes solutions/Figures/inference-process-6.png | Bin 16791 -> 0 bytes solutions/Figures/inference-process-7.png | Bin 16374 -> 0 bytes solutions/Figures/inference-process-8.png | Bin 16095 -> 0 bytes solutions/Figures/learning-as-inference-1.png | Bin 32843 -> 0 bytes solutions/Figures/learning-as-inference-2.png | Bin 20219 -> 0 bytes solutions/Figures/learning-as-inference-3.png | Bin 33039 -> 0 bytes solutions/Figures/learning-as-inference-4.png | Bin 33646 -> 0 bytes solutions/Figures/learning-as-inference-5.png | Bin 36852 -> 0 bytes solutions/Figures/learning-as-inference-6.png | Bin 37369 -> 0 bytes .../Figures/sequences-of-observations-1.png | Bin 18769 -> 0 bytes .../Figures/sequences-of-observations-2.png | Bin 17665 -> 0 bytes .../Figures/sequences-of-observations-3.png | Bin 17280 -> 0 bytes .../Figures/sequences-of-observations-4.png | Bin 17405 -> 0 bytes .../Figures/sequences-of-observations-5.png | Bin 17731 -> 0 bytes solutions/Figures/sequential-decisions-1.png | Bin 19294 -> 0 bytes solutions/Figures/sequential-decisions-2.png | Bin 19496 -> 0 bytes solutions/Figures/sequential-decisions-3.png | Bin 16839 -> 0 bytes solutions/Figures/sequential-decisions-4.png | Bin 67628 -> 0 bytes solutions/Figures/sequential-decisions-5.png | Bin 36400 -> 0 bytes solutions/Figures/sequential-decisions-6.png | Bin 65030 -> 0 bytes solutions/Figures/sequential-decisions-7.png | Bin 21726 -> 0 bytes solutions/bayesian-data-analysis.md | 546 --------------- solutions/conditional-dependence.md | 174 ----- solutions/conditioning.md | 555 --------------- solutions/dependence.md | 86 --- solutions/generative-models.md | 582 --------------- solutions/hierarchical-models.md | 457 ------------ solutions/inference-algorithms.md | 661 ------------------ .../learning-as-conditional-inference.md | 275 -------- solutions/lot-learning.md | 116 --- solutions/mixture-models.md | 144 ---- solutions/occams-razor.md | 481 ------------- solutions/process-models.md | 344 --------- solutions/social-cognition.md | 488 ------------- 75 files changed, 87 insertions(+), 7522 deletions(-) delete mode 100755 solutions/03-conditioning.md delete mode 100755 solutions/04-patterns-of-inference.md delete mode 100755 solutions/04.1-agents-as-programs.md delete mode 100755 solutions/05.1-sequential-decisions.md delete mode 100755 solutions/08-learning-as-conditional-inference.md delete mode 100755 solutions/09-hierarchical-models.md delete mode 100755 solutions/14-bayesian-data-analysis.md delete mode 100755 solutions/Figures/agents-as-programs-1.png delete mode 100755 solutions/Figures/agents-as-programs-10.png delete mode 100755 solutions/Figures/agents-as-programs-11.png delete mode 100755 solutions/Figures/agents-as-programs-12.png delete mode 100755 solutions/Figures/agents-as-programs-2.png delete mode 100755 solutions/Figures/agents-as-programs-3.png delete mode 100755 solutions/Figures/agents-as-programs-4.png delete mode 100755 solutions/Figures/agents-as-programs-5-1.png delete mode 100755 solutions/Figures/agents-as-programs-5-2.png delete mode 100755 solutions/Figures/agents-as-programs-5-3.png delete mode 100755 solutions/Figures/agents-as-programs-5-4.png delete mode 100755 solutions/Figures/agents-as-programs-5-5.png delete mode 100755 solutions/Figures/agents-as-programs-6.png delete mode 100755 solutions/Figures/agents-as-programs-7-1.png delete mode 100755 solutions/Figures/agents-as-programs-7-2.png delete mode 100755 solutions/Figures/agents-as-programs-7-3.png delete mode 100755 solutions/Figures/agents-as-programs-7-4.png delete mode 100755 solutions/Figures/agents-as-programs-8.png delete mode 100755 solutions/Figures/agents-as-programs-9.png delete mode 100755 solutions/Figures/inference-about-inference-1a.PNG delete mode 100755 solutions/Figures/inference-about-inference-1b.PNG delete mode 100755 solutions/Figures/inference-about-inference-1c.PNG delete mode 100755 solutions/Figures/inference-about-inference-1d.PNG delete mode 100755 solutions/Figures/inference-about-inference-PartA_1.PNG delete mode 100755 solutions/Figures/inference-about-inference-PartB.PNG delete mode 100755 solutions/Figures/inference-about-inference-PartC.PNG delete mode 100755 solutions/Figures/inference-about-inference-PartD.PNG delete mode 100755 solutions/Figures/inference-about-inference-PartE.PNG delete mode 100755 solutions/Figures/inference-process-1.png delete mode 100755 solutions/Figures/inference-process-2.png delete mode 100755 solutions/Figures/inference-process-3.png delete mode 100755 solutions/Figures/inference-process-4.png delete mode 100755 solutions/Figures/inference-process-5.png delete mode 100755 solutions/Figures/inference-process-6.png delete mode 100755 solutions/Figures/inference-process-7.png delete mode 100755 solutions/Figures/inference-process-8.png delete mode 100755 solutions/Figures/learning-as-inference-1.png delete mode 100755 solutions/Figures/learning-as-inference-2.png delete mode 100755 solutions/Figures/learning-as-inference-3.png delete mode 100755 solutions/Figures/learning-as-inference-4.png delete mode 100755 solutions/Figures/learning-as-inference-5.png delete mode 100755 solutions/Figures/learning-as-inference-6.png delete mode 100755 solutions/Figures/sequences-of-observations-1.png delete mode 100755 solutions/Figures/sequences-of-observations-2.png delete mode 100755 solutions/Figures/sequences-of-observations-3.png delete mode 100755 solutions/Figures/sequences-of-observations-4.png delete mode 100755 solutions/Figures/sequences-of-observations-5.png delete mode 100755 solutions/Figures/sequential-decisions-1.png delete mode 100755 solutions/Figures/sequential-decisions-2.png delete mode 100755 solutions/Figures/sequential-decisions-3.png delete mode 100755 solutions/Figures/sequential-decisions-4.png delete mode 100755 solutions/Figures/sequential-decisions-5.png delete mode 100755 solutions/Figures/sequential-decisions-6.png delete mode 100755 solutions/Figures/sequential-decisions-7.png delete mode 100644 solutions/bayesian-data-analysis.md delete mode 100644 solutions/conditional-dependence.md delete mode 100644 solutions/conditioning.md delete mode 100644 solutions/dependence.md delete mode 100755 solutions/generative-models.md delete mode 100644 solutions/hierarchical-models.md delete mode 100755 solutions/inference-algorithms.md delete mode 100644 solutions/learning-as-conditional-inference.md delete mode 100644 solutions/lot-learning.md delete mode 100644 solutions/mixture-models.md delete mode 100644 solutions/occams-razor.md delete mode 100644 solutions/process-models.md delete mode 100644 solutions/social-cognition.md diff --git a/exercises/inference-algorithms.md b/exercises/inference-algorithms.md index e45b342..546da98 100644 --- a/exercises/inference-algorithms.md +++ b/exercises/inference-algorithms.md @@ -38,7 +38,7 @@ var post = Infer({method: 'rejection', samples: 1000}, model); viz.auto(post); ~~~~ -### Exercise 1.1) +### Exercise 1.1 Try using MCMC with Metropolis-Hastings instead of rejection sampling. You'll notice that it does not fare as well as rejection sampling. Why not? @@ -71,13 +71,13 @@ var post = Infer({method: 'rejection', samples: 1000}, model); viz.auto(post); ~~~~ -### Exercise 1.2) +### Exercise 1.2 Change the *model* to make MH successfully trace the curves. Your solution should result in a graph that clearly traces a heart-shaped figure -- though it need not do quite as well as rejection sampling. Why does this work better? -You may find the following piece of code useful. +You may find the following piece of code useful. ~~~~ var a = diagCovGaussian({mu: Vector([0, 100]), @@ -86,6 +86,14 @@ display(T.get(a, 0)); display(T.get(a, 1)); ~~~~ +Note that `T.get()` is just a helper function to get specific values out of the return value of diagCovGaussian(). See what that output looks like: + +~~~~ +var a = diagCovGaussian({mu: Vector([0, 100]), + sigma: Vector([1, 10])}); +a +~~~~ + ~~~~ ///fold: var onCurve = function(x, y) { @@ -295,6 +303,82 @@ var posterior = Infer({method: 'MCMC', verbose: true}, model); ~~~~ +# Exercise 3: Cross-situational learning + +When children hear an object being named, the data is often ambiguous. There are multiple things the parent could be talking about. Which one does the word belong to? + +A common paradigm for studying this problem is the cross-situational learning study. On the first trial, the subject may see a dog and a cat and hear the word `dax`. Does `dax` refer to dogs or cats? There's no way to know. + +Suppose on the second trial, however, the subject sees a dog and a bird and hears the word `dax`. Now, your intuition is probably that `dax` refers to dogs. + +#### Exercise 3.1 + +Implement a simple model that achieves this result. + +~~~~ +var names = ["dax", "blicket", "gorper", "greeble", "freeble"] + +var objName = mem(function(obj) { + sample(Categorical({vs: names, ps: [.2, .2, .2, .2, .2]})) +}) + +var nameOne = function(obj1, obj2){ + return flip() ? objName(obj1) : objName(obj2) +} + +var clmodel = function() { + // your model goes here + return objName("dog") +} + +var posterior = Infer(clmodel) +viz(posterior) +~~~~ + +#### Exercise 3.2 + +An obvious concern about cross-situational learning is that it may require a lot of memory. Suppose the following trial structure: + +1. objects: dog, cat, word: dax +2. objects: dog, bird, word: blicket +3. objects: dog, cow, word: greeble +4. objects: dog, platypus, word: freeble +5. objects: dog, ostrich, word: dax + +You should still place very high probability on a dog being called a "dax". Show that this holds in your model. Is the probability as high as it was previously? If not, why not? + +~~~~ +var names = ["dax", "blicket", "gorper", "greeble", "freeble"] + +var objName = mem(function(obj) { + sample(Categorical({vs: names, ps: [.2, .2, .2, .2, .2]})) +}) + +var nameOne = function(obj1, obj2){ + return flip() ? objName(obj1) : objName(obj2) +} + +var clmodel = function() { + // your model goes here + return objName("dog") +} + +var posterior = Infer(clmodel) +viz(posterior) +~~~~ + +#### Exercise 3.3 + +In a thought-provoking paper titled "[Propose but verify](https://www.sciencedirect.com/science/article/pii/S0010028512000795?casa_token=nz-cJhc201oAAAAA:R2uj-uguW3RBr37sqNuHw9FaooZio0UL787yJmqI5nGlwc89nd-tMabrBszCZtYNHyHLNcbzqQ)", John Trueswell, Tamara Medina, Alon Hafri, and Lila Gleitman argue that cross-situational models like the one above require too much memory. It's unrealistic to suppose that learners remember all prior encounters with objects and words! + +Instead, they argue that at any given time, learners are entertaining a single possible meaning for any given word. If later evidence disproves their working definition, they throw it out and start over. + +Rewrite your model from Exercise 3.2 to implement this proposal. Hint: Consider how you could do this by changing the inference algorithm, not the model itself. (You may need to change the model, though, for instance to change `condition` statements to `factor` statements just in order to get the model to run.) + +~~~~ +// FUBAR +~~~~ + - -$$ P(a \mid a \lor b) = \frac{ P(a \land (a \lor b)) } { P(a \lor b) } = \frac{P(a)} {P(a \lor b)} = \frac{0.5} {1 - P(!a \land !b)} = \frac{0.5} {1 - (0.5)\cdot(0.5)} = 2/3 $$ - - -~~~~ -viz.table(Infer({method: "enumerate"}, function() { - var a = flip(); - var b = flip(); - condition(a || b); - return a; -})) -~~~~ - -### b) - -~~~~ -var smilesModel = function() { - var nice = mem(function(person) {return flip(.7)}); - var smiles = function(person) {return nice(person) ? flip(.8) : flip(.5);} - condition(smiles('alice') && smiles('bob') && smiles('alice')); - return nice('alice'); -} - -viz.table(Infer({method: "enumerate"}, smilesModel)) -~~~~ - -Using Bayes rule: - -$$ P(N_A \mid S_A, S_B, S_A) \propto P(S_A, S_B, S_A \mid N_A) P(N_A) $$ - -Alice is nice: - -$$ P(S_A | N_A)^2 P(S_B | N_A) P(N_A) = P(S_A | N_A)^2 \left(P(S_B | N_B)P(N_B) + P(S_B | !N_B)P(!N_B)\right) P(N_A) = 0.31808 $$ - -Alice isn't nice: - -$$ P(S_A | !N_A)^2 P(S_B | !N_A) P(!N_A) = P(S_A | !N_A)^2 \left(P(S_B | N_B)P(N_B) + P(S_B | !N_B)P(!N_B)\right) P(!N_A) = 0.05325 $$ - -Normalize: - -$$ P(N_A \mid S_A, S_B, S_A) = 0.31808 / (0.31808 + 0.05325) = 0.85659655831 $$ - - -## Exercise 4: Extending the smiles model - -### a) - -> Describe (using ordinary English) what the second WebPPL program, `smilesModel` above means. - -Most people are nice. Nice people smile a lot, other people smile less. Alice smiled twice (and Bob smiled once). Is Alice nice? - -### b) - -> Extend `smilesModel` to create a version of the model that captures these two intuitions: - -> 1. people are more likely to smile if they want something and -> 2. *nice* people are less likely to want something. - -> *Hint:* Which variables change at different times for the same person? Which values *depend* on other values? - -~~~~ -var extendedSmilesModel = function() { - var nice = mem(function(person) {return flip(.7)}); - - var wantsSomething = function(person) { - return nice(person) ? flip(.2) : flip(.5) - } - - var smiles = function(person, wants) { - return (wants ? flip(.8) : flip(.5)) - || (nice(person) ? flip(.8) : flip(.5)) - } - - var aliceWants = wantsSomething('alice'); - return smiles('alice', aliceWants) -} - -Infer({method: "enumerate"}, extendedSmilesModel) -~~~~ - -Note that smiles now has two possible causes (draw the diagram!) Being nice makes you more likely to smile and, separately, wanting something makes you more likely to smile. Using the OR operator here captures the intuition that either one is sufficient to make someone more likely to smile (recall the 'explaining away' phenomenon in Chapter 4 which had a similar flavor). Critically, being nice is a persistant property of a person and is therefore held constant within an execution using `mem` while wanting something is circumstantial: the same person may want something on one occasion and not another. Finally, by making smiles a function of a person and *whether they want something* at a given time (as opposed to calling `wantsSomething` inside smiles), we can query a particular instance of wanting something without flipping separate coins outside and inside. - -### c) - -> Suppose you've seen Bob five times this week and each time, he was not smiling. But today, you see Bob and he *is* smiling. Use this `extendedSmilesModel` model to compute the posterior belief that Bob wants something from you today. - -> *Hint:* How will you represent the same person (Bob) smiling *multiple times*? What features of Bob will stay the same each time he smiles (or doesn't) and what features will change? - -> In your answer, show the WebPPL inference and a histogram of the answers -- in what ways do these answers make intuitive sense or fail to? - -~~~~ -var extendedSmilesModel = function() { - var nice = mem(function(person) {return flip(.7)}); - - var wantsSomething = function(person) { - return nice(person) ? flip(.2) : flip(.5) - } - - var smiles = function(person, wants) { - return (wants ? flip(.8) : flip(.5)) - || (nice(person) ? flip(.8) : flip(.5)) - } - - var wantToday = wantsSomething('bob'); - condition(smiles('bob', wantToday) // smiles today! - && !smiles('bob', wantsSomething('bob')) // no smile on day 1 - && !smiles('bob', wantsSomething('bob')) // no smile on day 2 - && !smiles('bob', wantsSomething('bob')) // no smile on day 3 - && !smiles('bob', wantsSomething('bob')) // no smile on day 4 - && !smiles('bob', wantsSomething('bob'))) // no smile on day 5 - return wantToday -} - -Infer({method: "enumerate"}, extendedSmilesModel) -~~~~ - -We condition on all the data that we have; bob failed to smile 5 times before, but then smiled today. Again, critically, because wantsSomething is not memoized, each of these observations is independent. We have uncertainty over whether bob wanted something on *every* day, but we're only interested in whether he wanted something on the day that he smiled, thus why we store that value and return it at the end. - -## Question 5.5: Sprinklers, Rain and `mem` - -### a) - -> I have a particularly bad model of the sprinkler in my garden. -> It is supposed to water my grass every morning, but is turns on only half the time (at random, as far as I can tell). -> Fortunately, I live in a city where it also rains 30% of days. -> -> One day I check my lawn and see that it is wet, meaning that either it rained that morning or my sprinkler turned on (or both). -> -> Answer the following questions, either using the Rules of Probability or by writing your own sprinkler model in webppl. -> -> * What is the probability that it rained? - -$$P(rain) = 0.46153846153846156$$ - -> * What is the probability that my sprinkler turned on? - -$$P(sprinkler) = 0.7692307692307692$$ - - -~~~~ -display("rain") -viz.table(Infer({method: "enumerate"}, function() { - var sprinkler = flip(); - var rain = flip(0.3); - var wet_lawn = sprinkler || rain; - condition(wet_lawn); - return rain; -})) - -display("sprinkler") -viz.table(Infer({method: "enumerate"}, function() { - var sprinkler = flip(); - var rain = flip(0.3); - var wet_lawn = sprinkler || rain; - condition(wet_lawn); - return sprinkler; -})) -~~~~ - -### c) - -> My neighbour Kelsey, who has the same kind of sprinkler, tells me that her lawn was also wet that same morning. -> What is the new posterior probability that it rained? - -$$P(rain) = 0.631578947368421$$ - -~~~~ -viz.table(Infer({method: "enumerate"}, function() { - var rain = flip(0.3); - var my_sprinkler = flip(); - var her_sprinkler = flip(); - var my_lawn_is_wet = my_sprinkler || rain; - var her_lawn_is_wet = her_sprinkler || rain; - condition(my_lawn_is_wet && her_lawn_is_wet); - return rain; -})) -~~~~ - -### d) - -> To investigate further we poll a selection of our friends who live nearby, and ask if their grass was wet this morning. -> Kevin and Manu and Josh, each with the same sprinkler, all agree that their lawns were wet too. -> Using `mem`, write a model to reason about arbitrary numbers of people, and then use it to find the new probability that it rained. - -$$P(rain) = 0.9320388349514566$$ - -~~~~ -viz.table(Infer({method: "enumerate"}, function() { - var rain = flip(0.3); - - var sprinkler = mem(function(person) {return flip();}) - var wet_lawn = mem(function(person) {return rain || sprinkler(person);}) - - condition(wet_lawn("me"), wet_lawn("Kelsey"), wet_lawn("Kevin"), wet_lawn("Manu"), wet_lawn("Josh")); - return rain; -})) -~~~~ - -*Note:* We don't actually *have* to use `mem` here, because we're asking about rain. But if we instead wanted to reason about whether *my* sprinker went off, we can do that a lot more easily with the model that uses `mem`. E.g. - -~~~~ -viz.table(Infer({method: "enumerate"}, function() { - var rain = flip(0.3); - - var sprinkler = mem(function(person) {return flip();}) - var wet_lawn = mem(function(person) {return rain || sprinkler(person);}) - - condition(wet_lawn("me"), wet_lawn("Kelsey"), wet_lawn("Kevin"), wet_lawn("Manu"), wet_lawn("Josh")); - return wet_lawn("me"); -})) -~~~~ - -## Exercise 5: Casino game - -> Consider the following game. -> A machine randomly gives Bob a letter of the word "game"; it gives a, e (the vowels) with probability 0.45 each and the remaining letters (the consonants g, m) with probability 0.05 each. -> The probability that Bob wins depends on which letter he got. -> Letting $$h$$ denote the letter and letting $$Q(h)$$ denote the numeric position of that letter in the word "game" (e.g., $$Q(\text{g}) = 1, Q(\text{a}) = 2$$, and so on), the probability of winning is $$1/Q(h)^2$$. -> -> Suppose that we observe Bob winning but we don't know what letter he got. -> How can we use the observation that he won to update our beliefs about which letter he got? -> Let's express this formally. -> Before we begin, a bit of terminology: the set of letters that Bob could have gotten, $$\{g, a, m, e\}$$, is called the *hypothesis space* -- it's our set of hypotheses about the letter. - -### a) - -> In English, what does the posterior probability $$p(h \mid \text{win})$$ represent? - -Given that Bob wins, which letter did he probably draw? - -### b) - -> Manually compute $$p(h \mid \text{win})$$ for each hypothesis. -> Remember to normalize --- make sure that summing all your $$p(h \mid \text{win})$$ values gives you 1. - -Using Bayes rule, - -$$ P(h \mid \text{win}) \propto P(h) \cdot P(\text{win} \mid h) $$ - -Let $$Z$$ be the sum of $$ P(h) \cdot P(\text{win} \mid h) $$ across all values of $$h$$. - -| $$h$$ | $$p(h)$$ | $$p(\text{win}\mid h)$$ | $$p(h \mid \text{win})$$ | -| ----- | -------- | ------------------------ |------------------------- | -| g | 0.05 | 1 | 0.05 / Z = 0.255 | -| a | 0.45 | 1/4 | 0.45/4 / Z = 0.573 | -| m | 0.05 | 1/9 | 0.05/9 / Z = 0.028 | -| e | 0.45 | 1/16 | 0.45/16 / Z = 0.143 | - -### d) - -> Now, we're going to write this model in WebPPL using `Infer`. Here is some starter code for you: - -~~~~ -// define some variables and utility functions -var checkVowel = function(letter) {return _.contains(['a', 'e', 'i', 'o', 'u'], letter);} -var letterVals = ['g', 'a', 'm', 'e']; -var letterProbs = map(function(letter) {return checkVowel(letter) ? 0.45 : 0.05;}, letterVals); -var letters = Categorical({vs: letterVals, ps: letterProbs}) - -// Compute p(h | win) -var distribution = Infer({method: 'enumerate'}, function() { - var letter = sample(letters); - var position = letterVals.indexOf(letter) + 1; - var winProb = 1 / Math.pow(position, 2); - var win = flip(winProb); - condition(win) - return letter; -}); -viz.auto(distribution); -viz.table(distribution); -~~~~ - -> Fill in the `...`'s in the code to compute $$p(h \mid \text{win})$$. -> Include a screenshot of the resulting graph. -> What letter has the highest posterior probability? - -`a` - -> In English, what does it mean that this letter has the highest posterior? - -If we had to guess a letter, `a` would be the best one. It's both likely to be drawn a priori (because it's a vowel) and likely to result in a win if Bob drew it. - -> It might be interesting to comment out the `condition` statement so you can compare visually the prior (no `condition` statement) to the posterior (with `condition`). -> -> Make sure that your WebPPL answers and hand-computed answers agree -- note that this demonstrates the equivalence between the program view of conditional probability and the distributional view. - -### e) - -Which is higher, $$p(\text{vowel} \mid \text{win})$$ or $$p(\text{consonant} \mid \text{win})$$? -Answer this using the WebPPL code you wrote *Hint:* use the `checkVowel` function. - -~~~~ -// define some variables and utility functions -var checkVowel = function(letter) {return _.contains(['a', 'e', 'i', 'o', 'u'], letter);} -var letterVals = ['g', 'a', 'm', 'e']; -var letterProbs = map(function(letter) {return checkVowel(letter) ? 0.45 : 0.05;}, letterVals); -var letters = Categorical({vs: letterVals, ps: letterProbs}) - -// Compute p(h | win) -var distribution = Infer({method: 'enumerate'}, function() { - var letter = sample(letters); - var position = letterVals.indexOf(letter) + 1; - var winProb = 1 / Math.pow(position, 2); - condition(...) - return ... -}); -viz.auto(distribution); -~~~~ - -A vowel is more likely ($$P(vowel) = 0.7168141592920354$$) than a consonant ($$P(vowel) = 0.28318584070796465 $$) - -### f) - -> What difference do you see between your code and the mathematical notation? -> What are the advantages and disadvantages of each? -> Which do you prefer? - -The mathematical notation is more precise in some cases (we might get some rounding errors on the computer), but it's less error prone, easier to think about, and much easier to extend. What if we did this with all the letters of the alphabet instead? That would be tedious. - - diff --git a/solutions/04-patterns-of-inference.md b/solutions/04-patterns-of-inference.md deleted file mode 100755 index cb7ac08..0000000 --- a/solutions/04-patterns-of-inference.md +++ /dev/null @@ -1,222 +0,0 @@ ---- -layout: exercise -title: Patterns of inference - solutions ---- - -## Exercise 1: Causal and statistical dependency. - -> For each of the following programs: -> -> * Draw the dependency diagram (Bayes net). If you don't have software on your computer for doing this, Google Docs has a decent interface for creating drawings. -> -> * Use informal evaluation order reasoning and the intervention method to determine causal dependency between A and B. -> -> * Use conditioning to determine whether A and B are statistically dependent. - -### a) - -~~~~ -var a = flip() -var b = flip() -var c = flip(a && b ? .8 : .5) -~~~~ - -![](../assets/img/04_01_a.png) - -### b) - -~~~~ -var a = flip() -var b = flip(a ? .9 : .2) -var c = flip(b ? .7 : .1) -~~~~ - -![](../assets/img/04_01_b.png) - -### c) - -~~~~ -var a = flip() -var b = flip(a ? .9 : .2) -var c = flip(a ? .7 : .1) -~~~~ - -![](../assets/img/04_01_c.png) - -d) - -~~~~ -var a = flip(.6) -var c = flip(.1) -var z = flip() ? a : c; -var b = z ? 'foo' : 'bar' -~~~~ - -![](../assets/img/04_01_d.png) - -e) - -~~~~ -var examFairPrior = Bernoulli({p: .8}) -var doesHomeworkPrior = Bernoulli({p: .8}) -var examFair = mem(function(exam) {return sample(examFairPrior)}) -var doesHomework = mem(function(student) {return sample(doesHomeworkPrior)}); - -var pass = function(student, exam) { - return flip(examFair(exam) ? - (doesHomework(student) ? .9 : .5) : - (doesHomework(student) ? .2 : .1)); -} -var a = pass('alice', 'historyExam'); -var b = pass('bob', 'historyExam'); -~~~~ - -![](../assets/img/04_01_e.png) - - - -## Exercise 2: Epidemiology - -> Imagine that you are an epidemiologist and you are determining people's cause of death. In this simplified world, there are two main diseases, cancer and the common cold. People rarely have cancer, $$p( \text{cancer}) = 0.00001$$, but when they do have cancer, it is often fatal, $$p( \text{death} \mid \text{cancer} ) = 0.9$$. People are much more likely to have a common cold, $$p( \text{cold} ) = 0.2$$, but it is rarely fatal, $$p( \text{death} \mid \text{cold} ) = 0.00006$$. Very rarely, people also die of other causes $$p(\text{death} \mid \text{other}) = 0.000000001$$. -> -> Write this model in WebPPL and use `Infer` to answer these questions (Be sure to include your code in your answer): - -~~~~ -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.2) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - return {cancer: cancer, cold: cold, death: death}; -})); -~~~~ - -### a) - -> Compute $$p( \text{cancer} \mid \text{death} , \text{cold} )$$ and $$p( \text{cancer} \mid \text{death} , \text{no cold} )$$. How do these probabilities compare to $$p( \text{cancer} \mid \text{death} )$$ and $$p( \text{cancer} )$$? Using these probabilities, give an example of explaining away. - -Prior | 0.00001 -Given death | 0.42855 -Given death and cold | 0.13043 -Given death and no cold | 0.99989 - -Having a cold explains away the death. -Given only the information that a person died, cancer is relatively likely. -When we learn the person also had a cold, this probability of cancer goes down, not down to prior levels, but pretty unlikely. -If we instead learn that the person died and did not have a cold, we become almost certain that the person died of cancer. - - -~~~~ -display("(prior)") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - return cancer; -})); - -display("death") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death); - return cancer; -})); - -display("death and cold") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && cold) - return cancer; -})); - -display("death and no cold") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && !cold) - return cancer; -})); -~~~~ - -### b) - -> Compute $$p( \text{cold} \mid \text{death} , \text{cancer} )$$ and $$p( \text{cold} \mid \text{death} , \text{no cancer} )$$. How do these probabilities compare to $$p( \text{cold} \mid \text{death} )$$ and $$p( \text{cold} )$$? Using these probabilities, give an example of explaining away. - -Prior | 0.20 -Given death | 0.66 -Given death and cancer | 0.20 -Given death and no cancer | 0.99 - -Having cancer *really* explains away the death. -Given only the information that a person died, a cold is very likely. -When we learn the person also had cancer, this probability goes back down to almost exactly the prior. -If we instead learn that the person *didn't* have cancer, we become almost certain they died of a cold. - - -~~~~ -display("(prior)") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - return cold; -})); - -display("death") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death); - return cold; -})); - -display("death and cancer") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && cancer) - return cold; -})); - -display("death and no cancer") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer ? flip(0.9) : false; - var death_by_cold = cold ? flip(0.00006) : false; - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && !cancer) - return cold; -})); -~~~~ diff --git a/solutions/04.1-agents-as-programs.md b/solutions/04.1-agents-as-programs.md deleted file mode 100755 index 7d69e7f..0000000 --- a/solutions/04.1-agents-as-programs.md +++ /dev/null @@ -1,424 +0,0 @@ ---- -layout: exercise -title: Agents as Probabilistic Programs - exercises -custom_js: -- assets/js/box2d.js -- assets/js/physics.js ---- - -## Exercise 1: Factors - -### a) - -*Take our standard coin-flipping model. Use `factor` to create a "soft" condition on the outcome being heads, such that there is an approx. 95% chance of heads.* - -```js -var dist = Infer({method: 'enumerate'}, - function () { - var A = flip() - factor(A*3) //edit this line - return A -}); -viz(dist) -``` - -![](Figures/agents-as-programs-1.png) - -This is actually quite close to 95%: - -`{"probs":[0.04742587317756678,0.9525741268224333],"support":[false,true]}` - - -### b) - -In this model, we flip 3 coins. Use `factor` to favor an outcome of 2 heads and 1 tails: - -```js -var softHeads = Infer({}, function() { - var a = flip(0.5); - var b = flip(0.5); - var c = flip(0.5); - factor(1*((a+b+c)==2)); - return a; - } -}); - -viz(softHeads); -``` - -![](Figures/agents-as-programs-2.png) - -## Exercise 2: The Ultimatum Game - -### a) - -*The ultimatum game requires two players: A proposer and a responder. The proposer has to decide how to allocate \$10 between the two players in \$1 increments. Once this proposal is made, the responder decides whether to accept the proposal. If the responder accepts, both players are awarded the money according to the proposal. If the responder rejects, neither player gets anything.* - -*If the responder was a strict utilitarian, s/he would accept any offer of \$1 or more. Assume the proposer is a soft maximizer who wants to keep as much of the \$10 as possible. Complete the code below to find out how much the proposer will offer:* - -~~~~ -var responder = function(offer) { - - return (offer>0 ? true : false); - -} - -var proposer = Infer({method: "enumerate"}, function(){ - - var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward = responder(offer) ? (10 - offer) : 0; - - factor(reward) - return(offer) - }) - -viz(proposer); -~~~~ - -![](Figures/agents-as-programs-3.png) - -### b) - -*People, it turns out, act very differently than the model above suggests. Responders will often reject low offers as "unfair", even though this means they get nothing. Assume that the responder decides whether to accept in proportion to the percentage of the \$10 allocated to her, raised to some power `alpha` (you can think of `alpha` as "spitefulness"). Complete the code below to determine how much the proposer should offer:* - -```js -var alpha = 2 - -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer = Infer({method: "enumerate"}, function(){ - var offer = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward = responder(offer,alpha) ? (10 - offer) : 0; - factor(reward) - return(offer) - }) - -viz(proposer); -``` - -![](Figures/agents-as-programs-4.png) - -### c) - -*You can think of the variable `alpha` in the code above as encoding spitefulness: the degree to which the responder is willing to forego a reward in order to prevent the proposer from having a reward. See how setting `alpha` to 4, 6, 10, 25, and 50 affects what the proposer does. Explain the results.* - -~![](Figures/agents-as-programs-5-1.png) -~![](Figures/agents-as-programs-5-2.png) -~![](Figures/agents-as-programs-5-3.png) -~![](Figures/agents-as-programs-5-4.png) -~![](Figures/agents-as-programs-5-5.png) - -As alpha increases, the responder becomes increasingly unlikely to accept any offer less than \$10. Thus, no matter what the proposer offers, she'll probably end up with \$0. This makes her indifferent to the choice. - -### d) - -*The models above assume the proposer knows the responder's decision function. Let's soften that assumption: the proposer knows that the responder's value of `alpha` is somewhere on the range [0.5, 5]. Suppose the proposer offered \$2 and the responder rejects it. What is the most likely level of `alpha`?* - -(Hint: you may find it helpful to find a different place for `alpha` than within the definition of `responder`.) - -```js -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer = Infer({method: "MCMC", samples:50000}, function(){ - var alpha = uniform(0.5,5) - var offer = 2; - var reward = responder(offer, alpha) ? (10 - offer) : 0; - condition(reward==0) - return(alpha) -}) - -viz(proposer) -``` - -![](Figures/agents-as-programs-6.png) - - -### e) - -*Again, suppose the proposer offered \$2 and the responder rejected it. Suppose they are going to play a second round. How much should the proposer offer? How does this change if the first (rejected) offer was \$8?* - -Here is a straight-forward if not especially computationally-efficient model: - -```js -var responder = function(offer, alpha) { - var p = Math.pow(offer/10,alpha) - return(flip(p)); -} - -var proposer1 = Infer({method: "MCMC", samples:50000}, function(){ - var alpha = uniform(0.5,5) - var offer1 = 2 - var reward1 = responder(offer1, alpha) ? (10 - offer1): 0; - condition(reward1==0) - return(alpha) -}) - -var makeoffer = Infer({method: "forward", samples:1000}, function(){ - - var alpha2 = sample(proposer1) - - var proposer2 = Infer({method: "MCMC", samples:5000}, function(){ - var offer2 = uniformDraw([0,1,2,3,4,5,6,7,8,9,10]); - var reward2 = responder(offer2, alpha2) ? (10 - offer2) : 0 - factor(reward2) - return(offer2) - }) - - return sample(proposer2) -}); - -viz(makeoffer) -``` - -With offer1 = 2: - -![](Figures/agents-as-programs-7-1.png) - -With offer1 = 8: - -![](Figures/agents-as-programs-7-2.png) - -The differences are underwhelming. The reason is `factor(reward2)` actually puts a lot of pressure on the proposer getting a large payout. If we change `factor(reward2)` to `factor(Math.pow(reward2,1))`, we get more impressive differences. - -With offer1 = 2: - -![](Figures/agents-as-programs-7-3.png) - -With offer1 = 8: - -![](Figures/agents-as-programs-7-4.png) - -## Exercise 3: The Prisoner's Dilemma - -*In the prisoner's dilemma, two thieves work together on a bank heist. Afterwards, they are apprehended by the police. The police interrogate the thieves separately. They tell each thief that if she confesses, she will get a lenient sentence. If not, she will get 10 years. However, the thieves know that the police need at least one of them to confess; if neither of them confesses, the police don't have enough evidence to charge them, and they will both go free.* - -*What's the longest the lenient sentence can be (in round years) such that it makes sense for the thief to confess (that is, where she has a greater than 50% chance of confessing)? Use `factor(percentYearsFreedom)` where `percentYearsFreedom` is the percentage of the next 10 years the thief will not be in jail. (Assume that this incident has scared her straight and she will not commit any other crimes.)* - -```js -var thiefRats = function(){ - return (flip()? true: false) -} - -var lenient = 6 - -var thief = Infer({}, function(){ - var otherThiefRats = thiefRats(); - var IRat = thiefRats(); - var years = (otherThiefRats? - (IRat? lenient : 10) : - (IRat? lenient : 0)); - var percentYearsFreedom = (10-years)/10 - factor(percentYearsFreedom) - return(IRat) -}) - -viz(thief) -``` - -From trial-and-error, if the lenient sentence is 6 years, the thief should be indifferent. - -![](Figures/agents-as-programs-11.png) - -Alternatively, you can infer the correct answer as follows: - -```js -var sentences = RandomInteger({n:10}) - -var thiefRats = function(){ - return (flip()? true: false) -} - -var thief = Infer({}, function(){ - var LenientSentence = sample(sentences); - var iRat = thiefRats() - var uRat = thiefRats() - var percentYearsFreedom = 1 - (iRat ? LenientSentence/10 : (uRat ? LenientSentence/10 : 0)) - factor (1*(percentYearsFreedom > .5)) - return LenientSentence -}) - -viz(thief) -``` - -![](Figures/agents-as-programs-12.png) - -As you can see, we end up prefering lenient sentences no longer than 4 years. - -## Exercise 4: Exploring RSA - -For this exercise, modify the RSA model introduced in the main text as necessary. - -### a) - -*How does increasing the optimality of the speaker affect the pragmatic listener's inferences? Try a couple values and report the results.* - -For convenience, we turn `alpha` into a parameter: - -```js -// Here is the code from the Frank and Goodman RSA model - -// possible objects of reference -var meaningPrior = function() { - uniformDraw([ - {shape: "square", color: "blue"}, - {shape: "circle", color: "blue"}, - {shape: "square", color: "green"} - ]) -} - -// possible one-word utterances -var utterances = ["blue","green","square","circle"] - -// meaning function to interpret the utterances -var meaning = function(utterance, obj){ - (utterance === "blue" || utterance === "green") ? utterance === obj.color : - (utterance === "circle" || utterance === "square") ? utterance === obj.shape : - true -} - -// literal listener -var literalListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior(); - condition(meaning(utterance, obj)) - return obj - }}) -} - -// pragmatic speaker -var speaker = function(obj,alpha){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * literalListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener -var pragmaticListener = function(utterance,alpha){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker(obj,alpha),utterance) - return obj - }}) -} - - -print("pragmatic listener's interpretation of 'blue', given alpha = 0.01:") -viz.table(pragmaticListener("blue", 0.01)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 1:") -viz.table(pragmaticListener("blue", 1)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 4:") -viz.table(pragmaticListener("blue", 4)) - -print("pragmatic listener's interpretation of 'blue', given alpha = 10:") -viz.table(pragmaticListener("blue", 10)) -``` - -![](Figures/agents-as-programs-8.png) - -As `alpha` increases, the pragmatic listener is increasingly likely to interpret `blue` as referring to the blue square. - -### b) - -*How do the inferences of $$L_{2}$$ compare to those of $$L_{1}$$?* - -```js -// Here is the code from the Frank and Goodman RSA model - -// possible objects of reference -var meaningPrior = function() { - uniformDraw([ - {shape: "square", color: "blue"}, - {shape: "circle", color: "blue"}, - {shape: "square", color: "green"} - ]) -} - -// possible one-word utterances -var utterances = ["blue","green","square","circle"] - -// meaning function to interpret the utterances -var meaning = function(utterance, obj){ - (utterance === "blue" || utterance === "green") ? utterance === obj.color : - (utterance === "circle" || utterance === "square") ? utterance === obj.shape : - true -} - -var alpha = 1 - -// literal listener -var literalListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior(); - condition(meaning(utterance, obj)) - return obj - }}) -} - -// pragmatic speaker -var speaker = function(obj){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * literalListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener -var pragmaticListener = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker(obj),utterance) - return obj - }}) -} - -// pragmatic speaker2 -var speaker2 = function(obj){ - Infer({model: function(){ - var utterance = uniformDraw(utterances) - factor(alpha * pragmaticListener(utterance).score(obj)) - return utterance - }}) -} - -// pragmatic listener #2 -var listener3 = function(utterance){ - Infer({model: function(){ - var obj = meaningPrior() - observe(speaker2(obj),utterance) - return obj - }}) -} - -print("L1's interpretation of 'blue'") -viz.table(pragmaticListener("blue")) - -print("L2's interpretation of 'blue'") -viz.table(listener3("blue")) -``` - -![](Figures/agents-as-programs-9.png) - -There is little additional effect. - -### c) - -*Add a blue circle to the scenario. What happens to the interpretion of "blue"? Why?* - -It becomes 50/50 between 'blue circle' and 'blue square'. This is because 'blue' is now useful for distinguishing between the two circles as well. - -### d) - -*Is there any way to get “blue” to refer to something green? Why or why not?* - -In this model, the literal listener expects the speaker to tell the literal truth, albeit with some noise. So there is no way to prefer an interpretation that is literally false to one that is literally true. So we'd need to relax the assumption that the literal listener expects the speaker to always tell the truth. \ No newline at end of file diff --git a/solutions/05.1-sequential-decisions.md b/solutions/05.1-sequential-decisions.md deleted file mode 100755 index 9df0e00..0000000 --- a/solutions/05.1-sequential-decisions.md +++ /dev/null @@ -1,407 +0,0 @@ ---- -layout: exercise -title: "Sequential decisions" -description: "Markov Decision Processes and Partially-Observable Markof Decision Processes" ---- - -## Exercise 1 - -Consider our "line-world" example from the chapter: - -'''js -var ___ = ' '; -var D = { name: 'Donut' }; - -var grid = [ - ['___', '___', '___', '___', D] -]; - -var mdp = makeGridWorldMDP({ grid, start: [0, 0] }); - -var transition = function(state, action) { - return state + action; -}; - -var utility = function(state) { - if (state === 4) { - return 1; - } else { - return 0; - } -}; - -var makeAgent = function() { - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-1, 0, 1]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; - - var expectedUtility = function(state, action, timeLeft) { - var u = utility(state, action); - var newTimeLeft = timeLeft - 1; - if (newTimeLeft === 0) { - return u; - } else { - return u + expectation(Infer({ model() { - var nextState = transition(state, action); - var nextAction = sample(act(nextState, newTimeLeft)); - return expectedUtility(nextState, nextAction, newTimeLeft); - }})); - } - }; - - return { act }; -} - - -var act = makeAgent().act; - -var simulate = function(state, timeLeft){ - if (timeLeft === 0){ - return []; - } else { - var action = sample(act(state, timeLeft)); - var nextState = transition(state, action); - return [state].concat(simulate(nextState, timeLeft - 1)) - } -}; - -var startState = 0; -var totalTime = 5; -viz.gridworld(mdp.world, { trajectory : [mdp.startState] }); -print("Agent's trajectory: " + simulate(startState, totalTime)); -''' - -### a) -*Change the world such that it is a loop, i.e. moving right from state `4` moves to state `0`, and moving left from state `0` moves to state `4`. How does this change the agent's sequence of actions?* - -Edit `transition()` to: - -```js -var transition = function(state, action) { - var nextstate = state + action - return (nextstate < 0) ? 4 : - (nextstate > 4) ? 0 : - nextstate; -}; -``` - -Agent now moves left to arrive at Donut shopt in a single move. - -![](Figures/sequential-decisions-1.PNG) - - -### b) -*Change the agent's action space such that the agent can also move two steps at a time. How does this change the agent's sequence of actions?* - -Edit `act()` as follows: - -```js - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-2, -1, 0, 1, 2]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; -``` - -Agent now only requires two moves to reach donut shop. - -![](Figures/sequential-decisions-2.PNG) - -### c) -*Change the agent's utility function such that the agent moves as far as possible to the right, given its available total time.* - -Edit `utility()` as follows: - -```js -var utility = function(state) { - return state; -}; -``` - -Agent now moves right on every time step. This is easiest to see if we increase the total amount of time (e.g., `var totalTime = 7`): - -![](Figures/sequential-decisions-3.PNG) - -## Exercise 2 - -*Consider this "line-world" involving a cookie shop and a donut shop. Bob starts out in between the donut shop and the cookie shop. Assume you observe Bob go to the donut shop in 3 time steps. Edit the code above to write a model to *infer* Bob's utility function for cookies and donuts. Use any reasonable prior.* - -~~~~ -// Anything that doesn't involve random choices can be put outside of the model - -var ___ = ' '; -var D = { name: 'Donut' }; -var C = { name: 'Cookie' }; - - var grid = [ - [C, '___', '___', '___', '___', '___', D] - ]; - -var mdp = makeGridWorldMDP({ grid, start: [3, 0] }); - -var transition = function(state, action) { - return state + action; - }; - -var model = function() { - - let utilities = [sample(Uniform({a: 0, b: 10})), sample(Uniform({a: 0, b: 10}))] - var utility = function(state) { - return (state == 0) ? utilities[0] : - (state == 6) ? utilities[1] : - 0; - }; - - var makeAgent = function() { - var act = function(state, timeLeft) { - return Infer({ model() { - var action = uniformDraw([-1, 0, 1]); - var eu = expectedUtility(state, action, timeLeft); - factor(100 * eu); - return action; - }}); - }; - - var expectedUtility = function(state, action, timeLeft) { - var u = utility(state, action); - var newTimeLeft = timeLeft - 1; - if (newTimeLeft === 0) { - return u; - } else { - return u + expectation(Infer({ model() { - var nextState = transition(state, action); - var nextAction = sample(act(nextState, newTimeLeft)); - return expectedUtility(nextState, nextAction, newTimeLeft); - }})); - } - }; - - return { act }; - } - - var act = makeAgent().act; - - var simulate = function(state, timeLeft){ - if (timeLeft === 0){ - return []; - } else { - var action = sample(act(state, timeLeft)); - var nextState = transition(state, action); - return [state].concat(simulate(nextState, timeLeft - 1)) - } - }; - - var startState = 3; - var totalTime = 4; - let path = simulate(startState, totalTime); - condition(path[3] == 6); - return { - Cookie: utilities[0], - Donut: utilities[1] - } - } - -var post = Infer({method: 'MCMC', samples: 10000}, model) -viz(post); -~~~~ - -![](Figures/sequential-decisions-4.PNG) - -Rejection sampling also works pretty well. This is with only 1,000 samples: - -![](Figures/sequential-decisions-5.PNG) - -Either way, we infer that the utility for Donut is likely to be at least slightly higher than that of Cookie. - - -## Exercise 3 - -*Use the codebox below to explore different levels of softmax noise. Find a setting of `utilityTable` and `alpha` such that the agent goes to West and East equally often and nearly always takes the most direct route to both East and West. Included below is code for simulating many trajectories and returning the trajectory length. You may find it helpful to extend this code to measure whether the route taken by the agent is direct or not.* - -The following code is useful for iteratively adjusting the parameters until the desired result is found. - -```js -///fold: -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; -viz.gridworld(world) -/// - - -var utilityTable = { - East: 10, - West: 5.91, - Hill: -10, - timeCost: -1 -} - -var alpha = 5; // <- SOFTMAX NOISE - -// Create parameterized agent -var utility = makeUtilityFunction(utilityTable); -var agent = makeMDPAgent({ utility, alpha }, world); - -var trajectories = Infer({model() { - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - return {locs} - }, - method: 'forward', - samples: 100000 -}); -viz.table(trajectories) -``` - -Note that the parameters given provide a nice result: - - - - -So we can definitely pick some values by trial and error. But that's boring. Let's infer it instead. The utility of West has to be less than the utility of East, or we'd never go to east. So let's fix the utility of East at 10 and find a value for West that is smaller. We'll also pick an alpha. Let's constrain it to between 0.1 and 6.0, just so we don't have too large of a space to search. - -Now, we'll factor an equal number of times on having gone straight to West and having gone straight to East. - -```js -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; - -viz.gridworld(world) -var vals = Infer({ - model() { - var West = uniform({a: 1, b: 10}) - var utilityTable = { - East: 10, - West: West, - Hill: -10, - timeCost: -.1 - } - - // Create parameterized agent - var utility = makeUtilityFunction(utilityTable); - var alpha = uniform(0.1, 5); // <- SOFTMAX NOISE - var agent = makeMDPAgent({ utility, alpha }, world); - repeat(10, function(){ - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - factor(1*(locs == [[0,1],[1,1],[2,1],[2,2]])) - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - factor(1*(locs == [[0,1],[1,1],[2,1],[3,1],[4,1],[4,2]])) - }) - return {West: West, alpha: alpha} - }, - method: 'MCMC', - samples: 5000 -}); -repeat(10,function(){print(sample(vals))}) -``` - -![](Figures/sequential-decisions-6.PNG) - -We can see that a value of West near 9.0 and alpha near 0.4 tends to work. Let's confirm this through forward simulation - -```js -///fold: -var makeHikeMDP = function(options) { - var H = { name: 'Hill' }; - var W = { name: 'West' }; - var E = { name: 'East' }; - var ___ = ' '; - var grid = [ - [___, ___, ___, ___, ___], - [___, '#', ___, ___, ___], - [___, '#', W , '#', E ], - [___, ___, ___, ___, ___], - [ H , H , H , H , H ] - ]; - return makeGridWorldMDP(_.assign({ grid }, options)); -}; - -var mdp = makeHikeMDP({ - start: [0, 1], - totalTime: 13, - transitionNoiseProbability: 0.1 -}); - -var world = mdp.world; -var startState = mdp.startState; -var makeUtilityFunction = mdp.makeUtilityFunction; -viz.gridworld(world) -/// - - -var utilityTable = { - East: 10, - West: 3, - Hill: -10, - timeCost: -.1 -} - -var alpha = 0.4; // <- SOFTMAX NOISE - -// Create parameterized agent -var utility = makeUtilityFunction(utilityTable); -var agent = makeMDPAgent({ utility, alpha }, world); - -var trajectories = Infer({model() { - var trajectory = simulateMDP(startState, world, agent); - var locs = map(function(v){return(v.loc)}, trajectory) - return {locs} - }, - method: 'forward', - samples: 10000 -}); -viz.table(trajectories) -``` \ No newline at end of file diff --git a/solutions/08-learning-as-conditional-inference.md b/solutions/08-learning-as-conditional-inference.md deleted file mode 100755 index 42e22b4..0000000 --- a/solutions/08-learning-as-conditional-inference.md +++ /dev/null @@ -1,440 +0,0 @@ ---- -layout: exercise -title: learning - exercises ---- - -## 1. Calculating learning curves - -#### a) - -How does a *learning curve* differ from a *learning trajectory*? - -*A learning curve depicts how much one knows as a function of experience. A learning trajectory depicts how one's beliefs change as a function of experience.* - -#### b) - -In the chapter, we graphed *learning trajectories* for a number of models. Below is one of these models (the one with the Beta(10,10) prior). In the chapter, we observed how the model's best guess as to the weight of the coin changed across a sequence of sucessive heads. See what happens if instead we see heads and tails in alternation: - -(Notice that we make use of [globalStore](https://webppl.readthedocs.io/en/master/globalstore.html) to create our data set.) - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; -/// - -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -//creating 50 pairs of 'h' and 't' alternating -globalStore.fullDataSet = ['h', 't'] -var ignore = repeat(49, function(){ - globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) -}); - -var observedDataSizes = [0,2,4,6,8,10,20,30,40,50,70,100]; -var estimates = map(function(N) { - return expectation(weightPosterior(globalStore.fullDataSet.slice(0,N))) -}, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -It looks like we haven't learned anything! Indeed, since our best estimate for the coin's weight was 0.5 *prior* to observing anything, our best estimate is hardly going to change when we get data consistent with that prior. - -The problem is that we've been looking at the MAP (maximum a posteriori) estimate. Edit the code below to see whether our posterior *distribution* is at all changed by observing this data set. (You only need to compare the prior and the posterior after all 100 observations): - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; - -var pseudoCounts = {a: 10, b: 10}; - -//creating 50 pairs of 'h' and 't' alternating -globalStore.fullDataSet = ['h', 't'] -var ignore = repeat(49, function(){ - globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) -}); -/// - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -var prior = Beta(pseudoCounts) -var post = weightPosterior(globalStore.fullDataSet) - -viz(prior); //should graph the prior distribution on weights -viz(post); //should graph the posterior distribution on weights -~~~~ - -![](Figures/learning-as-inference-1.PNG) - -#### c) - -Ideally, we'd like to see how our belief distribution shifts as more data comes in. A particularly good measure would be entropy. Unfortunately, calculating entropy for a Beta distribution is [somewhat involved](https://en.wikipedia.org/wiki/Beta_distribution#Quantities_of_information_(entropy)). - -A somewhat hacky alternative we can use is variance: the expected squared difference between a sample from the distribution and the distribution mean. This is hacky because it doesn't take into account the shape of the distribution, and so won't give us quite what we want if the distribution is non-symmetric. - -Edit the code below to see how variance changes as more data is observed. - -~~~~js -///fold: -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't'; - } -}; - -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta({a: pseudoCounts.a, b: pseudoCounts.b})) - var coinDist = Bernoulli({p: coinWeight}) - var obsFn = function(datum){observe(coinDist, datum=='h')} - mapData({data: observedData}, obsFn) - return coinWeight - }) -} - -//creating 256 pairs of 'h' and 't' alternating -globalStore.fullDataSet = ['h', 't'] -var ignore = repeat(499, function(){ - globalStore.fullDataSet = globalStore.fullDataSet.concat(['h','t']) -}); -/// - -var observedDataSizes = [0,2,4,8,16,32,64,128,256,512]; -var posts = map(function(N) { - return weightPosterior(globalStore.fullDataSet.slice(0,N)) -}, observedDataSizes); -// returns an array of posteriors of length observedDataSizes.length - -var variances = mapN(function(i){ - var mymean = expectation(Infer({method: 'forward', samples:1000}, function(){ - return sample(posts[i]) - })) - var variance = expectation(Infer({method: 'forward', samples:1000}, function(){ - return Math.pow(sample(posts[i]) - mymean,2) - })) - return(variance) -}, observedDataSizes.length) - -viz.line(observedDataSizes, variances); -~~~~ - -![](Figures/learning-as-inference-2.PNG) - -## 2. Causal Power - -Consider our model of causal power from the chapter: - -~~~~js -var observedData = [{C:true, E:false}] - -var causalPowerPost = Infer({method: 'MCMC', samples: 10000, lag:2}, function() { - // Causal power of C to cause E - var cp = uniform(0, 1) - - // Background probability of E - var b = uniform(0, 1) - - var obsFn = function(datum) { - // The noisy causal relation to get E given C - var E = (datum.C && flip(cp)) || flip(b) - condition( E == datum.E) - } - - mapData({data: observedData}, obsFn) - - return {causal_power: cp, background: b} -}); - -viz.marginals(causalPowerPost); -~~~~ - -#### a) - -Find a set of observations that result in inferring a fairly high causal power for C and a low background probability of E. Explain why this works. - -```js -var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:false, E:false},{C:false, E:false},{C:false, E:false}] -``` - -![](Figures/learning-as-inference-3.PNG) - -*The fact that we never observe E even in the absence of C suggests a low baserate of E. Given that, and the fact that we do see E when C is present suggests a high causal power for C.* - -#### b) - -Find a set of observations that result in inferring a fairly low causal power for C and a high background probability of E. Explain why this works. - -```js -var observedData = [{C:true, E:false},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}] -``` - -*We frequently see E regardless of the presence of C, suggesting a high background rate. The only time we didn't observe E was the one time C was actually present, suggesting low causal power for C.* - -![](Figures/learning-as-inference-5.PNG) - -#### c) - -Find a set of observations that result in inferring a fairly high causal power for C and a high background probability of E. Explain why this works. - -```js -var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true}] -``` - -*One option is to observe C a number of times with E present. This is ambiguous between a high causal power for C and a high background rate of E, so both are considered reasonably likely.* - -![](Figures/learning-as-inference-6.PNG) - -#### d) - -Suppose every time C is present, so is the effect E. Suppose C is present at least 5 times. Is there a way to nonetheless fail to infer a high causal power for C? - -*Yes, given enough times observing E even in the absence of C:* - -```js -var observedData = [{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true},{C:true, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}, - {C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true},{C:false, E:true}]; -``` - -![](Figures/learning-as-inference-4.PNG) - -## 3. Inferring Functions - -Consider our model of function inference from the chapter: - -~~~~js -///fold: -// make expressions easier to look at -var prettify = function(e) { - if (e == 'x' || _.isNumber(e)) { - return e - } else { - var op = e[0] - var arg1 = prettify(e[1]) - var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') - var arg2 = prettify(e[2]) - var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') - return prettyarg1 + ' ' + op + ' ' + prettyarg2 - } -} - -var plus = function(a,b) { - return a + b; -} - -var multiply = function(a,b) { - return Math.round(a * b,0); -} - -var divide = function(a,b) { - return Math.round(a/b,0); -} - -var minus = function(a,b) { - return a - b; -} - -var power = function(a,b) { - return Math.pow(a,b); -} - -// make expressions runnable -var runify = function(e) { - if (e == 'x') { - return function(z) { return z } - } else if (_.isNumber(e)) { - return function(z) { return e } - } else { - var op = (e[0] == '+') ? plus : - (e[0] == '-') ? minus : - (e[0] == '*') ? multiply : - (e[0] == '/') ? divide : - power; - var arg1Fn = runify(e[1]) - var arg2Fn = runify(e[2]) - return function(z) { - return op(arg1Fn(z),arg2Fn(z)) - } - } -} - -var randomConstantFunction = function() { - return uniformDraw(_.range(10)) -} - -var randomCombination = function(f,g) { - var op = uniformDraw(['+','-','*','/','^']); - return [op, f, g]; -} - -// sample an arithmetic expression -var randomArithmeticExpression = function() { - if (flip(0.3)) { - return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) - } else { - if (flip()) { - return 'x' - } else { - return randomConstantFunction() - } - } -} -/// - -viz.table(Infer({method: 'enumerate', maxExecutions: 100}, function() { - var e = randomArithmeticExpression(); - var s = prettify(e); - var f = runify(e); - - condition(f(0) == 0) - condition(f(2) == 4) - - return {s: s}; -})) -~~~~ - -Why does this think the probability of `x * 2` is so much lower than `x * x`? - -HINT: Think about the probability assigned to `x ^ 2`. - -*The two expressions differ in the final draw from the recursive function `randomArithmeticExpression`. On each step through the function, there is a 0.3 * 0.5 = 0.15 chance of returning `x`, but only a 0.3 * 0.5 * 0.1 = 0.015 chance of drawing `2`.* - -#### b) - -Let's reconceptualize of our program as a sequence-generator. Suppose that the first number in the sequence ($$f(1)$$) is `1` and the second number ($$f(2)$$) is `4`. What number comes next? - -~~~~js -///fold: -// make expressions easier to look at -var prettify = function(e) { - if (e == 'x' || _.isNumber(e)) { - return e - } else { - var op = e[0] - var arg1 = prettify(e[1]) - var prettyarg1 = (!_.isArray(e[1]) ? arg1 : '(' + arg1 + ')') - var arg2 = prettify(e[2]) - var prettyarg2 = (!_.isArray(e[2]) ? arg2 : '(' + arg2 + ')') - return prettyarg1 + ' ' + op + ' ' + prettyarg2 - } -} - -var plus = function(a,b) { - return a + b; -} - -var multiply = function(a,b) { - return Math.round(a * b,0); -} - -var divide = function(a,b) { - return Math.round(a/b,0); -} - -var minus = function(a,b) { - return a - b; -} - -var power = function(a,b) { - return Math.pow(a,b); -} - -// make expressions runnable -var runify = function(e) { - if (e == 'x') { - return function(z) { return z } - } else if (_.isNumber(e)) { - return function(z) { return e } - } else { - var op = (e[0] == '+') ? plus : - (e[0] == '-') ? minus : - (e[0] == '*') ? multiply : - (e[0] == '/') ? divide : - power; - var arg1Fn = runify(e[1]) - var arg2Fn = runify(e[2]) - return function(z) { - return op(arg1Fn(z),arg2Fn(z)) - } - } -} - -var randomConstantFunction = function() { - return uniformDraw(_.range(10)) -} - -var randomCombination = function(f,g) { - var op = uniformDraw(['+','-','*','/','^']); - return [op, f, g]; -} - -// sample an arithmetic expression -var randomArithmeticExpression = function() { - if (flip(0.3)) { - return randomCombination(randomArithmeticExpression(), randomArithmeticExpression()) - } else { - if (flip()) { - return 'x' - } else { - return randomConstantFunction() - } - } -} -/// - -viz.table(Infer({method: 'enumerate', maxExecutions: 10000}, function() { - var e = randomArithmeticExpression(); - var s = prettify(e); - var f = runify(e); - - condition(f(1) == 1) - condition(f(2) == 4) - - return {'f(3)':f(3)}; -})) -~~~~ - -Not surprisingly, the model predicts `9` as the most likely next number. However, it also puts significant probability on `27`. Why does this happen? - -*These results are largely due to the high probability of the functions `x * x` and `x ^ x`, which return give `9` and `27` for `f(3)`, respectively.* - -#### c) - -Many people find the high probability assignmed by our model in (b) to `27` to be unintuitive. This suggests our model is an imperfect model of human intuitions. How could we decrease the probability of inferring `27`? (HINT: Consider the priors). - -*Currently, each function (`*`, `^`, `+`) is equally likely (they are drawn from a uniform distriution). We could decrease the probability of the latter function by decreasing the probability of drawing `^`. It seems reasonable that people are less likely to consider sequences made from powers, though this would need to be tested.* \ No newline at end of file diff --git a/solutions/09-hierarchical-models.md b/solutions/09-hierarchical-models.md deleted file mode 100755 index c913ee0..0000000 --- a/solutions/09-hierarchical-models.md +++ /dev/null @@ -1,211 +0,0 @@ ---- -layout: exercise -title: Hierarchical models -description: The power of abstraction. ---- - -## Exercise 1: Pseudocounts - -The main text states that you can think of the Dirichlet parameter $$\alpha = [\alpha_1, \alpha_2, ..., \alpha_n]$$ "as a kind of prior" over categories $$[A_1, A_2, ..., A_n]$$. α is not a prior in the usual sense, since it is not a probability distribution. What α represents instead is a virtual observation. Thus if $$\alpha = [2, 2, 1]$$, that is the equivalent of having already observed the first category and second category twice each, and the third category one time only. - -Complete the code below to prove that setting $$\alpha = [2, 3, 1, 1, 1]$$ is equivalent to setting $$\alpha = [1, 1, 1, 1, 1]$$ and then observing the first category once and the second category twice: - -~~~~js -var colors = ['black', 'blue', 'green', 'orange', 'red']; - -var observedData = [ -{bag: 'bag1', draw: 'blue'}, -{bag: 'bag1', draw: 'blue'}, -{bag: 'bag1', draw: 'black'}] - -var observed = Infer({method: 'MCMC', samples: 20000}, function(){ - var makeBag = mem(function(bag){ - var colorProbs = T.toScalars(dirichlet(ones([colors.length, 1]))) - return Categorical({vs: colors, ps: colorProbs}) - }) - - var obsFn = function(datum){ - observe(makeBag(datum.bag), datum.draw) - } - - mapData({data: observedData}, obsFn) - - return {bag1: sample(makeBag('bag1'))} -}) - -viz.marginals(observed) - -var usealpha = Infer({method: 'forward', samples: 20000}, function(){ - var makeBag = mem(function(bag){ - var colorProbs = T.toScalars(dirichlet(Vector([2,3,1,1,1]))) - return Categorical({vs: colors, ps: colorProbs}) - }) - - return {bag1: sample(makeBag('bag1'))} -}) - -viz.marginals(usealpha) -~~~~ - -## Exercise 2: Rotten apples - -On any given day, a given grocery store has some number of apples for sale. Some of these apples may be mushy or even rotten. The probability that each apple is rotten is not independent: a ripening fruit emits chemicals that encourages other fruit to ripen as well. As they say, [one rotten apple spoils the whole barrel](https://idiomation.wordpress.com/2013/03/27/one-bad-apple-spoils-the-whole-barrel/). - -For each apple in a barrel, assume the probability that the apple is rotten is `flip(p)` where `p` is drawn from some prior. An appropriate prior distribution is Beta. Recall that the Beta distribution is just a Dirichlet that returns a vector of length one. So it, too, is defined based on pseudocounts `[a, b]`. Thus `Beta({a: 10, b: 2})` returns the equivalent of a Beta distribution conditioned on having previously seen 10 heads and 2 tails. - -To get a sense of the Beta distribution, run the following code: - -~~~~js -viz(Beta({a: 1, b: 1}) -viz(Beta({a: 10, b: 1}) -viz(Beta({a: 1, b: 10}) -viz(Beta({a: .1, b: .2}) -~~~~ - -Note that the final example gives a very nice prior for our apples: most of the time, the probability of a rotten apple is quite low. The rest of the time, the probability is very high. Middling probabilities are rare. - -#### a) - -Write a function `makeBarrel` that returns a function (a 'barrel') that takes a single argument *N* and returns a vector representing the rottenness of *N* apples from that barrel (where `true` is rotten and `false` is not rotten). That is, the following code: - -```norun -var abarrel = makeBarrel('b') -abarrel(5) -``` - -should return something like `[true, true, true, false, true]`. - -Complete the following codebox: - -~~~~js -var makeBarrel = mem(function(barrel){ - var p = beta({a: .1, b: .2}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } -}) - -var post = Infer({method: 'forward'}, function(){ - var abarrel = makeBarrel('b') - return Math.sum(abarrel(10)) -}) -viz(post) -~~~~ - -#### b) - -Some grocery stores have fresher produce than others. So let's create a function `makeStore` that returns a makeBarrel function, which works as it did in (a). Importantly, each store has its own Beta parameters `[a, b]` drawn from some prior. - -HINT: In order to maintain the likelihood that in a given barrel, either most of the apples are rotten or few are, you need to ensure that `a < 1` and `b < 1`. However, if `a` is much larger than `b` (or vice versa), you will get extreme results with *every* apple being rotten or *every* apple being good. - -~~~~js -var makeStore = mem(function(store){ - var prior = flip() ? [.1, .3] : [.3, .1] - - var makeBarrel = mem(function(barrel){ - var p = beta({a: prior[0], b: prior[1]}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } - }) - - return makeBarrel -}) - -viz(Infer({method: 'forward', samples:10000}, function(){ - var S = makeStore('S') - var B1 = S('B1') - var B2 = S('B2') - return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) -})) - -viz(Infer({method: 'forward', samples:10000}, function(){ - var S1 = makeStore('S1') - var S2 = makeStore('S2') - var B1 = S1('B1') - var B2 = S2('B2') - return Math.abs(Math.sum(B1(10))-Math.sum(B2(10))) -})) -~~~~ - -#### c) - -We can keep going. Some cities are located in apple country and thus have more access to fresh apples. Most stores in those cities are going to mostly have good barrels with good apples. Other cities have less access to fresh apples, and so more of their stores will have bad barrels with rotten apples. - -In the code block below, create a `makeCity` function, which returns a `makeStore` function, which works as in (b). In (b), each store had a prior on `[a, b]`. Let's put a prior on *that* prior, such that cities either tend to have good stores or tend to have bad stores. - -NOTE: Again, it is not necessary to be overly fancy with these priors. - -~~~~js -var makeCity = mem(function(city){ - var hprior = beta({a: .25, b: .25}) - - var makeStore = mem(function(store){ - var prior = flip(hprior) ? [.1, .3] : [.3, .1] - - var makeBarrel = mem(function(barrel){ - var p = beta({a: prior[0], b: prior[1]}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } - }) - - return makeBarrel - }) - - return makeStore -}) - -var C1 = makeCity("C1") -var S1 = C1("S1") -var B1 = S1("B1") - -viz(Infer({method: 'forward'}, function(){ - return Math.sum(B1(10)) -})) -//repeat to see different kinds of cities -~~~~ - -#### d) - -Suppose you go to a store in a city. The store has a barrel of 10 apples, 7 of which are rotten. You leave and go to another store in the same city. It also has has a barrel with 10 apples. Using your code above, how many of these apples are likely to be rotten? - -~~~~js -var makeCity = mem(function(city){ - var hprior = beta({a: .25, b: .25}) - - var makeStore = mem(function(store){ - var prior = flip(hprior) ? [.1, .3] : [.3, .1] - - var makeBarrel = mem(function(barrel){ - var p = beta({a: prior[0], b: prior[1]}) - - return function(N){ - return repeat(N, function() {flip(p)}) - } - }) - - return makeBarrel - }) - - return makeStore -}) - -var amod = Infer({method: 'MCMC', samples:5000, lag: 100}, function(){ - var C = makeCity("C") - var S1 = C("S1") - var B1 = S1("B1") - - condition(Math.sum(B1(10)) == 7) - - var S2 = C("S2") - var B2 = S2("B2") - - return Math.sum(B2(10)) -}) - -viz(amod) -~~~~ \ No newline at end of file diff --git a/solutions/14-bayesian-data-analysis.md b/solutions/14-bayesian-data-analysis.md deleted file mode 100755 index 80d8adb..0000000 --- a/solutions/14-bayesian-data-analysis.md +++ /dev/null @@ -1,373 +0,0 @@ ---- -layout: exercise -title: Bayesian Data Analysis - solutions -custom_js: -- assets/js/towData.js -- assets/js/towConfigurations.js ---- - -## Exercise 1: Experimenting with priors and predictives - -### a) - -> Try different beta priors on `p`, by changing `priorDist = Uniform(...)` to `p = Beta({a: 10,b: 10})`, `Beta({a: 1, b: 5})` and `Beta({a: 0.1, b: 0.1})`. -> (Note that `beta(1,1)` is mathematically the same as `uniform(0,1)`.) -> Use the figures produced to describe the assumptions these priors capture, and how they interact with the same data to produce posterior inferences and predictions. - -`a` can intuitively be thought of as the number of tails flips we've seen before, and `b` as the number of heads flips. If `a` is greater than `b`, the distribution will be skewed to the left. If those numbers are less than `1`, we have strong intuitions against 50-50. - -### b) - -> In the current simple binomial setting, for example, predictive distributions could be found by an experiment that is different because it has `n' != n` observations. -> Change the model to implement an example of this. - -~~~~ -// observed data -var k = 1 // number of successes -var n = 20 // number of attempts -var new_n = 5 // number of attempts in the followup experiment -var priorDist = Beta({a: 1, b: 1}); - -var model = function() { - var p = sample(priorDist); - - // Observed k number of successes, assuming a binomial - observe(Binomial({p : p, n: n}), k); - - // sample from binomial with updated p - var posteriorPredictive = binomial(p, new_n); - - // sample fresh p (for visualization) - var prior_p = sample(priorDist); - // sample from binomial with fresh p (for visualization) - var priorPredictive = binomial(prior_p, n); - - return { - prior: prior_p, priorPredictive : priorPredictive, - posterior : p, posteriorPredictive : posteriorPredictive - }; -} - -var opts = {method: "MCMC", samples: 2500, lag: 50}; -var posterior = Infer(opts, model); - -viz.marginals(posterior) -~~~~ - -## Exercise 2: Parameter fitting vs. Parameter integration - -~~~~ -// Prior on task difficulty is uniform on [0, ..., 0.9], with a spike on 0.9 -var sampleTaskDifficulty = function() { - return flip() ? .9 : randomInteger(10) / 10; -}; - -// Compute posterior after seeing one subject perform well on the task -var taskDifficultyPosterior = Infer({method: 'enumerate'}, function(){ - var taskDifficulty = sampleTaskDifficulty(); - - // subject will perform well if the task is not too difficult - var subjectPerformsWell = !flip(taskDifficulty) - - // observe that they perform well (i.e. this value is true) - condition(subjectPerformsWell) - return taskDifficulty; -}) - -// Most likely task-difficulty is still .9 -taskDifficultyPosterior.MAP().val - -// But a lot of probability mass is on lower values -viz.hist(taskDifficultyPosterior, {numBins: 9}) - -// Indeed, the expected subject ability is around .4 -expectation(taskDifficultyPosterior) -~~~~ - -### a) - -> Would you proceed with more data collection or would you change your paradigm? -How did you come to this conclusion? - -*Note:* This is subjective. Justify your answer. - -Personally, I'm leaning towards going for it. -If this participant did well, probably other participants won't do too badly. -Depends on the relative costs of tweaking the experiment, having a task that's too difficult or too easy, and doing data collection. - -### b) - -> The traditional approach is the value (or "point-wise estimate") approach: take the value that corresponds to the best fit (e.g., by using least-squares or maximum-likelihood estimation; here, you would have taken the Maximum A Posteriori (or, MAP) estimate, which would be 0.9). -> Why might this not be a good idea? -> Provide two answers. -> One that applies to the data collection situation above, and one that applies to the metaphor of model or theory evaluation. - -* The MAP is only 0.9 because of our strong prior beliefs. -* The second most likely value is the complete opposite. - - -## Exercise 3: BDA of Bayesian Cognitive Models - -> We saw in this chapter how to analyze our models of cognition by using Bayesian statistical techniques. -> Compare and contrast the results of our cognitive model of tug-of-war with our regression models. -> Some questions to ponder: -> -> * What phenomena in the data was it better able to capture? - -Explaining away Alice's strength if Bob and Alice win on a team together, but then Bob also wins on his own. - -> * What, if anything, did it fail to capture? - -Teamwork, excitement or nervousness due to a winning streak, intimidation or loafing (e.g. being lazy because you think it wouldn't make a difference anyway) - -> * Are there other aspects of the model you could 'lift' into the Bayesian Data Analysis (i.e. fixed parameters that you could put a prior on and include in your joint inference)? - -Lazy pulling isn't obviously a factor of 1/2. We could put a prior on that and fit to people's responses about strengths. - -> * How does WebPPL expose commonalities between these two models? - -Both are models, both infer parameters of the model, both set priors on the model parameters and update the parameters based on the observations. - -## Exercise 4 - - -~~~~ -///fold: - -// alternative proposal distribution for metropolis-hastings algorithm -var uniformKernel = function(prevVal) { - return Uniform({a: prevVal - 0.2, b: prevVal + 0.2}); -}; - -var toProbs = function(predictions) { - return _.object(map(function(i) {return "predictive: cond" + i + " P(true)";}, _.range(1, predictions.length + 1)), - map(function(model) {return Math.exp(model.score(true))}, predictions)) -} - -var dataSummary = function(data) { - return map(function(condData) { - return filter(function(d) {return d}, condData).length/11 - }, data) -}; - -var predictiveSummary = function(model) { - var labels = map(function(i) {return "predictive: cond" + i + " P(true)"}, _.range(1, 6)); - return map(function(label) { - return expectation(model, function(s) { - return s[label] - }); - }, labels); -}; -/// - -// 5 experiment conditions / stimuli -var possibleEvidenceStream = [ - [['A']], - [['A', 'B']], - [['A', 'B'], ['B']], - [['A', 'B'], ['A', 'B']], - [[]] -]; - -// for each condition. -// note: always the question "is A a blicket?" -var data = [ - repeat(10, function(){return true}).concat(false), - repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), - repeat(4, function(){return true}).concat(repeat(7, function(){return false})), - repeat(8, function(){return true}).concat(repeat(3, function(){return false})), - repeat(2, function(){return true}).concat(repeat(9, function(){return false})) -]; - -// Same model as above, but parameterized -var detectingBlickets = mem(function(evidence, params) { - return Infer({method: 'enumerate'}, function() { - var blicket = mem(function(block) {return flip(params.blicketBaseRate)}) - var power = function(block) {return blicket(block) ? params.blicketPower : params.nonBlicketPower} - var machine = function(blocks) { - return (blocks.length == 0 ? - flip(params.machineSpontaneouslyGoesOff) : - flip(power(first(blocks))) || machine(rest(blocks))) - } - map(function(blocks){condition(machine(blocks))}, evidence) - return blicket('A') - }) -}) - -var dataAnalysis = Infer({method: 'MCMC', samples: 5000, callbacks: [editor.MCMCProgress()]}, function() { - var params = { - blicketBaseRate: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - blicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - nonBlicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - machineSpontaneouslyGoesOff: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}) - } - - var cognitiveModelPredictions = map(function(evidence) { - return detectingBlickets(evidence,params); - }, possibleEvidenceStream); - - // observe each data point under the model's predictions - map2(function(dataForStim, modelPosterior) { - map(function(dataPoint) { - observe(modelPosterior, dataPoint); - }, dataForStim) - }, data, cognitiveModelPredictions) - - var predictives = toProbs(cognitiveModelPredictions) - return _.extend(params, predictives) -}) - -viz.marginals(dataAnalysis); -viz.scatter(predictiveSummary(dataAnalysis), dataSummary(data), - {xLabel: 'model', yLabel: 'data'}) -~~~~ - - -### a) - -> What are the parameters of this model? In the plainest English you can muster, interpret the current values of the parameters. What do they mean? - -`blicketBaseRate` | 0.4 | blickets are common, but not *that* common -`blicketPower` | 0.9 | blickets rarely fail to be detected -`nonBlicketPower` | 0.05 | very occasionally, we get false blicket detections -`machineSpontaneouslyGoesOff` | 0.05 | very oaccasionally, the detector just goes offf - - -### b) - -> What does the `Infer` statement in `dataAnalysis` return? - -Fitting to the data, what are the likely params and predictions? - -> What does the `Infer` statement in `detectingBlickets` return? Why are there two queries in this program? - -The cognitive model involves an inference of what people will say given the evidence they see. - -### c) - -`blicketBaseRate` | blickets are common, but not *that* common -`blicketPower` | blickets rarely fail to set off the detector -`nonBlicketPower` | non-blickets *occasionally* might set off the detector -`machineSpontaneouslyGoesOff` | *occasionally* the detector might just go off for no reason -`predictive: cond1 P(true)` | `A` is probably a blicket... -`predictive: cond2 P(true)` | `A` is slightly more likely to be a blicket -`predictive: cond3 P(true)` | no idea if `A` is a blicket -`predictive: cond4 P(true)` | `A` is more likely than not a blicket... -`predictive: cond5 P(true)` | `A` is probably not a blicket...? -model (`x`) vs. data (`y`) | We can accurately guess people's response from model, but they're not exactly 1-1 - -### d) - -> How do your interpretations relate to the parameter values that were set in the original program? - -Basically the expectation. - -### e) - -> Look carefully at the priors (in the code) and the posteriors (in the plots) over blicketPower and nonBlicketPower. Did we impose any a priori assumptions about the relationship between these parameters? Think about the experimental setup. Do you think we would be justified in imposing any assumptions? Why or why not? What do the posteriors tell you? How was the data analysis model able to arrive at this conclusion? - -The priors over `blicketPower` and `nonBlicketPower` don't actually encode the information that `blicketPower` should be higher than `nonBlicketPower`. -But this was basically told to kids in the experiment ("Blickets make the machine go off"), and kids show they know this from the responses they gave (when `A` makes the machine go off most of the time, they call it a blicket, not a non-blicket). - -The data analysis actually learns this asymmetric from the kids' responses. -To see this, we can switch the `true` and `false` responses that kids give. - -~~~~ -var data = [ - repeat(10, function(){return false}).concat(true), - repeat(6 , function(){return false}).concat(repeat(5, function(){return true})), - repeat(4, function(){return false}).concat(repeat(7, function(){return true})), - repeat(8, function(){return false}).concat(repeat(3, function(){return true})), - repeat(2, function(){return false}).concat(repeat(9, function(){return true})) -]; -~~~~ - -When we do that, we see that `nonBlicketPower` is greater than `blicketPower` in the posteriors. - -Leaving this relationship for the model to infer is a nice sanity check. It's cool that we can learn the appropriate relationship (`blicketPower > nonBlicketPower`) from the data, but it would be OK to bake it in. It wasn't a key part of our theory, and we're pretty confident that kids understand. - -### f) - -> Do you notice anything about the scatter plot? How would you interpret this? Is there something we could add to the data analysis model to account for this? - -There seems to be a linear relationship betweeen model and data, but the values are not always equal. If we add some scaling factor, we could get from model to accurate predictions of people's responses. - -### g) - -> Now, we're going to examine the predictions of the model if we had done a more traditional analysis of point-estimates of parameters (i.e. fitting parameters). Examine your histograms and determine the "maximum a posteriori" (MAP) value for each parameter. Plug those into the code below and run it. - -~~~~ -///fold: -var toProbs = function(predictions) { - return _.object(map(function(i) {return "predictive: cond" + i + " P(true)";}, _.range(1, predictions.length + 1)), - map(function(model) {return Math.exp(model.score(true))}, predictions)) -} - -var dataSummary = function(data) { - return map(function(condData) { - return filter(function(d) {return d}, condData).length/11 - }, data) -}; - -// 5 experiment conditions / stimuli -var possibleEvidenceStream = [ - [['A']], - [['A', 'B']], - [['A', 'B'], ['B']], - [['A', 'B'], ['A', 'B']], - [[]] -]; - -var data = [ - repeat(10, function(){return true}).concat(false), - repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), - repeat(4, function(){return true}).concat(repeat(7, function(){return false})), - repeat(8, function(){return true}).concat(repeat(3, function(){return false})), - repeat(2, function(){return true}).concat(repeat(9, function(){return false})) -]; - -// for each condition. -// note: always the question "is A a blicket?" -var data = [ - repeat(10, function(){return true}).concat(false), - repeat(6 , function(){return true}).concat(repeat(5, function(){return false})), - repeat(4, function(){return true}).concat(repeat(7, function(){return false})), - repeat(8, function(){return true}).concat(repeat(3, function(){return false})), - repeat(2, function(){return true}).concat(repeat(9, function(){return false})) -]; - -// Same model as above, but parameterized -var detectingBlickets = mem(function(evidence, params) { - return Infer({method: 'enumerate'}, function() { - var blicket = mem(function(block) {return flip(params.blicketBaseRate)}) - var power = function(block) {return blicket(block) ? params.blicketPower : params.nonBlicketPower} - var machine = function(blocks) { - return (blocks.length == 0 ? - flip(params.machineSpontaneouslyGoesOff) : - flip(power(first(blocks))) || machine(rest(blocks))) - } - map(function(blocks){condition(machine(blocks))}, evidence) - return blicket('A') - }) -}) -/// - -var params = { - blicketBaseRate : ..., - blicketPower: ..., - nonBlicketPower: ..., - machineSpontaneouslyGoesOff: ... -}; - -var bestFitModelPredictions = map(function(evidence) { - return Math.exp(detectingBlickets(evidence, params).score(true)); -}, possibleEvidenceStream) - -viz.scatter(bestFitModelPredictions, dataSummary(data)) -~~~~ - -### h) - -> What can you conclude about the two ways of looking at parameters in this model's case? Do you think the model is relatively robust to different parameter settings? - -Setting the parameters to just the modes changes the model fit. The fit is a lot better when we fit all the paramters at once. Some of the relationships between those parameters matter, in a way that we haven't really captured in the strucutre of our model. diff --git a/solutions/Figures/agents-as-programs-1.png b/solutions/Figures/agents-as-programs-1.png deleted file mode 100755 index 18a1fb0d483e5ecfae78dc80d7a072a92ecad261..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14729 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 z 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 diff --git a/solutions/Figures/agents-as-programs-11.png b/solutions/Figures/agents-as-programs-11.png deleted file mode 100755 index 8cfe0acd168783758bc2f29b5178098363ddaa24..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12295 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 diff --git a/solutions/Figures/agents-as-programs-2.png b/solutions/Figures/agents-as-programs-2.png deleted file mode 100755 index ecc171f4532501c71895718cddab0ba7f9848564..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16414 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

i_PPo@=DlD;XI?c~ac>59ss>JzZfLG5zIXJT& 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 QpD91NBF@5F9I$Es03&%whX4Qo diff --git a/solutions/Figures/agents-as-programs-4.png b/solutions/Figures/agents-as-programs-4.png deleted file mode 100755 index d3e1eef2fa864ba84df832fe8efaf6baffcd31a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17447 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 diff --git a/solutions/Figures/agents-as-programs-5-2.png b/solutions/Figures/agents-as-programs-5-2.png deleted file mode 100755 index ce72cf584e8a3fdee6987cfb4e8724c400d5b998..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21870 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 diff --git a/solutions/Figures/agents-as-programs-5-4.png b/solutions/Figures/agents-as-programs-5-4.png deleted file mode 100755 index ecd4c749bf8bcbdb4b2d77d0273e28bf0f486299..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21322 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

PzH>9b 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

Tn|n-~GWJ}qd=`KH{jK;L{q=hc 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 DLg8p^`9|kbRlT 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/wyUe-dKN&}1(K%w+=gjf(Vvb$h* zNfqKR?Qc51iH%Mdsx5dTK>r${j0!a3wZ*iG%+J2d;(k6B8I4kzSU2A$tYx-%yG_ zL^IA2^+%a(BBpvC7-N=r&yyWQ)X!13x%_846^i_UMDRAC24w34W@C4LK{niw5&d1g zxc!ICafxpMXoI47I+Q*f@2e=$pKj5FrV7-Q4<=_udr~!uzQc(Svb@j;HpgL*EY{UH zPXKD=)FWA5CgeQ#0)=L1jxjh|WU=bo&w$vEuqhM});Ns-OKVQ28XIs)1>Cb;zu1YW zn5j;8?9G+kU_>@``&NfMRj_aJevbp;$~X{zi+<+cRiIe4tj6KrkeAxq@RHuM=1|@% z^wW!F&45`q1Czt`@@Bbe7}!SQX|=kby=?`k&itngrQ<>47w%yq4X%3UI=?dqS?U?z zxzvNVg>9ff4jQC3u)E$#CmK5^i#3N!>z?)K0D`J;AXKX$A8Y9eA|B^Ey~; zcB+64Y@1eoLiNn!DWEGR0BCko*U)QBpEuL)$rz|3jVFH%cR^*drR-%q+YraO@pz9)Qp|EuVL`$i~_-(dVB>Qmz{P*!uNZy#aRX4}ldfCigO! z!0iK2@g=zUW=K`t1%+B~r76sw?s|G`uifBYaP-x1Ib5{37mUA<+|jhGC;OKwL4zp2 z$6KLjhoQs&6dHoZJFWemV`^6E+)%yn4#kIjRzP|FJ{!KCMm6|(-GUa{S~sEnEqR&C z=*WE`3^l?NO8M$5)E zfkV3*k`c=^TQME2J+MrU)-UK7&@Eoxa?IO0YZUpqV{A};a1aDGqyi`F?A0jD@j_z8 z1VFs3(h1Aj=`&>4U^`Zp_uWb`J~9LfYe*TS8i4Z`4TlrITFgIYjev_l>skjwFPkBk zF6^N5XXmzHsAvz};8`2Z@EIT2}ajSk0^9c}Cz*-zHON4Tbe@^2o0Q{udF50s*N`VpFDX|D#nV#}v%X-`W0z?|$iPG{~4 z8)*1#`!Q0GXiD#y25FLp3pBd&hv7iTxZm0bdt-UlKvvB?X%#1IBYy}S3B`o6Y`usO=yo3 z1;9_Tm9u8CnL;!9)+kg?ijfA2Gc$FM81B`Qlhh57@w2agmUk*|F#i1>Fc7|(&H$gC z#WK!f?Hc95Dl+`sQg4IIu6^^_eQ(!j?g0tS5Kh=)g?7 zRRVM@CxAhlzhpC;GN-RR&Qth#S=$Pv%zcd4{^-K);EyyMJ`dWu3Lnf2^9{|GEbpq4 z{6ST^7zbb$G%Ij(Wt&yUtVw!->(aBDp61qWPL>93xDc` z9#{JoLi}f<=6^iovo~n&(}x0ZWQK;%yPPe@?*fIc3!K=g3mwgX76Vf&YC4qg04PV= zEh7{9@z$-=3e#`*iaaK-%C7eRDezov)U-xgKjbNd`Ye*PbHC;XRUMzEE#C-mp7m1s zuE0S^GUx)*K_C{yP@yx9K^=EuB7s~V50nP%XS;K?*|%TkLYKRw09-X>Ksi(5vC~d2m&(0ZMa% zRHsRir~D=M2N8^89yoY+OHL`|rQVR#4YQ?y2{p)s-*UVRNL1~!S>H)9YtmO9_-c2W zyi$iFOQ2bz=1UU*nscgG+jEwxF!xXAD>p-cQ3E(rG%gr>DA(tVJR(iGbp^(XvP6C^ z6U?JQ;k^%{s3f&R=rns*}4l&cAO!%Ae(=!JCsw-&GG_VSaSmKB1MeFxWUY2pz^b} zJ>ZCUC`2sO|HPwm(_?r!fNP=PVE2Y+g#W?dirvVLSNzT3kQbz1SHa_QK>}fZ$hy#` zA7sg)I6t&Ns?DQU{kXp#Lc{=S`O6P~Rj6Bde!)|y55%2%vI)KY;OVaVr(?-z^f*paOcTWuq;~Xyo?j;Th1_G*7 z5!IE@k??y(tbdqd`%muo|Bty}oiku88Y&A3;0TzEi4XrrCsmdk7mU>hfav9dKP>~I zkzfVh0bzN2-WxzMAngi@tuKd^3nvg;Pl5kz4%7I3ei)Osr6mLa9o%V!=v4jC0^iQ3 z50*u0c*($n=sb2kEBTHW%m&5!Z=;wG`m9f0Ntkenc42;b3=#fdT4o zWxRj3rq4;7;GRNnt0Ife{wgGnK6X?Qw6?E-oP~4c!8E9Bd$m8M`sDv=@66+=PTxLm zW=u&@honXkB4jHymd2V8S}0q#WSKfyA|iVxh0>vfRFo}IN2f)yHcCRFA|a#_QIzfA zkmtI-=kREmd0z88&p*G{YyPYA;yCBN@9%wI_jP?f?@Py^cjce6!cd`bM@q73j0f~ z75*m3oGQO(i>rvT>N4=F`}2WzX`t-Jzq^L{BB!82``0tQYiy#7-Nakv^mgYp_aJ|GMx2)9FClTz)@N zfVcpk7j`-XIz{DXjzBnRl>COA4~)LMSczOY4JaqG04`#xLEk)({~G82L-7JJ?r7t{ z_`wkrK#s8QI|8!^lcs1xG_l;jQGL4o|HrUt_WxtbbO`As5bZu|g|9WsJe@*SW-Xko z(d4QO#jZfOsOX$il=hPOtDyRI*c}Hb44%SjmLr1K=kaKkLfuW^$W%p^YB}9gsja<( zsV3L$L`z6!>##R)G*ZT%290j6L{61QU@d9z-gpO?&7VO)ZA!JW2$giF_$+Rw3(fdC ztt_DxSM)*L)kj50Kh)7I+*2NNv6e z(bkBvyPMC>;E*gN+$-Z93ov!`NXdc)9eD7`Er`)%(n95~#5%gbyD!F~A$t~L{^qw=NWoS}MfSM6BIvD!h;*b~Fn+r}#DB6Np>GJlQ zWJ7gQ4GKyMz|N9VRjtj&t7%xv>ou5Df88=UsWbalz?Ls7X55;E(kBCq33dT@!!^qb-m_?V&@-cL!@zaW*^!3~ z{DrW57A@~skajn(x4xG)=bM0j!&$dj-KR^_60KLkiQm__Cp)cUfJq6uc^YU&wze+L ztpTpU3q4a-cE1m3cx12lQ0B>Yx;)SnZv*%5$r}+1auO1A4{m4oc{R(C>2S{0&GS1M zRCdYm{?NHwZ{MgNxpz6{d03H6#U69!Ir^dD`o-ukq{d|@3%v;ww%SAZJv>L-?!q~m zt$4DRKXt(MS0ONCo;oaYK~d=v@zUyM=c2WXPlq{QRsBNI{>7C|jHG!VxC1TT8>s1R z+7J*~@+mQsq}Kvp6(~)By;fjfU`AXYED94;avoTB&Uc1Eaa!>VlbMo#^-u@Y8n}X} z&)&Wf!Re-UI)$6deYzHX<>UN8k6oA)c8{hqoD1TbO7NTMo)gl1VC~(!CX=cJ29><7 z1b!PIyV?;ulu3<{ItOyTJ;k1sLHJa8QEl+jDg=`Ory~0GBzqub+(?Tl0_7_JZJU>a zsovsND4+1@c=l2VyO8^5*v8CJ54nWWo#@+j39oz}FyWMhfIiHlmZeaq)SxC4lPOfF zpL`RSx{oylG2F6(Mf?Y|Y-O^{vSk69@(XW7ZC7M_{vXj(W&e7aNvmj(Sd}$xXKDQD z<)j+zu&qgi9=>(BNb&hB8u*OCEqb$T)fZ`lz?rr7-N^V^Rll6cN-1&pV-WC{a^NFN z+eISgIhIE7nJje&kQ!katq$nfS4RhDm=yL`%kK69w+&XFq%`n)0qhOJQ^J>yVh5;w zsusF_UEv6cIl8Qb0=2VZPSL=A#h~k0OIHz8Fc5^SztnuJcjC?yzsK(bQ1~7us^-7g zdzTC2d}b8=$n$njUUvofNOi0gEWSRMD%N9*r^{CR9<4bwoR=@-l!+D7_J|c!35aq8 zplbQ!X^is!tlU?vs>q7+X;3Zt9?!sPnOxz3@#&TJI>_%)>3#$IV^&B6p3U}+c}rMe zv?&uuqkT>Vgb2@WC4GB&<1YuJuJO+#NS0|d3M%N`2N}dS#l&<~AmBWV4g3xRLG}b- zmohj-UbS9UjeQp}MC1c*qN))jIt3`0Y=?ZEeItO}2uGB@e{++X#MkjpyGVHC8__V7 zc0V0T*Cgr*A1EFmcr#_B4dl%J&MnX*n!~tJ?8_=5WV6>l$w@2h+QFXipk*C#ObO}0 z#HLPx1&E6u0jQf<-sXReK989-jD|HuAVx7|EL)C{LbIQqjmLh@oE*(b%$y-(WOPw& zso<804DL?97J?flD-C~mYJS_H6e$PQxJ7mQF-roaD^rCHJ9RdATYiBFVBY?JYF&9Z z4a#kEI&Bvx5(jJWY=bC|Xl*tRND*xN;|cmgplv4gIN+#qkP25fqmL#$4y*dURa18< zzpXT=XizeU3xBb45#&nn1oD`cyZGw8Nu_UlZHG(vGY`Il$<9GsfPc@vBw$-}t=B4~ z`S;%c1oeDqb!0M(QOGqG$P%k-Qahk}$jD&KxeEhO{CwP2dirNBU1dWGx%V)7;rT>> z1)wPslE>cn&o;^F&02YK5@kaD@f3#<+8u2`hhx;ib@Yevqj&p>?CoB=SpZ4n<`+F>4Xp>d|I!FR) z=KJ|%(U{(TM19Q8w>hmRWi*#qDUBLYTHRm;r~Wqf@h;wVOro}A{S-RS7FAi0MO$82 zmex7-!`kq}kSE$#=X?xjYV74qbqQ>t3em-qS@T8q`heUbb06$F)Go$*wYUUI*K2|- zw~JSk^U8jZlaMX4s^M0FuGz)PElVWs(Gf<5+FmTSK+)y-g9CAyQ@(@;Z37K%ds=B49aGdXFSi58~S<1eaDl?nPe zKOCI)sqo8qA|Z|f^{eO<#2p^&Gpk;`crO^2JoRnh_u>x42hgyn ztrzz3d=s*5!2maYVGgfaCWSzlo|j>lv?AKE$?O{}>-fGJwQkbQJ#aEczQx8FEscB49sn` zbE6a!p76Mq**Gu3e}bCqCg5HUY90F7E6jt%Iw0%lKQs)tr@g7iepIg?w**k;X2l=u zs{}4F@^LYP#A-!scpR2TR$T6OkODrS`C4SR)GVtS$&hj9Q!qnp<=jVx1h+Xjhm=}F zwurh0CmSqI^Oh{N1;Qm*O~gV>=HL!`rO|Rvv?(z z9^qKDvpNRRv~LRV{@l3s4csv0AS?Ha7iI2s6^&~Rzv0)r1Iol2Uv#YVoyBBq`@STG z)u7jyfWl@Gf{H`Phr5Q+fHEK`WD4>nX_!$cGkO@@d>6Q%*qhjh(Z{Ec2xDN5Z>H8` zypL*?tK=-j6iSZL@~RJopN;1W8~sLwfv0;x-odoZDD0|aK9hJ1n##5lBn4TK9i7|; zJ9lRRnWk6*JGpuFq)}T0#6wa(VQ7T@i?$=;8Uz)37d(|WYC!UqRU`4^sla5_s!A%c zsCIzy_=f)b1ASxt)o~zqaa!u`@=Xk-&!nJ8D5J4gi~#Hax6iPTN;oJjqM~ z=6-ZD!x*7T2v zm=BUTU@&lo)x4(GG;tW`E(2F` zGHz~qit(sR$dVThISeq|k##iP3T=AC$kq2;OwcCoIlU}8^X}l9?z=n^_m0JMBn7E) z9be_{YIU-C+IoJz;tgaqGh=U!R+tqTKT^95w~DOO%c04UcO^3CV{uRAG{Q?c`K|tb zCeeD~A^7@$)F7(SBWSe2Cw&rP++_~-Fswx)ri0LWfgV)hE$lkadzTHV9_TAy4h@d6 ziJ_&cQ0x#fe+$)M`I`3f@i3BV%dqy~ft3JIXGJbP8YNZ|8(+wC-Ms5{T;_ZC-(S(N z-a5oQq~b;3+se$Ik39M}<`J)l8H zv9!svW>b__Rw1+tZ%;qtig{{3+|#_?->kP;0fDR}rfR%g*(Kxp9v)-)6)6oG6aFI3 z2QUuvBR;*nGJFU(xcFk)xV?2eKgbLdQiLjT5A}9>=)C|>-^9aI1uM6hY>geOx=Gu4DH3qRx~0Xmh8k!+R6>ew1$yRyN}hRI0;mm55Bf}n8*v;5e2HaB zOlf$-GTQD@c#2?t+^Z1Sp-}zX*8ROL&7HpxKNZgb)5PO<=$_hgn!CS$5TxRX2Mbh{ zk;=^dH$4H?MmSe3zqGkLPwGG*^O@#90k2;AJyjZc`JvN@w$g0!r~Xlo`YHPUKkZP^cES_1DVVZ| zgF%jib8wC7#Y<@GKz9=+@OCq_*SmnrUJ{Ngy{0qICk^kohoT{L+Wuoug&GsgSOxZU z1XA%9agtLSU6(~P(P;$7)B=5_E z^x4W|=V2Xah#S?0&X4NdWN>xW1so=&zHceaN9JZ-p|}9hw`_baV7?JAiC8L`Jltd; zk~nMr>xz;H%sn%0jvH?(>y3bY-;{d$Z9-Sz%C%xnmmFAs(F=nL3>rT~K9Rc|HogIi z>1xpb^*H-7TJ1CBUt*VUvc*-U?6m`(gP_rgd?DvlJXVoCrcbDeqlbol+bd3`49ULZ zcF2 zt1+DUwt3nnEpnj5Eu20Gs6JO|g)q2Dzlyp~$fSJ6jwB>pfA zWhV_6xgOn;mM=3J+5Ttp74Kp`<{QEZYM>)sesgbIiPW}EF5?ma06kIF+qwA^1}~zO z0baHWHg`yxm;}@Pd3j+1yJYhZH6xy_avV&`yR0lMxMLuD5grm@v1OiR1SjV}LEDHC zH87h9Sb>PU`pE)2{j&lFZmN(w1Mc^dRJ?T5&50jPWCp9jM-5;>q^ykswp{Jbx8=C+ zK~*EGa6O{5tog5RC0a_Jt%nigUN2IBu2h{y@jP99c2QDPZT&!%{~`(#B>(aiPwL)s zB^EQ7PYP1K>WLhydLTa-z4SHKB6fH4r$STPPd!_f)k3ERaZUZsTMhnn`-rHEiVp8u zoIm3+)LT69dHTRt{51DBc^*A~MpLVxvS4K(c8st41Y3xiz}>PwtH=8RdQ4oQT}XHC z^+D7I0q?@wt++S*EI=~#JRAn8Yf1O> zDQMb$u^eXmKQyi} zHoM{{ZU8wCraGw>#t`YvyYQIglSb8a!l%d0f?$bj%pTv4k{aC~PjIMW6O9-Moy`0$ zdL{`SEWbNf-RkE>?yl@hK=lNUw(SXfz-K1v0?(hit&4-ub%U<<+?_*}pkvVKp+gIU z8w3C=Q5wbO%|)=gVk?Sh4YALWTp#JZt?C||WSo+)c%zcNHi|fjUzU(ye#2FDM67Z_ zuKtAW)!pQ^tMgdwr>FhI5XGy6%$HSOne}>W(&#omdC%UHeRjMG76ePv$v|2&78_q< zz>RAqTr9f>;GA;@4I_PyVGFath3e3%+2qW-->2=&CvaQ829FAva)LNDI*b=Eu41+& zA+qm^TfhocBG?VSwEQ1l-H8v(7QlL>*hc3u&&j{-IrC3XJ!0h8I@d)p`?u8K@%eJX zt(DtYU`EK&h|!Nl;rwc+=f0f1>;gZhh-U-mt`fZiM{ki-4{r}bzWh86N#@5q$a;r= zU-)-CU<9U?!<^ZY)g8RVn7phxG@tlKumz|Cvyddrf*Y=3h8*sfVeI3(9t zvEI;T(PQ59xssK;go&e<&BsxDYrIP8<(a+8%ph4QiDYfp7}dA$z0DuQ+7I6M%i{&< zb0nK%{}RshWy6*idQ{vG1o@gp4n;n&E$$G;~_y# z;-#}qVL9?HdXjz==I5^3qiqJCJEm|Z^Y3@8PL?zjGLB$9WCaSz%NL8J&j0UkX`p1t z8iL_HTFm#7+N49$=fHOSJ3Y_{%^cD-v7PvKF7G@qJ)!^efC~!t~uvg1fSPYW8BWU zebc5*jOWzPz&3571^@jsOHT{_vG2ky-Y?ZZ@H*G46*s)@< z75sghi~1$kO`CXvp#L^UjN+^}ZSuc+?u@dYm)X<+{3WW}Uw}MSRy?5Ok@&@;GVWQi zM9WmTbq_~<>uaV{u0+LPAnv!M%b%>>82(P`@~@@_+4%vHo-?X&U|KxQxn{gEnykS%CUYqD+9=r62(%k|P#p6Iz?Yjb&w_Y01auOQd|rOb91s~WCj*xtwGOUm z7p`E*GuTdl{6K7suxUK8(6a8~d?uWbiTN?~K5&B6ZBEiB46`AhGV#bsj-R03{HctK z%1xd%b4l~Y$OU6rA;D<1ah4%96Xfo6`MDMe*;BzkzKM{BMP?U1=UsXdBXsGpB4xQf z)1SD=_=yw*UkdV@vNtF8rrJ}lwn1ukM*_tQe^E-vqUa3nmr~R0v`#JnZ;hPEm3ZIp`9@6 z5L0T8ViNRS{9-#-WX{q#AG?|Q?pVhpdYH6BPvrYhHZ!khMrivIWsMe(OQqNKnPAe+ zX!&$Ma5vtr1ccw{F_qPgwtC0R3iId9Dkh=3emGjKx+}d_+~US`7GLpY4fh;tWX)2Y z$cr?!h`p1mOOMqCD^{F}R#G*jQ{p!0WEwEV@rM!8g=5l6B~;!#_&N%1v(r>E`Me3Qdge9wBk{ z;5i+M)Hi$M+i-~)R`09YRO3&aWq3k=fxOaAsq#3iQ5U+K`ij&x@Pc<<(~pX5+mq*^ z{Sb8I0`^HS7cRs;fAX+wX)m1jLV!%or=x5 zMY=_nCz0gIm8Ib-qj$$`q@pM8iTDleNUI4jbYCv44ag0sN(?Qfj`C&Ds#pgyvK9J3(qftY|1=d+ib0Cq1T)e7161oEb<6z_G!_22m7(ImMpP z5fPx5=lQBCfoxN%Px3t79|DsF>yXF@)*(l9ghC#q7z<(b+0y;+m4n)vvBIr^*9#l{ zrouY0x#pyaNN0tHQ)YKXSdPx~Dskn!4Se-hmEkn`vopz{M)isEgJPC+KhmVRt_<4C zYH#4BSn~kynfKRd!z^hpF0iXjRPv9`hio47!s@r5Lkd@w9sTuDuM^o1oC!{Sy?vUH z6u!CVXgbplHsKZo5mx=#q^e>dTfFY!vG zE~O+aMha!}#LR!8+p^jW=SL=EDFFl!uDZJvLq-SYWpeW;koR;Ni0t6w_D-CMggGwp zs`h543#(^`GiSPyz|ni*J5!#yOVdv;kj{!jGVIVzoA%@+m4}aLAGE1Pb{^{ueWiBt z+I%423V&;gl9K<@dp@0ZMWREY&e_PD1O;5}E^h&O$!F=9 zdAV=4eG!jGwSDmrUMS6f6>$SqV2UA3BHFP*ODo~GXHM{L)~rI;`wHfv+jDl(;KcaN zbBtmBpTiHU2jg|OXvdoQ*pctNae2$wTIaglha~ka*MQGQLUOgF=izQ@@Z%r(4Ve{?Y!! z>axW-_yp=3(ZeiFGGJ^kR(=F2ac6a1J zA;ybhCV2?#uAG`hF1yqW&+|tKyW2fWJ6s&jlc4m|b9Z*UBMl=$nHA~MmKl(IDd-`O z?#?x2t~__6<~G6*YyZDglg`z6+?Bq zg}hpZoK@-d?wtCF%3jw4ixOGkVGE_Z#u^j|X-b5&DvT$0$k_gv?V-$bO8i5sbA09FU3+uPMsVl{H5Aey z#lNOZ8;_#zw&JzpufdZ(*-JXsjhXn-;^B)cZP=Bzm*$)g@IF;K&z%x?A-c^e3+C<3 z*OKMEi@e&5^hlu`irr?H_9;#dJL^udT%n569 zX;)iFzHa#%ui9VvI_QQ-ZUYCl*b7-lb|EQW>2|8B?^|iTPW1GaY;W)iuBnf;^`R`* zP9l65KPwE{&SG!wdG0@-#@AXrm_s!7uc=3h<(AK&>nA6fDLfi(YhKsd%QqA+@A-{q)@GhVRnWsnBU^CS$Cw!=V@N|w1t z83Bh;buuR6EQ5|8F2ua$wsQ80Ll!Na+Q}=Il29Vyu@i!0R!^WQ}b8vFI$=-b$ zf*9ZFQq=65)1QKsW7!X8N$W8cE-$GMexBixbm&C|9AM1T4}^)mG%4FhNb*Eqsv5+x zTVYZ=W%tn<67Un-#IBeQARoUr7kh0+IPBjt!R{n_G8F89v}vondBq?ccl1Q4{sMs) zQ_j>q$3uhYE-b9^u#6O1$vqqP)UoRtqmxYhU1bOC|;};m>G* z#j-naJMq8Deic!Ox@NY^N`I?>*tJRkVf>gOc-7}jFw5he!!W^AeUwlnM}Rq+Q@6M(vt2!(7TDo~Dl=&_>^VojI+_SnLc!S zmZuKW9w)T>PUe?&PL~ZP)AjIreZ8$5m@Af$#rYxlyu)j2Pt`6|K=+j{b((Db>K>!l zoI69w4P|$&p3Jk$2N!84NHfYId_r$HG4xi=cWN#t?o=|Qk;UbAqEiKFxs-@s+P@dE zpYkSPGUp0kGvmTgCud$Ch&6TZ)?b#ZcAV)cJiu(Ds$|vpe2La2kH*nZ6tF8sY$!iSSs(ozL>TENyJ=$RTZ;mtl*` z<2+iFmz{|+$J#iisSn?3PqAtaQUoU> zMqqP1i`<`Ag-83kUZU8ZPC#C=5Q4|%jw#wa@*7v-JLMcm8~N4WgjW$4Y< zt1Dc{2+8sO@1=9L@I~7|T0UR%law*aN{aGWU3CsGTqybz(WG9=G9~PYeG#$&Gh<)M z0K@v{)oyZ@67`nDBkg9{bLF(_Y>hE;Y5D_|uMvd@&%0M~nuJB}v&oxJz6jEOavT34 zX=H@-b6s4rU^j*h@nq?+e2SA~C&=Z_EQkx1h_ zZ^H4Hg_t=}yfadwy<=%UysC5HDIYSE!Qrn+VpGug*=uB*uu<&nwUmg$9J5?p*-MJ6 zfL_WoQpz^ySZ5^@kA&b2TF?^;Wj>CoNS|1A4%vX5NtsW%Nvs|VRlVDTlVdjh(#{Ox zuERL9Rt^O@$!tVu=hD3s#gt9UTrYk_D&FNer`AIPPP?6bK5THrIQyjMj8O8f!Sv9$ z%@+_eTut3?PBR2B%cOc94vc#AE*L#IuUOyXnpPHoxULkAj$4%AZ)rqiqi^@2edofQ z{j5I99_qH8zD7H&(#4;#oh2=dJzcn4Fgu2cbH+7uySSQOEpA5c&c^ z(g-|vNWZ#bGPaggqSgx`q6pvqeTBmHm!~2tyl327kRjxUfxV^5a)E{vx0jM z@OOIU5ajGX=iO$my?zCtmS(j}p9EVA#`VF1s#XlTqk;+VO_4{PXB83lY3BOQCH`SM z`NNrI4rEXgK9A&Mtfr(o6?jFuNrH@T4E(cpaQNzD)4KMg>)md5xvhR~Avt(#X$){b z4^zf&$Tz7?yuVgUK2@lDzW<3RoV+6cbympYsD)**20FYr31dl$Xnkz$ha_3VbDk@(5ng7g+&gymMyY z@bj=v_tS=fQRs#fCX`&FA!C7*zkJ5+II{gh$}UwOp|p-gvBg-t;`gBfiM`#YjHJ{} z7_RfsK%XJquskv9bY*kcLDx-(r{E8J?8E>pF0uu3einw7dth8 zRMRN^c99_`Iec@sMpr|ReY&qauMgc7D{Q0}3GYLt0Tf6yh(p@w!9&_~HxfQi8YZ#% zb2VN=C_G;JtUh(`0;8ni{;CiKS%U3Zy&=0TySiO>VJS=8S;>Ld7kkw$CcsIbP?XB& zbC36{iP6IbbyUUr_SrxGlnK(hqm*}k40=!-Ye#WC8G~$o&*MDdJ4i&oK}&T6?R=&& z^+nuFq6#bl1dti{p1=>oE2 zzSP`KG&?=V(38~Z?t>gS*>4rR?{i85#N^Wagkgt3!xU+e%)<1-3Se=~9an$`kFDc6j{~6bmX6t>@ zu<*B-r80uQB=KZP$Gq4gCx$m7=z5HryYqdC&b+{hQrUiDWjco6N#8mBP(C5dJ2O8$7@l)_?t*EV9SMzm zlIBnOxu#r`V=i4|Y55cWQvLP?^JGOXcI=}CXri(b+fX2uUhpL4RQU`>Pv}kbjvID!IhtF26uXn9>o>g1`^f}) zlQjU2vZL61xSS*?FH|cUMxOObJPUqgqpY7&nt4ne!*eyfbx6})BWLrH7jse@-uWW# zgyKTB?r1{?g`72GAwP!eKa*nB{&0e~?hU0rjLS7?iF>Bn2?=(eKG%Wc90nMYUw&UL zQfDE6z17!So+6CroLRn>iqXL7$cK3$CZ2uD7o`voJDB$tpp?3y&f>y z5|P?m&9~}a%-?XDO4+%PYprL=f3OMg8wq%$aRtQSH9{}KNi-YE6@jqsTUt?dWeWfs z#_1%>$JKp5i+i1x2mev%dFpVC`ooGFy2HHWuXIZ6M<)5E9?o9ZeaP+=GWR_Hgg|e^ zm?gT(yW9`LX?;J_KVaRmVoZa5IcY9;Uoq@2GeQf*5FQdgUwt|Gx2NEX9P&q*dS;-^ z;R?)A^^>Le{;r=nEBE?Wzx39=Tz&-n>nrnxOVHE!(Wxmi8h5!vr^?gn4U%9Ij=JQh zGYBDYGgq7$BF5!mduC79Gats!;YCS3^%y4kdAlf&j-}BB`ch4 zf1W+#-yi5zGb}bAw5ywFA&DLRxQM;kH)bVNLta3P;kBw}lD&q5`wgnb4DyT~^*!`8 z@d<^195_oa4ds(xBXH%t#N-enPs$z~{(5?Qm=^;s1eh<=!LC~;-L z2*dqeyP$-~E}2Naow6hw9zC&ml<}Y15TPalotu@*zJH>YQdZ7yzi1ix;xcWP4n^j8 z-(sofPWywnr#^iSCy(rb4#Z)62A)uD`Gnjl1GjP!ptaW+yURXxl<`AtsU?3VGC-b= zgZAK#&$xHLGdaQ14XSHIW>=IqA zzOgjJg{^^|-Wfzr%O{IR`;Q22mF@O*F99q6eRbuB%kxh62Nc?Nl_5#fE3O!^WDK(T zhEVS$1^f7s-dJ>RPVESnFgqqGn^Tn_4|FRpkq2J{!~$3?8^_Tp5!|vcdD|*_m|S|} zmG(G#*l7lO15Jldj*?t7pK}cnZGounQ;Y2@E$!cKqk2{-Ehfip%PfC*#vA&-nb#qCLHAX)er zM+-QLt#W)hNMV}}5e%!DRlzYB1~kQkP-*pG)Rihv%foigo7f^`Y+}yvf1;Q~)l%qd zLtmWly$B@Juhr?E(i$sDFuz9yGFrhRmt)$vMDFaqg->Pw8fNWlc}k2HMxYm3L2-9s zx^~ND4yTJ(p`SUyvtJTp`tF#`v-ub-y4p8Ys1{p2I&wDhpC7!teYg3M=Ti8LDwP(` zEI~Y3m9EB$v7;g{rJna6k}^2sfZlhiF1}#7crLpQ=wBz!3j_#va~y--Rc|VUHG#L` zdqZ_XXahr3&&o2Hh}Et1m_C|J{lUzOQ{J$x2lq)QigbsBjU{~I+Mx{T&YL!U6fD#- zY*F7v()3vf`H`M;4C0=_pA&&=;^ro)|9-LQf72qgU5mUq@hN)+n~SK4PX?;SeA6)m zLpESrz@LwMY$esVN!YZgV*%QyjZ^UT=mkP(p(6FWZ@%2D4~%jSm`lLi*&)o%`eFs5 zM7va&74+m+Rn@N!Cq|SttQ#L6!Zg5F8tCo`QU)n_N(MFnUs*?>USyMP@1-5E(^HRT zA4T|GJ^ys}iPG|ux{6=lV}u>0%$k#%l>tB#R9Ji8Pr>}70s+GUv|9z~n7EI8UcK8B zPju`fXOpmg0{Nzu9_mSEfE1>P9yzlONPovZud3(N*A!X2zt0`&2Z=IpVj28o`b>gz zOr&H$;S?;zU+(6&52=%@pD9r=Q$c;(F@rpHr9~?x0|rf1>N7yah5`t8gme2@eQlcm{*=yw0xS)?6<~pzOEPAnz;t~*Q>tu#7o)V zmydaTNHc~(4pLR^NQ4Eu#i=jebEIv%4ySw1ea~o3kYUbQed>vdw({!P#XyO5Yd&7K zTjhRJZ>fFASh8@XCswD}rnO1AzQ5eH3oy-{(S~Mm#G)&2@3@VBd^YS|&FeqkA!$_~ z`W(}hIi|fZ;$yz_j*YfW7HGBsc^ys;ZAhS@mbeVP<9>05#K?a#a(3Fo${ZHc3o8D8p0Q|p=?ZFWtue07fEoyKxo zeaitzh4h(gm7xoF?ky42juSs*3MVait7^IXHOCwW|L;$uPtF-xePo!9a{fdAgrpG5 zQ@B{u_4fBXh})mx+R*jNv9EJ0n@OZ?3RW1Eip z&-uo5;SD1Z*6qVL6c;{S1eFAo&+!%m74APJd0aPm3vM9P(lLjWv?2w+OXLQWC&+=$&*F83~r{CLCQfM;JMK4{)+T3t;Y^a#kXE2gktgP{1 z6cI2h0Ka+uR_CM&AK^T%3itAAs@H)mmLm?hu}}eNFqJ#T`Y2CRC(wevf|3~{I0?h!tZGGEoURIrGCN8A$*PgWZLoJ(3K`2rM>!@^_2V?IN;;?Y z+vJ@n>4a7#e7~#RaBVQ=Ri6`N2|4yTTlxuN2Q1!6deGNgHBGXot_vf`=?CE#wCy zzz5Sl9clxQy6*g>BJOZ?vj5^2NxRN;NkAu-_~K`7j~KslXe8#gB+5!me<`;8C~F1i zZy3kwA{!=weKy6%x=(G-rukz@5|)uE_B-g^HxGrz}N4mK|38p?xQc{)%NBf;<}_pqs2U zi9+at*w=Pjej{CKXZ;ZNO7sS3*5 z;A1lXJ*~)2Ey1es$FLOYk-nxIdHS%r-HY93Zs)SwsUN9C0Qz*2 z7q^R4q<^xd{!{O+^vG?nc)@#YrmzVK>OW0ygMHW{*c$aNL|AZv`tWZpZV|kCC(1@+ z=xl7%e{bu5`)YB#1yQE!;htli02H`>6m{$^DFKJV4cOu=NpioP1|0|`#fw^;u9&Hq z?7Yv&)tP-Ule0TT#@Vd5%6l%dVnq3mO(Px(d{~*6ifu;ut=0}U24K^c+wbpe-O>3> zCFtSU!pVRYugm2(treX?TCl?n*I^6;Mh!dD&pnwf1;o<< zn~95Z1t5Lz3sDh+q(5O^(zY$p4U~w=)+CVCQVOaUd)*oj#isL|^k6s|;_@As4V#L! zY8LXH8M%!s-0Yall6@w!l^5PmbmzK$Ed;*Peb!d{{y1^jEXrrM>;PryQF(A7s#!H4(i?|Y}2a5jtKJXt3S`9RL*E+vfpf@ z0XqAJqqp&2mP0c}sPXOT zpFlyK2&5oQ6M>jT!l*fU^tSeQMCDAyJn-i+$7hT8Ken_00+9E6;!Y)eY}uhdKCPe^ zak{Jv+9{v1FLr5)RO{t+Nvdc669;*FWKWfUkGJmx2z0i7PCvECW4iaYsP#yF*m4i# z&@kDq6?xMmdVSp4nt4Dy*yY<>IzBD1vAK`*Rk+*7OFLeM9=Z>JL33it8f6=PMylT4 z4lyBDhW4?S^O+xyoDJd&I1y`@&>Mm3G`rC%4aoL3(bZrkpV(0#IBXB@>% zmem1h`0<9O+-$}8XvCzN_ZDHCZ)u#LX=JBc@$zdMu8g-H=nK>sIyUqRgQ!HptN@Ud zH9E4DAD|4)vH_32mzr?>n#EGY=;WCnu%lRJ7!&u2$nPz2PhRMzBm?8$$#k-7yF%VrmQH;ECu!DZ4l)Q5hM3_eTvoo=rf5GotgQiR2@OzF@WSBWv)HvKE6_AF1pbka ztl5781g4AM+maH%j5G>Q56OeJta?Io*qx43CEA8A|-16*Hi){u)%I6~n( z6&O5$3XL4Tq2>*+!N?dcPya{CQr$_6$}=k5ubnI}OUEd7;A(e{eqGpCfB|<(Tq4iw zQY1}p)a@zP*|Hy)fRTx@J0}rb5X1c$VV(k+2x+3}FMMxJhz0gklRPDZKhDX2lQ0Ah z{)-L%e}tr>Sf&OlW%7R=sx@XpLoJ+J@Uw{bTA-(W_b>p;roEsHPj&tMNP&W|O48!p zT}fwjRS6&~lo#qXyJKM-*dy!F=KVrYd_YAA_tlo9lQK}>hbb`l$hthZ@(l!vx;esG zb_pm!gIZ+;8_FR;yDUN(MW!2?d0VHF0ix*yM2BnT#Y`RT5H=AV$d+uOVPf_EK4V~k z67OHa;J?%a1UqE=AB?C)@M=Tl(X;mu=aOhxWY_h=jl4XT2|j}BSGo7Wgo`h<&H+`* zpUEPJS|&+Y0@@=EkTDYDiG{3xfa*^VGG19W<{LYeTYnHYgQB;DCKUNW1`y54`v$rx zE;9+%tc;4VHT$0ZSmcK3!|Iq<>#M1ZdO$TuJ$@R^%GF`0=^X}ugTAQv<-Rg! zTlUoq&8zc^G}t02wMsX^5`R9qFzEHYOA2OOahisjY>0|{2S!RGcFUR z+X1yRL>AGjI#o`;vWO+;)GpshBF}p(Sc0>X+;Ny)64H)8b3a1xRp<4!0nK@bKpjQxkpGgdn;9a<77mPKM1Z2OvHk?WUDpXoT9h}wI^A1JQ>-++ z1W|kAAFslr=yms>37(V()>sTEPnNw*u($?3T?jY;LTozqivZ-vS5*9+bT|iv775!n zE#Ji{juVQ1IkWG*Ajcm#`#0&ufjC{_@TI7#(RT|IkCx z?a4foa&Zb5QcaX9;4D}LBYd&dGO-P_7HbhgYu90|51X4oNkrTIw<3Y1R_oE8V+QGs zPXxwN_uYxm&o$U1a|h5yrz!5kgG<#V%o-2kj{Tif$XGOk008gG5WA>viy-V*|kOH z5sHLsIKTTjGsfAWp6ke`wm5$4^dDE>-Q9+{&*h{J(og$74Q}I?SCoAK1_?n~z5MfT z5M9a|Lan7hzAXW{wKq-xW#Xz0vAB@hFejU-lhoAgqn&s{3_==qprlnPXg=Rf5{kx! z|DFiUG6SRNmG?7X7Du4$ zpt~z}sRCO=>;%+Ch&%g6k`CNw6PZMuOFl9Po<(P&Rl`GfcD{|(2lY7!ML|qNyu~ck z(+4Wr*B-$l@f+#9lc0+cR8fM?M+cE(=St@dg@}7@YdA;_`tr7J^iypE;JM_G?_#kVwk zD0BGonC2;#!}$qmz#BwJq${xqlj3f zQqaL0Br>pBM+jF=70rX5MaH8$I?PJArX$7zL_1>7Z#>uFJ)dpo%ehUKyC5(TQ_!JW z>SuUYCSy&{3g`|vCNt>gYK8_KoZi2yT1xPt{pAv-ez>~QQJ|X?{t=0oVU~-H z@0pe49iFmUU&!ojxGFDnspz12Wl5F6gG~pUh=GxhpDGmJ9BryXHUg<{uCRjN`t_l@ zcbFdL!+Q9lzg+O>Acc&dL+|5T`ASDeOBxwFvDZ4owHFF1bN7Eh<%CG}Jgl(o+MOuK z5mOBaM_tga`|%BQX~0@}!=pfXP|VJ-4c1ohd(=S7?n+NQH^Px#%MkT6_+|r-=eIb) z?i>NHlkBZpEoI8&?dTabozF)1B=3F!otL^OQ z8=%RVh20OMY2Ng#7QmtFb+l7NJXXZas$>;{9!_XAe5USv{(``rgcF&)S~bGzb`@Xz zvcnE*1Ws3_t-k+z!DA*(~qH6YYgZ(&)UOPiVxy-taFDD zYZZ*^#va_O7^HF#)m&0MIrwD%FiBcEpZZE$qK%-NfLiB zLLesRgmoW~_gd&S3~|@V1l8yvY&EMz)0)VB6TaW&0qL@(#4?(|^6<>1(!oZT`#WHk zhub#rS^vsl46?R)8_QKWo^(iqm3^7jC-P0}frlZm5rU+d7zt4AQ2=1facCR^FVy9zTGOB`YczCotQ zxxCQjxv{ZR86`>@?ClCLwEbW1P|r7AFL32RaK#NB%w+~dMbMx1NF*eN{s}M8phT%E zBsN7K<68S^-9H2WcH8hj=*2(eE(m|uVBMu&`$$?1oG`}&*0dA;;Vs92v|?ZNx`}M`CT;sp@0av z3uSJMss;n7jW__L)=Sks?z~@9fcQcvH7AzNtHI~h?0QS=WKU6>ms({86Cr}cWDMvE zMJqKx!2-SZ$&d|Jy zh>hE1(l3&gOh8cNOkLh?4ZQQj?1_MGTd}_7$a3d0czx`~*F$KB+I=qKkI{tMwRQQH z-q79j5(md%zD^{dgLZD@)Q0^8?UNJL8`tD70w-8NNC$#^7ofGjL;X{js|L!_>o4nL ziG6YmQFZf5B>dn7RDj^L-k)3j&hDZK-i?qM!Ze`3oP(LNgh#DF?Z5;u$l$SX#rSi# z_lz>>)xP+>i1&Ypu^=Q!E&!rG6R`F#KzlP=Gsi|b7+twvJ@|`YVV@|jJxf`}>ZLSLHlomRfAy~}4tA}0eCv13;r`dEm|g~hfnwODb9OtC;4-|-zrPR& z==%6PJp&kLEf#3+4Jz6B|LW%8QPmci46b~a=@KDzii|3g!D-8YpeI;U8>+4eDzckj z+DZNGjNFL4%cVzw9mKfKUg9Yf@r?f!<=y4fw?VT)NYfQRc^{uB4Hp-$&!cq2tOJ8 ztLsB~O#!C59R^LNfP^Z@wNe5)m;e6S{kwx*4$>}7#w-HW$g2WSYOYCLEa_*|i`Oh0 z{i-c~!PSQ0z*n7TZVOekz=*@u(=`hDl&B+2dM6X*y~Xp*k&3OrR4?Kv{TpWt64*n< zd;ekSp~%wgR(I31o1X%_Nsvj98jI#j5&p;h7mHK0LDkoKYS~L0b1f(sUdCyMcm&`G(>&aUM}@RJ<(OX zB!mPsY0z=!{cTAnZdju4l6wlRmV5q?z{m88jV79?)c3mkJgOe-f7WBF=Mgo;+!(2^ z`ewj=teYnncrL$Pc?Q)Mqzlih8Wjae`z4p5`9W1~J%H8h0=litd1)Yr@3SeWWr#sv z5~5luen0zd!N9F}4{-4U+VPThSKcVyxl5fd1X_Z;Jw8y46t8g5%pPbTLKP{f+p~=_ z9V20_ZrciZLQ!x%`tvp?Q5Gc(M>L8G_^B%(;j z?pN;t1Oen&rGs<{(<)W2OjkRE#*`;3DZ(F?Q*A(1+LJ>K`ny1V@%w>b&YbV1`jEcz zfQYhR{lTeyHrF6h*jrT%9_a!MZ{WZsaXG!-$0P6c(ks6shw93!w<=yfzx8b4H^UV( z$HV4q>5>BuHQQBHb0vGs)<;Tz( zlZ@KWg(hmnFM;xl&n@iLnw3v}GNa4^cwl75AG|qmCjwm*01;aR&@yFIIc3BhvFU)# z>sl;JICQ9j4(Te9+#E^tK7{7_(;%z;zI{OI(34QIyaf%?@fLjkG~>cnK`<6Y)dvuS zH!po!MayY>h8m$!46zKxKx29{6>);M+2yRS_M)0MPlQ`i6kEQ`7ux)_KNxRPdV-uE8Z$9H--1bqU}W_M4`+ zhe9q*;x*@AqP`*5N5f{fd-PZKKM1zhdMdgP>t6%~wdxalBc_26z*nM$`soF1wpxA( za^aZv;>b!C62#!!6(bn{6&5}ITP8;>gY$Ghh}Y*x5PkO*IFg&gxFp& z8k@R@d+Z5%kib7X*jJSY%O(M$YW zF6GQvXXm9$J{SavG$LqS23Azx#&V{%$OtkJ$Y1l&*du&Kz2jtBUoPWR7z;nSs~Mi%AfCbH|eD33rG!g7N>x@3E~QiJyuYKe5CjF z4J#&d4U`2H-LAiO#^qiJ&jlZP(+lCazpo9j3_^wef5=Gx8A$*BR^|MoK<&jW;YRAj zb@(=}fnFrA=Rbm+?dh7r{pH&yTsJJ&no;!ktE_oW zf5XFTKGEM|!TlR~&2akL6a4Qjtyz56t&-|XP%V|L z;c9M4tpw@g`JiIpk-eF2gw%0QV)pw=vrH|qk@K3!C^HcG+<-xI-vSU>ei@xMx-#~; zubQ{kz0-fRWEcU}1qjEW!5{z{+Ok>8Jqc7YFM!YCP|yLYlE3>!Z98D_S{H!E693cb zJ*m2>7{qsF)T-9HZi8gsSXsikK_sc@$Rjmg4tlw8UWND=5%Xk~ASwIL46+FGyT>8H zn&}iTd3+-W*;3qaP1Q0`=s*k`xXEoQph5Ev8)gN3d%qm zKf2%O0hn_$1%wW}j^}4(`GZq|K?8+Ck{9N|G*3|lfJo|QpLVlO>lGXCe;R!2dr`Bn zCIXabkpz9wUH|$t)}0&R1zau=NbxH&3V^ycjnQXX6sdg_?l~NXMUX2uE1=yCF6=P%diN2Mp}VLf*hW0)rg4p13$Xxig_{4XcQ`UAez8A0!CU_K5Um>tbEyc7 z0u09s2m_`-g^wH92e-wQo0g9J`Qj0`xxXg}N_c@y4Z!Akl$|3VG-Ap8 zM{u|^{ZkedTJ}0fLt`e#Naro<8zCW2S>nRcZkt(mWsR=Z@4oLJbsS-Q6}!HkS#RQrGENHXuFKX-?Yj5-0C{6M%e}&(cs(NVCU1Fmx|n*7bWj)K7Kj z4WT&&lmQTn*PDUt&AAixAL`j%;8tULDgXfxB!q+-nSRmWjligI^A@Xe(=J_kF^5g8 z){quw(b%P{q>%0hbRgLu4}N(**KhX&@1FEIBNas6mqKpa9|yu4(1%&%B){;D0=1#t z_xYJf*4tn>AQA$Gs1)F+=>^Z^4Gx&F(jltir;}Q4m6=|5ZShcu^KN}Ab|6R)>@{uB zvDKVVrS|pZT4R~=LN4RDRT^Q!NGg!3-p)3Qw4;uB&v&TNwLt?+E1)@5m4$vi!*wBD z@9yoGlTzLF0gO9b&wOly{q%N%OKnEs?I9OGIBu!}?H$@(LhkHf}>|kHosOvFh~vZ|eIOPyII=|1BF+dD(Rb z;{SzvN&F5JVt+ZAEPw!E2b|HE504Ji5wyAG+>Q+R&9&NrR^htY-$f)hwD(xXZ%w9b zlM&H>oXh_aB`}@Q7-Jj*Xx?tLDSDaHUAgJ+PR%AjfI_V)568mp{qYXh&wRb{3mG&H zsd6j%%wM})Ry9;B6a%%#*)y@FJN&hUv}J>aw;p>G0^Qy1?N+w*f1R2d z5RveU9W!9v*86 z$j!Ntq`VXLk8;z8^^DQaMz)Ol@|qIEJ)xlnQ)8WH)=}>3`z_L_>NZEK%^V2`tG^tW z`1=RaE^s=CtY=5pH+uZ;y8KP(24m+UZ*H_%jzZ?Cc)%`BLoJ=k8vn5bzOHA{kY9$5 z2k=!cYaIu47~J1}ZYp@xOb#Gm_KiX+_HDH-3Z&JRp>+u;>hGP`9RkBOkGKBYxe0k$)?d}4YPRW^U41BrtXAAfPp8YT94?{1 zDf|<(MuRivm^+>_XN%MW)ITKn%>bFY-${t?)mrN}umxvmuX|3sMme_`bR?=4Y9(f{x5CGj@!n;W8_<0lCkJGr&A zKt~hQgaNvwl#YHzxc+AK_+QG>^%w3Q0XFFmw`-yC>kwfJ90wIE#I@)V0@^vjoQKPm z9*#`sp)mflW`7@b?#bbd)$VMn1AHAM4t)YzH<1)Fw<pj< zGaMqK13DSGfnfDd9F+6Fj%H^jbHZu>(Z=lsBD$0Mm%jw2MESJ=08k}fcS!)0&gM)< zp|(6m!AbYEVDI*GUW2-KiviSnZ{KG}&0D`|xmyHBzClfvO#7j+$ClnL{2T>Uer}jgGVQ5d8K|99 zDdkSojf=lzmtW>FEWd1M`aCCfuEVKFaVMz3gj&rWDxU#E5ah3zmdzWEf^i#mVC;q+ zVIE@#W+16Fsa?;^FIGq;oAG?~9HeSN721*FI?y}~w{CsI42X%I9z?>=e*t1xCm7fs zW&5}`^f8c3ev?P$BWHmeI(8fTbf^-237f;k!H^)GyOA_Eb$j_@h78<>oRQ%qb+6y`^ zt=x3tVe6n082a+&fI(!)Xv2BvA?-VUjWGb?UpsQ z^+Hn9$7{7Z!Ej*n> z#AgDV&fez1d~|LEb*REulYQz#d4M8O`{_CFB!b^?09o5#0CjxSWeAXvT98hGt8yLi zUARGoeu*Jl1QTxn)=&fTIY3?OOsq%sQ+E!JK|};Vw`_zcH6PlK@Wjo6WdGgXod7G){Kr~#$bj)PV%)cM{!A)aesDte%K;O(3 z8T{MaS|xM-!C(a79jW6uAoC3v(ZclUq+zuopA7V4Z_0Hd-*M<4H{Y}QG!{ob^=zi6 ze4?80n!2ys-0$pe%feqz{qgHv_;?nV}}&fFZVkeW)!Os`M0;W25b#RHyo&_P>w(z}k4REa=&L0hfIj zNHv|{0M25eXF5n;EbH21Xz~c^?RBbI{$2ub_r5Xe^1X>Ws6G_h2S!{~K>ccK4CWkE zn?auFD<6~hK@CEn`HByG^lQMa4^1TCo?p7Z%Y7uVb9E>aBx@wzD11hMoaB_SR#dJP z3%`(gjXa>o5Bh^&dD5PM0OOHOy>3Rj6Ni7h@&z#(pyt!>$k{pi^=%;3i10xIW@)3r9dZZ>4gHKz^TtY{^DSwc1eBH= ze~wgH`z=&$LSQ%OmDYBHSx&U!`prK7M|;;EPGz>nm74ZYxg@4`E=d_|8mU|k<(lm> ziXu%erBYHZ$r-m?Mie^{h8i@k#U{pOGEBQ&R0_xS5nI^^?e?Z5LQOdD`+d9ToImGz z=6TNfXa4-Q&-blwt#`d^t@r)?e((DWo9ub4+YcO@U1|WA)4xr}AB{|eG$ewEWuryExz z?L)lLUIdFrg@9DL1VEjEm446wj)>XbcQPCoCI9Os>6T5vv}aJEePH+}?@}vJ;B=kW zpHH}^Dpi6C4E$V%R$~JjK%=r{6F$EReJAGPhQFP$2_#xhc0X9kZV2l6;_P+n7)`d( zBGQps#oO}|D+*Ty{?WQq&VnwJ=ncn^U$t0M9qSZgC>hq>L^B4OrStusKDfl7d=*lk z?A$Bx1;xq^gx_`=RFcNFf=(5(>UwUd|OM-W5={c>qW4{wfDd2v1 zkWx>5D)cBFrL^f)P{2xE@gdvYyG=Sij)_n5& z{Weh?^zuF@LeD~VtQ!F8*8%X2vL=Z3D>5nyaf3QF5G`>-0+6&`pwwgrZYO@u&Z9r2 zK_RrnnL9cYK0fnq?w2Y;x$PbYKJgNBS}bmEH}ePp6Rc3G0`%^9_sS^;luyNRG_)B7 z2H~aZMsJdXO1|d?-!vkZCj(RT$YL^R;RHk$#57hgsevKKnVB{o5h)aNEXm{wO7LF5 z9YSb;XoEF)T%o@Ws>XQ(fe}3nkbqpnX+8lS0?~?8+y_InU$@X_i5l-+^CdW37pU#M zv7BQZp(1tL5M{c&iS3Y|Cpv8>;OruNe15ETo`%~H*2E(!pIKbmNNrJs7+ZHRWOq9O zdYAQ?13bKz_X7acKPs5CAy^5STto`2e-xp){V5&qiGk9a{I3yhtlT`0Qh)k}zkx-) z8%MPSqJEO08DNoz#$y4tSIIFX{;?0e@WnN%)&1e2n5_YEJNoswcX7MJJPrjHOCAI0 zWnw&!Sa^KD7)g5yBhKP=cj!awi8TZ01wl@ zf9`L&(s37XY!AL5)GQ+_E$|Vc`7o45(c7;mCR}AfeuCdiJjt&XI{USUdn#n(5R`fY zCXEh?#$lnS7Iq?PKJZ~~s=JZxvC~Dj3wd%&QW29UMqJzBgy;nwk#h3OYR&&z(ZWAh z^Uzck+4QbZw1z{)OKAx(DuvRBB%LNt-fJWV65$vMzk=jsf@Z+md6h&c8P!dQB z2AoKyqqg@jupgTS>rgkR@Dwogydab;x_%eiS=k#l?lnFsO2;6YtAFq7t}pEo)t&;i zJ}S$8ccVGVo{JA*p>ULc!|x7%-TiKYvJ>Ig$1gruel>{Y#G8uMuZJ9`jve#bR)5y< z>%p65H0N*C{g~lXt0r%7_QXJ@@lgFzfQH(5B&G|33hQ!$Y|HP5`EowP zC0)WlZ+zAN^KIK$hpm>#vTP2&f1~P9166xEu|OXouT*PSwh1a{{v(YS@*+<4%p4qq zR%U|S&zjP#S(Z9uPeC=UH(}&{Zb<}tH8BFUmPvI7R@t0E>Vf{gS5P}}`t>tLXwrl0 z>R>8E_s+Ppc+2Jd%q3Cd&E&on8y@c~vNf4Ix|CF6yH^AL;eZYV$~`tG3$q#$VqdF+ zMK@%hqYKFTncx~$rdnK;4m`rY^?tNlVx8i+5@INubq+DT#mL2@MH7thC$4cWRF`|u zoPx+G$hf{_S>XP(mBCTNB5_{`x}d*u=;w9Ipfrv#=fn&>?vTpjWI^WqwaxWXq)=QY zTEI4BG{ML;=9n&cPS(dM4RJ%qjEF8@Jm*8~?%jv4hA;F}7cow_@tZSlBM zv0}<+`%a-ylgS9tNoN^KF_nU-WeQ(WRERLey2N8_RHF(D12}N-ky+>K8U&%=2Q=+n zWEa`eS{<{hfruD2iXH)Kt^Ja#D-##Np3E8_t~gO?pb(P&La@R}i~Z@{RK4Q-H@H=- zQEb0}$?1xo210--#J^7vQl8iZimdu=)slzpr)t=ml;H0nPQI((}qv_R~Xdi&2OzpQYUF7X*p zqwK%!(`V3DW<743He16c{BNWWI5a096c9MLW#SmC(%BKx1W3@<@aalqnS4c|D^JZn zw%n17H8yAL__q|Jo|s7(rAA*Wq=ICk8o>Qr?rC)Y&DkS^ct*-5sk9`M5PX}VG}MIsIL9TQGQ23jhn9$u`(Ke z5A$o(Bk>AF4k?fxA`?FC)U||v0{p?l5OTOKz;J1K27>zHM*Tyt`cy~yHhEScge2J0 zhGyc#Bp+1``=(KkC&du1;JF&@-JmdpM^nWi-24GKpo_Q*oypm{(K0pxy1!%j1jL}7 zO9HeQ=bRCVe>^YjeX+adQ^Jd8hyJbJ{QpvK{=4V@$2|`mizsn&jffn~ylj{=X=438d#SJ3MWR&0UWa@^mg@eNsGQYs8~H>o>~Z zPA7T0_*8#SC5RX9aX8qM|3N2KTy3Mga|exVgw^Ss zd`@NTa${V^_fS5%M~?uYGmwO1O?Dul4)dWnv}NEQH~m%g@_aDM&fQ z3*Y={_;T9YtHO)7-RH@=z>%@SU)m&vk;Jv8($e-m?3 zp=*c3Dl0d>|M*#EY diff --git a/solutions/Figures/inference-about-inference-PartC.PNG b/solutions/Figures/inference-about-inference-PartC.PNG deleted file mode 100755 index 21ad17efbfd993d6de659646734dd81f00312e63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31131 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 diff --git a/solutions/Figures/inference-about-inference-PartD.PNG b/solutions/Figures/inference-about-inference-PartD.PNG deleted file mode 100755 index c721b3d6e97f3145a694cfb470772f78664f35ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35943 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 diff --git a/solutions/Figures/inference-about-inference-PartE.PNG b/solutions/Figures/inference-about-inference-PartE.PNG deleted file mode 100755 index 7c71027ea7c602675d03aec4553bb9c2fa4cba26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27755 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 g?o-nR>(s;BF04W*+J$&mX?gc{<0Z?p!=Bm)Y zv#m1w9Jy^z#Yfu7$)bl}%e>7@o>AwTVSNy@w$ zk5CrE-3&g^JlPA)*ZSLXA`n#FOPk!K+`gaQ!mmVG3R6gZ#uC(7_bs$<+v&L}|+$XdfQdZJxn8H&{Ak7DI|?W?Wqotzo$>l_U*xwOa{ zCoxWV9u6F6YiLE|Z#he&CG-)5@&-Wr-%MK$)flj@b*DN&+-SB=9kmQ-F`Jl$XAD85 zY?4xoV!k8t=-t>^21%<8p0`H4Jcsy<#p2Kp&>lV41KiNDYCiLyaX4WfL4|U?O&2_2 zH0Wa%o@w0AN^H_%bwk&rZ{8h!(B4w57@FHGK>X|p4H0QOU4`ej4eo?I0J6w?2Vp*S zU_Z_h&<4N8>R!E_M}KTKvwJrh+Q(TzO;o>Ld?B2&Q6p~F^t^ZAS@APPDsyGQIfhE8 zI07y#|Dx@GNXi_E)4wF8RPK0B!sinffKsCeqC&=5(l9kpB!x81+CZ7B+5C%$?T$D9 zo*ia(h={9c8Lh=@p=jc7#_z65ju$DjDO~JhyUHR?owM8DD?NxfpQM44q&A~ZLp%!# z%zCkhMTOx+(WSLyonT`TDZ^yOd|%3qtWK0re%5<8vKvDY^wQ>q6v}a(4{WikMg4_; zhARhX*qT53X5Q>_PsM4_J zVm#lLPm*19*gaf=>rboZXDX(9SA}v(55E}N8B27gNbOv_KzW!mMuL8~+53)~&9!nb z`Vhnvh^1Sh!&p29#%7b4a5dkjSuW3{jD`(p@}craQ?2E; zWkkT9^_plhMrLD0YUy-np!7$pB>ISgxdCWv>r*BdEenTY5Fv1R1oW)*?X4skEBgqUeaC%1>+`q0CWc-*#o&Iwr=M@oE;5UMx%! zr|JQN$`3kTO+VH+nUE4pzaW8l^3M5bZ9?0X?~|1hUuq;Yx{{1mu_#xdj*;V`KMFvGar*! ztap+&mLZvjR0L$Vae1 zL>jOGTjx%d2fq2Rqzw3%g*Gh}6Fc|VRf|^iTvzIp&!K$Twt-8tg@i<>et@SUpSR*= z3xSGo5L6W%Y;T3{G=9a%eZL;fmg^XTNQynwPFyWLR(ZJz$@|mEUJ*0JYpNVWP>_Q0 zX%R0aKncNp^^U8_3a=`^j65DD(ja-=+MPCV9>pE!-6h~It4Vyiwr9m1SGRzQE~J2d z6F8!Vwtxm!M0i>hg$A`rE~i>mWrVk!x*~k2_r{Bqj4&q648zh6-}}}nViBm?b@Jqi zZdmGE-Ml(3xxn{p8v23rKFj@dW#C-#AUaw?RsgWr$wS-GcP>GmrbVGQ%EZ4RZ|wc* zbqVMpBFi=|?G5PYFU^aFNc6>5u=f>)S_>z9u##z1m3vcqh}QAT$n*+vjjM|bXdXSH zcSD{9Kp@0u|Ah?|5A>NHyM{2k*%I!k!0|aE*ErHT^Qp3@E!iuXsWmqmi9W?xm*9&u z3^If(MdGF-Gi5nWy~spE@1LJ=}(Af_aL>b z#?(r}rdHPIXr&^Ix69S4)rRq6_yD5AP-R;MwS;H=@!BMJ*~FxH04>} z0L8iPoA#qS1w!$jU*pFr^hOznwUKeT0u;J0v=%sUOt-K+aAU#-!voH zeF5NH?wCDv*qfL32K+M54iup73cO9tI(t~+=L|J#diIV#kuC7PK%s2cZ!5EhWrs;t z+n)CqP5?^(D7~>&cv(hmH{P!q&6+-~v^XIbsEA zHt#*|zS9yH84HK6tL+Hr!Jv2&eYe?~$3n#R{d$3xJaW)9Y_zoe%TdKx&lgjF`ri)G zY{?023M=yY29IHLPZ!*P1l;oi37@sQTj?IzA1{W*fN01hCdJpn&7HARr_!;h=&A5plg z9Hbwrl}q!k;!(^R&gKUkZs|7a_j7>JXN;QM+xdvrzS7mTh5}0K%MEuB8?zwfmr+56 zt4cfg0{DXJ&-yH#1}%qR))|NI!_HiL39+70Ebs4_i#S+U5DCE?HN+?TrfHLot4Jx~ zsJP+5&@epfkH=F{e1lR{TfZ@P9618ze$h0-&^myQNwzKl+QRaL13xB4BRB2hI-FzH z5vLoQ`W+w$z0BlY$e*D@pZhS6Cyg*KT^d#~h}&&10O)zfi=zTeN|9cL&WW!bUDp z5JeDRs{8%|uMs~BLJtd@kw7{<{mX2u64V-#)t@i~nAt?1Q8aa_V544D{XP9Lv}Otg*ERwo+%8vxT*mQ|E7&QS!I=NHC}2MGEmZ?7!fgU zG(U9d=PI*8l9oe1FR;4d-sq6}TlzYr6!fhP8{hLZuD2)uIT(@1KUgU_nE#;fLSUs* z@^m3N1^=CPBR{}w21?`wS1Dvn<<^3qE4|Zn<~5ZXX>6Zs=(=KqHNIjhTy=e%>YtKe zj_yeLO7vZztTOQG798u>h}Hq8+|bmUgNQZVa3;R!&q)u{@$EucCy3VVZH`}Q2RWxG zJ2VPd8np*gmp^Zh$f7Ry9!+ITTO^08QiLIq8{f^r!n4(|-0C5Ta-)H5^?c4>DIOL3 zlpi^3WQwm1Y#cBK6|lPQid2tz&*#xmPMd`FeWW!>*T?}}hYk8n2Y}N3WD!9~lcHg` zZf4WQ#}~AwTYcQ39(-&z3u-~{fTw8A=IFuJbJ!7WN_QJ=cw+0;aK}1kRvwXJ9+{<#R>{61w#WeTD zZ~R8WYdYTW$1ZH zehM;=p8Zw!kHKp5dUBq=$a|XtjF4!EN`6S9aPeevIboxMq;{5&&+8xR(RrIBn7n3$ zvIVdDh3x;u0kJW)TBrR{AwwKF+Wv)GC0M3=Ukv?HD8EZt!&N6WKV zMa`+Y{KI{04vo+8sXv|t;YZ8{D>Lt@16>lG{h!C`XAb zh<1)F)P?m{Q)r&7-fbp1A5+y#@&d-<2SS}7_$_?1axt90Xh&G@xcst)e2DO;~m=oQa11g>nv z$n|rY%g8rcS7m4~yd&zgJzB|7&!p{-e;|D*UjwEz6b+mUSdKR41B$>aWydSJK4vGi zXECEX+4KT`z%|iO9wJ03#E}FZsuy<$toM13L2YWTQZK3oP9BO)?z6O2-@aim7tD%{ z5}4+)a2CAinhE>lYd3uVER3RpseKOLeVmLoZyemhGsFv;UHMw>qqkjl}RFzZ45{L7D$mj$l4-2h$%iO)=ot~cB zem{NPY$FZGjlMXMmoEb9&SI?TMQhG@GE8x)fJ7>ab|8+(UV4uC&1t!lMD0L~w1j`! z01@1tPN@?6ICl2D>5blLrh5KC!@^zfx`BQ{1||nXTzX2Gb-y~=L4^OkVkk61$Ni}g zlUQB#(vCGqUu{63t%*ep0-yyyh=|gonF+yyGlIwO?;o}u11!JLkqhLn9-)OC67jvv z78aMwsZX7`ZP;N~;LY9%Z+6vg_7tTtr>b}ieFO^59bgba$iI>tonFSl@Bw;aw< z&o(!F!NByKl-!TU=W7#ung!YAV!QA6a@UM3KT=OJJc%j0h>3`DtS6zI1!oIi4-U$4 z3lM-_%0ZtPrmD%NJrd4HFJ~0GOl?i;d_g>z$!p9i_1miO=|YT2(NHEs7!iGW>)Awh z((XUDCQF+`4-w9Gy5m@1gXG_9S0Y+12jwcN#U&EMeok7 zn4dl@H0E;svZbiy2KVb5XG1}ERQ;5=UGO(L)?18#9$eM4Cm0o&F)LBEO7at%ht9Yb zpZHB}BPR+=GE&X)oV2kLVX!hCz1@-3WIeXlgJBlQk;aH3NkY&)72v5UeolLz+B+RG zSyxr%bL|cwj&X2)fxRJC1{W=og%v@%=!f*q#px@ta(`&)YVV^$lNmd{cNN{_%ZJT= z!E+hUL|zz>hm_2&n5{D(c10?c?!}j9R7^M0o zmx*SDI+F3$GUJCb`#oj+#V{Lyt2?C!1Owd3=~A%2(g2$Pctx_-Ft_t}rHtBJ${)>^ zX<%-KjZ&U{n`*>f=`hkh52wY}k@yNf9AGqzoTe57sa&H zM(`kCao%mdFrNkz_V-WDZ-3OR-a2PeOY>C_p3BX%rkGKTC8HvEe%d?p>g#Ca7te0# z_e`wqYVb-{cBu$ z(X4P-!?Me147KZ9h{&3-d=6$qPUp-F^9_Av41TD72P`^OGjeP@_Z5m1LA1xyfH>;^ zkhGtuUd{~`x5roAY#P)ruBfGX-mn^VW#0Uuwi1nxO+K6cXR;6XYy9}tLYSv;O>5c& z&Jo$_43EL!(32JYNlLtvM*)BCFC@ml&9vO*42lUoqGZZP7U&;2NxvYd-s()g8{d0+ zmH)XVcd~v_-Tcd@a;sKaiQIm}H2Rr0i1f=BF98a5!is?kzmv~D5k2>G6sw9VUy`Sa z_5Cyp1~ilNQ#h=GFVqb)Lc# zAqTq?J|nM4WipmxJZ>0og$sNqnwlIB!G!{qA;eelqg{`AROPAARKzRITD&NZSw(us}Mkw2|4BIHjl zY(#{R>x?));&5;2)h?8EHhJ)O#_r8q zFQv;OY^;r{m3z3+vKb5@07PzTwfmPl0TD6?N(?MjL?OvX2DEFiZoFUWF7{rPG$+9$ z5T)lY{)l4*nE5ia*+to={Y5R50CotL5rMM~Bx_@S#oXsAe`n;}W3lYXm`hJH+s?I- zUTWq$gca$57El9tpV&{zW;&sr?bnz5T)SWDI#2n6!zb5hgm@IpPS*7Q-4CH5eP6xB z>>?>a4Ei<6_B`5#=5O3I)G#nC#MZvl-CWR(Q-@iAl(>O}+#3NkA;<>y3MWCAkYbwS zzM|~g0m|%b#pRe4rQ*U9RVRT?`MI;kJ=H+^G zQES*Hr?O{ewJ1=Yx=>JGU^A~~=PWN0Z5sTgAD=SyvOy;&Ig6FSdfuFt598lu0=YpT zYsd2p%hd~_t9KxLKCFL&_;K2Lv^0>HL9C*Bp8kw`BOYE`9GTi znW=eAs_i2tomzK_Dc>xAb>6-Tv)HO+p5vGIFm0@P%wIRIa9>vEW(ebzJ)PaX7Pn!MP5DV`uaRk}PC-N~%7O{0!5 z5`VZ}hPe)4lzIyOo)y8{tiHB5y=VzXSjKLZ{mQs?<0IB|82h14sbtCx3Va!vhB{S( zdH#$HeZFMZ>Ykvsby|Q_n*eX_#axqcc6# z_f3ALeTcV$P$?5t)fvPdpCi_8dm;yCvkEV7Th8w@X9B&q_L*ZjaCdc6CWLbMi$@aQ z30J0Hh6+#oXx=kWscVpS3}*pf$@f$nrUEY}N)8Id;3?S@Q^0zf^O38Kp~-ahLtj5- z_KO@U6?z-yi5#@jb3v7QR`dL5%H*sUU*!`3czO`#Z>;Y+K5A1h!{>{(Sl|^TkuXfT zO3DCum;jI=33ICBcl_i-s=js4vgciKb1=vPsEz7{k((Kycb|rSR zs%C&gQ1D>*OLxRG!$QEh=8s-cr3L#ratwr#j3TrC42)?(f{jPp%TlXGa5x#t>BM$=%8-iRhY;yodH$c@h}yJWWmG7gSyESN z=-Y}bQtSKT3a}6Iz(1E@rK1`rh*C53B8F7T84WftuVEZ%8)f@~m zibX>nkh{$VF>!Ow)s6>4s$S&1QHmLtfeH^@9a_K!GV%?6w~ek&vnmo^9pf1vNgEl- z=kbJxSm}-u8n=})<4B@`vw`R3X$Sa%H%`AShp0#P*q|bh@A%;k%?(Q43Hek zK^hoThSU;VTt&8=(qmeJ(><=|Kg0{NQ?@dcIQJ{6Kyy{Ki1nI|TcijuS)K@!?Ac$F zXg=#m>X{}qF5?R?1|SecAd(N9G29G(bNFxb-1S$TzO6_ARxjkI`wKkiC-#Fzo<} zSrG&OWI02kXh2plvSvZ)QC$)gFB%DIpx~cvs5<&%SB#BQe;n<9xI&_eycN6Qm~~ZR z!CAfdSK1Ie2O84Jc$0!~|#SL!D_38BOc1v6CDvOeX!<2Cjw4C|@*M}b62bZ0> z(QWVQ>d6l;BXtzM!`S5EaGDKmsd-z7h~)kh6P3%XBHVLI>NY%$k8GGxI1*-7RBSk@ z>}6zWKV@ZS%FbSH-#Ebg4SsWiID*-&jrOe;6v?}{d%6)nelYrQT;00nySP`-e9<8A zL2IRiL09i(lOzGCjc#MU>Wfz9;cNVmKT-J0>lY(4%mOYrP1Pt<^t55=IaFfe^IkRb zr<3PxG;H<@tQdVCewxVMh*N>l?i!`$D}DmZZYx_Sn8nwZE#HBeKX~l?ZA_H-%&?-p zulN{{n@M{xa)NbXn+@9NOx! zD@i&NM9M#7#Um`1#HOzH-Hev-z+YMCtYfjyJ7SMW6Ehj38(z?}(5qxhw6D$t4h19_ zW^m~(RViLd15qQM*N5}nZoZIN37C22MVE{&41^f2UPGL-;Ge|Gz?u(80Jz|Db0+bSS&6>1g}&XI~alGr*e ztkloq8S5oB_XA~+R6mild$-`VSGe#u=!NFunj4Fd%CdJfx$xlGZXzZ!jdLKgV!7z! zH>8fU*Ad~G4yS>z05&J4J8V`#k0CltpQTAyW4E4h4)GPxx^^DQzH;nTDHp zYH_w=!<*e-kj6Gv&y>RAluue2K+pkC#+G83gl3}G)R{lPvJZ00%S$^K%CsnAzfe3> z_4AMnHICJ}=EdOwJ8?arnAeacK<;V}+`>|;&fqRJR15Iqj+DCF5y|B4?x5&0uKvL+ zX2QR=as^O;rmN9n0mOVilZ7k$1fc|wtv?Ht?3xrqFXOqa1d9}vW!6%aejBA|=Kl!q zAy|c%6dAm~3DT|C3IZHLl-d{zmrAf&8CFLOH)*PM=n?f@}`cWnZ()vjBL(eU>Ck zXT@j49EMPfaj+*3d{qx!!;T|eia8kl#;NZ%d)Z@OBsjtnKF3Lofg0N~c0#cKjeIXx zz#78CKxFrf$7D{G`bWLZ!Ob&Wl6Alw0l*H!SgkxG%g%}0n(;h)c1H&vEb6KfcUP&K zqvgk;&%ZfRhF9GaSNAXUFR%Xm^$mwnbS+6jrOtz<8aU<-&hR(vmkW-kFbcvK9)ce# zR)Cz_^{eL~K)P0@_?BUW{)M~gO-$<>%_Tf5d5Yf?i5i%O)D*vS=!^KNN0220;&}u> z-pjY6M{>TF6mYV|z9FhDoa0rw*vdYcf&vqAwwr^D^OZz&(J4#i=>P|2*@GYf0%MOr%X~&f#mmOL>gaVa@J) zE2}00kkh56q1Wfd_C-(el{m|J=ap(n@MnXajW>*Ch4l#;c;9ufs?H^uUg!&<1t6iBKIB`Z8Q{P-0#Q4*&L|J z4dSuTPtyzfK&mWw1j9;AzLZ|Nh)gCIQgeR#&ktnrvKUf?e^Qe0DY?g=1&^GuW%b0VOVR*@_n*+<$uDSvmK&Dyq0N%g`{iXt3tM1g#4_Ox2)7$VM zB1Z;Sr^^j!E31x%;PEzmWWfXWcLo$6M!`CD?FO+Ix-LZ~yP1WY<;gl@S0!rb=-ow9 z8>bh2A)2gq%h-9%S$P4>g&N_u<96PU7MV zqbmA!4+}(O9Vhu0OKo&SMj$1FAb&A*us7q6F_jF7=b5ljuv=V=>Rgn+XJVz^MShR_K~hu-nuQ`NDy=Z8!aN=g?IgO zW0W9`zh`v1V$DV_V9zc6Fg!f`wPcVeX|?I)j_m8+kiTWf_Um0D_MPw(kX?A1pb}|8svWq7F4^0!O7bBV0fvHLQd#4v)W^-!y)xXegD!%iE!kG}VRpKRHi4GpzM z1bflR|3GF85Yo%fDCocoRD}Qi9gu4A4T&}K0fXb;uhxJbv{Iq)E&l*QD+YOdH>o(p zYZVYzchJ}9aXRb%Zo-4_Rc?B$sdTErF>}rDAAIjd_Z)a{hbkB-#k0C||EYTu|EF2I z=4drr_U>GmRZb#8PnOCN~nK=iVW*My3X-Jy7P7 zKAs*;?HA-mu|fPOy;mZT8uo)=B<75Xm&(n4k27}W^+^fFaUUNHGPa_2fbvRTDa+Ux zURI3BG*eyQ9^+V?JTE}V`mI&V+2_1Du5$Zb%11xWWok5sOT3;HxE6V#mkJd!^Xfx| z6%NC9)HEbX5XPHkk{o_4eqQN{1PjeRBEAqFisdhF>z#!Nf$=lOj?+!;$~#C2A@NKH z&eGRqx>#EeO;z8!t@uPhvlgxvss5wn7B%LJHeqUx^?5FzLnm*+f%h;iB zT^Bxz;2hutU5=8)^+pp+D@$Je#=4m~d7ZG1@EAfZ@{aoPXSw}D9PcE5%(hrWsN!2| zrULQj7)c1#e_#QxmlK;p58EUppiPAExD7eCxGc#*G!Z#>k`Dy6se0}u7-TLaAIww| zxN4XbwGW<=2$gUy_QtVCQUB@=PnY}5PLR7lKE{WeF#I4odFlK6;Ei!tYdlGbS+VM(4j*~?i4u3xhqq!+NEcENve4{K8LAktGU%o6# zaJ4_DklGMSk>SGRgs2QoHN}_DupV>Ms;(dE?FHB-EEf-UiOsZ^mJ`dYAo|pK`8}%+u>1))yow;G35l$4~o3Gj9Br3T1rGFw4lT-Db0kgb#RGJ%Rrl zm3O^yq&~OqHYE2a6XsAy@0Lq}kkp2~V|R9j;>|^-Jy@)UXctU;rD1rec*4gpn_jW( zWX2$jiR;F_pKrdOlwQ%uP{eW=G-a%tZ%&L@Tt`Kv*^uz3Tz$>x?rOK;EG}`jSigSO zm^_*wlNy>-V>RZ;9DbuS}bjdSsujJsHEz?b@?N(Jxew~s1^K%1Z&7#W&!84=E8mlhj z>7Mt;yOk&Gp4=DP6;n>RbMY**!%-^+Z?-fl8MYbqD29?fJMu1_bUNn)1@B#*9F~4* zle#^#;vh+{$t&4?^O+21*9lvA&*&!W@jA}|+;V&o7t+?C zTZdQV12d^6SgCxXUPmU$ynH8IE6P^>c7B(+T-D>}lRUz`Kd!Y{EDEo6o6fHrBlVU& zq#mL0foKK!s*)lefzYVFQiBW%?BbzcF~Qi-|KlUtHbQjpIPiBc_B$GAzRR|JDH@gk zBM=)kH2?qiCh{B09Wf;qfvhQm8u`FVsZ>g3X3g%YKGP=~ci2!WZWK#t^ysc}=C!fo zDZBk-p~SDUPFfJ&_^Y2z%ko*)kSEWGP{17+aR(iV%}&9EFB}gJT3u18((K{+bx+|B z@OL|CR2wq>9~HzVX3RkGva2VEmx>39*g({Xpvt;_BXR#D)2aD&wt28(P4pq2o};6D zKnGvR};J!hNaTk~l**Xo<$YohA$g;zDg$S!III?Ux*;qY%q zyu|ogfFbZmBNo}08(RL7`*W#NILHnYC!|6IlRqkx`P+FcKJ#h!(&mPUv03C_e zLO_LRy)JY`_I^Md(7u;X{Ez-VVC8At!OHy`LEypu&|wg5Tij#l_1~8|0+%`ZFi`-b x0;PHjGgB@0@$?dE@z39ZpVu`+MzAt9Na8 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 Vnho@46ukoeq{S7)%0&#m{ts@0>+b*n diff --git a/solutions/Figures/inference-process-3.png b/solutions/Figures/inference-process-3.png deleted file mode 100755 index 1c79b33b21b80585baa11af2bdb9f2e421feef4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42387 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

(cG*2z7v(btrJCjdV3}G!ecSt~gsg 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 Kj0i|f?0*24F|MQl diff --git a/solutions/Figures/agents-as-programs-7-1.png b/solutions/Figures/agents-as-programs-7-1.png deleted file mode 100755 index 63a506a8bc409bf3f1063c892e3a06f19881e577..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17951 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 YKR+?FPQHJj0000007*qoM6N<$f_t&OwEzGB diff --git a/solutions/Figures/agents-as-programs-7-3.png b/solutions/Figures/agents-as-programs-7-3.png deleted file mode 100755 index fc68854e521dd2dae3df0b4ee97aa5a38e78dd37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19290 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 JPDHLkV1n*GYuNw* diff --git a/solutions/Figures/agents-as-programs-7-4.png b/solutions/Figures/agents-as-programs-7-4.png deleted file mode 100755 index 3b623d664ccc214295e77482bd46dda6310d150e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19267 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 iQ*z8l0whqf1pYtAftFF2x{vb!0000 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 z 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

+Z`|OwI?)2oO7%y!s`arJ4}$a< z_`B(Yyg9X`0CQBd?@B|kLHtZ$ulYSObEeJ15aX_uIcV2)XYnP5xcjRikVOq`y3i!d z&6Sxq`=SH7Efv{JN2MF=7g(RcH*DMofA{yJ!U|-BN^V^Hl}mB|5mqT6y`_Y8-I2Wi z_~yhcx4GEn-2GUX)N$h1{cTKo6aUQkY<+R6ZOEnkCRBNEP~Aig31VHwR9N{bZuE&9 zd=GuF&zW=MTTk_tPXOCBej+Wv*0%|k zth&Xc-!J1S^vB;z!&$VeK+RfrRY(ul=7zmV-8T9V@sfnQD>!arWo}P}o4W0R==4Wq z7J+fM9T#Dn}D9UbXHvC73qzvAamVBWvfQn(+x!V7+pL5w4h_DMdJ}A z%&XZJRP>AP&%qZPQ47%U@>18tVwmLE12vqgv z6DQ|Z1IShp<8Km|jHXY}=~(7}PhmwgHLQ&$%=kr#wf{ZE%&;#lEk4qC)CX>3KsWxa z*(vnTus0dP?(nRimN{xT;Gin(sD~jyO){Cl@Br!kWBg@zDZoE9CSnd8DZ%y)F?AJd(kHaB<+p*^=>` zq=yS5rmO|N<|gX$&km1Qs!C4_Oi<)#+~ReLD51(q$R!m_xBWi>uLMQ;VxrPXfw1}8 zvA;6K*HXP)nq&g<`mmbm2dj3!m5;FeC%#{bTdTtHp4QhMPV-j2Y0<-EC)ut96IUM9 zh=L)M8_QqhtL#6q^#XdMU33qZ#}ucluy&Q`GxFL13wZtSR}=fj25b#-zGcr(Ft&9o za;$#Gz!Vd90sYHS`roUm@Fj0r&hZW$V#_ejy|qz`;?Yid4i-UnxWK;<6yH>y@q&*y ztNMz&<4m-04%CniM!0>16I6(&B?TsAp>y@_q!j&k8s zeyR)sK;e`-_EKIz7U(6xYoYz$W;rAMet<0+iw6G5pm1Jkr+R%si2*r}?|@)+mw#i1 z5k+@^QOiPDz(IwpCXzKt;*4|yY?hpukN!1cqGdAta*SWdTb13P8>4kqlG5($+GAM< zlt8K=1lp68^&-|*`jB};nWgHwNUHV%8EDv=Sdm2gF+~|L?qNV&fB`JUMFY$4eGf`L?p!r5o`@-Ost*kq=1auwQ5q;gaPc1!sYh!gL`J-jA>rM=otl{Bn+yye!Q5 z=eM~Zzl(Ugf8lNkLE`t_vYoHveuDbN|AGsm|FW#KLK)tJ_HhZB*Ofl&O;XjBbTQ^1 z?jM9FDXz01*q^WaP-uBA|FLUw_~GylNv3|~6Ujc;^41Q0q6>Uy=Sr3CVWkh_frs$| zC7FWGL;kbuGy>SNRtK`fJ|BhzZ-5kR`2Syr|Gq=a!VIBa!$1A|1pdfKD2i8$8U_3h DMv3N& diff --git a/solutions/Figures/inference-process-4.png b/solutions/Figures/inference-process-4.png deleted file mode 100755 index 1a1168058ceaf3e0d974740c272b567934f6ea7a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38896 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 NYELwkixgk_{s%z)O8)== diff --git a/solutions/Figures/inference-process-5.png b/solutions/Figures/inference-process-5.png deleted file mode 100755 index c1405ee83c58003cd2c698852678336db6c1f1d9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20601 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 diff --git a/solutions/Figures/inference-process-7.png b/solutions/Figures/inference-process-7.png deleted file mode 100755 index 1e406be75ee98fd8959f4537a7d585a771545cfc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16374 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 Uqbe8q{Oz5Tn4D;}uwKCb2as+-_y7O^ diff --git a/solutions/Figures/inference-process-8.png b/solutions/Figures/inference-process-8.png deleted file mode 100755 index 316ce1b56a778efd74fa686a2931b00a8a3be988..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16095 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 G0sjk6X-h2t diff --git a/solutions/Figures/learning-as-inference-1.png b/solutions/Figures/learning-as-inference-1.png deleted file mode 100755 index 3ddafc456a51e7e571654bfa6d9501c6003cf75d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32843 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�QAfo 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 diff --git a/solutions/Figures/learning-as-inference-2.png b/solutions/Figures/learning-as-inference-2.png deleted file mode 100755 index a24218f34f274e4d3f99917e021e06dd1fcfedeb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20219 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 diff --git a/solutions/Figures/learning-as-inference-3.png b/solutions/Figures/learning-as-inference-3.png deleted file mode 100755 index 4b8adbcf8c5264e51e46f5d7879947ed3f8ae89a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33039 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 a>$|R>Reb?StA_7@KS@zpkqROGfd2su=Elqb diff --git a/solutions/Figures/learning-as-inference-5.png b/solutions/Figures/learning-as-inference-5.png deleted file mode 100755 index b0d4cb1dbba673fc3156f8d7fd534927ba346d78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36852 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 diff --git a/solutions/Figures/sequences-of-observations-1.png b/solutions/Figures/sequences-of-observations-1.png deleted file mode 100755 index a3ce530523252eb1cc2206adb1e60fc750803a14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18769 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 EKW|LRFaQ7m diff --git a/solutions/Figures/sequential-decisions-6.png b/solutions/Figures/sequential-decisions-6.png deleted file mode 100755 index de1fbfec1747a809314312c48492c3ff08fe7ed4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65030 zcmd?Q1y`Is*Y}OPJH_3L7I$}diWM*J?#11T&EW3tQlPj?ad&suXL?@ebwBsJo{#X( zTC6qX$j(l3Bsb5n|lK#2!MN~1xG zgQJW0NMnG*=Y>p&Z$wi4vsz*dU7YK+)Wy%3V5|67*DdtX zjiakn&4LO>$^g~w9qI{1_DBq7i4&)+$_`9MlN*OARA}k_4=z$>T=c>ygy01T9v(%}A-+Nc;-}h}I!zM(7NoGclc)Yg{9>R|c3@p5>;y3~6!doi* zC7Y+{XgyEi@FSceaR-x{_7JL|Bed7wlg@hnh;h%7cuN<@lioj$$W36GY~yELD9L|0e!lMt!?7{{^jgZj9o#$P-= z{KY6@?Ee}>B@n*iOI8bJ9rCh_f7TEJ?C1rIy*pgq&dhFXfq8pDuUt3V`g;AmLFw|LalE;!3>g4~i0IE#jSUC*}s*0{2uYT1&qhQh^xkOr=w1M49S zrMe~pcM0n!aMO4*)C{D734oLS1?vGGp+B6B6T6}mlu*tT4xWv^3*GzPG`r+?3{8&y zG+=l%p#kAxFBG$ChYlu4$_+OjIxk$FJ04$-qiQxiVwoaz=27x-8~JDO*f^#JMmwRK zpC4^LP?`$7`y+S^tJRxq-PRHQeWy?8o`rOK{No;lDZEBg_$22K`a7IE2WAGcbj}{SQp0pcxIIGn?FJIXyVHvWnfg#M+%y%tJ#lVYR;3dT)-74Gy1aS*~RdD-O znBJp3rM#_FZ}z%PQ!6y7+w1$Gw3h6oO!Y^x{kGkQ-VQd-xhuDiHS1yM56PrgAD=$Y zhJ>}ns6p;UF;#$+rmiG@KxL<|#mS>_eW!((eCNkd_)u2~BO+MqgisxtDQd}xi0E^# z5Sxgpeq9-u!{7i#5LPS2%5p3?Og!XwQ;iyk&%a=Qp!=H!k}E^%3X`OP$r-@{dcaM8 z`--6T@*ogG4~no!!&-=-w7^9Q!_&fY^$;l|e(IsP#N&tbHG=Dq-2V2-2LjOuzCr}; zM=%_kz;6UcF^G6PN<=!bPw|4LFiXM{@dUe&&|>IQDzxabVG|;_xeUtCE(B#^#3D+$ zeuvn%C>g>qdrwCVR0YyW@6Q^kf<&C7Vz`~+)F5a)asmCOD_&o zU5E$;iUxsYNMAUjFu{7TZJyvZ~l~m5k?T}m&eTuw>4HQPBv_$_3xAlYl2ZAVpG2k*PGD|jbByA+=7*9h` z1NjfwAKdS3-@(7z9z)Kt&b7|DmwJ~TSPfZ1S-Dt+b2xH5aollGa6~oSHn27PY!GQE zwyd5NECd$zO~cO|&3evIO{YvXPAkmx-TK_N-4fqM+!o#v-OeIu!;rz4!1#x{gk~ZM zAR$J(L|;dvM2F$u;FGW^vh>IY$q&c}%Hzwsr-i0#rt_pXrgx^PrI)9{rlsmE>NIF~ zXwPVu>4a))>Ue73=|F0;>sadyE>79x+05Ih*rYD;uxYacIQX_bvweLqvj2TMW2fj~e)E23V&886eW-6Je;jit zX>fL;{?}-a^>2b6?~vv&ciXrr;uisU@3M#JtArc68_yfFo5pLVOXr)+8d%cxz~~52zXgxE>!|3UF8M5p@B{$@S6N$mTkWsET^n4d?i$ih zF{Cj7)Gaj@mDN=#=``sk=&l%A>9A>IXxVA?=(1J)@`6;RRd|YKO6u~;N1(WMui*%2PbxDjR7+(mZWw&zy|?rbLy`o`21AQM_fdp0N#aqc z<;&-zn<$!~?jYNF-hbR7Q&(z>EC#kK1WmH*RJUeSB%MbprZedsB74u0_e;aH7jf3wptHVe3uw1@*$;E8t9cGcXLc z6cqz?-Lukq1%3n^MNyEqVVlmMJC~m!Ol{grl zlmcWAv5%Iw|MK5D4Y`Zz!VSB2y)H-OMo>lki70>w``JprjDDL@mRYy+)ct7>yN}^Z ze^7rb)nejMB5EN@Ay6x&S~Iyer7+d@D`FR?ik;fJL9V)rBXGw{lB$d?&*?n$B&I9V zi|eF}vaCv-U88sdqM6*zx8uys`!V(iINv_vUVaY0$^d$|LX|LO5mh=Rca^{r=c zrzt{@ThWXD9g&?L3o#tAx4!#6W~r}I)COK%0AK9K;}y%@!{w7lt~4$y6AqKs9m1V{ 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 -~ZG3lwk+?{@V{3Y%x^Z*KlAK+yizasIFJ{htPW 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 Y63zv4Q@4D&3=;6ArKYc1bk{oUU;Pjdi2wiq diff --git a/solutions/Figures/sequential-decisions-7.png b/solutions/Figures/sequential-decisions-7.png deleted file mode 100755 index 55b8a81a4bd8994be5281022de90c8fd7ad2f2ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21726 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 diff --git a/solutions/bayesian-data-analysis.md b/solutions/bayesian-data-analysis.md deleted file mode 100644 index f4d7f42..0000000 --- a/solutions/bayesian-data-analysis.md +++ /dev/null @@ -1,546 +0,0 @@ ---- -layout: exercise -title: Bayesian Data Analysis - solutions -custom_js: -- assets/js/towData.js -- assets/js/towConfigurations.js ---- - -## Exercise 1: Experimenting with priors and predictives - -In [our simple binomial model]({{site.baseurl}}/chapters/bayesian-data-analysis.html#a-simple-illustration), -we compared the parameter priors and posteriors to the corresponding **predictives** -which tell us what data we should expect given our prior and posterior beliefs. -For convenience, we've reproduced that model here. - -### Exercise 1.1 - -> Notice that we used a uniform distribution over the interval [0, 1] as our prior, reflecting our assumption that a probability must lie between 0 and 1 but otherwise remaining agnostic to which values are most likely to be the case. -While this is convenient, we may want to represent other assumptions. -> -> The [Beta distribution](https://en.wikipedia.org/wiki/Beta_distribution), expressed in WebPPL as `Beta({a:..., b:...})`' is a more general way of expressing beliefs over the interval [0,1]. -> The beta distribution is what's called the conjugate prior probability distribution for the binomial distribution due -> to its relationship between the prior and the posterior, and it also has a really neat interpretation that we will -> explore in this problem. -> -> You may want to visualize the beta distribution a few times with different parameters to get a sense of its shape. -> 1. Beta(1, 1) -> 2. Beta(3, 3) -> 3. Beta(50, 50) -> 4. Beta(1, 10) -> 5. Beta(10, 1) -> 6. Beta(.2, .2) - -~~~~ -viz(repeat(10000, function() { sample(Beta({a:1, b: 1})) })); -~~~~ - -> Here, we have the binomial distribution example from the chapter. - -~~~~ -// observed data -var k = 1; // number of successes -var n = 20; // number of attempts -var priorDist = Uniform({a: 0, b: 1}); - -var model = function() { - var p = sample(priorDist); - - // Observed k number of successes, assuming a binomial - observe(Binomial({p : p, n: n}), k); - - // sample from binomial with updated p - var posteriorPredictive = binomial(p, n); - - // sample fresh p (for visualization) - var prior_p = sample(priorDist); - // sample from binomial with fresh p (for visualization) - var priorPredictive = binomial(prior_p, n); - - return { - prior: prior_p, priorPredictive : priorPredictive, - posterior : p, posteriorPredictive : posteriorPredictive - }; -} - -var opts = {method: "MCMC", samples: 2500, lag: 50}; -var posterior = Infer(opts, model); - -viz.marginals(posterior); -~~~~ - -> Using the code above, answer the following questions. -> 1. Run the code as is. How does the posterior compare to beta(2, 20)? - -They look similar. - -> 2. Set the prior to beta(1, 1). What do you notice about the posterior distribution? - -The posterior looks similar to before. - -> 3. Set n = 10 and the prior to beta(1, 11). What do you notice about the posterior distribution? - -The posterior looks similar to before. - -> 4. Set k = 5, n = 15, and the prior to beta(1, 1). Compare the posterior to beta(6, 11). - -The posterior looks similar to beta(6, 11). - -> 5. Set k = 4, n = 10, and the prior to beta(1, 1). - What values of `a` and `b` would of beta(a, b) would the posterior look like? - -beta(5, 7) - -> 6. Set k = 10 and n = 20. - What values of `a` and `b` would a prior of beta(a, b) make the posterior look like beta(12, 10)? - -beta(2, 0). Since 0 isn't a valid parameter for beta, we could do something like beta(2, 0.01). - -> 7. Based on these observations (and any others you may have tried), - what is the relationship between the beta distribution and the binomial distribution? - -`a` can intuitively be thought of as the number of successes/trues/heads/etc. we've seen before, -and `b` as the number of failures/falses/tails, etc. we've seen before. -Note that if `a` and `b` are less than `1`, we have strong intuitions against values towards the center. - -### Exercise 1.2 - -> Predictive distributions are not restricted to exactly the same experiment as the observed data, -and can be used in the context of any experiment where the inferred model parameters make predictions. -> In the current simple binomial setting, for example, predictive distributions could be found by an experiment -that is different because it has `n' != n` observations. -> Change the model to implement an example of this. - -~~~~ -// observed data -var k = 1 // number of successes -var n = 20 // number of attempts -var new_n = 5 // number of attempts in the followup experiment -var priorDist = Beta({a: 1, b: 1}); - -var model = function() { - var p = sample(priorDist); - - // Observed k number of successes, assuming a binomial - observe(Binomial({p : p, n: n}), k); - - // sample from binomial with updated p - var posteriorPredictive = binomial(p, new_n); - - // sample fresh p (for visualization) - var prior_p = sample(priorDist); - // sample from binomial with fresh p (for visualization) - var priorPredictive = binomial(prior_p, n); - - return { - prior: prior_p, priorPredictive : priorPredictive, - posterior : p, posteriorPredictive : posteriorPredictive - }; -} - -var opts = {method: "MCMC", samples: 2500, lag: 50}; -var posterior = Infer(opts, model); - -viz.marginals(posterior) -~~~~ - -## Exercise 2: Parameter fitting vs. parameter integration - -> One of the strongest motivations for using Bayesian techniques for model-data evaluation is in how "nuisance" parameters are treated. -"Nuisance" parameters are parameters of no theoretical interest; their only purpose is to fill in a necessary slot in the model. -Classically, the most prominant technique (from the frequentist tradition) for dealing with these parameters is to -fit them to the data, i.e., to set their value equal to whatever value maximizes the model-data fit -(or, equivalently, minimizes some cost function). - -> The Bayesian approach is different. -Since we have *a priori* uncertainty about the value of our parameter, we will also have *a posteriori* -uncertainty about the value (though hopefully the uncertainty will be reduced). -What the Bayesian does is *integrate over* her posterior distribution of parameter values to make predictions. -Intuitively, rather than taking the value corresponding to the peak of the distribution (i.e., the maximum), -she's considering all values with their respective probabilites. - -> Why might this be important for model assessment? -Imagine the following situation. -You are piloting a task and want to use Bayesian Data Analysis because you hear it is useful when you have few data points. -You think that the task you've designed is a little too difficult for subjects. -(Let's imagine that you're a psychophysicist, and your task pertains to contrast discriminiation in the peripheral visual field.) -You think the current task design is too difficult, but you're not sure. -It may well be that it's fine for subjects. - -> Here is your prior. - -~~~~ -// Prior on task difficulty is uniform on [0, ..., 0.9], with a spike on 0.9 -// i.e., you think it's likely that the task is too difficult -var sampleTaskDifficulty = function() { - return flip() ? .9 : randomInteger(10) / 10; -} - -var model = function() { - return sampleTaskDifficulty(); -} - -viz.hist(Infer({method: 'enumerate'}, model), {numBins: 9}); -~~~~ - -> You have a model of how subjects perform on your task. -You could have a structured, probabilistic model here. -For simplicity, let's assume you have the simplest model of task performance. -It is a direct function of task-difficulty: subjects perform well if the task isn't too difficult. - -~~~~norun -var subjectPerformWell = !flip(taskDifficulty); -~~~~ - -> There's a lot of training involved in your task and that it's very time consuming for you to collect data. -You run one subject through your training regime and have them do the task. -The subject performs well! -Soon after, your adviser drops by and wants you to make a decision to collect more data or tweak your experimental paradigm. -You thought beforehand that your task was too difficult. - -> Since you wrote down your prior beliefs, we can examine how much the data update those beliefs about the `taskDifficulty` parameter. -How does your degree of belief in task difficult change as a result of your one pilot subject performing well? - -~~~~ -// Prior on task difficulty is uniform on [0, ..., 0.9], with a spike on 0.9 -var sampleTaskDifficulty = function() { - return flip() ? .9 : randomInteger(10) / 10; -}; - -// Compute posterior after seeing one subject perform well on the task -var taskDifficultyPosterior = Infer({method: 'enumerate'}, function(){ - var taskDifficulty = sampleTaskDifficulty(); - - // subject will perform well if the task is not too difficult - var subjectPerformsWell = !flip(taskDifficulty); - - // observe that they perform well (i.e. this value is true) - condition(subjectPerformsWell); - return taskDifficulty; -}); - -// Most likely task-difficulty is still .9 -print("MAP: " + taskDifficultyPosterior.MAP().val); - -// But a lot of probability mass is on lower values -viz.hist(taskDifficultyPosterior, {numBins: 9}); - -// Indeed, the expected subject ability is around .4 -print("Expectation: " + expectation(taskDifficultyPosterior)); -~~~~ - -### Exercise 2.1 - -> Would you proceed with more data collection or would you change your experimental paradigm? -In other words, do you still think your task is too hard? - -The posterior distribution shows that the task may not be as difficult as originally thought. -If this participant did well, other participants may also do well, so the paradigm may not need to be changed. - - -### Exercise 2.2 - -> In Exercise 2.1, you probably used either one value of the task-difficulty or the full distribution of values to decide about whether to continue data collection or tweak the paradigm. -We find ourselves in a similar situation when we have models of psychological phenomena and want to decide whether the model fits the data (or, equivalently, whether our psychological theory is capturing the phenomenon). -The traditional approach is the value (or "point-wise estimate") approach: take the value that corresponds to the best fit -(e.g., by using least-squares or maximum-likelihood estimation; here, -you would have taken the Maximum A Posteriori (or, MAP) estimate, which would be 0.9). -Why might this not be a good idea? Comment on the reliability of the MAP estimate and how MAP estimate compares to other values of the posterior distribution. - -The MAP is only 0.9 because of our strong prior beliefs. -The second most likely posterior value is the complete opposite (p = 0). - - -## Exercise 3 - -> Let's continue to explore the inferences you (as a scientist) can draw from the posterior over parameter values. -This posterior can give you an idea of whether your model is well-behaved. -In other words, do the predictions of your model depend heavily on the exact parameter value? - -> To help us understand how to examine posteriors over parameter settings, we're going to revisit the example of the blicket detector from the chapter on `Conditional Dependence`. - -> Here is the model, with slightly different names than the original example, and written in a parameter-friendly way. -It is set up to display the "backwards blocking" phenomenon. - - -~~~~ -var blicketBaseRate = 0.4; -var blicketPower = 0.9; -var nonBlicketPower = 0.05; -var machineSpontaneouslyGoesOff = 0.05; - -var blicketPosterior = function(evidence) { - return Infer({method: 'enumerate'}, function() { - var blicket = mem(function(block) { flip(blicketBaseRate) }); - var power = function(block) { blicket(block) ? blicketPower : nonBlicketPower }; - var machine = function(blocks) { - return (blocks.length == 0 ? - flip(machineSpontaneouslyGoesOff) : - flip(power(first(blocks))) || machine(rest(blocks))); - }; - // Condition on each of the pieces of evidence making the machine go off - map(function(blocks) { condition(machine(blocks)) }, evidence); - return blicket('A'); - }); -}; - -// A & B make the blicket-detector go off -viz(blicketPosterior([['A', 'B']])); - -// A & B make the blicket-detector go off, and then B makes the blicket detector go off -viz(blicketPosterior([['A', 'B'], ['B']])); -~~~~ - -### Exercise 3.1 - -> What are the parameters of the above model? -> Explain what they represent in plain English. - -`blicketBaseRate` | 0.4 | The probability that a block is a blicket. -`blicketPower` | 0.9 | The probability that a blicket will set off the detector and power the machine. -`nonBlicketPower` | 0.05 | The probability that a non-blicket will set off the detector and power the machine. -`machineSpontaneouslyGoesOff` | 0.05 | The probability that the machine goes off on its own. - - -### Exercise 3.2 - -> Let's analyze this model with respect to some data. -> First, we'll put priors on these parameters, and then we'll do inference, -> conditioning on some data we might have collected in an experiment on 4 year olds, a la Sobel, Tenenbaum, & Gopnik (2004). -> [The data used in this exercise is schematic data]. - -> Before running the program below, answer the following question: -> 1. What does the `Infer` statement in `dataAnalysis` return? -> 2. What does the `Infer` statement in `detectingBlickets` return? - -1. The posterior probabilities of params and predictions, fitted to the data. -2. An inference of what people will say given the evidence they see. - -~~~~ -///fold: - -// alternative proposal distribution for metropolis-hastings algorithm -var uniformKernel = function(prevVal) { - return Uniform({a: prevVal - 0.2, b: prevVal + 0.2}); -} - -var toProbs = function(predictions) { - var labels = map(function(i) { "predictive: cond" + i + " P(true)" }, - _.range(1, predictions.length + 1)) - var probs = map(function(model) {return Math.exp(model.score(true))}, predictions); - return _.zipObject(labels, probs); -} - -var dataSummary = function(data) { _.map(data, _.mean) }; - -var predictiveSummary = function(model) { - var labels = map(function(i) {return "predictive: cond" + i + " P(true)"}, - _.range(1, 6)); - return map(function(label) { - return expectation(model, function(s) { - return s[label] - }); - }, labels); -}; -/// - -// 5 experiment conditions / stimuli -var possibleEvidenceStream = [ - [['A']], - [['A', 'B']], - [['A', 'B'], ['B']], - [['A', 'B'], ['A', 'B']], - [[]] -]; - -// for each condition. -// note: the question is always "is A a blicket?" -var data = [ - repeat(10, function() { true }).concat(false), - repeat(6 , function() { true }).concat(repeat(5, function() { false })), - repeat(4, function() { true }).concat(repeat(7, function() { false })), - repeat(8, function() { true }).concat(repeat(3, function() { false })), - repeat(2, function() { true }).concat(repeat(9, function() { false })) -]; - -// Same model as above, but parameterized -var detectingBlickets = mem(function(evidence, params) { - return Infer({method: 'enumerate'}, function() { - var blicket = mem(function(block) { flip(params.blicketBaseRate) }); - var power = function(block) { blicket(block) ? params.blicketPower : params.nonBlicketPower }; - var machine = function(blocks) { - return (blocks.length == 0 ? - flip(params.machineSpontaneouslyGoesOff) : - flip(power(first(blocks))) || machine(rest(blocks))); - }; - map(function(blocks){condition(machine(blocks))}, evidence); - return blicket('A'); - }) -}) - -var dataAnalysis = Infer({method: 'MCMC', - samples: 5000, - callbacks: [editor.MCMCProgress()]}, - function() { - var params = { - blicketBaseRate: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - blicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - nonBlicketPower: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}), - machineSpontaneouslyGoesOff: sample(Uniform({a: 0, b: 1}), {driftKernel: uniformKernel}) - } - - var cognitiveModelPredictions = map(function(evidence) { - return detectingBlickets(evidence, params) - }, possibleEvidenceStream); - - // observe each data point under the model's predictions - map2(function(dataForStim, modelPosterior) { - map(function(dataPoint) { - observe(modelPosterior, dataPoint); - }, dataForStim) - }, data, cognitiveModelPredictions); - - var predictives = toProbs(cognitiveModelPredictions); - return _.extend(params, predictives); -}) - -viz.marginals(dataAnalysis); -viz.scatter(predictiveSummary(dataAnalysis), dataSummary(data), - {xLabel: 'model', yLabel: 'data'}); -~~~~ - -### Exercise 3.3 - -> Now, run the program. -> [Note: This will take between 15-30 seconds to run.] -> Interpret each of the resulting plots. - -`blicketBaseRate` | blickets are common, but not *that* common -`blicketPower` | blickets rarely fail to set off the detector -`nonBlicketPower` | non-blickets might *rarely* set off the detector -`machineSpontaneouslyGoesOff` | the detector might *rarely* just go off for no reason -`predictive: cond1 P(true)` | `A` is probably a blicket... -`predictive: cond2 P(true)` | `A` is slightly more likely to be a blicket -`predictive: cond3 P(true)` | no idea if `A` is a blicket -`predictive: cond4 P(true)` | `A` is slightly more likely to be a blicket -`predictive: cond5 P(true)` | `A` is probably not a blicket -model (`x`) vs. data (`y`) | We can accurately guess people's response from model, but they're not exactly 1-1 - -### Exercise 3.4 - -> How do the posterior parameter values relate to the parameter values that were set in the original program? - -The original program's parameter values were approximately the expected value of the posterior parameter values. - -### Exercise 3.5 - -> Look carefully at the priors (in the code) and the posteriors (in the plots) over `blicketPower` and `nonBlicketPower`. -> Were there any a priori assumptions about the relationship between these parameters in the experimental setup? -> Do you think we would be justified in imposing any assumptions to the model? -> Consider the posterior distributions. -> How was the data analysis model able to find the relationship between these parameters? - -The experiment assumes that blickets make the machine go off (it's what the kids were told), but the model makes -no such a priori assumptions, i.e. `blicketPower` > `nonBlicketPower`, etc. -However, since kids show they know this from the responses they gave -(when `A` makes the machine go off most of the time, they call it a blicket, not a non-blicket), -the inference model can learn this asymmetry from the data. -We can test this by switching the `true` and `false` responses that kids give. - -~~~~ -var data = [ - repeat(10, function(){return false}).concat(true), - repeat(6 , function(){return false}).concat(repeat(5, function(){return true})), - repeat(4, function(){return false}).concat(repeat(7, function(){return true})), - repeat(8, function(){return false}).concat(repeat(3, function(){return true})), - repeat(2, function(){return false}).concat(repeat(9, function(){return true})) -]; -~~~~ - -When we do that, we see that `nonBlicketPower` is greater than `blicketPower` in the posteriors. - -Leaving this relationship for the model to infer is a nice sanity check. -It's cool that we can learn the appropriate relationship (`blicketPower > nonBlicketPower`) from the data, -but it would be OK to code it in. -It wasn't a key part of our theory, and we're pretty confident that kids understood how blickets worked. - -### Exercise 3.6 - -> Do you notice anything about the scatter plot? -> How would you interpret this? -> Is there something we could add to the data analysis model to account for this? - -There seems to be a linear relationship between the model predictions and the data, but the values are not always equal. -If we add some scaling factor, we could translate the model outputs to get to accurate predictions of people's responses. - -### Exercise 3.7 - -> Now, we're going to examine the predictions of the model if we had done a more traditional analysis of point-estimates of parameters (i.e. fitting parameters). -> Examine your histograms and determine the "maximum a posteriori" (MAP) value for each parameter. -> Plug those into the code below and run it. - -~~~~ -///fold: - -var toProbs = function(predictions) { - var labels = map(function(i) { "predictive: cond" + i + " P(true)" }, - _.range(1, predictions.length + 1)) - var probs = map(function(model) {return Math.exp(model.score(true))}, predictions); - return _.zipObject(labels, probs); -} - -var dataSummary = function(data) { _.map(data, _.mean) }; - -// 5 experiment conditions / stimuli -var possibleEvidenceStream = [ - [['A']], - [['A', 'B']], - [['A', 'B'], ['B']], - [['A', 'B'], ['A', 'B']], - [[]] -]; - -// for each condition. -// note: the question is always "is A a blicket?" -var data = [ - repeat(10, function() { true }).concat(false), - repeat(6 , function() { true }).concat(repeat(5, function() { false })), - repeat(4, function() { true }).concat(repeat(7, function() { false })), - repeat(8, function() { true }).concat(repeat(3, function() { false })), - repeat(2, function() { true }).concat(repeat(9, function() { false })) -]; - -var detectingBlickets = mem(function(evidence, params) { - return Infer({method: 'enumerate'}, function() { - var blicket = mem(function(block) { flip(params.blicketBaseRate) }); - var power = function(block) { blicket(block) ? params.blicketPower : params.nonBlicketPower }; - var machine = function(blocks) { - return (blocks.length == 0 ? - flip(params.machineSpontaneouslyGoesOff) : - flip(power(first(blocks))) || machine(rest(blocks))); - }; - map(function(blocks){condition(machine(blocks))}, evidence); - return blicket('A'); - }) -}) -/// - -var params = { // some possible MAP values - blicketBaseRate : 0.43, - blicketPower: .97, - nonBlicketPower: .04, - machineSpontaneouslyGoesOff: .05 -}; - -var bestFitModelPredictions = map(function(evidence) { - return Math.exp(detectingBlickets(evidence, params).score(true)); -}, possibleEvidenceStream); - -viz.scatter(bestFitModelPredictions, dataSummary(data)); -~~~~ - -### Exercise 3.8 - -> What can you conclude about the two ways of looking at parameters in this model's case? - -The model predictions fits the data better using the full posterior distributions than just the MAP point estimates. diff --git a/solutions/conditional-dependence.md b/solutions/conditional-dependence.md deleted file mode 100644 index 1b4c4a5..0000000 --- a/solutions/conditional-dependence.md +++ /dev/null @@ -1,174 +0,0 @@ ---- -layout: exercise -title: conditional dependence - solutions ---- - -## Exercise 1: Epidemiology - -> Imagine that you are an epidemiologist and you are determining people's cause of death. -> In this simplified world, there are two main diseases, cancer and the common cold. -> People rarely have cancer, $$p( \text{cancer}) = 0.00001$$, but when they do have cancer, it is often fatal, $$p( \text{death} \mid \text{cancer} ) = 0.9$$. -> People are much more likely to have a common cold, $$p( \text{cold} ) = 0.2$$, but it is rarely fatal, $$p( \text{death} \mid \text{cold} ) = 0.00006$$. -> Very rarely, people also die of other causes $$p(\text{death} \mid \text{other}) = 0.000000001$$. -> -> Write this model in WebPPL and use `Infer` to answer these questions (Be sure to include your code in your answer): - -~~~~ -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - return {cancer: cancer, cold: cold, death: death}; -})); -~~~~ - -### a) - -> Compute $$p( \text{cancer} \mid \text{death} , \text{cold} )$$ and $$p( \text{cancer} \mid \text{death} , \text{no cold} )$$. -> How do these probabilities compare to $$p( \text{cancer} \mid \text{death} )$$ and $$p( \text{cancer} )$$? -> Using these probabilities, give an example of explaining away. - -| Event | Prob | -| ------------------------- | ---- | -| Prior | 0.00001| -| Given death | 0.42855| -| Given death and cold | 0.13043| -| Given death and no cold | 0.99989| - -Having a cold explains away the death. -Given only the information that a person died, cancer is relatively likely. -When we learn the person also had a cold, this probability of cancer goes down, not down to prior levels, but pretty unlikely. -If we instead learn that the person died and did not have a cold, we become almost certain that the person died of cancer. - - -~~~~ -display("prior") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - return cancer; -})); -~~~~ - -~~~~ -display("death") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death); - return cancer; -})); -~~~~ - -~~~~ -display("death and cold") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && cold) - return cancer; -})); -~~~~ - -~~~~ -display("death and no cold") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && !cold) - return cancer; -})); -~~~~ - -### b) - -> Compute $$p( \text{cold} \mid \text{death} , \text{cancer} )$$ and $$p( \text{cold} \mid \text{death} , \text{no cancer} )$$. -> How do these probabilities compare to $$p( \text{cold} \mid \text{death} )$$ and $$p( \text{cold} )$$? -> Using these probabilities, give an example of explaining away. - -| Event | Prob | -| ------------------------- | ---- | -| Prior | 0.20 | -| Given death | 0.66 | -| Given death and cancer | 0.20 | -| Given death and no cancer | 0.99 | - -Having cancer *really* explains away the death. -Given only the information that a person died, a cold is very likely. -When we learn the person also had cancer, this probability goes back down to almost exactly the prior. -If we instead learn that the person *didn't* have cancer, we become almost certain they died of a cold. - - -~~~~ -display("prior") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - return cold; -})); -~~~~ - -~~~~ -display("death") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death); - return cold; -})); -~~~~ - -~~~~ -display("death and cancer") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && cancer) - return cold; -})); -~~~~ - -~~~~ -display("death and no cancer") -viz.table(Infer({method: 'enumerate'}, function() { - var cancer = flip(0.00001); - var cold = flip(0.2); - var death_by_cancer = cancer && flip(0.9); - var death_by_cold = cold && flip(0.00006); - var other_death = flip(0.000000001); - var death = death_by_cancer || death_by_cold || other_death; - condition(death && !cancer) - return cold; -})); -~~~~ diff --git a/solutions/conditioning.md b/solutions/conditioning.md deleted file mode 100644 index ef97df9..0000000 --- a/solutions/conditioning.md +++ /dev/null @@ -1,555 +0,0 @@ ---- -layout: exercise -title: Conditioning - solutions -custom_js: -- assets/js/box2d.js -- assets/js/physics.js ---- - - -## Exercise 1: Fair coins and biased coins - -### a) - -> I flip a fair coin. What is the probability that it lands heads? - -0.5 - -~~~~ -var model = function() { - return flip() ? "H" : "T" -} - -var logProb = Infer({method:'enumerate'}, model).score('H'); -Math.exp(logProb); -~~~~ - - -### b) - -> I also have a biased coin, with $$P(\text{heads})=0.9$$. -> I hand you one of the coins (either biased or fair) without telling you which. -> You flip it three times. -> -> Given that first two coin flips landed on heads, what is the posterior distribution for the next flip? - -P(Heads) = 0.8056603773584906 - -~~~~ -var flipCoin = function(coinType) { - return coinType == "fair" ? flip() : flip(0.9); -} - -var model = function() { - var coinType = flip() ? "fair" : "biased"; - - var flip1 = flipCoin(coinType); - var flip2 = flipCoin(coinType); - var flip3 = flipCoin(coinType); - - // first 2 flips are `true` - condition(flip1 && flip2); - - // what is the next flip going to be? - return flip3; -} - -viz.table(Infer({method:'enumerate'}, model)); -~~~~ - - -### c) - -> Given that all three flips landed on heads, what is the probability that the coin was biased? - -P(biased) = 0.8536299765807963 - -~~~~ -var flipCoin = function(coinType) { - return coinType == "fair" ? flip() : flip(0.9); -} - -var model = function() { - var coinType = flip() ? "fair" : "biased"; - - var flip1 = flipCoin(coinType); - var flip2 = flipCoin(coinType); - var flip3 = flipCoin(coinType); - - // first 2 flips are `true` - condition(flip1 && flip2 && flip3); - - // what is the next flip going to be? - return coinType; -} - -viz.table(Infer({method:'enumerate'}, model)); -~~~~ - - -### d) - -> Given that the first two flips were different, what is the probability that the third flip will be heads? - -P(Heads) = 0.6058823529411763 - -~~~~ -var flipCoin = function(coinType) { - return coinType == "fair" ? flip() : flip(0.9); -} - -var model = function() { - var coinType = flip() ? "fair" : "biased"; - - var flip1 = flipCoin(coinType); - var flip2 = flipCoin(coinType); - var flip3 = flipCoin(coinType); - - // first 2 flips are `true` - condition(flip1 != flip2); - - // what is the next flip going to be? - return flip3; -} - -viz.table(Infer({method:'enumerate'}, model)); -~~~~ - - -## Exercise 2: Conditioning and Intervention - -> In the earlier [Medical Diagnosis]({{site.baseurl}}/chapters/02-generative-models.html#example-causal-models-in-medical-diagnosis) section we suggested understanding the patterns of symptoms for a particular disease by changing the prior probability of the disease such that it is always true (also called the *do* operator). - - -### a) - -> Show that *intervening* (setting) on `lungCancer` has the same effect as *conditioning* on `lungCancer` has the same effect on `cough` in this example. -> Create a table showing the marginal probabilities. -> What must be true about the causal structure for this to be the case? - -`lungCancer` is a cause of `cough` and it's not causally dependent on any other variable in the program. - -~~~~ -// original -display("original"); -viz.table(Infer({method: "enumerate"}, function() { - var lungCancer = flip(0.01); - var cold = flip(0.2); - var cough = ( - (cold && flip(0.5)) || - (lungCancer && flip(0.3)) - ); - return cough; -})) - -// intervention -display("intervention"); -viz.table(Infer({method: "enumerate"}, function() { - var lungCancer = true; - var cold = flip(0.2); - var cough = ( - (cold && flip(0.5)) || - (lungCancer && flip(0.3)) - ); - return cough; -})) - - -// conditioning -display("conditioning"); -viz.table(Infer({method: "enumerate"}, function() { - var lungCancer = flip(0.01); - condition(lungCancer); - var cold = flip(0.2); - var cough = ( - (cold && flip(0.5)) || - (lungCancer && flip(0.3)) - ); - return cough; -})) -~~~~ - - -### b) - -> This time, modify the program so that intervening and conditioning produce different results. Under what circumstances does intervening produce different results from conditioning? -> Create a table showing the marginal probabilities. -> -> *Hint:* you do not need to introduce any new variables. Think about what other questions you can ask in this example. - -Conditioning on a causally downstream variable can inform us about what the value of the causal parent *might have been*, but intervention breaks that conditional dependence. - -~~~~ -// original -display("original"); -viz.table(Infer({method: "enumerate"}, function() { - var lungCancer = flip(0.1); - var cold = flip(0.2); - var cough = ( - (cold && flip(0.5)) || - (lungCancer && flip(0.3)) - ); - return lungCancer; -})) - -// intervention -display("intervention"); -viz.table(Infer({method: "enumerate"}, function() { - var lungCancer = flip(0.1); - var cold = flip(0.2); - var cough = true; - return lungCancer; -})) - -// conditioning -display("conditioning"); -viz.table(Infer({method: "enumerate"}, function() { - var lungCancer = flip(0.1); - var cold = flip(0.2); - var cough = ( - (cold && flip(0.5)) || - (lungCancer && flip(0.3)) - ); - condition(cough); - return lungCancer; -})) -~~~~ - - -## Exercise 3: Computing marginals - -> Find the marginal distribution of the return values from these programs mathematically (by hand). - - -### a) - - - - -$$ P(a \mid a \lor b) = \frac{ P(a \land (a \lor b)) } { P(a \lor b) } = \frac{P(a)} {P(a \lor b)} = \frac{0.5} {1 - P(!a \land !b)} = \frac{0.5} {1 - (0.5)\cdot(0.5)} = 2/3 $$ - - -~~~~ -viz.table(Infer({method: "enumerate"}, function() { - var a = flip(); - var b = flip(); - condition(a || b); - return a; -})); -~~~~ - - -### b) - -~~~~ -var smilesModel = function() { - var nice = mem(function(person) { flip(.7) }); - - var smiles = function(person) { - return nice(person) ? flip(.8) : flip(.5); - } - - condition(smiles('alice') && smiles('bob') && smiles('alice')); - - return nice('alice'); -} - -viz.table(Infer({method: "enumerate"}, smilesModel)); -~~~~ - -Using Bayes rule: - -$$ P(N_A \mid S_A, S_B, S_A) \propto P(S_A, S_B, S_A \mid N_A) P(N_A) $$ - -Alice is nice: - -$$ P(S_A | N_A)^2 P(S_B | N_A) P(N_A) = P(S_A | N_A)^2 \left(P(S_B | N_B)P(N_B) + P(S_B | !N_B)P(!N_B)\right) P(N_A) = 0.31808 $$ - -Alice isn't nice: - -$$ P(S_A | !N_A)^2 P(S_B | !N_A) P(!N_A) = P(S_A | !N_A)^2 \left(P(S_B | N_B)P(N_B) + P(S_B | !N_B)P(!N_B)\right) P(!N_A) = 0.05325 $$ - -Normalize: - -$$ P(N_A \mid S_A, S_B, S_A) = 0.31808 / (0.31808 + 0.05325) = 0.85659655831 $$ - - -## Exercise 4: Extending the smiles model - -### a) - -> Describe (using ordinary English) the `smilesModel` program in Exercise 3b. - -Most people are nice. Nice people smile a lot, other people smile less. Alice smiled twice (and Bob smiled once). Is Alice nice? - - -### b) - -> Extend `smilesModel` to create a version of the model considers two additional factors: - -> 1. Wanting something causes people to smile 80\% of the time. -> 2. *Nice* people will only want something from you 20% of the time; non-nice people 50% of the time. - -> Don't forget that nice people also smile more often! - -> *Hint:* Which variables change at different times for the same person? Which values *depend* on other values? - -~~~~ -var extendedSmilesModel = function() { - var nice = mem(function(person) { flip(.7) }); - - var wantsSomething = function(person) { - return flip(nice(person) ? .2 : .5); - } - - var smiles = function(person, wants) { - return (wants ? flip(.8) : flip(.5)) - || (nice(person) ? flip(.8) : flip(.5)); - } - - var wants = wantsSomething('alice'); - return smiles('alice', wants); -} - -Infer({method: "enumerate"}, extendedSmilesModel); -~~~~ - -Note that smiles now has two possible causes. -Being nice makes you more likely to smile and, separately, wanting something makes you more likely to smile. -Using the OR operator here captures the intuition that either one is sufficient to make someone more likely to smile. -Critically, being nice is a persistant property of a person and is therefore held constant within an execution using `mem` while wanting something is circumstantial: the same person may want something on one occasion and not another. -Finally, by making smiles a function of a person and *whether they want something* at a given time (as opposed to calling `wantsSomething` inside smiles), we can query a particular instance of wanting something without flipping separate coins outside and inside. - - -### c) - -> Suppose you've seen Bob five times this week and each time, he was not smiling. But today, you see Bob and he *is* smiling. Use this `extendedSmilesModel` model to compute the posterior belief that Bob wants something from you today. - -> *Hint:* How will you represent the same person (Bob) smiling *multiple times*? What features of Bob will stay the same each time he smiles (or doesn't) and what features will change? - -~~~~ -var extendedSmilesModel = function() { - var nice = mem(function(person) { flip(.7) }); - - var wantsSomething = function(person) { - return flip(nice(person) ? .2 : .5); - } - - var smiles = function(person, wants) { - return (wants ? flip(.8) : flip(.5)) - || (nice(person) ? flip(.8) : flip(.5)); - } - - var wantsToday = wantsSomething('bob'); - - condition(!smiles('bob', wantsSomething('bob'))); // no smile on day 1 - condition(!smiles('bob', wantsSomething('bob'))); // no smile on day 2 - condition(!smiles('bob', wantsSomething('bob'))); // no smile on day 3 - condition(!smiles('bob', wantsSomething('bob'))); // no smile on day 4 - condition(!smiles('bob', wantsSomething('bob'))); // no smile on day 5 - condition(smiles('bob', wantsToday)); // smiles today! - - return wantsToday; -} - -viz.table(Infer({method: "enumerate"}, extendedSmilesModel)); -~~~~ - -We condition on all the data that we have; bob did not smile the previous 5 times, but then smiled today. -Again, because wantsSomething is not memoized, each of these observations is independent. -We have uncertainty over whether bob wanted something on *every* day, but we're only interested in whether he wanted something on the day that he smiled, thus why we store that value and return it at the end. - - -## Exercise 5: Sprinklers and Rain - -### a) - -> I have a particularly bad model of the sprinkler in my garden. -> It is supposed to water my grass every morning, but it turns on only half the time (at random, as far as I can tell). -> Fortunately, I live in a city where it also rains 30% of days. -> -> One day I check my lawn and see that it is wet, meaning that either it rained that morning or my sprinkler turned on (or both). -> -> Answer the following questions, either using the Rules of Probability or by writing your own sprinkler model in webppl. -> -> * What is the probability that it rained? -> * What is the probability that my sprinkler turned on? - -~~~~ -display("rain") -viz.table(Infer({method: "enumerate"}, function() { - var sprinkler = flip(); - var rain = flip(0.3); - var wetLawn = sprinkler || rain; - condition(wetLawn); - return rain; -})) - -display("sprinkler") -viz.table(Infer({method: "enumerate"}, function() { - var sprinkler = flip(); - var rain = flip(0.3); - var wetLawn = sprinkler || rain; - condition(wetLawn); - return sprinkler; -})) -~~~~ - - -### c) - -> My neighbour Kelsey, who has the same kind of sprinkler, tells me that her lawn was also wet that same morning. -> What is the new posterior probability that it rained? - -~~~~ -viz.table(Infer({method: "enumerate"}, function() { - var rain = flip(0.3); - var mySprinkler = flip(); - var herSprinkler = flip(); - var myLawnIsWet = mySprinkler || rain; - var herLawnIsWet = herSprinkler || rain; - condition(myLawnIsWet && herLawnIsWet); - return rain; -})) -~~~~ - - -### d) - -> To investigate further we poll a selection of our friends who live nearby, and ask if their grass was wet this morning. -> Kevin and Manu and Josh, each with the same sprinkler, all agree that their lawns were wet too. -> Write a model to reason about all 5 people (including me and Kelsey), and then use it to find the probability that it rained. - -~~~~ -viz.table(Infer({method: "enumerate"}, function() { - var rain = flip(0.3); - - var sprinkler = mem(function(person) { return flip() }); - var wetLawn = function(person) { return rain || sprinkler(person) }; - - condition(wetLawn("me")); - condition(wetLawn("Kelsey")); - condition(wetLawn("Kevin")); - condition(wetLawn("Manu")); - condition(wetLawn("Josh")); - return rain; -})) -~~~~ - - -## Exercise 6: Casino game - -> Consider the following game. -A machine randomly gives Bob a letter of the word "game" with and Bob has a different probability of winning depending on which letter he got: -> -> | $$h$$ | $$p(h)$$ | $$p(\text{win}\mid h)$$ | $$p(h \mid \text{win})$$ | -| ----- | -------- | ----------------------- |------------------------- | -| g | 0.05 | 1 | | -| a | 0.45 | 1/4 | | -| m | 0.05 | 1/9 | | -| e | 0.45 | 1/16 | | -> -> Suppose that we observe Bob winning, but we don't know what letter he got. -How can we use the observation that he won to update our beliefs about which letter he got? -Let's express this formally. -Before we begin, a bit of terminology: the set of letters that Bob could have gotten, $$\{g, a, m, e\}$$, is called the *hypothesis space* -- it's our set of hypotheses about the letter. - - -### a) - -> In English, what does the posterior probability $$p(h \mid \text{win})$$ represent? - -Given that Bob wins, which letter did he probably draw? - -> What does it mean for a letter to have the highest posterior? - -If we had to guess a letter, the letter with the highest posterior would be the best one. It's both likely to be drawn a priori (because it's a vowel) and likely to result in a win if Bob drew it. - - -### b) - -> Manually compute $$p(h \mid \text{win})$$ for each hypothesis. -> Remember to normalize --- make sure that summing all your $$p(h \mid \text{win})$$ values gives you 1. - -Using Bayes rule, - -$$ P(h \mid \text{win}) \propto P(h) \cdot P(\text{win} \mid h) $$ - -Let $$Z$$ be the sum of $$ P(h) \cdot P(\text{win} \mid h) $$ across all values of $$h$$. - -| $$h$$ | $$p(h)$$ | $$p(\text{win}\mid h)$$ | $$p(h \mid \text{win})$$ | -| ----- | -------- | ------------------------ |------------------------- | -| g | 0.05 | 1 | 0.05 / Z = 0.255 | -| a | 0.45 | 1/4 | 0.45/4 / Z = 0.573 | -| m | 0.05 | 1/9 | 0.05/9 / Z = 0.028 | -| e | 0.45 | 1/16 | 0.45/16 / Z = 0.143 | - - -### c) - -> Now, let's write this model in WebPPL using `Infer`. -Fill in the `...`'s in the code below to compute $$p(h \mid \text{win})$$. -Include a screenshot of the resulting graph. -> -> It might be helpful to comment out the `condition` statement so you can compare visually the prior (no `condition` statement) to the posterior (with `condition`). -> -> Make sure that your WebPPL answers and hand-computed answers agree -- note that this demonstrates the equivalence between the program view of conditional probability and the distributional view. - -~~~~ -// define some variables and utility functions -var checkVowel = function(letter) { _.includes(['a', 'e', 'i', 'o', 'u'], letter) }; -var letterVals = ['g', 'a', 'm', 'e']; -var letterProbs = map(function(letter) { checkVowel(letter) ? 0.45 : 0.05 }, letterVals); -var letters = Categorical({vs: letterVals, ps: letterProbs}); - -// Compute p(h | win) -var distribution = Infer({method: 'enumerate'}, function() { - var letter = sample(letters); - var position = letterVals.indexOf(letter) + 1; - var winProb = 1 / Math.pow(position, 2); - condition(flip(winProb)); - return letter; -}); - -viz.auto(distribution); -viz.table(distribution); -~~~~ - - -### d) - -Which is higher, $$p(\text{vowel} \mid \text{win})$$ or $$p(\text{consonant} \mid \text{win})$$? -Answer this using the WebPPL code you wrote *Hint:* use the `checkVowel` function. - -~~~~ -// define some variables and utility functions -var checkVowel = function(letter) { _.includes(['a', 'e', 'i', 'o', 'u'], letter) }; -var letterVals = ['g', 'a', 'm', 'e']; -var letterProbs = map(function(letter) { checkVowel(letter) ? 0.45 : 0.05 }, letterVals); -var letters = Categorical({vs: letterVals, ps: letterProbs}); - -// Compute p(h | win) -var distribution = Infer({method: 'enumerate'}, function() { - var letter = sample(letters); - var position = letterVals.indexOf(letter) + 1; - var winProb = 1 / Math.pow(position, 2); - condition(flip(winProb)); - return checkVowel(letter); -}); - -viz.table(distribution); -~~~~ - -A vowel is more likely ($$P(vowel) = 0.7168141592920354$$) than a consonant ($$P(vowel) = 0.28318584070796465 $$) - - -### e) - -> What difference do you see between your code and the mathematical notation? -> What are the advantages and disadvantages of each? -> Which do you prefer? - -The mathematical notation is more precise in some cases (we might get some rounding errors on the computer), but code is less error prone, easier to think about, and much easier to extend. It would be tedious to do this with all the letters of the alphabet instead by hand compared to using code. diff --git a/solutions/dependence.md b/solutions/dependence.md deleted file mode 100644 index 8b75dfe..0000000 --- a/solutions/dependence.md +++ /dev/null @@ -1,86 +0,0 @@ ---- -layout: exercise -title: Patterns of inference - solutions ---- - -## Exercise 1: Causal and statistical dependency. - -> For each of the following programs: -> -> * Draw the dependency diagram (Bayes net). If you don't have software on your computer for doing this, Google Docs has a decent interface for creating drawings. -> -> * Use informal evaluation order reasoning and the intervention method to determine causal dependency between A and B. -> -> * Use conditioning to determine whether A and B are statistically dependent. - -### a) - -~~~~ -var a = flip(); -var b = flip(); -var c = flip(a && b ? .8 : .5); -~~~~ - -neither causally dependent nor statistically dependent - -![](../assets/img/04_01_a.png) - -### b) - -~~~~ -var a = flip(); -var b = flip(a ? .9 : .2); -var c = flip(b ? .7 : .1); -~~~~ - -both causally dependent *and* statistically dependent - -![](../assets/img/04_01_b.png) - -### c) - -~~~~ -var a = flip(); -var b = flip(a ? .9 : .2); -var c = flip(a ? .7 : .1); -~~~~ - -both causally dependent *and* statistically dependent - -![](../assets/img/04_01_c.png) - -### d) - -~~~~ -var a = flip(.6); -var c = flip(.1); -var z = flip() ? a : c; -var b = z ? 'foo' : 'bar'; -~~~~ - -both causally dependent *and* statistically dependent - -![](../assets/img/04_01_d.png) - -### e) - -statistically dependent but *not* causally dependent - -~~~~ -var examFairPrior = Bernoulli({p: .8}); -var doesHomeworkPrior = Bernoulli({p: .8}); -var examFair = mem(function(exam) { return sample(examFairPrior) }); -var doesHomework = mem(function(student) { return sample(doesHomeworkPrior) }); - -var pass = function(student, exam) { - return flip(examFair(exam) ? - (doesHomework(student) ? .9 : .5) : - (doesHomework(student) ? .2 : .1)); -} -var a = pass('alice', 'historyExam'); -var b = pass('bob', 'historyExam'); -~~~~ - -![](../assets/img/04_01_e.png) - - diff --git a/solutions/generative-models.md b/solutions/generative-models.md deleted file mode 100755 index cbe7cbb..0000000 --- a/solutions/generative-models.md +++ /dev/null @@ -1,582 +0,0 @@ ---- -layout: exercise -title: Generative models - solutions -description: Generative models -custom_js: -- assets/js/box2d.js -- assets/js/physics.js ---- - -## Exercise 1 - -### a) - -> Show mathematically that the marginal distribution on return values for these three programs is the same by directly computing the probability using the rules of probability -> (hint: write down each possible history of random choices for each program).±+* flip a coin: - * 0.5 heads -> flip a coin: - * 0.7 heads - * 0.3 tails - * 0.5 tails -> flip a coin: - * 0.1 heads - * 0.9 tails - -* ---> heads: $$(0.5)(0.7) + (0.5)(0.1) = 0.4$$ -* ---> tails: $$(0.5)(0.3) + (0.5)( 0.9 )= 0.6$$ - -~~~~ -flip(flip() ? .7 : .1) -~~~~ - -* flip a coin: - * 0.5 heads -> 0.7 input to... -> flip a coin: - * 0.7 heads - * 0.3 tails - * 0.5 tails -> 0.1 input to... -> flip a coin: - * 0.1 heads - * 0.9 tails - -* ---> heads: $$(0.5)(0.7) + (0.5)(0.1) = 0.4$$ -* ---> tails: $$(0.5)(0.3) + (0.5)( 0.9 )= 0.6$$ - -~~~~ -flip(.4) -~~~~ - -* flip a coin: - * 0.4 heads - * 0.6 tails - -### b) - -> Check your answers by sampling from the programs, 1000 times each, and plotting the results. - -~~~~ -viz(repeat(1000, function() { - return flip() ? flip(.7) : flip(.1) -})) -~~~~ - -

- -~~~~ -viz(repeat(1000, function() { - return flip(flip() ? .7 : .1) -})) -~~~~ - -
- -~~~~ -viz(repeat(1000, function() { return flip(.4) })) -~~~~ - -
- -### c) - -> Write another new program with the same marginal distribution on return values that looks different from all of the above programs. - -~~~~ -flip() ? false : flip(.8) -~~~~ - -## Exercise 2 - -### a) - -> Explain why (in terms of the evaluation process) these two programs give different answers (i.e. have different distributions on return values). - -~~~~ -var foo = flip() -display([foo, foo, foo]) -~~~~ - -~~~~ -var foo = function() { return flip() } -display([foo(), foo(), foo()]) -~~~~ - -In the first program, the variable `foo` is assigned to a value once, the literal boolean value that `flip()` happens to return the one time it's run. -So the only possible outputs are `[true, true, true]` and `[false, false, false]`. - -In the second program, the variable `foo` is the name of a function, which is run three separate times. Each time, the literal boolean value that's returned can be different. -So any combination of three `true` and `false` values is possible as output. - -### b) - -> Modify the second program using `mem` so that it has the same distribution as the first program. - -~~~~ -var foo = mem(function() { return flip() }) -display([foo(), foo(), foo()]) -~~~~ - -### c) - -> Change the program in Part B so that the first two elements in the list are always the same as each other, but the third element can be different. -> *Optional challenge:* try to do this by adding only these 4 characters: `x`, `0`, `0`, and `1`. - -~~~~ -var foo = mem(function(x) { return flip() }) -display([foo(0), foo(0), foo(1)]) -~~~~ - -## Exercise 3 - -### a) - -> Which of these programs would be more likely to generate the following proportions for 100 values of C? -> Justify your response. - -
- -~~~~ -// Program "A" -var A = flip() -var B = flip(0.9) -var C = flip() ? A && B : A || B -display([A, B, C]) -~~~~ - -~~~~ -// Program "B" -var A = flip(0.9); -var B = A && flip(0.9) -var C = B && flip(0.9) -display([A, B, C]) -~~~~ - -Program "A", because $$(0.5)(0.5)(0.9) + (0.5)(1 - (0.5)(0.1)) = 0.7$$, whereas $$(0.9)(0.9)(0.9) = 0.729$$. - -### b) - -> Could the program you did *not* choose in Part A have *also* generated those return values? Explain. - -Yes. Execution of the program is *random*, so different numbers of `true` and `false` answers are possible for 100 samples. - -## Exercise 4 - -> In the simple medical diagnosis example, we imagined a generative process for diseases and symptoms of a single patient. -> In this exercise, we'll write a version of that model that represents the diseases and symptoms of many patients. - -### a) - -> Let's look at just two common conditions (a cold and allergies) and just two symptoms (sneeze and fever), and let's assume that symptoms are deterministic. - -~~~~ -var allergies = flip(0.3) -var cold = flip(0.2) - -var sneeze = cold || allergies -var fever = cold - -display([sneeze, fever]) -~~~~ - -> Under this model, what is the probability that the patient is sneezing? What is the probability that the patient is sneezing *and* has a fever? - -$$ P(\text{sneeze}) = P(\text{sneeze} \mid \text{cold})P(\text{cold}) + P(\text{sneeze} \mid \text{allergies})P(\text{allergies})$$ - -$$\ \ \ \ - P(\text{sneeze} \mid \text{allergies AND cold})P(\text{allergies AND cold})$$ - -$$ (1)(0.2) + (1)(0.3) - (1)(0.2)(0.3) = 0.44 $$ - -$$P(\text{sneeze AND fever}) = P(\text{sneeze} \mid \text{cold})P(\text{fever} \mid \text{cold})P(\text{cold}) + P(\text{sneeze} \mid \text{cold})P(\text{fever} \mid \text{cold})P(\text{cold})$$ - -$$= (1)(1)(0.2) + (1)(0)(0.3) = 0.2$$ - -### b) - -> Inspect the joint probability distributions of `sneeze` and `fever` using `Infer`. - -~~~~ -Infer({method: "forward", samples: 1000}, function() { - var allergies = flip(0.3) - var cold = flip(0.2) - - var sneeze = cold || allergies - var fever = cold - - // a list would also be fine here - return {"sneeze": sneeze, "fever": fever} -}) -~~~~ - -### c) - -> If we wanted to represent the diseases of many patients we might have tried to make each disease and symptom into a function from a person to whether they have that disease, like this: - -~~~~ -Infer({method: "forward", samples: 1000}, function() { - var allergies = mem(function(person) { return flip(.3) }) - var cold = mem(function(person) { return flip(.2) }) - - var sneeze = function(person) { return cold(person) || allergies(person) } - var fever = function(person) { return cold(person) } - - return {"sneeze": sneeze('bob'), "fever": fever('bob')} -}) -~~~~ - -> Add `fever` to the program above, and use `Infer` to inspect the probability distribution over Bob's symptoms. -> Is this the same probability distribution that you computed for the single patient in Part A? -> If not, what can you do to fix this program to capture our intuitions correctly? - -We need `mem` on the diseases. Otherwise the two symptoms will be calculated using different values for the diseases, and that wouldn't make sense. - -## Exercise 5 - -> Work through the evaluation process for the `bend` higher-order function in this example: - -~~~~ -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't' - } -} -var bend = function(coin) { - return function() { - return coin() == 'h' ? makeCoin(.7)() : makeCoin(.1)() - } -} - -var fairCoin = makeCoin(.5) -var bentCoin = bend(fairCoin) -~~~~ - -### a) - -> Directly compute the probability distribution of the bent coin in the example. - -$$(0.5)(0.7) + (0.5)(0.1) = 0.4$$ - -### b) - -> Check your answer by using `Infer`. - -~~~~ -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't' - } -} -var bend = function(coin) { - return function() { - return coin() == 'h' ? makeCoin(.7)() : makeCoin(.1)() - } -} - -var fairCoin = makeCoin(.5) -var bentCoin = bend(fairCoin) - -Infer({method: 'forward', samples: 10000}, bentCoin) -~~~~ - -## Exercise 6 - -### a) - -> Directly compute the probability that the geometric distribution defined by the following stochastic recursion returns the number 5. -> *Hint:* What is the default parameter for `flip()`? - -~~~~ -var geometric = function() { - return flip() ? 0 : 1 + geometric() -} -~~~~ - -$$(0.5^5)(0.5) = 0.015625$$ - -### b) - -> Check your answer by using `Infer`. - -~~~~ -var geometric = function() { - return flip() ? 0 : 1 + geometric() -} -Infer({method: "forward", samples:10000}, geometric) -~~~~ - -
- -## Exercise 7 - -### a) - -> Convert the following probability table to a compact WebPPL program: -> -> | A | B | P(A,B) | -> | --- | --- | --- | -> | F | F | 0.14 | -> | F | T | 0.06 | -> | T | F | 0.4 | -> | T | T | 0.4 | -> -> **Requirement:** fix the probability of A first and then define the probability of B to *depend* on whether A is true or not. - -~~~~ -var a = flip(0.8) -var b = flip(a ? 0.5 : 0.3) -display([a, b]) -~~~~ - -### b) - -> Run your WebPPL program and use `Infer` to check that you get the correct distribution. - -~~~~ -var fn = function() { - var a = flip(0.8) - var b = flip(a ? 0.5 : 0.3) - return [a, b] -} -Infer({method: "forward", samples: 10000}, fn) -~~~~ - -
- -## Exercise 8 - -> Below we've defined a higher-order function `flipSequence` that takes a coin flipping function (e.g. `trickCoin`, below) and flips that coin until it gets a *sequence* of two heads in a row (in which case it returns heads `'h'`) or two tails in a row (in which case it returns tails `'t'`). -> Try out different weights for the `trickCoin`. - -~~~~ -var makeCoin = function(weight) { - return function() { - return flip(weight) ? 'h' : 't' - } -} -var flipSequence = function(coin) { - return function() { - var flip1 = coin() - var flip2 = coin() - if (flip1 == flip2) { - return flip1 - } else { - return flipSequence(coin)() - } - } -} - -var trickCoin = makeCoin(.6) - -var n_samples = 10000; -viz(Infer({method: "forward", samples: n_samples}, trickCoin)) -viz(Infer({method: "forward", samples: n_samples}, flipSequence(trickCoin))) -~~~~ - -### a) - -> How does `flipSequence` change the distribution over return values (qualitatively)? -> Explain why requiring two flips in a row to be the same has this effect. - -The distribution becomes peakier. The higher probability outcome becomes even more probable and the lower probability outcome becomes even less probable. - -### b) - -> What would happen if a fair coin (with weight 0.5) were input to `flipSequence`? Explain. - -Nothing would change, it would be the same as `flip(0.5)`, because there's no asymmetry in the distribution to emphasize. - -## Exercise 9 - -> Box2D is a two-dimensional simulation engine for simulating rigid bodies (those with constant shape). -> It allows for the construction of arbitrary worlds and models important physical concepts including collisions, friction, gravity, momentum, and more. -> -> We have provided a wrapper around Box2D that allows for the easy construction of worlds. -> A world consists of list of shapes. -> Shapes are created by JavaScript objects with the following properties: -> -> |`shape` |"circle" or "rect" | -> |`dims` |[width, height] for rect or [radius] for circle | -> |`x` |x_position_as_number (distance from left) | -> |`y` |y_position_as_number (distance from top) | -> |`static` |boolean (does the object move or stay still?) | -> |`velocity` |[x_velocity, y_velocity] | -> -> The variables `worldWidth` and `worldHeight` are constants representing the visible size of the simulation window. -> -> Here's an example with a ground and a single rectangle. Add another object to `bowlingWorld` and give it an initial velocity so that it knocks the original rectangle down. - -~~~~ -var ground = { - shape: 'rect', - static: true, - dims: [worldWidth, 10], - x: worldWidth/2, - y: worldHeight -} - -var rect = { - shape: 'rect', - static: false, - dims: [10, 100], - x: worldWidth/2, - y: 390 -} - -var circle = { - shape: 'circle', - static: false, - dims: [30], - x: worldWidth/4, - y: worldHeight - 40, - velocity: [300, 0] -} - -var bowlingWorld = [ground, rect, circle] -physics.animate(1000, bowlingWorld) -~~~~ - -## Exercise 10 - -> In **Example: Intuitive physics** we modeled instability of a tower as the probability that the tower falls when perturbed, and we modeled "falling" as getting shorter. -> It would be reasonable to instead measure *how much shorter* the tower gets. - -### a) - -> Below, modify the stability/instability model by writing a continuous measure, `towerFallDegree`. -> Let this measure take different values between 0 and 1. -> That way, your continuous measure will be numerically comparable to the discrete measure, `doesTowerFall` (defined here as either 0 or 1). -> Explain what your continuous measure represents and why it might be a good continuous measure of instability. - -~~~~ -///fold: -var listMin = function(xs) { - if (xs.length == 1) { - return xs[0] - } else { - return Math.min(xs[0], listMin(rest(xs))) - } -} - -var highestY = function (w) { listMin(map(function(obj) { return obj.y }, w)) } -var ground = { - shape: 'rect', - static: true, - dims: [worldWidth, 10], - x: worldWidth / 2, - y: worldHeight + 6 -} - -var almostUnstableWorld = [ - ground, - {shape: 'rect', static: false, dims: [24, 22], x: 175, y: 473}, - {shape: 'rect', static: false, dims: [15, 38], x: 159.97995044874122, y: 413}, - {shape: 'rect', static: false, dims: [11, 35], x: 166.91912737427202, y: 340}, - {shape: 'rect', static: false, dims: [11, 29], x: 177.26195677111082, y: 276}, - {shape: 'rect', static: false, dims: [11, 17], x: 168.51354470809122, y: 230} -] - -var noisify = function (world) { - var perturbX = function (obj) { - var noiseWidth = 10 - if (obj.static) { - return obj - } else { - return _.extend({}, obj, {x: uniform(obj.x - noiseWidth, obj.x + noiseWidth)}) - } - } - map(perturbX, world) -} - -/// - -// Returns height of tower -var getTowerHeight = function(world) { - return worldHeight - highestY(world) -} - -var doesTowerFall = function (initialW, finalW) { - var approxEqual = function (a, b) { Math.abs(a - b) < 1.0 } - return 1 - approxEqual(highestY(initialW), highestY(finalW)) -} - -var towerFallDegree = function(initialW, finalW) { - var initialHeight = getTowerHeight(initialW) - var finalHeight = getTowerHeight(finalW) - return (initialHeight - finalHeight) / initialHeight -} - -var visualizeInstabilityMeasure = function(measureFunction) { - var initialWorld = noisify(almostUnstableWorld) - var finalWorld = physics.run(1000, initialWorld) - var measureValue = measureFunction(initialWorld, finalWorld) - print("Instability measure: " + measureValue) - print("Initial height: " + getTowerHeight(initialWorld)) - print("Final height: " + getTowerHeight(finalWorld)) - physics.animate(1000, initialWorld) -} - -// Test binary doesTowerFall measure -// visualizeInstabilityMeasure(doesTowerFall) - -// Test custom towerFallDegree measure -visualizeInstabilityMeasure(towerFallDegree) -~~~~ - -This is the percent difference in height from before and after we introduce gravity. -The higher the final tower, the more stable the original tower was. -This is good in that it reflects the idea that even if one block falls off, if the rest of the tower stays, then the structure as a whole was probably stable. - -### b) - -> Describe a tower with a very different doesTowerFall and towerFallDegree measures look like. -> Which measure captures the meaning of "unstable" better? - -~~~~ -///fold: -var listMin = function(xs) { - if (xs.length == 1) { - return xs[0] - } else { - return Math.min(xs[0], listMin(rest(xs))) - } -} - -var highestY = function (w) { listMin(map(function(obj) { return obj.y }, w)) } -var ground = { - shape: 'rect', - static: true, - dims: [worldWidth, 10], - x: worldWidth/2, - y: worldHeight+6 -} - -var getTowerHeight = function(world) { - return worldHeight - highestY(world) -} - -var doesTowerFall = function (initialW, finalW) { - var approxEqual = function (a, b) { Math.abs(a - b) < 1.0 } - return 1 - approxEqual(highestY(initialW), highestY(finalW)); -} - -var towerFallDegree = function(initialW, finalW) { - var initialHeight = getTowerHeight(initialW) - var finalHeight = getTowerHeight(finalW) - return (initialHeight - finalHeight) / initialHeight -} -/// - -var initialWorld = [ - ground, - {shape: 'rect', static: false, dims: [100, 22], x: 175, y: 473}, - {shape: 'rect', static: false, dims: [80, 38], x: 159.97995044874122, y: 413}, - {shape: 'rect', static: false, dims: [60, 35], x: 166.91912737427202, y: 340}, - {shape: 'rect', static: false, dims: [40, 29], x: 177.26195677111082, y: 276}, - {shape: 'rect', static: false, dims: [20, 17], x: 120, y: 230} -] - -var finalWorld = physics.run(1000, initialWorld); - -physics.animate(1000, initialWorld); -print("doesTowerFall: " + doesTowerFall(initialWorld, finalWorld)) -print("towerFallDegree: " + towerFallDegree(initialWorld, finalWorld)) -~~~~ - -A tower where only one block falls off only changes a little. -The doesTowerFall makes no distinction between a tower that partially falls and completely falls whereas the towerFallsDegree does. -In the example world provided, the doesTowerFall is 1 whereas the towerFallsDegree is only 0.172, so the new metric matches intuition about this tower better. - diff --git a/solutions/hierarchical-models.md b/solutions/hierarchical-models.md deleted file mode 100644 index 09684c9..0000000 --- a/solutions/hierarchical-models.md +++ /dev/null @@ -1,457 +0,0 @@ ---- -layout: exercise -title: Hierarchical models - solutions -description: The power of abstraction. ---- - -## Exercise 1: Pseudocounts and the Dirichlet distribution - -> In the Bayesian Data Analysis exercises, we explored the Beta distribution by varying its parameters. -> The Dirichlet is a generalization of the Beta distribution to more than two categories -> (see [Appendix](http://probmods.org/chapters/appendix-useful-distributions.html)) -> Instead of Beta parameters $$(a, b)$$ governing the probabilities of two categories $$(false/true)$$, -> the Dirichlet parameter $$\alpha = [\alpha_1, \alpha_2, ..., \alpha_n]$$ controls the probabilities over categories $$[A_1, A_2, ..., A_n]$$. -> In other words, different choices of $$\alpha$$ correspond to different ways of distributing the prior probability mass over the $$N-1$$ simplex. -> -> In this exercise, we will explore a particularly intuitive way of understanding the $$\alpha$$ parameter as pseudocounts, or virtual observations. -> That is, if $$\alpha = [2, 2, 1]$$, that is the equivalent of having already observed the first category and second category twice each, and the third category one time only. -> -> Complete the code below to show that setting $$\alpha = [2, 3, 1, 1, 1]$$ is equivalent to setting $$\alpha = [1, 1, 1, 1, 1]$$, then observing the first category once and the second category twice. - - -~~~~ -var colors = ['black', 'blue', 'green', 'orange', 'red']; - -var observedData = [{bag: 'bag1', draw: 'blue'}, - {bag: 'bag1', draw: 'blue'}, - {bag: 'bag1', draw: 'black'}]; - -// first model: set alpha = [1, 1, 1, 1, 1] and observe `observedData` -var observed = Infer({method: 'MCMC', samples: 20000}, function() { - var makeBag = mem(function(bag) { - var colorProbs = dirichlet(ones([colors.length, 1])); - return Categorical({vs: colors, ps: colorProbs}); - }) - - var obsFn = function(datum) { - observe(makeBag(datum.bag), datum.draw); - } - - mapData({data: observedData}, obsFn); - - return {bag1: sample(makeBag('bag1'))}; -}) - - -// second model. Set alpha = [2, 3, 1, 1, 1] -var usealpha = Infer({method: 'MCMC', samples: 20000}, function () { - var makeBag = mem(function(bag) { - var colorProbs = dirichlet(Vector([2, 3, 1, 1, 1])); - return Categorical({vs: colors, ps: colorProbs}); - }) - - return {bag1: sample(makeBag('bag1'))}; -}) - -viz.marginals(observed); -viz.marginals(usealpha); -~~~~ - - -## Exercise 2: Rotten apples - -> On any given day, a given grocery store has some number of apples for sale. -> Some of these apples may be mushy or even rotten. -> The probability that each apple is rotten is not independent: a ripening fruit emits chemicals that cause other fruit to ripen as well. -> As they say, [one rotten apple spoils the whole barrel](https://idiomation.wordpress.com/2013/03/27/one-bad-apple-spoils-the-whole-barrel/). -> -> For each apple in a barrel, assume the probability that the apple is rotten is `flip(p)` where `p` is drawn from some prior. -> One appropriate prior distribution is Beta. -> Recall that the Beta distribution is just a Dirichlet that returns a vector of length one. -> Like the Dirichlet distribution, the Beta distribution is defined based on pseudocounts `[a, b]`. -> `Beta({a: 10, b: 2})` returns the equivalent of a Beta distribution conditioned on having previously seen 10 heads and 2 tails, while `[a,b]` values less than 1 concentrate mass at the endpoints. -> -> `Beta({a: .1, b: .2})` nicely captures our prior expectations about rotten apples: most of the time, the probability of a rotten apple is quite low. -The rest of the time, the probability is very high. -Middling probabilities are rare. - - -### Exercise 2.1 - -> Complete the function `makeBarrel` that returns a function `barrel`. -> `barrel` takes a single argument `n` and returns an array of `n` boolean values representing whether or not each of the `n` apples in the barrel is rotten. -> -> Use beta(.1, .2) as the prior for rottenness. - -~~~~ -var makeBarrel = mem(function(barrelName) { - var pRotten = beta({a: .1, b: .2}); - var barrel = function(n) { - return repeat(n, function() { flip(pRotten) }); - } - return barrel; -}); - -var post = Infer({method: 'forward'}, function() { - var barrel = makeBarrel('barrel'); - return Math.sum(barrel(10)); -}) -viz(post); -~~~~ - -### Exercise 2.1 - -> Some grocery stores have fresher produce than others. -> Complete the function `makeStore` that returns the `makeBarrel` function, which works as it did in part Exercise 2.1. -> Importantly, each store has its own Beta parameters `a` and `b` drawn from some prior. -> -> HINT: In order to maintain the likelihood either most of the apples in a barrel are rotten or few are, you need to ensure that `a < 1` and `b < 1`. -> However, if `a` is much larger than `b` (or vice versa), you will get extreme results with *every* apple being rotten or *every* apple being good. -> -> NOTE: No need to be overly fancy with this prior. Pick something simple that you know will give you what you want, e.g. -stores either have good barrels with few rotten apples or bad barrels with many rotten apples. - -~~~~ -var makeStore = mem(function(storeName) { - var storePrior = flip() ? {a: .1, b: .3} : {a: .3, b: .1}; - - var makeBarrel = mem(function(barrelName) { - var pRotten = beta(storePrior); - var barrel = function(n) { - return repeat(n, function() { flip(pRotten) }); - } - return barrel; - }) - - return makeBarrel; -}) - -display("Differences in number of rotten apples between 2 barrels from the same store."); -viz(Infer({method: 'forward', samples:10000}, function() { - var S = makeStore('S'); - var B1 = S('B1'); - var B2 = S('B2'); - return Math.abs(Math.sum(B1(10)) - Math.sum(B2(10))); -})) - -display("Differences in number of rotten apples between 2 barrels from different stores."); -viz(Infer({method: 'forward', samples:10000}, function() { - var S1 = makeStore('S1'); - var S2 = makeStore('S2'); - var B1 = S1('B1'); - var B2 = S2('B2'); - return Math.abs(Math.sum(B1(10)) - Math.sum(B2(10))); -})) -~~~~ - - -### Exercise 2.3 - -> Some cities are located in apple country and thus have more access to fresh apples. -> Most stores in those cities are going to mostly have good barrels with good apples. -> Other cities have less access to fresh apples, and so more of their stores will have bad barrels with rotten apples. -> -> In the code block below, create a `makeCity` function, which returns a `makeStore` function, which works as in (b). -> In (b), each store had a prior on `[a, b]`. -> Put a prior on *that* prior, such that cities either tend to have good stores or tend to have bad stores. -> -> HINT: Again, it is not necessary to have an overly fancy prior here. - - -~~~~ -var makeCity = mem(function(cityName){ - var cityPrior = beta({a: .25, b: .25}); - - var makeStore = mem(function(storeName) { - var storePrior = flip(cityPrior) ? {a: .1, b: .3} : {a: .3, b: .1}; - - var makeBarrel = mem(function(barrelName) { - var pRotten = beta(storePrior); - var barrel = function(n) { - return repeat(n, function() { flip(pRotten) }); - } - return barrel; - }) - - return makeBarrel; - }) - - return makeStore; -}) - -var C1 = makeCity("C1"); -var S1 = C1("S1"); -var B1 = S1("B1"); - -// repeat to see different kinds of cities -viz(Infer({method: 'forward'}, function(){ - return Math.sum(B1(20)) -})); -~~~~ - -### Exercise 2.4 - -> Suppose you go to a store in a city. -> The store has a barrel of 10 apples, 7 of which are rotten. -> You leave and go to another store in the same city. -> It also has a barrel with 10 apples. -> How many of these apples are likely to be rotten? - -~~~~ -var makeCity = mem(function(cityName){ - var cityPrior = beta({a: .25, b: .25}); - - var makeStore = mem(function(storeName) { - var storePrior = flip(cityPrior) ? {a: .1, b: .3} : {a: .3, b: .1}; - - var makeBarrel = mem(function(barrelName) { - var pRotten = beta(storePrior); - var barrel = function(n) { - return repeat(n, function() { flip(pRotten) }); - } - return barrel; - }) - - return makeBarrel; - }) - - return makeStore; -}) - -viz(Infer({method: 'MCMC', samples:5000, lag: 100}, function(){ - var C = makeCity("C"); - var S1 = C("S1"); - var B1 = S1("B1"); - var S2 = C("S2"); - var B2 = S2("B2"); - - condition(Math.sum(B1(10)) == 7); - - return Math.sum(B2(10)); -})); -~~~~ - -## Exercise 3: Hierarchical models for BDA - -> Imagine that you have conducted an experiment on word reading times to test the hypothesis that words starting with vowels take longer to read. -> Each data point includes whether the word starts with a vowel or a consonant, the word itself, the participant id, and the response time you measured ("rt"). -> A simple data analysis model attempts to infer the mean reading time for each word group, and returns the difference between the groups (a sort of Bayesian version of a t-test). -> -> Note that there is no cognitive model inside this BDA; it is directly modeling the data. - -~~~~ -var data = [{group: "vowel", word: "abacus", id: 1, rt: 210}, - {group: "vowel", word: "abacus", id: 2, rt: 212}, - {group: "vowel", word: "abacus", id: 3, rt: 209}, - {group: "vowel", word: "aardvark", id: 1, rt: 200}, - {group: "vowel", word: "aardvark", id: 2, rt: 201}, - {group: "vowel", word: "aardvark", id: 3, rt: 198}, - {group: "vowel", word: "ellipse", id: 1, rt: 220}, - {group: "vowel", word: "ellipse", id: 2, rt: 222}, - {group: "vowel", word: "ellipse", id: 3, rt: 219}, - - {group: "consonant", word: "proton", id: 1, rt: 190}, - {group: "consonant", word: "proton", id: 2, rt: 191}, - {group: "consonant", word: "proton", id: 3, rt: 189}, - {group: "consonant", word: "folder", id: 1, rt: 180}, - {group: "consonant", word: "folder", id: 2, rt: 182}, - {group: "consonant", word: "folder", id: 3, rt: 178}, - {group: "consonant", word: "fedora", id: 1, rt: 230}, - {group: "consonant", word: "fedora", id: 2, rt: 231}, - {group: "consonant", word: "fedora", id: 3, rt: 228}, - {group: "consonant", word: "fedora", id: 1, rt: 231}, - {group: "consonant", word: "fedora", id: 2, rt: 233}, - {group: "consonant", word: "fedora", id: 3, rt: 230}, - {group: "consonant", word: "fedora", id: 1, rt: 230}, - {group: "consonant", word: "fedora", id: 2, rt: 232}, - {group: "consonant", word: "fedora", id: 3, rt: 228}] - -var opts = {method: "MCMC", - burn: 10000, - lag: 5, - samples: 5000}; - -var post = Infer(opts, function() { - var groupMeans = {vowel: gaussian(200, 100), - consonant: gaussian(200, 100)}; - - var obsFn = function(d) { - //assume response times (rt) depend on group means with a small fixed noise: - observe(Gaussian({mu: groupMeans[d.group], sigma: 10}), d.rt); - } - - mapData({data: data}, obsFn); - - return groupMeans['vowel'] - groupMeans['consonant']; -}) - -print("vowel - consonant reading time:"); -viz(post); -print(expectation(post)); -~~~~ - -> This model concludes that consonants actually take significantly longer to read. -> However, looking at the data more closely, you may not trust this conclusion. -> It seems to be driven by a single outlier, the word "fedora"! - - -### Exercise 3.1 - -> Adjust the model to allow each word to have its own mean reading time that depends on the `groupMean`. -> This is called a hierarchical data analysis model. -> What do you conclude about vowel words vs. consonant words now? -> -> *Hints* -> 1. Memoize the word mean RT when sampling from the `groupMean`. -> 2. Consider how the model is sensitive to the different assumed variances (e.g. the fixed noise in the observe function we assume sigma=10). -> In particular, think about how this should affect how you choose a sigma for your word-level effects. -> -> Note: The individual word means are called *random effects* -- in a BDA, they are random variables -> (usually at the individual item or person level) that are not of interest by themselves. - -~~~~ -var data = [{group: "vowel", word: "abacus", id: 1, rt: 210}, - {group: "vowel", word: "abacus", id: 2, rt: 212}, - {group: "vowel", word: "abacus", id: 3, rt: 209}, - {group: "vowel", word: "aardvark", id: 1, rt: 200}, - {group: "vowel", word: "aardvark", id: 2, rt: 201}, - {group: "vowel", word: "aardvark", id: 3, rt: 198}, - {group: "vowel", word: "ellipse", id: 1, rt: 220}, - {group: "vowel", word: "ellipse", id: 2, rt: 222}, - {group: "vowel", word: "ellipse", id: 3, rt: 219}, - - {group: "consonant", word: "proton", id: 1, rt: 190}, - {group: "consonant", word: "proton", id: 2, rt: 191}, - {group: "consonant", word: "proton", id: 3, rt: 189}, - {group: "consonant", word: "folder", id: 1, rt: 180}, - {group: "consonant", word: "folder", id: 2, rt: 182}, - {group: "consonant", word: "folder", id: 3, rt: 178}, - {group: "consonant", word: "fedora", id: 1, rt: 230}, - {group: "consonant", word: "fedora", id: 2, rt: 231}, - {group: "consonant", word: "fedora", id: 3, rt: 228}, - {group: "consonant", word: "fedora", id: 1, rt: 231}, - {group: "consonant", word: "fedora", id: 2, rt: 233}, - {group: "consonant", word: "fedora", id: 3, rt: 230}, - {group: "consonant", word: "fedora", id: 1, rt: 230}, - {group: "consonant", word: "fedora", id: 2, rt: 232}, - {group: "consonant", word: "fedora", id: 3, rt: 228}] - -var opts = {method: "MCMC", - burn: 10000, - lag: 5, - samples: 5000}; - -var post = Infer(opts, function() { - var groupMeans = {vowel: gaussian(200, 100), - consonant: gaussian(200, 100)} - - var wordMean = mem(function(word, group) { - return gaussian(groupMeans[group], 20); - }) - - var obsFn = function(d) { - //assume response times (rt) depend on group means with a small fixed noise: - observe(Gaussian({mu: wordMean(d.word, d.group), - sigma: 10}), d.rt); - } - - mapData({data: data}, obsFn); - - return groupMeans['vowel'] - groupMeans['consonant']; -}) - -print("vowel - consonant reading time:"); -viz(post); -print(expectation(post)); -~~~~ - - -### Exercise 3.2 - -> Looking at the data further, you might notice that some participants in your experiment read slightly faster than others. -> Extend your model to also include an additional random effect of participant id, that is, an unknown (and not of interest) influence on reading time of the particular person. -> -> How does this affect your conclusion? -> Is your conclusion any stronger or weaker? - - -~~~~ -var data = [{group: "vowel", word: "abacus", id: 1, rt: 210}, - {group: "vowel", word: "abacus", id: 2, rt: 212}, - {group: "vowel", word: "abacus", id: 3, rt: 209}, - {group: "vowel", word: "aardvark", id: 1, rt: 200}, - {group: "vowel", word: "aardvark", id: 2, rt: 201}, - {group: "vowel", word: "aardvark", id: 3, rt: 198}, - {group: "vowel", word: "ellipse", id: 1, rt: 220}, - {group: "vowel", word: "ellipse", id: 2, rt: 222}, - {group: "vowel", word: "ellipse", id: 3, rt: 219}, - - {group: "consonant", word: "proton", id: 1, rt: 190}, - {group: "consonant", word: "proton", id: 2, rt: 191}, - {group: "consonant", word: "proton", id: 3, rt: 189}, - {group: "consonant", word: "folder", id: 1, rt: 180}, - {group: "consonant", word: "folder", id: 2, rt: 182}, - {group: "consonant", word: "folder", id: 3, rt: 178}, - {group: "consonant", word: "fedora", id: 1, rt: 230}, - {group: "consonant", word: "fedora", id: 2, rt: 231}, - {group: "consonant", word: "fedora", id: 3, rt: 228}, - {group: "consonant", word: "fedora", id: 1, rt: 231}, - {group: "consonant", word: "fedora", id: 2, rt: 233}, - {group: "consonant", word: "fedora", id: 3, rt: 230}, - {group: "consonant", word: "fedora", id: 1, rt: 230}, - {group: "consonant", word: "fedora", id: 2, rt: 232}, - {group: "consonant", word: "fedora", id: 3, rt: 228}] - -var opts = {method: "MCMC", - burn: 10000, - lag: 5, - samples: 5000}; - -var post = Infer(opts, function() { - var groupMeans = {vowel: gaussian(200, 100), - consonant: gaussian(200, 100)} - - var participantMean = mem(function(pid) { - return gaussian(0, 2); - }) - - var wordMean = mem(function(word, group) { - return gaussian(groupMeans[group], 20); - }) - - var obsFn = function(d) { - //assume response times (rt) depend on group means with a small fixed noise: - observe(Gaussian({mu: wordMean(d.word, d.group) + participantMean(d.id), - sigma: 10}), d.rt); - } - - mapData({data: data}, obsFn); - - return {diff: groupMeans['vowel'] - groupMeans['consonant'], - p1: participantMean(1), - p2: participantMean(2), - p3: participantMean(3)} -}) - -print("vowel - consonant reading time:"); -var diff = marginalize(post, function(x) { x.diff }); -viz(diff); -print(expectation(diff)); - -print("Participant 1"); -var p1 = marginalize(post, function(x) { x.p1 }); -viz(p1); -print(expectation(p1)); - -print("Participant 2"); -var p2 = marginalize(post, function(x) { x.p2 }); -viz(p2); -print(expectation(p2)); - -print("Participant 3"); -var p3 = marginalize(post, function(x) { x.p3 }); -viz(p3); -print(expectation(p3)); -~~~~ - -This should make the conclusion stronger since more of the variance is accounted for by the model. \ No newline at end of file diff --git a/solutions/inference-algorithms.md b/solutions/inference-algorithms.md deleted file mode 100755 index 2ab8765..0000000 --- a/solutions/inference-algorithms.md +++ /dev/null @@ -1,661 +0,0 @@ ---- -layout: exercise -title: Algorithms for Inference - solutions -description: MCMC, etc. -custom_js: -- assets/js/custom.js ---- - -## Exercise 1. Sampling Implicit Curves - -In the code box below, the `curve` function defines a vaguely heart-shaped curve. Below, we use rejection sampling to sample points along the boundary of the curve. - -~~~~ -// takes z = 0 cross section of heart surface to some tolerance -// see http://mathworld.wolfram.com/HeartSurface.html -var onCurve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - var crossSection = x2 + term1*term1 - 1; - return Math.abs(crossSection) < 0.01; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var model = function() { - var x = gaussian(xmu, xsigma); - var y = gaussian(ymu, ysigma); - condition(onCurve(x, y)); - return {x: x, y: y}; -}; - -var post = Infer({method: 'rejection', samples: 1000}, model); -viz.auto(post); -~~~~ - -### a) - -> Try using MCMC with Metropolis-Hastings instead of rejection sampling. -> You'll notice that it does not fare as well as rejection sampling. Why not? - -~~~~ -///fold: -var onCurve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - var crossSection = x2 + term1*term1 - 1; - return Math.abs(crossSection) < 0.01; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var model = function() { - var x = gaussian(xmu, xsigma); - var y = gaussian(ymu, ysigma); - condition(onCurve(x, y)); - return {x: x, y: y}; -}; -/// - -var post = Infer({method: 'MCMC', - samples: 10000, - lag: 10}, model); -viz.auto(post); -~~~~ - -Once the MH algorithm finds a state with reasonable probability, its proposals will fix one variable and try to change the other. -Since any proposals along straight vertical or horizontal lines are going to be states with much lower probability (almost every state is very low probability in this model), it is going to get stuck in a local optimum and rarely sample new states. -In contrast, every accepted sample in rejection sampling is likely to be unique. - - -### b) - -> Change the *model* to make MH successfully trace the curves. -> Your solution should result in a graph that clearly traces a heart-shaped figure -- though it need not do quite as well as rejection sampling. -> Why does this work better? - -> You may find the following piece of code useful. - -~~~~ -var a = diagCovGaussian({mu: Vector([0, 100]), - sigma: Vector([1, 10])}); -display(T.get(a, 0)); -display(T.get(a, 1)); -~~~~ - -~~~~ -///fold: -var onCurve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - var crossSection = x2 + term1*term1 - 1; - return Math.abs(crossSection) < 0.01; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); -/// - -var model = function() { - var xy = diagCovGaussian({mu: Vector([xmu, xsigma]), - sigma: Vector([ymu, ysigma])}); - var x = T.get(xy, 0); - var y = T.get(xy, 1); - condition(onCurve(x, y)); - return {x: x, y: y}; -}; - -var post = Infer({method: 'MCMC', - samples: 1000, - lag: 100}, model); -viz.auto(post); -~~~~ - -This model *jointly* samples x and y which allows us to better model their dependence. -Note that this still requires many, many more samples than does rejection sampling, and provides less accurate results. - -### Exercise 1.3 - -> Using the original model (not the modified one in 1.2), change the inference *algorithm* to HMC to successfully trace the curves. -> What parameters work best? -> *Why* does this inference algorithm work better than MH? - -> HINT: start with the default parameters specified in the HMC [docs](https://webppl.readthedocs.io/en/master/inference/methods.html#mcmc) and play with different values. - -~~~~ -///fold: -var onCurve = function(x, y) { - var x2 = x*x; - var term1 = y - Math.pow(x2, 1/3); - var crossSection = x2 + term1*term1 - 1; - return Math.abs(crossSection) < 0.01; -}; -var xbounds = [-1, 1]; -var ybounds = [-1, 1.6]; - -var xmu = 0.5 * (xbounds[0] + xbounds[1]); -var ymu = 0.5 * (ybounds[0] + ybounds[1]); -var xsigma = 0.5 * (xbounds[1] - xbounds[0]); -var ysigma = 0.5 * (ybounds[1] - ybounds[0]); - -var model = function() { - var x = gaussian(xmu, xsigma); - var y = gaussian(ymu, ysigma); - condition(onCurve(x, y)); - return {x: x, y: y}; -}; -/// - -var opts = {method: 'MCMC', - samples: 10000, - callbacks: [MCMC_Callbacks.finalAccept], - kernel: {HMC : { steps: 10, stepSize: .5 }} } -var post = Infer(opts, model); -viz.auto(post); -~~~~ - -Steps 10 and stepSize 0.5 gave good results. -HMC works better in this case than MH because HMC makes proposals to all the variables at once using gradients to go "in a good direction". -The single-site MH in WebPPL makes individual proposals to each random variable, so when the proposals are strongly correlated (a posteriori), they mostly get rejected. -Even making MH proposals to all the variables at once, without gradients, it is very unlikely that the correlated variables will jointly move in the "right directions". - - -## Exercise 2. Properties and pitfalls of Metropolis-Hastings - -> Consider a very simple function that interpolates between two endpoints. - -> Suppose one endpoint is fixed at `-10`, but we have uncertainty over the value of the other endpoint and the interpolation weight between them. -> By conditioning on the resulting value being close to 0, we can infer what the free variables must have been. - -~~~~ -var interpolate = function(point1, point2, interpolationWeight) { - return (point1 * interpolationWeight + - point2 * (1 - interpolationWeight)); -} - -var model = function(){ - var point1 = -10; - var point2 = uniform(-100, 100); - var interpolationWeight = uniform(0, 1); - var pointInMiddle = interpolate(point1, point2, interpolationWeight); - observe(Gaussian({mu: 0, sigma:0.1}), pointInMiddle); - return {point2, interpolationWeight, pointInMiddle}; -} - -var posterior = Infer({method: 'MCMC', samples: 5000, lag: 100}, model); -var samples = posterior.samples; -viz(marginalize(posterior, function(x) { x.pointInMiddle })); - -// Store these for future use -editor.put("posterior", posterior); -editor.put("samples", samples); -~~~~ - -> By looking at the marginal distribution of `pointInMiddle`, we can see that `Infer()` successfully finds values of `point2` and `interpolationWeight` that satisfy our condition. - -### Exercise 2.1 - -> Visualize the separate marginal distributions of `point2` and `interpolationWeight`. -> How would you describe their shapes, compared to the marginal distribution of `pointInMiddle`? - -> HINT: use the [marginalize](http://docs.webppl.org/en/master/functions/other.html#marginalize) helper to elegantly construct these marginal distributions - -~~~~ -var posterior = editor.get("posterior"); -viz(marginalize(posterior, function(x) {return x.point2})); -viz(marginalize(posterior, function(x) {return x.interpolationWeight})); -~~~~ - -Whereas `pointInMiddle` is peaked around 0, -`point2` and `interpolationWeight` appear to be multimodal. - - -### Exercise 2.2 - -Visualize the *joint* marginal distribution of point2 and interpolationWeight. -What does this tell you about their dependence? - -~~~~ -var posterior = editor.get("posterior"); -viz(marginalize(posterior, function(x) { - return {'point2': x.point2, 'inter': x.interpolationWeight}; -})); -~~~~ - -Both variables have a close dependence. -If `point2` is large, `interpolation` weight needs to also be large to in order to bring the -interpolation point to 0. - -### Exercise 2.3 - -WebPPL also exposes the list of MCMC samples that the density plots above are built from. -This is saved in `posterior.samples`. -Set `samples = 100` and `lag = 0`, then plot `pointInMiddle` as a function of the sample number. -Run this several times to get a feel for the shape of this curve. -What do you notice about the samples generated by MCMC? - -HINT: this will require some 'data munging' on the array of samples. -Some useful functions will be [`map`](http://docs.webppl.org/en/master/functions/arrays.html#map), `_.range()`, and `viz.line` which takes arrays `x` and `y`. - -~~~~ -///fold: -var interpolate = function(point1, point2, interpolationWeight) { - return (point1 * interpolationWeight + - point2 * (1 - interpolationWeight)); -} - -var model = function(){ - var point1 = -10; - var point2 = uniform(-100, 100); - var interpolationWeight = uniform(0, 1); - var pointInMiddle = interpolate(point1, point2, interpolationWeight); - observe(Gaussian({mu: 0, sigma:0.1}), pointInMiddle); - return {point2, interpolationWeight, pointInMiddle}; -} -/// - -var posterior = Infer({method: 'MCMC', samples: 100, lag: 0}, model); -var samples = map(function(d) { d["value"]["pointInMiddle"] }, posterior.samples); -viz.line(_.range(samples.length), samples); -~~~~ - -The starting point of our chain is highly variable in for the first few samples before it converges to around 0, our observed `pointInMiddle`. -This is because our MCMC chain is initialized randomly and needs iterations reach a steady state. -One way to fix this is to add a burn-in parameter, telling the MCMC sampler to throw away these early samples. - -### Exercise 2.4 - -Rewrite the code to use rejection sampling. -Note that you will need to find a way to turn the `observe` statement into a `condition` statement (Hint: See Exercise #1). -Is using rejection sampling here a good idea? -Why or why not? - -~~~~ -///fold: -var interpolate = function(point1, point2, interpolationWeight) { - return (point1 * interpolationWeight + - point2 * (1 - interpolationWeight)); -} -/// - -var model = function(){ - var point1 = -10; - var point2 = uniform(-100, 100); - var interpolationWeight = uniform(0, 1); - var pointInMiddle = interpolate(point1, point2, interpolationWeight); - condition(Math.abs(pointInMiddle) < 0.01) - return {point2, interpolationWeight, pointInMiddle}; -} - -viz.marginals(Infer({method: 'rejection', samples: 1000}, model)); -~~~~ - -Rejection sampling doesn't work well here because the range of `point2` is very wide [-100, 100], -so the proposed samples are almost always rejected. - - -### Exercise 2.5 - -> Using `verbose: true` in our `MH` algorithm, we can observe the proportion of proposals actually accepted. -> What is the acceptance rate over time and what about the model puts it at this level? - -> Consider the list of built-in drift kernels [here](https://webppl.readthedocs.io/en/master/driftkernels.html?highlight=drift%20kernel#helpers). -> Which of these would be appropriate to use in your model in place of the current uniform prior from which `point2` is sampled? -> Replace `uniform(-100, 100)` with a drift kernel and adjust the `width` parameter to raise the acceptance rate. -> Why does using this drift kernel influence the acceptance rate? -> What is a drawback of this approach? - -~~~~ -///fold: -var interpolate = function(point1, point2, interpolationWeight) { - return (point1 * interpolationWeight + - point2 * (1 - interpolationWeight)); -} -/// - -var model = function(){ - var point1 = -10; - var point2 = uniformDrift({a: -100, b: 100, width: .1}); - var interpolationWeight = uniform(0, 1); - var pointInMiddle = interpolate(point1, point2, interpolationWeight); - observe(Gaussian({mu: 0, sigma:0.1}), pointInMiddle); - return {point2, interpolationWeight, pointInMiddle}; -} - -var posterior = Infer({method: 'MCMC', - samples: 500, - verbose: true}, model); -~~~~ - -Using a drift kernel like uniformDrift means that we will sample proposals from distributions centered at the previous value of our random choice. -This produces a random walk that allows MH to more efficiently explore areas of high probability. -We notice that the acceptance on average is about an order of magnitude larger when using a width of 0.1! -One drawback of this approach is that we will get a much narrower set of samples. - - diff --git a/solutions/learning-as-conditional-inference.md b/solutions/learning-as-conditional-inference.md deleted file mode 100644 index 83270c5..0000000 --- a/solutions/learning-as-conditional-inference.md +++ /dev/null @@ -1,275 +0,0 @@ ---- -layout: exercise -title: Learning as conditional inference - solutions ---- - -## Exercise 1 - -### Exercise 1.1 - -> Recall our final coin weight model, "fair-vs-uniform", in which the coin weight was either 0.5 with high probability or drawn from a uniform distribution otherwise. -> This implies that a two-faced coin (always heads) is equally likely as a 70% heads coin. -> Intuitively you might be inclined to think that a two-faced coin is easier to make, and thus more likely. -> Adjust the model to express a prior where 90% of biased coins are always heads. - -~~~~ -var weightPosterior = function(observedData) { - return Infer({method: 'MCMC', burn:1000, samples: 10000}, function() { - var isFair = flip(0.9); - var isTwoFaced = flip(0.7); - var realWeight = isFair ? 0.5 : (isTwoFaced ? 1 : uniform({a:0, b:1})); - var coin = Bernoulli({p: realWeight}); - var obsFn = function(datum) { observe(coin, datum=='h') }; - mapData({data: observedData}, obsFn); - return realWeight; - }) -} - -var fullDataSet = repeat(50, function() { 'h' }); -var observedDataSizes = [0,1,2,4,6,8,10,12,15,20,25,30,40,50]; -var estimates = map(function(N) { expectation(weightPosterior(fullDataSet.slice(0, N))) }, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -### Exercise 1.2 - -How does your solution behave differently than the fair-vs-uniform model from the chapter? -Find a data set such that the learning curves are qualitatively different. - -~~~~ -var fairVsUniform = function(observedData){ - return Infer({method: 'MCMC', burn: 10000, samples: 10000}, function() { - var isFair = flip(0.9); - var realWeight = isFair ? 0.5 : uniform({a:0, b:1}); - var coin = Bernoulli({p: realWeight}); - var obsFn = function(datum){ observe(coin, datum=='h') }; - mapData({data: observedData}, obsFn); - return realWeight; - }) -} - -var fairVsTfVsUniform = function(observedData) { - return Infer({method: 'MCMC', burn: 10000, samples: 10000}, function() { - var isFair = flip(0.9); - var isTwoFaced = flip(0.9); - var realWeight = isFair ? 0.5 : (isTwoFaced ? 1 : uniform({a:0, b:1})); - var coin = Bernoulli({p: realWeight}); - var obsFn = function(datum) { observe(coin, datum=='h') }; - mapData({data: observedData}, obsFn); - return realWeight; - }) -} - -var fullDataSet = ['h', 'h', 'h', 'h', 'h', 'h', 'h', 'h', 't', 't', - 'h', 'h', 'h', 'h', 'h', 'h', 'h', 'h', 't', 't', - 'h', 'h', 'h', 'h', 'h', 'h', 'h', 'h', 't', 't', - 'h', 'h', 'h', 'h', 'h', 'h', 'h', 'h', 't', 't', - 'h', 'h', 'h', 'h', 'h', 'h', 'h', 'h', 't', 't']; -var observedDataSizes = [0,1,2,4,6,8,10,12,15,20,25,30,40,50]; -var fvuEstimates = map(function(N) { expectation(fairVsUniform(fullDataSet.slice(0, N))) }, - observedDataSizes); -var fvtfvuEstimates = map(function(N) { expectation(fairVsTfVsUniform(fullDataSet.slice(0, N))) }, - observedDataSizes); -viz.line(observedDataSizes, fvuEstimates); -viz.line(observedDataSizes, fvtfvuEstimates); -~~~~ - -Here, we see that the fair-vs-twofaced-vs-uniform model quickly abandons the 50% hypothesis and latches onto the 100%, whereas the fair-vs-uniform model more gradually increases to 80%. -As soon as a single `t` is encountered, the fair-vs-twofaced-vs-uniform model immediately abandons the 100% hypothesis and drops back to 50% before climbing to 80%. - -## Exercise 2: The strength of beliefs - -> In the chapter, we observed how the model's best guess about the weight of the coin changed across a sequence of successive heads. -> See what happens if instead we see heads and tails in alternation. - -~~~~ -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta(pseudoCounts)); - var coinDist = Bernoulli({p: coinWeight}); - var obsFn = function(datum){ observe(coinDist, datum=='h') }; - mapData({data: observedData}, obsFn); - return coinWeight; - }) -} - -var fullDataSet = repeat(50, function() { ['h', 't'] }).flat(); -var observedDataSizes = [0,2,4,6,8,10,20,30,40,50,70,100]; -var estimates = map(function(N) { expectation(weightPosterior(fullDataSet.slice(0,N))) }, observedDataSizes); -viz.line(observedDataSizes, estimates); -~~~~ - -> It looks like we haven't learned anything! -> Since our best estimate for the coin's weight was 0.5 *prior* to observing anything, our best estimate, the maximum a posteriori (MAP), is hardly going to change when we get data consistent with that prior. - -### Exercise 2.1 - -> Modify the code below to see whether our posterior *distribution* is at all changed by observing this data set. -> Compare the prior and the posterior after all 100 observations. -> What are some similarities and differences? -> Why does this occur? - -~~~~ -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta(pseudoCounts)); - var coinDist = Bernoulli({p: coinWeight}); - var obsFn = function(datum){ observe(coinDist, datum=='h') }; - mapData({data: observedData}, obsFn); - return coinWeight; - }) -} - -var fullDataSet = repeat(50, function() { ['h', 't'] }).flat(); - -var prior = Beta(pseudoCounts); -var post = weightPosterior(fullDataSet); - -display("Prior distribution"); -viz(prior); -display("Posterior distribution"); -viz(post); -~~~~ - -The general shape of the prior and posterior are similar, but the posterior distribution is much narrower and taller as indicated by the smaller x-axis and larger y-axis. -This happens because as we observe more data, we become increasingly confident that the true mean is close to 50%. - - -### Exercise 2.2 - -> This time, let's see how our belief distribution changes as more data are observed in. -> Although entropy would be a good measure here, calculating entropy for a Beta distribution is [somewhat involved](https://en.wikipedia.org/wiki/Beta_distribution#Quantities_of_information_(entropy)). - -> An alternative we can use is variance: the expected squared difference between a sample from the distribution and the distribution mean. -> This doesn't take into account the shape of the distribution, and so it won't give us quite what we want if the distribution is non-symmetric; but it is a reasonable first try. - -> Modify the code to see how the variance changes as more data are observed. - -> HINT: `expectation` can take an optional function parameter. For example: -~~~~norun -expectation(Categorical({ps: [.2, .8], vs: [0, 1]}), function(x) { 2*x }); -~~~~ - -~~~~ -var pseudoCounts = {a: 10, b: 10}; - -var weightPosterior = function(observedData){ - return Infer({method: 'MCMC', burn:1000, samples: 1000}, function() { - var coinWeight = sample(Beta(pseudoCounts)); - var coinDist = Bernoulli({p: coinWeight}); - var obsFn = function(datum){ observe(coinDist, datum=='h') }; - mapData({data: observedData}, obsFn); - return coinWeight; - }) -} - -var fullDataSet = repeat(256, function(){['h', 't']}).flat() -var observedDataSizes = [0,2,4,8,16,32,64,128,256,512]; -var variances = map(function(N) { - var posterior = weightPosterior(fullDataSet.slice(0,N)); - var mean = expectation(posterior); - var variance = expectation(posterior, function(x) { Math.pow(x - mean, 2) }); - return variance -}, observedDataSizes) - -viz.line(observedDataSizes, variances); -~~~~ - -The variance decreases as we observe more data. - -## 3. Causal Power - -> Consider our model of causal power from the chapter. - -~~~~ -var causalPowerModel = function(observedData) { - // Causal power of C to cause E - var cp = uniform(0, 1); - - // Background probability of E - var b = uniform(0, 1); - - mapData({data: observedData}, function(datum) { - // The noisy causal relation to get E given C - var E = (datum.C && flip(cp)) || flip(b); - condition(E == datum.E); - }) - - return {causal_power: cp, background: b}; -} - -var observedData = [{C: true, E: false}]; -var posterior = Infer({method: 'MCMC', samples: 10000, lag:2}, - function() { causalPowerModel(observedData) }) -viz.marginals(posterior); -~~~~ - -> For each list item, find a set of `observedData` that produce the following properties. -Then explain intuitively why the data produce these results. -> -> 1. High causal power for C and low background probability of E. -> 2. Low causal power for C and high background probability of E. -> 3. High causal power for C and high background probability of E. -> 4. C is present at least 5 times, E is present each time C is present, and C does not have high causal power. - -~~~~ -///fold: -var causalPowerModel = function(observedData) { - // Causal power of C to cause E - var cp = uniform(0, 1); - - // Background probability of E - var b = uniform(0, 1); - - mapData({data: observedData}, function(datum) { - // The noisy causal relation to get E given C - var E = (datum.C && flip(cp)) || flip(b); - condition(E == datum.E); - }) - - return {causal_power: cp, background: b}; -} -/// - -var observedDataA = [{C: true, E: true}, - {C: true, E: true}, - {C: true, E: true}, - {C: false, E: false}, - {C: false, E: false}, - {C: false, E: false}]; -var observedDataB = [{C: true, E: true}, - {C: true, E: true}, - {C: true, E: false}, - {C: false, E: true}, - {C: false, E: true}, - {C: false, E: true}]; -var observedDataC = [{C: true, E: true}, - {C: true, E: true}, - {C: true, E: true}, - {C: false, E: true}, - {C: false, E: true}, - {C: false, E: false}]; -var observedDataD = [{C: true, E: true}, - {C: true, E: true}, - {C: true, E: true}, - {C: true, E: true}, - {C: true, E: true}].concat(repeat(20, function() { [{C: false, E: true}] })); - -var posterior = Infer({method: 'MCMC', samples: 10000, lag:2}, - function() { causalPowerModel(observedDataA) }); -viz.marginals(posterior); -~~~~ - -1. Since we never observe E outside the context of C, we infer that E has a low base rate. - Since E always occurs when C does, we infer that C has a high causal power. -2. Since we observe E regardless of whether or not C occurs, we infer that E has a high base rate and C has low causal power. - The single observation that E does not occur when C occurs drastically diminishes C's causal power. -3. Since we often observe E even when C does not occur, we infer that E has a high base rate. - However, since E always occurs when C occurs but only sometimes when C does not occur, we infer that C has high causal power. -4. Since we observe E many times even without C, we infer that E has a high base rate. - This alternative cause *explains away* C as the cause, thus giving us no further information about C. - As a result, we see that C's posterior is roughly the same as its prior. \ No newline at end of file diff --git a/solutions/lot-learning.md b/solutions/lot-learning.md deleted file mode 100644 index 6aabd13..0000000 --- a/solutions/lot-learning.md +++ /dev/null @@ -1,116 +0,0 @@ ---- -layout: exercise -title: Learning as conditional inference - solutions ---- - -## Exercise 1: Inferring Functions - -> Consider our model of function inference from the chapter. -> We can reconceptualize our program as a sequence-generator by making the input arguments 1,2,3,…. -> Suppose that the first number in the sequence `f(1)` is 1 and the second number `f(2)` is 4. -> What number would come next? - -~~~~ -///fold: -var plus = {fn: function(a,b) {return a + b}, expr: '+'} -var multiply = {fn: function(a,b) {return Math.round(a * b,0)}, expr: '*'} -var divide = {fn: function(a,b) {return Math.round(a/b,0)}, expr: '/'} -var minus = {fn: function(a,b) {return a - b}, expr: '-'} -var power = {fn: function(a,b) {return Math.pow(a,b)}, expr: '**'} -var binaryOps = [plus, multiply, divide, minus, power] - -var identity = {fn: function(x) {return x}, expr: 'x'} - -var randomConstantFunction = function() { - var c = uniformDraw(_.range(10)) - return {fn: function(x){return c}, expr: c} -} - -var randomCombination = function(f,g) { - var op = uniformDraw(binaryOps); - var opfn = op.fn - var ffn = f.fn - var gfn = g.fn - return {fn: function(x){return opfn(ffn(x),gfn(x))}, - expr: f.expr+op.expr+g.expr} -} - -// sample an arithmetic expression -var randomArithmeticExpression = function() { - if (flip()) { - return randomCombination(randomArithmeticExpression(), - randomArithmeticExpression()) - } else { - return flip() ? identity : randomConstantFunction() - } -} -/// - -viz.table(Infer({method: 'enumerate', maxExecutions: 1000}, function() { - var e = randomArithmeticExpression(); - var f = e.fn; - - condition(f(1) == 1); - condition(f(2) == 4); - - return f(3); // use this for Exercise 1.1 -// return e.expr; // use this for Exercise 1.2 -})) -~~~~ - - -### Exercise 1.1 - -> Not surprisingly, the model predicts `9` as the most likely result for `f(3)`. -> However, it also puts significant probability on `27`. -> Explain why these two numbers have the highest posterior probabilities. - -These results are largely due to the high probability of the functions `x * x` and `x ** x`, which return `9` and `27` for `f(3)`, respectively. - - -### Exercise 1.2 - -> Why is the probability of `x ** 2` is so much lower than `x * x`? - -The two expressions differ in the final draw from the recursive function `randomArithmeticExpression`. -On each step through the function, there is a 0.3 * 0.5 = 0.15 chance of returning `x`, but only a 0.3 * 0.5 * 0.1 = 0.015 chance of drawing `2`. -In general, drawing an `x` is much likely than drawing any particular number. - - -### Exercise 1.3 - -> Many people find the high probability assigned to `27` to be unintuitive (i.e. if we ran this as an experiment, 27 would be a very infrequent response). -> This suggests our model is an imperfect model of human intuitions. How could we decrease the probability of inferring `27`? -> -> HINT: Consider the priors. - -Currently, each function (`*`, `^`, `+`) is equally likely (they are drawn from a uniform distribution). -We could decrease the probability of the latter function by decreasing the probability of drawing `^`, e.g. - -~~~~norun -var randomCombination = function(f,g) { - var op = categorical({vs: binaryOps, ps: [.24, .24, .24, .24, .04]}); - var opfn = op.fn - var ffn = f.fn - var gfn = g.fn - return {fn: function(x){return opfn(ffn(x),gfn(x))}, - expr: f.expr+op.expr+g.expr} -} -~~~~ - -It seems reasonable that people are less likely to consider sequences made from powers, though this would need to be confirmed empirically. - - - -## Exercise 2: Role-governed concepts (optional) - -In the Rational Rules model we saw in the chapter, concepts were defined in terms of the features of single objects (e.g. "it's a raven if it has black wings"). -Psychologists have suggested that many concepts are not defined by the features of a single objects, but instead by the relations the object has to other objects. -For instance, "a key is something that opens a lock". -These are called *role-governed* concepts. - -Extend the Rational Rules model to capture role-governed concepts. - -Hint: You will need primitive relations in your language of thought. - -Hint: Consider adding quantifiers (e.g. *there exists*) to your language of thought. diff --git a/solutions/mixture-models.md b/solutions/mixture-models.md deleted file mode 100644 index 7dbbd13..0000000 --- a/solutions/mixture-models.md +++ /dev/null @@ -1,144 +0,0 @@ ---- -layout: exercise -title: Mixture models - exercises ---- - -## Exercise 1. Social group reasoning - -Our knowledge about the social world is *structured*: we do not just know a collection of facts about particular people but believe that there are *kinds* of people with shared properties. Even infants make strong assumptions about people based on what language they speak, what foods they eat, and what actions they take (check out Katherine Kinzler's work!) How do we learn this structure at the same time as we are learning about individual people? In this exercise you will explore mixture models as a formal model of how we reason about social groups. - -### a) - -Imagine you go to an alien planet and see 10 aliens: you notice three clear properties, some have antennae, some are green, and some make a distinctive 'blargh' noise. -Implement a simple model assuming that there are two kinds of aliens with different distributions over these properties, but you have a priori uncertainty over what the distributions are, and whether any particular alien belongs to group A or group B. - -HINT: each data point we observed in the chapter only had one property (from k different values). Here each alien has three properties. This means we need a way of observing all three properties under their respective prototype priors. - -~~~~ -///fold: -var expectationOver = function(results, group) { - return function(property) { - return expectation(results, function(v) {return v[group][property]}) - } -} -/// -var properties = ['antennae', 'green', 'blarghNoise'] -var data = [ - {antennae : false, green: false, blarghNoise: false}, - {antennae : true, green: true, blarghNoise: true}, - {antennae : true, green: true, blarghNoise: true}, - {antennae : true, green: true, blarghNoise: true}, - {antennae : false, green: false, blarghNoise: false}, - {antennae : true, green: true, blarghNoise: true}, - {antennae : false, green: false, blarghNoise: false}, - {antennae : true, green: true, blarghNoise: true}, - {antennae : false, green: false, blarghNoise: false}, - {antennae : false, green: false, blarghNoise: false} -] - -var sampleGroupPrototype = mem(function(groupName) { - var probs = repeat(3, function(){ beta(.5, .5)}) - return _.zipObject(properties, probs) -}) - -var results = Infer({method: 'MCMC', kernel: {HMC: {steps: 10, stepSize: .01}}, - samples: 3000}, function(){ - mapData({data: data}, function(datum) { - var group = flip() ? 'group1' : 'group2'; - var prototype = sampleGroupPrototype(group) - mapData({data: properties}, function(property) { - observe(Bernoulli({p: prototype[property]}), datum[property]) - }) - }) - return {group1: sampleGroupPrototype('group1'), - group2: sampleGroupPrototype('group2')} -}) -viz.bar(properties, map(expectationOver(results, 'group1'), properties)) -viz.bar(properties, map(expectationOver(results, 'group2'), properties)) -~~~~ - -### b) - -Now imagine you hear a noise from inside a crater but you cannot see the alien that emitted it; this is a noisy observation. How can you use the model you learned above to make an educated guess about their other features? - -~~~~ -var results = Infer({method: 'MCMC', kernel: {HMC: {steps: 10, stepSize: .01}}, - samples: 3000}, function(){ - mapData({data: data}, function(datum) { - var group = flip() ? 'group1' : 'group2'; - var prototype = sampleGroupPrototype(group) - mapData({data: properties}, function(property) { - observe(Bernoulli({p: prototype[property]}), datum[property]) - }) - }) - var mysteryGroup = flip() ? 'group1' : 'group2' - var mysteryPrototype = sampleGroupPrototype(mysteryGroup) - observe(Bernoulli({p: mysteryPrototype['blarghNoise']}), true) - - return {group1: sampleGroupPrototype('group1'), - group2: sampleGroupPrototype('group2'), - mysteryGroup: mysteryGroup } -}) -viz.bar(properties, map(expectationOver(results, 'group1'), properties)) -viz.bar(properties, map(expectationOver(results, 'group2'), properties)) -marginalize(results, function(x) { - x.mysteryGroup -}) -~~~~ - - -## Exercise 2: Detecting cheating - -This problem is adapted from Section 6.5 of Lee \& Wagenmakers (2013). - -Consider the practical challenge of detecting if people cheat on a test. For example, people who have been in a car accident may seek financial compensation from insurance companies by feigning cognitive impairment such as pronounced memory loss. When these people are confronted with a memory test that is intended to measure the extent of their impairment, they may deliberately under-perform. This behavior is called malingering, and it may be accompanied by performance much worse than that displayed by real amnesiacs. Sometimes, for example, malingerers may perform substantially below chance. - -Malingering is not always easy to detect, but is naturally addressed by a mixture model. Using this approach, it is possible to infer which of two categories -- those who malinger, and those who are truthful or bona fide -- each person belongs to, and quantify the confidence in each of these classifications. -We consider an experimental study on malingering, in which each of p = 22 participants completed a memory test (Ortega, Wagenmakers, Lee, Markowitsch, & Piefke, 2012). One group of participants was told to do their best. These are the bona fide participants. The other group of participants was told to under-perform by deliberately simulating amnesia. These are the malingerers. Out of a total of n = 45 test items, the participants get 45, 45, 44, 45, 44, 45, 45, 45, 45, 45, 30, 20, 6, 44, 44, 27, 25, 17, 14, 27, 35, and 30 correct. Because this was an experimental study, we know that the first 10 participants were bona fide and the next 12 were instructed to malinger. - -### a) - -Implement a simple mixture model inferring which group each participant belongs to. Examine the posteriors over group-level parameters. - -HINT: the group-level variables you are trying to infer are the error rates; it probably makes sense to assume that the malingerers are worse than bonafide participants, but have uncertainty over the values of each. - -~~~~ -var scores = [45, 45, 44, 45, 44, 45, 45, 45, 45, 45, 30, 20, 6, 44, 44, 27, 25, 17, 14, 27, 35, 30] -var subjIDs = _.range(scores.length) -var data = map(function(datum) {return _.zipObject(['subjID', 'score'], datum)}, _.zip(subjIDs, scores)); - -var inferOpts = {method: 'MCMC', //kernel: {HMC: {steps: 10, stepSize: .01}}, - samples: 10000} -var results = Infer(inferOpts, function() { - var group_1_p = uniform(0.5, 1) - var group_2_p = uniform(0, group_1_p) - var participant2Group = mem(function(participantID) { - return flip() ? 'group1' : 'group2' - }) - var group2Prob = mem(function(group) { - return group == 'group1' ? group_1_p : group_2_p - }) - - var obsFn = function(datum){ - var p = group2Prob(participant2Group(datum.subjID)) - observe(Binomial({p: p, n: 45}), datum.score) - } - mapData({data: data}, obsFn) - - // Get participant group membership posteriors - var participantResults_ = map(function(datum) {return participant2Group(datum.subjID)}, data) - var participantResults = _.zipObject(_.range(participantResults_.length), participantResults_) - // Merge overall group success probs - return _.merge(participantResults, {group_1_p: group_1_p, group_2_p: group_2_p}) -}) - -viz.marginals(results) -~~~~ - - -### b) - -Examine the posteriors over group membership for each participant. Did all of the participants follow the instructions? (i.e. are the first 10 inferred to be in one group and the next 12 in the other?) - -*According to our run we infer that all the bonafides (10/10) followed the instructions, however 3/12 malingerers we're included with the bonafides! (Take a look at participants scores for 13 , 14, 21.)* - diff --git a/solutions/occams-razor.md b/solutions/occams-razor.md deleted file mode 100644 index b195ab4..0000000 --- a/solutions/occams-razor.md +++ /dev/null @@ -1,481 +0,0 @@ ---- -layout: exercise -title: Occam's razor - solutions ---- - -## Exercise 1. The Number Game - -> In a task called the [*number game*](https://web.mit.edu/cocosci/Papers/nips99preprint.ps), participants were presented with *sets* of numbers and asked how well different numbers completed them. -> A rule-based generative model accurately captured responses for some stimuli (e.g. for $$16, 8, 2, 64$$ or $$60, 80, 10, 30$$, participants assigned high fit to powers of two and multiples of ten, respectively). -> However, it failed to capture others such as the set $$16, 23, 19, 20$$. -> How good is 18, relative to 13, relative to 99? - -### Exercise 1.1 - -> Using the rule-based model of this task below, examine the posteriors for the following inputs: -> `[3]`, `[3, 9]`, `[3, 5, 9]`. -> Describe how the posterior probabilities of the rules change based on the observed sets. -> Why are they so different despite having the same priors? -> Do these results match your intuition? - -~~~~ -var maxNumber = 100; - -///fold: -var filterByInRange = function(set) { - var inRange = function(v) {v <= maxNumber && v >= 0}; - return _.uniq(filter(inRange, set)); -} - -var genEvens = function() { - return filter(function(v) {return v % 2 == 0}, _.range(1, maxNumber)); -} - -var genOdds = function() { - return filter(function(v) {return (v + 1) % 2 == 0}, _.range(1, maxNumber)); -} - -var genMultiples = function(base) { - var multiples = map(function(v) {return base * v}, _.range(maxNumber)); - return filterByInRange(multiples); -} - -var genPowers = function(base) { - var powers = map(function(v) {return Math.pow(base, v)}, _.range(maxNumber)); - return filterByInRange(powers); -} - -var inSet = function(val, set) { - return _.includes(set, val); -} - -var getSetFromHypothesis = function(rule) { - var parts = rule.split('_'); - return (parts[0] == 'multiples' ? genMultiples(_.parseInt(parts[2])) : - parts[0] == 'powers' ? genPowers(_.parseInt(parts[2])) : - parts[0] == 'evens' ? genEvens() : - parts[0] == 'odds' ? genOdds() : - console.error('unknown rule' + rule)) -}; -/// - -// Considers 4 kinds of rules: evens, odds, and multiples and powers of small numbers < 12 -var makeRuleHypothesisSpace = function() { - var multipleRules = map(function(base) {return 'multiples_of_' + base}, _.range(1, 12)); - var powerRules = map(function(base) {return 'powers_of_' + base}, _.range(1, 12)); - return multipleRules.concat(powerRules).concat(['evens', 'odds']); -} - -// Takes an unordered array of examples of a concept in the number game -// and a test query (i.e. a new number that the experimenter is asking about) -var learnConcept = function(examples, testQuery) { - Infer({method: 'enumerate'}, function() { - var rules = makeRuleHypothesisSpace() - var hypothesis = uniformDraw(rules) - var set = getSetFromHypothesis(hypothesis) - mapData({data: examples}, function(example) { - // note: this likelihood corresponds to size principle - observe(Categorical({vs: set}), example) - }) - return {hypothesis, testQueryResponse : inSet(testQuery, set)} - }); -} - -var examples = [3, 9]; -var testQuery = 12; -var posterior = learnConcept(examples, testQuery); -viz.marginals(posterior); -~~~~ - - -Although the prior over the hypotheses is uniform, the likelihood for each of the hypotheses is not. -The more "general" rules such as "odd-numbers" cover much larger spaces than "multiples of three" or "powers of three". -Therefore, in accordance with the size principle, observing a particular set of values under the hypotheses with smaller domains produces much higher posterior probabilities. - - -### Exercise 1.2 - -> Modify the model to include similarity-based hypotheses, represented as numbers generated by sampling from a common interval. -> Implement `genSetFromInterval` to generate all integers in `[a, b]`. -> Implement `makeIntervalHypothesisSpace` to build a list of all possible intervals in `[start, end]`. -> For example, `makeIntervalHypothesisSpace(1, 4)` should produce the following: - -~~~~norun -["interval_1_2", - "interval_1_3", - "interval_1_4", - "interval_2_3", - "interval_2_4", - "interval_3_4"] -~~~~ - -> Then modify `getSetFromHypothesis` to account for interval hypotheses. - -~~~~ -var maxNumber = 20; - -///fold: -var filterByInRange = function(set) { - var inRange = function(v) {v <= maxNumber && v >= 0}; - return _.uniq(filter(inRange, set)); -} - -var genEvens = function() { - return filter(function(v) {return v % 2 == 0}, _.range(1, maxNumber)); -} - -var genOdds = function() { - return filter(function(v) {return (v + 1) % 2 == 0}, _.range(1, maxNumber)); -} - -var genMultiples = function(base) { - var multiples = map(function(v) {return base * v}, _.range(maxNumber)); - return filterByInRange(multiples); -} - -var genPowers = function(base) { - var powers = map(function(v) {return Math.pow(base, v)}, _.range(maxNumber)); - return filterByInRange(powers); -} - -var inSet = function(val, set) { - return _.includes(set, val); -} - -var makeRuleHypothesisSpace = function() { - var multipleRules = map(function(base) {return 'multiples_of_' + base}, _.range(1, 12)); - var powerRules = map(function(base) {return 'powers_of_' + base}, _.range(1, 12)); - return multipleRules.concat(powerRules).concat(['evens', 'odds']); -} -/// - -var genSetFromInterval = function(a, b) { - return _.range(a, b+1); -} - -var makeIntervalHypothesisSpace = function(start, end) { - var allIntervals = _.flatten(map(function(s) { - return map(function(e) { [s, e] }, - genSetFromInterval(s+1, end)); - }, genSetFromInterval(start, end))); - - var createIntervalName = function(a, b) { 'interval_' + a + '_' + b }; - var intervalNames = map(function(x) { 'interval_' + x[0] + '_' + x[1] }, - allIntervals); - return intervalNames; -} - -var getSetFromHypothesis = function(rule) { - var parts = rule.split('_'); - return (parts[0] == 'multiples' ? genMultiples(_.parseInt(parts[2])) : - parts[0] == 'powers' ? genPowers(_.parseInt(parts[2])) : - parts[0] == 'evens' ? genEvens() : - parts[0] == 'odds' ? genOdds() : - parts[0] == 'interval' ? genSetFromInterval(_.parseInt(parts[1]), _.parseInt(parts[2])) : - console.error('unknown rule' + rule)); -}; - -var learnConcept = function(examples, testQuery) { - Infer({method: 'enumerate'}, function() { - var rules = makeRuleHypothesisSpace(); - var intervals = makeIntervalHypothesisSpace(1, maxNumber); - var hypothesis = flip(0.5) ? uniformDraw(rules) : uniformDraw(intervals); - var set = getSetFromHypothesis(hypothesis); - mapData({data: examples}, function(example) { - observe(Categorical({vs: set}), example) - }) - return {hypothesis: hypothesis, - testQueryResponse: inSet(testQuery, set)}; - }); -} - -var examples = [3, 10]; -var testQuery = 12; -var posterior = learnConcept(examples, testQuery); -viz.marginals(posterior); -~~~~ - - -### Exercise 1.3 - -> Now examine the sets `[3]`, `[3, 6, 9]`, and `[3, 5, 6, 7, 9]`. -> Sweep across all integers as testQueries to see the 'hotspots' of the model predictions. -> What do you observe? - -~~~~ -var maxNumber = 20; - -///fold: -var filterByInRange = function(set) { - var inRange = function(v) {v <= maxNumber && v >= 0}; - return _.uniq(filter(inRange, set)); -} - -var genEvens = function() { - return filter(function(v) {return v % 2 == 0}, _.range(1, maxNumber)); -} - -var genOdds = function() { - return filter(function(v) {return (v + 1) % 2 == 0}, _.range(1, maxNumber)); -} - -var genMultiples = function(base) { - var multiples = map(function(v) {return base * v}, _.range(maxNumber)); - return filterByInRange(multiples); -} - -var genPowers = function(base) { - var powers = map(function(v) {return Math.pow(base, v)}, _.range(maxNumber)); - return filterByInRange(powers); -} - -var inSet = function(val, set) { - return _.includes(set, val); -} - -var makeRuleHypothesisSpace = function() { - var multipleRules = map(function(base) {return 'multiples_of_' + base}, _.range(1, 12)); - var powerRules = map(function(base) {return 'powers_of_' + base}, _.range(1, 12)); - return multipleRules.concat(powerRules).concat(['evens', 'odds']); -} - -var genSetFromInterval = function(a, b) { - return _.range(a, b+1); -} - -var makeIntervalHypothesisSpace = function(start, end) { - var allIntervals = _.flatten(map(function(s) { - return map(function(e) { [s, e] }, - genSetFromInterval(s+1, end)); - }, genSetFromInterval(start, end))); - - var createIntervalName = function(a, b) { 'interval_' + a + '_' + b }; - var intervalNames = map(function(x) { 'interval_' + x[0] + '_' + x[1] }, - allIntervals); - return intervalNames; -} - -var getSetFromHypothesis = function(rule) { - var parts = rule.split('_'); - return (parts[0] == 'multiples' ? genMultiples(_.parseInt(parts[2])) : - parts[0] == 'powers' ? genPowers(_.parseInt(parts[2])) : - parts[0] == 'evens' ? genEvens() : - parts[0] == 'odds' ? genOdds() : - parts[0] == 'interval' ? genSetFromInterval(_.parseInt(parts[1]), _.parseInt(parts[2])) : - console.error('unknown rule' + rule)); -}; - -var learnConcept = function(examples, testQuery) { - Infer({method: 'enumerate'}, function() { - var rules = makeRuleHypothesisSpace(); - var intervals = makeIntervalHypothesisSpace(1, maxNumber); - var hypothesis = flip(0.5) ? uniformDraw(rules) : uniformDraw(intervals); - var set = getSetFromHypothesis(hypothesis); - mapData({data: examples}, function(example) { - observe(Categorical({vs: set}), example) - }) - return {hypothesis: hypothesis, - testQueryResponse: inSet(testQuery, set)}; - }); -} -/// - -var examples = [3, 6, 9]; -var queries = genSetFromInterval(1, maxNumber); -var pQueries = map(function(query) { - var post = learnConcept(examples, query); - return expectation(marginalize(post, function(x) { x.testQueryResponse })) -}, queries); -viz.line(queries, pQueries, {xLabel: 'query', yLabel: 'P(query | examples)'}); -~~~~ - -Rule-based hypotheses are more likely when the examples are `[3]` and `[3, 6, 9]`, but the hypotheses are more likely -once we have `[3, 5, 6, 7, 9]`. - -### Exercise 1.4 - -> Look at some of the data in the large-scale replication of the number game [here](https://openpsychologydata.metajnl.com/articles/10.5334/jopd.19/). ->Can you think of an additional concept people might be using that we did not include in our model? - -Answers may vary. The authors mention that a common hypothesis are rules involving "numbers [ending/starting] in 3". - -#### e) Challenge! - -Can you replicate the results from the paper (reproduced in figure below) by adding in the other hypotheses from the paper? - - - - -## Exercise 2: Causal induction revisited - -> In a [previous exercise](learning-as-conditional-inference.html) we explored the Causal Power (CP) model of causal learning. -> However, Griffiths and Tenenbaum [-@Griffiths2005], "Structure and strength in causal induction", hypothesized that when people do causal induction, they are not estimating a power parameter (as in CP) but instead they are deciding whether there is a causal relation at all -- they called this model Causal Support (CS). -> In other words, they are inferring whether C and E are related, and if so, then C must cause E. - -### Exercise 2.1 - -> Implement the Causal Support model by modifying the Causal Power model. - -~~~~ -var observedData = [{C:true, E:false}]; - -var causalPost = Infer({method: 'MCMC', samples: 10000, lag:2}, function() { - - // Is there a causal relation between C and E? - var relation = flip(); - - // Causal power of C to cause E - var cp = uniform(0, 1); - - // Background probability of E occurring regardless of C - var b = uniform(0, 1); - - mapData({data: observedData}, function(datum) { - var E = (relation && datum.C && flip(cp)) || flip(b); - condition(E == datum.E); - }) - - return {relation, cp, b}; -}) - -viz.marginals(causalPost); -~~~~ - - -### Exercise 2.2 - -> Inference with the MCMC method will not be very efficient for the above CS model because the MCMC algorithm is using the single-site Metropolis-Hastings procedure, changing only one random choice at a time. -> (To see why this is a problem, think about what happens when you try to change the choice about whether there is a causal relation.) -> -> To make this more efficient, construct the marginal probability of the effect directly and use it in an `observe` statement. -> -> *Hint:* You can do this either by figuring out the probability of the effect mathematically, or by using `Infer`. - -~~~~ -var observedData = [{C:true, E:false}]; - -var causalPost = Infer({method: 'MCMC', samples: 10000, lag:2}, function() { - - // Is there a causal relation between C and E? - var relation = flip(); - - // Causal power of C to cause E - var cp = uniform(0, 1); - - // Background probability of E occurring regardless of C - var b = uniform(0, 1); - - var noisyOrMarginal = function(C) { - return Infer({method: 'enumerate'}, function() { - return (relation && C && flip(cp)) || flip(b); - }) - } - - mapData({data: observedData}, function(datum) { - observe(noisyOrMarginal(datum.C), datum.E); - }) - - return {relation, cp, b}; -}) - -viz.marginals(causalPost); -~~~~ - - -### Exercise 2.3 - -> Fig. 1 of [-@Griffiths2005] (shown below) shows a critical difference in the predictions of CP and CS, -> specifically when the effect happens just as often with and without the cause. -> Show by running simulations the difference between CP and CS in these cases. - - - -~~~~ -var generateData = function(numEWithC, numEWithoutC) { - var eWithC = repeat(numEWithC, function() {return {C: true, E: true}}); - var noEWithC = repeat(8 - numEWithC, function() {return {C: true, E: false}}); - var eWithoutC = repeat(numEWithoutC, function() {return {C: false, E: true}}); - var noEWithoutC = repeat(8 - numEWithoutC, function() {return {C: false, E: false}}); - return _.flatten([eWithC, noEWithC, eWithoutC, noEWithoutC]); -} - -var dataParams = [[8, 8], [6, 6], [4, 4], [2, 2], [0, 0], [8, 6], - [6, 4], [4, 2], [2, 0], [8, 4], [6, 2], [4, 0], - [8, 2], [6, 0], [8, 0]]; - -var data = map(function(x) { generateData(x[0], x[1]) }, dataParams); - -var cpPost = function(observedData) { - return Infer({method: 'MCMC', burn: 2000, samples: 1000, lag:2}, function() { - var cp = uniform(0, 1); - var b = uniform(0, 1); - - var noisyOrMarginal = function(C) { - return Infer({method: 'enumerate'}, function() { - return (C && flip(cp)) || flip(b); - }) - } - - mapData({data: observedData}, function(datum) { - observe(noisyOrMarginal(datum.C), datum.E); - }) - - return cp; - }) -} - -var csPost = function(observedData) { - return Infer({method: 'MCMC', burn: 2000, samples: 1000, lag:2}, function() { - var relation = flip(); - var cp = uniform(0, 1); - var b = uniform(0, 1); - - var noisyOrMarginal = function(C) { - return Infer({method: 'enumerate'}, function() { - return (relation && C && flip(cp)) || flip(b); - }) - } - - mapData({data: observedData}, function(datum) { - observe(noisyOrMarginal(datum.C), datum.E); - }) - - return relation * cp; - }) -} - -var paramNames = map(function(x) { - var letter = (x + 10).toString(36).toUpperCase(); - var params = dataParams[x]; - return letter + '. (' + params[0] + ', ' + params[1] + ')' -}, _.range(dataParams.length)); - -var cpValues = map(function(d) { expectation(cpPost(d)) }, data); -var csValues = map(function(d) { expectation(csPost(d)) }, data); - -display("Causal power model"); -viz.bar(paramNames, cpValues); - -display("Causal support model"); -viz.bar(paramNames, csValues); -~~~~ - - -### Exercise 2.4 - -> Explain why the Causal Support model shows this effect using Bayesian Occam's razor. -> -> *Hint:* Recall that Causal Support selects between two models (one where there is a causal relation and one where there isn't). - -The 'model selection' in the Causal Support model applies Occam's razor to have a bias towards no relation. - - -## Exercise 3 (Challenge!) - -Try an informal behavioral experiment with several friends as experimental subjects to see whether the Bayesian approach to curve fitting given on the wiki page corresponds with how people actually find functional patterns in sparse noisy data. Your experiment should consist of showing each of 4-6 people 8-10 data sets (sets of x-y values, illustrated graphically as points on a plane with x and y axes), and asking them to draw a continuous function that interpolates between the data points and extrapolates at least a short distance beyond them (as far as people feel comfortable extrapolating). Explain to people that the data were produced by measuring y as some function of x, with the possibility of noise in the measurements. - -The challenge of this exercise comes in choosing the data sets you will show people, interpreting the results and thinking about how to modify or improve a probabilistic program for curve fitting to better explain what people do. Of the 8-10 data sets you use, devise several ("type A") for which you believe the WebPPL program for polynomial curve fitting will match the functions people draw, at least qualitatively. Come up with several other data sets ("type B") for which you expect people to draw qualitatively different functions than the WebPPL polynomial fitting program does. Does your experiment bear out your guesses about type A and type B? If yes, why do you think people found different functions to best explain the type B data sets? If not, why did you think they would? There are a number of factors to consider, but two important ones are the noise model you use, and the choice of basis functions: not all functions that people can learn or that describe natural processes in the world can be well described in terms of polynomials; other types of functions may need to be considered. - -Can you modify the WebPPL program to fit curves of qualitatively different forms besides polynomials, but of roughly equal complexity in terms of numbers of free parameters? Even if you can't get inference to work well for these cases, show some samples from the generative model that suggest how the program might capture classes of human-learnable functions other than polynomials. - -You should hand in the data sets you used for the informal experiment, discussion of the experimental results, and a modified WebPPL program for fitting qualitatively different forms from polynomials plus samples from running the program forward. diff --git a/solutions/process-models.md b/solutions/process-models.md deleted file mode 100644 index ebe8d41..0000000 --- a/solutions/process-models.md +++ /dev/null @@ -1,344 +0,0 @@ ---- -layout: exercise -title: Rational process models - solutions ---- - -> Consider once again the simple blicket detector experiment from the Conditional Dependence chapter and Bayesian Data Analysis exercises. -> Here, we have simplified the model such that the only free parameter is the base rate of being a blicket and the participant only sees one data point of evidence at a time (i.e. one set of blocks that makes the machine beep). -> -> In this exercise, you will extend the model from the Bayesian Data Analysis exercises to evaluate different process models on new data sets. -> -> Specifically, imagine we went to Mars to study the cognition of the aliens that live there, and in addition to collecting judgements about whether `A` was a blicket, we also collected response times (RTs) to get a better resolution into their cognitive processes. -> Response time is measured in behavioral experiments by calculating the time elapsed between presentation of the stimulus and the participant's response. -> Assume that the participants make inferences about the base rate by sampling a certain number of times. -> If they take many samples, their responses will be more accurate but at the cost of longer RTs. -> If they take few samples, their responses may be noisier but have shorter RTs. -> -> For simplicity, assume that the RT measures are in the same units as returned by `timeIt()` (milliseconds). - - -## Exercise 1 - -> Complete the code to infer the posterior distributions of the base rate and that the model is conditioned on both the participants' responses and response times. - -> HINT: The `observe()` function requires a distribution as its first parameter. - -~~~ -///fold: -var timeIt = function(func) { - var start = _.now(); - func(); - var end = _.now(); - return end - start; -} - -var detectingBlickets = function(evidence, baseRate, numSamples) { - return Infer({method: 'rejection', samples: numSamples}, function() { - var blicket = mem(function(block) { flip(baseRate) }); - var power = function(block) { blicket(block) ? .95 : .05 }; - var machineBeeps = function(blocks) { - blocks.length == 0 - ? flip(0.05) - : flip(power(first(blocks))) || machineBeeps(rest(blocks)) - }; - condition(machineBeeps(evidence)); - return blicket('A'); - }) -} - -var marsData = [ - {subjectID: 1, evidence: ['A'], response: true, RT: .9}, - {subjectID: 1, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: true, RT: 1.1}, - {subjectID: 1, evidence: ['A', 'B', 'C'], response: true, RT: 1.2}, - {subjectID: 2, evidence: ['A'], response: true, RT: 3.5}, - {subjectID: 2, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: false, RT: 4}, - {subjectID: 2, evidence: ['A', 'B', 'C'], response: true, RT: 3.4}, -]; -/// - -var getModelRT = function(func, numRepeats) { - var rt = repeat(numRepeats, function() { timeIt(func) }); - return Gaussian({mu: listMean(rt), sigma: Math.max(listVar(rt), 1)}); -} - -var dataAnalysis = function() { - var baseRate = uniform(0, 1); - var numSamples = randomInteger(100) + 1; - - map(function(datapoint) { - var blicketModel = function() { - return detectingBlickets(datapoint.evidence, baseRate, numSamples) - }; - - observe(blicketModel(), datapoint.response); - observe(getModelRT(blicketModel, 10), datapoint.RT); - }, marsData); - - return {baseRate, numSamples}; -} - -var opts = {method: 'MCMC', - callbacks: [editor.MCMCProgress()], - samples: 500, - burn: 100}; -viz.marginals(Infer(opts, dataAnalysis)); -~~~ - - -## Exercise 2 - -> How do your inferences about the base rates change with the following modifications? -> -> 1. Only `observe()` on `response`. -> 2. Only `observe()` on `RT`. -> -> What does this say about the information provided about the base rate from each source? - -Looking at just the responses, we see that the `base rate` is relatively high. -This is because 5 of the 6 responses were `true`. -Looking at just the `RT`, we now see that the `base rate` is much lower. -This is because slow `RT` means that more proposals were rejected which suggests a low `base rate`. - - -## Exercise 3 - -> Note that there is some subject variability in RT. -> Modify your model to allow the two subjects to have different base rates in mind. -> Visualize the base rates for each participant. -> -> What do you notice about the base rates? -> What makes their base rates so different? - - -~~~ -///fold: -var timeIt = function(func) { - var start = _.now(); - func(); - var end = _.now(); - return end - start; -} - -var detectingBlickets = function(evidence, baseRate, numSamples) { - return Infer({method: 'rejection', samples: numSamples}, function() { - var blicket = mem(function(block) { flip(baseRate) }); - var power = function(block) { blicket(block) ? .95 : .05 }; - var machineBeeps = function(blocks) { - blocks.length == 0 - ? flip(0.05) - : flip(power(first(blocks))) || machineBeeps(rest(blocks)) - }; - condition(machineBeeps(evidence)); - return blicket('A'); - }) -} - -var marsData = [ - {subjectID: 1, evidence: ['A'], response: true, RT: .9}, - {subjectID: 1, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: true, RT: 1.1}, - {subjectID: 1, evidence: ['A', 'B', 'C'], response: true, RT: 1.2}, - {subjectID: 2, evidence: ['A'], response: true, RT: 3.5}, - {subjectID: 2, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: false, RT: 4}, - {subjectID: 2, evidence: ['A', 'B', 'C'], response: true, RT: 3.4}, -]; - -var getModelRT = function(func, numRepeats) { - var rt = repeat(numRepeats, function() { timeIt(func) }); - return Gaussian({mu: listMean(rt), sigma: Math.max(listVar(rt), 1)}); -} -/// - -var dataAnalysis = function() { - var baseRate = mem(function(subjectID) { uniform(0, 1) }); - var numSamples = randomInteger(100) + 1; - - map(function(datapoint) { - var blicketModel = function() { - return detectingBlickets(datapoint.evidence, baseRate(datapoint.subjectID), numSamples) - }; - - observe(blicketModel(), datapoint.response); - observe(getModelRT(blicketModel, 10), datapoint.RT); - }, marsData); - - return {subject1: baseRate(1), - subject2: baseRate(2), - numSamples: numSamples}; -} - -var opts = {method: 'MCMC', - callbacks: [editor.MCMCProgress()], - samples: 500, - burn: 100}; -viz.marginals(Infer(opts, dataAnalysis)); -~~~ - -Looking at the responses, we see that Subject 1 responds `true` to trial 2 whereas Subject 2 responds `false`. -This suggests that Subject 1 has a very high prior believing that a block is a Blicket since there are 6 blocks that could have set the machine off. -Looking at the response times (RT), we see that Subject 1 was very quick to respond while Subject 2 took much longer. -Since we assumed that they both used rejection sampling, Subject 2 most likely had far more rejections which also indicates a low prior. - - -## Exercise 4 - -> Suppose we went to survey another group of aliens on Venus and collected another data set. -> Run this same BDA on these subjects. -> How do the Venusians compare to the Martians? - -~~~ -///fold: -var timeIt = function(func) { - var start = _.now(); - func(); - var end = _.now(); - return end - start; -} - -var detectingBlickets = function(evidence, baseRate, numSamples) { - return Infer({method: 'rejection', samples: numSamples}, function() { - var blicket = mem(function(block) { flip(baseRate) }); - var power = function(block) { blicket(block) ? .95 : .05 }; - var machineBeeps = function(blocks) { - blocks.length == 0 - ? flip(0.05) - : flip(power(first(blocks))) || machineBeeps(rest(blocks)) - }; - condition(machineBeeps(evidence)); - return blicket('A'); - }) -} - -var venusData = [ - {subjectID: 1, evidence: ['A'], response: true, RT: .9}, - {subjectID: 1, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: true, RT: 4}, - {subjectID: 1, evidence: ['A', 'B', 'C'], response: true, RT: 2}, - {subjectID: 2, evidence: ['A'], response: true, RT: 1.5}, - {subjectID: 2, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: false, RT: 5}, - {subjectID: 2, evidence: ['A', 'B', 'C'], response: true, RT: 2.2}, -]; - -var getModelRT = function(func, numRepeats) { - var rt = repeat(numRepeats, function() { timeIt(func) }); - return Gaussian({mu: listMean(rt), sigma: Math.max(listVar(rt), 1)}); -} -/// - -var dataAnalysis = function() { - var baseRate = mem(function(subjectID) { uniform(0, 1) }); - var numSamples = randomInteger(100) + 1; - - map(function(datapoint) { - var blicketModel = function() { - return detectingBlickets(datapoint.evidence, baseRate(datapoint.subjectID), numSamples) - }; - - observe(blicketModel(), datapoint.response); - observe(getModelRT(blicketModel, 10), datapoint.RT); - }, venusData); - - return {subject1: baseRate(1), - subject2: baseRate(2), - numSamples: numSamples}; -} - -var opts = {method: 'MCMC', - callbacks: [editor.MCMCProgress()], - samples: 500, - burn: 100}; -viz.marginals(Infer(opts, dataAnalysis)); -~~~ - -The trends are fairly similar. - - -## Exercise 5 - -> Suppose you want to compare the hypotheses that the aliens use rejection sampling versus enumeration to estimate probabilities. -> Modify your code to infer the posterior probabilities of each method for each planet. -> Which algorithm is each kind of alien most likely to be using? - -> Hint: Make `method` a random variable. - - -~~~ -///fold: -var timeIt = function(func) { - var start = _.now(); - func(); - var end = _.now(); - return end - start; -} - -var detectingBlickets = function(evidence, baseRate, algorithm, numSamples) { - return Infer({method: algorithm, samples: numSamples}, function() { - var blicket = mem(function(block) { flip(baseRate) }); - var power = function(block) { blicket(block) ? .95 : .05 }; - var machineBeeps = function(blocks) { - blocks.length == 0 - ? flip(0.05) - : flip(power(first(blocks))) || machineBeeps(rest(blocks)) - }; - condition(machineBeeps(evidence)); - return blicket('A'); - }) -} - -var data = [ - {planet: 'Mars', subjectID: 1, evidence: ['A'], response: true, RT: .9}, - {planet: 'Mars', subjectID: 1, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: true, RT: 1.1}, - {planet: 'Mars', subjectID: 1, evidence: ['A', 'B', 'C'], response: true, RT: 1.2}, - {planet: 'Mars', subjectID: 2, evidence: ['A'], response: true, RT: 3.5}, - {planet: 'Mars', subjectID: 2, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: false, RT: 4}, - {planet: 'Mars', subjectID: 2, evidence: ['A', 'B', 'C'], response: true, RT: 3.4}, - {planet: 'Venus', subjectID: 3, evidence: ['A'], response: true, RT: .9}, - {planet: 'Venus', subjectID: 3, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: true, RT: 4}, - {planet: 'Venus', subjectID: 3, evidence: ['A', 'B', 'C'], response: true, RT: 2}, - {planet: 'Venus', subjectID: 4, evidence: ['A'], response: true, RT: 1.5}, - {planet: 'Venus', subjectID: 4, evidence: ['A', 'B', 'C', 'D', 'E', 'F'], response: false, RT: 5}, - {planet: 'Venus', subjectID: 4, evidence: ['A', 'B', 'C'], response: true, RT: 2.2}, -]; - - -var getModelRT = function(func, numRepeats) { - var rt = repeat(numRepeats, function() { timeIt(func) }); - return Gaussian({mu: listMean(rt), sigma: Math.max(listVar(rt), 1)}); -} -/// - -var dataAnalysis = function() { - var baseRate = mem(function(subjectID) { uniform(0, 1) }); - var algorithm = mem(function(planet) { flip() ? 'rejection' : 'enumerate' }); - var numSamples = randomInteger(100) + 1; - - map(function(datapoint) { - var blicketModel = function() { - return detectingBlickets(datapoint.evidence, - baseRate(datapoint.subjectID), - algorithm(datapoint.planet), - numSamples) - }; - - observe(blicketModel(), datapoint.response); - observe(getModelRT(blicketModel, 10), datapoint.RT); - }, data); - - return {algVenus: algorithm('Venus'), - algMars: algorithm('Mars')}; -} - -var opts = {method: 'MCMC', - callbacks: [editor.MCMCProgress()], - samples: 500, - burn: 100}; -viz.marginals(Infer(opts, dataAnalysis)); -~~~ - - -## Exercise 6 - -> Do you think any of these algorithms are good descriptions of how people intuitively do the Blicket task? -> Explain what aspects of the inference may or may not be analogous to what people do. - -Answers may vary. Some possible observations are -1. Full enumeration seems unlikely when many blocks are involved since people would have to calculate probability estimates for an exponential number of quantities. -2. Rejection sampling would be difficult when most of the proposed samples are rejected. \ No newline at end of file diff --git a/solutions/social-cognition.md b/solutions/social-cognition.md deleted file mode 100644 index 0dcf015..0000000 --- a/solutions/social-cognition.md +++ /dev/null @@ -1,488 +0,0 @@ ---- -layout: exercise -title: Inference about inference - exercises ---- - -## Exercise 1: Tricky Agents - -> What would happen if Sally knew you were watching her and wanted to deceive you? - -### Exercise 1.1 - -> Complete the code below so that `chooseAction` chooses a misdirection if Sally is deceptive. -> Then describe and show what happens if you knew Sally was deceptive and chose action "b". - -~~~~ -var actionPrior = Categorical({vs: ['a', 'b', 'c'], - ps: [1/3, 1/3, 1/3]}); -var foodPrior = Categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [1/3, 1/3, 1/3]}); - -var vendingMachine = function(state, action) { - return action == 'a' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [.8, .1, .1]}) : - action == 'b' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [.1, .8, .1]}) : - action == 'c' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [.1, .1, .8]}) : - 'nothing'; -} - -var chooseAction = function(goal, transition, state, deceive) { - return Infer({method: 'enumerate'}, function() { - var action = sample(actionPrior); - var outcome = transition(state, action); - condition(deceive ? !goal(outcome) : goal(outcome)); - return action; - }) -}; - -var goalPosterior = Infer({method: 'enumerate'}, function() { - var deceive = flip(); - var goalFood = sample(foodPrior); - var goal = function(outcome) {return outcome == goalFood}; - var sallyActionDist = chooseAction(goal, vendingMachine, 'state', deceive); - condition(deceive); - condition(sample(sallyActionDist) == 'b'); - return goalFood; -}); - -viz.auto(goalPosterior); -~~~~ - -Results: The probabilities that Sally wants a bagel or doughnut (p=0.45 for both) are much larger than -the probability she wants a cookie (p=0.1). - -### Exercise 1.2 - -> You observe that Sally chooses `a`, and then `b`. -How likely is it that she is deceptive? -What if you instead observed that she chose `b` and then `b` again? -Explain how deceptiveness and preferences interact to produce her actions. - -~~~~ -///fold: -var actionPrior = Categorical({vs: ['a', 'b', 'c'], - ps: [1/3, 1/3, 1/3]}); -var foodPrior = Categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [1/3, 1/3, 1/3]}); - -var vendingMachine = function(state, action) { - return action == 'a' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [.8, .1, .1]}) : - action == 'b' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [.1, .8, .1]}) : - action == 'c' ? categorical({vs: ['bagel', 'cookie', 'doughnut'], - ps: [.1, .1, .8]}) : - 'nothing'; -} - -var chooseAction = function(goal, transition, state, deceive) { - return Infer({method: 'enumerate'}, function() { - var action = sample(actionPrior); - var outcome = transition(state, action); - condition(deceive ? !goal(outcome) : goal(outcome)); - return action; - }) -}; -/// - -var goalPosterior = Infer({method: 'enumerate'}, function() { - var deceive = flip(); - var goalFood = sample(foodPrior); - var goal = function(outcome) {return outcome == goalFood}; - var sallyActionDist = chooseAction(goal, vendingMachine, 'state', deceive); - - // condition(sample(sallyActionDist) == 'a'); // case 1 - condition(sample(sallyActionDist) == 'b'); // case 2 - condition(sample(sallyActionDist) == 'b'); - return goalFood; -}); - -viz.auto(goalPosterior); - -var possibleActions = Infer({method: 'enumerate'}, function() { - var deceive = flip(); - var goalFood = sample(foodPrior); - var goal = function(outcome) {return outcome == goalFood}; - var sallyActionDist = chooseAction(goal, vendingMachine, 'state', deceive); - - condition(deceive); - var outcome1 = sample(sallyActionDist); - var outcome2 = sample(sallyActionDist); - return {o1: outcome1, o2: outcome2}; -}); - -viz.auto(possibleActions); -~~~~ - -When Sally chooses `a` and `b`, it's unlikely that she wanted a bagel or a cookie since she would have then selected -`a` twice or `b` twice. -However, if she really wanted a doughnut and deceptive, it makes sense that she would avoid `c` both times. -When Sally chooses `b` twice, the scenario where she's honest is much more consistent with the outcome. -In the second visualization above, we can see that if Sally is deceptive, the probability of any two actions is -relatively uniform. However, if we set `condition(!deceive)` instead, we see much higher peaks for pairs of the same -actions. - - -## Exercise 2: Monty Hall. - -> Here, we will use the tools of Bayesian inference to explore a classic statistical puzzle -- the Monty Hall problem. -Here is one statement of the problem: -> ->> Alice is on a game show, and she's given the choice of three doors. ->> Behind one door is a car; behind the others, goats. ->> She picks door 1. The host, ->> Monty, knows what's behind the doors and opens another door, say No. 3, revealing a goat. ->> He then asks Alice if she wants to switch doors. ->> Should she switch? -> -> Intuitively, it may seem like switching doesn't matter. -> However, the canonical solution is that you *should* switch doors. -> We will explore why this is the case. -> -> For this problem, we will assume (condition) that we observe Monty opening the door that -> is neither Alice's door nor the prize door. - -### Exercise 2.1 - -> The decision to switch depends crucially on how you believe Monty chooses doors to pick. -First, write the model such that the host *randomly* picks doors (for this, fill in `montyRandom`). -In this setting, should Alice switch, or does it not matter? - -~~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1, 2, 3]; -/// - -var montyRandom = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return categorical({vs: doors}); - }) -}; - -var model = function(switches) { - var aliceDoor = categorical({vs: doors}); - var prizeDoor = categorical({vs: doors}); - - var montyDoorDist = montyRandom(aliceDoor, prizeDoor); - var montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - - var aliceDoor = switches ? removeBadItems(doors, [aliceDoor, montyDoor])[0] : aliceDoor; - - return aliceDoor == prizeDoor; -} - -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); -~~~~ - -In this case, it doesn't matter whether Alice switches. -*A priori*, all doors are equally likely to be the prize door. -Monty has eliminated one of the non-prize doors, -but there's no reason to favor either of the other two. - -### Exercise 2.2 - -> This time, fill in the code so that Monty behaves according to the original Monty Hall problem, -i.e. picking the door that is neither the prize door nor Alice's door. -For both-avoiding Monty, you'll find that Alice *should* switch. - -~~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1, 2, 3]; -/// - -var montyAvoidBoth = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - var montyDoor = categorical({vs: doors}); - condition(montyDoor != aliceDoor); - condition(montyDoor != prizeDoor); - return montyDoor; - }) -}; - -var model = function(switches) { - var aliceDoor = categorical({vs: doors}); - var prizeDoor = categorical({vs: doors}); - - var montyDoorDist = montyAvoidBoth(aliceDoor, prizeDoor); - var montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - var aliceDoor = switches ? removeBadItems(doors, [aliceDoor, montyDoor])[0] : aliceDoor; - - return aliceDoor == prizeDoor; -} - -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); -~~~~ - -By running the model, we see that switching doors allows Alice to find the car 2/3 of the time. - -### Exercise 2.3 - -> This is unintuitive -- we know that Monty picked door 3, so why should the process he used to arrive at this choice matter? -By hand, complete the probability table for P(Alice, Prize, Monty) under both `montyRandom` and `montyAvoidBoth`. -Your tables should look like: - -> Alice's door| Prize door| Monty's Door| P(Alice, Prize, Monty) --------------| -----------| -------------| ----------------------- -1| 1| 1| ... -1| 1| 2| ... -...| ...| ...| ... - -> Using these tables, explain why Alice should switch for both-avoiding Monty but why switching doesn't matter for random Monty. -Hint: you will want to compare particular *rows* of these tables. - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 1 | 0.037 | -| 1 | 1 | 2 | 0.037 | -| 1 | 1 | 3 | 0.037 | -| 1 | 2 | 1 | 0.037 | -| 1 | 2 | 2 | 0.037 | -| 1 | 2 | 3 | 0.037 | -| 1 | 3 | 1 | 0.037 | -| 1 | 3 | 2 | 0.037 | -| 1 | 3 | 3 | 0.037 | -| 2 | 1 | 1 | 0.037 | -| 2 | 1 | 2 | 0.037 | -| 2 | 1 | 3 | 0.037 | -| 2 | 2 | 1 | 0.037 | -| 2 | 2 | 2 | 0.037 | -| 2 | 2 | 3 | 0.037 | -| 2 | 3 | 1 | 0.037 | -| 2 | 3 | 2 | 0.037 | -| 2 | 3 | 3 | 0.037 | -| 3 | 1 | 1 | 0.037 | -| 3 | 1 | 2 | 0.037 | -| 3 | 1 | 3 | 0.037 | -| 3 | 2 | 1 | 0.037 | -| 3 | 2 | 2 | 0.037 | -| 3 | 2 | 3 | 0.037 | -| 3 | 3 | 1 | 0.037 | -| 3 | 3 | 2 | 0.037 | -| 3 | 3 | 3 | 0.037 | - -If we condition on Alice choosing Door 1, Monty choosing Door 3, and Door 3 not being the prize, -there are only two remaining possibilities: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 3 | 0.037 | -| 1 | 2 | 3 | 0.037 | - -These are equally likely in the prior and thus equally likely in the posterior. - -Under `montyAvoidBoth`: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 1 | 0 | -| 1 | 1 | 2 | 0.06 | -| 1 | 1 | 3 | 0.06 | -| 1 | 2 | 1 | 0 | -| 1 | 2 | 2 | 0 | -| 1 | 2 | 3 | 0.11 | -| 1 | 3 | 1 | 0 | -| 1 | 3 | 2 | 0.11 | -| 1 | 3 | 3 | 0 | -| 2 | 1 | 1 | 0 | -| 2 | 1 | 2 | 0 | -| 2 | 1 | 3 | 0.11 | -| 2 | 2 | 1 | 0.06 | -| 2 | 2 | 2 | 0 | -| 2 | 2 | 3 | 0.06 | -| 2 | 3 | 1 | 0.11 | -| 2 | 3 | 2 | 0 | -| 2 | 3 | 3 | 0 | -| 3 | 1 | 1 | 0 | -| 3 | 1 | 2 | 0.11 | -| 3 | 1 | 3 | 0 | -| 3 | 2 | 1 | 0.11 | -| 3 | 2 | 2 | 0 | -| 3 | 2 | 3 | 0 | -| 3 | 3 | 1 | 0.06 | -| 3 | 3 | 2 | 0.06 | -| 3 | 3 | 3 | 0 | - -Again, conditioning leaves only the two possibilities: - -| Alice's Door | Prize Door | Monty's Door | P(Alice, Prize, Monty) | -|--------------|------------|--------------|------------------------| -| 1 | 1 | 3 | 0.06 | -| 1 | 2 | 3 | 0.11 | - -Thus, in the posterior, the possibility where Door 2 is the prize door is twice as likely as the possibility where Door 1 is the prize door. -Alice should switch. - -Via code: - -~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1, 2, 3]; -/// - -var montyRandom = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return categorical({vs: doors}); - }) -}; - -var montyAvoidBoth = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - return categorical({vs: removeBadItems(doors, [aliceDoor, prizeDoor])}); - }) -}; - -var model = function(montyFunction) { - var aliceDoor = categorical({vs: doors}); - var prizeDoor = categorical({vs: doors}); - - var montyDoorDist = montyFunction(aliceDoor, prizeDoor); - var montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - return {alice: aliceDoor, prize: prizeDoor, monty: montyDoor}; -} - -display("Using montyRandom") -viz.table(Infer({method: 'enumerate'}, function() { model(montyRandom) })); - -display("Using montyAvoidBoth") -viz.table(Infer({method: 'enumerate'}, function() { model(montyAvoidBoth) })); -~~~ - - -### Exercise 2.4 - -> This time, fill in the code so that Monty randomly chooses between the two doors that aren't Alice's door. -> What should Alice do now? - -~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1, 2, 3]; -/// - -var montyAvoidAlice = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - var montyDoor = categorical({vs: doors}); - condition(montyDoor != aliceDoor); - return montyDoor; - }) -}; - -var model = function(switches) { - var aliceDoor = categorical({vs: doors}); - var prizeDoor = categorical({vs: doors}); - - var montyDoorDist = montyAvoidAlice(aliceDoor, prizeDoor); - var montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - var aliceDoor = switches ? removeBadItems(doors, [aliceDoor, montyDoor])[0] : aliceDoor; - - condition(montyDoor != prizeDoor); - return aliceDoor == prizeDoor; -} - -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); -~~~ - -If Monty's policy is to open a door that Alice didn't choose, but we observe -that his door isn't the prize door, it doesn't matter whether she switches or not. - - -### Exercise 2.5 - -> This time, fill in the code so that Monty randomly chooses between the two doors that aren't the prize door. -> What should Alice do now? - -~~~ -///fold: -var removeBadItems = function(l, badItems) { - return reduce(function(badItem, remainingL) { - return remove(badItem, remainingL) - }, l, badItems); -} - -var doors = [1, 2, 3]; -/// - -var montyAvoidPrize = function(aliceDoor, prizeDoor) { - return Infer({method: 'enumerate'}, function() { - var montyDoor = categorical({vs: doors}); - condition(montyDoor != prizeDoor); - return montyDoor; - }) -}; - -var model = function(switches) { - var aliceDoor = categorical({vs: doors}); - var prizeDoor = categorical({vs: doors}); - - var montyDoorDist = montyAvoidPrize(aliceDoor, prizeDoor); - var montyDoor = sample(montyDoorDist); - condition(montyDoor != prizeDoor); - condition(montyDoor != aliceDoor); - var aliceDoor = switches ? removeBadItems(doors, [aliceDoor, montyDoor])[0] : aliceDoor; - - return aliceDoor == prizeDoor; -} - -display("P(win) if Alice doesn't switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(false)})); -display("P(win) if Alice does switch"); -viz.auto(Infer({method: 'enumerate'}, function() {model(true)})); -~~~ - -If Monty's policy is to open a door that isn't the prize door, but we observe -that his door isn't Alice's door, it doesn't matter whether she switches or not. - - -### Exercise 2.6 - -> The psychological question is why do people have the initial intuition that switching shouldn’t matter? -> Given your explorations, propose a hypothesis. -> Can you think of an experiment that would test this hypothesis? - -[Note: There’s no right answer to this, so answers may vary.] - -One model might be that people believe that Monty is trying to avoid the prize door, -or believe that he actually acts randomly. -Either possibility would lead to the prediction that Alice should be indifferent to switching. From 362943b30c6aaae7bec2ee4afde48caafb136b06 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Wed, 15 Feb 2023 22:44:15 -0500 Subject: [PATCH 28/47] Fixed some misspellings --- readings/inference-algorithms.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/readings/inference-algorithms.md b/readings/inference-algorithms.md index 15198b5..de2c1ee 100755 --- a/readings/inference-algorithms.md +++ b/readings/inference-algorithms.md @@ -10,7 +10,7 @@ Read "[Evolution in mind: Evolutionary dynamics, cognitive processes, and Bayesi #### Reading questions: -a) Suchow and colleagues suggest partical filters are a useful way of thinking about maintenance in working memory, that in fact partical filters are simply a good engineering design for working memory. Why would rejection sampling not work? What about Metropolis-Hastings? +a) Suchow and colleagues suggest particle filters are a useful way of thinking about maintenance in working memory, that in fact particle filters are simply a good engineering design for working memory. Why would rejection sampling not work? What about Metropolis-Hastings? ChatGPT actually makes some useful points about the three sampling methods, but doesn't really tie the argument together. Still, you might find it a useful place to start: @@ -24,7 +24,7 @@ ChatGPT actually makes some useful points about the three sampling methods, but PS ChatGPT really did misspell "Suchow". It is not entirely clear what to make of that. -b) Suchow and colleagues suggest that Metropolis-Hastings may be a useful way of thinking about creativity, that in fact Metropolis-Hastings may be a useful way of *instantiating* creativity. Why would it work better than rejections sampling? Than partical filters? +b) Suchow and colleagues suggest that Metropolis-Hastings may be a useful way of thinking about creativity, that in fact Metropolis-Hastings may be a useful way of *instantiating* creativity. Why would it work better than rejections sampling? Than particle filters? ChatGPT's answer was pretty similar in form to the one for (a), so it is not copied here. From ace730fb32fc68815f3f0e208b8966c950bc1ab5 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Thu, 16 Feb 2023 10:07:56 -0500 Subject: [PATCH 29/47] Fixed unbalanced brackets in social cognition --- chapters/social-cognition.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chapters/social-cognition.md b/chapters/social-cognition.md index 3756b3f..2e1a102 100755 --- a/chapters/social-cognition.md +++ b/chapters/social-cognition.md @@ -834,7 +834,7 @@ var sentencePrior = Categorical({vs: ["all", "some", "none"], var alpha = 1 var speaker = function(state, depth) { - return Infer({function() { + return Infer(function() { var words = sample(sentencePrior) factor(alpha*listener(words, depth).score(state)) return words @@ -842,7 +842,7 @@ var speaker = function(state, depth) { }; var listener = function(words, depth) { - return Infer({function() { + return Infer(function() { var state = sample(statePrior); var wordsMeaning = meaning(words) condition(depth == 0 ? wordsMeaning(state) : From 91c270b84cbd7bcf295654f9b9f849bc306fac58 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Fri, 17 Feb 2023 13:56:45 -0500 Subject: [PATCH 30/47] Added more links to DIPPL textbook in the 'extra readings' sections. --- readings/conditioning.md | 2 +- readings/generative-models.md | 4 +++- readings/inference-algorithms.md | 6 ++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/readings/conditioning.md b/readings/conditioning.md index 1dccf8c..9b7cdde 100755 --- a/readings/conditioning.md +++ b/readings/conditioning.md @@ -19,4 +19,4 @@ b) At which of Marr's levels does Theory Theory operate? * **Bayesian Inference**. For those finding the notion of conditioning confusing, [this video](https://www.youtube.com/watch?v=5NMxiOGL39M) may be helpful. -* **ProbLang.org: Introduction to WebPPL**. For those still struggling with WebPPL, [this overview](http://www.problang.org/chapters/app-06-intro-to-webppl.html) provides a complementary look at the structure of WebPPL programs. \ No newline at end of file +* **ProbLang.org: Introduction to WebPPL**. For those still struggling with WebPPL, [this overview](http://www.problang.org/chapters/app-06-intro-to-webppl.html) provides a complementary look at the structure of WebPPL programs. Chapters 1-3 are probably the most useful. \ No newline at end of file diff --git a/readings/generative-models.md b/readings/generative-models.md index 196a042..85a4f33 100755 --- a/readings/generative-models.md +++ b/readings/generative-models.md @@ -17,4 +17,6 @@ a) How do Bayesian computational models differ from other kinds of reasoning sys * **Javascript**. Experienced programmers who need an introduction to Javascript may find the [appendix on Javascript](13-appendix-js-basics.html) sufficient. Students who have limited experience programming are encouraged to check out [*Introduction to JavaScript*](https://www.codecademy.com/learn/introduction-to-javascript) from Codeacademy (esp. Chapters 1-8). -* **Background in Mathematics**. This textbook requires a basic understanding of probability theory. The Khan Academy has a [gentle introduction](https://www.khanacademy.org/math/statistics-probability/probability-library) that should be sufficient for most students. \ No newline at end of file +* **Background in Mathematics**. This textbook requires a basic understanding of probability theory. The Khan Academy has a [gentle introduction](https://www.khanacademy.org/math/statistics-probability/probability-library) that should be sufficient for most students. + +* **More WebPPL**. There is also a textbook for WebPPL itself: [The Design and Impliementation of Probabilistic Programming Languages](http://dippl.org/). If you are struggling with WebPPL, the first three chapters may be helpful. \ No newline at end of file diff --git a/readings/inference-algorithms.md b/readings/inference-algorithms.md index de2c1ee..25e77d9 100755 --- a/readings/inference-algorithms.md +++ b/readings/inference-algorithms.md @@ -44,6 +44,8 @@ b) What are the major differences between Gibbs sampling and Metropolis-Hastings * **[Empmirical evidence for Markov Chain Monte Carlo in Memory Search](https://escholarship.org/content/qt72r6n6cn/qt72r6n6cn.pdf)** A short paper describing a model closely related to the memory model discussed by Suchow and colleagues. Although it's short, it goes into the math in a bit more detail, which may be helpful. ### Extra math -* **Algorithms for Inference** For a somewhat longer, mathier disucssion of MCMC algorithms, see @andrieu2003introduction. +* **Algorithms for Inference** For a somewhat longer, mathier discussion of MCMC algorithms, see @andrieu2003introduction. -* **[Gibbs sampling for the uninitiated](http://users.umiacs.umd.edu/~resnik/pubs/LAMP-TR-153.pdf)** Gibbs sampling is not really covered in this chapter, but it is important. Readers who want to know more can consult this text. \ No newline at end of file +* **[Gibbs sampling for the uninitiated](http://users.umiacs.umd.edu/~resnik/pubs/LAMP-TR-153.pdf)** Gibbs sampling is not really covered in this chapter, but it is important. Readers who want to know more can consult this text. + +* **More WebPPL**. The WebPPL textbook [this overview](http://www.problang.org/chapters/app-06-intro-to-webppl.html) has chapters on [Particle Filtering](http://dippl.org/chapters/05-particlefilter.html) as well as [Markov Chain Monte Carlo](http://dippl.org/chapters/06-mcmc.html) (MCMC). \ No newline at end of file From c2b9d00156224aca7f17d2ef885078c65e61772e Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Sun, 19 Feb 2023 15:37:03 -0500 Subject: [PATCH 31/47] Updating description of 'rational process models' chapter in preparation to expand to a broader discussion of rationality. --- chapters/process-models.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapters/process-models.md b/chapters/process-models.md index cebe2d3..9159927 100644 --- a/chapters/process-models.md +++ b/chapters/process-models.md @@ -1,7 +1,7 @@ --- layout: chapter title: Rational process models -description: The psychological reality of inference algorithms. +description: Inference in the real world. chapter_num: 8 custom_js: - assets/js/box2d.js From 86cfc8753c4419d7b8599ce69e72dac7ec4638ee Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Sun, 19 Feb 2023 17:00:05 -0500 Subject: [PATCH 32/47] Added discussion of particle filters and cross-siutational learning to chapter, but as exercise. --- chapters/process-models.md | 65 +++++++++++++++++++++++++++++++++++++ exercises/process-models.md | 18 ++++++---- 2 files changed, 77 insertions(+), 6 deletions(-) diff --git a/chapters/process-models.md b/chapters/process-models.md index 9159927..2dbe25d 100644 --- a/chapters/process-models.md +++ b/chapters/process-models.md @@ -89,6 +89,71 @@ The maximizing agent chooses the most likely outcome by examining the conditiona Vul, Goodman, Griffiths, Tenenbaum (2014) further ask how many samples a rational agent *should* use, if they are costly. This analysis explores the trade off between expected reward increase from more precise probability estimates (more samples) with resource savings from less work (fewer samples). The, somewhat surprising, result is that for a wide range of cost and reward assumptions it is optimal to decide based on only one, or a few, samples. +## Inferring human optimality from data + +In "[Rational Use of Cognitive Resources: Levels of Analysis Between the Computational and the Algorithmic](https://onlinelibrary.wiley.com/doi/pdfdirect/10.1111/tops.12142)", Griffiths, Lieder, and Goodman note that Bayesian models provide a convenient way of analyzing behavior. That is, we can ask not just whether human cognition is perfectly optimal (it probably isn't), but *how* optimal is it. + +Let's return to our cross-situational learning model from the exercises for the "Algorithms for Inference" chapter. Below, it has been refactored so that the number of particles used by human cognition is a free variable. Now, we assume that 10 subjects have all participated in the study, and all of them concluded that the word for dog is "dax". If you run the following code (**warning: it will take a few minutes**), it'll infer the number of particles is probably fairly large. + +~~~~ +var names = ["dax", "blicket", "gorper", "greeble", "freeble"] + +var objName = mem(function(obj) { + sample(Categorical({vs: names, ps: [.2, .2, .2, .2, .2]})) +}) + +var nameOne = function(obj1, obj2){ + return flip() ? objName(obj1) : objName(obj2) +} + +var clmodel = function() { + var dog = objName("dog") + var cat = objName("cat") + factor(2*(nameOne("dog","cat") == "dax")) + var bird = objName("bird") + factor(2*(nameOne("dog","bird") == "blicket")) + var cow = objName("cow") + factor(2*(nameOne("dog","cow") == "greeble")) + var platypus = objName("platypus") + factor(2*(nameOne("dog","platypus") == "freeble")) + var ostrich = objName("platypus") + factor(2*(nameOne("dog","ostrich") == "dax")) + return objName("dog") +} + +var experiment = Infer({method: "MCMC", samples:250, lag:10}, function(){ + var npart = sample(RandomInteger({n:50}))+1 + + //5 subjects, all conclude dax=dog + var sub1 = Infer({method: "SMC", particles: npart, rejuvSteps: 10}, clmodel).MAP().val + var sub2 = Infer({method: "SMC", particles: npart, rejuvSteps: 10}, clmodel).MAP().val + var sub3 = Infer({method: "SMC", particles: npart, rejuvSteps: 10}, clmodel).MAP().val + var sub4 = Infer({method: "SMC", particles: npart, rejuvSteps: 10}, clmodel).MAP().val + var sub5 = Infer({method: "SMC", particles: npart, rejuvSteps: 10}, clmodel).MAP().val + + factor(5*(sub1 == 'dax')); + factor(5*(sub2 == 'dax')); + factor(5*(sub3 == 'dax')); + factor(5*(sub4 == 'dax')); + factor(5*(sub5 == 'dax')); + + return npart +}) + +viz(experiment) +~~~~ + +Output from one run looked like this: + +![Inferred number of particles](../assets/img/particles_1.svg) + +This seems reasonable. We know that if we are using particle filtering, accuracy goes up the more particles one has. Since all five subjects gave the right answer, that suggests a decent number of particles. + +Suppose our subjects weren't so accuracy. We can rewrite the code above so that each subject comes to a different conclusion about the word for 'dog': one subject concludes 'dax', one concludes 'greeble', one concludes 'freeble', one concludes 'blicket', and one concludes 'gorper'. In this case, we'll infer the number of particles is probably a lot smaller: + +![Inferred number of particles](../assets/img/particles_2.svg) + +Suppose we fit this model to a real dataset and found the best estimate for number of particles is 7. That would not necessarily mean that humans in fact use particle filtering with approximately 7 particles to learn vocabulary. Rather, it means that human level of accuracy can be captured by such a model. It further suggests that humans are fairly resource-limited in our ability to do cross-situational learning, since accuracy with only 7 particles is not going to be very high. (One could quantify just how limited it is by seeing how accuracy is affected by number of particles in a realistic learning scenario.) + + - # How is uncertainty represented? A signature of probabilistic ("Bayesian") cognitive models is the central role of uncertainty. Generative models, our main notion of knowledge, capture uncertain causal processes. After making observations or assumptions, Infer captures uncertain answers. At the computational level we work with this uncertainty by manipulating distribution objects, without needing to explore (much) how they are created or represented. Yet cognitively there is a key algorithmic question: how is uncertainty represented in the human mind? @@ -43,20 +39,18 @@ We have at least three very different possible answers to this question: - Explicit representation of probabilities. - Parametric representation of distribution families. - Sampling-based representations. +--> + + - one and done. + - drift diffusion? + - mcmc / anchoring. + - amortized inference. + - neural implementation. -## Approximate distribution representations + --> -Another possible representation of uncertainty is via the parameters of a family of distributions. For instance, the mean and covariance of a Gaussian is a flexible and popular (in statistics) way to approximate a complex distirbution. (Indeed, we have seen that a mean-field product of Gaussians can give quick and useful inference result from variational inference.) It is thus possible that all uncertainty is represented in the human mind as parameters of some family. A version of this idea can be seen in the *free energy* hypothesis. (See [The free-energy principle: a unified brain theory?](https://www.nature.com/articles/nrn2787), Friston (2010).) ## The sampling hypothesis @@ -89,7 +83,7 @@ The maximizing agent chooses the most likely outcome by examining the conditiona Vul, Goodman, Griffiths, Tenenbaum (2014) further ask how many samples a rational agent *should* use, if they are costly. This analysis explores the trade off between expected reward increase from more precise probability estimates (more samples) with resource savings from less work (fewer samples). The, somewhat surprising, result is that for a wide range of cost and reward assumptions it is optimal to decide based on only one, or a few, samples. -## Inferring human optimality from data +### Inferring human optimality from data In "[Rational Use of Cognitive Resources: Levels of Analysis Between the Computational and the Algorithmic](https://onlinelibrary.wiley.com/doi/pdfdirect/10.1111/tops.12142)", Griffiths, Lieder, and Goodman note that Bayesian models provide a convenient way of analyzing behavior. That is, we can ask not just whether human cognition is perfectly optimal (it probably isn't), but *how* optimal is it. @@ -155,6 +149,11 @@ Suppose our subjects weren't so accuracy. We can rewrite the code above so that Suppose we fit this model to a real dataset and found the best estimate for number of particles is 7. That would not necessarily mean that humans in fact use particle filtering with approximately 7 particles to learn vocabulary. Rather, it means that human level of accuracy can be captured by such a model. It further suggests that humans are fairly resource-limited in our ability to do cross-situational learning, since accuracy with only 7 particles is not going to be very high. (One could quantify just how limited it is by seeing how accuracy is affected by number of particles in a realistic learning scenario.) + +## Approximate distribution representations + +Another possible representation of uncertainty is via the parameters of a family of distributions. For instance, the mean and covariance of a Gaussian is a flexible and popular (in statistics) way to approximate a complex distirbution. (Indeed, we have seen that a mean-field product of Gaussians can give quick and useful inference result from variational inference.) It is thus possible that all uncertainty is represented in the human mind as parameters of some family. A version of this idea can be seen in the *free energy* hypothesis. (See [The free-energy principle: a unified brain theory?](https://www.nature.com/articles/nrn2787), Friston (2010).) + - -# Evolutionary algorithms, Bayesian inference, and the mind - -@suchow2017evolution - -## Reading questions: - -a) In what way is evolutionary dynamics like Bayesian inference? - -b) A number of different inference algorithms are discussed. What are the consequences of one of them being used for a particular process (like working memory) as opposed to another one? +## Extras +#### Extra Psychology +* Wikipedia has a brief discussion of the [conjunction fallacy](https://en.wikipedia.org/wiki/Conjunction_fallacy) +* Wikipedia also has a [reasonably complete list of commonly-discussed biases](https://en.wikipedia.org/wiki/List_of_cognitive_biases), with links to more complete discussions. +* The two papers above are part of a long-running debate in the literature about just how rational human cognition is. To get a sense of the other side in this debate, read "[How robust are probabilistic models of higher-level cognition](https://journals.sagepub.com/doi/pdf/10.1177/0956797613495418?casa_token=az-oW__aiZcAAAAA:efPp3X1NEL8Us-vsyVorN2FD3Nmh1fFby3VeTwN1CygfpYxVgkCtbK3pdHQWV5eqwh0IS5Fre9S4), Ernie Davis and Gary Marcus. \ No newline at end of file From ca2c5a5150d7a88daf189d46bdd8efbb9f0d4ca3 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Sun, 19 Feb 2023 21:17:04 -0500 Subject: [PATCH 35/47] Fully implemented one-and-done examples in the process models chapter, plus related problem in the exercises. --- chapters/process-models.md | 62 +++++++++++++++++++++++++++++++++++++ exercises/process-models.md | 18 ++++++++++- 2 files changed, 79 insertions(+), 1 deletion(-) diff --git a/chapters/process-models.md b/chapters/process-models.md index b6b58d8..9674844 100644 --- a/chapters/process-models.md +++ b/chapters/process-models.md @@ -81,8 +81,70 @@ viz(repeat(100,sampleAgent)) The maximizing agent chooses the most likely outcome by examining the conditional probability they assign to outcomes -- the result is all such agents choosing 'true'. In contrast, a population of agents that each represents their belief with a single sample will choose 'false' about 30% of the time. This behavioral signature -- *probability matching* -- is in fact a very old and well studied psychological phenomenon. (See for instance, Individual Choice Behavior: A Theoretical Analysis, Luce (1959).) +### How many samples should you take? + Vul, Goodman, Griffiths, Tenenbaum (2014) further ask how many samples a rational agent *should* use, if they are costly. This analysis explores the trade off between expected reward increase from more precise probability estimates (more samples) with resource savings from less work (fewer samples). The, somewhat surprising, result is that for a wide range of cost and reward assumptions it is optimal to decide based on only one, or a few, samples. +Let's use our favorite example: flipping a coin. Suppose this is a trick coin with known weight `w`. Our job is to correctly guess the outcome of the next flip of the coin. + +If we want to maximize, we obviously should just round: if `w >= .5` we should guess `heads`; otherwise, `tails` (although, as we just discussed, humans often probability-match rather than maximize, here we're interested in what would be optimal, so we will maximize): + +~~~~ +Infer({method: "forward", samples: 5000}, function(){ + var w = sample(Uniform({a: 0, b: 1})) //true weight + return (flip(w) == (w >= .5)) +}) +~~~~ + +We can win this bet around 75% of the time. + +However, let's assume for the moment that we can't easily calculate the optimal strategy. (For most non-trivial problems, we can't.) Instead, we sample the distribution of heads for our coin. If most of those samples come up `heads`, then we bet `heads`; otherwise, `tails': + +~~~~ +var takesamples = function(nsamples){ + var w = sample(Uniform({a: 0, b: 1})) //true weight + var samples = Infer({method: "forward", samples:nsamples}, function(){ + return flip(w) + }) + return(flip(w) == samples.MAP().val) +} + +Infer({method: "forward", samples: 1000}, function(){takesamples(1000)}) +~~~~ + +Here, we took 1,000 samples. Not surprisingly, we win our bet nearly 75\% of the time. But what happens if we only take 10 samples? + +~~~~ +var takesamples = function(nsamples){ + var w = sample(Uniform({a: 0, b: 1})) //true weight + var samples = Infer({method: "forward", samples:nsamples}, function(){ + return flip(w) + }) + return(flip(w) == samples.MAP().val) +} + +Infer({method: "forward", samples: 5000}, function(){takesamples(10)}) +~~~~ + +Impressively, we're still very close to 75%. What if we only took 1 sample? + +~~~~ +var takesamples = function(nsamples){ + var w = sample(Uniform({a: 0, b: 1})) //true weight + var samples = Infer({method: "forward", samples:nsamples}, function(){ + return flip(w) + }) + return(flip(w) == samples.MAP().val) +} + +Infer({method: "forward", samples: 5000}, function(){takesamples(1)}) +~~~~ + +We are still winning around 2/3 of the time. Obviously, if we have the computational power available and enough time to take the samples, we should take 1,000 samples and maximize our chances of winning. But if samples are costly, it may not be worth taking more than 1. + + + + ### Inferring human optimality from data In "[Rational Use of Cognitive Resources: Levels of Analysis Between the Computational and the Algorithmic](https://onlinelibrary.wiley.com/doi/pdfdirect/10.1111/tops.12142)", Griffiths, Lieder, and Goodman note that Bayesian models provide a convenient way of analyzing behavior. That is, we can ask not just whether human cognition is perfectly optimal (it probably isn't), but *how* optimal is it. diff --git a/exercises/process-models.md b/exercises/process-models.md index 93267d6..fb87b55 100644 --- a/exercises/process-models.md +++ b/exercises/process-models.md @@ -138,4 +138,20 @@ Explain what aspects of the inference may or may not be analogous to what people ## Exercise 2 -Consider the particle filter example from the chapter. Suppose you wanted to apply it to a dataset to determine how many particles humans use during vocabulary learning. Name one limitation that you would run into. \ No newline at end of file +Consider the particle filter example from the chapter. Suppose you wanted to apply it to a dataset to determine how many particles humans use during vocabulary learning. Name one limitation that you would run into. + +## Exercise 3 + +In the chapter, we investigated how many samples we should take when deciding whether to guess `heads` or `tails` for a coin of known weight. Let's consider a related problem. In this case, all we know is the weight of the coin is drawn from a uniform distribution from 0 to 1. We are allowed to flip the coin as many times as we want before guessing the outcome of the next flip. How many flips should we take? + +#### a) + +What's the best-case scenario? That is, suppose you know the actual weight of the coin. How often can you guess the next flip? + +~~~~ +// your code here +~~~~ + +#### b) + +Now figure out how often you could guess the next flip based on first flipping it 10 times. (Keep in mind that in this scenario, you can do as much inference as you want; no need to restrict samples during inference. It's the number of observations you can make about the coin that we are restricting.) \ No newline at end of file From 005822227450e0b5392bb3bdde279ba82ac7064d Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Sun, 19 Feb 2023 21:51:47 -0500 Subject: [PATCH 36/47] Added a stub about rational anchoring. No code because it's hard to specify starting points for MCMC chains in WebPPL. --- chapters/process-models.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/chapters/process-models.md b/chapters/process-models.md index 9674844..87de786 100644 --- a/chapters/process-models.md +++ b/chapters/process-models.md @@ -142,8 +142,13 @@ Infer({method: "forward", samples: 5000}, function(){takesamples(1)}) We are still winning around 2/3 of the time. Obviously, if we have the computational power available and enough time to take the samples, we should take 1,000 samples and maximize our chances of winning. But if samples are costly, it may not be worth taking more than 1. +### Rational Anchoring +One well-known bias in human reasoning is the anchoring bias discovered by Kahnamen and Tversky. In the original study, subjects were first asked to judge whether the percentage of African countries in the United Nations was larger or smaller than a number that was randomly generated by spinning a wheel of fortune. Subjects were then asked to guess the correct percentage. What was striking was that subjects were systematically biased towards the random number: their guesses were larger when the random number was large and smaller when the random number was smaller. This same "anchoring" bias has appeared in many other contexts, and it is often given as a paradigmatic case of irrationality on the part of humans. +In "[The anchoring bias reflects rational use of cognitive resources](https://link.springer.com/article/10.3758/s13423-017-1286-8)", Lieder and colleagues suggest a resource-rational account, based on the dynamics of MCMC. Suppose that in the class study, subjects use the random number as their initial proposal for an MCMC-like process. (There are any number of reasons people might do this.) For instance, perhaps they consider whether it seems correct. If it doesn't, they propose a new number *based on the first number* and check again. And so on. The dynamics of this process look a lot like MCMC. + +As we've seen previously, initial samples from MCMC are strongly biased by the starting point. If you run MCMC long enough, this bias disappears. However, an agent that is being resource-rational may not take a large number of samples, particularly in the context of being asked trivia questions by a random psychologist. ### Inferring human optimality from data @@ -209,12 +214,11 @@ Suppose our subjects weren't so accuracy. We can rewrite the code above so that ![Inferred number of particles](../assets/img/particles_2.svg) -Suppose we fit this model to a real dataset and found the best estimate for number of particles is 7. That would not necessarily mean that humans in fact use particle filtering with approximately 7 particles to learn vocabulary. Rather, it means that human level of accuracy can be captured by such a model. It further suggests that humans are fairly resource-limited in our ability to do cross-situational learning, since accuracy with only 7 particles is not going to be very high. (One could quantify just how limited it is by seeing how accuracy is affected by number of particles in a realistic learning scenario.) - +Suppose we fit this model to a real dataset and found the best estimate for number of particles is 7. That would not necessarily mean that humans in fact use particle filtering with approximately 7 particles to learn vocabulary. Rather, it means that human level of accuracy can be captured by such a model. It further suggests that humans are fairly resource-limited in our ability to do cross-situational learning, since accuracy with only 7 particles is not going to be very high. (One could quantify just how limited it is by seeing how accuracy is affected by number of particles in a realistic learning scenario.) ## Approximate distribution representations -Another possible representation of uncertainty is via the parameters of a family of distributions. For instance, the mean and covariance of a Gaussian is a flexible and popular (in statistics) way to approximate a complex distirbution. (Indeed, we have seen that a mean-field product of Gaussians can give quick and useful inference result from variational inference.) It is thus possible that all uncertainty is represented in the human mind as parameters of some family. A version of this idea can be seen in the *free energy* hypothesis. (See [The free-energy principle: a unified brain theory?](https://www.nature.com/articles/nrn2787), Friston (2010).) +Another possible representation of uncertainty is via the parameters of a family of distributions. For instance, the mean and covariance of a Gaussian is a flexible and popular (in statistics) way to approximate a complex distirbution. (Indeed, we have seen that a mean-field product of Gaussians can give quick and useful inference result from variational inference.) It is thus possible that all uncertainty is represented in the human mind as parameters of some family. A version of this idea can be seen in the *free energy* hypothesis. (See [The free-energy principle: a unified brain theory?](https://www.nature.com/articles/nrn2787), Friston (2010).) This would of course come with its own set of tradeoffs between accuracy and cost. \ No newline at end of file +## Extras + +* **Plate Notation**: The model is described using plate notation. If this is unfamiliar, read this [https://en.wikipedia.org/wiki/Plate_notation](description from Wikipedia). + +* **Word-learning biases**: The paper does a pretty good job of briefly explaining basic phenomena in word-learning like mutual exclusivity. For a bit more detail, see the Wikipedia article on [https://en.wikipedia.org/wiki/Word_learning_biases](Word learning biases). + +* **More Word-learning biases**: For a deeper dive into the theoretical and empirical background informing this paper, read Markman (1990) [Constraints children place on word meanings](https://onlinelibrary.wiley.com/doi/pdf/10.1207/s15516709cog1401_4). \ No newline at end of file diff --git a/readings/lot-learning.md b/readings/lot-learning.md new file mode 100644 index 0000000..d91a647 --- /dev/null +++ b/readings/lot-learning.md @@ -0,0 +1,18 @@ +--- +layout: exercise +title: Learning as Infernece - readings +--- + +## 1. Learning numbers + +@piantadosi2012bootstrapping + +This is a long paper. Focus on the first 11 pages (through and including Sec. 4.1). + +#### Reading questions: + +a) What stages do children go through in learning numbers? + +b) Why does the model go through several stages before finally learning the number system? + + \ No newline at end of file From b0a316ec286e38eccae9d34e123bc07ec853613f Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Tue, 14 Mar 2023 10:23:08 -0400 Subject: [PATCH 40/47] Added missing answer box to process models exercise --- exercises/process-models.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/exercises/process-models.md b/exercises/process-models.md index 224093c..c241455 100644 --- a/exercises/process-models.md +++ b/exercises/process-models.md @@ -154,4 +154,9 @@ What's the best-case scenario? That is, suppose you know the actual weight of th #### b) -Now figure out how often you could guess the next flip based on first flipping it 10 times. (Keep in mind that in this scenario, you can do as much inference as you want; no need to restrict samples during inference. It's the number of observations you can make about the coin that we are restricting.) \ No newline at end of file +Now figure out how often you could guess the next flip based on first flipping it 10 times. (Keep in mind that in this scenario, you can do as much inference as you want; no need to restrict samples during inference. It's the number of observations you can make about the coin that we are restricting.) + + +~~~~ +// your code here +~~~~ \ No newline at end of file From 1771777ec6399deac6b98cf55c01bf2ee93e66c8 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Thu, 16 Mar 2023 10:16:30 -0400 Subject: [PATCH 41/47] Fixed missnamed variable in learning as conditional inference --- chapters/learning-as-conditional-inference.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/chapters/learning-as-conditional-inference.md b/chapters/learning-as-conditional-inference.md index 0e3d3d5..7320ecb 100644 --- a/chapters/learning-as-conditional-inference.md +++ b/chapters/learning-as-conditional-inference.md @@ -60,9 +60,11 @@ Try varying the number of flips and the number of heads observed. You should be When exploring learning as a conditional inference, we are particularly interested in the dynamics of how inferred hypotheses change as a function of amount of data (often thought of as time the learner spends acquiring data). We can map out the *trajectory* of learning by plotting a summary of the posterior distribution as a function of the amount of observed data. Here we plot the expectation that the coin is fair in the above example: ~~~~ +var fairPrior = .999 + var fairnessPosterior = function(observedData) { return Infer({method: 'enumerate'}, function() { - var fair = flip(0.999) + var fair = flip(fairPrior) var coin = Bernoulli({p: fair ? 0.5 : 0.95}) var obsFn = function(datum){observe(coin, datum == 'h')} mapData({data: observedData}, obsFn) From 4ff4a95bba4c02b37d86d89134d7c2f6bb0e5271 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Tue, 21 Mar 2023 10:25:46 -0400 Subject: [PATCH 42/47] Updated readings for LoT chapter --- readings/lot-learning.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/readings/lot-learning.md b/readings/lot-learning.md index d91a647..b06e885 100644 --- a/readings/lot-learning.md +++ b/readings/lot-learning.md @@ -1,6 +1,6 @@ --- layout: exercise -title: Learning as Infernece - readings +title: Learning with a Language of Thought - readings --- ## 1. Learning numbers @@ -15,4 +15,10 @@ a) What stages do children go through in learning numbers? b) Why does the model go through several stages before finally learning the number system? +## Extras + +a) For a more thorough review of how children learn numbers, see "[Learning to represent exact numbers](https://link.springer.com/article/10.1007/s11229-015-0854-6)" by Barbara Sarnecka. + +b) A highly related paper is ["A Bayesian Model of the Acquisition of Compositional Semantics"](https://www.science.org/doi/full/10.1126/science.aab3050). This isn't a language of thought model but applies very similar ideas to the problem of reading handwriting. + \ No newline at end of file From 0cff8cf084d16004ff34aad65a0fcbc2a21b3d24 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Tue, 21 Mar 2023 10:36:35 -0400 Subject: [PATCH 43/47] Fixed Piantadosi link --- readings/lot-learning.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readings/lot-learning.md b/readings/lot-learning.md index b06e885..3cc4882 100644 --- a/readings/lot-learning.md +++ b/readings/lot-learning.md @@ -5,7 +5,7 @@ title: Learning with a Language of Thought - readings ## 1. Learning numbers -@piantadosi2012bootstrapping +[Bootstrapping a language of thought](https://www.sciencedirect.com/science/article/pii/S0010027711002769) by Piantadosi and colleagues. This is a long paper. Focus on the first 11 pages (through and including Sec. 4.1). From a60089dbe6eb174906f35e15edb6a7bfcee78058 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Tue, 28 Mar 2023 10:05:28 -0400 Subject: [PATCH 44/47] Fixed a typo in the exercises for learning as conditional inference. Updated reading questions for hierarchical models. --- .../learning-as-conditional-inference.md | 12 ++++-- readings/hierarchical-models.md | 43 +++++++++++++++++++ 2 files changed, 51 insertions(+), 4 deletions(-) diff --git a/exercises/learning-as-conditional-inference.md b/exercises/learning-as-conditional-inference.md index 745a7af..b5ded39 100644 --- a/exercises/learning-as-conditional-inference.md +++ b/exercises/learning-as-conditional-inference.md @@ -26,7 +26,8 @@ var weightPosterior = function(observedData){ var fullDataSet = repeat(50, function() { 'h' }); var observedDataSizes = [0,1,2,4,6,8,10,12,15,20,25,30,40,50]; -var estimates = map(function(N) { expectation(weightPosterior(fullDataSet.slice(0, N))) }, observedDataSizes); +var estimates = map(function(N) { expectation(weightPosterior( + fullDataSet.slice(0, N))) }, observedDataSizes); viz.line(observedDataSizes, estimates); ~~~~ @@ -50,7 +51,8 @@ var weightPosterior = function(observedData){ var fullDataSet = repeat(50, function() { 'h' }); var observedDataSizes = [0,1,2,4,6,8,10,12,15,20,25,30,40,50]; -var estimates = map(function(N) { expectation(weightPosterior(fullDataSet.slice(0, N))) }, observedDataSizes); +var estimates = map(function(N) { expectation(weightPosterior( + fullDataSet.slice(0, N))) }, observedDataSizes); viz.line(observedDataSizes, estimates); ~~~~ @@ -75,7 +77,8 @@ var weightPosterior = function(observedData){ var fullDataSet = repeat(50, function() { ['h', 't'] }).flat(); var observedDataSizes = [0,2,4,6,8,10,20,30,40,50,70,100]; -var estimates = map(function(N) { expectation(weightPosterior(fullDataSet.slice(0,N))) }, observedDataSizes); +var estimates = map(function(N) { expectation(weightPosterior( + fullDataSet.slice(0,N))) }, observedDataSizes); viz.line(observedDataSizes, estimates); ~~~~ @@ -144,7 +147,8 @@ var weightPosterior = function(observedData){ var fullDataSet = repeat(50, function() { ['h', 't'] }).flat(); var observedDataSizes = [0,2,4,6,8,10,20,30,40,50,70,100]; -var estimates = map(function(N) { expectation(weightPosterior(fullDataSet.slice(0,N))) }, observedDataSizes); +var estimates = map(function(N) { expectation(weightPosterior( + fullDataSet.slice(0,N))) }, observedDataSizes); viz.line(observedDataSizes, estimates); ~~~~ diff --git a/readings/hierarchical-models.md b/readings/hierarchical-models.md index fe43ba2..3eb4104 100755 --- a/readings/hierarchical-models.md +++ b/readings/hierarchical-models.md @@ -13,7 +13,50 @@ description: The power of abstraction. a) What is a linguistic alternation, such as the dative alternation? +See if ChatGPT's answer roughly matches what you learned from the paper. If not, what would you correct? + +> A linguistic alternation is a phenomenon in language where different syntactic structures are used to express the same meaning. One example of a linguistic alternation is the dative alternation, also known as the double object construction. + +>The dative alternation involves the use of two different syntactic structures to convey the same meaning, specifically the transfer of an object from one person or thing to another. In one structure, the indirect object (the recipient) appears as a prepositional phrase introduced by the preposition "to", while the direct object (the transferred object) appears as a noun phrase. In the other structure, the indirect object appears as a noun phrase, while the direct object appears as a prepositional phrase introduced by the preposition "to". + +>For example, in the sentence "I gave the book to Mary," "Mary" is the indirect object introduced by the preposition "to," while "book" is the direct object. In the dative alternation, the same meaning can be expressed using the sentence "I gave Mary the book," where "Mary" is the indirect object expressed as a noun phrase, and "book" is the direct object expressed as a prepositional phrase. + +>The dative alternation is one of many syntactic alternations in English, and it is found in many other languages as well. Understanding these alternations is important for language learners and researchers alike, as they provide insight into the underlying structure and organization of language. + b) What is the Problem of No Negative Evidence? +Based on what you read in the paper, can you improve on ChatGPT's answer? Or is it basically right? + +> The problem of no negative evidence, also known as the poverty of the stimulus problem, is a well-known issue in language acquisition and linguistic theory. + +> In essence, the problem arises from the fact that children seem to be able to learn language incredibly quickly and accurately, even though they are not provided with explicit negative feedback on incorrect language usage. That is, children are not explicitly told which sentences or grammatical structures are incorrect, yet they are still able to learn the rules of their language with remarkable speed and accuracy. + +>This has led some researchers to argue that there must be some innate knowledge or ability in the human brain that allows us to learn language so easily. Others have suggested that children are able to learn language because they are exposed to a rich, complex input of language data, which provides them with enough positive evidence to induce the grammatical rules of their language. + +>Despite ongoing research and debate, the problem of no negative evidence remains unsolved. However, it continues to be a topic of great interest and importance in the fields of linguistics, cognitive psychology, and artificial intelligence, as it sheds light on the mechanisms of language acquisition and the nature of human cognition more broadly. + c) How does a hierarchical Bayesian model ameliorate the Problem of No Negative Evidence? +ChatGPT definitely bungles this one. Can you help? + +> A hierarchical Bayesian model is a statistical model that can be used to explain how humans learn language in the absence of explicit negative feedback. In the context of the problem of no negative evidence, a hierarchical Bayesian model can ameliorate this problem by incorporating prior knowledge about language and using this knowledge to guide the learning process. + +>The model assumes that the child has prior beliefs about the structure of their language, which are represented in the form of a probabilistic grammar. This grammar encodes the child's beliefs about the distribution of different syntactic structures in their language. When the child is exposed to language data, the model updates its beliefs about the grammar based on the observed data. + +>The key innovation of the hierarchical Bayesian model is that it allows the child to learn from both positive and negative evidence in a principled way. The model assumes that the child is uncertain about the true structure of their language, and this uncertainty is captured by a probability distribution over possible grammars. When the child observes a sentence, the model evaluates the probability of that sentence under each possible grammar, and updates the probability distribution over grammars accordingly. + +>Importantly, the model can use negative evidence, or evidence that a particular sentence is ungrammatical, to rule out certain grammars and narrow down the set of possible hypotheses. This is because ungrammatical sentences will have low probability under some grammars, while grammatical sentences will have high probability under all grammars. By ruling out certain grammars, the model can gradually converge on the correct grammar for the child's language. + +>Overall, the hierarchical Bayesian model provides a principled way to learn language in the absence of explicit negative feedback. By incorporating prior knowledge and using probabilistic reasoning, the model can learn from both positive and negative evidence and converge on the correct grammar for the child's language. + +# Extras + +## Psychology / Linguistics + +* While the problem of negative evidence is often associated with Nativist theories, it was first popularized by Melissa Bowerman, a dyed-in-the-wool Empiricist. Her original paper remains a classic: [The 'no negative evidence' problem: How do children avoid constructing an overly general grammar?](https://pure.mpg.de/rest/items/item_468143/component/file_532427/content). +* To get a sense of verb alternations, there's really nothing better than looking at [VerbNet](https://uvi.colorado.edu/). VerbNet is an online database that categorizes verbs into classes depending on which syntactic frames they can use (the two forms of the dative alternation are examples of two frames). + +## Computer Science + +* Perfors and colleagues also wrote a tutorial on [Bayesian models of cognition development](https://www.sciencedirect.com/science/article/pii/S001002771000291X), which includes a useful explanation of overhypotheses / hierarchical models. +* Also useful is [Learning overhypotheses with hierarchical Bayesian models](https://onlinelibrary.wiley.com/doi/full/10.1111/j.1467-7687.2007.00585.x), by many of the same authors. \ No newline at end of file From 89a5cf668f9a4956c063b4077a6d2ebffd172558 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Fri, 31 Mar 2023 15:40:21 -0400 Subject: [PATCH 45/47] Some clarifications on hierarchical models exercises, for students who skipped the BDA chapter --- exercises/hierarchical-models.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/exercises/hierarchical-models.md b/exercises/hierarchical-models.md index 86c8f26..7d931c6 100644 --- a/exercises/hierarchical-models.md +++ b/exercises/hierarchical-models.md @@ -6,7 +6,7 @@ description: The power of abstraction. ## Exercise 1: Pseudocounts and the Dirichlet distribution -In the Bayesian Data Analysis exercises, we explored the Beta distribution by varying its parameters. +In the Bayesian Data Analysis (BDA) exercises, we explored the Beta distribution by varying its parameters. The Dirichlet is a generalization of the Beta distribution to more than two categories (see [Appendix](http://probmods.org/chapters/appendix-useful-distributions.html)) Instead of Beta parameters $$(a, b)$$ governing the probabilities of two categories $$(false/true)$$, @@ -180,7 +180,7 @@ How many of these apples are likely to be rotten? ~~~~ ~~~~ -## Exercise 3: Hierarchical models for BDA +## Exercise 3: Hierarchical models for Bayesian Data Analysis (BDA) Imagine that you have conducted an experiment on word reading times to test the hypothesis that words starting with vowels take longer to read. Each data point includes whether the word starts with a vowel or a consonant, the word itself, the participant id, and the response time you measured ("rt"). From 72ddb742c1bf8e23e1d58dd20dc5718fcacc08d5 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Tue, 4 Apr 2023 10:12:48 -0400 Subject: [PATCH 46/47] Added readings for mixture models chapter --- chapters/mixture-models.md | 2 ++ readings/mixture-models.md | 24 ++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100755 readings/mixture-models.md diff --git a/chapters/mixture-models.md b/chapters/mixture-models.md index 4185833..b822c6b 100755 --- a/chapters/mixture-models.md +++ b/chapters/mixture-models.md @@ -483,4 +483,6 @@ Notice that unlike the unbounded mixture model case above, we were able to use M +Reading & Discussion: [Readings]({{site.baseurl}}/readings/mixture-models.html) + Test your knowledge: [Exercises]({{site.baseurl}}/exercises/mixture-models.html) diff --git a/readings/mixture-models.md b/readings/mixture-models.md new file mode 100755 index 0000000..0ef17da --- /dev/null +++ b/readings/mixture-models.md @@ -0,0 +1,24 @@ +--- +layout: exercise +title: "Mixture Models - readings" +description: "Introduction" +--- + +## 1. A Mixture Model of Visual Working Memory + +Read "[Contextual effects in visual working memory reveal hierarchically structure memory representations](https://jov.arvojournals.org/article.aspx?articleid=2471226)" by Timothy Brady and George Alvarez. This paper was a substantial improvement on prior theories of working memory. In those theories, working memory consisted of a discrete number of slots. Using working memory involved sticking pieces of information into a slot until you ran out of slots. Slots could sometimes lose the piece of information (either through failure to maintain or by being kicked out by some new piece of information; the story varied by theory). This theory worked well for some things but failed to capture some really obvious facts about memory. + +#### Reading questions: +a) What kinds of phenomena can this model account for that a simple item-based model cannot? + +b) Figure 2A models subjects' responses as a mixture of what? (Don't just copy-and-paste what it says in the figure caption. Explain it in your own words. You may find it helpful to give an example or a metaphor.) + +c) According to the description of the "structure representations/hierarchical Bayesian model" in the appendix, that model is both hierarchical and a mixture model. What is the hierarchical part doing? What is the mixture part doing? (That is, if you eliminated the hierarchical component, what would happen? If you eliminated the mixture part, what would happen?) Your answer here can be broad strokes; it need not be technical. + +d) What Marr's level is this paper investigating? Justify your answer. + +## Extras + +* **Background in Psychology**. If you aren't familiar with the classic distinction between sensory/iconic memory, short-term/working memory, and long-term memory, read [this wikipedia article](https://en.wikipedia.org/w/index.php?title=Memory&oldid=1146564225) up until you reach the section "Types". "[Discrete capacity limits in visual working memory](https://www.sciencedirect.com/science/article/pii/S0959438810000437)" provides some context on the debate that the Brady paper is embedded in. If you want a deeper dive in the science of visual memory, "[Visual memory, the long and the short of it: A review of visual working memory and long-term memory](https://link.springer.com/article/10.3758/s13414-018-1522-y)" by Mark. W. Schurgin is useful. + +* **Math and Statistics**. For a more general discussion of mixture models, the [Wikipedia page](https://en.wikipedia.org/w/index.php?title=Mixture_model&oldid=1141109201) is a little dense but has useful links to many related articles and some nice (if succinctly described) examples. \ No newline at end of file From af8f90bfd03ccee2536ba956a1a53f6027f026a3 Mon Sep 17 00:00:00 2001 From: Joshua Hartshorne Date: Thu, 20 Apr 2023 13:50:19 -0400 Subject: [PATCH 47/47] Fleshed out problem set for mixture models. Updated readings for learning with an lot --- exercises/mixture-models.md | 26 +++++++++++++++++++++++--- readings/lot-learning.md | 2 +- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/exercises/mixture-models.md b/exercises/mixture-models.md index 4ce888a..86b8cd3 100644 --- a/exercises/mixture-models.md +++ b/exercises/mixture-models.md @@ -38,7 +38,6 @@ var data = [ // Todo: sampleGroupPrototype takes a group and returns an object // with property / probability pairs. E.g. {antannae: 0.2, green: 0.3, blarghNoise: 0.9} -// *Hint* lodash _.zipObject is useful for building dictionaries! var sampleGroupPrototype = mem(function(groupName) { // Your code here... }) @@ -62,8 +61,29 @@ viz.bar(properties, map(expectationOver(results, 'group2'), properties)) ### b) +Practice your javascript-fu. You probably wrote out the dictionary in `sampleGroupPrototype` by hand (`{antennae: var1, green: var2, ...}`). Use Google to read up on lodash _.zipObject, which makes it easier to put together dictionaries. Rewrite your code for (a) accordingly. + +~~~~ + +~~~~ + +### c) + Now imagine you hear a noise from inside a crater but you cannot see the alien that emitted it; this is a noisy observation. How can you use the model you learned above to make an educated guess about their other features? +~~~~ + +~~~~ + +### d) + +Try rewriting your code for (c) to allow for an unbounded number of groups. You'll probably find that the effect on your guesses about the properties of the mystery alien isn't changed much. Why not? + + +~~~~ + +~~~~ + @@ -71,9 +91,9 @@ Now imagine you hear a noise from inside a crater but you cannot see the alien t This problem is adapted from Section 6.5 of [Lee \& Wagenmakers (2013)](https://faculty.washington.edu/jmiyamot/p548/leemd%20bayesian%20cog%20modeling%20-%20practical%20crs.pdf). -Consider the practical challenge of detecting if people cheat on a test. For example, people who have been in a car accident may seek financial compensation from insurance companies by feigning cognitive impairment such as pronounced memory loss. When these people are confronted with a memory test that is intended to measure the extent of their impairment, they may deliberately under-perform. This behavior is called malingering, and it may be accompanied by performance much worse than that displayed by real amnesiacs. Sometimes, for example, malingerers may perform substantially below chance. +In a psychology experiment, not all the subjects are necessarily doing their best. Some just want their payment or credit and to get out as quickly as possible. Consider the practical challenge of detecting which subjects are actually taking the task seriously. -Malingering is not always easy to detect, but is naturally addressed by a mixture model. Using this approach, it is possible to infer which of two categories -- those who malinger, and those who are truthful or bona fide -- each person belongs to, and quantify the confidence in each of these classifications. +Malingering (not taking the task seriously) is not always easy to detect, but is naturally addressed by a mixture model. Using this approach, it is possible to infer which of two categories -- those who malinger, and those who are truthful or bona fide -- each person belongs to, and quantify the confidence in each of these classifications. We consider an experimental study on malingering, in which each of p = 22 participants completed a memory test (Ortega, Wagenmakers, Lee, Markowitsch, & Piefke, 2012). One group of participants was told to do their best. These are the bona fide participants. The other group of participants was told to under-perform by deliberately simulating amnesia. These are the malingerers. Out of a total of n = 45 test items, the participants get 45, 45, 44, 45, 44, 45, 45, 45, 45, 45, 30, 20, 6, 44, 44, 27, 25, 17, 14, 27, 35, and 30 correct. Because this was an experimental study, we know that the first 10 participants were bona fide and the next 12 were instructed to malinger. ### a) diff --git a/readings/lot-learning.md b/readings/lot-learning.md index 3cc4882..ecd8593 100644 --- a/readings/lot-learning.md +++ b/readings/lot-learning.md @@ -13,7 +13,7 @@ This is a long paper. Focus on the first 11 pages (through and including Sec. 4. a) What stages do children go through in learning numbers? -b) Why does the model go through several stages before finally learning the number system? +b) Why does the model go through several stages before finally learning the number system? What aspects of the model allow it to recapitulate the same stages humans go through? ## Extras

eCTr(&?> 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 P00000NkvXXu0mjfH--pq diff --git a/solutions/Figures/sequences-of-observations-4.png b/solutions/Figures/sequences-of-observations-4.png deleted file mode 100755 index f5c83c611bbb78647cbf823c3e91aec774ed11e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17405 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 diff --git a/solutions/Figures/sequences-of-observations-5.png b/solutions/Figures/sequences-of-observations-5.png deleted file mode 100755 index 377543417cfdf231082e357df5abbb77b4b2a8cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17731 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 y&awd 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 JRgfI**F9pnI+T_XC7S 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 NDJm;cB=o`O{|DSm^+f;x diff --git a/solutions/Figures/sequential-decisions-3.png b/solutions/Figures/sequential-decisions-3.png deleted file mode 100755 index 1e6881ce11df990a8e0dd77b0e6bc88635d976f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16839 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 T&u<_9!zLvrCt4+}ANc8n8%d$h3UXB8xKdQe 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 f-d?1z{Ih?cZTE_Eo`nza3T_5ZS3j3^P6 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