用户评论挖掘

随着互联网的发展,越来越多的人选择在网上消费,并且越来越的证据表明商品的评论信息会影响到消费者的消费决定。评论挖掘的主要任务是从评论中了解到用户对产品的哪些功能、属性进行了怎样的评论,并抽取成简短有效的信息。

评论挖掘主要有以下几个子任务:

识别、抽取产品特征

产品特征分为显示特征和隐含特征。

阅读全文

计算机开机过程

从按下计算机的电源按钮到出现欢迎页,这个过程都发生了什么?
我们知道计算机启动叫boot,重启叫reboot,这里的boot其实是bootstrap的缩写。计算机运行时其硬件交由软件来控制,所以计算机要启动必须要运行软件,但是计算机不启动就无法运行软件,这是一个鸡生蛋和蛋生鸡的过程。
有一句谚语:

阅读全文

mysql的set names

为了Emoji

最近写东西的时候需要支持Emoji表情,用MySQL作存储需要版本5.5.3+并且字符集设置为utf8mb4,由于是跟其他服务公用一个MySQL存储服务所以不能动MySQL的全局配置,在针对数据库和表设置完字符集设置后,应用程序连接数据库时指定default-character-set为utf8mb4会有报错提示(不知道是不是应用程序使用的MySQL驱动不支持的缘故),所以存储Emoji表情的时候还是会提示『Incorrect string value』,最后解决方案是在应用程序连接数据库的时候加上’set names utf8mb4’。
MySQL执行set names utf8mb4后等同于临时设置如下字符编码:

1
2
3
4
5
SET character_set_client = utf8mb4;       

SET character_set_results = utf8mb4;

SET character_set_connection = utf8mb4;

阅读全文

关于密码保护

作为一名开发者,开发一个用户账户系统很可能就是你工作内容的一部分,其中比较重要的事情就是如何保护用户的密码,当系统被攻破、数据库被拖库时如何降低泄露用户原始密码的风险是一件值得深思的问题(还记得当年CSDN被拖库后爆出系统存储了用户的明文密码吗?)。比较行之有效的办法是对用户密码进行加盐哈希。

阅读全文

蓄水池抽样(Reservoir sampling)问题

蓄水池抽样

问题: 给出一个数据流,这个数据流的长度很大或者未知。并且对该数据流中数据只能访问一次。请写出一个随机选择算法,使得数据流中所有数据被选中的概率相等。

阅读全文

基于词图的最大概率中文分词方法

分词方法分类

中文分词大致分为三类:

  • 基于字符串匹配:最大正向匹配法、逆向最大匹配法、最少切分法、双向匹配法等

阅读全文

OpenSSL

SSL


SSL 是一个缩写,代表的是 Secure Sockets Layer。它是支持在 Internet 上进行安全通信的标准,并且将数据密码术集成到了协议之中。数据在离开您的计算机之前就已经被加密,然后只有到达它预定的目标后才被解密。证书和密码学算法支持了这一切的运转,如果连接传输敏感信息,则应使用 SSL。

阅读全文

AngularJS中ui-router如何传递参数

ui-router是AngualrJS中常用的路由框架。其中ui-sref 一般使用在 a标签中,\$state.go(‘someState’)一般使用在controller里面。这两个本质上是一样的东西,查看ui-sref的源码,ui-sref最后调用的还是$state.go()方法。

阅读全文

Go语言的接口

在计算机的世界里,同一类工具不同的实现所体现出背后的哲理也是不一样的,例如 Linux 与 windows,都是操作系统,但是如果用使用windows的习惯去操作Linux是玩不转的。编程语言也一样,对于面向对象不同的语言也同过不同的方式来实现。java不支持类的多重继承,但是可以通过接口的多重继承来弥补。Python干脆在语言层面上就不提供接口这样的特性,所以要想实现接口的效果可以采用继承只有方法空实现的父类并重写父类方法来达到目的。而Go语言提供了更加灵活和抽象的接口特性。

阅读全文

数据库表空间

数据库表空间允许数据库管理员定义存储数据库对象的文件在文件系统中的位置。一旦创建了表空间,当创建数据库时就可以引用这个表空间。

通过表空间来控制数据库的磁盘存储位置有一下好处:

  1. 如果数据库初始安装所在的分区或卷耗尽了空间,并且已经无法扩展,可以在另外的分区上面创建和使用一个新的表空间,直到系统重新被配置。

阅读全文