玛丽·海恩斯最近接受了约翰·穆勒的播客采访。
我特别喜欢关于BERT和它在内容质量评估方面的潜力的谈话。
M 26:40 – ..谷歌现在使用BERT来更好地理解内容是否好”
” j27:00 -…不是要理解内容的质量而是要理解这篇内容是关于什么的,这句话是关于什么的,这个问题是关于什么的”
谷歌多次表示,它有助于更好地理解自然语言。对于机器来说,像人类那样进行内容质量评估仍然是相当复杂的。
” M 28:54 -。谷歌是否会将其视为负面信息” “哦,这个页面看起来像是被搜索出来的,这些关键词是谷歌的” “这会对页面造成损害”
“j29:41 -…他们只是在一个页面上添加了成千上万个相同关键词的变体,然后我们的关键字填充算法可能会跳出来,说实际上这看起来像关键字填充,然后我们的关键字填充算法可能会跳出来……”
另一方面,关键字填充是机器更容易发现的东西。检查的一种方法是看文本是否以一种荒谬的方式书写。
“J 29:41 -…但我想关于伯特的一件事情是可以做到的,因为许多这些算法是开源的,有很多的文档和周围的参考材料,动手尝试,并采取一些SEO文本和把它扔进一个算法和看到的主要内容有退出,实体能被正确并不是一个对一个相同的我们会怎么做,因为我很确定我们的算法是基于类似的想法但可能调整不同的但它可以给你一些见解是用这样一种方式,它实际上是太令人困惑的一个系统来理解什么是他们写。”
这是让我兴奋的部分。尝试这样做是一个很好的想法,而且正是我们在本文中要做的。
来自Moz的Britney Muller分享了一个很好的想法和Python笔记本的代码来测试它。
嗯,但这不是在某种程度上衡量“质量”吗?
关于我们如何谈论BERT应该有一个清晰的认识(它本身或没有微调它是有限的)
但是有了像(CoLA)这样的库,BERT就可以标注一个句子在语法上是否正确:https://t.co/txUud2be3H
-布兰妮·穆勒(@BritneyMuller), 2020年6月4日
我们可以在语言可接受语料库(CoLA)数据集上使用BERT精调算法对单句进行分类。
这个模型可以帮助我们确定哪些句子在语法上是正确的,哪些不是。它可以用作内容质量的几个代理之一。
这显然不是万无一失的,但可以让我们朝着正确的方向前进。
微调伯特可乐
在布兰妮的推文中链接的Colab笔记本对于非专业人士来说太先进了,所以我们要采取一个极端的捷径!
我们将使用路德维希(Ludwig)来做同样的事情,它是Uber提供的一个非常强大的、无代码的深度学习工具包。
以下是技术步骤:
获取目标页面并提取文本。
把它分成句子。
使用我们的模型来预测每个句子在语法上是否正确。
计算并报告语法正确和错误的句子
首先,让我们建立我们的预测模型。
我编写了一个简单遵循谷歌Colab笔记本的所有步骤。
复制笔记本到你的谷歌驱动器,并改变运行时类型为GPU。
您可以使用顶部的表单在您自己的文章中测试代码。您可能需要更改CSS选择器,以提取每个目标页面的相关文本。其中包含的一个用于SEL文章。
您应该能够运行所有单元格(一次运行一个),并看到实际的评估。
建立预测模型
当你将原始的笔记本和我创建的笔记本进行比较时,你会发现我们避免了编写许多高级的深度学习代码。
为了创建我们的先锋模型与路德维希,我们需要完成四个简单的步骤:
下载并解压CoLA数据集
使用适当的设置和超参数创建Ludwig模型定义
运营路德维希公司来培训这个模型
使用CoLA数据集中保留的数据评估模型
你应该能够在笔记本上遵循这些步骤。我将在这里解释我的选择和一些需要使它工作的细微差别。
谷歌Colab预装了最新的Tensorflow 2.0版本。但是路德维希需要1.15.3版本。
另一个重要的步骤是你需要设置Tensorflow的GPU版本来快速完成训练。
我们通过下面几行代码来完成:
tensorflow-gpu = = 1.15.3 ! pip安装
% tensorflow_version 1.倍
进口tensorflow特遣部队;打印(tf.__version__)
在此之后,您需要使用菜单项重启运行时:runtime > restart runtime。
再次运行表单,这行imp