Start with an easy one. Given only part of a face, recognize it as a face.
-- define the features of a face: sa: |body part: face> => 2|eyes> + |nose> + 2|ears> + 2|lips> + |hair> -- even if we only have a couple of pieces of the face, we can still recognize it as a face sa: active-buffer[7,0] (2|eyes> + |nose>) 0.750|body part: face> -- again, hair, nose and lips is enough to say we have a face: sa: active-buffer[7,0] (|hair> + |nose> + |lips>) 1.625|body part: face> -- this time we see all parts of the face: sa: active-buffer[7,0] (2|eyes> + |nose> + 2|ears> + 2|lips> + |hair>) 7.125|body part: face>Given some knowledge of internet acronyms, interpret a sentence full of them:
-- load some data: sa: load internet-acronyms.sw -- read a short sentence: sa: read |text: fwiw I think it is all fud imho, lol. thx.> |word: fwiw> + |word: i> + |word: think> + |word: it> + |word: is> + |word: all> + |word: fud> + |word: imho> + |word: lol> + |word: thx> -- apply active buffer to this: sa: active-buffer[7,0] read |text: fwiw I think it is all fud imho, lol. thx.> 2.593|phrase: For What It's Worth> + 6.038|phrase: Fear, Uncertainty, Doubt> + 5.279|phrase: In My Humble Opinion> + 4.186|phrase: Laughing Out Loud> + 2.593|phrase: Thanks>The breakfast menu example:
sa: load next-breakfast-menu.sw sa: description |food: Homestyle Breakfast> |text: "Two eggs, bacon or sausage, toast, and our ever-popular hash browns"> -- read the description for Homestyle Breakfast sa: read description |food: Homestyle Breakfast> |word: two> + |word: eggs> + |word: bacon> + |word: or> + |word: sausage> + |word: toast> + |word: and> + |word: our> + |word: ever-popular> + |word: hash> + |word: browns> -- apply active-buffer to this: sa: active-buffer[7,1] read description |food: Homestyle Breakfast> |number: 2> + |food: eggs> + |food: bacon> + |food: sausage> + |food: toast> + |food: hash browns>The Fred/Mary/pregnancy example:
-- first load up some knowledge: sa: |person: Fred Smith> => |word: fred> + |word: freddie> + |word: simth> + |word: smithie> -- various names and nick-names sa: |person: Mary> => |word: mazza> -- just a nick-name sa: |greeting: Hey!> => |word: hey> sa: |question: what is> => |word: what's> sa: |direction: up> => |word: up> sa: |phrase: having a baby> => read |text: having a baby> sa: |phrase: in the family way> => read |text: in the family way> sa: |phrase: up the duff> => read |text: up the duff> sa: |phrase: with child> => read |text: with child> sa: |concept: pregnancy> => |phrase: having a baby> + |phrase: in the family way> + |phrase: up the duff> + |phrase: with child> -- now start playing with it: sa: active-buffer[7,0] read |text: Hey Freddie what's up?> 2.083|greeting: Hey!> + 1.500|person: Fred Smith> + 2.917|question: what is> + 2.083|direction: up> + 1.250|phrase: up the duff> -- up the duff is in there because of the word "up" -- now test phrase matching a concept, in this case phrases that mean pregnant. sa: active-buffer[7,0] read |text: Hey Mazza, you with child, up the duff, in the family way, having a baby?> 2.593|greeting: Hey!> + 4.186|person: Mary> + 11.586|phrase: with child> + 6.857|direction: up> + 23.414|phrase: up the duff> + 25.000|phrase: in the family way> + 9.224|phrase: having a baby> -- one more layer of active-buffer: sa: active-buffer[7,0] active-buffer[7,0] read |text: Hey Mazza, you with child, up the duff, in the family way, having a baby?> 11.069|concept: pregnancy>Some notes:
1) this code goes some way towards a computer understanding what it is "reading", if you can say a computer can read.
No comments:
Post a Comment