Home  >  Article  >  Backend Development  >  想做Python聊天机器人有什么好用的中文分词、数据挖掘、AI方面的Python库或者开源项目推荐?

想做Python聊天机器人有什么好用的中文分词、数据挖掘、AI方面的Python库或者开源项目推荐?

PHP中文网
PHP中文网Original
2017-03-29 16:44:111756browse

想做Python聊天机器人有什么好用的中文分词、数据挖掘、AI方面的Python库或者开源项目推荐?

准确率测试(使用对应项目提供在线测试,未添加用户自定义词典)
结巴中文分词209.222.69.242:9000/
中科院分词系统ictclas.org/ictclas_demo.html
smallseg smallseg.appspot.com/smallseg
snailseg snailsegdemo.appspot.com/
(后两者网址需要翻墙)

测试文本1
工信处女干事每月经过下属科室都要亲口交代24口交换机等技术性器件的安装工作

测试结果:
结巴中文分词:
工信处/n 女干事/n 每月/r 经过/p 下属/v 科室/n 都/d 要/v 亲口/n 交代/n 24/m 口/q 交换机/n 等/u 技术性/n 器件/n 的/uj 安装/v 工作/vn
中科院分词系统:
工/n 信/n 处女/n 干事/n 每月/r 经过/p 下属/v 科室/n 都/d 要/v 亲口/d 交代/v 24/n 口/q 交换机/n 等/udeng 技术性/n 器件/n 的/ude1 安装/vn 工作/vn
smallseg:

工信 信处 女干事 每月 经过 下属 科室 都要 亲口 交代 24 口 交换机 等 技术性 器件 的 安装 工作

snailseg:

工信处/ 女/ 干事/ 每月/ 经过/ 下属/ 科室/ 都/ 要/ 亲口/ 交代/ 24/ 口/ 交换机/ 等/ 技术性/ 器件/ 的/ 安装/ 工作
-----------------------------------------------------------------------------------------
测试文本2
工信處女幹事每月經過下屬科室都要親口交代24口交換機等技術性器件的安裝工作

测试结果:
结巴中文分词:
工/n 信/n 處/zg 女/b 幹/zg 事/n 每月/r 經/zg 過/zg 下/m 屬/zg 科室/n 都/d 要/v 親/zg 口/q 交代/n 24/m 口交/n 換/zg 機/zg 等/u 技/ng 術/zg 性/ng 器件/n 的/uj 安/v 裝/zg 工作/vn
中科院分词系统:
工/n 信/n 處女/n 幹事/n 每月/r 經過/p 下屬/v 科室/n 都/d 要/v 親口/d 交代/v 24/n 口/q 交換機/n 等/udeng 技術性/n 器件/n 的/ude1 安裝/vn 工作/vn
smallseg:

工/ 信/ 處/ 女/ 幹/ 事/ 每月/ 經/ 過/ 下/ 屬/ 科室/ 都/ 要/ 親/ 口/ 交代/ 24/ 口/ 交/ 換/ / 機/ 等/ 技/ 術/ 性器/ 件/ 的/ 安/ 裝/ 工作

snailseg:

工/ 信/ 處/ 女/ 幹/ 事/ 每月/ 經/ 過/ 下/ 屬/ 科室/ 都/ 要/ 親/ 口/ 交代/ 24/ 口/ 交/ 換/ / 機/ 等/ 技/ 術/ 性器/ 件/ 的/ 安/ 裝/ 工作

-----------------------------------------------------------------------------------------

测试文本3
SCANV网址安全中心(scanv.com)是一个综合性的网址安全服务平台。通过网址安全中心,用户可以方便的查询到要访问的网址是否存在恶意行为,同时可以在SCANV中在线举报曝光违法恶意网站。

测试结果:
结巴中文分词:
SCANV/eng 网址/n 安全/an 中心/n scanv/eng com/eng 是/v 一个/m 综合性/n 的/uj 网址/n 安全/an 服务平台/n 通过/p 网址/n 安全/an 中心/n 用户/n 可以/c 方便/a 的/uj 查询/v 到/v 要/v 访问/v 的/uj 网址/n 是否/v 存在/v 恶意/v 行为/v 同时/c 可以/c 在/p SCANV/eng 中/f 在线/b 举报/v 曝光/nz 违法/vn 恶意/v 网站/n
中科院分词系统:
SCANV/x 网址/n 安全/an 中心/n (/wkz scanv.com/x )/wky 是/vshi 一个/mq 综合性/n 的/ude1 网址/n 安全/an 服务平台/n 。/wj 通过/p 网址/n 安全/an 中心/n ,/wd 用户/n 可以/v 方便/a 的/ude1 查询/vn 到/v 要/v 访问/v 的/ude1 网址/n 是否/v 存在/v 恶意/n 行为/n ,/wd 同时/c 可以/v 在/p SCANV/x 中/f 在/p 线/n 举报/vn 曝光/vn 违法/vn 恶意/n 网站/n 。/wj
smallseg:

SCANV 网址 安全 中心 scanv.com 是 一个 综合性 的 网址 安全 服务 平台 通过 网址 安全 中心 用户 可以 方便 的 查询 到要 访问 的 网址 是否 存在 恶意 行为 同时 可以 在 SCANV 中 在线 举报 曝光 违法 恶意 网站

snailseg:

SCANV/ 网址/ 安全/ 中心/ scanv/ com/ 是/ 一个/ 综合性/ 的/ 网址/ 安全/ 服务平台/ 通过/ 网址/ 安全/ 中心/ 用户/ 可以/ 方便/ 的/ 查询/ 到/ 要/ 访问/ 的/ 网址/ 是/ 否/ 存在/ 恶意/ 行为/ 同时/ 可以/ 在/ SCANV/ 中/ 在/ 线/ 举报/ 曝光/ 违法/ 恶意/ 网站

-----------------------------------------------------------------------------------------

测试文本4
随着页游兴起到现在的页游繁盛,依赖于存档进行逻辑判断的设计减少了,但这块也不能完全忽略掉。总会有一些功能是需要调用本地存档的。例如登录模块中,记住密码功能,会将密码信息存储在本地,以IE浏览器为例,在C:\Documents and Settings\(你的Windows用户名)\Application Data\Macromedia \Flash Player\#SharedObjects\(一些随机数字和字母)\ 文件夹下就可以看到存储密码的SOL文件,可以使用minerva工具查看,如下图所示,密码明文明文存储的,SOL文件是永久性保存的,除非手动清除,如果玩家在公共环境下登录,就会有盗号威胁。

测试结果:
结巴中文分词:
随着/p 页/m 游/n 兴起/v 到/v 现在/t 的/uj 页游/n 繁盛/a 依赖于/v 存档/v 进行/v 逻辑/n 判断/v 的/uj 设计/vn 减少/v 了/ul 但/c 这块/r 也/d 不能/v 完全/ad 忽略/d 掉/zg 总会/n 有/v 一些/m 功能/n 是/v 需要/v 调用/vn 本地/r 存档/v 的/uj 例如/v 登录/v 模块/n 中/f 记住/v 密码/n 功能/n 会/v 将/d 密码/n 信息/n 存储/j 在/p 本地/r 以/p IE/eng 浏览器/n 为/p 例/v 在/p C/eng Documents/eng and/eng Settings/eng 你/r 的/uj Windows/eng 用户名/n Application/eng Data/eng Macromedia/eng nbsp/eng Flash/eng Player/eng #SharedObjects/eng 一些/m 随机/d 数字/n 和/c 字母/n 文件夹/n 下/f 就/d 可以/c 看到/v 存储/j 密码/n 的/uj SOL/eng 文件/n 可以/c 使用/v minerva/eng 工具/n 查看/v 如下/t 图/n 所示/v 密码/n 明文/nr 明文/nr 存储/j 的/uj SOL/eng 文件/n 是/v 永久性/nr 保存/v 的/uj 除非/c 手动/n 清除/v 如果/c 玩家/n 在/p 公共/b 环境/n 下/f 登录/v 就/d 会/v 有/v 盗号/n 威胁/vn 来自/v http/eng www/eng baidu/eng com/eng 及/c http/eng www/eng baidu/eng com/eng
中科院分词系统:
随着/p 页/q 游兴/n 起/vf 到/v 现在/t 的/ude1 页/q 游/v 繁盛/an ,/wd 依赖/v 于/p 存档/vi 进行/vx 逻辑/n 判断/v 的/ude1 设计/vn 减少/v 了/y ,/wd 但/c 这/rzv 块/q 也/d 不能/v 完全/ad 忽略/v 掉/v 。/wj 总/d 会/v 有/vyou 一些/mq 功能/n 是/vshi 需要/v 调用/v 本地/rzs 存档/vi 的/ude1 。/wj 例如/v 登录/v 模块/n 中/f ,/wd 记住/v 密码/n 功能/n ,/wd 会/v 将/p 密码信息存储/n 在/p 本地/rzs ,/wd 以/p IE/x 浏览器/n 为/p 例/n ,/wd 在/p C:/x \/x Documents/x /w and/x /w Settings/x \/x (/wkz 你/rr 的/ude1 Windows/x 用户/n 名/q )/wky \/x Application/x /w Data/x \/x Macromedia/x &/x nbsp/x ;/wf \/x Flash/x /w Player/x \/x #/x SharedObjects/x \/x (/wkz 一些/mq 随机/b 数字/n 和/cc 字母/n )/wky \/x /w 文件夹/n 下/f 就/d 可以/v 看到/v 存储/vn 密码/n 的/ude1 SOL/x 文件/n ,/wd 可以/v 使用/v minerva/x 工具/n 查看/v ,/wd 如/v 下/vf 图/n 所/usuo 示/vg ,/wd 密码/n 明/ag 文明/n 文/ng 存储/v 的/ude1 ,/wd SOL/x 文件/n 是/vshi 永久性/n 保存/v 的/ude1 ,/wd 除非/c 手动/b 清除/vn ,/wd 如果/c 玩/v 家/n 在/p 公共/b 环境/n 下/f 登录/v ,/wd 就/d 会/v 有/vyou 盗/vg 号/n 威胁/vn 。/wj 来自/v http:/x //w //w www.baidu.com/x //w 及/v http:/x 、/wn www.baidu...com/x
smallseg:

