1、自然语言处理(Natural Language Processing)
看自然语言处理的材料、书籍也有一段时间了,最近好像快看出点门道了,今天就以一个新手的角度来说说我所理解的自然语言处理。
看自然语言处理的材料、书籍也有一段时间了,最近好像快看出点门道了,今天就以一个新手的角度来说说我所理解的自然语言处理。
这篇文章是漫话中文分词算法的续篇。在这里,我们将紧接着上一篇文章的内容继续探讨下去:如果计算机可以对一句话进行自动分词,它还能进一步整理句子的结构,甚至理解句子的意思吗?这两篇文章的关系十分紧密,因此,我把前一篇文章改名为了《漫话中文自动分词和语义识别(上)》,这篇文章自然就是它的下篇。我已经在很多不同的地方做过与这个话题有关的演讲了,在这里我想把它们写下来,和更多的人一同分享。
M牛的这篇博文实在是太精彩了,读了一遍又一遍,最后干脆就直接转过来了。有兴趣的可以直接看他的博客:matrix67
在某些应用中,会将n个不同的元素分成一组不相交的集合(disjoint)。不相交的集合有两个重要的操作,即找到给定的元素所属的集合(find)和合并两个集合(union)。为了更好的支持这两种操作,就出现了并查集(Disjoint-Set or Union-find set)。
给一串有序的数据,如何存储可以增删查改快速方便、扩容简单、实现也简单呢?用数组吧,实现简单,二分法也老快了,但是删除就很麻烦了,且扩容也需要开辟新的空间。用链表吧,新增删除都很快,但是查找就得遍历了。用平衡树(AVL、红黑树)吧,新增删除扩容都很方便,但是实现起来非常麻烦。
Redis是REmote DIctionary Server的缩写,作者定位于一个内存KV存储数据库(In-memory key-value Store),让Redis自豪的并不是那每秒10K的读写速度,而是它那可以应对很多情况的数据结构,我这里就简单的介绍一下它五大数据结构,也可以方便的让自个翻翻API,并给以后翻阅源码打下一个基础。
Bit-Map被译为位图,和人讨论的时候,常常会与.BMP搞混,这个Map我觉得翻译成映射更为合适,Bit-Map也算是Hash的一直极致运用吧。Bit-Map会用Bit来标记某个元素对应的value,如何标记的呢,见下例: