Hacker News new | past | comments | ask | show | jobs | submit login

I think the main issue is that even though "knowledge representation" with ontologies is an enticing goal, it's simply a fact that real entities, as used by humans at a practical level, don't map neatly onto mathematically-sound hierarchies.. . To see this, just look at the arguments the ancient Greeks already had as to whether a human is a "two-legged featherless animal" or the endless online arguments as to whether a "circle is an ellipse" or vice versa.

Because of this, there's just not much utility in taking the time to generate semantic markup- it'll be sloppy and incomplete even when done by a PhD student specializing in this subject.




I suppose you're talking about OWL. The thing is most programmers look at OWL, see the words class and property and immediately think that it's OOP, that they don't have to look more into it and it has the same problems.

But OWL is not based on OOP, it's based on Description Logic, which is a much more powerful abstraction than OOP and it let's you easily represent things which are very hard with something like Java. OWL includes the concept of complex class, in which you define the logical constraints of the class and then it is inferred automatically by a reasoner. This means that you can build really complex multidimensional hierarchies pretty easily.

For example, you can solve the circle/ellipse this way: the class circle is a complex class which is the intersection of the class ellipse and the class of two dimensional geometric shapes in which both major and minor axis have the same length. Any object that satisfies those constraints is a circle!

About the greek problem: you have to declare that the human class and the complex class which results from the intersection of the class two-legged animal and featherless animal are equivalent. It means that every human is two-legged featherless animal and viceversa.

You can even declare equivalences between ontologies, which lets you build conceptual bridges.

OWL has problems related with the maturity and performance of its implementations, and it remains to be seen if it's possible to treat the web as a gigantic Prolog program, but its conceptual model is powerful and sound.


But RDF was pretty good with that, because it didn't force records into hierarchies. You could just define relationships, and then create them freely between records. Some people created heavy ontologies, but it wasn't a result of the data model.


Right, but the whole dream of the "semantic web" to me was that one website could discuss red wines, and another website could discuss Vietnamese food, and then a reader could use the semantic vocabulary shared between the two sites to arbitrarily ask questions such as "what wine will go best with this dish?"

If you just have a vocabulary where everyone can freely define concepts and their relationships in a fuzzy way this original goal will never be tractable- There needs to be some sort of unambiguous shared concept space between disparate sites (which in my estimation appears to not be achievable in any practical sense, due to the difficulty in finding "one true way" to build ontologies.)


Right, the vocabularies were supposed to be reused as much as possible, but that doesn't require heavy hierarchies, just that they were available. A single record could have facts/relationships defined by any number of ontologies, so they didn't have to be all-encompassing either.

Also, I think there were ways to "map" different ontologies, thought I never really explored that.


Then you have the whole adversarial network aspect. People will intentionally pollute the category system for purposes of advertising, propaganda, jokes, etc. Google bombing is basically a kind of semantic hijacking that happens already and we don't even have a semantic web.

The test for any proposed Internet standard or system should be "what happens when 4chan hears about it?" I don't see semantic web ideas taking off outside of closed forums and walled gardens like academic research or the military. On the public Internet you'll rapidly end up with Donald Trump mapping to "small penis," etc.


> don't map neatly onto mathematically-sound hierarchies.

I think they do, but finding the right mathematical model is very difficult. If it were easy, everyone would be a mathematics PhD.

Learning to program is becoming efficient at recognizing the right spherical cow in any given situation, because such shortcuts are essential to getting shit done.


I think you'd change your tune (like I did) once you dig into the ugly details of such mathematical modeling. A book like this will show you just how hard this is https://www.amazon.com/Knowledge-Representation-Reasoning-Ar...


I recognize it's difficult since I literally said that. But programming is simplified mathematical modelling of a sort (for instance, via Curry-Howard), hence my "spherical cow".


Are viruses alive?

(To pick one question where something doesn't map onto a hierarchy simply)


Precisely define "alive" and you'll have your answer.


There's a difference between correct ontologies and the ones humans use, however. We may succeed at mapping all domains effectively, but in order to get people to use those maps, you would have to convince people that a pop tart is a kind of ravioli.


I disagree. It all boils down to the way we use language - words have meanings, but those meanings are just pretty fuzzy boundaries in conceptspace. It seems that words represent concrete things from a distance, but if you look closely, it all breaks down. Hell, the meaning of words also heavily depends on context in communication, so they can paint barely overlapping borders in conceptspace from one conversation to another.

Programming is actually great for discovering this. Especially OOP, with its introductory examples of animal taxonomy and shapes.


I'm not sure that you disagreed with anything I said.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: