Sklearn StackingClassifier:将要素添加为最终估算器的输入

如何解决Sklearn StackingClassifier:将要素添加为最终估算器的输入

我正在使用管道和堆栈分类器来构建分类管道。在我的设置中,我想将一些额外的原始功能以及上一级模型的预测传递给最终估计器。以图表的方式,如下所示:

enter image description here

我仍然想利用这两个管道(除了添加Feat x / y之外,我已经用来设置所有东西)和StackingClassifier来做到这一点,因为它可以从头到尾训练堆叠模型-干净利落。但是,我看不到将原始功能添加到先前“级别”模型的预测中的选项。有什么好方法吗?

注意:输入到最终估计量的特征与输入到模型1和模型2的特征不同,因此我不是在寻找 pass_through = True 标志。

解决方法

此功能不是快速功能,但我可以想到两种将其组合在一起的方法,同时仍然使用StackingClassifier自动化。每个都有缺点。

将更多功能纳入预测

制作一个虚拟的预测器,通过仅返回输入来获取“预测”,并将其用作基本估计器,以将额外的特征传递给元估计器。使用ColumnTransformer来选择基本估计量的特征或直通特征。

from sklearn.base import ClassifierMixin,TransformerMixin
from sklearn.pipeline import Pipeline

class IdentityPassthrough(ClassifierMixin):
    def __init__(self):
        pass
    def fit(self,X,y):
        return self
    def predict(self,X):
        return X

partial_passthrough = Pipeline([
    ('pass',ColumnTransformer([('pass','passthrough',['x','y'])])),('ident',IdentityPassthrough()),])
base_features = ColumnTransformer([('pass',['a','b'])])

model = StackingClassifier(estimators=[
        ('pass',partial_passthrough),('tree',Pipeline([('select',base_features),DecisionTreeClassifier())])),('knn',KNeighborsClassifier())])),])

model.fit(X,y)

使用直通并选择基本特征

对元估计器使用组合,从基础估计器和所需的额外特征中选择要预测的特征。这有点令人担忧,因为您必须知道自己得到正确的列顺序(直到sklearn完成处理功能名称)。即,在下面的代码中,特征0和1是预测的概率(并且,如果堆栈方法不是排他的predict_proba,则由于类预测为负,因此必须为1和3!)和4和5是目标直通变量(在原始帧中分别索引为2和3)。

base_features = ColumnTransformer([('pass',['mean radius','mean texture'])])

model = StackingClassifier(
    estimators=[
        ('tree',DecisionTreeClassifier(random_state=42))])),],final_estimator=Pipeline([
        ('select',ColumnTransformer([('select',[0,1,4,5])])),('model',LogisticRegression())
    ]),passthrough=True,)

model.fit(X,y)

模型图:

