Chapter 2. Random Hacks

Table of Contents
Automatic Classification of Software Using Folksonomy
QUAC (Question Answering Component)
(Trivial) Self-Directed Goal Setting
Dream Analysis
CLEAR
Deidentifying Personal Information
Recording Emacs Sessions
Code Monkey
Manually Classifying UniLang Entries
Finding Words That Fit Syntactic and Semantic Constraints
Comprehensive Software Ontology
Book Scanner
Bus Route Planning
Meal Planning
FreeKBS
APIs for Many Systems
Defining Never Before Seen Words in Text
An Exercise Manager
Automatic Processing of Email
Subsystems Listing
A Functionality Classifier
Multiagent System with Automatic Message Routing
Language Translation and Semantic Markup Web Proxy
Apartment Finder

Automatic Classification of Software Using Folksonomy

Per John Quigley's suggestion, Folksonomy takes a tag system, that is a bunch of tags, and learns a relationship between project descriptions and the tags, so that you can tag arbitrary projects based on just their description. So far, it just uses the Debian debtags tag system, but it is trivial to implement for Sourceforge as well as Freshmeat tags. The dataset is the datamart from the Flossmole project, plus the output of an `apt-cache search -f .`


	  ./query-tool.pl tagsearch .
	  ./query-tool.pl search "works-with::image:vector"
	
The program needs to be cleaned up and given to the Debtags people. The models take a long time to learn and use the AI::Categorizer::Learner::SVM perl module.