
搜索引擎
当以乐
成长是打破枷锁的有效方式.
展开
-
索引的建立过程学习总结
索引基础 了解几个基本概念:倒排索引,单词词典,倒排列表,tf,df等 知道索引建立的大概流程,当拿到一篇文章(单字段),需要进行分词,记录一些信息,组成倒排索引.写入到磁盘中. 单词词典 建立好term到倒排列表的映射后,需要能快所的找到查询的term,继而获取对应的倒排列表,进行其余的操作,.主要有两种方式 第一种是使用哈希加链表的方式,将te原创 2016-10-26 20:05:00 · 2450 阅读 · 0 评论 -
索引压缩学习总结
词典压缩 词典中一般包含三部分信息,原词,df,及倒排索引指针.其中要压缩的是原词,存在不规则性 如果都去开辟最大那个原词的字节空间,那么整个字典树将有非常大的空间浪费. 将单词单独抽取出来放在一个单独的存储区内,原词的位置存放指向该词语的指针. 再次优化可以将指针在某个范围内仅仅保存一个指针,在单词存储区保存原词及词长. 倒排列表压缩算法 评价原创 2016-10-27 17:51:11 · 1623 阅读 · 0 评论 -
检索模型与搜索排序 学习
布尔模型 仅仅根据term后续的倒排列表进行布尔运算,获取最终的返回结果.无法进行排序打分. 空间向量模型 将搜索语句当成一片文档来解析成n维度空间中的某个点,与已经存在的原始文档在该维度中的做比较,根据夹角等因素算出数值进行排序. 首先需要计算每个term的特征权重.为 TF*IDF TF的两种计算方式: 1+log(TF) 或者 a + (1原创 2016-10-31 19:52:44 · 2878 阅读 · 0 评论 -
链接分析学习
这章主要是对算法的一些描述,理解,实际使用没有. 两个模型: 随机游走模型:对直接跳转和远程跳转两种用户浏览行为进行抽象的模型. 子集传播模型:将互联网的某些符合规则的分为指定的集合,对集合赋予初始的权重,然后将剩余的网页,根据和集合内网页的关系,传递其权重. PageRank: 对所有页面设置一个初试权重值,根据出链进行权原创 2016-11-02 20:03:36 · 1161 阅读 · 0 评论 -
Lucene原理与应用
1. 常用查询对象 TermQuery 最基本的词条查询 查询不切分的字段 BooleanQuery 布尔逻辑查询 组合条件查询 PhraseQuery 短语匹配查询原创 2017-02-16 18:23:54 · 422 阅读 · 0 评论 -
中文分词相关
1.搜索词典方法 1.1 trie数搜索 这里涉及到底层数据过大的情况,一般用于有限个数的字典 1.2 平衡三叉树的搜索 需要先建立平衡三叉树,字典建立过程比较繁琐,但无数据量限制问题 1.3 Java自身hashmap方式 hashmap是优化后的数据结构,底层使用可扩展的hash表和树形结构,和三叉树一样在动态构建过程可能过程会繁琐点,单是已经实原创 2017-02-15 18:08:05 · 434 阅读 · 0 评论 -
文档排重之SimHash
1.将文本分词表示成基于词的特征向量,使用TF*IDF 作为每个特征项的权重.地名,专有名词等,名词性的词汇往往有更高的词义权重. 2.将特征项按照词权重排序 3.选取前n个特征项,然后重新按照字符排序,如果不排序,关键词就找不到对应的关系. 4.初始化长度为64位的数组,该数组的每个元素都是0 5.对特征列表循环做如下处理: 5.1 取每个特征的6原创 2017-02-15 18:08:57 · 691 阅读 · 0 评论 -
搜索引擎相关架构和技术点梳理
腾讯社区搜索架构演进(关系链): http://www.infoq.com/cn/presentations/tencent-community-search/ 蘑菇街搜索演进: http://www.techweb.com.cn/network/system/2017-06-24/2545925.shtml 当当网搜索演进: http://www.c原创 2017-07-18 18:20:31 · 1421 阅读 · 0 评论