Zephyr314
You can also jump right to the code here: https://github.com/sigopt/sigopt-server
I am incredibly proud that the SigOpt product that has helped thousands of researchers worldwide is now completely open to the broader community.
SigOpt (YC W15) is now open source
The Case of the Mysterious AWS ELB 504 Errors
The Case of the Mysterious AWS ELB 504 Errors
Mirages in Data
[0]: https://sigopt.com/research/
[1]: https://sigopt.com/blog/covariance-kernels-for-avoiding-boun...
[0]: https://devblogs.nvidia.com/sigopt-deep-learning-hyperparame...
[0]: https://www.iqt.org/
[2]: https://www.diu.mil/
[0]: 0.02*0.8^6*$200,000,000 = $1,048,576However, or more complex model pipelines where an expert is probably involved there are lots of tools to help with it and it is quickly becoming automated and less of a "dark art." Some of these tools are built into frameworks like Google/Amazon, some are built into open source platforms (like katib in kubeflow), and others are entire companies building model experimentation platforms (like SigOpt). Many of these can handle everything from traditional hyperparameters like learning rate to architecture parameters to tuning feature embeddings, all at once [1]. I agree with the original author that playing with parameters and doing trial and error optimization of hyper-, architecture, or feature transformation parameters will largely stop happening in the manual way it is done today. All of these methods are orders of magnitude quicker than standard brute-force approaches.
Otherwise, I think you are completely right that there are a ton of aspects of modeling that require domain expertise and nuance beyond pulling a model off the shelf. I think a lot of that comes down to picking the model, picking the data that matters, picking the objective that actually solves the problem for the task at hand, etc. I believe less of that will be high-D non-convex optimization done manually.
[1]: https://aws.amazon.com/blogs/machine-learning/fast-cnn-tunin...
Increasingly I think more time will be spent on the creative/bespoke aspects you mention later in your post, like making sure that you are building a system that actually achieves some business value (vs just getting a better academic-oriented metric result). Hyperparameter tuning is basically trying to do high-dimensional, non-convex optimization on time consuming and expensive to sample functions. Hand tuning is a terrible way to approach this, and is different for each problem as you point out. Experts can leverage their domain expertise and the unique aspects of their data, models, and applications in much better ways.
[0]: https://www.kdd.org/kdd2017/papers/view/google-vizier-a-serv...
[1]: https://github.com/SheffieldML/GPyOpt
[2]: https://github.com/Yelp/MOE
[3]: https://github.com/hyperopt/hyperopt
[4]: https://sigopt.com
I tried to briefly go over the functional interpretation of GPs in this talk [2], although the book by Rasmussen and Williams does a much more thorough job [3] (free online, check out chapter 2 for this approach).
I'm happy to answer any questions about the differences. If you're a student/academic SigOpt is also completely free [4].
[0]: http://hyperopt.github.io/hyperopt/
[1]: https://sigopt.com/research/
[2]: https://www.youtube.com/watch?v=J6UcAdH54RE&list=PLbSwfqjMfj...
Disclaimer: I co-founded SigOpt and wasted way too much of my PhD on "graduate student gradient descent"
These techniques can be orders of magnitude more efficient than a standard hyperparameter search and really cut down the barrier to entry for these types of results.
We've definitely seen that tuning the embedding hyperparameters (along with the others) can have a significant impact on performance. [1]
Additionally, whenever you open up the space of tunable parameters to include the embeddings or feature representations themselves you can usually significantly outperform just a well tuned classifier. [2]
This model seems like it trades off complexity in tuning for complexity of an ensemble, but I wonder what would happen if you tried to have your cake and eat it too and just tuned everything.
[1]: https://aws.amazon.com/blogs/machine-learning/fast-cnn-tunin...
[2]: https://blog.sigopt.com/posts/unsupervised-learning-with-eve...
[1]: https://www.investopedia.com/ask/answer/12/ipo-lockup-period...
We have some references to recent articles we've presented at NIPS, ICML, and AISTATS here [1]
We also have a higher level technical blog here [2] (we recently did a series of post on how uncertainty influences optimization in single and multi-metric cases). We've also done some hyperparameter tuning blog posts with our partners AWS [3] and NVIDIA [4].
All of these papers and blogs also contain references to other papers and blogs that can help start you down your literature review. Hopefully this is helpful!
[1]: https://sigopt.com/research
[2]: https://blog.sigopt.com/categories/in-depth
[3]: https://aws.amazon.com/blogs/machine-learning/fast-cnn-tunin...
[4]: https://devblogs.nvidia.com/sigopt-deep-learning-hyperparame...
[0]: https://blog.sigopt.com/posts/modeling-with-uncertainty
[1]: https://blog.sigopt.com/posts/bayesian-optimization-with-unc...
Balancing Multiple Metrics with Uncertainty
We've been solving this problem for customers around the world for the last 4 years and have extended a lot of the original research I started at Yelp with MOE [1]. We employ an ensemble of optimization techniques and provide seamless integration with any pipeline. I'm happy to answer any questions about the product or technology.
We're completely free for academics [2] and publish research like the above at ICML, NIPS, AISTATS regularly [3].
We haven't been actively maintaining the open source version of MOE because we built it into a SaaS service 4 years ago as SigOpt (YC W15). Since then we've also had some of the authors of BayesOpt and HyperOpt work with us.
Let me know if you'd like to give it a shot. It is also completely free for academics [1]. If you'd like to see some of the extensions we've made to our original approaches as we've built out our ensemble of optimization algorithms check out our research page [2].
You hit the nail on the head. We've been trying to promote more sophisticated optimization approaches since the company formed 4 years ago and are happy to see firms like Google, Amazon, IBM, and SAS enter the space. We definitely feel like the tide of education lifts all boats. Literally everyone doing advanced modeling (ML, AI, simulation, etc) has this problem and we're happy to be the enterprise solution to firms around the world like you mentioned. We provide differentiated support and products from some of these methods via our hosted ensemble of techniques behind a standardized, robust API.
We're active contributors to the field as well via our peer reviewed research [1], sponsorships of academic conferences like NIPS, ICML, AISTATS, and free academic programs [2]. We're super happy to see more people interested in the field and are excited to see where it goes!
Let me know if you have any questions about this post or SigOpt in general. Gustavo is a Research Engineering Intern with us and wrote this post with our research team lead, Michael Mccourt. If you're a student looking for internships please check out our careers page [1]. Our platform is also free for academics [2]. You can find more of our research (including NIPS, ICML, AISTATS, etc papers) here [3].
[0]: https://blog.sigopt.com/posts/modeling-with-uncertainty