2. 词典分词 中文分词:指的是将一段文本拆分为一系列单词的过程,这些单词顺序拼接后等于原文本. 中文分词算法大致分为基于词典规则与基于机器学习这两大派. 2.1 什么是词 在基于词典的中文分词中,词的定义要现实得多:词典中的字符串就是词. 词的性质--齐夫定律:一个单词的词频与它的词频排名成反比. 2.2 词典 互联网词库(SogouW, 15万个词条).清华大学开放中文词库(THUOCL).HanLP词库(千万级词条) 这里以HanLP附带的迷你核心词典为例(本项目路径):data/dict…
HanLP 自然语言处理 for nodejs ·支持中文分词(N-最短路分词.CRF分词.索引分词.用户自定义词典.词性标注),命名实体识别(中国人名.音译人名.日本人名.地名.实体机构名识别),关键词提取,自动摘要,短语提取,拼音转换,简繁转换,文本推荐,依存句法分析(MaxEnt依存句法分析.CRF依存句法分析) 环境要求 java 1.8 nodejs >= 6 docker ·build image cd node-hanlp ./scripts/build-docker-image.…
笔记转载于GitHub项目:https://github.com/NLP-LOVE/Introduction-NLP 3. 二元语法与中文分词 上一章中我们实现了块儿不准的词典分词,词典分词无法消歧.给定两种分词结果"商品 和服 务"以及"商品 和 服务",词典分词不知道哪种更加合理. 我们人类确知道第二种更加合理,只因为我们从小到大接触的都是第二种分词,出现的次数多,所以我们判定第二种是正确地选择.这就是利用了统计自然语言处理.统计自然语言处理的核心话题之一,就是…
1. 新手上路 自然语言处理(Natural Language Processing,NLP)是一门融合了计算机科学.人工智能及语言学的交叉学科,它们的关系如下图所示.这门学科研究的是如何通过机器学习等技术,让计算机学会处理人类语言,乃至实现终极目标--理解人类语言或人工智能. 美国计算机科学家Bill Manaris在<计算机进展>( Advances in Computers)第47卷的<从人机交互的角度看自然语言处理>一文中曾经给自然语言处理提出了如下的定义: "自…
笔记转载于GitHub项目:https://github.com/NLP-LOVE/Introduction-NLP 5. 感知机分类与序列标注 第4章我们利用隐马尔可夫模型实现了第一个基于序列标注的中文分词器,然而效果并不理想.事实上,隐马尔可夫模型假设人们说的话仅仅取决于一个隐藏的{B.M,E,S序列,这个假设太单纯了,不符合语言规律.语言不是由这么简单的标签序列生成,语言含有更多特征,而隐马弥可夫模型没有捕捉到.隐马弥可夫模型能捕捉的特征仅限于两种: 其一,前一个标签是什么:其二,当前字符…
笔记转载于GitHub项目:https://github.com/NLP-LOVE/Introduction-NLP 6. 条件随机场与序列标注 本章介绍一种新的序列标注模型条件随机场.这种模型与感知机同属结构化学习大家族,但性能比感知机还要强大.为了厘清该模型的来龙去脉,我们先对机器学习模型做番柿理.然后结合代码介绍条件随机场理论,探究它与结构化感知机的异同. 6.1 机器学习的模型谱系 机器学习的模型谱系图如下图所示: 根据建模的究竟是联合概率分布 P(x,y) 还是条件概率分布 P(y|x…
笔记转载于GitHub项目:https://github.com/NLP-LOVE/Introduction-NLP 9. 信息抽取 信息抽取是一个宽泛的概念,指的是从非结构化文本中提取结构化信息的一类技术.这类技术依然分为基于规则的正则匹配.有监督学习和无监督学习等各种实现方法.我们将使用一些简单实用的无监督学习方法.由于不需要标注语料库,所以可以利用海量的非结构化文本. 本章按照颗粒度从小到大的顺序,介绍抽取新词.关键词.关键短语和关键句的无监督学习方法. 9.1 新词提取 概述 新词是一个…
自然语言处理定义: 自然语言处理是一门计算机科学.人工智能以及语言学的交叉学科.虽然语言只是人工智能的一部分(人工智能还包括计算机视觉等),但它是非常独特的一部分.这个星球上有许多生物拥有超过人类的视觉系统,但只有人类才拥有这么高级的语言. 自然语言处理的目标是让计算机处理或说“理解”自然语言,以完成有意义的任务,比如订机票购物或QA等.完全理解和表达语言是极其困难的,完美的语言理解等效于实现人工智能. 自然语言处理涉及的几个层次: 作为输入一共有两个来源,语音与文本.所以第一级是语音识别和OC…
支持中文分词(N-最短路分词.CRF分词.索引分词.用户自定义词典.词性标注),命名实体识别(中国人名.音译人名.日本人名.地名.实体机构名识别),关键词提取,自动摘要,短语提取,拼音转换,简繁转换,文本推荐,依存句法分析(MaxEnt依存句法分析.CRF依存句法分析).提供Lucene插件,兼容Lucene4.x. HanLP: Han Language Processing 汉语言处理包 HanLP是由一系列模型与算法组成的Java工具包,目标是促进自然语言处理在生产环境中的应用.HanLP…
hanlp拥有:中文分词.命名实体识别.摘要关键字.依存句法分析.简繁拼音转换.智能推荐. 这里主要介绍一下hanlp的中文分词.命名实体识别.依存句法分析,这里就不介绍具体的hanlp的安装了,百度教程很多,可以看这里:http://hanlp.com/ 里面也有相关的一些介绍. 我以前还使用过jieba分词和LTP,综合来说,LTP是做的相对要好一点,特别是中文处理这一块,但是它的最大缺点是不开源,而hanlp功能更齐全而且开源,更加有利于大家的项目开发的使用. 首先使用hanlp对中文进行…
支持中文分词(N-最短路分词.CRF分词.索引分词.用户自定义词典.词性标注),命名实体识别(中国人名.音译人名.日本人名.地名.实体机构名识别),关键词提取,自动摘要,短语提取,拼音转换,简繁转换,文本推荐,依存句法分析(MaxEnt依存句法分析.CRF依存句法分析).提供Lucene插件,兼容Lucene4.x. HanLP: Han Language Processing 汉语言处理包 HanLP是由一系列模型与算法组成的Java工具包,目标是促进自然语言处理在生产环境中的应用.HanLP…
MySQL入门笔记 版本选择: 5.x.20 以上版本比较稳定 一.MySQL的三种安装方式: 安装MySQL的方式常见的有三种: ·          rpm包形式 ·          通用二进制形式 ·          源码编译 1.rpm包形式 1.1 MySQL官方提供的 (版本更新,修复了更多常见BUG)www.mysql.com/downloads 关于MySQL中rpm包类型的介绍: MySQL-client        客户端组件 MySQL-debuginfo     …
转 https://blog.csdn.net/hzp666/article/details/79373720     Python NLTK 自然语言处理入门与例程 在这篇文章中,我们将基于 Python 讨论自然语言处理(NLP).本教程将会使用 Python NLTK 库.NLTK 是一个当下流行的,用于自然语言处理的 Python 库. 那么 NLP 到底是什么?学习 NLP 能带来什么好处? 简单的说,自然语言处理( NLP )就是开发能够理解人类语言的应用程序和服务. 我们生活中经常…
Hanlp中使用纯JAVA实现CRF分词 与基于隐马尔可夫模型的最短路径分词.N-最短路径分词相比,基于条件随机场(CRF)的分词对未登录词有更好的支持.本文(HanLP)使用纯Java实现CRF模型的读取与维特比后向解码,内部特征函数采用 双数组Trie树(DoubleArrayTrie)储存,得到了一个高性能的中文分词器. 开源项目 本文代码已集成到HanLP中开源:http://hanlp.com/ CRF简介 CRF是序列标注场景中常用的模型,比HMM能利用更多的特征,比MEMM更能抵抗…
在本周,GitHub终于度过了属于它自己的十周岁生日.这个在2008年由3个来自旧金山的年轻人创建的基于Git的代码托管网站,先后超越了元老级的SourceForge和背景强大的Google Code,成为了全世界范围内最受欢迎的代码托管网站. “十年前的今天,GitHub 正式上线.最一开始,我们只有一个特别简单的目标:链接所有的开发者,让他们用Git更轻松地进行项目协作.”联合创始人Chris Wanstrath在博客里写道,“十年过去了,我们作为公司,作为平台都有了很大的变化,但GitHu…
  Python自然语言处理入门 原文链接:http://python.jobbole.com/85094/ 分享到:20 本文由 伯乐在线 - Ree Ray 翻译,renlytime 校稿.未经许可,禁止转载!英文出处:Nitin Madnani.欢迎加入翻译组. 本文从概念和实际操作量方面,从零开始,介绍在Python中进行自然语言处理.文章较长,且是PDF格式. (作者案:本文是我最初发表在<ACM Crossroads>Volume 13,Issue 4 上的完整修订版.之所以修订是…
WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工作的一个小结,也是对自己知识的一个梳理,之前特别喜欢记在本子上,不过长期的不用,就会发现记在本子上很容易就忘,所以后面开始写博客.首先,它并不单单是对自己的一些技术心得的总结亦或是一些技术讨论,更重要的是对自己不断学习提高的一种要求和检验,一种技术沉淀.其次,通过技术博客我们可以彼此分享一些技术经验…
ES6入门笔记 02 Let&Const.md 增加了块级作用域. 常量 避免了变量提升 03 变量的解构赋值.md var [a, b, c] = [1, 2, 3]; var [[a,d], b, c] = [[1,4], 2, 3]; var [...a] = [1,2] var [c = 3] = [5] //默认值 var { foo, bar } = { foo: "aaa", bar: "bbb" }; 作用. 复杂的 json & a…
什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在结构化编程语言里,函数是基本的程序组成单元,一个程序由一个个函数组成: 在面向对象编程语言里,类才是程序的基本单元,方法是属于类或对象的,不能独立存在: Java语言里方法的特征主要在以下几个方面: 方法不能够独立的存在,方法只能够定义在类里面,所属与某个类或对象: 方法不能够被独立地执行,必须使用…
# React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的实例.日后还将对官方文档进阶和高级部分分专题进行学习并记录. 尽管前端学习面临着各种各样的焦虑,尽管越来越多的框架出现,然而无可否认的是,它们都在从不同的角度提高生产力--从这个角度而言,之所以焦虑,本质原因是因为行业的门槛其实是降低了,而自己变得"不值钱"起来.在目前的环境下,无论如何必…
redis入门笔记(2) 上篇文章介绍了redis的基本情况和支持的数据类型,本篇文章将介绍redis持久化.主从复制.简单的事务支持及发布订阅功能. 持久化 •redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化,这是相对memcache来说的一个大的优势.redis支持两种持久化方式,一种是 Snapshotting(快照)也是默认方式,另一种是Append-only file(缩写aof)的方式. Snapshotting        快…
redis入门笔记(1) 1. Redis 简介 •Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure server).Redis的键值可以包括字符串(strings)类型,同时它还包括哈希(hashes).列表(lists).集合(sets)和 有序集合(sorted sets)等数据类型. 对于这些数据类型,你可以执行原子操作.例如:对字符串进行附加操作(append):递增哈希中的值:向列表中增加元素:…
原文参考地址:http://www.cnblogs.com/zilongshanren/archive/2011/08/08/2131019.html 一.编译Vertex Shaders和Fragment Shaders 目前为止,xcode仅仅会把这个两个文件(simple.vertsh和simple.fragsh)copy到application bundle中.我们还需要在运行编译和运行这些Shaders. 你会很诧异,为什么要在app运行时编译代码? 这样做的好处是:我们的Shader…
在入门笔记一中比较详细的介绍了顶点着色器和片面着色器. 在入门笔记二中讲解了简单的创建OpenGL场景流程的实现,但是如果在场景中渲染任何一种几何图形,还是需要入门笔记一中的知识:Vertex Shaders和Fragment Shaders. Vertex Shaders,在你的场景中,每个顶点都需要调用的程序,成为“顶点着色器”.假如你在渲染一个简单地场景:一个长方形,每个角只有一个顶点.于是Vertex Shaders会被调用四次.她负责执行:灯光.集合变化等等的计算.得出最终的顶点位置后…
我于2010年4月1日硕士毕业加入完美时空, 至今5年整.刚刚从一家公司的微端(就是端游技术+页游思想, 具体点就是c++开发, directX渲染, 资源采取所需才会下载)项目的前端主程职位离职, 原因这里不谈, 总之在担任这个职位, 并带领一个微型团队的一年半时间里,无论是技术还是做人抑或是项目管理, 所获颇丰. 离职之后, 赋闲在家, 目前还没有想好之后的具体计划, 于是索性呆在家里当起奶爸, 不亦乐乎. 稍有闲暇看看移动方面的开发, 当今比较流行的开发方式, 无外乎cocos2d和uni…
System Generator入门笔记  [CPLD/FPGA] 发布时间:2010-04-08 23:02:09  System Generator是Xilinx公司进行数字信号处理开发的一种设计工具,它通过将Xilinx开发的一些模块嵌入到Simulink的库中,可以在Simulink中进行定点仿真,可是设置定点信号的类型,这样就可以比较定点仿真与浮点仿真的区别.并且可以生成HDL文件,或者网表,可以再ISE中进行调用.或者直接生成比特流下载文件.能够加快DSP系统的开发进度. 用Syst…
此为第一篇主要是webpack入门笔记: http://if-true.com/2015/10/16/webpack-tutorial-translate.html…
嵌入式OS入门笔记-以RTX为案例:六.RTX的任务调度 上一篇笔记介绍了一些绕开排程器(或调度程序,scheduler)来进行时间管理的一些小方法.这一篇详细介绍RTX的任务调度原理. RTX主要有三种调度方式: Pre-emptive: 抢断式 Round robin: 轮转式 Co-operative: 合作式 在正式介绍这些方式之前.先看一下RTX的进程优先等级设置. 1.RTX的优先度 每个task在创建之初都会有一个优先级(os_tsk_create(task_name,priori…
一.数据类型 1. 整型 2. 浮点型 3. 字符型 4. 日期时间型 二.数据库操作 1. 创建库 CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name;   上述代码中DATABASE和SCHEMA完全相同,可任选一个(花括号内的参数为任选其一):   添加IF NOT EXISTS的作用则是,若新建数据库的名称与已有数据库名称冲突,则产生一个警告,若无该关键字,…
kafka 入门笔记(#1) 单机测试 下载版本,解压 tar -xzf kafka_2.11-0.10.1.1.tgz cd kafka_2.11-0.10.1.1 启动服务 Kafka用到了Zookeeper ,所以首先要启动zookeeper,先启动一个单实例的zk服务. bin/zookeeper-server-start.sh config/zookeeper.properties & 启动Kafka 服务 bin/kafka-server-start.sh config/server…