vizier

vizier

开源黑盒优化框架助力机器学习研究

Open Source Vizier是一个Python开发的黑盒优化框架,源自Google Vizier项目。它提供用户、开发者和基准测试三大API,支持分布式多客户端环境。该框架集成了基于JAX的贝叶斯优化器,适用于超参数调优、进化算法和程序搜索等多种场景。作为开源项目,Vizier具有灵活的安装选项,可满足不同的优化研究需求。

Vizier黑盒优化超参数调优分布式系统机器学习Github开源项目
<figure> <img src="https://yellow-cdn.veclightyear.com/835a84d5/f65c8aee-5993-4240-b664-2a1e2c23e455.png" width=20% align="right"/> </figure>

开源Vizier:可靠灵活的黑盒优化

PyPI版本 持续集成 文档

Google AI博客 | 快速入门 | 文档 | 安装 | 引用与亮点

什么是开源(OSS) Vizier?

OSS Vizier是一个基于Python的黑盒优化和研究服务,它基于Google Vizier,后者是最早设计用于大规模工作的超参数调优服务之一。

<figure> <p align="center" width=65%> <img src="https://yellow-cdn.veclightyear.com/835a84d5/99ef8306-22f4-426b-b368-158504070939.gif"/> <br> <em><b>OSS Vizier的分布式客户端-服务器系统。动画由Tom Small制作。</b></em> </p> </figure>

快速入门 <a name="getting_started"></a>

作为用户的基本示例,以下展示了如何使用所有平面搜索空间类型来调优一个简单的目标函数:

from vizier.service import clients from vizier.service import pyvizier as vz # 要最大化的目标函数 def evaluate(w: float, x: int, y: float, z: str) -> float: return w**2 - y**2 + x * ord(z) # 算法、搜索空间和指标 study_config = vz.StudyConfig(algorithm='DEFAULT') study_config.search_space.root.add_float_param('w', 0.0, 5.0) study_config.search_space.root.add_int_param('x', -2, 2) study_config.search_space.root.add_discrete_param('y', [0.3, 7.2]) study_config.search_space.root.add_categorical_param('z', ['a', 'g', 'k']) study_config.metric_information.append(vz.MetricInformation('metric_name', goal=vz.ObjectiveMetricGoal.MAXIMIZE)) # 设置客户端并开始优化。Vizier服务将被隐式创建 study = clients.Study.from_study_config(study_config, owner='my_name', study_id='example') for i in range(10): suggestions = study.suggest(count=2) for suggestion in suggestions: params = suggestion.parameters objective = evaluate(params['w'], params['x'], params['y'], params['z']) suggestion.complete(vz.Measurement({'metric_name': objective}))

文档 <a name="documentation"></a>

OSS Vizier的接口包含三个主要API

  • 用户API: 允许用户优化他们的黑盒目标函数,并可选择为分布式多客户端设置设置服务器。
  • 开发者API: 定义了用于实现新优化算法的抽象和工具,用于研究和托管在服务中。
  • 基准测试API: 广泛的目标函数集合和方法,用于对算法进行基准测试和比较。

此外,它还包含高级API

  • Tensorflow Probability: 用于使用Tensorflow Probability和Flax编写贝叶斯优化算法。
  • PyGlove: 用于大规模进化实验和程序搜索,使用OSS Vizier作为分布式后端。

请查看OSS Vizier的ReadTheDocs文档以获取详细信息。

安装 <a name="installation"></a>

快速开始: 要使用我们最先进的基于JAX的贝叶斯优化器调优目标,请运行:

pip install google-vizier[jax]

高级安装

最小版本: 要仅从requirements.txt安装核心服务和客户端API,请运行:

pip install google-vizier

完整安装: 要支持所有算法和基准测试,请运行:

pip install google-vizier[all]

特定安装: 如果你只需要OSS Vizier的特定部分"X",请运行:

pip install google-vizier[X]

这将安装requirements-X.txt中的附加组件。可能的选项包括:

  • requirements-jax.txt:算法和基准测试共享的Jax库。
  • requirements-tf.txt:基准测试使用的Tensorflow库。
  • requirements-algorithms.txt:算法的其他存储库(如EvoJAX)。
  • requirements-benchmarks.txt:基准测试的其他存储库(如NASBENCH-201)。
  • requirements-test.txt:测试代码所需的库。

完整安装后,通过运行run_tests.sh检查所有单元测试是否正常工作。OSS Vizier需要Python 3.10+,而仅客户端包需要Python 3.8+。

引用与亮点 <a name="citing_vizier"></a>

<ins>引用Vizier:</ins> 如果您发现此代码有用,请考虑引用OSS Vizier论文以及Google Vizier论文

<ins>亮点:</ins> 我们跟踪著名用户媒体关注 - 如果OSS Vizier对您的工作有帮助,请告诉我们。

谢谢!

@inproceedings{oss_vizier, author = {Xingyou Song and Sagi Perel and Chansoo Lee and Greg Kochanski and Daniel Golovin}, title = {Open Source Vizier: Distributed Infrastructure and API for Reliable and Flexible Black-box Optimization}, booktitle = {Automated Machine Learning Conference, Systems Track (AutoML-Conf Systems)}, year = {2022}, } @inproceedings{google_vizier, author = {Daniel Golovin and Benjamin Solnik and Subhodeep Moitra and Greg Kochanski and John Karro and D. Sculley}, title = {Google Vizier: {A} Service for Black-Box Optimization}, booktitle = {Proceedings of the 23rd {ACM} {SIGKDD} International Conference on Knowledge Discovery and Data Mining, Halifax, NS, Canada, August 13 - 17, 2017}, pages = {1487--1495}, publisher = {{ACM}}, year = {2017}, url = {https://doi.org/10.1145/3097983.3098043}, doi = {10.1145/3097983.3098043}, }

编辑推荐精选

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

下拉加载更多