google/pyglove
Manipulating Python Programs
解决的问题
PyGlove 提供了一种将 Python 对象视为可轻松操作、重新绑定和搜索的符号表示的方法。这简化了元程序的创建,特别是在需要优化或进化超参数或模型架构的复杂机器学习工作流中。
工作原理
它为 Python 引入了符号对象编程模型。通过使用 @pg.symbolize 装饰器,用户可以将 Python 类变为符号化。一旦符号化,对象可以被“重新绑定”到不同的值,或使用 pg.oneof 等原语定义为搜索空间,从而实现对更优程序配置的自动搜索。
适用人群
该库专为从事自动化机器学习(AutoML)、进化计算和大规模机器学习团队的研究人员和开发者设计,适用于需要高效共享和演化机器学习代码的用户。
特色亮点
- 符号对象模型:允许在对象创建后直接操作 Python 对象。
- 自动搜索 API:提供工具,可轻松将搜索功能集成到现有 Python 程序中。
- 搜索算法:包含一系列即用型搜索算法,并提供构建新算法的框架。
- 分布式基础设施:可与分布式后端(如 Open Source Vizier)集成,支持大规模搜索。
相关
- 项目
- 项目
- 项目
- 项目
- 项目