Exercise 26: Web queriesOctober 17, 2008
SummaryTo be useful, an in-house AI needs to be able to answer questions that involve getting data from the web.
At its base level, this will be handled as a linguistic transformation. For example:
| what temperature is it outside? -> temperature() |
|
A new mapping type called
Programs will be defined, which will associate function names with their implementations. For example:
| temperature -> Plato.Programs.Temperature.Query |
|
Optionally, a DLL name can be specified:
| temperature -> plato.dll: Plato.Programs.Temperature.Query |
|
Arguments can be specified as well:
| what's the current temperature in {city} ? -> city_temperature($1) |
|
| city_temperature -> Plato.Programs.Temperature.CityQuery |
|
All arguments are of type string and consist of the entity's ID. The function return value is also a string.
Implement the
Query and
CityQuery functions mentioned here.
Exercise 25: Alternatives to far-field ASROctober 17, 2008
SummaryAlthough far-field ASR may be an ideal component of an in-house AI, current technology doesn't afford it as an option. This exercise is to determine a viable alternative.
SolutionA wireless microphone is a viable alternative to far-field ASR.
A Bluetooth headset is a good option in terms of cost, non-intrusive design, and range of operation.
IBM research paper on far-field ASROctober 14, 2008
I came across
this research paper which was interesting to read through. The highlights were:
1. | The affirmation that far-field speech recognition is challenging. |
2. | A mentioned word-error-rate (WER) of around 60%! That would translate to a command-error-rate of < 10%. |
3. | Mention of microphone arrays. They appear to help, but not as much as one might hope. |
Here's
another paper.
older >>