一. 前言
( < 黑客与画家 >, Paul )
在JavaScript(浏览器端)分词 | Lian (kyouichirou.github.io)这篇文章中提及js分词的实现. 本文则是js版本贝叶斯分类算法的实现, Kyouichirou/BiliBili_Optimizer: enjoy and control bilibili (github.com).
使用统计方法来实现垃圾内容过滤, 很早就想写的了, 但是由于在js端没有好的分词方案(懒), 一直没捣鼓, 直到发现原来js原生就支持分词, 这个想法马上付诸实现.
以下是对贝叶斯和文本分类算法的简单回顾, 逐步从基础推导出整个数学公式, 并根据python sklearn
的native_bayes
进行代码的修正, 给出了普通方式计算的代码.
由于需要在毫秒内实现, js脚本使用的分词方案是js原生分词api.