Is it possible to build thesaurus by simply analyzing lots of text, or it's obligatory should be handmade?
Also a question: is there free-to-download&use English language thesaurus?
Is it possible to build thesaurus by simply analyzing lots of text, or it's obligatory should be handmade?
Also a question: is there free-to-download&use English language thesaurus?
Off the top of my head there's WordNet (Online interface, Download), which is also used by NLTK.
I've got no idea how you'd go about making a thesaurus without human intervention. Maybe if you had a thesaurus in language A and a machine translation program trained to translate between language A and language B, it is conceivable that you could use that to get a thesaurus for language B (though of doubtful quality, of course).
I second the WordNet answer; I've automatically generated synsets from it for a project where I was attempting to typify lexical (semantic) distance.
As for a great thesaurus, especially if you're a developer, check out wordnik.
If you're aim is to create a Thesaurus for a minority language or a language for which there is not already a large dictionary and/or text corpus, you would probably be well served by using the "Rapid Word Collection" approach in conjunction with software such as WeSay and/or FieldWorks Language Explorer (FLEx).
You can also automate this using Elasticsearch with a decent set of documents. For example, see arxlive, which followed the method described in part 1 of this blog.