## Phil 12.18.15

7:00 – 5:00 VTX

• Was listening to the Planet Money podcast on A/B testing last night and they mentioned how they were using the ‘skip’ button to determine how to shape their podcast. So this is a feedback device that people use that has at most a very indirect effect on the relevance of the provided item, but it does provide the system with a value judgement from the consumer. The benefit to the user is the ability to skip content, and that appears to be enough. The benefit to the producer is the aggregate responses of the users (40k in this place, so lots of statistical power). Somewhat related:
• And I thought of a title that describes the focus of this effort: Using Value-Decorated Semantic Nets to Infer Credibility
• Probabilistic Inference I
• Joint probability tables are the ideal, but impractical
• Basic probability (intuition at 21:00)
• probability 0 … 1
• True = 1
• False = 0
• P(a) + P(b) – P(a, b) = P(a or b)
• Conditional probability
• Definitions
• P(a|b) = P(a,b)/P(b)
• Probability of a given be is the probability of a AND b over the probability of b (24:00)
• P(a, b, c) = ??
• y = b, c
• P(a, b, c) = P(a, y) = P(a|y)P(y)
• = P(a|b,c)P(b,c)
• = P(a|b,c)P(b|c)P(c) note that as we go from left to right, there is less elements to depend on.
• Generalized
• (Px1, …, xn) = chain rule (starts at 28:31)
• Independence
• Definitions
• P(a|b) = P(a) if a independent of b – video at 32:30
• The probability of a in the universe is the same as the probability of a and b in b. The two rations are the same. Why is this definition needed?
• Conditional independence
• P(a|b,z) = P(z)
• P(a,b|z) = P(a|z)P((b|z)
• Belief Nets
• Causal relationships. The dog barks because of the Racoon
• Every node is dependent only on its parent(s) and possibly its children (descendents)
•  If this were a joint probability table there would be 2^5 (32) as opposed to the number here, which is 10.
• P(p,d,b,t,r) = P(p|d,b,t,r)…P(r), which we can reduce the combinations. (See 46:30 or so)
• Hibernating slowly
• The ./basic/ as described in the hibernate 5 quickstart doesn’t seem to exist in either the 4.3 or the 5.5 bubndle. It does look like IntelliJ has a JPA and Hibernate section. Trying that.
• Importing the current pg db, which did get found since I had already set up that relationship with database in yesterday’s post.
• In the Import Database Schema wizard, I had to create a package for the files to be created in. In this case, since I’ve already had to create a new module under HibernateTest1 (HibernateTest1Module1), I called the package com.philfeldman.ht1m1, which is similar to the Entity prefix of ht1m1_ that I decided to add.
• Got a ‘Basic’ attribute type should not be ‘Object’ error. When opening up the ‘weather’ element in the dialog (see below)  I could see that the tempHi and tempLo items are being mapped as Objects. Typing java.Lang.Integer corrects the problem. The thing to remember here is that the error doesn’t ripple up. When ‘weather’ is closed, there are no red items.
• That worked, but there were some significant compiler errors. Fixed by letting the IDE download java EE6 libraries. It still looks like we’re using java 1.8, but now have a bunch of External libraries that appear to be redundant?
• Anyway, using the persistence view, created a ht1m1_UserEntity class. Now I need to make it persist and add values to it. for that matter, I need to query the weather table…
• Haven’t gotten to accessing data yet, but you can set up relationships graphically in IntelliJ, which is pretty cool.
• And now I’m kind of stuck. The console interface with the hibernate/db keeps on asking for a persistence provider which seems to be in the classpath but doesn’t seem to be helping.
• Starting over
• Spent a few bucks and got Just Hibernate. Let’s see if that works better.
• Need to install Git – Done. Yay!
• Created JustHibernate1 as a JavaEE project with Hibernate and the default download libraries (4.2.2). Also created a corresponding hibernate_test database in MySql. Nothing in it yet.
• Opened up the database view and connected to my MySql database. This gives me the opportunity to (a) test the connection and (b) get the URL for the hibernate.cfg.xml file (jdbc:mysql://localhost:3306/hibernate_test)
• Still needed to get the jdbc driver, so I used the Project Structure pane (F4) to import the mysql:mysql-connector-java:5.1.38 from maven. IntelliJ downloaded and stuck it in the lib directory. Here’s the module structure And here’s the library structure for the mysql driver. Note that it’s actually pointing at my m2 repo…
• So now I’m about where I was at lunch, but everything is cleaner. Afraid to actually try connecting at 5:00 on a Friday, so we’ll try this on Monday <fingers  crossed>