Tuesday, December 21, 2004

Differences between Monster.com and Intellectual Job Search

There would be 2 major differences.
In short:
1) Differences in search -- it would provide smoother search.
2) Differences in data input - it would be much easier to enter resumes / job descriptions.


Now let's consider these differences in more details:
1) Differences in search
1.1. Every keyword would have weight. Compare it with current situation when keywords are just yes/no criteria in a filter.
1.2. Weight of every keyword (or phrase) would be evaluated automatically, based on user preferences (what resume does user like/dislike).
1.3. User will see all position sorted by user's preferences.
1.4. Every time when user reads the description - user would evaluate it (very short - "I don't like it" / "so-so" / "I like it". This evaluation will be taken into account and applied to sort the rest of the positions.

2) Differences in data input.
2.1. Data entry would be highly automated. Instead of filling many fields into database user will just cut&paste the resume / JobDescription. Or even email it to database. The system will parse the resume/JobDescription and insert it into database in searchable format.
2.2. JobDescription would be automatically rated according to "search users" preferences.
E.g.: if there are 1000 search users, then new resume/JobDescription would get 1000 ratings.

Monday, June 28, 2004

Questions about any Would-Be AGI System

Questions about any Would-Be AGI System: "Questions about any Would-Be AGI System

Ben Goertzel
May 20, 2002


This question list is designed to aid in the comparative discussion and analysis of different approaches to Artificial General Intelligence (AGI).

It is in no sense complete, and it is certainly a bit biased toward my own AGI approaches and interests, in spite of my efforts to make it not too severely so. I hope that near-future revisions will be less biased in this way.

For this preliminary version, feedback is sought on the questions themselves. After the question list has been fleshed out through feedback from others, I will provide answers for my own Novamente AGI design, and try to get other AGI designers to give their own answers.

I am less interested in reactions of the form �This or that question is not relevant to my AGI system� and more interested in reactions of the form �You left out this question, which is very important for my AGI system.� I assume that not all questions will be relevant to all AGI systems.



Knowledge Representation

How are the following represented?

Concepts
Relationships between concepts
Quantified relationships (e.g. �Every boy loves a girl�, �Every boy has a dog that every girl likes to call by some special pet name�)
Procedures
Percepts
Thoughts (considered as temporary mental phenomena, actively evolving and not committed to memory)
Beliefs about named concepts
Beliefs about unnamed concepts
Beliefs about procedures
The degree/strength/certainty of a belief
Hypothetical knowledge (�Pei believes the Earth is flat�)
Contextual knowledge (�At parties, she is cute.�)


Attention Allocation
"

The Semi-Embodied Mind

The Semi-Embodied Mind
Post-Embodied AI



On the Integration of Embodied and Unembodied Approaches

to Artificial General Intelligence





Ben Goertzel

June 6, 2004

The life of Helen Keller

The life of Helen Keller
The life of Helen Keller
Summary: About the life of Helen Keller, the deafblind woman who became a role model for millions of people

The life of Helen Keller

Helen falls ill
Anne Sullivan
Helen meets Anne
The Frost King
Helen enters Radcliffe College
Helen tours the World
The Miracle Worker
Helen retires from public life
Helen’s legacy

The Story of My Life by deaf blind Helen Keller

The Story of My Life

Sunday, June 27, 2004

Ai Research - Creating a new form of life - About Ai

Ai Research - Creating a new form of life - About Ai
Located in one of the largest mansions in Israel, our research institute is the ultimate "digital day care," the ideal place to raise our child machine from infancy to adulthood, teaching him to interpret and respond to ordinary conversation.

Ai Research is headed by Jack Dunietz, a 23-year veteran of the technology industry, who has established several successful publicly traded firms. The Ai team consists of scientists, researchers, engineers, and language specialists. All work together to nurture Ai's child machine, and to ensure that it will successfully pass the Turing Test within the next 10 years.

Thursday, May 27, 2004

Super-goals and sub-goals discussion

Fumbling Towards the Meaning of Life: "jamesr at best.com"

AI - The Mind Revolution --- George71's site

AI history - The Mind Revolution: "General Problem Solver "

AI basic Design

Design
----------
The design of brains requires that we know what a brain is.
Nature -> Sensors -> Brain -> Motors -> Nature
is the flow diagram for everything that has a brain.
----------

