Fuzzy thinking in Berkeley
By bblfish on Nov 22, 2006
I was in Berkeley yesterday, so checked out Soda Hall to see what interesting research may be going on there relating to the Semantic Web. I asked a few people I met, but the term did not ring a clear bell. So I strolled around and looking at the wall I found an advert for a talk on "Machine Learning, Language and fuzziness" by Timo Honkela. This sounded like an interesting talk, so I decided to go.
And I was very pleasantly surprised. The talk was for me a very good introduction to fuzzy set theory, fuzzy logic and the importance of this for natural language processing. Timo Honkela gave an example of a tagging experiment that was performed in the Pompidou center in Paris where the contents of the pockets of visitors were photographed, and then tagged with different words. This may have seemed like an odd thing to do at the time, but we all know how useful folksonomies and tagging have turned out to be with services such as delicious and flickr. (For more details see the good summary of a similar talk Timo gave the day before)
Interestingly it does not seem to me to be incompatible with the Semantic Web. Terms in rdf can be pretty fuzzy. Just take the foaf:knows relation, defined as
A person known by this person (indicating some level of reciprocated interaction between the parties).That's a definition that has quite fuzzy borders.
We take a broad view of 'knows', but do require some form of reciprocated interaction (i.e. stalkers need not apply). Since social attitudes and conventions on this topic vary greatly between communities, counties and cultures, it is not appropriate for FOAF to be overly-specific here.
If someone foaf:knows a person, it would be usual for the relation to be reciprocated. However this doesn't mean that there is any obligation for either party to publish FOAF describing this relationship. A foaf:knows relationship does not imply friendship, endorsement, or that a face-to-face meeting has taken place: phone, fax, email, and smoke signals are all perfectly acceptable ways of communicating with people you know.
Now one could define a relation to express this fuzziness, call it a fuzzy link, and that could be used like this
:henry fuzz:link [ fuzz:rel foaf:knows; fuzz:level "slightly"; fuzz:to :zadeh ] .Which in graph format could be drawn as:
Now an interesting question would be if this anonymous link between :henry and :zadeh, should be thought of as a owl:subPropertyOf foaf:knows or if on the other hand it is a superProperty of foaf:knows ? Or does that depend on the fuzz:level of the relationship? In the above example, given that foaf:knows is so vaguely defined, I'd venture that even if I slightly foaf:know someone, I foaf:know them, and hence that every such link is an owl:subPropertyOf foaf:knows. Does this suggests that it might be a good principle for Semantic Web ontologists to define classes as fuzzily as possible to start off with?
Clearly one could define a fuzzy rdfs:instanceOf relation in a similar way. This would relate an instance to a fuzzy class
:bush fuzz:instanceOf [ fuzz:level "very"; fuzz:class foaf:Person ] .
So it looks like all of this should be quite compatible with the Semantic Web, and probably be very useful in many domains. Of course for it really to be useful one will need reasoning engines that can reason with fuzzy classes and fuzzy operators, defined by a fuzzy OWL perhaps?
But reasoning engines are powerful machines, difficult to build, and dangerous to work with (how many people are really conscious of the logical consequences of what they say?). So keeping reasoning to a minimum to start off with is a good design decision (see the discussion on OWL extensions and simplifications.)
Luckily the Semantic Web is built as a very layered cake, with each layer doing the minimum amount of work, ensuring it does it well. The first layer of the cake to be built is the data layer, with very minimal reasoning facilities. This should already prove to be immensely useful. We are at the stage at which this layer should start to become economically interesting and usable. But I do look forward to widely available reasoning engines, able to reason fuzzily, temporally, ontologically, and perhaps even non monotonically?
Anyway, along those lines, it looks like there is some interesting research going on here in Berkeley at the FLINT (Fuzzy Logic and the Internet) initiative. Apparently Peter Norvig from Google, gave a very interesting presentation there a week ago or so, as I discovered after the talk, as we were all invited to by some very friendly and sharp old gentleman whom everyone listened to very carefully, and who was called Zadeh. Professor Zadeh, it said on his office door, which opened on a corridor of books on fuzzy thinking and sharp photographies.