0%

与传统的one-hot表示不同,word2vec为分布式表示,分布式是指把信息分布式地存储在向量的各个维度中。one-hot表示仅仅只有一个维度表示了词的语意。

阅读全文 »

在将近一年没有写博客之后,我又重新捡起之前的博客开始写了。至于为什么想写博客呢,小土刀的博客中提到

我睡觉的时候大家的夜生活才刚刚开始,我醒来的时候大家却仍在熟睡,每天在禅修中等待天亮。想找人聊聊最近读的书,但是却没有志趣相投的,平日的聊天也大都跟技术相关,不怪乎其他专业的人觉得我们无趣了。我找不到人聊政治制度,找不到人聊历史,找不到人聊心理学,找不到人聊经济,我只能自己跟自己聊。

这就是我写博客的原因,这是我跟自己沟通的方式。我们每天每时每刻都有可能冒出各种各样光怪陆离的想法,这些想法在当时无比清晰,但是保质期却很短,常常睡一觉就变质,而写博客就是把这些想法打磨和雕琢的方法之一。通过写博客,我得意把这些想法永久地保存下来。

不得不说,这一年来,不写博客的确思索少了很多,没有像之前一样,学过什么之后就及时回顾,只是记得一些大概的细节。之后应该会更新一下之前停滞的数据库系统和分布式系统系列,再写研究方向(自然语言处理)的分析。

阅读全文 »

与树状数组类似,线段树同样可以高效率对区间进行查询、更新操作。与树状数组不同的是,树状数组仅限于计算前缀和,应用问题存在很大的局限。所以通常用线段树来维护一系列区间操作,特别是区间最大值最小值问题。

阅读全文 »

二分查找版本众多,其中初始值的选择,判断条件,边界修改方式都有所不同。取整方式有向上取整和向下取整两种,区间开闭有左闭右开,左闭右闭,左开右闭,左闭右闭四种,再根据实际问题分为上界和下界两种,其中涉及细节繁多。在学习数据结构的时候讨论了不同版本平均查找长度和不同版本的正确性问题,但是仅限于三种版本,本文将讨论不同条件下二分查找的写法。

阅读全文 »

给定一个初始值全为$0$的数列$a_1,a_2,..,a_n$

  • 给定$i$,计算$a_1+a_2+…+a_n$
  • 给定$i$和$x$,计算$a_i+=x$

树状数组可以在$O(logn)$时间内计算区间前缀和,在$O(logn)$时间内更新单点的值。

阅读全文 »

之前的关系代数属于过程化语言,同时指定了具体计算过程。关系型语言仅仅指明用户需要什么数据,而不指定具体计算过程,由数据库管理系统负责底层的具体实现。

关系型语言一般由以下几个部分组成:

  • 数据定义语言(data definition language)
  • 数据操纵语言(data manipulation language)
  • 数据控制语言(data control language)

其中结构化查询语言SQL广泛使用。

阅读全文 »

事务的基本特性是隔离性,然而当数据库中由多个事务并发执行时,事务的隔离性不一定能保持。为保持事务的隔离性,系统必须对并发事务之间的相互作用加以控制,这种控制通过并发控制机制来实现。

阅读全文 »

数据库管理系统的并发控制和恢复机制存在于数据库管理系统设计中的各个部分。并发控制确保在多个线程写入/读取时数据的正确性,而恢复机制确保数据库管理系统在系统突然断电后数据仍然正常。基于事务的特性,并发控制和恢复机制是数据库管理系统的重要部分。

阅读全文 »

数据库管理系统在日常生活中的应用非常广泛,用于管理计算机数据。随着当今时代数据爆炸性增长,数据库系统也日益成为计算机应用的核心部分。

阅读全文 »

在导论中,我们了解到数据结构是若干数据项的结构化集合,其结构性表现为数据项之间的某种逻辑次序。根据这种逻辑次序的复杂程度可大致将数据结构分为线性、半线性、非线性结构三大类。在线性结构中,各数据项按照一个线性次序组织为一个整体。在向量中,所有数据项的物理存放位置与其逻辑次序完全吻合。

阅读全文 »