2

我正在尝试使用MOE(在 Yelp 创建的“度量优化引擎”)来调整机器学习算法的超参数。他们的文档有点有限,我很难找到可以遵循的示例。

假设我想根据以下分布找到CGammakernel type支持向量机的最佳值:

SVC_PARAMS = [
    {
        "bounds": {
            "max": 10.0,
            "min": 0.01,
        },
        "name": "C",
        "type": "double",
        "transformation": "log",
    },
    {
        "bounds": {
            "max": 1.0,
            "min": 0.0001,
        },
        "name": "gamma",
        "type": "double",
        "transformation": "log",
    },
    {
        "type": "categorical",
        "name": "kernel",
        "categorical_values": [
            {"name": "rbf"},
            {"name": "poly"},
            {"name": "sigmoid"},
        ],
    },
]

我试图最大化的目标函数是我的训练集的准确度得分

我将如何使用MOE 的 api来实现这一点?

4

1 回答 1

1

MOE 不支持分类变量,它只允许连续的超参数。要实现您正在寻找的内容,您可以将每个分类实例视为一个单独的问题进行优化,然后使用MOE 示例中概述的流程。最后,您可以从每种内核类型的调整模型中选择最佳模型。

或者,您可以使用由创建 MOE 的团队构建的 SigOpt。我们建立并扩展了 MOE 中开始的许多工作。它提供对连续、整数和分类参数的支持,以及 MOE 中没有的许多其他功能和增强功能。我们在这篇博文中概述了这个确切的示例,并在博文中提供了示例代码。您可以在我们的免费试用层或我们的免费学术层中运行此示例。

于 2015-10-19T22:38:08.230 回答