<!-- style defs (common to the two exports from estimator_html_repr) -->
<style>div.sk-top-container {color: black;background-color: white;}div.sk-toggleable {background-color: white;}label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.2em 0.3em;box-sizing: border-box;text-align: center;}div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px,1px,1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}div.sk-estimator {font-family: monospace;background-color: #f0f8ff;margin: 0.25em 0.25em;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;}div.sk-estimator:hover {background-color: #d4ebff;}div.sk-parallel-item::after {content: "";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}div.sk-serial::before {content: "";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 2em;bottom: 0;left: 50%;}div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;}div.sk-item {z-index: 1;}div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;}div.sk-parallel-item {display: flex;flex-direction: column;position: relative;background-color: white;}div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}div.sk-parallel-item:only-child::after {width: 0;}div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0.2em;box-sizing: border-box;padding-bottom: 0.1em;background-color: white;position: relative;}div.sk-label label {font-family: monospace;font-weight: bold;background-color: white;display: inline-block;line-height: 1.2em;}div.sk-label-container {position: relative;z-index: 2;text-align: center;}div.sk-container {display: inline-block;position: relative;}</style>

<!-- First approach diagram: -->
<div class="sk-top-container"><div class="sk-container"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="a4c7712b-4e69-42ca-b31f-ecbe7b6d1d89" type="checkbox" ><label class="sk-toggleable__label" for="a4c7712b-4e69-42ca-b31f-ecbe7b6d1d89">StackingClassifier</label><div class="sk-toggleable__content"><pre>StackingClassifier(estimators=[('pass',Pipeline(steps=[('pass',ColumnTransformer(transformers=[('pass',['mean '                                          'perimeter','mean '                                          'area'])])),<__main__.IdentityPassthrough object at 0x7f2bfbf1f358>)])),Pipeline(steps=[('select',['mean '                                          'radius','mean '                                          'texture'])])),KNeighborsClassifier())]))])</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-serial"><div class="sk-item"><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><label>pass</label></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-serial"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="c41ba408-2542-42cf-be5d-d2bdb1f7ca39" type="checkbox" ><label class="sk-toggleable__label" for="c41ba408-2542-42cf-be5d-d2bdb1f7ca39">pass: ColumnTransformer</label><div class="sk-toggleable__content"><pre>ColumnTransformer(transformers=[('pass',['mean perimeter','mean area'])])</pre></div></div></div><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="d71f311c-d151-402b-80a4-97fcb9464d8f" type="checkbox" ><label class="sk-toggleable__label" for="d71f311c-d151-402b-80a4-97fcb9464d8f">pass</label><div class="sk-toggleable__content"><pre>['mean perimeter','mean area']</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="3e9e3a12-5622-4e56-9171-dbc690ca50d8" type="checkbox" ><label class="sk-toggleable__label" for="3e9e3a12-5622-4e56-9171-dbc690ca50d8">passthrough</label><div class="sk-toggleable__content"><pre>passthrough</pre></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="b5753df0-b293-4aeb-bbdb-d9adc63b6ac8" type="checkbox" ><label class="sk-toggleable__label" for="b5753df0-b293-4aeb-bbdb-d9adc63b6ac8">IdentityPassthrough</label><div class="sk-toggleable__content"><pre><__main__.IdentityPassthrough object at 0x7f2bfbf1f358></pre></div></div></div></div></div></div></div></div><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><label>tree</label></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-serial"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="4952e340-a144-40cd-897b-dcdee029fecb" type="checkbox" ><label class="sk-toggleable__label" for="4952e340-a144-40cd-897b-dcdee029fecb">select: ColumnTransformer</label><div class="sk-toggleable__content"><pre>ColumnTransformer(transformers=[('pass','mean texture'])])</pre></div></div></div><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="7efbe86f-2262-4048-81fd-7c652803cf4f" type="checkbox" ><label class="sk-toggleable__label" for="7efbe86f-2262-4048-81fd-7c652803cf4f">pass</label><div class="sk-toggleable__content"><pre>['mean radius','mean texture']</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="7ccdbf06-9312-4424-a74e-e1c56b3fbe88" type="checkbox" ><label class="sk-toggleable__label" for="7ccdbf06-9312-4424-a74e-e1c56b3fbe88">passthrough</label><div class="sk-toggleable__content"><pre>passthrough</pre></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="3a2df016-3631-4cc6-960c-695466268875" type="checkbox" ><label class="sk-toggleable__label" for="3a2df016-3631-4cc6-960c-695466268875">DecisionTreeClassifier</label><div class="sk-toggleable__content"><pre>DecisionTreeClassifier(random_state=42)</pre></div></div></div></div></div></div></div></div><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><label>knn</label></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-serial"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="5aaa1a50-3954-43c0-802d-0679ecfaaa5f" type="checkbox" ><label class="sk-toggleable__label" for="5aaa1a50-3954-43c0-802d-0679ecfaaa5f">select: ColumnTransformer</label><div class="sk-toggleable__content"><pre>ColumnTransformer(transformers=[('pass','mean texture'])])</pre></div></div></div><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="836d9068-cfb3-4545-a714-6f349403d567" type="checkbox" ><label class="sk-toggleable__label" for="836d9068-cfb3-4545-a714-6f349403d567">pass</label><div class="sk-toggleable__content"><pre>['mean radius','mean texture']</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="0c9e6b1f-0f96-4d6f-8efc-e3bada46d6a7" type="checkbox" ><label class="sk-toggleable__label" for="0c9e6b1f-0f96-4d6f-8efc-e3bada46d6a7">passthrough</label><div class="sk-toggleable__content"><pre>passthrough</pre></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="56bfccc3-bca0-4d87-a377-a81913e4098c" type="checkbox" ><label class="sk-toggleable__label" for="56bfccc3-bca0-4d87-a377-a81913e4098c">KNeighborsClassifier</label><div class="sk-toggleable__content"><pre>KNeighborsClassifier()</pre></div></div></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="57737187-5f4c-4186-ad65-e68cecfe14e8" type="checkbox" ><label class="sk-toggleable__label" for="57737187-5f4c-4186-ad65-e68cecfe14e8">LogisticRegression</label><div class="sk-toggleable__content"><pre>LogisticRegression()</pre></div></div></div></div></div></div></div></div></div>

<!-- Second approach diagram: -->
<div class="sk-top-container"><div class="sk-container"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="034d2534-0d63-4319-bfbf-3b0a7117e00f" type="checkbox" ><label class="sk-toggleable__label" for="034d2534-0d63-4319-bfbf-3b0a7117e00f">StackingClassifier</label><div class="sk-toggleable__content"><pre>StackingClassifier(estimators=[('tree',KNeighborsClassifier())]))],final_estimator=Pipeline(steps=[('select',ColumnTransformer(transformers=[('select',LogisticRegression())]),passthrough=True)</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-serial"><div class="sk-item"><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><label>tree</label></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-serial"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="50985202-3021-4333-877c-034e62c6e07a" type="checkbox" ><label class="sk-toggleable__label" for="50985202-3021-4333-877c-034e62c6e07a">select: ColumnTransformer</label><div class="sk-toggleable__content"><pre>ColumnTransformer(transformers=[('pass','mean texture'])])</pre></div></div></div><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="8132ce46-3e0b-42d2-b42b-f0a53d192c07" type="checkbox" ><label class="sk-toggleable__label" for="8132ce46-3e0b-42d2-b42b-f0a53d192c07">pass</label><div class="sk-toggleable__content"><pre>['mean radius','mean texture']</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="e1970d86-b28e-41d0-8297-4d2ed67b4b50" type="checkbox" ><label class="sk-toggleable__label" for="e1970d86-b28e-41d0-8297-4d2ed67b4b50">passthrough</label><div class="sk-toggleable__content"><pre>passthrough</pre></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="fafe6dec-d6a7-4c00-b561-17f3307e4bde" type="checkbox" ><label class="sk-toggleable__label" for="fafe6dec-d6a7-4c00-b561-17f3307e4bde">DecisionTreeClassifier</label><div class="sk-toggleable__content"><pre>DecisionTreeClassifier(random_state=42)</pre></div></div></div></div></div></div></div></div><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><label>knn</label></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-serial"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="8d608e7c-c318-4a67-a9b7-26995a77bcc6" type="checkbox" ><label class="sk-toggleable__label" for="8d608e7c-c318-4a67-a9b7-26995a77bcc6">select: ColumnTransformer</label><div class="sk-toggleable__content"><pre>ColumnTransformer(transformers=[('pass','mean texture'])])</pre></div></div></div><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="12515389-377c-4fd1-9b50-cf0515dc1919" type="checkbox" ><label class="sk-toggleable__label" for="12515389-377c-4fd1-9b50-cf0515dc1919">pass</label><div class="sk-toggleable__content"><pre>['mean radius','mean texture']</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="4fa202f1-74c0-47ba-b34d-dbc4e460eff9" type="checkbox" ><label class="sk-toggleable__label" for="4fa202f1-74c0-47ba-b34d-dbc4e460eff9">passthrough</label><div class="sk-toggleable__content"><pre>passthrough</pre></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="0ac195fa-6584-4220-a00e-8da1dd09b5de" type="checkbox" ><label class="sk-toggleable__label" for="0ac195fa-6584-4220-a00e-8da1dd09b5de">KNeighborsClassifier</label><div class="sk-toggleable__content"><pre>KNeighborsClassifier()</pre></div></div></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-serial"><div class="sk-item sk-dashed-wrapped"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="ede1e052-c7af-4bd3-9da9-2fcc69dd8c86" type="checkbox" ><label class="sk-toggleable__label" for="ede1e052-c7af-4bd3-9da9-2fcc69dd8c86">select: ColumnTransformer</label><div class="sk-toggleable__content"><pre>ColumnTransformer(transformers=[('select',5])])</pre></div></div></div><div class="sk-parallel"><div class="sk-parallel-item"><div class="sk-item"><div class="sk-label-container"><div class="sk-label sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="8ad23c33-3176-45c6-9504-98299d187eda" type="checkbox" ><label class="sk-toggleable__label" for="8ad23c33-3176-45c6-9504-98299d187eda">select</label><div class="sk-toggleable__content"><pre>[0,5]</pre></div></div></div><div class="sk-serial"><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="9fa0446e-ea2b-4c32-b32b-07c9b2643717" type="checkbox" ><label class="sk-toggleable__label" for="9fa0446e-ea2b-4c32-b32b-07c9b2643717">passthrough</label><div class="sk-toggleable__content"><pre>passthrough</pre></div></div></div></div></div></div></div></div><div class="sk-item"><div class="sk-estimator sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="450a759e-b194-4bf9-a92b-b296f6c9f527" type="checkbox" ><label class="sk-toggleable__label" for="450a759e-b194-4bf9-a92b-b296f6c9f527">LogisticRegression</label><div class="sk-toggleable__content"><pre>LogisticRegression()</pre></div></div></div></div></div></div></div></div></div></div></div>

