多语言模型铺到七十多种语言那天,受益最多的不是字母最像英语的那几门

多语言模型铺到七十多种语言那天,受益最多的不是字母最像英语的那几门
张文保 更新 37 分钟阅读 3,259 阅读
本文目录
  1. 十月和十二月是两件事,哪一次才是小语种的分水岭?
  2. 十月那次上线,非英语只吃到了精选摘要
  3. 十二月这次才铺到七十多种语言的常规排名
  4. 记错这个时间点会导致什么误判
  5. 在这之前小语种页面是怎么被理解的?
  6. 关键词匹配加一份有限的同义词表
  7. 同义词表是逐语言建的,低资源语言天然被漏
  8. 一套模型在多种语言上共训改变了什么
  9. 跨语言迁移到底靠什么发生?
  10. 共享子词词表是第一座桥
  11. 同一套参数在多种语言上同时学
  12. 迁移效果跟词表重叠度的关系没那么大
  13. 语序类型才是相关性最强的那个变量
  14. 哪些语种受益大,哪些受益小?
  15. 语序接近英语的那批受益最明显
  16. 语序差异大的那批受益有限
  17. 自由语序语言处在中间,而且最不稳定
  18. 语料量怎么决定这门语言的能力上限?
  19. 各语言的可用语料差着三个数量级
  20. 采样平滑能补偿一部分,补不掉数量级
  21. 怎么自己估自家语种的受益幅度
  22. 这张两变量的表具体怎么用
  23. 长尾问句的价值为什么在这一步之后上升?
  24. 以前小语种长尾问句接不住的原因
  25. 现在该写成完整的问句形态
  26. 常见问题这类模块的收益变化
  27. 功能词还能不能当停用词删?
  28. 只塞名词的标题习惯要退休
  29. 介词和助词承担的意思被读进去了
  30. 哪些语言的功能词最不能删
  31. 完全匹配和词形变体的策略该怎么调?
  32. 完全匹配的堆叠收益继续下降
  33. 但低资源语言下降得比英语慢
  34. 词形变体覆盖优先级下调但不能取消
  35. 按语种分档的策略表怎么写
  36. 怎么自己验一遍,而不是听别人说?
  37. 三种问法的对照实验怎么设计
  38. 要记录什么,多久看一次
  39. 三条当年做错的事
  40. 哪些事一个字都没变?
  41. 抓取、收录、编码、字形集全部原样
  42. 架构层跟理解层是两件事
  43. 下一代模型的方向已经指出来了
  44. 常见问题解答
  45. 覆盖七十多种语言之后,小语种关键词研究还要不要做
  46. 为什么用拉丁字母的语言不一定更受益
  47. 标题里的介词和助词到底要不要留
  48. 自由语序的语言该写长句还是短句
  49. 怎么判断自家语种属于哪一档
  50. 常见问题模块真的值得认真写吗
  51. 这件事对结构化数据和内链有什么影响
  52. 权威参考资料

摘要:覆盖七十多种语言这个消息一出来,多数人的第一反应是拉丁字母的语种会先受益,因为它们跟英语长得最像。实测结论正好相反:跨语言迁移的效果跟两门语言的词序类型相关性最强,跟字母表重叠度关系不大。语序接近英语的越南语受益明显,谚文和拉丁字母之间的差距反而不是关键变量。

十月和十二月是两件事,哪一次才是小语种的分水岭?

十月那次上线,非英语只吃到了精选摘要

十月底的那次公告说的是英语查询的常规排名。

非英语市场当时拿到的不是同一件东西。

它们只在精选摘要这一块用上了新的语言理解能力。

覆盖的语言数量也有限,是二十多种,不是七十多种。

精选摘要的影响面很窄,只涉及少数查询的少数位置。

所以那次上线对小语种的实际影响,接近于没有。

这个细节在当时被大量报道混在一起说了,很多人记住的是十月上线覆盖多语言。这个语言理解模型本身是怎么工作的那篇讲的是机制,不涉及分市场的铺开节奏,节奏这件事得单独看清楚。

把十月和十二月分开记,是理解这件事对小语种意味着什么的第一步。

精选摘要这个位置本身还有个特点:它只出现在特定类型的查询上,多数是问句型和定义型。小语种市场的这类查询本来就少有人做内容,所以就算那二十多种语言里有你的目标市场,可参与的查询集合也非常有限,实际能感知到的变化基本为零。

十二月这次才铺到七十多种语言的常规排名

十二月上旬的那次才是覆盖面上的跳变。

从二十多种精选摘要,变成七十多种语言的常规排名。

常规排名意味着影响的是每一次查询,不是特定位置。

这个变化对小语种站点的影响量级完全不同。

它意味着这些语言的页面第一次被同一套理解能力处理。

在此之前,非英语市场用的一直是能力较弱的那一套。

数量从二十多跳到七十多,中间多出来的那五十种正是真正的小语种。二十多种里装的还是主要语言,五十种这个增量里才有匈牙利语、越南语、乌克兰语、希伯来语这些真正需要它的语种,所以增量比总量更值得看。

如果要给小语种SEO找一个分水岭日期,是十二月这一次,不是十月那一次。

常规排名和特定位置的区别在量级上大概是这样:特定位置影响的是一小部分查询的一小块展示区域,常规排名影响的是每一次查询的整个候选集排序。前者是加分项,后者是评分方式本身变了,两者的影响面差着不止一个数量级。

记错这个时间点会导致什么误判

误判之一是把十月到十二月之间的排名波动归因错了。

那两个月小语种市场的波动跟这件事无关,另有原因。

误判之二是把受益幅度按英语市场的数据估。

英语市场当时报出的影响面是一成左右的查询。

小语种的实际幅度跟这个数字没有可比性,通常更小。

误判之三是以为覆盖了就等于能力一样,这条最要紧。

覆盖和能力是两件事。七十多种语言都被覆盖了,但每种语言上的理解能力差别很大,这个差别由训练语料的规模决定,后面会专门讲怎么估。搜索从关键词匹配走到意图理解的整条演变线那篇是纵向的时间视角,本篇要补的是横向的语种视角。

先把时间点和覆盖范围这两件事对清楚,再谈自家语种该怎么办。

还有一类误判出现在竞品分析上。看到某个竞品在这段时间排名上来了,就假定它是踩对了新机制的节奏,于是照抄它的写法。实际那两个月里能影响小语种排名的因素有一大堆,把结果归到一个刚上线的能力上,多半是把相关当成了因果。

在这之前小语种页面是怎么被理解的?

关键词匹配加一份有限的同义词表

更早的机制核心是词面匹配加同义词扩展。

查询里的词跟页面上的词对得上,页面就有机会被选中。

同义词表负责处理说法不同但意思相同的情况。

近义词理解的能力在此之前已经有过一轮明显提升。

那套被称为超级同义词的匹配机制就是这一层的代表。

但它处理的仍然是词与词的对应,不是整句的意思。

词面匹配这套机制对小语种SEO的塑造非常深。铺词形变体、覆盖拼写变体、把所有可能的写法都写进页面,这些做法之所以有效,正是因为引擎在按词面找匹配,你多写一种写法就多接住一批查询。这套方法论存在了十几年,不会因为一次更新就作废。

理解旧机制是判断新机制影响面的前提,因为变化的幅度取决于旧的那套在你的语种上原来做得有多差。

词面匹配这套机制还有一个副产品,就是小语种市场的内容形态被它塑造得很单一。大家都在写关键词密度合适、变体覆盖齐全的页面,读起来都差不多。这个格局在理解能力提升之后会松动,写得更像人话的内容第一次有了结构性的机会。

同义词表是逐语言建的,低资源语言天然被漏

同义词表和词形归并规则需要逐语言建设。

建设需要语料、需要标注、也需要语言学的投入。

投入按市场规模分配,小语种排在后面。

所以低资源语言上的词表覆盖率一直明显偏低。

这就是为什么同一个查询在英语上能被理解,在匈牙利语上不行。

差距的根源不是算法,是逐语言建设的资源分配。

这个结构性差距还有一个可观察的表现:小语种市场的搜索结果里,词面完全匹配的页面排得特别靠前,明显比英语市场更依赖字面。这不是当地竞争者更会做SEO,是引擎在那门语言上只有字面信号可用。

把这一层看清之后,新机制的意义就清楚了:它绕开了逐语言建设这个瓶颈。

这个分配逻辑还能解释一个现象:同一门语言在不同时期的待遇差别很大。某个市场的商业价值上来之后,投入跟着上来,词表覆盖率就明显改善。所以小语种的这类能力不是一直恒定的,它跟市场规模的变化是有滞后的正相关。

一套模型在多种语言上共训改变了什么

新机制的做法是一套参数在上百种语言上一起训练。

不再是每门语言各建一套规则和词表。

高资源语言学到的模式,会通过共享的参数影响低资源语言。

这就是跨语言迁移,也是这件事对小语种最关键的机制。

迁移意味着没人专门给它建词表的语言也能拿到一部分能力。

拿到多少,取决于它跟那些高资源语言有多相似。

这个机制上的转变值得跟更早那一波深度学习的应用区分开。深度学习这十年对搜索的改写那篇讲的是这类方法整体进入搜索的过程,而这里的重点是共训带来的迁移效应,这一点在单语言模型上是不存在的。

迁移这个词是本篇的核心,后面所有的判断都建立在它的强弱上。

共训还有一个容易被忽略的前提:它要求各语言的语料在同一个训练过程里同时存在。这意味着某门语言的可用语料如果实在太少,它在共享参数里几乎没有分量,能拿到的只是从别的语言迁移过来的通用结构,几乎没有属于自己的东西。这是最低资源那一批语言的真实处境。

跨语言迁移到底靠什么发生?

共享子词词表是第一座桥

模型不是按词处理文本的,是按子词片段。

一个词会被切成几个更小的片段,片段来自一份共享词表。

这份词表由所有语言的语料一起统计出来。

所以不同语言的词可能共用同样的片段。

共用片段的地方,就是模型能把知识搬过去的地方。

这是迁移能发生的技术前提,但不是决定强弱的主要变量。

子词切分这件事对屈折语还有一个附带的影响:一个词的词干和词尾可能被切成不同片段,模型因此有机会自己学到同一个词干的多种形态是相关的。这解释了为什么词形归并的部分工作可以被模型接过去,但也只是部分。

