On Wed, Apr 19, 2017 at 12:23 AM, Daniel Gross <[email protected]> wrote:
> Hi Linas, > > How do you propose to learn an ontology from the data -- > The simplest approach is to simply read english-langage sentences that encode an ontology: for example, an early version of MIT ConceptNet contained the sentence "a violin is an instrument". This is really quite striaght-forward to ingest into your favorite internal format. More complex sentences require more sophistication. > also, what purpose would, in your opinion, the learned ontology serve. > I dunno. You could ask questions, like "what is an instrument?" and it could respond "violin, thermometer". People seem to think that "semantic triples" e.g. the triplestore are useful. what do they get used for? > Or stated differently, in what way are you thinking to engender > higher-level cognitive capabilities via machine learned bundled neuron (and > implicit ontologies, perhaps). > Myself, I envision something more sophisticated than the above; but the above is an OK starting point. FWIW, some 5-6 years ago, there was a version of opencog that was able to read conceptnet and did answer the above question in the above manner. It was never attached to any reasoning system. But still it was entertaining and instructive to build. Kind of like a big homework exercise: I learned a lot, but its not really "useful" in the real world. the current "homework exercise" for opencog is to learn by reading, use reasoning on the learned content, be aware of external-world object/events, and use attention allocation to control generated verbal responses. This seems doable, and we are assembling this system now. The next-level homework exercise, after this, have not thought about it much. --linas --linas > > thank you, > > Daniel > > > On Wednesday, 19 April 2017 03:40:47 UTC+3, linas wrote: >> >> >> >> On Tue, Apr 18, 2017 at 3:22 PM, Alex <[email protected]> wrote: >> >>> Maybe we can solve the problem about modelling classes (and using OO and >>> UML notions for knowledge representation) with the following (pseudo)code >>> >>> - We can define ConceptNode "Object", that consists from the set or >>> properties and functions >>> >>> - We can require that any class e.g. Invoice is the inherited from the >>> Object: >>> IntensionalInheritanceLink >>> Invoice >>> Object >>> >>> - We can require that any more specifica class, e.g. VATInvoice is the >>> inherited from the more general class: >>> IntensionalInheritanceLink >>> VATInvoice >>> Invoice >>> >>> - We can require that any instance is inherited from the concrete class: >>> ExtensionalInheritanceLinks >>> invoice_no_2314 >>> VATInvoice >>> >> >> If you wish, you can do stuff like that. opencog per se is agnostic about >> how you do this, you can do it however you want. The proper way to do this >> is discussed in many places; for example here: >> https://en.wikipedia.org/wiki/Upper_ontology >> >> I'm not particularly excited about building ontologies by hand, its much >> more interesting (to me) to understand how they can be learned >> automatically, from raw data. >> >>> >>> But I don't know yet what can and what can not be the parent for >>> extensional and intensional inheritance. Can an entity be extensionally >>> inherited from the more complex object or it can be extensionally inherited >>> from empty set-placeholder only. When we introduce notion of set, then the >>> futher question always arise - does OpenCog make distinction between sets >>> and proper classes? >>> >> >> Why? This "distinction" only matters if you want to implement set theory. >> My pre-emptive strike to halt this train of thought is this: Why would you >> want to implement set theory, instead of, say, model theory or universal >> algebra, or category theory, or topos theory? why the heck would >> distinguishing a set-theoretical-set from a set-theoretical-proper-class >> matter? (which oh by the way is similar but not the same thing as a >> category-theoretic-proper-class...) >> >> You've got multiple ideas going here, at once: the best way to hand-craft >> some ontology; the best theoretical framework to do it in; the philosophy >> of knowledge representation in general... and, my personal favorite: how do >> I get the machine to do this automatically, without manual intervention? >> >> >>> >>> There is second problem as well - there is only one - mixed >>> InheritanceLink. One can use SubsetLink for the extensional inheritance >>> (still it feels strange), but there is certainly necessary syntactic sugar >>> for intensional inheritance, because it is hard to write and read >>> SubsetLink of property sets again and again ( >>> http://wiki.opencog.org/w/InheritanceLink). >>> >> >> If the machine has learned an ontology with a million subset links in it, >> no human being is ever going to read or want to read that network. It'll be >> like looking at a bundle of neurons: the best you can do is say "oh wow, a >> bundle of neurons!" >> >> --linas >> >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "opencog" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To post to this group, send email to [email protected]. >>> Visit this group at https://groups.google.com/group/opencog. >>> To view this discussion on the web visit https://groups.google.com/d/ms >>> gid/opencog/a6d0102e-9ca1-4204-8dd4-75a9fb2ec06b%40googlegroups.com >>> <https://groups.google.com/d/msgid/opencog/a6d0102e-9ca1-4204-8dd4-75a9fb2ec06b%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- You received this message because you are subscribed to the Google Groups "opencog" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/opencog. To view this discussion on the web visit https://groups.google.com/d/msgid/opencog/CAHrUA37d6mOhpG3LZ0deYR9uSHEsw5Exm-7KuVLqFXnu7KZvvw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
