I have an application that tracks people making mentions of various topics. We've used a Bayes algorithm to do some simple classification (users give a thumbs up/thumbs down) to pick the people that they believe are the best fit for their project.

Our intention was to use this data to help us sort and order the influencers based on "fit" to the customer's needs.

However, we've got some trained data, and now all we can do is say are they similar to the "thumbs up" group, or the "thumbs down" group.

What algorithm should we have used for this instead?

Basically, the ideal is to have a score.. and the biggest, smallest based on the trained data is the one that gets shown first.


Even better if its in Ruby.


1 Answer 1


Check out term frequency-inverse document frequency (TF-IDF), if you're parsing large chunks of text for mentioned topics. The metric measures importance of topics bounded by how often they appear across a corpus of documents, which helps to weed out topics that may be very common, but are very common to all discussions, and therefore not very useful.

It's a simple calculation, but there is a ruby gem that calculates it directly: tf-idf-similarity.

Hope this helps.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.