--- On Tue, 9/30/08, YKY (Yan King Yin) <[EMAIL PROTECTED]> wrote: > On Tue, Sep 30, 2008 at 6:43 AM, Ben Goertzel > <[EMAIL PROTECTED]> wrote: > > > >> We are talking about 2 things: > >> 1. Using an "ad hoc" parser to translate NL to logic > >> 2. Using an AGI to parse NL > > > > I'm not sure what you mean by "parse" in step 2 > > Sorry, to put it more accurately: > > #1 is using an "ad hoc" NLP subsystem to translate NL to logic
Cyc has been working on step #1 for the last 5 years. I don't think even they have any idea how much work is still needed. > #2 is building a language model entirely in the AGI's logical > language, thus reducing the language understanding & production > problems to inference problems. Which also allows > life-long learning of language in the AGI. > > I think #2 is not that hard. Think again. Step #2 is exactly the same as repeating step #1 except in a different specification format. Both steps have the flaw that there is no provision for language learning. This requires constant maintenance by users who understands the formal system. It will break every time it encounters a word, phrase, or grammatical structure that is new or is used in a novel way. A language model has 10^9 bits of complexity. That is a lot of updates. Your approach separates language learning from knowledge base updates. Even if you are successful at translating natural language to formal language, you have only solved the second problem. We don't use natural language to describe the rules for using natural language. This is implicit knowledge. We can only describe a few hundred of the million or so grammar rules for English. Also, it is not possible to finish the product before delivery. A "common sense" model like Cyc is only half the job. An average adult has a vocabulary of 80,000 words, of which half are common words and the other half are proper nouns, most of which are not found in a dictionary. > The theoretical basis is already there. > Currently one of the mainstream methods to translate NL to logic, is > to use FOL + lambda calculus. Lambda expressions are used to > represent "partial" logical entities such as a verb phrase. No, the mainstream method of extracting knowledge from text (other than manually) is to ignore word order. In artificial languages, you have to parse a sentence before you can understand it. In natural language, you have to understand the sentence before you can parse it. I understand your objection to solving arithmetic and logic problems in an adaptive natural language model. A simple, fully connected neural representation would require about 10^9 bits of training and 10^18 operations to associate "2 + 2" with "4". Then it would take 10^9 operations to retrieve this knowledge with a 1% to 5% chance that the answer will be wrong. That is why we use calculators. But there is no way around requiring such massive computation to associate "I had $2 and was paid two more" with "2 + 2". -- Matt Mahoney, [EMAIL PROTECTED] ------------------------------------------- agi Archives: https://www.listbox.com/member/archive/303/=now RSS Feed: https://www.listbox.com/member/archive/rss/303/ Modify Your Subscription: https://www.listbox.com/member/?member_id=8660244&id_secret=114414975-3c8e69 Powered by Listbox: http://www.listbox.com