人工智能实验报告.docx
《人工智能实验报告.docx》由会员分享,可在线阅读,更多相关《人工智能实验报告.docx(5页珍藏版)》请在冰豆网上搜索。
![人工智能实验报告.docx](https://file1.bdocx.com/fileroot1/2023-2/24/9f7ddd64-96d5-4f4b-a77e-beb6e0502d31/9f7ddd64-96d5-4f4b-a77e-beb6e0502d311.gif)
人工智能实验报告
人工智能实验报告
姓名:
学号:
计算机科学与技术
所学专业:
基于朴素贝叶斯的文本分类器
报告题目:
提交日期:
基于朴素贝叶斯的文本分类器
问题描述
朴素贝叶斯学习器是贝叶斯学习方法中实用性很高的一种方法,通常被称作是贝叶斯分类器。
在某些领域内,其性能可与神经网络和决策树学习相当。
本文主要介绍朴素贝叶斯在文本分类领域的应用。
本次试验实现了一个文本分类器,并且通过实验验证分类结果比较客观。
待解决问题的解释
随着互联网信息及电子资源的急剧膨胀,文本分类技术成为信息组织与管理的有效手段。
本文意在实现一个基于朴素贝叶斯的文本分类器。
在应用朴素贝叶斯进行文本分类时有两个主要的设计问题:
首先,要决定怎样将任意文档表示为属性值的形式,其次要决定如何估计朴素贝叶斯分类器所需的概率。
对于第一个问题,可这样设计。
给定一篇文本文档,可对每个词的位置定义一个属性,该属性的值为在此位置上找到的词。
如果文档被这样表示,就可以使用朴素贝叶斯的想法进行概率估计了。
对于第二个问题,显而易见可直接利用下面的公式:
其中()表示这种类别出现的概率,
,为类别出现的文档数,是训练集中全部文档数。
而
,其中为这个单词在这个类别出现的次数,是这个类别包含的单词总数,是训练集中词典的词数。
学习方法介绍
贝叶斯分类是统计学分类方法,它是一类利用概率统计知识进行分类的算法。
在许多场合,朴素贝叶斯(ï,)分类算法可以与决策树和神经网络分类算法相媲美,该算法能运用到大型数据库中,且方法简单、分类准确率高、速度快。
由于贝叶斯定理假设一个属性值对给定类的影响独立于其它属性的值,而此假设在实际情况中经常是不成立的,因此其分类准确率可能会下降。
为此,就出现了许多降低独立性假设的贝叶斯分类算法,如()算法。
朴素贝叶斯算法:
设每个数据样本用一个维特征向量来描述个属性的值,即:
{,,…,},假定有个类,分别用,,…,表示。
给定一个未知的数据样本(即没有类标号),若朴素贝叶斯分类法将未知的样本分配给类,则一定是
()>()≤≤,≠
根据贝叶斯定理
由于()对于所有类为常数,最大化后验概率()可转化为最大化先验概率()()。
如果训练数据集有许多属性和元组,计算()的开销可能非常大,为此,通常假设各属性的取值互相独立,这样
先验概率(),(),…,()可以从训练数据集求得。
根据此方法,对一个未知类别的样本,可以先分别计算出属于每一个类别的概率()(),然后选择其中概率最大的类别作为其类别。
朴素贝叶斯算法成立的前提是各属性之间互相独立。
当数据集满足这种独立性假设时,分类的准确度较高,否则可能较低。
另外,该算法没有分类规则输出。
算法的伪代码及流程
()
为一组文本文档以及他们的目标值。
为所有可能目标值的集合。
此函数作用是学习概率项
他描述了从类别中的文档总随机抽取的一个单词为单词的概率。
该函数也学习类别的先验概率()。
收集中所有的单词
←在中任意文本文档中出现的所有词汇的集合
计算所需要的概率项
和()
对中每个目标值
←中目标值为的文档子集
←将中所有成员链接起来建立的单个文档
←在中不同单词位置的总数
对中每个单词
←单词出现在中的次数
()
对文档返回其估计的目标值。
代表在中的第个位置上出现的单词。
返回
算法实现
实验环境与问题规模
实验环境为操作系统,内存,()。
问题规模比较大,尤其在训练语料是占用内存较大,速度比较慢。
另外,在训练时,由于文档较多,操作也耗时较多。
数据结构
1.<>,存储单词到的映射,是单词,是。
{单词的统计信息包括单词的个数和词频
单词的个数
词频,它需要在得出的大小之后才能计算
}
2.<>,存储类别标签的集合,其中定义为:
{类别标签:
体育、经济、政治等等
中用来存放每个单词及其统计信息
<><>();
某个类别标签下的所有单词个数
某个类别标签下的所有文档个数
}
实验结果
本实验选择选用的语料是财经、体育、科技三个类比进行训练。
其中财经类别篇文档,体育类别篇文档,科技类别篇文档。
为了测试朴素贝叶斯分类器的准确率,我每个类别中随机抽出篇文档作为测试。
于是,训练集和测试集如下表所示: