2,611 karma · joined September 19, 2012
A scoring function could definitely help guide the exploration and/or prune the tree, but only at the action nodes, not the environment randomness nodes. Rolling out the full tree more than 1-2 levels would be infeasible because of the randomness in the environment. When you take an action, the randomness can transport you into an exponential number of states, so you have a huge branching factor that is much larger than chess. I think in chess you have a factor of 40ish? Here it's more like ~1000 or ~10,000 depending on the item.
I also wouldn't know how to design a scoring function for this. If you do something simple to take the number of missing modifiers you will end up stuck in bad states. Maybe there is something really clever here that you can do, but I don't know what it is.
If you have an idea how to make tree search work for this I'd love to try it.
Location: Japan (or East Asia in general)
Willing to Relocate: No
Technologies (reverse-chronological order):
- AI / Deep Learning Research - previously at Google and have published papers. Mostly focused on NLP and RL, but I keep up with other subfields.
- Infra: Devops, Rust, Go, Kubernetes, Microservices, large-scale systems, all kinds of data stores. Have managed large clusters. Used to be an early Apache Spark engineer and was in a database research group in grad school
- Worked in HFT-style algotrading for a few hedge funds
- Worked at multiple early-stage startups, so I can do other things like full-stack web or app development, but I prefer not to do these full-time. But I can help if stuff comes up.
Résumé/CV: https://dennybritz.com/about
https://twitter.com/dennybritz
http://github.com/dennybritz
dennybritz [at] gmail
--Hi! 15+ years of engineering experience, and have been through a lot of technology cycles. I'm in an ok place right now and focusing on research and side projects. I'm not actively looking for work but if there's something at the intersection of my interests I'd love to talk. Not sure myself what that would look like, perhaps something around MLOps, infra/automation, Reinforcement Learning, Algorithmic trading, etc.
Location: Usually Japan/East Asia, but currently in Europe due to COVID
Willing to Relocate: No
Technologies (reverse-chronological order):
- AI / Deep Learning Research - previously at Google and have published papers. Mostly focused on NLP and RL, but I keep up with other subfields.
- Infra: Devops, golang, rust, kubernetes, microservices, large-scale systems, all kinds of databases. Have managed large clusters. Used to be an early Apache Spark engineer and was in a database research group in grad school.
- Briefly worked in algo trading (HFT-style)
- Worked at multiple early-stage startups, so I can do other things like full-stack web or app development, but I prefer not to do these full-time. But I can help if stuff comes up.
Résumé/CV: https://dennybritz.com/about
https://twitter.com/dennybritz
http://github.com/dennybritz
dennybritz [at] gmail
---Hi! 15+ years of engineering experience, and have been through a lot of technology cycles. I'm in a decent place right now and focusing on research and side projects. I'm not actively looking for work but I figured I would post anyway - who knows what opportunities come along! If there's something at the intersection of my interests I'd love to talk. Not sure myself what that would look like, perhaps something around ML/RL research, academia, trading, or infrastructure.
Exactly, this is one of the nice things about RL. You don't to do a bunch of handwaving to turn your predictions into a strategy.
Location: Usually Japan/East Asia, but currently in Europe due to COVID
Willing to Relocate: No
Technologies (reverse-chronological order):
- AI / Deep Learning Research - previously at Google and have published papers. Mostly focused on NLP and RL, but I keep up with other subfields.
- Infra: Devops, golang, rust, kubernetes, microservices, large-scale systems, all kinds of databases. Have managed large clusters. Used to be an early Apache Spark engineer and was in a database research group in grad school.
- Briefly worked in algo trading (HFT-style)
- Worked at multiple early-stage startups, so I can do other things like full-stack web or app development, but I prefer not to do these full-time. But I can help if stuff comes up.
Résumé/CV: https://www.linkedin.com/in/dennybritz/
https://twitter.com/dennybritz
http://github.com/dennybritz
dennybritz [at] gmail
---Hi! 15+ years of engineering experience, and have been through a lot of technologies and cycles. I'm in a decent place right now and focusing on research and side projects. I'm not actually looking for work. But I figured I would post anyway - who knows what opportunities come along! If there's something at the intersection of my interests I'd love to talk. Not sure myself what that would look like, perhaps something around ML/RL, research, infra, or possibly trading.
[0] https://twitter.com/dennybritz/status/1260137814982787073
Location: Variable. Usually Japan or Asia, but currently in Europe due to COVID
Willing to Relocate: No
Technologies (reverse-chronological order):
- AI / Deep Learning Research - previously work at Google and have published papers. Mostly focused on NLP and RL, but I keep up with other subfields.
- Infra: Devops, golang, rust, kubernetes, microservices, large-scale systems, all kinds of databases. Have managed large clusters. Used to be an early Apache Spark contributor and was in a database research group in grad school.
- Briefly worked in algo trading (HFT-style)
- Worked at multiple early-stage startups, so I can do other things like full-stack web or app development, but I would prefer not to do these professionally anymore.
Résumé/CV: https://www.linkedin.com/in/dennybritz/
https://twitter.com/dennybritz
http://github.com/dennybritz
dennybritz [at] gmail
---Hi! 15+ years of engineering experience, have been through a lot of technologies and cycles. I'm in a decent place right now focusing on research and side projects and not actually looking for work, but I'm slowly getting bored. I figured I would post anyway - who knows what opportunities come along! If the right thing hits I may be interested. Perhaps something around ML/RL, research, infra, or possibly trading. I'm not sure myself :)
Of course there is a limit to this. It wouldn't make sense to intentionally avoid looking up solutions if you are stuck on a specific problem for several hours or days. But IMO it also doesn't make sense to read a whole textbook without trying to implement anything. What has worked well for me is to do it in an iterative fashion. Read when necessary.
When reading the newest ML papers, I found it useful to not judge them, but instead use them as inspiration. Forget about the results. The paper may contain interesting ideas or viewpoints you didn't consider before, and those are probably much more valuable than the result table.
1. Most of the advances do not result in large enough gains to justify them being translated into industry. 99.9% of research papers propose techniques that result in small gains in the optimization metric (accuracy, ROC AUC, BLEU score, etc). However, this comes at the expense of added cost in complexity, more expensive training, model instability, challenges in code maintainability, and so on. For the vast majority of companies, unless you are Google AdWords or Google Translate, a tiny gain in metric X is not worth the costs mentioned above. You're much better off using proven off-the-shelf models that have stood the test of time, are fast to train and easy to maintain. Even if they are 1% worse.
2. Research tends to focus on model improvements and you are not allowed to touch your train/test data. That makes sense as otherwise competing approaches would not be comparable. However, in the real world you have the freedom of collecting more training data, cleaning your data, selecting more appropriate validation/test data, and so on. The vast majority of times, getting better/cleaner/more data beats getting a slightly better model. And it's much easier to implement. So for industry it often makes more sense to focus on that.
3. Metrics optimized in research papers rarely translate into real world business metrics, but many research ideas are overfit to those metrics and/or datasets. For example, translation papers optimize something called BLEU score, but in the real world the thing that matters is user satisfaction and "human evaluations", which cannot easily be optimized in research. Similarly, no business sells "ImageNet recognition accuracy". Research overfits to this metric on this dataset (because that's how papers are evaluated) but it's not obvious that a model doing better on this metric will also do better on some other metric or dataset, even if they are similar. In fact, even datasets that are known to contain errors are still used as-is, because they have always been used.
At Prediction Machines, we're applying Deep Learning and Reinforcement Learning techniques to trading in financial, cryptocurrency, sports bedding, and other commercial markets. We're well-funded and have a team of strong researchers, engineers, traders, and a management team with decades of finance background.
We're looking for someone to help build out the infrastructure for a new vertical. Ideally, you would be familiar with cloud services like AWS, Docker,Kubernetes, streaming data infrastructure like Kafka, and modern programming languages like Go, Node, Python etc. Having Machine Learning, Data Science, or Finance knowledge is a plus, but not required.
To minimize time zone differences we're ideally looking for someone in Asia. We have people in Tokyo, Singapore, and Bangkok. Remote work possible for the right candidate.
Please send a brief into and resume directly to "denny.britz@prediction-machines.com"
At Prediction Machines, we're applying Deep Learning and Reinforcement Learning techniques to trading in financial, cryptocurrency, bedding, and other commercial markets. We're well-funded and have a team of strong researchers, engineers, traders, and management team with decades of finance background.
We're looking for someone to help build out the infrastructure for a new vertical. Ideally, you would be familiar with cloud services like AWS, Docker and container orchestrations solutions, streaming data infrastructure like Kafka, and modern programming languages like Node, Go, Python etc. Having Machine Learning, Data Science, or Finance knowledge is a plus, but not required.
To minimize time zone differences we're looking for someone in Asia. We have people in Tokyo, Singapore, and Bangkok. Remote work is also possible as long as you're in a nearby time zone.
Please send a brief into and resume directly to "denny.britz@prediction-machines.com"
Progress is made with small incremental improvements, including this one, and there have been few real algorithmic "breakthroughts" over the past few years. That's why I think it is important to give some perspective to the hype.
> I am worried that I will seem less attractive to future employers when I return
That's not my experience at all. Me and many people I now have huge gaps in their work history, either from travel or startups, and it hasn't hurt anyone.
Also, it's not a black and white decision. Start taking time off and go travel. If you decide it's not for you after a few months just go back early.
You'll find similar applications in state-of-the art models for chatbots for example. Though I agree, "widely used" may be somewhat of an overstatement. But it's becoming more common.
On a side note, I actually think RL makes a lot of sense for many NLP problems and it would be super interesting to build a pure RL approach to language modeling or translation. Nobody has managed to do that quite yet.
However, I'd appreciate more comments of course ;)
Breaking it down. High-Level Frameworks:
- Caffe is very high-level and almost only used for Convolutional Neural Networks. It doesn't have good support for RNNs or anything else. It has a very good collection of pre-trained models (model zoo).
- Keras is a "wrapper" around Tensorflow or Theano and includes many higher-level abstractions like various types of layers, optimizers, etc. It's typically what I recommend to anyone who wants to get something up and running quickly and doesn't necessarily want to develop novel models.
On the next lower level are Theano and Tensorflow. They are pretty much competing with each other and have a very similar computational model (computational graphs). People/Companies seem to be moving towards Tensorflow, so that what I'd recommend using at this point. Tensorflow recently added several higher-level abstractions (like TF Learn and contrib modules) that are quite similar to those in Keras.
cuDNN is a library for GPU acceleration. It's used by most of these libraries under the hood to speed up computation. You certainly can use cuDNN directly, but unless you're doing low-level research it's probably not necessary.
IMO compute power (GPUs) played the bigger role. DeepMind themselves say that training AlphaGo wouldn't have been possible without access to Google's large-scale infrastructure. They've been training it on thousands of machines simultaneously. That's not to be confused with the hardware necessary to play the game, which isn't much and can be done on a single machine. Only the training phase has these extreme hardware requirements.