如何在Azure Machine Learning Designer中为Python模型设置学习者类型?

问题描述 投票:1回答:1

我正在通过具有自定义Python模型(简单的kNN分类)来测试Azure机器学习设计器。我想调整'k'的值并获得性能最好的模型,但是“ Tune Model Hyperparameters”模块在提供“ Create Python Model”的输出作为输入时给出以下错误。

ModuleExceptionMessage:LearnerTypesNotCompatible: Got incompatible learner type: "None". Expected learner types are: "(<TaskType.BinaryClassification: 1>, <TaskType.MultiClassification: 2>, <TaskType.Regression: 3>)".

如何设置自己的Python模型的学习者类型?可能吗我是否应该使用“ Execute Python Script”-模块对参数进行自我调整?

我的“创建Python模型”-模块脚本:

import pandas as pd
from sklearn.neighbors import KNeighborsClassifier

class AzureMLModel:
    def __init__(self, k = 3):
        self.model = KNeighborsClassifier(n_neighbors = k)
        self.feature_column_names = list()

    def train(self, df_train, df_label):
        self.feature_column_names = df_train.columns.tolist()
        self.model.fit(df_train, df_label)

    def predict(self, df):
        return pd.DataFrame({'Scored Labels': self.model.predict(df[self.feature_column_names])})
python azure machine-learning azure-machine-learning-studio azure-machine-learning
1个回答
0
投票

[Tune Model Hyperparameters模块不支持将Create Python Model模块用作输入模型。

我的建议是探索使用azureml-sdkHyperDrive调整超参数。 Here's a link作了介绍,结尾处还有Jupyter笔记本。

© www.soinside.com 2019 - 2024. All rights reserved.