【问题标题】:Error in LinearRegression Model while using Flask使用 Flask 时线性回归模型中的错误
【发布时间】:2022-01-29 01:43:31
【问题描述】:

我正在为汽车价格预测开发一个简单的线性回归模型。 在 Jupyter Notebook 模型中工作正常,但从 Flask 调用时会出错。 我正在使用 pickle 库来存储经过训练的模型,并将其加载到 Flask 中

我尝试过的代码:

model = pickle.load(open('CarPricePredictorModel.pkl','rb'))#read binary 

路由功能:

@app.route("/predict",methods=['post'])
def predict():
    company = request.form.get('company')
    model = request.form.get('model')
    year = int(request.form.get('year'))
    fuel_type = request.form.get('fuel_type')
    kms_driven = int(request.form.get('kms_driven'))
    prediction = model.predict(pd.DataFrame([[model,company,year,kms_driven,fuel_type]],columns=['name','company','year','kms_driven','fuel_type']))
    print(prediction)
    
    print(prediction)
    return prediction

错误: AttributeError: 'str' object has no attribute 'predict'

谁能告诉我哪里出错了?

【问题讨论】:

    标签: python flask machine-learning jupyter-notebook pickle


    【解决方案1】:

    我不小心在代码中用汽车型号覆盖了变量model。

    即兴版本的代码

    predictionmodel = pickle.load(open('CarPricePredictorModel.pkl','rb'))#read binary 
    
    @app.route("/predict",methods=['post'])
    def predict():
        try:
            company = request.form.get('company')
            model = request.form.get('model')
            year = int(request.form.get('year'))
            fuel_type = request.form.get('fuel_type')
            kms_driven = int(request.form.get('kms_driven'))
            prediction = predictionmodel.predict(pd.DataFrame([[model,company,year,kms_driven,fuel_type]],columns=['name','company','year','kms_driven','fuel_type']))
            return str(round(prediction[0],2))
    
        except ValueError:
            return "Every field is mandatory" 
       
            
    

    谢谢你:)。

    【讨论】:

      猜你喜欢
      • 2018-05-03
      • 1970-01-01
      • 2015-12-14
      • 1970-01-01
      • 1970-01-01
      • 2019-10-09
      • 1970-01-01
      • 2021-03-12
      • 1970-01-01
      相关资源
      最近更新 更多