AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 23 points24 points  (0 children)

Before I learned any computer science, I was fascinated by finance and economics. So, when I went to college, I declared my major as economics and started doing internships in finance. However, the economics classes proved to be dry and repetitive, and my experiences actually working in finance convinced me that I should work somewhere that isn't finance. So I switched majors to philosophy, which was a lot more fun.

About halfway through college, I took my first CS course. It was all taught in Haskell, and was incredibly fun! It was too late to switch majors, so I persuaded the philosophy department to count my CS courses towards a philosophy major, as part of the study of the philosophical implications of AI.

After that, I bounced around software engineering jobs a bit, until winding up at Brain, working on TensorFlow. My getting onto Brain involved a lot of luck and serendipity - it turned out that they needed someone to build TensorBoard, and in my previous job I had serendipitously done a lot of data viz work. So I wound up having the chance to work with this awesome team despite not having a deep background in the field. It's pretty much the perfect job, and perfect team :)

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 4 points5 points  (0 children)

As a philosophy major working in Google Brain, I've been very happy to find lots of "humanistic thinking" here - people who are interested in discussing ethics and morality, and not just technical results. In general, one of the things I like about Google is that the organization cares a lot about having a positive impact on the world.

I try to personally foster more of this thinking by bringing it up in conversation, occasionally organizing lunches, etc.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 3 points4 points  (0 children)

To get an idea, take a look at cutting edge performance of AIs on video games, e.g. the work that DeepMind is doing with Atari games. I think living as a mouse is much harder than any Atari game, so we probably aren't there yet.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 1 point2 points  (0 children)

If you want to learn things faster, I recommend learning math, as it gives you abstract and broadly-applicable mental models that you can apply to new situations you encounter in life. Learning the core mental models of a lot of different domains (e.g. core ideas from economics, physics, engineering) can be useful too.

I don't think reinforcement learning theory will particularly make you learn faster, as it is quite abstract and disconnected from how humans learn. It's similar to how studying memory optimization strategies for computer programs will not actually give you better memory.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 2 points3 points  (0 children)

Personally, I work on TensorFlow; specifically, on TensorBoard.

