machine-learning - 非离散数据集的信息增益

标签 machine-learning data-mining

Jiawei Han 的《数据挖掘》第二版(属性选择测量 - 第 297 页至 300 页)解释了如何计算每个属性(年龄、收入、信用评级)和类别(buys_computer yes 或 no)实现的信息增益。 在此示例中,每个属性值都是离散的,例如年龄可以是青年/中年/老年,收入可以是高/低/中,信用等级可以是一般/优秀等。

我想知道如何将相同的信息增益应用于采用非离散数据的属性。例如收入属性采用任何货币金额,例如 100.68、120.90 等。 如果有 1000 名学生,则可能有 1000 个不同的金额值。

我们如何对非离散数据应用相同的信息增益?任何教程/示例示例/视频网址都会有很大帮助。

最佳答案

当您的目标变量是离散(分类)时,您只需计算您正在考虑的左/右分割中类别的经验分布的熵,并将它们的加权平均值与没有分割的熵进行比较。

对于连续目标变量(例如收入),其定义类似于 differential entropy 。出于您的目的,您将假设集合中的值具有正态分布,并相应地计算微分熵。来自维基百科:

enter image description here

这只是值方差的函数。请注意,这是以 nat 为单位,而不是熵位。要与上面的香农熵进行比较,您必须进行转换,这只是一个乘法。

关于machine-learning - 非离散数据集的信息增益,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19192356/

相关文章:

javascript - Perceptron Javascript 不一致

r - 为 gbm 交互强度实现零分布

matlab - 神经网络对测试数据的预测只有 50%

machine-learning - 通过机器学习选择特征

python - 聚类分析的适用性

machine-learning - 朴素贝叶斯与 SVM 用于分类文本数据

python - 哪些 tensorflow 操作会触发内存分配?

php - 在文本中搜索预定义词

python - 检查一个大文件 .csv 并替换,并将其分类在一列中

algorithm - 用于时间和产品预测的序列挖掘