Oracle中的随机森林回归

添加时间:2021-11-04 10:13:59

来源:

添加时间:2021-11-04 10:13:59

评分:

防伪码:CMSEASYSLhIJO9rB7QR06O779

每个决策树都有很高的方差,但是当我们将它们并行组合在一起时,结果方差很小,因为每个决策树都在特定样本数据上得到了完美的训练,因此输出不依赖于一个决策树而是多个决策树木。在分类问题的情况下,使用多数投票分类器获取最终输出。在回归问题的情况下,最终输出是所有输出的平均值。这部分是聚合。



随机森林是一种集成技术,能够使用多个决策树以及一种称为 Bootstrap 和聚合(通常称为装袋)的技术来执行回归和分类任务。这背后的基本思想是结合多个决策树来确定最终输出,而不是依赖于单个决策树。

随机森林有多个决策树作为基础学习模型。我们从数据集中随机执行行采样和特征采样,形成每个模型的样本数据集。这部分称为 Bootstrap。


我们需要像任何其他机器学习技术一样处理随机森林回归技术


设计一个特定的问题或数据并获取来源以确定所需的数据。

确保数据采用可访问的格式,否则将其转换为所需的格式。

指定获得所需数据可能需要的所有明显异常和缺失数据点。

创建机器学习模型

设置想要实现的基线模型

训练数据机器学习模型。

提供对模型的洞察 test data

现在比较模型test data和predicted data模型的性能指标。

如果它不能满足您的期望,您可以尝试相应地改进您的模型或对您的数据进行约会或使用其他数据建模技术。

在这个阶段,您解释您获得的数据并相应地报告。

您将在以下示例中使用类似的示例技术。

示例

下面是 Rando 森林回归的分步示例实现。


第 1 步:导入所需的库。



# Importing the libraries

import numpy as np

import matplotlib.pyplot as plt

import pandas as pd

第 2 步:导入并打印数据集



data = pd.read_csv('Salaries.csv')

print(data)


步骤 3:从数据集中选择所有行和第 1 列到 x,所有行和第 2 列作为 y



x = data.iloc[:, 1:2].values 

print(x)

y = data.iloc[:, 2].values  



第 4 步:将随机森林回归量拟合到数据集



# Fitting Random Forest Regression to the dataset

# import the regressor

from sklearn.ensemble import RandomForestRegressor

  

 # create regressor object

regressor = RandomForestRegressor(n_estimators = 100, random_state = 0)

  

# fit the regressor with x and y data

regressor.fit(x, y)  


第 5 步:预测新结果



Y_pred = regressor.predict(np.array([6.5]).reshape(1, 1))  # test the output by changing values

第 6 步:可视化结果



# Visualising the Random Forest Regression results

  

# arange for creating a range of values

# from min value of x to max 

# value of x with a difference of 0.01 

# between two consecutive values

X_grid = np.arange(min(x), max(x), 0.01) 

  

# reshape for reshaping the data into a len(X_grid)*1 array, 

# i.e. to make a column out of the X_grid value                  

X_grid = X_grid.reshape((len(X_grid), 1))

  

# Scatter plot for original data

plt.scatter(x, y, color = 'blue')  

  

# plot predicted data

plt.plot(X_grid, regressor.predict(X_grid), 

         color = 'green') 

plt.title('Random Forest Regression')

plt.xlabel('Position level')

plt.ylabel('Salary')

plt.show()


用户名 Name
评论 Comment

联系我们

/ CONTACT US

地 址:成都市人民南路四段成科西路三号

邮政编码:610000

电 话:18215660330

传 真:18215660330

手机:18215660330

邮 箱:179001057@qq.com

投诉邮 箱:18215660330

姓名Name
标题Title
邮 箱Emali
联系电话Tel
内容Content