scikit-learn 分类 回归 聚类

sklearn6大功能

 

分类:离散

回归:连续

聚类:无监督学习

算法:随机森林,决策树,知识向量机 svm,KNN,线性回归

sklearn处理机器学习问题的三个步骤:数据准备与预处理 =》模型选择与训练=》模型验证与参数调优

 

知识向量机svm 杨丽坤  98~2006年吊打神经网络,直到希顿的深度信念网络出现

决策树就一棵树;随机森林有很多棵树,集成的思想。

 

sklearn_regression.py

import numpy as np
import matplotlib.pyplot as plt
# from sklearn import linear_model
# from sklearn import tree
# from sklearn.tree import DecisionTreeRegressor
# from sklearn import neighbors
# from sklearn import svm
from sklearn import ensemble

def f(x1,x2):
    y=0.5*np.sin(x1)+0.5*np.cos(x2)+0.1*x1+3
    return y

def load_data():
    x1_train=np.linspace(0,50,500)
    x2_train=np.linspace(-10,10,500)
    data_train=np.array([[x1,x2,f(x1,x2)+(np.random.random(1)-0.5)]for x1,x2 in zip(x1_train,x2_train)])
    x1_test= np.linspace(0,50,100)+0.5*np.random.random(100)
    x2_test= np.linspace(-10,10,100)+0.02*np.random.random(100)
    data_test = np.array([[x1,x2,f(x1,x2)] for x1,x2 in zip(x1_test,x2_test)])
    return data_train, data_test

def try_different_method(clf):
    train, test = load_data()
    x_train, y_train = train[:,:2], train[:,2] #数据前两列是x1,x2 第三列是y,这里的y有随机噪声
    x_test ,y_test = test[:,:2], test[:,2] # 同上,不过这里的y没有噪声
    clf.fit(x_train,y_train) # 训练
    score = clf.score(x_test, y_test) #训练的怎么样
    result = clf.predict(x_test) # 预测
    plt.figure()
    plt.plot(np.arange(len(result)), y_test,'go-',label='true value')
    plt.plot(np.arange(len(result)),result,'ro-',label='predict value')
    plt.title('score: %f'%score)
    plt.legend()
    plt.show()

def main():

#  clf=linear_model.LinearRegression()
#  try_different_method(clf)

#  clf = DecisionTreeRegressor()
#  try_different_method(clf)

#  clf = svm.SVR()
#  try_different_method(clf)

#  clf=neighbors.KNeighborsRegressor()
#  try_different_method(clf)

#  clf = ensemble.RandomForestRegressor(n_estimators=20)  #随机森林
#  try_different_method(clf)
   
#  clf = ensemble.AdaBoostRegressor(n_estimators=50) # adaboost
#  try_different_method(clf)

 clf = ensemble.GradientBoostingRegressor(n_estimators=100) # GBRT 梯度回升
 try_different_method(clf)

if __name__=="__main__":
   main()

 

数据为王,有算法没数据没有意义

残差网络2015年

残差网络之后就没有很牛逼的网络,imagenet 2015年后停止比赛,是因为发现比赛都是残差网络resnet的基础上调参,没有实质的发展。

理论跟不上应用。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值