[om-list] Sense & Evaluation
Mark Butler
butlerm at middle.net
Fri Oct 10 17:53:28 EDT 2003
In regard to common data models, I have a few comments. In my current
system, I do not store attribute values in the attribute objects, but
rather in evaluation objects. Any person can have their opinion about
any concept, attribute, or relation expressed in an evaluation object.
My evaluation object consists of the following:
subject person / entity who made this evaluation
object The concept, attribute, relation being evaluated
sense subject's sense from -infinity (denial) to
+infinity (absolute certainty), zero neutral
minimum value subject believes value greater than this
(e.g. event date after 1789) [sense positive]
expected value subject expects value to be this (e.g. 1791) [sense
positive]
maximum value subject beleives value less than this (e.g. 1803)
[sense positive]
This is very simple, but probably adequate to represent someone's
opinion about a historical scalar attribute or something else that
cannot change. The sense modifier is my favorite - by setting it
negative instead of positive, the sense of the minimum, expected, and
maximum values is reversed, just like throwing a "not" in front of a
sentence. In this example it would be like changing "event date was
between 1789 and 1803" to "event date was not between 1789 and 1803".
Sense could also be used to express denial of the existence of an
object, by attaching the evaluation record to a regular concept instead
of an attribute. For example, given the concept "Unicorn", sense
positive would indicate belief in unicorns, zero would be non-committal,
and sense negative would indicate disbelief. I am thoroughly convinced
using bipolar senses this way is far more user friendly than using [0,1]
bounded unipolar fuzzy logic.
Standard probability theory only works well with boolean logic - as soon
as you mix probability and fuzzy logic bad things start to happen unless
you are extremely careful. Mathematicians mostly solve the problem by
avoiding fuzzy logic completely, but in natural language we do not have
that option.
[0,1] bounded fuzzy logic is based on the concept of fractional set
membership. Unfortunately, a fractional set membership value only
converts well to a truth value for simple objects in the presence of
perfect information. Most real world objects are complex. If you have
a complex object that can overlaps large regions of a set, you have to
integrate the multiplication of the object function and the set function
and normalize to get some sort of degree of containment. Normalized,
zero indicates zero overlap, and one indicates perfect containment of
the object by the set.
If you have perfect information, you can do that integral nicely, of
course. But what if you know nothing about the object? Should you just
guess set membership 1/2 in desparation? But after the fact how do you
tell the difference between actual set membership 1/2 (partial overlap)
and estimated set membership 1/2 (unknown overlap)? Saying 1/2 makes it
appear like you know something when you don't.
One very painful way is to keep track of a membership probability
distribution function. That is the mathematician's answer. Natural
language doesn't work that way - instead we keep track of sense or
agreement relative to propositions. The nice part about sense is that
it jointly represents ignorance, degree of belief, and fractional set
membership very nicely. If someone says "the object is a member of the
set" - I can assent, dissent, or say nothing, which are positive,
negative, and zero senses, respectively.
If I know nothing, my sense is neutral (zero). If I have perfect
knowledge that the set completely contains the object, my sense is
certain (large and positive). If I have perfect knowledge that object
lies completely without the set my sense is denial (large and
negative). If I have perfect knowledge, I can get an actual degree of
overlap, likewise if I have partial knowledge, I can get an estimated
degree of overlap.
This doesn't solve the ambiguity problem, but it is a major improvement,
one that meshes well with the way we talk about natural language and one
that leads to simpler mathematical formulas. I suspect that [0,1] fuzzy
logic can be shown to be equivalent to bipolar [+/-] fuzzy logic, but
for me the latter is far more natural, particularly because it doesn't
have this funny 1/2 floating around everywhere.
In bipolar logic you have two basic choices [-1,+1] linear logic and
[-infinity,+infinity] logarithmic logic, where the left endpoint
represents absolute denial, and the right endpoint represents absolute
certainty. I prefer the latter because you can add instead of
multiplying when doing most evidence calculations. Logarithmic measures
are widely used in science and engineering for the similar reasons.
If you have a proposition in log10 bipolar fuzzy logic, you get the
following (roughly):
sense zero-based certainty
--------- --------------------
-infinity 0 0
-6 10^-6 (0.000001)
-5 10^-5 (0.00001)
-4 10^-4 (0.0001)
-3 10^-3 (0.001)
-2 10^-2 (0.01)
-1 10^-1 (0.1)
0 1/2 (0.5)
1 1-10^1 (.9)
2 1-10^-2 (.99)
3 1-10^-3 (.999)
4 1-10^-4 (.9999)
5 1-10^-5 (.99999)
6 1-10^-6 (.999999)
+infinity 1 1
This works very nicely for analysis of inductive propositions - as
evidence is gathered for a scientific theory, for example, the certainty
approaches one, but never reaches it because of the limitations of
induction. However, the logarithmic sense measure keeps increasing
linearly with the amount of evidence.
Arguably, people do this conversion informally all the time - add up the
amounts of confirming and dis-confirming evidence, and then convert to a
linear bounded degree of belief between assent and denial. A tiny
amount of confirming evidence is no big deal, but a tiny amount of
dis-confirming evidence is rather unsettling, especially since most
people tend to think in boolean terms.
Have I made my case?
- Mark
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://six.pairlist.net/pipermail/om-list/attachments/20031010/bd13b47a/attachment.html
More information about the om-list
mailing list