经常有人问我:老大让我完成xxx,我不会,他也不会,但是很着急。这个任务怎么实现啊?这个任务需要什么技术啊?这种情况我遇到有100+次了,而且很多时候问得问题跟具体需要的技术简直是驴唇不对马嘴。所以今天整理了常见的30种NLP任务非常适合练手的Project,我觉得有俩作用:研究+练手,加深理解,做到更专业;收藏起来,以备不时之需,不敢保证涵盖工业界所有NLP业务场景,但是涵盖95+%以上是完全没问题的。

还有一个原因,马上周末了,我发现大部分人周五晚上开始到周一上午都不看技术相关的内容,今天本来不打算发,但是被催更,那就发点不用过多思考的实践类的吧。如果精力充沛或是单身,最好周末还是保持学习状态,毕竟技术是无止境的,真的需要积累。

首先声明下,今天发的这些Project都是类似论文实现那样的demo级的,也不是传统的工程实现,用的方法一般比工业界的高端,非常适合练手用。

1.分词 Word Segmentation

chqiwang/convseg ,基于CNN做中文分词,提供数据和代码。

对应的论文Convolutional Neural Network with Word Embeddings for Chinese Word Segmentation IJCNLP2017.

2.词预测 Word Prediction

Kyubyong/word_prediction ,基于CNN做词预测,提供数据和代码。

3. 文本蕴涵 Textual Entailment

Steven-Hewitt/Entailment-with-Tensorflow,基于Tensorflow做文本蕴涵,提供数据和代码。

4. 语音识别 Automatic Speech Recognition

buriburisuri/speech-to-text-wavenet,基于DeepMind WaveNet和Tensorflow做句子级语音识别。

5. 自动摘要 Automatic Summarisation

PKULCWM/PKUSUMSUM,北大万小军老师团队的自动摘要方法汇总,包含了他们大量paper的实现,支持单文档摘要、多文档摘要、topic-focused多文档摘要。

6. 文本纠错 Text Correct

atpaino/deep-text-corrector,基于深度学习做文本纠错,提供数据和代码。

7.字音转换 Grapheme to Phoneme

cmusphinx/g2p-seq2seq,基于网红transformer做, 提供数据和代码。

8. 复述检测 Paraphrase Detection 和 问答 Question Answering

Paraphrase-Driven Learning for Open Question Answering, 基于复述驱动学习的开放域问答。

9. 音汉互译 Pinyin-To-Chinese

Kyubyong/neural_chinese_transliterator,基于CNN做音汉互译。

10. 情感分析 Sentiment Analysis

情感分析包括的内容太多了,目前没发现比较全的。推荐两个适合练手的吧:Deeply Moving: Deep Learning for Sentiment Analysishttp://sentic.net/about/

11. 手语识别 Sign Language Recognition

Home - SignAll, 该项目在手语识别做的非常成熟。

12. 词性标注(POS)、 命名实体识别(NER)、 句法分析(parser)、 语义角色标注(SRL) 等。

HIT-SCIR/ltp, 包括代码、模型、数据,还有详细的文档,而且效果还很好。

13. 词干 Word Stemming

snowballstem/snowball, 实现的词干效果还不错。

14. 语言识别 Language Identification

https://github.com/saffsd/langid.py,语言识别比较好的开源工具。

15. 机器翻译 Machine Translation

OpenNMT/OpenNMT-py, 基于PyTorch的神经机器翻译,很适合练手。

16. 复述生成 Paraphrase Generation

vsuthichai/paraphraser,基于Tensorflow的句子级复述生成,适合练手。

17. 关系抽取 Relationship Extraction

ankitp94/relationship-extraction,基于核方法的关系抽取。

18. 句子边界消歧 Sentence Boundary Disambiguation

https://github.com/Orekhov/SentenceBreaking,很有意思。

19.事件抽取 Event Extraction

liuhuanyong/ComplexEventExtraction, 中文复合事件抽取,包括条件事件、因果事件、顺承事件、反转事件等事件抽取,并形成事理图谱。

20. 词义消歧 Word Sense Disambiguation

alvations/pywsd,代码不多,方法简单,适合练手。

21. 命名实体消歧 Named Entity Disambiguation

dice-group/AGDISTIS,实体消歧是很重要的,尤其对于实体融合(比如知识图谱中多源数据融合)、实体链接。

22. 幽默检测 Humor Detection

pln-fing-udelar/pghumor

23. 讽刺检测 Sarcasm Detection

AniSkywalker/SarcasmDetection,基于神经网络的讽刺检测。

24. 实体链接 Entity Linking

hasibi/EntityLinkingRetrieval-ELR, 实体链接用途非常广,非常适合练手。

25. 指代消歧 Coreference Resolution

huggingface/neuralcoref,基于神经网络的指代消歧。

26. 关键词/短语抽取和社会标签推荐 Keyphrase Extraction and Social Tag Suggestion

thunlp/THUTag, 用多种方法 实现了多种关键词/短语抽取和社会标签推荐。

