建立模型之后,如何调用呢?

随机森林建模之后,怎么用于预测系统a

 

随机森林建模,可以建很多种不同的模型,你这个讲得不是很清楚,建议去百度一下你对应的具体模型,有很多这样的例子。

还是用一个最简单的例子来演示一下吧。假如我们手头有两组数据_x和_y,在二维平面上表示若干个点。

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> _x = np.linspace(0, 2*np.pi, 100)
>>> _y = np.sin(_x)
>>> plt.plot(_x, _y, ls='', marker='o')
[<matplotlib.lines.Line2D object at 0x0000019FF17F3C08>]
>>> plt.show()

 

可以将_x视为只有一个特征维的数据集,经过回归训练,可以找到_x和_y的对应关系。这样我们就可以用训练结果来预测特定的x对应的y值了。

>>> from sklearn.ensemble import RandomForestRegressor
>>> rfr = RandomForestRegressor(n_estimators=20,max_depth=10)
>>> X_train = _x.reshape((20,1)) # 将_x变成20行1列的训练集
>>> y_train = _y
>>> rfr.fit(X_train, y_train) # 模型训练)
RandomForestRegressor(max_depth=10, n_estimators=20)
>>> x = np.array([0.3*np.pi, 0.8*np.pi, 1.3*np.pi]) # 用于测试的3个x
>>> X_test = x.reshape((3,1)) # 变成3行1列的训练集
>>> y = rfr.predict(X_test) # 模型应用
>>> plt.plot(_x, _y, ls='', marker='o') # 绘制训练集数据
[<matplotlib.lines.Line2D object at 0x0000019F82B30208>]
>>> plt.plot(x, y, ls='', marker='o') # 绘制测试集数据
[<matplotlib.lines.Line2D object at 0x0000019F82B2CDC8>]
>>> plt.show()

 

图中3个橙色点,即为训练出的模型的应用结果。 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y