Python數據分析實戰(五)——sklearn實現BP神經網絡預測


使用pandas導入數據

    from sklearn.neural_network import MLPRegressor
    import pandas as pd
    import numpy as np
    data_tr = pd.read_csv(r'./data/BPdata_tr.txt')   # 導入數據
    data_te = pd.read_csv(r'./data/BPdata_te.txt')

查看data_tr

    data_tr
               x1        x2         y
    0    0.065735  0.044223  0.006277
    1    0.049985  0.334657  0.114494
    2    0.541525  0.027610  0.294011
    3    0.038182  0.284811  0.082575
    4    0.262401  0.198246  0.108156
    ..        ...       ...       ...
    495  0.343548  0.500284  0.368309
    496  0.259262  0.558471  0.379106
    497  0.297697  0.123911  0.103977
    498  0.507976  0.304445  0.350726
    499  0.396284  0.607128  0.525645
    [500 rows x 3 columns]

調用API訓練模型

    model = MLPRegressor(hidden_layer_sizes=(10,), random_state=10,learning_rate_init=0.1)  # BP神經網絡回歸模型
    model.fit(data_tr.iloc[:,:2],data_tr.iloc[:,2])  # 訓練模型
    pre = model.predict(data_te.iloc[:,:2])  # 模型預測
    np.abs(data_te.iloc[:,2]-pre).mean()  # 模型評價

查看模型預測值與實際差值絕對值的平均值

    np.abs(data_te.iloc[:,2]-pre).mean()  # 模型評價
    0.037916438908481044
    
  • 總結:API調用較容易,但重點在於對模型中算法的理解,想要調試好模型,需調試好參數。

在這里插入圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM