Sunday, August 25, 2013

Things I learned while reading Programming Collective Intelligence.

I have been working through Programming Collective Intelligence over the last couple months. I have to say it's probably been one of the best learning experiences I have had in my years programming. Comparing to some of my previous technology stack / paradigm change experiences:
Muggle -> VB4
VB6 - > Java
 Java -> .Net
 Java -> iOS mobile / game development
This is the biggest, not so much just from the technology stack, but more purely due to the size and complexity of all things ML, AI. Not coming from a mathematical / statistical background, it's really quite a deep hole to jump into, and quite a challenge.

Not only did this book walk me through a bunch of machine learning and data analysis theory, it got me to learn Python and in translating to Java I also got introduced to a whole bunch on Java related tools and frameworks.

I created blog posts for chapters 2-8, and decided to just work through the Python for chapters 9, 10, 11 and 12, for 2 reasons;
1. Improve my Python
2. Get it done so I can move onto my new personal project, using all this ML and Python knowledge to create an cross platform application with a rich UI using either Kivy or QT.

To list some the ML / Data Analysis topics covered in PCI:

  • Classifiers 
  • Neural Networks
  • Clustering
  • Web crawlers 
  • Data indexers 
  • PageRank algorithm 
  • Genetic Algorithms
  • Simulated Annealing
  • K-Nearest Neighbours
  • Bayesian filtering
  • Decision trees 
  • Support vector machines
  • Kernel Methods
  • Linear Regression
  • Evolving intelligence 

The Java tools, libs and frameworks investigated:

Python tools, libs and resources discovered:


  1. Programming has always been my passion right from when i was done with my A levels. This article is so great and i am happy you have decided to share with us. Keep up the good job as we expect to read more of your posts here.

  2. nice post.i like your post.please keep it up.Best AWS certification in Bangalore.

  3. Essentially, commercial cleaning Dallas is a process of removing any dirt or debris from any type of property in order to maintain its hygiene.

  4. Discover the epitome of luxury with our handpicked Cabo San Lucas villas, offering unparalleled comfort and stunning views. Our Villa vacation rentals in Los Cabos promise an unforgettable escape, providing a perfect blend of opulence and relaxation in this vibrant Mexican paradise.

  5. Embark on an extraordinary journey with Monster Rabbit, your premier destination for Rabbit Epimedium Dubai. Elevate your experiences with our exceptional offerings.


Popular Posts