Wednesday, May 19, 2004

Betterhumans > The Age of Purposeful Machines

Betterhumans > The Age of Purposeful Machines
Patrick Bailey has ideas which are similar with my ideas about hardcoded goals
I think I need to rename my hardcoded goals into Super-goals.

Monday, May 10, 2004

Monday, May 03, 2004

JAIR - Journal of Artificial Intelligence Research --- FAQ

JAIR - Some Frequently Asked Questions

AI Access Foundation, Inc.

AI Access Foundation, Inc.

Converting HTML to Text

Converting HTML to Text

private void Page_Load(object sender, System.EventArgs e)
{
Response.Write(StripTags("<b>Test</b>"));
}
/// <summary>
/// Removes tags from passed HTML
/// </summary>
/// <param name="HTML">Incoming HTML string</param>
/// <returns>Stripped text without HTML tags</returns>
string StripTags(string HTML)
{
return System.Text.RegularExpressions.Regex.Replace(HTML, "<[^>]*>", "");
}

Rex Swain's HTTP Viewer

Rex Swain's HTTP Viewer

Monday, March 29, 2004

Parent-Child relation --- useless?

It seems that Parent-Child relations should not be implemented in the core of PCnous.
It seems that Reason-Consequence relations are good enough for keeping all relationships between concepts.
Sibling (synonyms) search can be accomplished any time when it's necessary. Sibling search can be accomplished based on reason-consequence relations (cause-effect relations).

Reader prototype: Current status

Implemented:
1) Find statement in the text.
2) FindWords in a statement (and add them to WordDictionary).
3) FindPhrases in a statment (and add them to PhraseDictionary).
4) FindTextPairs (and add them to TextPairDictionary).

Not implemented:
1) Short memory.
2) Merge Method (which merges the Short Memory and the Main Memory)
3) Reason-Consequence relations
5) Forgetting process.
6) HTML parser/reader which will allow to find and to read big amount of information.

Monday, March 22, 2004

Why does Chatter need for TextPairs?

Question: What are TextPairs for? I read text pairs description and do not understand why you divide a sentence in such a way.

Answer:
I divide a sentence into: words and phrases.

But in order to remember "how correct natural language sentence looks like" I also
remember typical text pairs.

Text pairs are like the links in the chain.

TextPair table will help TextWriter to build sentence in a correct
way.

Please, ask me more if it is not clear.

Text pairs

For 3 words sentence there will be 6 text concepts.
3 words and 3 phrases.

3 TextPairs will be found:
word1 -> word2
word1 -> phrase2
word2 -> word3



For 10-words sentence there will be
10 words
9 two-word phrases
8 three-word phrases
7 four-word phrases
6 five-word phrases
(I don't consider phrases longer than 5 words)
=====================
Total: 40 Text copcepts in the TextConcept collection

There will be maximum 5 text concepts with the same "StartingPosition" key.

TextPairs search

Well, here is the task:

Sentence consists of words.
For instance, "Word1 word2 word3".
Words are grouped by phrases.
For example:
phrase1 = "Word1 word2"
phrase2 = "Word2 word3"
phrase3 = "Word1 word2 word3"

I consider both words and phrases as
text concepts.

Every text concept has a "start position" and an "next position".

I'm going to use "start position" as the key for text concept in the
collection.

As you can see, text concept "word2" has start position = 2
Text concept "phrase2" has start position = 2. That is the same with
"word2". That means duplication.

Original task is to find all text pairs in the specified sentence.

Any suggestions?

Monday, March 22, 2004, 10:54:33 AM, you wrote:

AIR> There is no type in .NET that can have multiple values with the same key.
AIR> But you can write your own class derived from DictionaryBase. There is an
AIR> example in MSDN how to do this. If you tell me more about your task and
AIR> conditions (how many items you expect to store and how many of them are
AIR> stored with the same key) I can help you to write this class :)

Dictionary base example (MSDN)

Dictionary base example

Tuesday, February 10, 2004

Reader implementation --- Pick out statement

1) Read first "InputTextBufferLengthMax" characters
InputTextBufferLengthMax = 300 characters

2) Try to find "EndOfStatement".
EndOfStatement: "." (point) with following " " (space) or <CR>.