把子词词表理解成一座桥就够了,桥存在不等于车流大,流量由后面几条决定。

同一套参数在多种语言上同时学

训练时所有语言的文本混在一起进入同一套参数。

模型没有语言标签,它不知道这句话是哪门语言。

它学到的是语言的通用结构规律。

规律在语言之间共享,所以能跨语言用。

这跟给每门语言各训一个模型是完全不同的路径。

共享带来迁移,但也带来能力的不均匀,这是同一枚硬币的两面。

不均匀这一面的具体表现是:语料多的语言在参数里占的份额大,它的模式主导了共享的那部分表示。低资源语言拿到的是一份按高资源语言的规律塑造过的能力,合不合身取决于两者有多像。

这一点是理解受益差异的关键,也直接引出下面那个反直觉的结论。

不知道语言标签这件事还有个实际推论:模型不会因为你在页面上标了语言就更懂这门语言。语言标注解决的是给谁看的问题,跟模型能读懂多少完全是两件事,这两者常被混在一起说,后面会专门拆开讲。

迁移效果跟词表重叠度的关系没那么大

直觉上,字母表和词汇重叠越多,迁移应该越强。

拉丁字母的语言看起来更容易从英语那里借到能力。

实测结论跟这个直觉不一致。

把词表重叠度当变量去看,相关性比预期弱得多。

也就是说共用多少字符串,不是决定性因素。

这条推翻了一个很流行的判断,值得单独记住。

这个结论有直接的实务价值:不要因为你的目标语言用的是西里尔字母或者谚文,就假定它拿不到迁移收益;也不要因为它用拉丁字母,就假定它一定受益。字母表这个变量在这件事上的解释力很有限,用它做判断会得出错误的优先级。

那么真正相关的是什么,答案在语法结构那一侧。

这个结论还能反驳一个常见的操作建议:在小语种页面上保留大量英文原词以便借力英语的理解能力。这个做法在词面匹配的时代有它的道理,因为英文词本身能被匹配到;但在迁移这件事上它帮不上忙,迁移走的是结构那条路,不是共用字符串那条路。

语序类型才是相关性最强的那个变量

相关性最强的变量是两门语言的词序类型有多接近。

主谓宾的排列顺序、修饰语放在中心词前还是后,这类结构特征。

结构接近的语言之间,迁移效果明显更好。

结构差异大的语言,即便字母表相同,迁移也吃力。

这个结论解释了很多看起来反常的实测数据。

它也给了一个可操作的判断依据,比字母表靠谱得多。

用这个变量重新排一遍会得到跟直觉很不一样的顺序。语序接近英语的语言里,既有拉丁字母的,也有非拉丁字母的;而语序差异大的语言里,同样两种字母表都有。字母表和语序类型是两个独立的维度,混为一谈就是那个流行误判的来源。

接下来把常见的小语种按这个变量分个组,看谁在这一波里真的拿到了东西。

语序类型这个变量还有个好处是它极其稳定。语料量每年都在变,模型每隔一段时间就换一代,但一门语言的基本语序几十年不会变。所以用它做的分档判断有很长的保质期,值得花时间查准确,查一次能用很多年。

哪些语种受益大,哪些受益小?

语序接近英语的那批受益最明显

越南语的基本语序跟英语一致,都是主谓宾。

它的修饰语位置跟英语相反,但整体结构相近。

印尼语的语序也接近,而且形态简单没有屈折。

这两门语言在这一波里拿到的迁移收益相对明显。

泰语的语序同样接近,但它的分词问题另有一套。

东南亚三国的语言层横向对比那篇拆过三家的结构差异。

结构相近还有一个具体好处:这些语言的长句歧义比自由语序语言小。模型读整句的时候,语序固定的语言给出的结构线索更明确,理解出错的概率更低,所以写长一点的自然表达在这几门语言上是安全的。

这三门语言可以率先调整策略,往完整问句和自然表达的方向走。

这一组还有个共同点值得利用:它们的形态都很简单,词不怎么变形。形态简单意味着词面覆盖的工作量本来就小,所以从词面策略转向自然表达策略的成本也低,几乎不存在推倒重来的问题,这让它们成为最适合先做调整的一组。

语序差异大的那批受益有限

谚文使用的那门语言是主宾谓语序,跟英语差别大。

它还有大量的助词承担语法功能,结构上更不一样。

分写法和助词那篇讲的机制,正是这种结构差异的具体形态。

结构差异大意味着从英语那里能借到的模式少。

所以这类语言的迁移收益要打不小的折扣。

它们仍然会受益,但幅度和确定性都不如前一组。

这一组语言的策略调整要更保守。词面信号在它们身上仍然起相当大的作用,铺变体、做完全匹配这些老办法的收益下降得慢,不该急着砍掉。把资源从老办法转向新办法这件事,在不同语种上应该有不同的节奏。

判断自家语种属于哪一组,先查它的基本语序,这个信息在任何语言学资料里都能查到。

这一组的另一个特征是它们往往有本土的搜索生态。谚文那门语言的市场就有份额相当大的本土引擎,而本土引擎的语言理解升级节奏跟国际引擎不同步。所以这一组语种要盯两条线,两条线上的策略可能在一段时间里是不一样的。

自由语序语言处在中间,而且最不稳定

芬兰语和匈牙利语的语序相对自由,靠格尾表达语法关系。

自由语序意味着同一句话有多种合法的排列。

模型见到的结构变化更多,学起来更难收敛。

芬兰语的十五个格匈牙利语的十八个格都属于这一类。

它们的迁移收益处在中间位置,波动也最大。

同一门语言的不同查询类型上,表现可能差别很大。

这一组还有个特别的注意点:因为语序自由,长句在这些语言里的歧义空间更大。英语站那套写长句自然表达的打法直接搬过去,反而可能让模型更难确定成分之间的关系。这一组适合写结构清晰的中等长度句子,而不是越长越好。

屈折语和黏着语这一类要单独观察,不能跟前两组共用一份策略。

这一组还有一个操作上的建议:优先保证形态正确,其次才考虑句子的自然度。格尾错了,无论句子写得多自然都接不住查询;格尾对了但句子略显生硬,损失只在可读性上。资源有限的时候这个优先顺序很关键,它跟前两组正好相反。

语料量怎么决定这门语言的能力上限?

各语言的可用语料差着三个数量级

训练语料的主要来源之一是各语言的百科条目。

英语的条目数在六百万这个量级。

中等规模的欧洲语言在几十万到一百多万之间。

小语种常常只有几万,更小的只有几千。

从六百万到几千,中间跨了三个数量级。

能力上限跟这个数量级差距直接相关。

这个数据是公开可查的,而且更新得很勤。任何人花五分钟就能查到自家目标语种的条目数,跟英语和跟同区域其他语言比一比,就能对这门语言在模型里的分量有个量级上的判断,这比读任何分析文章都直接。

把这个数字当成第一个输入变量,它决定的是能力上限,不是当前表现。

百科条目数只是一个代理指标,它不等于模型实际用到的语料量。但它是唯一公开、逐语言、逐年可比的量级数据,而且跟其他语料来源的规模高度相关。用它看数量级足够可靠,用它比较相邻两门语言的细微差别就没什么意义了。

采样平滑能补偿一部分,补不掉数量级

训练时不会按语料的原始比例采样。

否则英语会压倒一切,小语种几乎学不到东西。

做法是对采样概率做平滑,抬高小语种的权重。

平滑确实缓解了不均衡,让小语种也能被学到。

但它改变的是相对比例,不是绝对信息量。

语料里没有的东西,怎么采样都变不出来。

这条区分很重要,因为它决定了预期该定在哪。平滑之后小语种不再被完全忽略,所以覆盖是真实的;但语料本身的稀薄决定了它学到的模式更粗,所以能力仍然有明显的天花板。覆盖是真的,能力对等是假的。

知道这一点,就不会因为覆盖了七十多种语言就以为所有语言待遇相同。

平滑这件事还有个连带效应:它会让某些中等资源的语言表现好于预期。那些语料量不算大但结构上跟高资源语言接近的语种,能同时吃到平滑带来的权重和迁移带来的能力,实际表现常常超过按语料量的排序,这也是为什么两个变量要一起看。

怎么自己估自家语种的受益幅度

两个输入:语料规模的量级,以及语序类型跟英语的距离。

语料量级查百科条目数就行,看数量级不看精确值。

语序类型查基本语序和修饰语位置,两项就够。

两项都好的语种,受益幅度大,可以早调策略。

两项都差的语种,受益幅度小,老办法继续用。

一好一差的,按季度观察,别一次性大改。

这套估算的精度当然有限,但它比拍脑袋和听传闻好得多。更重要的是它给出的是一个可以被数据修正的假设:估完之后按后面讲的实测方法验一遍,验出来的结果可以反过来校准估算,两三个季度之后你对自家语种的判断就相当可靠了。

估算的目的不是得出一个精确数字,是决定策略调整的力度和节奏。

估算的时候还有一个可选的第三变量,就是这门语言有没有大量的双语网页。双语网页多的语言,在共享表示上有额外的对齐信号,迁移效果会好一些。这个变量不好量化,所以不建议放进主判据,只在两个主变量打平时用来破局。

这张两变量的表具体怎么用

横轴放语料量级,分高中低三档。

纵轴放语序距离,分近中远三档。

九个格子里,左上角那几格调策略最积极。

右下角那几格保持现状,继续做词面覆盖。

中间那几格分品类试,先在一两个品类上验。

这张表还能拿来排多语种的投入顺序。

用它排顺序的时候要跟成本那一侧的账合起来看。小语种优先级该按什么算那篇算的是语言层的投入成本,这张表算的是外部能力带来的增益,两笔账方向不同,合起来才是完整的排序依据。

表格自己画一次就能长期用,语料数字每年更新一遍,语序那一列永远不变。

这张表在跟团队沟通时特别好用。因为它把一个抽象的技术话题变成了两个可查的数字和一个格子,讨论就从这次更新到底有多重要变成了我们的语种落在哪一格,后者是可以查证的具体问题。抽象讨论最容易空转,具体格子最容易达成一致。

长尾问句的价值为什么在这一步之后上升?

以前小语种长尾问句接不住的原因

