猜你喜欢
智能搜索和推荐系统

智能搜索和推荐系统

书籍作者:刘宇 ISBN:9787111670674
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:4698
创建日期:2021-10-07 发布日期:2021-10-07
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介

本书分为4大部分。第一部分(第1~3章):搜索推荐系统的基础。首先介绍数学与统计学是现代机器学习理论的基础;其次介绍搜索推荐系统的常识;最后,描述知识图谱相关基础理论。第二部分(第4~6章):搜索系统的基本原理。主要内容包括:搜索系统框架及原理、主要算法以及搜索系统相关评价指标。第三部分(第7~9章):推荐系统的基本原理。主要内容包括:推荐系统框架及原理、主要算法以及推荐系统相关评价指标。第四部分(第10~12章):应用。首先介绍三种常见的搜索引擎工具;其次讲述搜索引擎和推荐系统两个方向的应用。

前言

为什么要写本书搜索和推荐是人工智能技术应用最早和最成熟的两个领域。在互联网快速发展的今天,信息呈爆炸式增长,而搜索和推荐系统是解决信息过载最有效的方式。搜索引擎作为网站和应用的入口,地位越来越重要。推荐系统是拉动用户增长的利器,也是互联网流量变现的重要工具。由于工作的原因,我开始对自然语言处理在搜索中的应用进行梳理。在梳理的过程中,我翻阅了很多资料和文档。但是,我发现市面上的资料都比较陈旧。一些资料是专门讲解搜索引擎应用的,偏工程应用,整本书都在讲解代码。还有一些资料要么讲述自然语言处理的理论和应用,要么讲解机器学习的理论和应用,而对如何将这些理论应用到搜索场景并没有做出系统的描述。一个偶然的机会我翻阅了张俊林的《这就是搜索引擎:核心技术详解》一书,书中提到该书是他学习搜索引擎的笔记。这个点子启发了我,是不是我也可以把在工作和学习过程中的笔记整理出来,为初学者提供一个较为详细的入门指引呢?2019年我换了工作,选择了一个专门从事推荐系统的岗位。新团队中的每个人都有相似的特质,那就是喜欢迎接各种挑战。于是,我鼓动大家把自己在工作过程中的心得体会记录下来。虽然大家一开始不理解我的初衷,但是还是按照我的方法做了。面对困难,我们并没有裹足不前,而是通过不断尝试新的算法和前沿技术,克服了各种生产和线上的实际困难。在整理心得体会时,我们发现了搜索、推荐以及广告系统的同质性,并希望能把重点提炼出来,总结成册来帮助更多的初学者。这里分享一些学习心得:学习的过程是一个痛并快乐的过程;每一门学科的发展必然有一些先知先贤为我们指引迷途,大家任何时候奋起直追都不算晚;在学习的路上不断求新、求变才是“王道”。读者对象本书面向零基础读者,介绍了搜索和推荐系统的工作原理及实践应用。通过学习本书,以下读者可以从中受益。搜索和推荐系统的初中级读者。自然语言处理的初中级读者及爱好者。机器学习的初中级读者及爱好者。本书特色本书将搜索、推荐和广告的核心技术进行了完美统一,介绍了搜索和推荐方面的相关知识,并把自然语言处理、机器学习和深度学习的一些知识点应用到搜索和推荐场景。涵盖了工业界常用的搜索架构和一些基本算法。涵盖了工业界常用的推荐架构和一些基本算法。在讲解过程中统一了搜索、推荐以及广告的一些同质技术。将一些自然语言处理基本模型融入搜索和推荐的业务场景中。将一些基本的机器学习算法应用到搜索和推荐的排序学习场景中。梳理了排序学习的一些主要实现方法。如何阅读本书本书分为4部分。第一部分(第1~3章):搜索和推荐系统的基础。这部分首先说明了概率统计与应用数学是现代机器学习理论的基础,也是基于统计的自然语言处理的基础;其次介绍了搜索系统和推荐系统的常识,为读者的后续学习打下基础;最后描述了知识图谱的相关基础理论,为其在搜索系统和推荐系统领域的应用作铺垫。第二部分(第4~6章):搜索系统的基本原理。这部分的主要内容包括搜索系统框架及原理、主要算法以及相关评价体系。首先,介绍搜索系统的架构和原理,使读者了解搜索系统的组成、工作原理以及知识图谱在搜索系统中应用的概况;其次,主要讲解搜索系统中涉及的基本模型、机器学习以及深度学习算法;最后,描述评价搜索系统的相关指标和方法。第三部分(第7~9章):推荐系统的基本原理。这部分的主要内容包括推荐系统框架及原理、主要算法以及推荐系统相关评价指标。首先,介绍推荐系统的架构和原理,使读者了解推荐系统的组成、工作原理以及知识图谱在推荐系统中应用的概况;其次,主要讲解推荐系统中涉及的线性模型、树模型以及深度学习模型;最后,对判断一个推荐系统的优劣给出相应的指标体系。第四部分(第10~12章):应用。这部分首先介绍了三种常见的搜索引擎工具—Lucene、Solr和Elasticsearch;其次讲述了搜索系统和推荐系统两个方向的应用;最后详细介绍了如何充分结合AI与工程在工业界发挥作用。其中,第一部分相对独立。如果你是一名资深用户,能够理解搜索和推荐的相关基础知识,那么可以直接跳过这部分内容。但是如果你是一名初学者,请一定从第1章的基础理论知识开始学习。勘误和支持由于笔者水平有限,编写时间仓促,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。书中的全部源文件除可以从华章公司网站(www.hzbook.com)下载外,还可以从网站https://github.com/michaelliu03/Search-Recommend-InAction下载,我也会在该网站及时更新相关内容。如果你有更多的宝贵意见,也欢迎发送邮件至[email protected],期待得到你的真挚反馈。致谢首先要感谢伟大的人工智能之父——艾伦·麦席森·图灵,是他开创了整个AI领域。感谢清华大学对我的培养,为我提供了一个良好的学习环境。感谢机械工业出版社华章公司的策划编辑杨福川,在这一年多的时间里始终支持我的写作,引导我顺利完成全部书稿。感谢责任编辑董惠芝为本书出版付出的巨大努力。最后感谢我的妻子和两个可爱的女儿,感谢你们时时刻刻给我信心和力量!谨以此书献给我最亲爱的家人,以及众多热爱人工智能和机器学习的朋友们!刘宇2020年12月

目录

推荐序一 推荐序二 前言 第一部分 搜索和推荐系统的基础 第1章 概率统计与应用数学基础知识 2 1.1 概率论基础 2 1.1.1 概率定义 2 1.1.2 随机变量 5 1.1.3 基础的概率分布 5 1.1.4 期望、方差、标准差、协方差 8 1.2 线性代数基础 10 1.2.1 矩阵 10 1.2.2 向量 10 1.2.3 张量 11 1.2.4 特征向量和特征值 12 1.2.5 奇异值分解 12 1.3 机器学习基础 13 1.3.1 导数 13 1.3.2 梯度 14 1.3.3 最大似然估计 14 1.3.4 随机过程与隐马尔可夫模型 15 1.3.5 信息熵 16 1.4 本章小结 18 第2章 搜索系统和推荐系统常识 19 2.1 搜索系统 19 2.1.1 什么是搜索引擎及搜索系统 19 2.1.2 搜索引擎的发展史 21 2.1.3 搜索引擎的分类 22 2.2 推荐系统 23 2.2.1 什么是推荐系统 24 2.2.2 推荐系统的发展史 24 2.2.3 推荐系统应用场景 25 2.2.4 推荐系统的分类 26 2.3 搜索与推荐的区别 29 2.4 本章小结 30 第3章 知识图谱相关理论 31 3.1 知识图谱概述 31 3.1.1 什么是知识图谱 31 3.1.2 知识图谱的价值 33 3.1.3 知识图谱的架构 35 3.1.4 知识图谱的表示与建模 36 3.2 信息抽取 39 3.2.1 实体识别 40 3.2.2 关系抽取 46 3.3 知识融合 50 3.3.1 实体对齐 50 3.3.2 实体消歧 51 3.4 知识加工 53 3.4.1 知识推理 53 3.4.2 质量评估 58 3.5 本章小结 58 第二部分 搜索系统的基本原理 第4章 搜索系统框架及原理 60 4.1 搜索系统的框架 60 4.1.1 基本框架 60 4.1.2 搜索引擎是如何工作的 62 4.2 数据收集及预处理 64 4.2.1 爬虫 64 4.2.2 数据清洗 66 4.2.3 存储空间及分布式设计 68 4.3 文本分析 70 4.3.1 查询处理 71 4.3.2 意图理解 82 4.3.3 其他文本分析方法 85 4.4 基于知识图谱的搜索系统 90 4.5 本章小结 92 第5章 搜索系统中的主要算法 93 5.1 信息检索基本模型 93 5.1.1 布尔模型 93 5.1.2 向量空间模型 94 5.1.3 概率检索模型 96 5.1.4 其他模型 100 5.2 搜索和机器学习 102 5.2.1 排序学习 102 5.2.2 排序学习示例 107 5.3 搜索和深度学习 116 5.3.1 DNN模型 116 5.3.2 DSSM模型 118 5.3.3 Transformer 120 5.4 本章小结 126 第6章 搜索系统评价 127 6.1 搜索系统评价的意义 127 6.2 搜索系统的评价体系 127 6.2.1 效率评价 128 6.2.2 效果评价 130 6.3 本章小结 136 第三部分 推荐系统的基本原理 第7章 推荐系统框架及原理 138 7.1 推荐系统的框架及运行 138 7.1.1 基本框架 139 7.1.2 组件及功能 140 7.1.3 推荐引擎是如何工作的 141 7.1.4 推荐系统的经典问题 142 7.2 推荐系统的冷启动 145 7.3 推荐系统的召回策略 150 7.3.1 基于行为相似的召回 150 7.3.2 基于内容相似的召回 153 7.4 推荐系统排序 160 7.4.1 特征选择的方法 160 7.4.2 推荐系统的排序过程 164 7.5 基于知识图谱的推荐系统 166 7.6 本章小结 168 第8章 推荐系统的主要算法 169 8.1 矩阵分解 169 8.1.1 奇异值分解 170 8.1.2 交替最小二乘 171 8.1.3 贝叶斯个性化排序 172 8.2 线性模型 174 8.2.1 FM模型 175 8.2.2 FFM模型 176 8.3 树模型 177 8.3.1 决策树模型 177 8.3.2 集成算法模型 183 8.4 深度学习模型 191 8.4.1 Wide & Deep模型 191 8.4.2 Deep FM模型 197 8.5 本章小结 199 第9章 推荐系统的评价 200 9.1 推荐评估的目的 200 9.2 推荐系统的评价指标 200 9.2.1 RMSE和R方 204 9.2.2 MAP和MRR 204 9.2.3 其他相关指标 205 9.3 推荐系统的评估实验方法 206 9.3.1 离线评估 206 9.3.2 在线评估 209 9.3.3 主观评估 213 9.4 本章小结 217 第四部分 应用 第10章 搜索引擎工具 220 10.1 Lucene简介 220 10.1.1 Lucene的由来及现状 220 10.1.2 Lucene创建索引过程分析 223 10.1.3 Lucene的搜索过程解析 224 10.2 Solr简介 226 10.2.1 Solr特性 228 10.2.2 Solr的核心概念 228 10.2.3 Solr的核心功能 228 10.3 Elasticsearch简介 230 10.3.1 Elasticsearch的核心概念 230 10.3.2 Elasticsearch的核心功能 231 10.4 搜索引擎工具对比 232 10.5 本章小结 233 第11章 搜索应用实战:基于电商的搜索开发 234 11.1 电商搜索系统的架构设计 234 11.2 ES在搜索系统中的应用 236 11.3 NLP在搜索系统中的应用 237 11.4 商品数据排序算法研究 240 11.5 搜索排序的评价及优化 241 11.6 深度学习在搜索系统中的应用 243 11.7 电商搜索系统中的SEM 243 11.8 本章小结 246 第12章 推荐应用实战:基于广告平台的推荐 247 12.1 推荐系统的架构设计 247 12.2 推荐系统的召回和冷启动 249 12.3 ES在推荐系统中的应用 251 12.4 推荐系统中NLP的应用 252 12.5 推荐系统中粗排和精排 253 12.6 推荐系统的评价和优化 254 12.7 深度学习在推荐系统应用 255 12.8 本章小结 257

标签
搜索