What algorithm would you use to code a parrot?
Posted
by Phil H
on Stack Overflow
See other posts from Stack Overflow
or by Phil H
Published on 2010-05-11T11:22:33Z
Indexed on
2010/05/11
11:34 UTC
Read the original article
Hit count: 182
pattern-matching
A parrot learns the most commonly uttered words and phrases in its vicinity so it can repeat them at inappropriate moments. So how would you create a software version? Assuming it has access to a microphone and can record sound at will, how would you code it without requiring infinite resources?
The best I can imagine is to divide the stream using silences in the sound, and then use some pattern recognition to encode each one as a list of tokens, storing new ones as you meet them. Hashing the token sequences and counting occurrences in a database, you could build up a picture of the most frequently uttered phrases. But given the huge variety in phrases, how do you prevent this just becoming a huge list? And the sheer number of pairs to match would surely generate lot of false positives from the combinatorial nature of matching.
Would you use a neural net, since that's how a real parrot manages it? Or is there another, cleverer way of matching large-scale patterns in analogue data?
© Stack Overflow or respective owner