3) If "EndOfStatement" was found within "InputTextBufferLengthMax" characters then
InputTextBufferCurrentEnd = position of EndOfStatement + 1 (or + 2 if is "." is followed by " ").
InputTextNextStartPosition = InputTextBufferCurrentEnd
Continue parsing on deeper level (ParseStatement).

4) Otherwise (if EndOfStatement wasn't found) then consider ";" (semicolon) with following " " (space) or as EndOfStatement. Repeat EndOfStatement search.

5) If EndOfStatement wasn't found still: consider " -" (space with dash) as EndOfStatement. Repeat EndOfStatement search.

6) If EndOfStatement wasn't found still: consider "," (comma) with following " " (space) or as EndOfStatement. Repeat EndOfStatement search.

7) Consider "[", "]", "(", ")" as EndOfStatement.
8) Consider "." (Comma without following space) as EndOfStatement.

9) Consider " " as EndOfStatement.

10) Consider any special character (not char not digit) as EndOfStatement.

11) Consider any digit as EndOfStatement.
12) Consider any capitalized character as EndOfStatement.

13) Complain about bad quality of text. Consider any character as EndOfStatement.

When to merge Short Memory and Main Memory?

Every "ShortMainMemoryMergePeriod" of time --- Short Memory is merged with Main Memory.
Let "ShortMainMemoryMergePeriod" = 3 minutes.

If a neuron wasn't updated during "ShortMainMemoryMergePeriod" then "ShortMemoryNeuronStagnationCounter" is increased.
If "ShortMemoryNeuronStagnationCounter" grew up to "ShortMemoryNeuronStagnationCounterDestroyLevel" then the Neuron is removed from the Short Memory.

"ShortMemoryNeuronStagnationCounterDestroyLevel" = 5

Reader implementation --- Parse statement

1) Separate statement into words. Separator: any (non-letter and non-digit): " ", ".", "'", "/".
2) Save each word into WordDictionary if the word doesn't exist there still.
Any special character is considered as separate word.
Space (" ") is considered as nothing (no word).
3) At this point we have list of words. Each word is represented by NeuronId.
4) Try to find phrases in the word list
Let MaxQuantityOfWordsInPhrase = 5
The Statement Parser should try to separate find out phrases.
Let we have Statement ABCDEFG, where "A", "B", "C", "D", "E", "F", "G" are words.
Then the Parser should create phrases:
A
AB
ABC
ABCD
ABCDE
B
BC
BCD
DCDE
DCDEF
C
CD
CDE
CDEF
CDEFG
D
DE
DEF
DEFG
E
EF
EFG
F
FG
G

If initial Strength of "A" is NewSingleWordPhraseStrength then
Strength of "AB", "EF", and "FG" will be 2 * NewSingleWordPhraseStrength
Strength of "ABC", "EFG", and "CDE" will be 3 * NewSingleWordPhraseStrength
That is proportional to the quantity of words in the phrase.

********) At the end of Paragraph:
Try to find out "EndOfParagraph".
EndOfParagraph: <CR> (^P), <BR>(?).
End of paragraph should cause additional ShortMemoryForgettingProcess.

Tuesday, February 03, 2004

Reader prototype core code

Reader
TextToParse.Parse(string SourceText);
sourceText = SourceText

Do while (!EndOfText)
{
SentenceToParse = TextToParse.GetNextSentence();
CurrentWordList = SentenceToParse.SearchWords();
CurrentPhraseList = SentenceToParse.SearchPhrases(CurrentWordList);
CurrentTextUnitList = MergeWordAndPhraseList(CurrentWordList, CurrentPhraseList)
TextPairList = SearchPairs(CurrentTextUnitList);
TextPairList.SaveToDB();

ReasonConsequenceRelationsList = SearchReasonConsequenceRelations(CurrentTextUnitList);
ShortMemory.Add(CurrentTextUnitList); // Partially clean old items out of ShortMemory; Add new items from CurrentTextUnitList to the ShortMemory
ShortMemory.ImproveReasonConsequenceRelations();
ShortMemory.SaveToTheMainMemory();
}

Sunday, January 25, 2004

Reason-Consequence graph

I added new article to the site:
Reason-Consequence graph
It gives you idea how reason-consequences relations look like in the AI main memory.

Saturday, January 03, 2004

Text Pairs

Text Pairs - how to order words and phrases within text clause.