python小练习(089):基于keras快速搭建神经网络(实战篇)之英语文章自动识别及分类
上两节的python小练习,已经介绍了如何利用keras快速搭建神经网络处理一些简单的数字图片和验证码。今天就再深入一层,分享一下,如何利用keras搭建的神经网络处理英语文章的自动识别以及分类,之后还会逐步分享如果用神经网络来自动识别垃圾邮件,处理中文文章,语义分析,情感分析等等。
我先从网上随意截取了20段英语文章(段落),为了便于计算,我取了15段财经方面的文章,5段体育文章,分别进行了标记,分成2类。
用其中的18段进行训练,剩下的2段进行预测并验证。
标记的规则如下:
如果是财经文章,则标记为,体育文章标记为
我一共训练了10次,先来看看训练结果。
Epoch 1/10
18/18 [==============================] - 17s - loss: 0.7673
Epoch 2/10
18/18 [==============================] - 17s - loss: 0.4939
Epoch 3/10
18/18 [==============================] - 17s - loss: 0.0781
Epoch 4/10
18/18 [==============================] - 17s - loss: 0.0595
Epoch 5/10
18/18 [==============================] - 17s - loss: 0.0495
Epoch 6/10
18/18 [==============================] - 17s - loss: 0.0422
Epoch 7/10
18/18 [==============================] - 17s - loss: 0.0365
Epoch 8/10
18/18 [==============================] - 17s - loss: 0.0320
Epoch 9/10
18/18 [==============================] - 17s - loss: 0.0283
Epoch 10/10
18/18 [==============================] - 17s - loss: 0.0253
从这10次训练效率来看,loss值在不断减小,说明机器确实在不断地学到东西。从最初的loss=0.76,降到了0.02,减小了38倍。
再来看看预测情况,我用剩余的2段财经文章做为输入,看看输出情况。
2/2 [==============================] - 0s
[[ 0.884442690.11555731]
[ 0.806673110.19332691]]
可以看到,机器判断第一篇文章是财经文章的概率为88%,第二篇文章是财经文章的概率是80%,判断还是相当准确的,而且可信度相当高。
这就是强大的机器学习!
如果机器可以帮助我们自动分析文章,自动判断语义情感的话,那就可以用来做很多事情啦! 大开脑洞吧!{:10_256:}
源代码如下:
**** Hidden Message ***** 本帖最后由 jerryxjr1220 于 2017-4-13 17:57 编辑
我查了下网上对于文章分类的实例资料相对还是非常少的,很大一部分都是在讲原理,这一节的小练习算是填补这方面的一个空白吧{:10_242:}
如果在这方面深入挖掘一下,形成一篇机器学习方面的毕业论文一点都不困难,而且又结合目前最火的深度神经网络tensorflow,绝对高大上! 只用numpy就行么... 大神!! 学习了 学习学习 学习下~ 继续学习中 try 学习一下 厉害了,学习 这个应该就是传说中的智能推荐了吧.. 了解下
学习学习 特意过来学习python, 同时学习神经网络, 最近要用到 超级清楚 厉害,学习一下 学习学习一下 1111 11
页:
[1]
2