《机器学习》西瓜书课后题7.6

本文介绍了《机器学习》一书中课后题7.6的解决思路,作者选择了避免大规模计算的方法,通过针对测试数据计算所需值来简化问题。代码实现和运行结果显示,这种方法更直观且有效,虽然AODE理论上不应成为自身父节点,但对结果影响微乎其微。
摘要由CSDN通过智能技术生成

《机器学习》课后题7.6

本来想要像7.3一样,通过数据再推最后的答案,发现可能需要一个特别特别大的字典型列表,而且会计算出很多不需要的数字,最后计算的时候调用的话也非常麻烦,所以换了一种做法,通过测试数据出发,只计算自己需要的值,这样确实方便了许多,一个大循环里面套两个小循环就可以解决问题。被我大段得注释掉得部分是在求D_c_xi,这个还是容易求的,但是D_c_xi_xj分分钟算到头秃,所以才换了个方法,感觉还是换了方法之后更直观!
还有一点,AODE其实不应该自己作为自己的父节点,但是写完了才发现,也懒得改了,其实就是乘上了一个非常接近于1的系数,并不影响最后的结果。

python代码

import numpy as np


Data = np.array([
    [1, 1, 1, 1, 1, 1, 0.697, 0.460, 1],
    [2, 1, 2, 1, 1, 1, 0.774, 0.376, 1],
    [2, 1, 1, 1, 1, 1, 0.634, 0.264, 1],
    [1, 1, 2, 1, 1, 1, 0.608, 0.318, 1],
    [3, 1, 1, 1, 1, 1, 0.556, 0.215, 1],
    [1, 2, 1, 1, 2, 2, 0.403, 0.237, 1],
    [
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值