A user is describing a task to be performed by some company:
I want to move 10 boxes (30x40x50cm) of books and clothes from London to Bristol next week. How much would that cost?
Based on this description, a library/algorithm classifies this as a task probably for removal/transportation company operating preferably in UK. Based on that guess an application queries some search engine for companies belonging the guessed category (e.g., Google maps).
Are there libraries/algorithms that makes such kind of text categorization? I assume the taxonomy of service categories (transportation, translation, etc.) is given by me.
What would be prerequisites? I would prefer already trained algorithm (as I do not have a corpus of categorized task descriptions) or unsupervised one (that does not require such a corpus).
Evaluated candidate solutions
Identify to which WordNet Domain words in description belong and find prevalent one. Map manually WordNetDomains to company categories and use this mapping to find category of the task.
uClassify, but my task has been classified as "Home (62.7 %)", "Games" (15.1 %), and "Arts" (13.2 %).
Textimate.me classified it as "Science & Environment"
Textwise returned "Business/Consumer_Goods" and "Services/Clothing Arts/Design/Fashion",
The results are rather discouraging. I think the services I tried have the taxonomy close to what I would use, but the text I submit for classification is very short and there is no way for the algorithm to differentiate what is more important for the user: boxes, clothes or maybe moving them? I think a good heuristics for service category could be to focus on verbs rather than nouns, and on places (London/Bristol) in case of area identification.
Still, I believe the only situation here would be to collect a corpus of such tasks and their categories from some online place (where people looks for suppliers to perform such task for them) and machine learn on that. Anyone tried?