查看有关威斯康星州乳腺癌数据集in this notebook的全部内容。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams[&#39;font.sans-serif&#39;] = [&#39;SimHei&#39;] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -&gt; systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping(&quot;/hires&quot;) public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate&lt;String
使用vite构建项目报错 C:\Users\ychen\work&gt;npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-
参考1 参考2 解决方案 # 点击安装源 协议选择 http:// 路径填写 mirrors.aliyun.com/centos/8.3.2011/BaseOS/x86_64/os URL类型 软件库URL 其他路径 # 版本 7 mirrors.aliyun.com/centos/7/os/x86
报错1 [root@slave1 data_mocker]# kafka-console-consumer.sh --bootstrap-server slave1:9092 --topic topic_db [2023-12-19 18:31:12,770] WARN [Consumer clie
错误1 # 重写数据 hive (edu)&gt; insert overwrite table dwd_trade_cart_add_inc &gt; select data.id, &gt; data.user_id, &gt; data.course_id, &gt; date_format(
错误1 hive (edu)&gt; insert into huanhuan values(1,&#39;haoge&#39;); Query ID = root_20240110071417_fe1517ad-3607-41f4-bdcf-d00b98ac443e Total jobs = 1
报错1:执行到如下就不执行了,没有显示Successfully registered new MBean. [root@slave1 bin]# /usr/local/software/flume-1.9.0/bin/flume-ng agent -n a1 -c /usr/local/softwa
虚拟及没有启动任何服务器查看jps会显示jps,如果没有显示任何东西 [root@slave2 ~]# jps 9647 Jps 解决方案 # 进入/tmp查看 [root@slave1 dfs]# cd /tmp [root@slave1 tmp]# ll 总用量 48 drwxr-xr-x. 2
报错1 hive&gt; show databases; OK Failed with exception java.io.IOException:java.lang.RuntimeException: Error in configuring object Time taken: 0.474 se
报错1 [root@localhost ~]# vim -bash: vim: 未找到命令 安装vim yum -y install vim* # 查看是否安装成功 [root@hadoop01 hadoop]# rpm -qa |grep vim vim-X11-7.4.629-8.el7_9.x
修改hadoop配置 vi /usr/local/software/hadoop-2.9.2/etc/hadoop/yarn-site.xml # 添加如下 &lt;configuration&gt; &lt;property&gt; &lt;name&gt;yarn.nodemanager.res