文本类型自变量到数字类型火花朴素贝叶斯

Posted

技术标签:

【中文标题】文本类型自变量到数字类型火花朴素贝叶斯【英文标题】:text type independent variable to numeric type spark naive bayes 【发布时间】:2016-10-18 20:56:09 【问题描述】:

我对具有数字和非数字特征的朴素贝叶斯持怀疑态度。就像我想对数据进行分类一样,我有 5 个独立的参数。

男,疑酒,平日,12am-4am,75,30-39 男,移动交通违章,平日,12am-4am,0,20-24 男,疑酒,周末,4am-8am,12,40-49 男,疑酒,平日,12am-4am,0,50-59 女,道路交通事故,周末,12pm-4pm,0,20-24 男,道路交通事故,平日,12pm-4pm,0,25-29 男,道路交通事故,平日,8pm-12pm,0,其他 男,其他,平日,8am-12pm,23,60-69 男,移动交通违章,周末,12pm-4pm,26,30-39 女,道路交通事故,周末,4am-8am,61,16-19 男,移动交通违章,周末,4pm-8pm,74,25-29 男,道路交通事故,平日,12am-4am,0,其他 男,移动交通违章,平日,8pm-12pm,0,16-19 男,道路交通事故,平日,8pm-12pm,0,其他 男,移动交通违章,周末,4am-8am,0,30-39

你可以看到一些参数是数字的,一些是非数字的。任何人都知道如何将非数字数据转换为数字数据。

    如何将非数字转换为数字 如果我使用TF,那它是否正确 如果 TF 是对的,那为什么

【问题讨论】:

【参考方案1】:

你可以从以下开始:

通过应用factorizer 将每个特征转换为分类值。一个例子:

特征 1:男性 = 0 女性 = 1

Feature2:酒精=0 碰撞=1 移动违规=2 ..

等等。

一个“列”的每个不同的可能值在您的因式分解结果中都应该有自己特定的数字表示。希望像 4pm-8pm 这样的事情不会重叠:但如果是的话,您可以先忽略该细节,然后在时间允许的情况下进行一些更智能的手动特征化。

输入中的每个条目/行都包含大约十几个“功能”。然后你可以从每一行创建一个特征向量。结果现在是tf-idf ready (TM)。您可以将 NB 算法应用于新生成的特征向量 - 并找到相对相似之处。

【讨论】:

以上是关于文本类型自变量到数字类型火花朴素贝叶斯的主要内容,如果未能解决你的问题,请参考以下文章

具有二进制数据的朴素贝叶斯分类器

机器学习:贝叶斯分类器——高斯朴素贝叶斯分类器代码实现

朴素贝叶斯算法(python)

朴素贝叶斯分类——大道至简

朴素贝叶斯

贝叶斯分类器(3)朴素贝叶斯分类器