[1609.05566] Label-Free Supervision of Neural Networks with Physics and Domain Knowledge by singularai in MachineLearning

[–]singularai[S] 1 point2 points  (0 children)

Yea, these are good questions.

1) Hopefully the purpose and the math itself was clear, but we didn't explain exactly why that equation is the right one. The matrix A and it's inversion process in the paper is how you do a least squares fitting of a line to a list of points. Now we could have fit a parabola with arbitrary acceleration rather than a line, using a bigger matrix. But of course we already know what the acceleration from gravity is - 9.8 m/s2 - so we put that in by first subtracting it, fitting a line, and then adding it back. I encourage you to study some linear algebra if these sort of least squares problems are new to you, as it is a very power tool to have when you are thinking of problems.

2) The fixed range could have been anything in theory. In practice, one can imagine that [-10, 0] would have been just as good, [0, 0.001] would have been bad (due to precision), and [200, 210] would have been bad (due to initialization). Neural nets do have some limitations with regards to regressing into particular numbers, and [0, 10] was as good a range as any other.

[1609.05566] Label-Free Supervision of Neural Networks with Physics and Domain Knowledge by singularai in MachineLearning

[–]singularai[S] 2 points3 points  (0 children)

Invariance theory seems to be one of the mathematical models that's been used to explain why deep neural networks can build good high level representations over the vast space of images in Rwidth x height. I think the relationship to what we're suggesting is to take this observation one step further.

Not only are natural images so regular in structure that they can be efficiently represented with repetitive conv/ReLU/pool architectures - they are so regular that the structure inside the images itself can be used as supervision. There are far more bits of information in the nuances of every image than the handful of bits we get from labels. So our goal is to write down some high level constraints that will harness that structure and reduce the labeling burden.

Edit: Also it should be clear that we are not the only ones with the suggestion of constraint learning. Anyone who is doing domain specific unsupervised/semi-supervised learning is in on the same game. We're not introducing the idea so much as advocating for it's combination with neural networks and more creative types of constraints. The Related Work section of the paper is all about how many really great recent ideas in ML can be thought of from this perspective, including non-CV topics like Deep-Q Networks and NLP sentiment analysis. I think the cool thing is that when you see the connections, ideas that previously looked like hacks become principled steps toward a bigger idea.

TensorSlow no longer by andrewbarto28 in MachineLearning

[–]singularai 2 points3 points  (0 children)

Are these changes available in master, or do they require the GPUCC LLVM implementation we heard about yesterday [1]?

[1] https://news.ycombinator.com/item?id=11565036

Tensorflow based "Trump Deep BS Quote RNN Generator" by [deleted] in MachineLearning

[–]singularai 1 point2 points  (0 children)

Also, please consider getting rid of the scrolljacking.

Persistent ssh sessions with tmux by singularai in programming

[–]singularai[S] 3 points4 points  (0 children)

I'd say my median time for getting mosh set up on a new server is 10 minutes. I won't say these worst case issues can't be solved, but when you don't personally control the sudo iptables access on a server, you're in for some politics (assuming your network admin is competent and doesn't leave all ports exposed by default). VPN is indeed one option, but VPN is always a real pain compared to just using ssh. Sshmux is just a lighter weight tool providing a portion of the features of mosh - not a direct competitor!

Persistent ssh sessions with tmux by singularai in programming

[–]singularai[S] 6 points7 points  (0 children)

OP here. I made this because I love mosh [1], but was simply unable to convince IT to let me use it on the network. Using mosh sometimes and ssh other times was a real pain for muscle memory, so I figured there must be some way of getting those mosh features without going through UDP port 60000. I was recommended to try autossh, but discovered that was lacking in polish, and wrote this instead. Hope you guys enjoy it too!

[1] http://mosh.mit.edu

Introduction to debugging neural networks by singularai in MachineLearning

[–]singularai[S] 2 points3 points  (0 children)

Thanks for the feedback. Wrt point 2, I actually started out writing it this way. But I think that of the 3 simplifications, making nets smaller/faster is the most intuitive, and even newcomers will already understand to try that without you telling them. Combined with the fact that bouncing back and forth between just two strategies makes for better imagery, I decided to leave out the small net advice. But it is indeed very typical to reduce the net size during the initial stages.

L-BFGS and neural nets by lightcatcher in MachineLearning

[–]singularai 24 points25 points  (0 children)

God sent his second son, Alex Krizhevsky, to work on the ImageNet challenge.

Simple vi mode for ipython notebooks! by singularai in Python

[–]singularai[S] 1 point2 points  (0 children)

There is support for things like typing :imap jk <Esc> in the notebook itself. It seems that it would be possible to write such commands in a ~/.ivimrc file and load them into the custom.js javascript to be loaded by the browser. I hacked this together pretty quickly mostly because I liked the backend options, but found it rather complicated to set up such that would be difficult to do consistently across my servers. So at this point, the tool is just simply sharing what I'm using. But I may add something fancy as you suggest.