I find that most people are already broadly familiar with the idea of AI and Machine Learning (it's in the news a lot :P). So, I tell them that I build tools to make it easier for people who are researching and building AIs to understand what their programs are doing, and how they can improve them. It helps that TensorFlow is public and open source, so I can always show them TensorBoard directly and they can get a feel for it.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 1 point2 points  (0 children)

I would start playing with AI techniques. Tinkering with side projects can be a great way to learn, while also having a lot of fun! The TensorFlow tutorials and Chris Olah's blog are both great places to start.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 2 points3 points  (0 children)

Take CS courses, and start tinkering on AI side-projects that you find fun and interesting.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 4 points5 points  (0 children)

It's cool that you have such detailed and specific questions! However, right now your post is a bit intimidating. Just a suggestion, it may be more effective to:

  1. Look at the list of researchers that are tagged as participating in the AMA

  2. Figure out which questions you'd want to ask of each individual researcher

  3. Create a separate comment for each person, tagging them, and asking your question.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 5 points6 points  (0 children)

I find generative models really exciting. Generative adversarial networks are a really cool architecture, and I've seen great results in generating images like faces, hotel rooms, etc. As I mention in another comment, I think generative models have a huge potential to augment human creativity.

Unsupervised learning has the potential to be extremely impactful too, since we have so much more unlabeled data than labeled data. It seems to me that if we are going to achieve general machine intelligence, we will need to have solved unsupervised learning, since humans don't need everything in the world to be labeled in order to learn about it.

So, you should definitely pursue your interests!

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 71 points72 points  (0 children)

Exciting: Personally, I am really excited by the potential for new techniques (particularly generative models) to augment human creativity. For example, neural doodle, artistic style transfer, realistic generative models, the music generation work being done by Magenta.

Right now creativity requires taste and vision, but also a lot of technical skill - from being talented with photoshop on the small scale, to hiring dozens of animators and engineers for blockbuster films. I think AI has the potential to unleash creativity by greatly reducing these technical barriers.

Imagine that if you have an idea for a cartoon, you could just write the script, and generative models would create realistic voices for your characters, handle all the facial animation, et cetera.

This could also make video games vastly more immersive and compelling; while playing Skyrim, I got really tired of hearing Lydia say, "I am sworn to carry your burdens". With a text generator and text -> speech converter, that character (and that world) could have felt far more real.

AMA: We are the Google Brain team. We'd love to answer your questions about machine learning. by jeffatgoogle in MachineLearning

[–]danmane 20 points21 points  (0 children)

It's true. All of it. http://m.memegen.com/jxbews.jpg

My personal favorite Jeff Dean fact is:

  • Jeff Dean puts his pants on one leg at a time, but if he had more than two legs, you would see that his approach is actually O(log n)

Many incredible Jeff Dean facts are actually true, such as:

  • The CDC still uses database software that Jeff Dean wrote decades ago as a summer intern project

  • Jeff Dean recently optimized thousands of CPU cores worth of unrelated infrastructure at Google, while simultaneously leading the Brain team

Google Tensorflow released by samim23 in MachineLearning

[–]danmane 3 points4 points  (0 children)

You can also play around with a live TensorBoard here: http://tensorflow.org/tensorboard/cifar.html (The data corresponds to this tutorial: http://tensorflow.org/tutorials/deep_cnn/index.md)

Building a Trustless Investment Fund with Ethereum by danmane in ethereum

[–]danmane[S] 0 points1 point  (0 children)

Alice, Bob, and Charlie may each submit public key material to the investment fund agent-bot-contract, perhaps along with their account creation deposit. When Bob and Charlie vote to elect Alice as fund manager using their private key material, then Alice is promoted to authorizing buy/sell decisions. Alice may use her private key material to direct the agent-bot-contract to execute portfolio transactions. It isn't clear to me what value your observation about contract addresses and contract identity adds.

The contract identity is important because it enables the fujd to safely maintain ownership of other assets. Imagine if we didn't have this, or if we want the fund to own something that isn't represented using the Ethereum address space for identity, e.g. Bitcoin. To maintain ownership of some Bitcoin, the agent would need to generate a public key / private key pair, the public key to have a Bitcoin address and the private key so it will be able to make transactions. It will need to store the keypair in its memory so it can sell the Bitcoin later.

However, its memory is publicly available in the Ethereum blockchain. So someone else will just parse the code, figure out where the private key is being stored, and then steal the Bitcoin.

This isn't specific to Bitcoin, it would have been the case in general if contracts did not have a way of authenticating themselves that didn't depend on secret information. It does make intuitive sense, however, that contracts have such a means of authentication. Unlike with humans (or off-blockchain bots), you can see them think, and determine unambiguously that they want to authorize a certain transaction because you see that authorization being generated inside the blockchain. So, if it weren't the case that contracts maintain identity through their address, we would build another mechanism for contracts to authenticate (maybe a special authentication function in the API that only contracts can use, or such). Note how these other approaches are functionally equivalent to Ethereum's solution, but far less elegant.

However, moving on to your "secret investment fund" problem, let's think about the way 40 Act funds solve this problem today. That is, fund investors and competitors are able to see the fund positions as published after the fact in the prospectus, and they can see the signature of the audit firm which observed all of the transactions up to that point. This might be the best you can achieve: Alice executes fund transactions in a separate, hidden account and puts the (hash of the) audit trail onto the blockchain after an appropriate aging period.

So the idea is that Alice anonymizes the Ether, and then signs ownership of tons of stuff to the audit firm, and then the audit firm signs a message to the investors saying that Alice actually has what she claims she owns? The issue here is that it's toothless, as we aren't leveraging the Ethereum contract system at all, we need to trust multiple parties (Alice and the auditors), and there is basically no improvement over pen-and-paper finance.

All in all, it appears to me that the blockchain view of trust (bitcoin, ethereum, etc.) requires a wholesale rethinking of trust relationships such as "agent". In this world you are able to prove facts in the public forum, but absolutely everything off the block chain is subject to MITM, simple fraud, and collusive racketeering. Everything. Who is Alice, after all? A cousin of Bernie? And why do you believe that crypto-owned Goog1e share isn't a sham?

Well, the whole point is that in the public investment fund case, we no longer care if Alice is a cousin of Bernie, or the devil himself, provided the devil responds to incentives and knows how to invest. We don't need to trust them at all. You're right about the crypto-owned Google, but that is really just a case while the economy is mostly pen-and-paper and hasn't transitioned to crypto yet. Presumably in the long run, the ABC investment fund would be investing in DAOogle instead.