宣布MLflow 1.1版本
2019年7月23日 在公司博客上
我们兴奋地宣布今天MLflow 1.1的发布。在这个版本中,我们专注于充实MLflow和改善的跟踪组件可视化组件在UI中。
一些主要的功能包括:
- 自动记录从TensorFlow和Keras
- 平行坐标图跟踪的UI
- 熊猫DataFrame基于搜索API
- Java API流利
- Kubernetes MLflow项目执行后端
- 搜索分页
的所有功能的完整列表可以在更改日志。你可以找到MLflow PyPI上1.1,Maven和凹口。检查文档并提供反馈GitHub。
有什么新的MLflow 1.1
Autologging TensorFlow和Keras
MLflow 1.1提供了轻量级的autologging指标、参数和模型从你TensorFlow Keras模型培训运行——叫mlflow.tensorflow.autolog()或
你使用mlflow.keras.autolog()的框架。Autologging不需要手动指标和参数日志语句和提供了开箱即用的模型跟踪培训的代码没有任何修改。
这里有一个例子使用Keras IMDB情绪分类的例子:
从keras.preprocessing进口序列从keras.models进口顺序从keras.layers进口密度、嵌入LSTM从keras.datasets进口imdb进口mlflow.kerasmlflow.keras.autolog ()#这是你所需要的!max_features =20000年maxlen =80年batch_size =32(x_train y_train) (x_test y_test) = imdb.load_data (num_words = max_features)
…
模型。fit (x_train y_train,batch_size = batch_size,时代=15,validation_data = (x_test y_test))
我们可以查看自动对数量度的MLflow界面:
您还可以查看示例用法Keras和TensorFlow在MLflow GitHub库。
平行坐标图
在n维空间可视化关系在机器学习应用程序尤为重要。当比较MLflow运行时,你想了解一组不同的hyperparameters将影响模型评价指标如验证损失。为了达到这个目标,我们添加了支持显示一个平行坐标图当比较不同MLflow运行。
这是一个例子的数据autologged TensorFlow虹膜的例子:
https://www.youtube.com/watch?v=pBr7jlXjqHs
对于这个例子,我们可以看到,使用只有2层给出了精度高。3或4层,精度降低,因为我们可能会过度拟合训练数据的模型。
熊猫DataFrame搜索API
比较和搜索通过运行在一个实验是非常重要的在决定哪些模型应该前进的测试和部署。虽然您可以使用MLflow UI搜索和比较,这变得困难的数量变大。这就是为什么我们已经实现了一个新的search_runs API MLflow Python客户机返回实验运行在一个熊猫DataFrame。通过这种方式,您可以使用熊猫和其他策划图书馆以编程方式分析跑步。
DataFrame包含run_id, experiment_id、状态和artifact_uri。它还将包含的指标、参数和标签每次运行。例如:
进口mlflow打印(mlflow.search_runs (filter_string =”指标。foo >0.5"))
run_id | experiment_id | metrics.foo | params.param1 | … | tags.mlflow.source.git.commit | tags.mlflow.user |
a3edc64fd9a042f2a8d4816be92555d5 | 0 | 2.84 | 39 | 2 ef523a6f5b60f971df261274fe2bc1cc809ca0f | 约翰 |
Java API流利
Java流利的API提供了一个更高级别的接口创建和MLflow运行日志。这个API与低级MlflowClient API,本质上是一个REST API包装器。下面的例子显示了一个简单的使用新的API来创建和运行到一个新的日志。
进口org.mlflow.tracking.ActiveRun;进口org.mlflow.tracking.MlflowContext;MlflowContext mlflow =新MlflowContext ();ActiveRun运行= mlflow.startRun (“运行”);run.logParam (“阿尔法”,“0.0”);run.logMetric (“MSE”,0.0);run.endRun ();
Kubernetes执行后端项目
MLflow 1.1,你现在可以运行MLflow项目Kubernetes集群。任何MLflow项目码头工人的环境是支持的。作为一个MLflow执行您的项目代码Kubernetes工作并定期监控其状态,直到完成。你可以选择一个目标Kubernetes集群和码头工人注册为您的项目使用一个简单的后台运行配置文件。有关更多信息,请查看新功能文档和GitHub上更新的例子。我们要感谢@marcusrehm的贡献这个激动人心的新功能!
搜索分页
为了使MLflow规模与成千上万的运行实验,我们已经改变了搜索API使用分页界面和用户界面。
https://www.youtube.com/watch?v=5J5Q7xEsG-g
其他功能和更新
我们已经强调了一小部分的功能在MLflow发布1.1以上。我们欢迎更多的输入(电子邮件保护)或提出问题或提交补丁在GitHub上。关于MLflow的使用问题,我们有一个MLflow标签堆栈溢出。您可以遵循@MLflow在Twitter上。
1.1之后的下一个什么
超越1.1版本,我们正在致力于下一个主要特性是MLflow模型注册表,这将允许您管理您的模型的生命周期从实验到部署和监控。我们宣布这在其他MLflow路线图更新火花AI MLflow峰会主题去年4月。
到来,我们也很兴奋火花AI欧洲峰会10月15日至17日。在峰会上我们会有一个训练专用的MLflow和模型部署。早起的人登记2019年8月16日结束。
最后,我们还将有一个研讨会在8月1日Productionizing机器学习产品经理与克莱门斯Mewald MLflow和乔尔·托马斯,高级解决方案架构师。
阅读更多
开始MLflow在你的笔记本电脑或砖,您可以:
学分
我们想要感谢下列贡献者更新,doc变化,和贡献在MLflow 1.1: Avinash Raghuthu, Aaron戴维森Akshaya Annavajhala,安穆立特Baveja,安德鲁·陈安德鲁•牧杖Ankit Mathur韩宁,哈维尔·Luraschi丽莎Shakury,马库斯雷姆曾为此写过马泰Zaharia马克斯•艾伦尼古拉•Laille理查德•藏Sid默奇,哈斯默奇,斯蒂芬妮Bodoff,安苏,Taur1ne,乌维l . Korn ahutterTA,之一Apurva科技,科里Zumar, kafendt, lennon310, nathansuh,托马斯Nykodym