Alvaro Videla

Where’s my Depth First Search Machine Learning?

As an avid book reader I have a problem on how stores like Amazon recommend me books that are related to the one I’m about to buy, be it in the form of “Customers who bought this item also bought…” or “Sponsored products related to this item”. I think these suggestions work in a Breadth-first Search fashion, as in, here you have all these books about the topic you want to read, but in my case I would prefer if Amazon would suggest books based on what’s cited inside the work I’m reading, or Depth-first search.

At this point you might say well… that’s what references at the end of the book are for. First, not all books have a list of references at the end. Second, I’m talking about works that are cited inside a book, for which the author places a special emphasis about it, as in “you should read this XYZ book by ZYX author”. A problem is that often times that sentiment is not explicitly said by authors, but they just give you clues here and there, that said XYZ book was very influential to them. Let me show you a couple of examples to illustrate my point.

I first realised of this need when I was reading Camille Fournier’s The Manager’s Path. In the introduction she writes:

If you are interested in improving on purely the people management side of leadership, books like First, Break All the Rules are excellent references.

My first thought after reading that sentence was: “Why didn’t Amazon recommend me that book when I was buying Camille’s?”

Then I started reading the Three-Body Problem by Cixin Liu. In the first part of that book they mention another book called Silent Spring, which according to Three-Body, it seems to have been censored by the Cultural Revolution. Without spoiling the story, Silent Spring is a very important element inside the story, up to the point that later I realised the first part of the book is actually called Silent Spring.

Inside Three-Body, the book Silent Spring is only mentioned by the characters here and there, and we realise it’s important to know about it once we have gone through half the book. While it’s not essential to have read Silent Spring in order to understand Three-Body, it seems like quite an interesting book to have. So while reading this I also wondered: “Why didn’t Amazon recommend me that book when I was buying the Three-Body Problem?

Finally I’ve just started reading Nobel Prize winner Svetlana Alexievich’s The Unwomanly Face of War, which is an account of the Soviet women that fought during WWII. On the introduction she writes:

Once a book fell into my hands: I Am from a Burning Village, by A. Adamovich, Ya. Bryl, and V. Kolesnik. I had experienced such a a shock only once before, when I read Dostoevsky. Here was an unusual form: the novel was composed from the voices of life itself, from what I had heard in childhood, from what can be heard now in the street, at home, in a café, on a bus. There! The circle was closed. I had found what I was looking for. I knew I would.
Ales Adamovich became my teacher…

In those two paragraphs Alexievich tells us why that book is important, what it meant to her, but she’s not saying you should read this book, she’s just telling us why that book was influential in her life. I want to also know about that book, so as you might now guess, I also asked myself: “Why didn’t Amazon recommend me that book when I was buying the The Unwomanly Face of War?”.

And there is where I want machine learning to help me. I want an algorithm that’s smart enough to parse a book’s content and understand the text’s meaning well enough to know that the author is recommedning a book, and to be able to rank such recommendations based on what the author says about them. This means that is not enough for a title to be mentioned on a book to make it interesting: it would be interesting if the author says so, whether it’s explicit about it, similar to what’s on The Manager’s Path, or the Unwomanly Face of War; or implicit as in the Three-Body Problem.

So dear Jeff Bezos, here’s my user story, as a book buyer I would like that Amazon recommends me books based on the actual book content, and not only based on what people buy on your platform.