你了解互联网APP搜索和推荐的背后逻辑么?

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

1.搜索和推荐无处不在

我们习惯了百度、Google、360搜索的便捷输入你想要搜索的关键词立马呈现给你一批对应的结果供你筛选。我们也经常上淘宝、京东、拼多多购物输入想买的商品瞬间列出一页一页的商品清单供我们选择。我们使用美团、饿了么搜索想吃的美食美食列表会按照距离订单数量好评给你做排行榜。我们想要去旅行打开去哪儿网、大众点评、小红书搜索一下地名就出现对应地方的旅游景点、住宿旅馆、网红打卡点等相应的信息和评价。

当然打开今日头条、抖音、微博、小红书不用搜索也会推荐出热点新闻、热点视频等事件供你浏览。而你的浏览记录、点赞、转发、收藏、评论等动作还会为接下来的事件推荐提供更加准确的依据来。让你驻足停留流连忘返上瘾并沉迷其中无法自拔。还会引导你去做出消费的行为比如直播打赏进入超链接去购物商城等等。而你的这些动作统统被称为用户行为这些行为还会继续曝光对应的内容让其成为更火爆的新闻会立马推荐给其他人形成一波又一波的热点事件。

想想是不是很惊讶但是这就是事实我们深陷其中却都习以为常每天沉浸在手机端的各大APP里畅游在这些信息的海洋中被包围着甚至被左右和绑架着这个专业术语叫用户粘性。

这就是目前互联网各个大厂主要玩的东西。是的BTA这也是他们最主要的赚钱办法。

想过没有这里背后的逻辑是什么对我们的生活有什么影响积极的、消极的这里我不去谈论一句话两句话好像也说不清楚。我只想拆拆背后的逻辑是什么

这背后做决策的就是被称之为智能搜索和推荐的算法。国内互联网都足劲儿搞这些算法谁家的算法更智能更强大更贴近你的习惯谁家的用户量就多对应APP的使用率就更广泛。而你就是他们的用户。

本质让你习惯上他们的搜索和推荐算法来我们就是这样被套路的。

下面用最通俗的语言来拨开这套算法最神秘的面纱科普一下背后的逻辑当然不用担心不涉及具体的算法、逻辑架构以及数据存储、处理等等。

  1. 互联网的数据从哪里来

我们打开互联网APP里面的内容包罗万象我们可以搜索感兴趣的内容或者上京东购买商品或者上知乎表达想法或者刷抖音的短视频、看直播在美团点个外卖、在去哪儿网购买个机票、浏览今日头条、微博的热点新闻和资讯、上淘票票订购电影票或者查询百度知识问答库、维基百科用高德定位导航去某个地方等等。这些动作所呈现的内容信息统统叫做数据。专业点叫做互联网大数据。

  • 比如百度搜索你搜出来的所有内容都是百度搜索引擎通过网络爬虫爬过来进行整合的数据以及各大网站主动提交规则给百度的数据让百度添加到搜索的规则引擎中增加网站的曝光率这个数据非常海量那么百度大数据的容量有多少百度技术委员会理事长陈尚义透露:“百度每天处理的数据量将近100个PB1PB就等于100万个G相当于5000个国家图书馆的信息量的总和

  • 而淘宝、京东、拼多多、美团里面的数据主要包括店铺数据、商品数据、客户数据、物流数据、运营数据等等。这里主要介绍商品数据它的来源就比较专项了这里有运营人员通过店铺后台按照类别进行编辑和上架也有个人通过APP的运营后台进行注册店铺。而像京东自营平台的商品信息更多是商家上架的商品栏目。当然这个数据量非常庞大。据统计淘宝拥有近5亿的注册用户数每天有超过6000万的固定访客同时每天的在线商品数已经超过了8亿件平均每分钟售出4.8万件商品。这背后就包含每个电商经营者具体电商的支付数据、库存数据、物流数据、日志数据等等。光订单量产生的数据淘宝日订单量在5000万单以上美团3000万单以上。淘宝单日数据产生量超过50TB1TB等于1000GB总体存储量可达40PB1PB等于1000TB。

  • 而像抖音、今日头条、小红书、知乎这样的APP平台其数据主要包括新闻、资讯类、视频内容、直播当然现在也有抖音电商、抖音外卖等等这里的数据类型更为丰富。但是数据来源更多是用户自产自销广大用户在对应的APP后台编辑好文章、短视频上传给对应APP后台APP的审核机制对信息进行审核形成即将发布的新闻资讯再通过推荐算法推荐给广大用户。抖音用户人数为8亿抖音的活跃人数1.3亿人而快手的活跃人数为7300万人。可以想想这些人也就是广大用户我们每天产生多少新的视频出来。

  • 而像知乎、博客、CSDN、各大新闻的留言网站、评论网站等其数据主要为留言数据图片数据各大网站直接收录到对应数据在网站里面充实网站的信息这里也可以用海量来形容。据报道知乎发布“我的知乎十年历”用户数据报告。报告显示成立十年以来知乎已经积累了超过4400万个问题和2.4亿个回答。想想你想要的问题是不是知乎都有知乎背后的搜索引擎会对问题进行类型分类和数据训练、做活跃度排序、再进行分布式存储。然后当你按照问题的描述去搜索的时候知乎的搜索引擎会进行一系列的流程呈现给你排序好的答案。当然还会做热门排行榜推荐。

上面的各大APP的数据内容其实只举了一些经典案例不过已经包罗万象了这个就是互联网的魅力所有的内容以数据的形式被搬上互联网被随时随机的检索和浏览。而我们拿起手机在数据形成的虚拟世界里徜徉。为什么总说互联网是有记忆的因为我们每个人每一次的上网的过程浏览过的信息所做的操作、交流的文案在这里都会留下足迹而且永久存储。想想是不是还是挺震撼的。

  1. 百度输入关键字背后发生了什么

有没有想过当你在百度、360、知乎、头条、抖音输入了一段想要搜索的文字点击一下搜索按钮就呈现给你一页一页排好序的结果列表。这里面就是搜索引擎在起作用背后的搜索链路也非常长这里用比较通俗的语言向大家展示背后的逻辑。

搜索的本质是想检索出用户需要的数据再以一种动态网页HTML的形式展示给用户上面我们已经介绍了各大互联网的数据这个数据是海量的也是非常丰富多彩的。需要将这些数据组织、管理、存储并且高效的利用就需要各种手段。

互联网大数据工程师就是专门干这个的本质就是做数据的存储与计算、任务的调度与管理。这里我们主要以存储来介绍数据本身都是在高性能的分布式服务器中存着而且各种类型的数据需要各种不同的数据库去存储比如常见的关系型数据库oracle、myql、sqlserver、postgresql等等。如视频类、图片、文本类、日志类数据存储需要存在非关系形数据库中如mongodb、elasticsearch、hbase等上面的数据库产品可能大家或多或少的听说过。

而搜索的过程就是搜索引擎分析你输入的句子语义解析并通过自然语言处理NLP来进行分词以标准化你输入的关键字。因为人们输入的句子是千差万别的怎么让机器理解你得想法以及准确让机器知道你想搜索的目标结果是什么意图分析再进行类型预测这里每种不同的资料存储再不同的服务器上所以需要做预测到底是想搜哪个类目预测。此时服务器拿到了一批结果但是结果很多有相关性强的也有相关性弱的就需要做排序召回结果排序而且排序的过程通常需要好几轮因为指标太多了我们经常看到搜索某个关键词返回上亿条分页的结果。但是往往你只会看最前面的几条当然你说最前面是广告这就另说了百度要盈利将付费的广告排在了前面这个体验大家都会吐槽。上面的流程是不是非常绕口又感觉很难理解下面拆开进行详细分析。

上面搜索的流程大概分别为抓取建库意图识别结果召回检索排序结果展现以保证搜索的内容能够满足快速全面、准确、稳定。

  • 抓取建库

本质就是组织数据训练数据。从海量的互联网信息中获得有用的数据进行清洗、保存、更新。这个过程因此通常会被叫做“spider”Spider抓取系统是搜索引擎数据来源的重要保证如果把web理解为一个有向图那么spider的工作过程可以认为是对这个有向图的遍历。从一些重要的种子 URL开始通过页面上的超链接关系不断的发现新URL并抓取尽最大可能抓取到更多的有价值网页。对于类似百度这样的大型spider系统因为每时每刻都存在网页被修改、删除或出现新的超链接的可能因此还要对spider过去抓取过的页面保持更新维护一个URL库和页面库。

抓取过来的数据需要进行清洗数据清洗就是对数据进行质量把控比如百度有专门的模式识别方案。提出那些违反规则的超链接进行屏蔽。还有最关键的一步就是对所有的资源建立索引。索引就相当于一个字典给其建立目录当你的内容发生变化了相应的就需要更新索引以维持整个索引的有效性。

  • 意图识别

在用户输入的句子中搜索引擎准确理解用户表达意图的效果是能够完成一次查询的关键因此系统对用户关键字的理解是用户和搜索引擎建立联系的必要环节。而搜索引擎做的这部分工作被成为意图识别。主要包括关键词的分词、类目预测、改写、实体识别、分词权重等部分各模块前后顺序会因系统需要而做适当调整。这部分的工作就主要是自然语言处理和机器学习的部分还需要不断训练的语料库作为支撑一般搞人工智能的开发会负责这部分当然数据标注人工干预通常都是苦力活。一方面搜索系统往往可以积累大量的用户行为数据如点击、收藏、购买等。另一方面电商场景有比较健全的商品类目体系。

  • 结果召回

结果召回是更加专业点的叫法。本质就是搜索的过程。你的词想服务器发送搜索的命令会拿到一批结果而这个叫做搜索召回。除了搜索召回还有文本召回结构化召回个性化召回。本质都是拿数据拿到一批数据。

  • 检索排序

搜索的结果有很多但是哪一条数据最重要的呢这里就需要排序具体的算法就不说了总体思路是对每条结果有其权重和指标来计算对应的分数。再通过分数进行排序当然可不是一次就完成的这个过程选哟重排序、粗排序、精排序等等。

  • 结果展现

排序的数据就等于有了结果然后搜索引擎的用户来说搜索结果页是离其最近的部分。搜索结果页的主体包含与查询的相关网页链接URL和与查询相关的自动摘要Automatic Summary这两个部分的合成还需要一些额外的计算。做分页下一步就需要通过网络响应给前端去展示了但是如果这样搞拿百度估计要崩了考虑一下全国几亿人有多少人会搜索相同的结果好不容易拿到的结果接下来又一个人再走一下流程那服务器的炸。所以一般而言垂直内搜索都会建立缓存。将结果一方面响应给前端进行展示尤其视频、音频都是多节点存储。另一方面会做分布式缓存满足下一次有命中缓存的结果进行直接返回加快响应速度。

总结

本文以概述的方式大概介绍了互联网搜索背后的故事让普通没有涉及到开发的用户能够概览也期望能够解开互联网那层最神秘的面纱。这里没有深入讲解专业知识和模型算法因为涉及的链路非常长某一个环境进去都是知识的海洋和无底洞我也仅仅只知其一。

下一节会重点讲当你打开抖音时候手动划一划就能为你推荐出你喜欢的小视频其背后的逻辑。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6