I have a question about updating NARS confidence...
Suppose we first learned that birds can fly with NARS confidence 0.8:
bird(X) -> fly(X) c1=0.9
Then we learn that penguins cannot fly and so we need to *add* this rule:
penguin(X) -> ! fly(X) c2=0.7
where c2 is "by itself" 0.7 because it is supported by a certain
number of observations (of penguins not flying).
The problem is, for the new rules to function correctly, c2 should be
> c1 (otherwise the conclusion of the second rule will not override
the first one, right?)
So, does it mean that we need to artificially decrease c1, or increase
c2? Even if we do that, we cannot ensure that the change will not
incorrectly affect *other* nonmonotonic relations related to flying.
So it seems to be a difficult problem...
Thanks in advance! =)
YKY
> Not necessarily. One way is to tell the system that penguins are not
> typical birds, which may let the second statement (NARS doesn't call
> it a "rule") to become the winner.
>
> Otherwise, why should the system to prefer a low confidence statement?
>
> A detailed discussion is in
> http://www.cis.temple.edu/~pwang/Publication/reference_classes.pdf
Thanks, I think that paper of yours has some very good ideas which
I've adopted, but I'm skeptical about the case when 2 factors are
correlated, and you said the result should be the one with higher
confidence. To me it seems that any mixture of the 2 factors would be
a reasonable guess...
I'll think more about this...
YKY
case #1. When 2 factors are *independent* then it seems always
reasonable to use the weighted mixing rule (as given by you). This
much seems uncontroversial. (Although actual data can deviate
arbitrarily from this statement's prediction).
case #2. When 1 factor subsumes the other factor (ie, a subset
relation) then it seems reasonable to let the more SPECIFIC class wins
(ie, specificity principle). But in this situation (your "white
collar male" vs "male" example) you chose the one with the higher
confidence -- this may be incorrect if the higher-confidence one is
LESS specific.
So I suspect that in this case, the specificity principle still holds
(perhaps should be adjusted by the confidence in some way, since you
said that the sample sizes do matter).
case #3. When 1 factor is CONTRARY to the other, for instance, F1
implies "not F2". In this case, it seems that the one with higher
confidence shall win. Your solution seems to have mixed #2 and #3.
To give an example of #3:
Ben is usually very punctual. He promised to pick up Joshua at the
airport at 11:00pm. So we can predict that he will be there:
punctual -> at airport
But, on the other hand, if I go with Ben on a taxi ride, and we have
an accident and I clearly see that Ben died, then he cannot be at the
airport at the promised time:
dead -> ! at airport
Since a person who is dead cannot be punctual:
dead -> ! punctual
This is the underlying reason why the #3 rule should apply. And the
result is that we should choose the one with higher confidence.
That's my analysis so far.... =)
YKY
> I thought I made it clear in that paper that the "specificity
> principle" works only under certain assumptions.
>
> This is where non-monotonic logic is wrong --- if there is very little
> evidence about whether penguins fly, it does not always have a higher
> priority over the belief that birds fly.
I think the analysis in your paper is correct concerning the case (ie
#2) where there is a *subset* relation between the 2 factors, F1 and
F2. In this case, your solution is an improvement over the
specificity principle, the latter can fail in some small-n cases.
This is a good thing.
But I have identified another case (#3) where there is a causal
relation between F1 and F2 (or a common cause affecting both). In
this case, the "causing factor" always wins. For example, if Ben is
dead THEN he cannot be punctual; ie, his death causes him to be
unable to be punctual. So the causing factor will win regardless of
its confidence.
To recap, there are 3 cases:
#1: independent -- weighted sum
#2: subset -- higher-confidence wins
#3: causal -- causing factor wins
YKY
How do you know that X causes Y? How do you know that X has actually
occurred?
Regards,
Joe Geldart <jgel...@gmail.com>
http://www.dur.ac.uk/j.r.c.geldart/
>> But I have identified another case (#3) where there is a causal
>> relation between F1 and F2 (or a common cause affecting both). In
>> this case, the "causing factor" always wins. For example, if Ben is
>> dead THEN he cannot be punctual; ie, his death causes him to be
>> unable to be punctual. So the causing factor will win regardless of
>> its confidence.
>>
>> To recap, there are 3 cases:
>> #1: independent -- weighted sum
>> #2: subset -- higher-confidence wins
>> #3: causal -- causing factor wins
>
> How do you know that X causes Y? How do you know that X has actually
> occurred?
Sorry that my reply is more than 3 months late...!
A discussion of causality and how causal relations can be learned
inductively, is discussed in Judea Pearl's book "Causality". He has
an algorithm called ID* (if I remember correctly) that learns
causality. Recently this topic is developed in even more depth in Jon
Williamson's book, "Bayesian Nets and Causality".
There is as yet no consensus of what causality really is, but it seems
to be some high-level learned concept built on top of the logic, and
thus is not part of the logic.
Nevertheless, I think causality should be used in some belief update
situations, as illustrated by my example: Ben is usually punctual,
but if Ben is dead, his death *causes* him to be immobilized, and thus
he cannot be punctual.
It seems NARS should somehow incorporate causality into its
thinking... otherwise it would be flawed as an AGI...
YKY
Already incorporated. Read Section 5.3.3 to see my opinion on this
topic (very different from Pearl's), and see
http://code.google.com/p/open-nars/wiki/ProceduralLearning for how
NARS learns the "causal relations" as in the preconditions and
consequences of an operation.
Pei