1. 程式人生 > >機器學習(K近鄰演算法程式碼實現 迴歸)

機器學習(K近鄰演算法程式碼實現 迴歸)

K近鄰演算法進行迴歸預測一般步驟

1 資料的匯入與預處理

2 資料的標準化與歸一化

3 生成訓練集和測試集

4 利用訓練集進行訓練,匯入測試集得出預測值

5 真實值與與測試值進行比較評價

import csv
import numpy as np
import pandas as pd
from sklearn.preprocessing import StandardScaler

#資料匯入與預處理
food_info = pd.read_csv("food_info.csv")
food0_info = food_info.dropna()
food1_info = food0_info.drop(["NDB_No","Shrt_Desc"],axis = 1)

#資料標準化或者歸一化
colunm = food1_info.columns
food1_info[column] = StandardScaler().fit_transform(food1_info[column])
food1_info.head()

#訓練集與測試集
norm_train_df = food1_info.copy().iloc[:2573]
norm_text_df = food1_info.copy().iloc[2573:]

# 匯入K近鄰演算法的迴歸類
from sklearn.neighbors import KNeighborsRegressor
columns = column[1:]
#例項化
knn = KNeighborsRegressor()
#匯入測試集的標籤值與屬性值,knn.fit(norm_train_df[columns],norm_train_df["Water_(g)"])
#測試集與訓練集進行比較(測試集中每一條資料分別與訓練集中的每一條資料進行計算,找到距離最近的k個鄰居(此處k = 5)),得到一個預測值
two_columns_predictes = knn.predict(norm_text_df[columns])

#生成的預測值與實際值進行評價
from sklearn.metrics import mean_squared_error
two_columns_mse = mean_squared_error(norm_text_df["Water_(g)"],two_columns_predictes)
two_columns_rmse = two_columns_mse**(1/2)
print(two_columns_rmse)

0.27313667573276207

相關推薦

機器學習K近鄰演算法程式碼實現 迴歸

K近鄰演算法進行迴歸預測一般步驟 1 資料的匯入與預處理 2 資料的標準化與歸一化 3 生成訓練集和測試集 4 利用訓練集進行訓練,匯入測試集得出預測值 5 真實值與與測試值進行比較評價 import csv import numpy as np import p

機器學習實戰——k-近鄰演算法Python實現問題記錄

  準備 kNN.py 的python模組 from numpy import * import operator def createDataSet(): group = array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])

機器學習K-近鄰演算法程式碼分析

在看Peter的K-近鄰實戰時,發現原來“手寫識別系統”不止是影象處理和影象識別可以解決,原來從影象也是矩陣資料的層面來看,不同數字的識別也是資料分類問題(2333……又打開了思維的新視角)。因本身是學影象處理出身,所以關於手寫識別系統,思維受限在怎樣進行影象處理、怎樣訓練數字模型、怎樣進行數字識別了。 該

機器學習實戰--K近鄰演算法實現

KNN演算法的工作原理為: 存在一個樣本資料的集合,也稱作訓練樣本集合,並且樣本集的每個資料都存在標籤。輸入沒有標籤的新資料後,將新資料的每個特徵與樣本集中資料對應的特徵進行比較,然後演算法提取樣本集中特徵最相似的分類標籤,一般只選擇樣本集中前K個最相似的資料,前K個相似資

機器學習實戰---k近鄰演算法程式碼及執行

import numpy as np #匯入numpy import operator #運算子模組 #k-近鄰演算法 #計算距離 def classify0(inX,dataSet,labels,k): dataSetSize=dataSet.shape[0] #shape讀取資料矩

小白python學習——機器學習篇——k-近鄰演算法KNN演算法

一、演算法理解 一般給你一資料集,作為該題目的資料(一個矩陣,每一行是所有特徵),而且每一組資料都是分了類,然後給你一個數據,讓這個你預測這組資料屬於什麼類別。你需要對資料集進行處理,如:歸一化數值。處理後可以用matplotlib繪製出影象,一般選兩個特徵繪製x,y軸,然後核心是計算出預測點到

機器學習K-近鄰演算法

本章內容: K-近鄰分類演算法 從文字檔案中解析和匯入資料 使用matplotlib建立擴散圖 歸一化數值 2-1 K-近鄰演算法概述 簡單的說,K-近鄰演算法採用測量不同特徵值之間的距離方法進行分類。 K-近鄰演算法 優點:精度高、對異常

