Já existem projetos semelhantes, porém seria interessante uma solução um pouco modular, onde usuários pudessem escolher dicionários diferentes, bem como algoritmos também.
Exemplo: #caiunarede seria segmentado em [‘caiu’, ‘na’, ‘rede’].
Links uteis:
http://www.usna.edu/Users/cs/nchamber/courses/nlp/f12/labs/lab1.html
http://trec.nist.gov/pubs/trec20/papers/NEMIS_ISTI_CNR.microblog.update.pdf
http://www.cs.colorado.edu/~martin/csci5832/assignments_2/assignment-2-optional-proba.html