首页 体育 教育 财经 社会 娱乐 军事 国内 科技 互联网 房产 国际 女人 汽车 游戏

地理文本处理技术在高德的演进 (下)

2020-01-05

在高德地图的检索场景下,从根底的地图数据索引、到在线召回、终究产品展现,均以市等级行政单位为根底粒度。一次完好的检索需求除了用户输入的 query 外,还会包含用户的图面城市以及用户方位城市两个城市信息。

一般,大多数的查找目的都是在图面或许用户方位城市下,可是仍存在部分检索目的需求在其他城市中进行,准确的辨认出用户恳求的方针城市,是满意用户需求的第一步,也是极其重要的一步。

在 query 剖析战略流程中,部分战略会在城市剖析的多个成果下并发履行,所以在架构上,城市剖析的成果需求做到 少而精 。一起用户方位城市,图面城市,异地城市三个城市的信息存在显着差异性,不论是先验输出置信度,仍是用后验特征做挑选,都存在 特征不行比 的问题。

在 后验目的决议计划 中,多个城市都有相关成果时,单一特征存在说服力缺乏的问题,怎样结合先验置信度和后验的 POI 特征等多维度进行描写,都是咱们要考虑的问题。

原始的城市剖析模块现已选用先验城市剖析和后验城市挑选的全体流程

可是原始的战略比较粗陋,存在以下问题:

改造 1:城市剖析

城市剖析是一个 轻召回重挑选 的问题,咱们将城市剖析规划为召回 + 挑选的两阶段使命。

召回阶段,咱们首要从 query 和 phrase 两种粒度发掘特征资源,然后进行候选城市归并。

排序阶段,需求对候选城市进行判别,辨认是否应为方针城市,用 gbdt 进行二分类拟合。

样本方面,咱们挑选从查找日志中随机抽取,简略清洗后,进行人工标示。结构样本时存在本异地分样本散布不均的问题,本地需求远远多于异地,这儿需求除掉本地和异地相关的特征,防止模型学偏。

首要特征包含:

改造 2:城市挑选

城市挑选在全体的目的决议计划中处于下流,多种目的先在城市内部 PK,然后城市相互 PK。城市挑选问题可以了解为多个城市间的排序问题,这儿咱们运用 ltr 进行城市挑选的建模。

运用随机 query 的多个城市目的成果作为样本,每次检索只要 1 个展现城市,因而每次只需求从候选城市中挑选方针作为正样本,其他候选城市均作为负样本,与方针城市构成 pair 对。

首要特征包含:

比较原始的城市剖析和城市挑选,两个模块悉数完成机器学习化,在恶劣 badcase 显着下降的一起,可保护性大幅进步。在后续的建模中,咱们将城市剖析作为一个上层运用使命,经过多使命的方法接入到 query 剖析的一致模型中来,下降了特征间的耦合,一起完成进一步的作用进步。

地图场景下的 query 常常包含多个空间语义片段的描绘,只要正确辨认 query 中的中心部分做 what 用于召回,一起用空间描绘部分做 where 进行限制,才可以得到用户想要的 POI。如 query= 北京市海淀区五道口肯德基,what= 肯德基,是泛需求。query= 南京市雨花台区板桥大街新亭大街与新湖大路接壤口湾景,what= 湾景,是准确需求。这种在 A 邻近找 B 或许在 A 范围内找 B 的需求咱们把它称作 wherewhat 需求,简称 ww。

wherewhat 目的剖析首要包含先验和后验两个部分。先验要做 wherewhat 切分,是一个序列标示问题,标示出 query 中的哪些部分是 where 哪些部分是 what,一起给出 where 的空间方位。后验要做目的挑选,挑选是否展现 wherewhat 目的的成果,可以转化成分类或许排序问题。

wherewhat 体系的首要难点在 ww 切分上,不只要应对其他 query 剖析模块都要面临的低频和中长尾问题,一起还要应对 ww 目的了解共同的问题。像语义含糊,比方北京欢乐谷公交站,涌边村牌坊这样的 query 该切仍是不应切,成果差异很大。像语序改换,如 query= 嘉年华西草田,善兴寺小寨,逆序的表达假如不能正确辨认,作用或许很差。

切分:wherewhat 模块在成分剖析模块下流,首要依靠了成分剖析的特征。关于一些比较规整的 query,经过成分剖析组合的 pattern 来处理,关于一些中长尾的 query,经过再接入一个 crf 模型进行 ww 标示。

挑选:根据人工规矩进行目的的判别和挑选。

为了可以剖析原始 crf 切分模型的问题,咱们根据 crf++ 源码开发了一个 crf 模型的剖析东西,可以将根据维特比算法的猜测进程交互式的展现出来,将模型的黑盒剖析变成白盒,剖析出了一系列问题。

一起,crf 问题剖析东西也运用在了其他 query 剖析模块。

原始的模型依靠成分剖析比较严重,因为成分剖析特征自身存在准确率的问题,咱们从用户的 query 中总结了一些愈加牢靠的计算特征。

描绘了片段做前缀的占比。比方望京凯德茂,望京阜通,也有望京独自搜,假如望京在前缀中呈现的占比很高,那阐明这个片段做 where 的才能比较强。

描绘了后缀的离散程度,如望京凯德茂,望京美食,望京首开,后缀很乱,也可以阐明片段做 where 的才能。

片段独自搜占比,比方西门常常是在片段结束呈现,可是独自搜比较少,那片段做 what 的才能比较弱。

以特征值域做横轴,where 和 what,label 作为纵轴,就得到了特征 -label 曲线。从这几个特征的特征 -label 曲线来看,在某些区间下区别度仍是很好的。因为 crf 模型只承受离散特征,特征 -label 的曲线也辅导了特征离散化的阈值挑选。关于低频 query,咱们经过低频 query 中的高频片段的计算信息,也可以使咱们的模型在低频问题上体现更好。

将原始的堆砌的规矩晋级到 gbdt 机器学习模型,引进了先验特征,在拿到必定收益的一起也使得整个体系愈加合理。

将 ww 中逆序的问题笼统出来,可以概括为 query 剖析中的鲁棒性问题。跟着战略优化进入深水区,存在战略进步用户不行感知,进犯 case 简略把体系打穿的问题。

如上图,用户改换 query 中 where 和 what 的次序,作用或许变差。改换下检索城市,关于同一个闻名景点,跳转逻辑不一致。用户区划输错,纠错不能辨认,作用变很差。这种模块对非预期的 query 改换,或许更通用地叫做,对上下流的特征扰动的承载才能,咱们可以把它叫做模块的 鲁棒性 。

这儿咱们规划了关于通用鲁棒性问题处理的思路

在不引进杂乱模型的前提下,经过构建 ensemble 的浅层模型来优化特定问题,下降了问题处理的本钱。

关于 ww 逆序这个特定问题进行了特征复用用本复用,而且模型对外一致

作用上,新的模型在原始测验集作用相等,人工结构进犯 case 调集准召显着进步,方针 case 调集具有可观的处理份额,验证了鲁棒性优化的思路是有用的。

这儿根本完成了关于 ww 体系的一个完好的晋级,体系中的痛点根本都得到了处理。优化了切分模型,流程愈加合理。目的决议计划上完成了规矩到机器学习模型的晋级。在优化或许引进浅层机器学习模型的一起尽或许发挥浅层模型的潜力,为从浅层模型晋级为深度模型打下根底。

在后续的建模中咱们运用字粒度 lstm+crf 模型替代现有的 crf 模型,完全摆脱了对成分剖析特征的依靠,一起经过交融常识信息到 lstm+crf 模型,进一步进步作用。

在高德地图的查找场景中,一类用户查找目的为途径规划目的。例如,当用户在高德地图 App 的查找框中输入“从回龙观到来广营”,点击查找按钮后,查找服务能辨认出用户的查找目的为途径规划,并辨认出用户描绘的起点为“回龙观”,结尾为“来广营”,从而检索到对应的 POI 点给下流服务做出道路的规划。

从用户输入中辨认途径规划目的,并提取出对应的起结尾,这是一个典型的 NLP 使命。前期的途径规划模块运用的是模板匹配的方法,这种方法开发本钱低,能处理大部分常见的途径规划问题,如上面这种“从 A 到 B”类的问题。

但跟着事务的不断发展,模块需求处理的问题越来越杂乱,比方“坐地铁从西直门到大兴狼垡坐到哪里下车”,“广东到安徽经过哪几个城市”,“去往青岛的公交车有吗” 等等各种非“从 A 到 B”形式的问题。因为模板匹配方法没有泛化才能,只能经过不断添加模板来处理,使得模块越来越沉重难以保护。

因为线上一切的查找 query 都会经过途径规划模块,若是让模型去处理一切的 query,那么模型不只要处理目的辨认问题,又要处理槽位提取问题,关于模型来说是很难一起将这两个使命学好的。因而,咱们采纳了以下三段式:

模型前运用关键字匹配战略进行简略目的辨认,过滤掉大部分非途径规划 query;模型处理疑似途径规划的 query,进行槽位提取;模型后再对模型成果进跋涉一步查验。

机器学习的样本一般来源于人工标示,但人工标示耗时长本钱高。因而咱们采纳的是主动标示样本方法。经过富集途径规划形式,如“从 A 怎样乘公交到 B”,再用清洗后的随机 query 依照实践起结尾的长度散布进行起结尾替换,生成许多标示样本。

特征方面,咱们运用了成分剖析特征及含有关键字的 POI 词典特征。它们首要在如“从这儿到 58 到家”这类起结尾 中含有关键字的 query 上起着区别关键字的作用。

crf 算法是业界常用的为序列标示使命树立概率图模型的算法。咱们选取的也是 crf 算法。

在验证集准确率召回率,以及随机 query 作用评比上,目标都有了显着的进步。

关于途径规划这样一个定向的 NLP 使命,运用 crf 模型完成了从规矩到机器学习模型的晋级。作为一个运用层使命,途径规划也很简略被迁移到 seq2seq 的多使命学习模型中来。

曩昔两年跟着机器学习的全面运用,以及根据合理性进行的屡次作用迭代,现在的地舆文本处理的作用优化现已进入深水区。咱们以为将来的优化重点在攻和防两方面。

攻首要针对低频和中长尾问题。在中高频问题现已根本处理的前提下,怎样可以运用深度学习的技能进行地舆文本处理 seq2seq 的一致建模,在低频和中长尾问题进步跋涉一步优化,取得新一轮的作用进步,是咱们现在需求考虑的问题。别的,怎样更好地交融常识信息到模型中来,让模型可以具有接近人的先验判别才能,也是咱们亟待进步的才能。

防首要针对体系的鲁棒性。如用户的非典型表达,改换 query 等定向的问题,怎样可以经过定向优化处理这些战略的死角,进步体系的容错才能,也是咱们现在需求考虑的问题。

地图查找虽然是个垂类查找,可是麻雀虽小五脏俱全,而且有地图场景下许多有特征的的难点。未来咱们需求持续运用业界先进的技能,而且结合地舆文本的特色进行优化,了解将愈加智能化。

热门文章

随机推荐

推荐文章