当下人工智能是真心的火热呀,各种原来传统的业务也都在尝试用人工智能技术来处理,以此来节省人工成本,提高生产效率。那么,我们还是先简单认识下什么是人工智能,人工智能是指利用语音识别、语义理解、图像识别、视觉处理、机器学习、大数据分析等技术实现机器智能自动化做出响应的一种模拟人行为的手段。而我们这里介绍的Magpie则属于人工智能领域里语义理解、机器学习中的一个具体的实现技术。
前述
近期因为工作原因,需要从来自于客户聊天对话的文本中进行用户行为判断,并对其打上相应的标签。而我需要解决的就是利用文本内容进行机器自动分类打标签,但在业务中一段文本会存有不同的多个标签,那么如何来实现呢?通过github,找到了Magpie,发现其与我的需求非常吻合。一番折腾后,就有了本文章。
Magpie
Magpie是一个开源的文本分类库,基于一个高层神经网络Keras技术编写,后端默认由Tensorflow来处理。Magpie是由Python语言开发的,且默认只支持英文文本分类,我因为业务需要便在其基础上做了中文文本的支持。如下是Magpie相关的网址:
Magpie官网:https://github.com/inspirehep/magpie
Keras中文文档:https://keras-cn.readthedocs.io/en/latest/
实现
通过上面的介绍,我们清楚了需要实现的业务与目的,以及采用的技术手段。那么,就让我们一起来看看借助Magpie会有什么神秘的事情发生吧。
1、从Magpie下载源码包到本地,通过PyCharm IDE开发工具打开项目后发现有“data”、“magpie”、“save”等目录。其中“data”目录用于存放训练的源数据,“magpie”目录用于存放源代码,“save”目录用于存放训练后的模型文件,具体结如下图:
2、在项目引用相应的第三方类库,如下:
1 'nltk~=3.2', 2 'numpy~=1.12', 3 'scipy~=0.18', 4 'gensim~=0.13', 5 'scikit-learn~=0.18', 6 'keras~=2.0', 7 'h5py~=2.6', 8 'jieba~=0.39',