No offense, but I'd like to share with you that I think people with a project aimed at true intelligence don't have the proper goals in mind if they start out with text processing.
I hear what you are saying. The problem is that if do it "the right way", we would need to put in A LOT of development time. And even if we manage to create something that exhibits a good level of intelligence (but is unable to demonstrate it, quickly, to an uneducated audience), getting funding for its continued development would be tricky.
I have read some of your threads and if memory serves me correct, you are using a system of ascii codes (correct me if I'm wrong) to in effect represent various objects. Yes this could and probably will work, if you spend masses and masses of time on it. However, what you create will lack the wow factor without uploading your software into a robot.
What my AI project aims to deal with is language processing only (initially), In the future, if we can crack the language processing, then we can deal with things such as the identification of objects (which is something very difficult), after we get funding. To go straight in at the deep end to produce something so mind-blowingly advanced is VERY ambitious and my own mind isn't advanced enough (at this stage anyway), to produce something like that.
My belief is to work on the simple stuff first. For me, the language processing algorithms are easier to produce than algorithms which are able to recognise/process "everything" (including verbal and non-verbal communication).
Language processing also has the "wow" factor and easy to demonstrate on a cheap (ish) laptop.
For instance, the first acts of people after they are born are not language. For us language is a learned ability. We have to be intelligent before we learn language.
I do agree with what you are saying, but to produce an AI which is truly intelligent in the sense that it is capable of understanding "everything" would be too difficult for a small group of people to produce. My belief is that the best way forward is to deal with one area at a time. We then get some recognition/interest/funding/help and start work on a more difficult area. In this way we start with the easiest first and do the most difficult modules last.
I think the object oriented paradigm can help you conceptualize your problem. In the object oriented paradigm data are treated as objects with attributes and methods. An object's attributes are values unique to that object, and its methods are functions that can be called to produce a certain result.
The data can be any set of data. In our case it will be a real life object's attributes as labeled by word. In this specific instance the object is the user and the user's eye is an attribute of the user. Color is an attribute of eye. Color will equal some value.
#Python 3.1
#New user accesses the system.
#User informs a.i. that his or her eyes are blue.
class User(object):
def __init__(self):
self.eye1 = Eye()
self.eye2 = Eye()
class Eye(object):
def __init__(self, color=None):
self.color = color
current_user = User()
current_user.eye1.color = 'blue'
current_user.eye2.color = 'blue'
#User queries a.i. for his or her eye color.
print(current_user.eye1.color)
Not a very flexible system, but when you are referring to objects and their related attributes in programming you should use a similar system.
It is not flexible and it would be nigh on impossible to create those sorts of classes/modules for every conceivable object on the planet. Some form of generalisation must happen. I have dealt with this (as far as language is concerned), by using (what I call) generic objects/fields. It is the up to the algorithm, during the retrieval process, to decipher whether those words relate in any way, to the current conversation.
P.S. Wikipedia is not a well respected site. I don't respect it. Others don't as well.
What I like about Wikipedia, is that for the most part, there are no spelling mistakes and level of grammar is acceptable. I could choose to have AI read some other website, but then the problem of poor grammar and spelling may come in to play. The idea is that the AI must be fed proper sentences and words (no spelling mistakes). AI constructs sentences strictly according to the manner in which sentences are input, in the first place.
For example. In the English language, the words 'a' and 'the' can never follow one another. By giving AI correct input, Ai will learn to never use those 2 words, in the same sentence, following one another.
If you feel there are other websites which have good level of grammar and offer good "reading" for an AI, then by all means, tell me. I'm always on the look out.