機器學習實戰k近鄰演算法(kNN)應用之手寫數字識別程式碼解讀

from numpy import * from os import listdir import operator import time #k-NN簡單實現函式 def classify0(inX,dataSet,labels,k): #求出樣本集的行數,也就是labels標籤的數目

機器學習k-近鄰演算法k-nearest neighbor, k-NN

前言 kk近鄰學習是一種常用的監督學習方法。 kk近鄰法的輸入為例項的特徵向量,對應於特徵空間的點;輸出為例項的類別,可以取多類。 kk近鄰法的工作機制很簡單:給定測試樣本,基於某種距離度量(關於

機器學習K近鄰演算法,kd樹

https://www.cnblogs.com/eyeszjwang/articles/2429382.html kd樹詳解 https://blog.csdn.net/v_JULY_v/article/details/8203674 一、K-近鄰演算法(KNN)概述 

機器學習之決策樹 機器學習K-近鄰演算法

  都說萬事開頭難,可一旦開頭,就是全新的狀態,就有可能收穫自己未曾預料到的成果。從2018.12.28開始,決定跟隨《機器學習實戰》的腳步開始其征程,記錄是為了更好的監督、理解和推進,學習過程中用到的資料集和程式碼都將上傳到github   機器學習系列部落格:(1) 機器學習之K-近鄰演算法

機器學習實踐-k近鄰演算法-約會網站配對原始碼

原始碼如下: #-*- coding: utf-8 -*- from numpy import * import operator import pdb import matplotlib import matplotlib.pyplot as plt from mat

機器學習—使用k-近鄰演算法改進約會網站的配對效果

沒寫完先發出去,後面會修改QAQ python中zeros函式的用法 用於建立矩陣 將文字記錄轉化為numpy的解析程式 def file2matrix(filename): fr=open(filename) arrayOLines

機器學習實戰—k近鄰演算法(kNN)02-改進約會網站的配對效果

示例:使用k-近鄰演算法改進約會網站的配對效果 在約會網站上使用k-近鄰演算法: 1.收集資料:提供文字檔案。 2.準備資料:使用Python解析文字檔案。 3.分析資料:使用matplotlib畫二維擴散圖。 4.訓練演算法:此步驟不適用於k-近鄰演

機器學習K近鄰演算法

Knn演算法是一種簡單的監督學習演算法,雖然效能並不算非常出色,但是可解釋性非常強。理論上可以證明,Knn可以以任意精度擬合真實分類高維曲面。 一、Knn演算法分析 1、該演算法在處理樣本分佈不均勻的時候效果比較差。比如正類的樣本數量為1000,反類的樣本數量為100,即

機器學習K近鄰演算法 kNN(1)

可以說kNN是機器學習中非常特殊的沒有模型的演算法,為了和其他演算法統一,可以認為新聯資料集就是模型本身 1. kNN演算法基本實現 import numpy as np import ma

機器學習實戰——k-近鄰演算法概述

k近鄰演算法是最基礎的分類演算法,它的原理很簡單,就是拿當前的測試樣本與訓練樣本集中的所有樣本進行比較,採用歐式距離進行比較。 然後按照距離大小進行排序,從小到大排。然後在根據k的數值,選取前k個訓練樣本的分類結果進行統計,統計結果中出現的類別次數最多的類別,即為測試樣本的

機器學習K近鄰演算法 kNN(2)

1.knn演算法的超引數問題 """ 超引數 :執行機器學習演算法之前需要指定的引數 模型引數:演算法過程中學習的引數 kNN演算法沒有模型引數 kNN演算法中的k是典型的超引數 尋找最好的k """ from

機器學習實戰第二篇-k-近鄰演算法Python實現

      上一篇幅中,我們介紹了k-近鄰演算法的基本概念、具體的分析步驟和分析方法,本篇中我們將介紹如何通過Python工具實現一個k-近鄰演算法。 1. 準備-使用Python匯入資料     首

機器學習演算法-python實現】KNN-k近鄰演算法實現附原始碼

 下載地址 kNN演算法及例項原始碼實現#coding=utf-8 ''' Created on Sep 16, 2010 kNN: k Nearest Neighbors Input: inX: vector to compare to existing dataset (1xN)