Context: Finding company to do the job
The use case of an application I want to write is that a user will describe a task to be performed by some company, e.g.,
I want to move 10 boxes (30x40x50cm) of books and clothes from London to Bristol next week. How much would that cost?
and the application will find candidate companies that could do the task. In this case it would need to categorize the task as for removal/transportation companies.
Problem: incorrect categorization
I tried a number of online services for text categorization but results are discouraging. uClassify classified my text as "Home", "Games", and "Arts"; Textimate.me --- as "Science & Environment"; Textwise returned "Business/Consumer_Goods", "Services/Clothing", and "Arts/Design/Fashion".
The possible reasons for incorrect categorization:
- task description is very short and there is no evident characteristics in the text to differentiate what is more important for the user: boxes, clothes or maybe moving them,
- classifiers trained on other types of texts,
- classifiers trained with respect to a different taxonomy.
How would you tackle such a problem?
Potential solution: harvest domain-specific corpus
Since the problem is quite specific to my domain I think about using supervised machine learning algorithm, that would learn with respect to already categorized corpus of such tasks. The corpus can be harvested from sites with tasks already categorized by customers (variation of e-bay). I could also pre-process text before machine learning: extract only verbs ("move") and nouns originating from verbs ("translation"), as they denote what has to be done.
This requires quite a lof of work, so I'm curious whether this is the right direction.