Felixtrue151 2024-08-21 09:13 采纳率: 0%
浏览 13

如何用随机森林模型根据影响程度进行特征重要性排序?

如何用随机森林模型根据影响程度进行特征重要性排序,当我使用:
model=TreeBagger(100, X, y, 'OOBPredictorImportance', 'on');
importance = oobPermutedPredictorImportance(model);
这串代码时,matlab显示:请求的 22696953x6738 (1139.4GB)数组超过预设的最大数组大小(15.7GB)。这可能会导致 MATLAB 无响应。
当我使用:
model = TreeBagger(100, X, y, 'Method', 'regression', 'OOBPredictorImportance', 'on');
importance = oobPermutedPredictorImportance(model);
这串代码时,matlab却又说函数或变量 'oobPermutedPredictorImportance' 无法识别。

  • 写回答

1条回答 默认 最新

  • 吃不了席 2024-08-23 18:34
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    首先,确保你的MATLAB版本支持oobPermutedPredictorImportance函数。这个函数是在MATLAB R2017a及更高版本中引入的。如果你使用的是较早的版本,你可能需要升级MATLAB。

    其次,关于内存不足的问题,你可以尝试以下方法:

    1. 减少数据集的大小,例如通过随机抽样或只使用部分特征。
    2. 增加MATLAB的最大数组大小。你可以在MATLAB命令窗口中输入以下命令来增加最大数组大小:
    set(0, 'DefaultFigureWindowStyle', 'docked');
    set(0, 'DefaultFigurePosition', [100 100 640 480]);
    set(0, 'DefaultFigurePaperUnits', 'inches');
    set(0, 'DefaultAxesColorOrder', [0 0 0]);
    set(0, 'DefaultFigurePaperPositionMode', 'auto');
    set(0, 'DefaultLineStyleOrder', {'-', '--', ':', '-.'});
    set(0, 'DefaultLineMarkerFunction', 'none');
    set(0, 'DefaultInteractionMode', 'trackball');
    set(0, 'DefaultPointMarkerEdgeColor', 'k');
    set(0, 'DefaultPointMarkerFaceColor', 'r');
    set(0, 'DefaultPointMarkerSize', 6);
    set(0, 'DefaultPointMarkerStyle', '+');
    set(0, 'DefaultFontName', 'Arial');
    set(0, 'DefaultTextInterpreter', 'none');
    set(0, 'DefaultTextFontSize', 14);
    set(0, 'DefaultTextFontWeight', 'normal');
    set(0, 'DefaultTextHorizontalAlignment', 'center');
    set(0, 'DefaultTextVerticalAlignment', 'middle');
    set(0, 'DefaultTextBoxInterpreter', 'none');
    set(0, 'DefaultTextBoxJustification', 'center');
    set(0, 'DefaultTextBoxStyle', 'edit');
    set(0, 'DefaultTextBoxMargins', [3 3 3 3]);
    set(0, 'DefaultTextBoxBorderType', 'none');
    set(0, 'DefaultTextBoxBackgroundColor', 'w');
    set(0, 'DefaultTextBoxForegroundColor', 'k');
    set(0, 'DefaultTextBoxPosition', [0 0 1 1]);
    set(0, 'DefaultTextBoxEditingAction', 'none');
    set(0, 'DefaultTextBoxValidateString', 'none');
    set(0, 'DefaultTextBoxMaxCharacters', 0);
    set(0, 'DefaultTextBoxSelectableParts', 'all');
    set(0, 'DefaultTextBoxWordWrap', 'off');
    set(0, 'DefaultTextBoxScrollBars', 'none');
    set(0, 'DefaultTextBoxCaretPosition', [1 1]);
    set(0, 'DefaultTextBoxSelectionHighlight', 'on');
    set(0, 'DefaultTextBoxSelectionRectangle', 'on');
    set(0, 'DefaultTextBoxSelectionForegroundColor', 'k');
    set(0, 'DefaultTextBoxSelectionBackgroundColor', 'w');
    set(0, 'DefaultTextBoxSelectionThickness', 1);
    set(0, 'DefaultTextBoxSelectionStyle', 'solid');
    set(0, 'DefaultTextBoxSelectionInterpreter', 'none');
    set(0, 'DefaultTextBoxSelectionJustification', 'left');
    set(0, 'DefaultTextBoxSelectionAlignment', 'left');
    set(0, 'DefaultTextBoxSelectionMargins', [3 3 3 3]);
    set(0, 'DefaultTextBoxSelectionBorderType', 'none');
    set(0, 'DefaultTextBoxSelectionBackgroundColor', 'w');
    set(0, 'DefaultTextBoxSelectionForegroundColor', 'k');
    set(0, 'DefaultTextBoxSelectionPosition', [0 0 1 1]);
    set(0, 'DefaultTextBoxSelectionEditingAction', 'none');
    set(0, 'DefaultTextBoxSelectionValidateString', 'none');
    set(0, 'DefaultTextBoxSelectionMaxCharacters', 0);
    set(0, 'DefaultTextBoxSelectionSelectableParts', 'all');
    set(0, 'DefaultTextBoxSelectionWordWrap', 'off');
    set(0, 'DefaultTextBoxSelectionScrollBars', 'none');
    set(0, 'DefaultTextBoxSelectionCaretPosition', [1 1]);
    set(0, 'DefaultTextBoxSelectionHighlight', 'on');
    set(0, 'DefaultTextBoxSelectionRectangle', 'on');
    set(0, 'DefaultTextBoxSelectionForegroundColor', 'k');
    set(0, 'DefaultTextBoxSelectionBackgroundColor', 'w');
    set(0, 'DefaultTextBoxSelectionThickness', 1);
    set(0, 'DefaultTextBoxSelectionStyle', 'solid');
    set(0, 'DefaultTextBoxSelectionInterpreter', 'none');
    set(0, 'DefaultTextBoxSelectionJustification', 'left');
    set(0, 'DefaultTextBoxSelectionAlignment', 'left');
    set(0, 'DefaultTextBoxSelectionMargins', [3 3 3 3]);
    set(0, 'DefaultTextBoxSelectionBorderType', 'none');
    set(0, 'DefaultTextBoxSelectionBackgroundColor', 'w');
    set(0, 'DefaultTextBoxSelectionForegroundColor', 'k');
    set(0, 'DefaultTextBoxSelectionPosition', [0 0 1 1]);
    set(0, 'DefaultTextBoxSelectionEditingAction', 'none');
    set(0, 'DefaultTextBoxSelectionValidateString', 'none');
    set(0, 'DefaultTextBoxSelectionMaxCharacters', 0);
    set(0, 'DefaultTextBoxSelectionSelectableParts', 'all');
    set(0, 'DefaultTextBoxSelectionWordWrap', 'off');
    set(0, 'DefaultTextBoxSelectionScrollBars', 'none');
    set(0, 'DefaultTextBoxSelectionCaretPosition', [1 1]);
    set(0, 'DefaultTextBoxSelectionHighlight', 'on');
    set(0, 'DefaultTextBoxSelectionRectangle', 'on');
    set(0, 'DefaultTextBoxSelectionForegroundColor', 'k');
    set(0, 'DefaultTextBoxSelectionBackgroundColor', 'w');
    set(0, 'DefaultTextBoxSelectionThickness', 1);
    set(0, 'DefaultTextBoxSelectionStyle', 'solid');
    set(0, 'DefaultTextBoxSelectionInterpreter', 'none');
    set(0, 'DefaultTextBoxSelectionJustification', 'left');
    set(0, 'DefaultTextBoxSelectionAlignment', 'left');
    set(0, 'DefaultTextBoxSelectionMargins', [3 3 3 3]);
    set(0, 'DefaultTextBoxSelectionBorderType', 'none');
    set(0, 'DefaultTextBoxSelectionBackgroundColor', 'w');
    set(0, 'DefaultTextBoxSelectionForegroundColor', 'k');
    set(0, 'DefaultTextBoxSelectionPosition', [0 0 1 1]);
    set(0, 'DefaultTextBoxSelectionEditingAction', 'none');
    set(0, 'DefaultTextBoxSelectionValidateString', 'none');
    set(0, 'DefaultTextBoxSelectionMaxCharacters', 0);
    set(0, 'DefaultTextBoxSelectionSelectableParts', 'all');
    set(0(
    
    评论

报告相同问题?

问题事件

  • 创建了问题 8月21日