数算实习课机器学习算法总结(Naive Bayes, K-means)

数算实习课机器学习算法总结(Naive Bayes, K-means)


我的实现

本学期数算实习课程两个大作业都是机器学习基本算法。
因为写大作业的时候还没有学习python,C/C++代码和冗长而且要交作业需要保密所以不贴了。


大作业1:句子贴标签(Naive Bayes)

题意:给出训练集,有监督学习。
Naive Bayes Classifier以贝叶斯定理为基础,是比较基础的有监督机器学习算法。

理论依据
p(y=ck|x)=Mi=1p(xi|y=ck)p(y=ck)kp(y=ck)Mi=1P(xi|y=ck)

当然实际实现比较容易,只需要注意两个问题:
1.决定标签时候只需要计算概率相对大小,不需要计算分母。
2.考虑概率下溢出到0,而不需要计算分母,只需要取对数相加即可。
3.如果效果很差,多调试输出中间结果。
4.为了防止出现概率为0情况,使用拉普拉斯平滑。
5.后来在队友帮助下调库加了切词提取词干之类算法,效果上升。
(测试效果差,正确率只有20%-30%,其他使用这个算法的组大同小异)


大作业2:图像聚类(K-Means)

题意:给出图像向量,分类,无监督。
K-Means理论上比较容易直观,但是依赖于初始值选取,而且维度过大需要PCA降维等优化。还需要白平衡。

本题实现很容易,效果很差,因为数据量太小而且我没写降维所以效果很差,只算简单实现过了一遍K-Means算法+朴素白平衡。

大作业3:魔塔

没做,但是最后一个样例挺好玩的,最后一关有难度,觉得是搜索+剪枝吧。


具体数据和要求可以参考北京大学2016年秋数据结构与算法实习大作业资料


其他同学的优秀思路

大作业1:句子贴标签

1.多项式Bayes
2.卡方降维
3.利用机器学习查找相似词(相当于一个降维)

大作业2:图像聚类

1.PCA降维
2.多项式插值,遗传算法
3.还原图片变无监督为有监督(利用数据加密较弱,以下优化基于这一点)
4.LBG,利用周围相对灰度白平衡
5.分块白平衡
6.2D-PCA降维

大作业3:魔塔

1.利用魔塔常识合并一些步骤
2.搜素+估价函数剪枝
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值