Live data from Hacker News

Decoding the Thought Vector

gabgoh.github.io

1–10 of 24 posts

Re: Decoding the Thought Vector

#2
> Rather curiously, it turns "airplanes" into "knives". I do not understand why this happens.

I thought it was pretty obvious. The atoms are complected (defined - by Rich Hickey of Clojure - as, basically, a semantic that contains multiple interdependent concepts (for example how variables complect state, values, and names)). In fact that's the conceit of the whole idea, the thought vector is being extracted from the sparse matrix, sometimes that sparse matrix isn't that sparse and you will get complected concepts. It was obvious in the earlier pics. One atom might contain a piece of information needed by a hat, that when combined with other atoms makes a hat, but when combined with a different set makes a headband.

For example if you look knives is shared with scissors. It's one atom describing roughly "handheld sharp objects". The airplane atom + many items atom is actually a special mutation for many knives. Where as the many items atom + sharp objects atom is likely scissors. And the sharp object + airplane atoms are probably knife. They are all complected and interdependent.

Sure an atom may generally mean a specific concept but sometimes it will fall back to a combination specific mutation. For example there aren't often many planes, and many planes looks rather like many knives. And there probably aren't ever more than one pair of scissors, and one pair of scissors looks rather like two knives. It's a way to describe 3 things and their number (knives, scissors, plane) using 2 things, an existing counting mutator, and the fact that scissors and planes are often singular. It's a form of semantic compression, quite interesting, and I would imagine domain dependent.

That's my hypothesis anyway.

Re: Decoding the Thought Vector

#6
When I was working on a recommender for television shows, I ran SVD on a large User/Item matrix to create a low rank approximation, essentially reducing thousands of user features (TV show preferences) to user vectors representing twenty or thirty abstract "features". Then I looked at the actual item preferences of users who expressed each feature at the greatest and least magnitude. The features, in some cases, mapped to recognizable constructs. There were distinct masculine and feminine features, several obvious Hispanic / Latino elements, and strong liberal versus conservative indicators. Others were less explainable using common labels.

It struck me at the time that the qualities that were expressed most strongly were the ones that ended up having names in our language. But there were others for which I would say to myself, there is something about this group (e.g. those with the greatest expressed value of F124) that I recognize, but can't quite put my finger on.

Of course, I was looking at people through a keyhole, their TV viewing preferences being the only information I had.

Also, I noticed that these "came into focus" most clearly at a certain level of compression (rank).

FWIW

Re: Decoding the Thought Vector

#7

When I was working on a recommender for television shows, I ran SVD on a large User/Item matrix to create a low rank approximation, essentially reducing thousands of user features (TV show preferences) to user vectors representing twenty or thirty abstract "features". Then I looked at the actual item preferences of users who expressed each feature at the greatest and least magnitude. The features, in some cases, mapp…

Did you ever compare that focus with a graph over the singular values?

Re: Decoding the Thought Vector

#8
post #7

When I was working on a recommender for television shows, I ran SVD on a large User/Item matrix to create a low rank approximation, essentially reducing thousands of user features (TV show preferences) to user vectors representing twenty or thirty abstract "features". Then I looked at the actual item preferences of users who expressed each feature at the greatest and least magnitude. The features, in some cases, mapp…

Did you ever compare that focus with a graph over the singular values?

It's a good question, FWIW I would expect a reasonably sharp "L" shaped curve in the focus. The assumption there I guess being that this metric of 'focus' is something well characterized by low-frequency type basis matrices given by the first few rows/columns of the SVD's U and V.

Re: Decoding the Thought Vector

#9
From the post:

> Rather curiously, it turns "airplanes" into "knives". I do not understand why this happens.

I would venture to guess that this happens because of the existence of an plural ambiguous "thought" bridging the "airplane" and "knives" concept vectors, along the lines of airplanes -> propellers -> blades -> knives, and the "a group of" vector is causing the system to jump over that semantic ambiguity.

Re: Decoding the Thought Vector

#10

When I was working on a recommender for television shows, I ran SVD on a large User/Item matrix to create a low rank approximation, essentially reducing thousands of user features (TV show preferences) to user vectors representing twenty or thirty abstract "features". Then I looked at the actual item preferences of users who expressed each feature at the greatest and least magnitude. The features, in some cases, mapp…

Computers have us figured out in a way that we don't.
Post reply on HN