第1关:朴素贝叶斯分类算法流程
任务描述
本关任务:填写python代码,完成fit与predict函数,分别实现模型的训练与预测。
相关知识
为了完成本关任务,你需要掌握:
朴素贝叶斯分类算法的预测流程
朴素贝叶斯分类算法的训练流程
引例
在炎热的夏天你可能需要买一个大西瓜来解暑,但虽然你的挑西瓜的经验很老道,但还是会有挑错的时候。尽管如此,你可能还是更愿意相信自己经验。假设现在在你面前有一个纹路清晰,拍打西瓜后声音浑厚,按照你的经验来看这个西瓜是好瓜的概率有80%,不是好瓜的概率有20%。那么在这个时候你下意识会认为这个西瓜是好瓜,因为它是好瓜的概率大于不是好瓜的概率。
朴素贝叶斯分类算法的预测流程
朴素贝叶斯分类算法的预测思想和引例中挑西瓜的思想一样,会根据以往的经验计算出待预测数据分别为所有类别的概率,然后挑选其中概率最高的类别作为分类结果。
编程要求
根据提示,完成fit与predict函数,分别实现模型的训练与预测。(PS:在fit函数中需要将预测时需要的概率保存到self.label_prob和self.condition_prob这两个变量中)
其中fit函数参数解释如下:
feature:训练数据集所有特征组成的ndarray
label:训练数据集中所有标签组成的ndarray
return:无返回
predict函数参数解释如下:
feature:测试数据集所有特征组成的ndarray。(PS:feature中有多条数据)
return:模型预测的结果。ÿ