问句型查询里有大量的功能词和句法结构。

词面匹配对这类查询效果很差,因为可匹配的实词少。

英语市场靠同义词表和句式规则弥补了一部分。

小语种没有那么完整的词表,弥补不了。

结果是小语种的长尾问句一直是低效流量。

很多团队因此得出结论:小语种不用写问句型内容。

这个结论在旧机制下是对的,投入产出确实不划算。小语种关键词工具返回的零是数据缺口还是需求缺口那篇讲过一个相关的现象:这类问句在工具里几乎全是零,因为搜索量分散,看起来更像没需求。

旧结论的前提变了,所以结论也该重新算一遍。

问句型查询在小语种上还有一个统计上的困难:同一个意图的问法非常分散,十个人能问出八种说法。这让每一种说法的搜索量都极低,在任何工具里都趋近于零,于是整个类别在选题阶段就被过滤掉了。这是个典型的统计口径造成的盲区。

现在该写成完整的问句形态

模型读整句,所以完整问句能被理解了。

这意味着写成完整问句的标题和小标题有了新的价值。

不需要把问句压缩成几个名词的堆叠。

压缩反而会丢掉句法线索,让理解变难。

这跟站内一直坚持的写法正好对上:小标题写成带问号的问句。

之前这么写是为了可读性,现在它还多了一层检索价值。

写完整问句还有个操作细节:问句要贴着用户真实的问法写,不要写成书面化的疑问句。用户打进搜索框的问法通常更口语、更省略,而书面化的问句在语料里的出现方式跟口语问句差别不小,模型见到的形态也不同。

问句怎么收集是另一件事,站内搜索日志和客服记录是最好的两个来源。

从压缩名词堆回到完整问句,有个细节要注意:问号本身不影响检索,影响的是问句的完整结构。所以关键不是加个问号,是把疑问词、功能词、以及被省略的成分都补回来,让它成为一个语法完整的句子。只加问号不补成分,等于什么都没改。

常见问题这类模块的收益变化

常见问题模块本来就是问句加答案的结构。

它在旧机制下的收益主要来自可读性和用户信任。

现在它多了一层检索侧的价值。

每一条问答都是一个完整句子对,正好是模型擅长处理的形态。

所以小语种站的常见问题模块值得从敷衍变成认真写。

写认真的标准是每条答案能独立成立,不依赖上下文。

意图这一层的变化也要跟上。一页一意图还是一页多意图那篇讲的聚焦原则在这里更重要了,因为模型能读出整句的意思,一个页面里塞多个不相关的问题会让主题信号变模糊,而不是像以前那样单纯多接几个词。

常见问题这块是小语种站里改造成本最低、收益变化最明显的一处。

常见问题模块在小语种上还有个额外的用处,它是收集真实问法最快的反馈渠道。上线之后看哪几条问答带来了展现,就知道哪种问法接近用户的真实说法,这个信号可以反过来指导下一批内容的写法,形成一个闭环,比一次性猜对更可靠。

功能词还能不能当停用词删?

只塞名词的标题习惯要退休

旧习惯是标题里只留实词,把介词助词都省掉。

这么做的理由是节省有限的字符预算给关键词。

在词面匹配的机制下,这个取舍是合理的。

现在功能词承担的语法关系会被读进去。

省掉它们,句子的结构关系就丢了。

标题变成一串名词,模型读到的意思反而变模糊。

这个转变对小语种的影响比对英语大。英语的名词堆叠本身就是常见表达,读起来不算异常;很多小语种的名词堆叠是不合语法的,母语者一眼看出这是机器生成的东西,用户体验和理解两头都吃亏。

标题该恢复成一个能读通的短句,字符预算不够就砍掉次要成分,不要砍掉连接结构的那几个词。

介词和助词承担的意思被读进去了

很多商业意图恰恰藏在功能词里。

用于某种场景、适合某类人群、不含某种成分。

这几类表达的关键信息全在介词和否定词上。

删掉之后,用于和不含变成了同一句话。

模型现在能区分这两者,前提是你把词留着。

否定词是最不能删的那一类,它会把意思反过来。

保哥接过一个做瑜伽与健身器材的客户,越南语站的商品标题按老规矩把介词全省了,结果适合初学者和适合进阶两类产品的标题几乎一样,用户点进来发现不对就走,等到把介词加回去,两类页面的意图才分得开。

做一遍标题体检,专门找那些因为省略功能词而意思变模糊的标题,通常能找出不少。

否定词这一类还有个更隐蔽的形态:表示范围限定的词。仅限、只适用于、除某种情况外,这几类表达删掉之后,页面承诺的范围就从有限变成了无限,用户点进来发现不符会立刻走。这类词在合规敏感的品类里删掉甚至会带来实际风险。

哪些语言的功能词最不能删

孤立语最不能删,因为它没有形态标记。

越南语、泰语的语法关系全靠虚词和语序表达。

虚词删掉,关系就没有任何其他线索能补。

越南语的音节分写让这个问题更容易被忽略,因为虚词看起来只是又一段字符。

屈折语的容忍度稍高,因为格尾还带着一部分信息。

但格尾也只覆盖名词性成分,动词关系仍然要靠虚词。

黏着语的情况介于两者之间。土耳其语把关系粘在词尾的做法,让它对虚词的依赖比孤立语低,但后缀本身也不能随便截断,截断带来的损失跟删虚词是同一类。

按语言类型定一条最小保留清单,写进标题规范里,比每次靠写作者判断可靠。

完全匹配和词形变体的策略该怎么调?

完全匹配的堆叠收益继续下降

把关键词原样重复多次的做法收益一直在降。

模型读整句之后,重复带来的额外信号更少了。

它能识别出这几处说的是同一件事。

所以堆叠的边际收益趋近于零。

而堆叠带来的可读性损失是实实在在的。

这个方向上的判断很明确,堆叠该停。

要注意的是停堆叠不等于不写核心词。核心词该出现的位置仍然要出现,标题、首段、小标题这几处一次都不能少,变化的只是重复次数带来的额外收益消失了。把停堆叠误读成核心词可以不写,是另一个方向的过度反应。

堆叠这件事在小语种站上还有个具体形态:把同一个词的几种形态并排写在标题里,这在以前是变体覆盖的手段,现在读起来只是重复。

堆叠收益下降之后,那部分空出来的字符预算该往哪投也是个问题。比较稳妥的用法是放场景词和限定词,也就是那些能把意图收窄的成分。它们既提升了理解侧的清晰度,也让标题在结果页里对用户更有辨识度,两头都不亏。

但低资源语言下降得比英语慢

这一条是本篇最反直觉的实务判断。

模型在某门语言上的理解能力越弱,词面信号的权重就越高。

因为除了词面,它没有更多可靠的线索。

所以低资源语言上,完全匹配的作用衰减得更慢。

这意味着不同语种的策略调整速度应该不一样。

高资源语种可以快调,低资源语种要慢调。

一刀切地全语种同步改,是这一波里最容易犯的错。英语站的经验拿过来直接执行,会在低资源语种上过早放弃仍然有效的词面覆盖,那部分流量的损失是可以避免的。零搜索量关键词到底有没有用那篇的思路在这里也适用:先验证再决定砍不砍。

调整的节奏差异要写进各语种的执行方案,不能靠一份统一的指引。

词形变体覆盖优先级下调但不能取消

模型能归并一部分词形变体,这是真的。

子词切分让它有机会认出同一个词干的不同形态。

所以逐个铺变体页面的必要性下降了。

但归并能力在低资源语言上明显更差。

而低资源语言里正好有一批形态最复杂的。

所以这件事的优先级可以下调,但不能取消。

下调的具体做法是分层:核心品类词的主要形态继续覆盖,长尾词的形态覆盖可以放手交给模型。这样既省下了大部分工作量,又保住了最重要那批词的确定性,比全做或者全不做都合理。

判断哪些词属于核心那一层,用营收贡献排序,前两成的词继续人工覆盖。

还有一个判断哪些形态必须人工覆盖的实用办法:看站内搜索日志里用户实际打了哪些形态。日志里高频出现的形态就是必须覆盖的,从来没出现过的形态可以放手。这比按语法规则穷举所有形态省事得多,也更贴合真实需求分布。

按语种分档的策略表怎么写

第一档是语料充足、语序接近的语种,激进调整。

停堆叠、写完整问句、变体覆盖只留核心词。

第二档是一好一差的语种,分品类试点。

选两三个品类改,跟未改的品类对照看数据。

第三档是语料稀薄、语序差异大的语种,保持现状。

只做一件事:把标题里删掉的功能词加回去。

第三档只改功能词这一条是有讲究的:加回功能词几乎没有成本也没有风险,它同时改善可读性和理解,是任何档位都该做的动作。而停堆叠、砍变体这些动作有明确的机会成本,在能力弱的语种上不该提前做。

三档的划分每年复核一次,因为语料在长、模型在换,档位是会变的。

怎么自己验一遍,而不是听别人说?

三种问法的对照实验怎么设计

取同一个意图,写成三种问法。

第一种是关键词式,几个名词堆在一起。

第二种是口语问句式,一句完整的自然问法。

第三种是带否定或者介词的复杂式。

三种问法在目标语市场各查一遍,记录结果。

看的是自家页面在哪种问法上有位置,哪种没有。

这个设计的关键是三种问法必须指向同一个意图,否则比较就没有意义。写完三条之后自己读一遍,确认如果这三个问题分别来问你,你会给出同一个答案,这样才算对照组成立。每个品类取三到五组,一个语种二十条查询就够跑起来。

这套实验的成本是一个人半天,产出的是自家语种的真实分档依据,比任何外部数据都可靠。

实验设计上还有一个容易忽略的对照项:把竞品也纳入观察。同一组查询里,如果三种问法上的赢家都换成了同一批站点,那说明这类问法上的偏好确实变了;如果赢家各不相同,那更可能是随机波动。加上这一列几乎不增加成本,但结论的可靠性提升明显。

要记录什么,多久看一次

记录四项:查询串、问法类型、自家排名位置、结果页里的赢家类型。

第四项最有价值,它告诉你引擎在这类问法上偏好什么内容形态。

频率是每季度一次,不要更频繁。

因为要观察的是能力层面的变化,那是慢变量。

连续四个季度的记录,才能看出趋势方向。

单次结果只能当快照,不能当结论。

记录的时候把语种也当成一个维度存起来。多语种一起记的好处是能横向对比,比如同一个品类的同一种问法,在越南语上自家页面有位置而在匈牙利语上没有,这个差异本身就是分档判断的证据,比单看一个语种的绝对表现信息量大得多。

这类实验属于第一手数据,攒够几个季度之后,它比任何行业分析都值得信。

三条当年做错的事

第一条是看到覆盖七十多种语言就砍了词表预算。

结果低资源语种那一路的排名在两个季度后掉下来。

原因就是那些语言上词面信号仍然在起主要作用。

第二条是把英语站的写长句打法直接搬到自由语序语言。

长句在那些语言里的歧义更大,效果不如中等长度的清晰句。

第三条是拿覆盖多语言当理由,推迟了语言标注这一层的工作。

第三条错得最离谱。理解能力跟站点架构是两个完全不同的层,模型能读懂页面的意思,不等于它知道这个页面该给哪个市场的用户看。多语言站的语言标注该怎么落地那篇讲的是架构层,那部分工作一点都没减少。

三条错误的共同点是把一次理解层的进步当成了对其他层的免除,这是最该防的一类误读。

这三条错误还有个共同的时间特征:它们造成的损失都要滞后一到两个季度才显现。所以纠正的机会窗口很窄,等到数据难看再回头查,中间已经积累了不少沉没成本。防这类错误的最好办法是任何大幅度的策略调整都先在两三个品类上试点,别整站同时改。

哪些事一个字都没变?

抓取、收录、编码、字形集全部原样

抓取和收录的机制跟这件事无关。

编码的规范化问题原样存在,一点没变。

字形集拖首屏的问题原样存在。

从右往左的布局问题原样存在。

本地字符域名和路径的编码问题原样存在。

这些属于技术层,理解层的进步不会碰到它们。

把这一条说清楚有实际意义:技术层的欠账会让理解层的进步用不上。页面进不了索引,理解能力再强也没有对象;首屏太慢用户跑了,被理解得再准也没有转化。理解层的收益要靠技术层的完好来兑现。

技术层的检查清单一条都不能省,这件事对它没有任何减负作用。

技术层这条还有一个具体的提醒:不要因为理解能力提升了就放松对页面渲染的要求。模型读的是抓取到的文本,抓不到的部分它一个字都读不到。渲染依赖脚本、关键内容延迟加载这类问题,在理解能力再强的情况下也只会得到一个空页面。

架构层跟理解层是两件事

架构层管的是哪个版本给哪个市场看。

理解层管的是这个版本的内容说了什么。

两者互不替代,也互不补偿。

架构错了,正确的内容会被送给错误的用户。

理解层帮不上这个忙,它不做市场分配。

所以语言标注、地区定向、域名结构这一套照旧要做。

这两层容易被混淆,是因为它们都带语言这个词。但语言标注解决的是同一门语言的多个地区版本该怎么区分、不同语言版本之间怎么互指,这是关系问题;理解层解决的是一段文本的意思,这是内容问题。同一个词在两个市场问的不是一件事那篇讲的意图分叉,恰恰是理解层无法替架构层解决的那类问题。

把两层的职责在方案文档里写清楚,能挡住不少想拿新技术抵消旧工作量的提议。

再补一个区分两层的判断办法:问一句这个问题换成英语站还存在吗。如果换成英语站也存在,那多半是架构层或技术层的问题,跟语言理解无关;只有在换成英语站就不成立的那些问题上,理解能力的差异才是主要变量。这条判据跟本栏目的选题边界用的是同一个逻辑。

下一代模型的方向已经指出来了

就在这次铺开的前一个月,一项新的研究给出了下一步。

思路是把训练语料从百科换成规模大得多的网页抓取语料。

覆盖一百种语言,而且明确针对低资源语言做优化。

这条路线的存在本身就验证了语料量决定上限这个判断。

如果语料不是瓶颈,就不会有人往这个方向使劲。

所以按语料规模给语种分档这个方法,短期内不会失效。

对小语种SEO来说,这个方向意味着现在受益小的那批语种,未来会补上来。补上来的时候,第三档的策略就该往第二档移,所以那张分档表要留着,每年拿出来重排一次。机器翻译直接发布的质量红线那篇讲的语料量决定质量,跟这里是同一个规律在另一个环节的表现。

能力会随语料增长而提升,这是好消息;但提升的顺序仍然是高资源语言先、低资源语言后,这个顺序短期内不会改。

常见问题解答

覆盖七十多种语言之后,小语种关键词研究还要不要做

要做,而且在低资源语种上比以前更值得做。理由是理解能力的提升在各语言上不均匀,语料稀薄的语言上词面信号仍然占主要权重,关键词表在那里的作用没有下降。真正变化的是关键词研究的产出该怎么用:以前是把所有词形变体都铺成页面或者写进标题,现在核心词的主要形态继续覆盖,长尾形态可以交给模型归并。也就是说工作量在减少,但研究本身的必要性没有减少。判断自家语种能减多少,看语料量级和语序类型这两个变量,估完之后用三种问法的对照实验验一遍。最该避免的做法是看到覆盖多语言的消息就整块砍掉词表预算,这在语料稀薄的语种上会直接损失流量,而损失要等两个季度才显现,那时候已经很难归因了。

为什么用拉丁字母的语言不一定更受益

因为决定跨语言迁移强弱的主要变量不是字母表重叠度,是词序类型的相似度。实测研究把这两个变量分开检验过,结论是语序类型的相关性明显更强,而共用多少字符串的解释力有限。直观的解释是这样:模型学到的是语言的结构规律,比如修饰语放在中心词前还是后、语法关系靠词序还是靠形态标记。这些规律跟用什么字母写完全无关。两门语言即使字母表完全不同,只要结构相似,模型就能把在一门语言上学到的结构知识用到另一门上;反过来,字母表相同但结构差异大的两门语言,能借的东西反而少。所以判断自家语种受益幅度的时候,第一件事是查它的基本语序,而不是看它用什么文字。

标题里的介词和助词到底要不要留

要留,尤其是承载意图差别的那些。判断标准很简单:把这个词删掉,句子的意思会不会变模糊或者变反。适合初学者里的适合、不含某种成分里的不含、用于某种场景里的用于,这几类删掉之后意图就丢了,必须留。纯粹的语法性虚词,删了不影响意思的,可以按字符预算取舍。孤立语的容忍度最低,因为它没有形态标记可以补偿虚词的缺失。屈折语稍好,因为格尾还带着一部分关系信息,但动词相关的关系仍然靠虚词。实际操作上建议做一次标题体检,专门找那些因为省略虚词而意思变模糊的标题,改回来的成本很低,收益是意图分得更清。顺便说一句,加回虚词几乎没有风险,这是所有语种都该做的动作,不分档位。

自由语序的语言该写长句还是短句

写结构清晰的中等长度句子,不要一味写长。英语站流行的写长句自然表达的建议,前提是英语的语序固定,长句的成分关系明确。芬兰语、匈牙利语这类语序相对自由的语言,同一句话有多种合法排列,句子越长,成分之间的关系就有越多种可能的解读,模型确定关系的难度反而上升。实际的做法是控制单句长度,一句只表达一层关系,需要表达多层就拆成两句。这跟站内一直坚持的短段落原则方向一致,只是理由不同:短段落是为了移动端可读性,这里是为了减少结构歧义。另外这类语言的格尾本身就承载了大量关系信息,写作时保持格尾正确比把句子写长重要得多,如果只能顾一头,顾形态那一头。

怎么判断自家语种属于哪一档

查两个数就够。第一个是这门语言的百科条目数,看数量级:几百万是高,几十万是中,几万或者更少是低。第二个是它的基本语序跟英语的距离:主谓宾且修饰语位置接近的算近,主宾谓的算远,语序自由的算中。两个数落在九宫格的哪一格,就是哪一档。两项都好的第一档可以激进调整策略,两项都差的第三档保持现状只加回功能词,一好一差的第二档选两三个品类做试点。这个划分的精度有限,所以务必配上三种问法的对照实验来校准,实验数据跟估算不一致的时候信实验。还有一点:档位是会变的,语料在长、模型在换,建议每年重排一次,别把一次划分当永久结论。

常见问题模块真的值得认真写吗

值得,它是小语种站里改造成本最低而收益变化最明显的一处。原因是这个模块天然就是完整问句加完整答案的结构,正好是模型最擅长处理的形态,而以前它在小语种上的检索价值很低,因为词面匹配处理不了问句。写认真的标准有三条:问题要贴着用户真实的问法写,不要写成书面化的疑问句;每条答案要能独立成立,不依赖上下文,因为它可能被单独取用;一个页面里的问题要围绕同一个意图,别把不相关的问题堆在一起稀释主题。收集问题的来源优先用站内搜索日志和客服记录,那里的问法是真实的;关键词工具在小语种的问句类查询上基本给不出数据,不用指望它。改造顺序建议从营收占比最高的品类开始。

这件事对结构化数据和内链有什么影响

直接影响很小,间接影响有两处。结构化数据这一层的规则没有变化,该标的字段照标,格式要求照旧,理解能力的提升不会替你把缺失的标注补上。内链这一层有一个值得注意的变化:锚文本从堆核心词转向写自然短语,收益结构变了。以前锚文本里塞完全匹配的关键词有明确收益,现在模型能从上下文理解链接指向什么,自然的锚文本不再吃亏,而且可读性更好。不过这个转变的节奏同样要按语种分档,低资源语种上锚文本的词面信号衰减得慢,不必急着全改。另外提醒一点,锚文本在屈折语里会跟着格变形,这跟这次的更新无关,是一直存在的问题,处理方式也没变:优先让锚文本里的核心词保持词典原形,形态实在不通顺就调整句子结构而不是牺牲形态。

权威参考资料

分享到
标签
版权声明

本文标题:《多语言模型铺到七十多种语言那天,受益最多的不是字母最像英语的那几门》

本文链接:https://zhangwenbao.com/multilingual-bert-seventy-languages-minor-language-seo-watershed.html

版权声明:本文原创,转载与引用请注明作者与原文链接。许可协议: CC BY 4.0

继续阅读
发表评论
分享到微信 或在下方手动填写
支持 Ctrl + Enter 提交