【发布时间】:2023-04-04 01:03:01
【问题描述】:
我正在尝试使用 MATLAB 从巨大的(即不能存储在内存中的)数据集构建二元分类决策树。本质上,我正在做的是:
- 收集所有数据
- 在数据上尝试 n 个决策函数
- 挑出best decision function来分隔数据中的类
- 将原始数据集一分为二
- 拆分递归
数据有k个属性和一个分类,所以存储为一个巨大行数的矩阵,k+1 列。决策函数是布尔值,作用于将每一行分配给左子树或右子树的属性。
现在我正在考虑将文件中的数据存储在可以保存在内存中的块中,并为每一行分配一个 ID,以便通过顺序读取所有文件来决定拆分,并且未来的拆分由身份证号码。
有谁知道如何以更好的方式做到这一点?
编辑:行数 m 约为 5e8,k 约为 500
【问题讨论】:
-
澄清一下:k 并不大,只有行数才大?
-
是的,行数,m >> k
标签: matlab classification decision-tree