常见26种NLP任务的练手项目的更多相关文章

  1. 新手必备|常见30种NLP任务的练手项目(文末福利)

    1.分词 Word Segmentationchqiwang/convseg ,基于CNN做中文分词,提供数据和代码. 2.词预测 Word PredictionKyubyong/word_predi ...

  2. 适合Python的5大练手项目, 你练了么?

    在练手项目的选择上,还存在疑问?不知道要从哪种项目先下手? 首先有两点建议: 最好不要写太应用的程序练手,要思考什么更像是知识,老只会写写爬虫是无用的,但是完全不写也不行. 对于练手的程序,要注意简化 ...

  3. 适合Python 新手的5大练手项目,你练了么?

    接下来就给大家介绍几种适合新手的练手项目. 0.算法系列-排序与查找 Python写swap很方便,就一句话(a, b = b, a),于是写基于比较的排序能短小精悍.刚上手一门新语言练算法最合适不过 ...

  4. web前端学习部落22群分享给需要前端练手项目

    前端学习还是很有趣的,可以较快的上手然后自己开发一些好玩的项目来练手,网上也可以一抓一大把关于前端开发的小项目,可是还是有新手在学习的时候不知道可以做什么,以及怎么做,因此,就整理了一些前端项目教程, ...

  5. 练手项目之image caption问题记录

    小白一个,刚刚费了老大的劲完成一个练手项目--image caption,虽然跑通了,但是评估结果却惨不忍睹.于是贴上大神的作品,留待日后慢慢消化.顺便记录下自己踩坑的一些问题. 先膜拜下大神的作品. ...

  6. 去哪找Java练手项目?

    经常有读者在微信上问我: 在学编程的过程中,看了不少书.视频课程,但是看完.听完之后感觉还是不会编程,想找一些项目来练手,但是不知道去哪儿找? 类似的问题,有不少读者问,估计是大部分人的困惑. 练手项 ...

  7. Python之路【第二十四篇】:Python学习路径及练手项目合集

      Python学习路径及练手项目合集 Wayne Shi· 2 个月前 参照:https://zhuanlan.zhihu.com/p/23561159 更多文章欢迎关注专栏:学习编程. 本系列Py ...

  8. 微信小程序初体验,入门练手项目--通讯录,后台是阿里云服务器(一)

    内容: 一.前言 二.相关概念 三.开始工作 四.启动项目起来 五.项目结构 六.设计理念 七.路由 八.部署线上后端服务 同步交流学习社区: https://www.mwcxs.top/page/4 ...

  9. 推荐:一个适合于Python新手的入门练手项目

    随着人工智能的兴起,国内掀起了一股Python学习热潮,入门级编程语言,大多选择Python,有经验的程序员,也开始学习Python,正所谓是人生苦短,我用Python 有个Python入门练手项目, ...

随机推荐

  1. Linux下的tar压缩解压缩命令详解(转)

    tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...

  2. CCF-CIDR合并-201812-3

    看着很长的一道题目,其实还可以...但我只有90分...可能有些细节没有注意到...难受! 思路: 数据结构: string str ;  存储32位01串 int  len: 前缀长度 首先将输入的 ...

  3. vue 新建项目

    1. 首先安装node.js,安装时一直点Next,知道Finish就可以安装成功 2. 打开控制命令执行程序cmd,输入node -v ,可以查看node的版本信息,即安装成功,我安装的是v8.12 ...

  4. open-falcon监控nginx

    主要逻辑:通过lua nginx module的log_by_lua_file实时记录nginx请求数据,通过外部python脚本定时获取数据解析为Open-Falcon支持的数据类型. Nginx编 ...

  5. 学习笔记CB001:NLTK库、语料库、词概率、双连词、词典

    聊天机器人知识主要是自然语言处理.包括语言分析和理解.语言生成.机器学习.人机对话.信息检索.信息传输与信息存储.文本分类.自动文摘.数学方法.语言资源.系统评测. NLTK库安装,pip insta ...

  6. 网页真机调试之Browsersync简介

    以前的调试方式 修改完项目文件(html.js.css等)后保存,在浏览器刷新页面查看修改后的效果 本地开启一个 tomcat 服务,修改文件后保存刷新页面,移动端或其他 pc 则需要输入 ip + ...

  7. 用shell脚本创建sqlite表并添加sql语句--通用

    重要使用的是EOF的功能,亲测和!功能一致:下面是测试代码 #!/bin/bash val=`ls`for v in ${val} do if [ ${v} == "test.db" ...

  8. Ubuntu16.04 换阿里源

    国内阿里源速度比较快,北京联通下载极快.更新也比较稳定 1.备份 cp /etc/apt/source.list /etc/apt/source.list.bak 2.编辑source文件 sudo ...

  9. C语言题库----指针

    1.如果f是一个函数,请说明 f() 和f的意思. f是函数的地址,f()是函数 2.怎样理解数组的下标运算? 先偏移,后取址. 3.int *p,*q; int a[]={10,20,30,40}; ...

  10. PythonStudy——闭包

    # closure:被包裹的函数,称之为闭包 # 完整的闭包结构:1.将函数进行闭包处理:2.提升函数名的作用域 # 案例:延迟加载 def get_site(url): #url='https:// ...