① 目前常用的自然语言处理开源项目/开发包有哪些
中文主要有:NLTK,HanLP,Ansj,THULAC,结巴分词,FNLP,哈工大LTP,中科院ICTCLAS分词,GATE,SnowNLP,东北大学NiuTrans,NLPIR;英文主要有:NLTK,Genism,TextBlob,Stanford NLP,Spacy。英文的开源NLP工具主要参见StackoverFlow-java or python for nlp。HanLP:HanLP是由一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。开发语言:Java,网址:hankcs/HanLP,开发机构:大快公司,协议:Apache-2.0功能:非常多,主要有中文分词,词性标注,命名实体识别,关键词提取,自动摘要,短语提取,拼音转换,简繁转换,文本推荐,依存句法分析,文本分类:情感分析,word2vec,语料库工具。
② python多线程并发访问多个URi
我想问问看你说的”访问一个站点“是什么意思,是下载一个文件吗?还是需要submit一些表单上去还是其他什么访问法?还有多线程是用来干什么的?是多个线程同时下载一个文件让这个文件可以下载得更快吗?还是其他什么目的?
本身python访问web就很简单,urllib的几个函数一调用就好了,不过不清楚你想要做什么,所以我感觉不知道怎么回答你。
③ 现在自然语言处理(NLP)很火,对于NLP的学习有什么建议
自然语言处理是研究如何让计算机处理、理解及运用人类语言(中文、英文等),实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言理解的本质是结构预测。自然语言处理属于人工智能的一个重要分支,是计算机科学、语言学、统计学和数学的交叉学科。
搜索引擎、个人助理、机器翻译、机器阅读、智能问答、聊天机器人、知识图谱、语义搜索、机器阅读、舆情监控与分析、推荐系统、文本关键词抽取、文本自动摘要这些都需要自然语言处理技术。
反正就是现在NLP特别火,对于学习建议,首先需要学一下ML(机器学习)、DL(深度学习)、RL(强化学习);可以去研究一两个优秀开源项目,这些开源项目可以去github上找,GitHub上面牛人很多,有很多很好的开源项目。比如:
考虑字的词表示学习算法
GitHub - Leonard-Xu/CWE
网络表示学习
文本增强的网络表示学习算法
GitHub - albertyang33/TADW: code for IJCAI2015 paper"Network Representation Learning with Rich Text Information"
跨语言词表示学习算法
Learning Cross-lingual Word Embeddings via MatrixCo-factorization
主题增强的词表示学习算法
GitHub - largelymfs/topical_word_embeddings: A demo code fortopical word embedding
可解释的词表示学习算法
GitHub - SkTim/OIWE: Online Interpretable Word Embeddings
国内一个NLP工具:哈工大LTP:http://ir.hit.e.cn/
建议去研读一些最新的经典的论文比如ACL、EMNLP、COLING、CCL等,
推荐几本书关于学习自然语言处理的,首先是李航老师的《统计学方法》,还有《机器学习实战》、《Python自然语言处理》