使用python實現多項式迴歸,沒有使用sklearn等機器學習框架,目的是幫助理解算法的原理。python
使用一個簡單的數據集來模擬,只有幾條數據。算法
代碼
- 從數據集中讀取X和y。
- 爲X添加二次方項,用Z替換。
- 給Z添加 1 列,初始化爲 1 ,用來求偏置項。
- 劃分訓練集和測試集。
- 將Z和y的訓練集轉換爲矩陣形式。
- 和線性迴歸相似,使用正規方程法,先驗證矩陣的可逆性。
- 去掉Z中全爲1的列。
- 使用測試集驗證模型。
- Z和y的訓練集轉換回數組形式。
- 打印結果和圖片。
運行結果
從圖中看出數據分佈在一條拋物線附近。
最終獲得的模型爲:
若是須要代碼和數據集,請掃描下面二維碼關注公衆號【AI developer】,回覆【代碼】便可免費獲取。