半年工作总结

我本科毕业以后,特别想从事机器学习有关工作,然而本科学的是电子信息,当时觉得工作也能和读研一样学到东西,而且还能赚钱,这对没怎么见过钱的我来说很有诱惑力。所以我在找工作的时候尽量找能和机器学习沾边的工作。但我学的专业不对口,靠的只是coursera上吴恩达公开课中学的东西,大公司的笔试面试都过不了,机缘巧合去了一家小公司。这里主要靠爬虫爬来一些数据,有需要分类的和其他一些需求,面试官看我懂机器学习就招了我,其实他也不懂机器学习。

做的一些工作:

企业分类
一开始用爬来的数据做,统计局和战略新兴分类两套。使用的是text grocery,笔记本是windows,所以是在虚拟机的centos下面训练。text grocery是将liblinear和jieba分词结合起来。调研了一下短文本分类还是用svm比较好。liblinear用线性核比较快。tgrocery到现在也还有些问题,所以我是改了源代码的。后来拿到了很多靠谱的有标签数据,效果比之前好上不少,最终用了20万条。所有类都不属于的“其他”类,我是拿分类器的score取个阈值,低于阈值的分为其他类,这个阈值是试出来的,使每一套分类有固定百分比的企业分为“其他”类。对于分类模型到底学到了什么,我把每个分类权值最高的几个词打了出来,一开始数据不好的时候这些词很差,后来就好了。“零售业”、“批发业”,一开始的数据中特别少,后来的数据中多,“国际组织”、“采矿业”这些,一开始没有,后来有一点。对于少的分类,我就到数据库中用正则表达式找了一些含有关键词的企业出来。

垃圾企业识别

使用centos下的mxnet,我用的虚拟机。根据企业名称分类。目前只是做了区分垃圾和非垃圾的训练,没有用过,不知道实际效果怎么样。当时老板有点迷信深度学习,而我也想接触一下DL,不管怎么说接触了一些CNN在NLP中的应用。

标签提取
提取用jieba的extract_tags,用的是jieba自己的一个txt文件,里面装的中文词汇对应的在很大的语料库中的idf值。可以当标签的词多,不能当的也不少,但不能当的有时idf值大会被提取出来,后来建立了一个垃圾词汇表来过滤垃圾词。找垃圾词汇也不容易,后来有了词向量的库,我就借助词向量找和垃圾词相似的词,再从中筛选。

标签匹配

这个用的余弦距离,可以加上idf。图方便用的gensim。上一步把所有企业的标签提取出来了,然后就利用这些标签找相似的企业。当时一共有3千万企业,我当然只计算了一部分,全库都放在我的笔记本里计算的话内存不够,而且把每个企业的前十个相似的企业id存下来,数据量要3亿。当时CTO已经走了,我也不知道该怎么处理,只能跟CEO说需要spark来处理大数据。其实他们企业搜索的速度还可以,我不知道那个用来做匹配行不行,是不是elastic search,那些都是CTO做的。其实也不是不能做,gensim有个simserver,此外还可以分块,我也没仔细研究下去,毕竟CTO都走了啊。

词向量、用词找企业

gensim这个包真是不错,有个简单易行的词向量实现,于是我就用公司的企业描述信息作为训练语料。有了词向量就能做很多事情,就像之前说的找相似词汇。老板还想做一个根据一个词来匹配企业的功能,我也利用词向量匹配一组词然后按企业匹配那样在本地做了个demo,他也满意。之后就推给后端了,当时新招的后端还比较菜,我们都不知道怎么放到线上。


新闻正文提取

因为抓来的企业描述里经常有HTML格式的,需要把正文提取出来。CTO给了几个论文看,挑了其中一个基于统计和分块的,用beautiful soup实现了。其实感觉那篇论文也没什么特别的,就是提出最大的块,然后算一下各个块长度的方差,如此反复,方差之间的差值不再增加就停止。后来CTO走了也一直没放到线上用,我本地看效果还是不错的。

简称对应

这个是用linux下的CRF++实现的,代码是在虚拟机里跑的。生成一个企业可能的简称。用股票的那种简称做的训练,CRF还是有点那么个意思的,但是也有明显的错误。训练数据也就几千个。后来也没人用。

验证码识别
写爬虫的同事让做的,给了我一些资料,我用的tesseract OCR,改变不同的二值化阈值,效果不好。这个还是应该用深度学习的,后来写爬虫的哥们找到了可以调用的API,我也就去做别的事情了。

其他日常数据清洗、找联系人、企业描述去重

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值