首先,我们需要将数据集转换成数值型数据,将字符型的年龄、有工作、有自己的房子、信贷情况和类别转换成数字。/n/n| ID | 年龄 | 有工作 | 有自己的房子 | 信贷情况 | 类别 |/n|----|------|--------|--------------|----------|------|/n| 1 | 1 | 0 | 0 | 1 | 0 |/n| 2 | 1 | 0 | 0 | 2 | 0 |/n| 3 | 1 | 1 | 0 | 2 | 1 |/n| 4 | 1 | 1 | 1 | 1 | 1 |/n| 5 | 1 | 0 | 0 | 1 | 0 |/n| 6 | 2 | 0 | 0 | 1 | 0 |/n| 7 | 2 | 0 | 0 | 2 | 0 |/n| 8 | 2 | 1 | 1 | 2 | 1 |/n| 9 | 2 | 0 | 1 | 3 | 1 |/n| 10 | 2 | 0 | 1 | 3 | 1 |/n| 11 | 3 | 0 | 1 | 3 | 1 |/n| 12 | 3 | 0 | 1 | 2 | 1 |/n| 13 | 3 | 1 | 0 | 2 | 1 |/n| 14 | 3 | 1 | 0 | 3 | 1 |/n| 15 | 3 | 0 | 0 | 1 | 0 |/n/n接下来,我们可以使用ID3算法构建决策树。/n/n首先,我们需要计算样本的熵,可以使用以下公式:/n/n$$H(S) = -/sum_{i=1}^c p_i /log_2 p_i$$/n/n其中,$S$ 是样本,$c$ 是类别数量,$p_i$ 是类别 $i$ 在样本中的比例。/n/n样本中有 6 个负例和 9 个正例,因此:/n/n$$H(S) = -/frac{6}{15} /log_2 /frac{6}{15} - /frac{9}{15} /log_2 /frac{9}{15} = 0.971$$/n/n接下来,我们需要计算每个属性的信息增益。可以使用以下公式:/n/n$$IG(S,A) = H(S) - /sum_{v /in Values(A)} /frac{|S_v|}{|S|} H(S_v)$$/n/n其中,$A$ 是属性,$Values(A)$ 是属性 $A$ 的取值,$|S_v|$ 是属性 $A$ 取值为 $v$ 的样本数量,$|S|$ 是样本总数,$H(S_v)$ 是属性 $A$ 取值为 $v$ 的样本的熵。/n/n我们可以依次计算每个属性的信息增益:/n/n1. 年龄:/n/n$$IG(S, age) = 0.971 - (/frac{5}{15} /times 0 + /frac{5}{15} /times 0 + /frac{5}{15} /times 0.971) = 0.246$$/n/n2. 有工作:/n/n$$IG(S, job) = 0.971 - (/frac{9}{15} /times 0.918 + /frac{6}{15} /times 1) = 0.029$$/n/n3. 有自己的房子:/n/n$$IG(S, house) = 0.971 - (/frac{6}{15} /times 1 + /frac{9}{15} /times 0.918) = 0.109$$/n/n4. 信贷情况:/n/n$$IG(S, credit) = 0.971 - (/frac{5}{15} /times 0.971 + /frac{5}{15} /times 0.971 + /frac{5}{15} /times 0) = 0.551$$/n/n因此,我们可以得到以下决策树:/n/n/ncredit/n├── 2: 0/n├── 1/n│ └── house/n│ ├── 1: 1/n│ └── 0: 0/n└── 0: 0/n/n/n其中,数字表示属性取值,冒号后面的数字表示类别。例如,2: 0 表示信贷情况为 2 时,类别为 0。

贷款申请决策树构建:基于样本数据集的ID3算法应用

原文地址: https://www.cveoy.top/t/topic/n8ge 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录