机器学习对价格预测做模型与应用
生活随笔
收集整理的這篇文章主要介紹了
机器学习对价格预测做模型与应用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
說到價格預測,我們首先能想到的就是kaggle一個比賽,關于房價的預測,不過在房地產行業這么火熱的時代,做一個中國版的房價預測也很有意思,但是博主想做的是一個對二手設備價格的預測,通過對二手設備的類型、年代、用過的時間、地理位置等各種特征,進行一個建模,來預測售價,不過這是個比較容易點的應用,未來對于能通過一張或者幾張圖片就預測二手設備的價格,我覺得這個是比較有挑戰的。
下面對價格的預測主要通過線性回歸模型、決策樹(回歸樹)模型、xgboost、神經網絡、支持向量回歸等算法模型,用sk-learn包來構建。
1.線性回歸
from sklearn.linear_model import LinearRegression2.決策樹回歸
from sklearn.tree import DecisionTreeRegressor3. 支持向量回歸
from sklearn.svm import SVR linear_svr = SVR(kernel='linear') linear_svr.fit(x_train, y_train.ravel()) linear_svr_predict = linear_svr.predict(x_test)4. 梯度提升回歸算法
import numpy as np from sklearn.ensemble import GradientBoostingRegressor gbdt=GradientBoostingRegressor( loss='ls' , learning_rate=0.1 , n_estimators=100 , subsample=1 , min_samples_split=2 , min_samples_leaf=1 , max_depth=3 , init=None , random_state=None , max_features=None , alpha=0.9 , verbose=0 , max_leaf_nodes=None , warm_start=False ) train_feat=np.genfromtxt("train_feat.txt",dtype=np.float32) train_id=np.genfromtxt("train_id.txt",dtype=np.float32) test_feat=np.genfromtxt("test_feat.txt",dtype=np.float32) test_id=np.genfromtxt("test_id.txt",dtype=np.float32) print train_feat.shape,rain_id.shape,est_feat.shape,est_id.shape gbdt.fit(train_feat,train_id) pred=gbdt.predict(test_feat) total_err=0 for i in range(pred.shape[0]): print pred[i],test_id[i] err=(pred[i]-test_id[i])/test_id[i] total_err+=err*err print total_err/pred.shape[0]5. 隨機森林回歸
from sklearn.ensemble import RandomForestRegressordata=[[0,0,0],[1,1,1],[2,2,2],[1,1,1],[2,2,2],[0,0,0]] target=[0,1,2,1,2,0] rf = RandomForestRegressor() rf.fit(data, target)print rf.predict([[1,1,1]]) print rf.predict([[1,1,1],[2,2,2]]) #[ 1.] #[ 1. 1.9]data2=[[0,0,0],[1,1,1],[2,2,2],[3,3,3],[4,4,4],[5,5,5]] target2=[0,1,2,3,4,5] rf2 = RandomForestRegressor() rf2.fit(data2, target2) print rf2.predict([[1,1,1]]) print rf2.predict([[1,1,1],[2,2,2],[4,4,4]]) #[ 0.7] #[ 0.7 1.8 4. ]6.xgboost的線性回歸
import xgboost as xgb regr = xgb.XGBRegressor()7. 神經網絡
可以利用神經網絡模型做預測,這個例子暫時還沒有,后期再補吧。
總結:本文主要是對價格預測模型給出了幾種快速構建的選擇,基于上面模型,還可以做模型融合等操作。如果更深入了解一些相關內容,參考這篇文章:基于機器學習方法對銷售預測的研究
總結
以上是生活随笔為你收集整理的机器学习对价格预测做模型与应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 流行学习简单入门与理解
- 下一篇: Hive中的一种假NULL