this project is Purpose AI , an open source project
How does computer process text,video,audio
(Purpose AI is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License;
Purpose AI is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; )
(DEC 21th 2015 Updated)
A, text , words
download some random chinese text by a offline browser , have
enough capacity ,more than 10GB ,in this demonstration
only have a few .(english text may been processed in same
way , need modify source code)
get every sentence ,get every single chinese , and the after
2 chinese and the after 3 chinese ...
in this demonstration , max number is 25 , store to memory ,
if it is repeated , the count plus 1 .
chinese word with 1 chinese ,its value is 5 .
chinese word with 2 chinese its value should more than chinese
word with 1 chinese's value plus chinese word with 1 chinese's
value , means >5+5 , in here it is 15 .
chinese word with 3 chinese its value should more than chinese
word with 2 chinese's value plus chinese word with 1 chinese's
value , means >5+15 ,in here it is 25 .
chinese word with 4 chinese its value should more than chinese
word with 3 chinese's value plus chinese word with 1 chinese's
value , and more than chinese word with 2 chinese's value plus
chinese word with 2 chinese's value , means >25+5 and >15+15 ,
in here it is 35 .
(chinese word with 3 chinese's value plus chinese word with 1 chinese's
value , should same with chinese word with 2 chinese's value plus
chinese word with 2 chinese's value )
chinese word with 5 chinese's value , for the same reason ,it is 45 .
more accurate formula is :
AI number:
total value formula
n1-- 5 ---- (starter) =5
n2--15 ---- n1+n1+5 =15
n3--25 ---- n2+n1+5 =25
n4--35 ---- n3+n1+5 =35
n5--45 ---- n4+n1+5 =45
separate every sentence with any possible chinese words , if a
string is repeated , it is word , it has many possible
result ,every word has its value , at last , choose the
sentence which has highest value . sum every word's value ,
choose the max value one .
separate all text .
so many text were separate to words , get all the words , it
is a word database .
separate all text again , this time not by repeat , by word
database .
all text were separate to words , get all the words, we have
a new word database ,new word database is quite different
with old word database .
(the last 2 step may repeat a few times)
this method's accuracy is 80%
examples:
(Windows XP/Vista/7 +MSYS +MINGW )
in 'Work_dir'
'download' directory is text download by offline browser .
run f3.bat (in 'Work_dir')(list directory)
run program in 'WebFind_b' (copy to 'Work_dir')(get text , erase html mark)
run program in 'Webfind39' (copy to 'Work_dir', include 'cb.txt' )(erase punctuation)
run program in 'Webfind4a' (copy to 'Work_dir')(erase empty line , repeated line)
run program in 'Webfind29e' (separate to words by repeate )
run program in 'WebFind23c'(g++) (copy to Work_dir ,run it in MSYS prompt )
(get all words ,generate word database)
run program in 'WebFind24b' (separate to words by word database )
run program in 'WebFind25c' (g++) (copy to Work_dir ,run it in MSYS prompt )
(get all words ,generate word database again )
(Mar 21th 2014 version added support to repeat times of words, and better algorithm )
(DEC 21th 2015 version changed AI Number,updated document,added bugfix and tools)
B text ,grammer(phrase)
separate sentence by word database , not only keep the highest
value one , also keep some lower value ones ,(highest one
separate sentence by a word with 3 chinese, lower ones may
separate sentence by a word with 2 chinese or a word with
1 chiness .) so there are many result , shorter sentence
have 30 result ,longer sentence may have 200 result .
this is more accurate .
save all the permutation and combination of words to memory ,
total load 5 files , 001-005 ,or 002-006 , repeated is
grammer(phrase) , every grammer(phrase) has its value ,
as AI number , one sentence choose highest value one .
separate all text .
get all grammer(phrase) , it is grammer(phrase) database .
separate all text by grammer(phrase) database .
get all grammer(phrase) , it is new grammer(phrase) database .
may be quite different with the old one .
(the last 2 steps may repeat a few times)
separate text not only by word database , also by grammer(phrase)
database , will be more accurate , estimate accuracy is 95% .
examples:
to get grammer(phrase) database need 1000 PCs .if you don't
have so many PCs,you can make courseware of grammer for
computer.
Windows XP/7 +MSYS +MINGW
source code in directory:
WebFind37c (gcc) (copy to Work_dir)
separate sentence by word database , not only keep the highest value one , also keep some lower
value ones ,
WebFind37_4b (g++) (copy to Work_dir with file grammer_start_number.txt,run it in MSYS prompt )
save all the permutation and combination of words to binary tree ,
repeated is grammer(phrase) ,one sentence choose highest value one .
WebFind37_6b (g++) (copy to Work_dir,run it in MSYS prompt)
get all grammer(phrase)
WebFind37_7b (g++) (copy to Work_dir,run it in MSYS prompt)
separate all text by grammer(phrase) database
WebFind37_8b (g++) (copy to Work_dir,run it in MSYS prompt)
get all grammer(phrase) again
(Mar 21th 2014 version added support to repeat times of grammers, repeat times of words, and better algorithm )
C,video
* video recognition need super computer , need high performance
* need video database
* may add one pixel's value by some simple condition ,physically
close ,similar color ,move to same direction , texture
similar , by those condition separate one picture to small,
different color pieces .
* those pieces may have many combination,select some combination
of similar physical location, or select some combination of
relatively independent movement.
* some combination maybe 'material scense' (you can see it in after ) ,
in photogragh , some combination maybe not , in most painting .
* add more conditions ,different brightness , other objects of the
block ,zoom , 3D rotation ,different proportion .
* compare with all objects in video database , the highest value one
is result .
* build video database can use computer process 1000 movies or 3000
TV programs , in different video clips, search for same
characteristics objects(a combination of color pieces in this
video clips and a combination of color pieces in that video
clips have similar shape or have similar characteristics),
repeated is a object , all those object means a video database ,
processe 1000 movies again (this time by video database),and
get objects again ,it is a new video database , I estimate this
is construction procedure .
* many objects's combination is a scenes , this is sandy beach ,this
is forest ,this is kitchen , this is office, if computer can
recognize these scenes , it is helpful for computer to recognize
objects .
* so , word ,grammer(phrase),video all have similiar process procedure .
D,audio
* need audio database ,store sound objects .
* build audio database can rely computer process 1000 movies or
3000 TV programs .
* audio is wave , is different freq , similiar freq ,or similiar
volume, or same time happend audio may add value .
*3d movies
at begining,compuer don't have video database,so we need 3d movie,like
human have 2 eyes,and like every animal with eyes ,we don't have
many 3d movies, and it is not fully 3d, it is 2.5d or 2.75d ,if
it is not good enough,we need 3d camera to record many 3d video .
* material scense
every surface has it's material sense
color
grain ,stripe
smoothness,roughness,particle size
reflective
transparency
Stereoscopic 3D surface texture
repeated feature,is a concept , a material sense ,including metal wood
plastic cloth paper glass water
*courseware for computer
we need many courseware for computer,like a mother teach her kids,
this is what and that is what .
*need accurate language to describe objects for computer
We need accurate language to describe objects for computer,IBM's
scientist say human's language is very not exact, same words
in this situation means this ,in that situation means that ,
computer can use accurate language, this will make least
mistakes ,it can be used in courseware.
(human in one second say 1 or 2 words, computer's connection may be 100Mbps) .
* the differance between courseware describe object and computer proccess
differant video clip to get object
focus vs disperse , fast vs slow ,simple vs complex ,some teach him vs learn
it by him self .
*make courseware by accurate language , computer compare this courseware
with other courseware ,slowly understand each concept's meaning .
* If courseware is not good enough, computer can ask question