【问题标题】:How to pass values to a trained Regressor Function from a Javascript front end?如何从 Javascript 前端将值传递给训练有素的回归函数?
【发布时间】:2017-03-26 22:20:08
【问题描述】:

我在一个包含 3756 行的数据集上训练了一个 SGDRegressor。这返回了我想要使用的 alpha 值。现在我想根据从 Javascript 前端接收到的新值集输出预测。这包括需要一种热编码的分类数据。我想知道如何将值传递给经过训练的回归模块并根据它生成预测。

def rmse_cv(model):
    rmse = np.sqrt(-cross_val_score(model, X_train, y, scoring="neg_mean_squared_error", cv=5))
    return(rmse)


alphas = [0.00005, 0.00015, 0.00045, 0.0135]
mv_sgd = [rmse_cv(SGDRegressor(alpha = alpha)).mean() 
        for alpha in alphas]

【问题讨论】:

    标签: javascript python pandas machine-learning scikit-learn


    【解决方案1】:

    假设您使用的是 sklearn,通常您会使用 .fit() 和 .predict() 方法。像这样创建一个预测器对象:

    from sklearn import linear_model
    
    clf = linear_model.SGDRegressor()
    clf.fit(X, y)
    

    然后当你得到一个新值时,比如从 javascript 中,你使用 predict.method

    prediction = clf.predict(newCase)
    

    有很多方法可以从 javascript 中获取值,如前所述,django 可能是一个好的开始。

    【讨论】:

    • 我是否将我从上面的函数中获得的 alpha 传递给变量 clf 中的回归器,然后对新的分类输入进行编码并将它们作为数组传递给 predict()?
    • 您无需手动创建 alpha - 使用 sklearn 。 SGDRegressor 对象将在其中存储系数,然后使用它们只需使用 .predict() 方法
    • 参数应该按什么顺序传入?
    • X的大小和传入的数据框大小不同。如何处理?
    • 您可以在文档中找到的顺序:scikit-learn.org/stable/modules/generated/… 两者的大小(特征数量)应该相同。
    猜你喜欢
    • 2016-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-07
    • 2017-02-14
    • 2019-11-08
    • 2011-07-12
    相关资源
    最近更新 更多