Vulcan/SystemPrototype
From Knowitall
Overview
The prototype is designed to work on three questions. We want the system to output the following:
- Score for the input proposition.
- New facts inferred.
- Facts and rules used in scoring.
Status
- Ran Tuffy on three example questions.
- Hand generated the input evidence for the propositions (one correct and one incorrect) for three questions.
- Hand generated the MLN rules (adapted from Stephen's rules)
- Ran Tuffy to obtain the inference probabilities on the propositions.
The MLN rules can be found here.
- Does it work?
- Tuffy gets it right 2/3 questions. i.e., it assigns higher probabilities for the correct proposition.
- Facts inferred by larger number of steps have a lower score compared to those inferred by a smaller number of steps.
- Why does it fail on the one question?
- Both "iron nail" and "plastic cup" get similar weights (iron nail is slightly higher). I don't yet understand the scoring enough to explain this. Will dig in when I come back.
- What diagnostics do we have from Tuffy?
- Inferred facts along with their probabilities.
- Rules that are reachable from the query fact. i.e., Clauses in the MLN that are relevant to the inference of the query fact.
- What diagnostics do we NOT have?
- Connections between the clauses in the MLN.
- A reconstruction/visualization of the MLN network.
- What does this exercise suggest?
- Use predicates with small arity. For example, avoid writing rules entire nested tuples as predicates.
- The only reason we'd need a nested tuple is for the purpose of computing the score. For now we can compute this from the score of its components: Score(nested_tuple) = Score(top tuple) * Score (nested).