《机器学习实战》个人学习记录笔记(九)———朴素贝叶斯之新浪新闻分类(Sklearn)

本文是个人学习《机器学习实战》关于朴素贝叶斯的笔记,主要介绍了如何进行中文语句切分、文本特征选择,并使用Sklearn的MultinomialNB构建朴素贝叶斯分类器解决新浪新闻的多分类问题。通过调整高频词删除数量与分类准确率的关系,确定最佳特征集合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第四章 朴素贝叶斯

PS:个人笔记 根据《机器学习实战》这本书,Jack-Cui的博客,以及深度眸的视频进行学习

1 中文语句切分

import os
import jieba

def TextProcessing(folder_path):
    folder_list = os.listdir(folder_path)                         #查看folder_path下的文件列表
    data_list = []                                                #训练集
    class_list = []                                               #分类列表

    for folder in folder_list:                                    #遍历文件列表中的每个文件
        new_folder_path = os.path.join(folder_path, folder)       #根据子文件夹名称,生成子文件夹的路径
        files = os.listdir(new_folder_path)                       #存放子文件夹下的txt文件的列表名称
        j = 1
        for file in files:                                        #遍历每个TXT文件
            if j > 100:                                           #每类txt样本数最多100个
                break
            with open(os.path.join(new_folder_path, file), 'r', encoding = 'utf-8') as f:    #打开txt文件
                raw = f.read()                                    #读取文件
            word_cut = jieba.cut(raw, cut_all = False)            #精简模式,返回一个可迭代的generator
            word_list = list(word_cut)                            #将generator转换为list
            data_list.append(word_list)                           #加入数据列表中
            class_list.append(folder)                             #分类加入分类列表中
            j += 1
        print(data_list)
        print(class_list)
if __name__ == '__main__':
    folder_path = './SogouC/Sample'                               #训练集存放地址
    TextProcessing(folder_path)

2 文本特征选择

我们将所有文本分成训练集和测试集,并对训练集中的所有单词进行词频统计,并按降序排序。也就是将出现次数多的词语在前,出现次数少的词语在后进行排序。编写代码如下:

import os
import random
import jieba

"""
函数说明:中文文本处理
Parameters:
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值