Python程序教程

您现在的位置是:首页 >  python学习

当前栏目

快速入门Python机器学习(23)

快速,入门,Python,机器,学习,23
2025-03-13 21:27:14 时间
  • nmap的各种扫描
  • 使用Metasploit通过木马攻击Android
  • 使用Metasploit通过木马攻击Windows 2000
  • 使用Metasploit通过操作系统漏洞攻击Windows 7
  • 提权
  • 渗透后的操作
  • 直接加xianggu0625报名,上课在腾讯会议上进行

AdaBoost Regressor

类参数、属性和方法

class sklearn.ensemble.AdaBoostRegressor(base_estimator=None, *, n_estimators=50, learning_rate=1.0, loss='linear', random_state=None

属性

属性

类型

解释

base_estimator_

estimator

从中生成集合的基估计量。

estimators_

list of classifiers

拟合子估计量的集合。

estimator_weights_

ndarray of floats

增强集合中每个估计器的权重。

estimator_errors_

ndarray of floats

增强集合中每个估计器的分类误差。

feature_importances_

ndarray of shape (n_features,)

基于杂质的特征非常重要。

方法

fit(X, y[, sample_weight])

从训练集(X,y)构建一个增强的分类器。

get_params([deep])

获取此估计器的参数。

predict(X)

预测X的类。

score(X, y[, sample_weight])

返回给定测试数据和标签的平均精度。

staged_predict(X)

返回X的阶段性预测。

staged_score(X, y[, sample_weight])

返回X,y的阶段分数。

有噪音make_regression AdaBoostRegressor算法分析

def AdaBoostRegressor_of_make_regression():
       myutil = util()
       X,y = make_regression(n_samples=100,n_features=1,n_informative=2,noise=50,random_state=8)
       X_train,X_test,y_train,y_test = train_test_split(X, y, random_state=8,test_size=0.3)
       clf = AdaBoostRegressor(n_estimators=50,random_state=11).fit(X,y)
       title = "make_regression AdaBoostRegressor()回归线(有噪音)"
       myutil.print_scores(clf,X_train,y_train,X_test,y_test,title)
       myutil.draw_line(X[:,0],y,clf,title)

输出

make_regression AdaBoostRegressor()回归线(有噪音):
82.73%
make_regression AdaBoostRegressor()回归线(有噪音):
72.83%

糖尿病AdaBoostRegressor算法

def diabetes_of_AdaBoostRegressor():
       myutil = util()
       X,y = datasets.load_diabetes().data,datasets.load_diabetes().target
       X_train,X_test,y_train,y_test = train_test_split(X, y, random_state=0)
       clf = AdaBoostRegressor(n_estimators=50,random_state=11)
       clf.fit(X_train,y_train)
       title = "AdaBoostRegressor算法分析糖尿病数据"
       myutil.print_scores(clf,X_train,y_train,X_test,y_test,title)
       myutil.plot_learning_curve(AdaBoostRegressor(n_estimators=50,random_state=11),X,y,title)
       myutil.show_pic(title)

输出

AdaBoostRegressor算法分析糖尿病数据:
66.67%
AdaBoostRegressor算法分析糖尿病数据:
31.11%

效果不好,存在过拟合现象

波士顿房价AdaBoostRegressor算法

def boston_of_AdaBoostRegressor():
       myutil = util()
       X,y = datasets.load_boston().data,datasets.load_boston().target
       X_train,X_test,y_train,y_test = train_test_split(X, y, random_state=0)
       clf = AdaBoostRegressor(n_estimators=50,random_state=11)
       clf.fit(X_train,y_train)
       title = "AdaBoostRegressor算法分析波士顿房价数据"
       myutil.print_scores(clf,X_train,y_train,X_test,y_test,title)
       myutil.plot_learning_curve(AdaBoostRegressor(n_estimators=50,random_state=11),X,y,title)
       myutil.show_pic(title)

输出

AdaBoostRegressor算法分析波士顿房价数据:
92.75%
AdaBoostRegressor算法分析波士顿房价数据:
70.75%