LDA-Based Topic Modelling in Javascript: An Update

I’ve just pushed a Javascript version of LDA on my github account. It’s based on my no-longer-functioning earlier work. For testing, I use a subset of the SMS Spam Corpus available here (and thus take no responsibility of the inappropriateness of the text within :) ). Each topic is represented as a word cloud; the larger a word, the more weight it has in the topic. The source sentences are displayed again with a bar which shows the percentage distribution of topics for that sentence. Hovering on each area in the bar would show you the words in the topic. You can of course replace it with any other text, change the number of topics using the slider, and press the ‘Analyse’ button to see it work.

Click here (or on the image below) to startlda.js

Do something this summer!

image

The semester is ending and I am getting lots of emails from my students on how to get the most out of the summer break. So here’s a little list, in no particular order, (which I might keep on expanding later on) outlining some of the things that might make your summer productive.

  1. Make a study group: Find some fellow thetas, pick up a tough, interesting book (Knuth anyone?), distribute chapters/topics and teach each other. With the right people, it can not only lead to much geekish fun, but will also help you in the coming semesters (and for the rest of your life)
  2. Enroll in an online course: Interested in finding out Archaeology’s Dirty Little Secrets? Want to learn about developing innovative ideas for startups? Register yourself in one (or more) of those free online courses which are offered at  websites such as Udacity and Coursera. Most of the content is awesome and you can most definitely find a course of two no matter what your interests are.
  3. imageMake a game: Yes, a proper computer game. Like those arcade things that you (used to?) play in childhood. Pac-Man, Qix, Ludo, Chess… You can find lots of tutorials and course online (see point 2). Challenge yourself and make a game for your cell phone. You know enough programming to do that. All you need is a platform and a good idea!
  4. Finish a reading list: Find a book list (or two) and read all those books! The library is your friend (and so are Galaxy, Variety and Readings bookstores)
  5. Write something: Start with a sentence. Do it multiple times. Make a paragraph. Do THAT multiple times. Make it a short story. Blow it up into a novel. People write novels in one month, you have two!
  6. Do an Internship: Call that uncle (your daddy’s friend) or the bhai jaan (your brother’s friend) who have their own shops/software houses/ factories. Ask them for an internship. Work for a few weeks and see how the world REALLY functions. It will be one of the best lessons you’ll ever have. (Keep watching the university notice board for opportunities)
  7. imageMake some money online: If you are really good at something, there might be people out there who are willing to pay you to work for them online. Find your niche and earn some gadget money!
  8. Catchup on programming: So you barely passed your programming course? Well that is over now and it’s probably time to catch up and really learn something yourself by doing some small projects out there. It just might prepare you well enough for the next semester! Who knows!
  9. Take a hike, Literally: Do not, (and I repeat, do NOT) miss out the small excursion trips arranged by the university. Or if you don’t like their destination, arrange one yourself. Nothing freshens up the mind more than going to the mountains for a week or two and walking your worries off. image
  10. Learn an instrument: Anything you always wanted to learn! Oh and coursera has a guitar class going on these days.
  11. Start a sport: You don’t have to be really good to play a sport. So what if you can’t hit a yorker or dribble a basket ball without looking. Start doing it regularly and you’ll get good enough to really start enjoying it.
  12. Volunteer:  Find a good social cause. Volunteer for it. Or teach a working kid how to read/write. (Sadqa-e-jaaria)
  13. Learn a new language: Python? Even a kid can learn it and its fun too! Or you can be non-geeky and find a natural language to learn (German? French?). Learn while you can and you won’t regret it later (like I do).
  14. Make Art!: Even if you don’t know how to… Get inspired and start making your own stuff. Play around with Paint if you don’t want to get your hands dirty with acrylics and brushes. (All images in this post were created using MS Paint in 2-3 minutes)

By personal experience, I can guarantee that most of the things in this list can be done in parallel and can do wonders for your social life :)