随着 页游 兴起 到现在 的页 页游 繁盛 依赖于 存档 进行 逻辑 判断 的 设计 减 少了 但 这块 也 不能 完全 忽略 掉 总 会有 一些 功能 是 需要 调用 本地 存档 的 例如 登录 模块 中 记住 密码 功能 会将 密码 信息 存储 在 本地 以 IE 浏览器 为例 在 C \ Documents and Settings \ 你的 Windows 用户名 \ Application Data \ Macromedia & nbsp ;\ Flash Player \ #SharedObjects \ 一些 随机 数字 和 字母 \ 文件夹 下 就可 以 看到 存储 密码 的 SOL 文件 可 以 使用 minerva 工具 查看 如 下图 所示 密码 明文 明文 存储 的 SOL 文件 是 永久性 保存 的 除非 手动 清除 如果 玩家 在 公共 环境 下 登录 就会 有 盗号 威胁 

snailseg:

随着/ 页/ 游兴/ 起到/ 现在/ 的/ 页/ 游/ 繁盛/ 依赖/ 于/ 存档/ 进行/ 逻辑/ 判断/ 的/ 设计/ 减少/ 了/ 但/ 这/ 块/ 也/ 不能/ 完全/ 忽略/ 掉/ 总会/ 有/ 一些/ 功能/ 是/ 需要/ 调用/ 本地/ 存档/ 的/ 例如/ 登录/ 模块/ 中/ 记住/ 密码/ 功能/ 会/ 将/ 密码/ 信息/ 存储/ 在/ 本地/ 以/ IE/ 浏览器/ 为/ 例/ 在/ C/ Documents/ and/ Settings/ 你/ 的/ Windows/ 用户名/ Application/ Data/ Macromedia/ nbsp/ Flash/ Player/ #SharedObjects/ 一些/ 随机数/ 字/ 和/ 字母/ 文件/ 夹/ 下/ 就/ 可以/ 看到/ 存储/ 密码/ 的/ SOL/ 文件/ 可以/ 使用/ minerva/ 工具/ 查看/ 如下/ 图/ 所/ 示/ 密码/ 明文/ 明文/ 存储/ 的/ SOL/ 文件/ 是/ 永久性/ 保存/ 的/ 除非/ 手动/ 清除/ 如果/ 玩家/ 在/ 公共/ 环境/ 下/ 登录/ 就/ 会/ 有/ 盗/ 号/ 威胁/ 来/ 自/ http/ www/ baidu/ com/ 及/ http/ www/ baidu/ com


结论:从整体测试结果上看,分词速度以及文本超过一定长度的性能测试未进行,自定义词典也是一个很大的影响分词因素,也未涵盖测试,排除以上两点,整体上看,对繁体以及网址的分词,中科院的分词系统做到最好,如果论说对容易歧义的文本,结巴不错,这两者也相对功能方面会更丰富。感觉如果python分词,建议使用结巴或者中科院分词调用C库使用,如果担心调用C库等产生的相关问题,可以使用结巴分词系统,是个不错的选择,在分词前进行简繁转换;或者采用中科院的分词,加上自定义词典,也是不错的选择,不过就本人在python调用C库使用中科院分词的过程中,存在用户自定义词典导入会过于优先(如导入用户词典,中信,当分词内容[我们中信仰佛教的人]会分词成[我们,中信,仰,佛教,的,人])以及存在导入失败情况,还有函数调用安全问题。主要是根据需要进行选择不同的分词。有空再进行性能测试!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn