Book Review: Methods of Rationality

It’s high time I did a real review of my favorite book in the universe. I read it for the first time at the age of 13, and it triggered an utter obsession with cognitive science, rationality, and artificial intelligence that has not disappeared to this day. (It has, however, become more mature: I no longer write shitty romantic poetry about cognitive science.)

I will attempt to describe this masterpiece of literature; more than once since I will absolutely fail several times.

Harry Potter and the Methods of Rationality is a 122-chapter parallel-universe Harry Potter fanfic in which Lily Evans married an Oxford professor, Michael Verres, and Harry was adopted and raised in a loving home filled to the brim with books. It is written by one Eliezer Yudkowsky, co-founder of the Machine Intelligence Research Institute, who writes frequently for the blog Less Wrong, which I’ve cited here before, and is best known for popularizing the idea of Friendly AI.

Harry Potter and the Methods of Rationality is a book about an eleven-year-old who knows both magic and calculus and wants to take over the world using Science so he can get more books.

Harry Potter and the Methods of Rationality is a book that successfully taught a 13-year-old girl—who wasn’t and still isn’t a genius—the underlying fundamentals of cognitive psychology, quantum physics, artificial intelligence, and Bayesian probability theory. If you read it, you will also learn these things, without ever realizing you have learned them. It will simply make sense, in a way that makes you wonder how you ever didn’t understand it.

While reading Harry Potter and the Methods of Rationality, you will frequently have absolutely no idea whether Harry is the villain or the hero. You will frequently have absolutely no idea whether Draco Malfoy is the villain or the hero, either. This goes for most of the characters, with the exception of Hermione and McGonagall. It does not exclude Voldemort.

This book will make you laugh, cry, learn, and question human existence. It will make you very aware of the sound of snapping fingers, and the shape of the night sky. It will show you the best and worst of humanity, and make both understandable. If you let it, it will teach you some of the most valuable life lessons you might ever learn.

Find the completed book at hpmor.com. You can read it in however much time you like, but given the length, it takes a fast reader about three or four days to binge straight through, so you probably can’t read it any faster than that. In any case, when you do finish it, please leave a comment telling me what you thought! And of course, give the author some feedback and leave reviews on however many chapters you like.

As an end note, in case you might not have believed me, here is only one of the shitty romantic poems I wrote about rationality. Please be nice to the author, she was a little girl who fell in love with science, not a poet, and she was doing her best.

Be skeptical, not cynical;
be open, but not gullible.
Be curious, not clever;
no rationalization, ever.

Accept the truth for what it is;
and look for contradictions
in all arguments, yours included;
you’re more confused by fiction.

A word is just a label
before you know the referent;
a lie gets told a long time,
if someone’s to protect it.

Certain kinds of people
truth they wrongly construe,
but they’ll do it in the name of
who they think is watching you.

Humans tend to think
they could predict things in advance
but that’s some hindsight bias
when really there’s low chance.

Don’t explain all this all at once,
mind inferential distance,
plus the illusion of transparency,
and all peoples’ heuristics.

People don’t like weird ideas,
or saying they don’t know;
but even with our biases,
There’s a long way we shall go.

PDP 2

This week, I rehashed all the basics of Python. Since I haven’t studied it at all in ten years, this was a very useful refresher. (Basically, it seems to me that Python is essentially Java structure with something like JavaScript syntax. This is a huge oversimplification, but hey, it’s an extremely high-level language that I’m using it in an object-oriented way for this purpose. There are demonstrable similarities.)

The course I’m currently using doesn’t go over Python in any great detail, so if you’d like to supplement the Python they teach you, or you’d like to add to your knowledge of the language (since this course teaches only a very limited scope of Python), I highly recommend Learn Python The Hard Way. Python was my first programming language ever, and this was the course I used. It gives you a solid grasp of not just Python but how programming works in general.

In addition to the general Python refresher, I learned about all the libraries that I’ll need to use it to do data science: namely, NumPy, Pandas, SciPy, StatsModels API, MatPlotLib, Seaborn, and SciKitLearn. In combination, these libraries add methods that can import data from a variety of sources including Excel spreadsheets, conveniently calculate and tabulate relevant statistical data, do a variety of regressions and cluster analyses, and display elegant and understandable graphs.

This week, I learned how to do a simple linear regression (least squares). Next week, I’ll learn how to do multiple regressions and cluster analyses! And after that, the real fun begins with deep learning and AI. I’m looking forward to it!

In the future, expect me to start creating some little projects. I can’t do much with what I’ve learned this week, but by next week, I’ll absolutely have something at least moderately interesting, and I’ll absolutely do a nice write-up for it.

Japanese Journal 5: Learning Kana

Japanese writing is a little bit intimidating. Even if we don’t consider kanji, there are two other writing systems to worry about, each with around fifty letters each. While these systems are phonetic (letters correspond directly to sounds), that’s still a hundred letters! (Well, 92.) How do you memorize them all?

When I first started learning Japanese, this was the bane of my existence. I knew I couldn’t do anything if I didn’t learn the alphabet, but unlike the Greek alphabet (which I’d learned before), Japanese “kana” come in blocks of two sounds, a consonant and a vowel. Further, though this is nice for reading comprehension after you already know the kana, the set of kana that begin or end with the same sound don’t similar at all (sa looks like this さ, se looks like this せ, and so looks like this そ). I had a huge problem learning nearly a hundred completely unrelated characters that had no direct connection to the individual phonemes.

One of the things that I tried when I was first getting started with learning the alphabets was cutting a hundred index cards in half and put a letter on each. Yet, a hundred Japanese-letter-to-romaji-translation cards later, I hadn’t really learned anything, and reviewing those cards just frustrated me.

It turns out, though, that the answer was incredibly simple, if perhaps slightly daunting. Here it is. Read. Even if you can’t understand anything. Read the Japanese version of the “this plastic bag is a choking hazard” warning on some packaging. Don’t worry about the kanji, just read the kana. Randomly use Japanese Wikipedia (fyi, the Japanese word for Japanese is 日本語, in case you’re wondering which language option to choose). When you look up kanji, look them up using a dictionary like Rikai, which gives you the pronunciation using kana. The optimal way to memorize anything is to use it.

When you first start, keep a kana chart (like the one at the beginning of this article) on hand and reference it for kana you don’t know yet. After a while, you’ll naturally be able to put the chart away and just read stuff. Even after you’re competent enough to not need the chart, keep reading: you’ll become so fluent with the kana that it will be easier to read them than to read romaji. (I have!)

I think the reason for this was that when I reviewed flashcards, every letter I didn’t know was a failure. However, when learning by reading, every letter I did know was a success. For me at least, it was a mindset shift. (Note: of necessity, I write from my own experience, and in my experience, reading works better than flashcards. However, if you do learn well with flashcards, I recommend using them… in addition to reading. You’ll want to eventually be able to read fluently anyways, right?)

All of that being said, here’s the most surefire way to make sure you don’t memorize kana: don’t use them. Learn Japanese using romaji. (Not only will this mess up your ability to learn kana, it will mess up your pronunciation.) Focus on grammar and vocabulary before learning the alphabet. Never be able to read real Japanese. There are many methods of learning Japanese, but I can inform you that this is the worst one.

(I wouldn’t say this so confidently if I were the only one who believed it. Here’s an article from a Japanese learning website, and a source from reddit, and one that tells you how to use romaji as a learning tool before dropping it.)

Learning three alphabets can be pretty intimidating, but with a bit of time and dedication, and a lot of making sure you don’t beat yourself up when you don’t know stuff, you can get there.