Review: Programming Collective Intelligence

I've recently read a book that is now a bit old according to the web standard and especially since it deals with social web technologies.

This book, Programming Collective Intelligence by Toby Segaran was first published in 2007 and explains chapter after chapter each of the main machine learning algorithms that power (even today still) many of the biggest web services like Google, e-Bay and Facebook.

Despite its publicized social web focus, I can't help thinking of this book as a more general introduction to machine learning algorithms.

Because of that and also because, due to its age and success, this book already has several detailed reviews over the web, I'll make an attempt at a kind of cross-review by explaining how it could be a perfect companion book to the on-line and free Machine Learning class by Andrew Ng.

Read more…

ShiVaSmiles 1.0: first stable release !

This week-end one of my software pet project reached its first stable version.

ShiVaSmiles -- that's its name, and if you find it crappy, have a look at its logo ;) -- is an image visualizer whose functionality have voluntarily been kept to the minimum in order to help its users to play easily with some pattern analysis concepts.

In this 1.0 version ShiVaSmiles makes it possible to experiment with tools based on Fourier transform (correlation and filtering with Tukey window) and those coming from Mathematical Morphology (opening and granulometry).

It is currently available on Linux (especially Ubuntu 12.04 32 and 64 bits) and Windows (thanks to the contributions of Thomas Retornaz, thanks indeed !).

For more information:

And if you want some refreshers about the involved mathematical concepts, you can start with:

(Image of Shiva's satue by Indianhilbilly: Bangalore Shiva)

Review: The Raw and the Cooked (Mythologiques I)

Mythologiques, t. I : The Raw and the Cooked by Claude Lévi-Strauss Paris, 1964.

Ignoring everything about ethnology I took the challenge to get a first taste of it by reading the classic book where Claude Lévi-Strauss analyzes myths from South-American Indians and looks for common structures among them, using the structuralist methods.

And the least I can say is that I got what I deserved since entirely dedicated to exposing as rigorously as possible his reasoning, the author adopted a writing style that made me think about the mathematician that didn't have yet a proper formalism to represent their proposals and demonstration and had to use pages of pure rhetoric.

A hard read indeed... and all that to discover that the title is a fraud (more on this below) !

Read more…

A "tourist guide" to Mathematical Morphology ?

After spending so many years using tools coming from Mathematical Morphology I endeavored to build a small set of lectures on this subject with the determination to stick to the basics and favor illustrations and intuitive understanding rather that mathematical formulas.

The whole set (slides, transcripts and references) is there: MorphoDiapo

Comparatively to other resources on the same subject, these lectures look more like a "holiday pictures sideshow"  but in order to keep it interesting I built it with the main objective to introduce and explain as clearly as possible measures that make it possible to analyze the shapes of objects present on an image.

Giving a glimpse backstage: these SVG slides could be built thanks to Inkscape et and its LaTex and JessyInk extensions.

MathJax, the new cool for mathematical display on the web

While the MathML standard still struggle to get a decent adoption, MathJax, an open-source JavaScript library, seems to have made its way to a de facto standard for maths display on the web.

MathJax allows writing equations directly in LaTeX or in MathML and renders them either in MathML in browser that supports it or with more common elements of HTML and CSS.

It is used notably by the CERN, several sites of StackExchange, and friends. It's also supported by the AMS and the IEEE.

What's more this is somehow the successor of jsMath that I was using for my little experiment in literate programming. And since Sphinx now has a plugin for it, I've just updated my literate musing pages (refreshing the theme at the same time to a get a lighter and hopefully more readable display).

Backup for a personal website: Hello BackupMonitor !

In the previous post I explained why BackupMonitor has become obsolete on my Ubuntu desktop where DejaDup solves the backup problem.

However there's still one backup problem that I hadn't automatized yet: backing up my website !

You'll tell me that this kind of backup can certainly be handled (usually with an additional fee) by my hosting provider, and that is actually quite right ! However, I still fancy the idea to have my data at home - physically - and doing that doesn't exclude other backup solutions anyway (the more, the better).

So I'm going to explain how I set up this kind of backup.

Read more…

Abandoning one of my pet projects: Goodbye BackupMonitor

Since Ubuntu integrated DejaDup  as a default backup tool for users' data, I've stopped using BackupMonitor, my miniature framework for personal backups.

Just to sum things up, and also because BackupMonitor still has some features that IMHO are missing to DejaDup, here is a quick comparison of both applications.

The common stuff first, DejaDup and BackupMonitor are both aimed at making copies of personal data, regularly.

Read more…