221 karma · joined November 1, 2012
I should note, since I am not and do not expect to be the level of mathematician that Perelman is, I have not actually read his proof. So I defer to other superior mathematicians for this assessment and come by it as hearsay. :)
I think this is expressed in the paper's discussion section:
"We should be careful when giving up predictive power, that the desire for transparency is justified and isn’t simply a concession to institutional biases against new methods."
Our goal was to pick a few categories would allow us to evaluate the capabilities of the model. Thus having some that are crystal clear and others heterogeneous was appropriate. Regarding American Adjunct Lagers being low rated, yes the lagers are frequently described as "piss", "watery", and "urine".
When you tell it to make an IPA review it stays on topic and talks about hoppy flavor. About stouts is consistently calls them black, with hints of chocolate (not to mention using the word "stout").
Here's an example of a review I just generated for "Fruit/Vegetable beer":
"This brew pours a very clear golden color. The finger head is pretty small and fizzy and has a slightly pink color. The smell is really nice. The taste is fruity and sweet, but not overwhelming. The flavor is a little weak and is a bit sweeter than most beers but still very nice. I could drink this all day, but I would probably prefer the fruit beer to be a bit more pronounced. This beer is actually quite smooth and inviting. It has a strong taste of raspberries but is complimented by a nice tartness that comes through as well. The mouthfeel is smooth and creamy with a dry finish. This is a very drinkable beer and I could see myself enjoying to try this one again."
Clearly the RNN learns to form words like "fruity" and "sweet" and "raspberries" to describe a fruit beer. It also says the flavor is a little "weak" and in the next sentence says it would prefer for the taste to be "more pronounced". Keep in mind, this neural network was given no a priori notion of words. A Markov chain cannot produce even remotely similar conditional text at the character level.
For proof that it learns to differentiate the different types of beer, we demonstrate in the paper that the model can be run as a classifier and classify the type of beer form the review with 90% accuracy (on previously unseen test data). This is almost comparable to state of the art logistic regression tf-idf ngram model, despite the fact that we haven't even tuned the model especially carefully to be a classifier (with regularization or hyper-parameter search , for instance.
Here's another example (for an IPA):
"This is a fine IPA for sure, but not a beer I would love to drink a lot of. This is one of the better IPA's I have ever had. I can see why the beer is unlike any IPA should be and the best beer I've ever had. I could drink this all night, but it is very drinkable. I could easily drink a few of these without a problem. I don't know what the malt base but it is so faint and it is pretty tasty. I can see why the beer is a great hop bomb and the flavors are both subtle and superb. It's a great balance and can be a good supply of the style. I like it, but the hops are a bit off the more I drink them, but the hops are very pronounced. The finish is a little bitter, and the hop flavors are great."
I'm not sure what else to say, if you don't believe that the net has learned to distinguish an IPA. Of course, it does contradict itself on sentiment. But with lower temperatures even this is not so common. It can also be addressed by setting extreme star ratings. (we can actually put in a 0 star rating, or as high as a 10 star rating to induce a review of more extreme sentiment).
A comedic point that must be made here is that the source material (the reviews from BeerAdvocate) are themselves absurd, and occasionally contradictory. They English they contain is ungrammatical, ridiculous, and frequently misspelled. Nevertheless it's a fascinating dataset on account of how well-annotated and dense it is (the 190-core has over 250k reviews).
First off, thanks for your interest in our work! The tech is a homegrown recurrent neural network (deepx) which is available via pip. https://pypi.python.org/pypi/deepx/ We use theano for compilation to GPU and an original neural network architecture (a concatenated input generative model) to preserve the signal of auxiliary inputs (like star rating and beer category) across long intervals.
To run the model in reverse, we infer the probability of a category via the likelihood of a review. Because the prior over the categories is uniform (balanced dataset) and because the normalization term (marginal probability of a review) doesn't depend on the category, we can exploit the fact that the probability of a beer category given a review is proportional to the probability of a review given a category. In this way we're able to make a text classifier that takes into account word order.
Regarding Google Analytics, we just noticed this ourselves and are fixing it presently. Concerning color, that's a great point and I apologize for the oversight. We certainly bear no malice towards those with protanopia. In future work (and if we have subsequent versions of this paper) we'll do our best to make the lines dotted, dashed, etc to make them more readable to those unable to distinguish reg-green. Generally, I agree with you that a black and white printing should retain all readability.
Thanks for your interest and helpful observations.
Cheers,
Zack
The idea that we are critical because "it’s so much easier to challenge other people’s thinking than our own" is hard to take. If anything, this speaks to a failure to be self-critical more than a surplus of outward negativity.
More generally, I'm frustrated by what I see as an increasing tendency of people to parse the world into "positive" and "negative". This by itself speaks to a lack of truly critical thinking.
Further, I believe that the idea that critically taking apart other ideas is somehow a fundamentally distinct activity from developing one's own ideas is incorrect. In mathematics you develop ideas precisely by searching for what might be unsatisfying in the arguments and theories of others. And most successful start-ups seem to have some roots in looking at how what others are doing is sub-optimal.
I believe Hinton objects to this gross loss of spatial information for two reasons: 1) Humans don't lose so much spatial information, and Hinton would like his models to ultimately capture a neurologically plausible computation. 2) It may not be necessary for object detection (Imagenet), but it would likely be important for more sophisticated tasks.
The results are not specific to neural networks (similar techniques could be used to fool logistic regression). The problem is that ultimately a trained network relies heavily on certain activation pathways which can be precisely targeted (given full knowledge of the network) to fool networks into misclassification on data points which might to a human seem imperceptibly changed from those which are correctly classified. It is important to understand adversarial cases, but unreasonable to get carried away with sweeping pronouncements about what this does or doesn't about all neural networks, let alone intelligence generally, or the entire enterprise of AI research, as seems to happen after a splashy headline.
Brown seems to have picked up on linear algebra. "Vector", "matrix", "tensor" and "decomposition" all get consistently labeled brown, as do "eigenvalues", "orthogonal" and "sparse".
The rest are not as useful. Black almost always has "number", "set", "tree" and "random", but little else. Purple at times seems to signify topic modeling, but also contains "neural" and "feedforward". Blue seems to be the stats topic, containing "Bayes", "regression", "gaussian", and markov processes. But it also contains random words like "university" and "international".
Overall, very interesting. I wonder if these topics would be even better defined with a higher setting of k.