Python for SEOs的自然语言处理简介

  • Python for SEOs的自然语言处理简介已关闭评论
  • A+
所属分类:博客文章

Python for SEOs的自然语言处理简介Python for SEOs的自然语言处理简介

自然语言处理(NLP)正变得比以往任何时候都更重要的搜索引擎优化专业人员。
开始培养技能是至关重要的,这些技能将使你为我们周围发生的所有惊人变化做好准备。
希望这篇专栏文章能激励你开始!
我们将学习实用的NLP,同时从头开始构建一个简单的知识图。
由于谷歌、必应和其他搜索引擎使用知识图来编码知识并丰富搜索结果,有什么比构建一个更好的方法来了解它们呢,
具体来说,我们将从搜索引擎日志XML站点地图中自动提取有用的事实。
为了做到这一点并保持简单和快速,我们将从XML站点地图的url中提取文章标题。
我们将从标题中提取命名实体及其关系。
最后,我们将建立一个强大的知识图,并可视化最流行的关系。
在下面的示例中,关系是“启动”
Python for SEOs的自然语言处理简介
读取图形的方法是按照箭头的方向:主题“启动”对象
例如:

  • “必应发布19个跟踪地图”,很可能是“必应发布covid-19跟踪地图。”
  • 另一个是“Snapchat推出广告认证计划。”

这些事实和一千多个是自动提取和分组的!
让我们开始玩吧。
技术方案如下:

  • 我们将获取所有搜索引擎日志XML站点地图
  • 我们将解析url以从slug中提取标题
  • 我们将从标题中提取实体对
  • 我们将提取相应的关系
  • 我们将构建一个知识图,并在Colab中创建一个简单的表单,以可视化我们感兴趣的关系

正在获取所有搜索引擎日志XML站点地图

最近,我在媒体超市与eliasdabbas进行了一次富有启发性的深圳谷歌推广谈话,并了解到了他为营销人员准备的Python库:advertools。
我的一些旧的搜索引擎期刊文章不适用于更新的库版本。他给了我一个好主意。
如果我现在打印第三方库的版本,将来很容易让代码工作。
我只需要安装在失败时有效的版本。🤓
我们将下载所有的搜索引擎期刊网站地图到一个熊猫数据框架,有两行代码。
Python for SEOs的自然语言处理简介
这个软件包的一个很酷的特性是它下载了索引中所有链接的站点地图,我们得到了一个很好的数据框。
看看过滤今年的文章/页面是多么简单。我们有1550篇文章。
Python for SEOs的自然语言处理简介

从URL中提取标题

advertools库有一个函数可以在数据框中断开url,但是让我们手动来熟悉这个过程。
这里我们得到一个命名元组,ParseResult,其中包含URL组件的分解。
我们对路径感兴趣。
我们将使用一个简单的正则表达式来按/和-字符拆分它
接下来,我们可以将其转换回字符串。
#输出
slug包含一个对我们来说没有用的页面标识符。我们将用正则表达式删除。
现在我们已经测试过了,我们可以将此代码转换为函数,并在数据框中创建一个新列。
让我们创建一个名为headline的新列。
Python for SEOs的自然语言处理简介

提取命名实体

让我们来探索和形象化的实体在我们的标题语料库。
首先,我们将它们组合成一个文本文档。
Python for SEOs的自然语言处理简介
还有一些像Facebook和googledisplay Network这样的网站被遗漏了。
spaCy的开箱即用的NER并不完美,通常需要使用自定义数据进行培训以提高检测效果,但这足以说明本教程中的概念。

构建知识图

现在,我们进入激动人心的部分。
让我们从评估每个句子中单词之间的语法关系开始。
我们通过打印实体的语法依赖关系来实现这一点英文网站优化
Python for SEOs的自然语言处理简介
我们在寻找由关系联系起来的主体和客体。
我们将使用spaCy基于规则的解析器从标题中提取主题和对象。
规则可以是这样的:

提取主语/宾语及其修饰语、复合词,并提取它们之间的标点符号。

让我们首先导入我们需要的库。
建立知识图,最重要的是节点和它们之间的边。
其主要思想是通读每个句子并建立两个列表。一个是实体对,另一个是对应关系。
我们将借用数据科学家Prateek Joshi创建的两个函数。

  • 第一个,get_entities提取主实体和相关属性
  • 第二种方法,get-unu关系提取实体之间的对应关系

让我们用100个句子来测试它们,看看输出是什么样子的。我添加了len(x)>;0来跳过空行。
Python for SEOs的自然语言处理简介
很多摘录都是缺少的元素或者不是很好,但是由于我们有太多的标题,我们应该能够以任何方式提取有用的事实。
现在,让我们构建图。
下面是一些示例对。
接下来,让我们建立相应的关系。我们的假设是谓语实际上是句子中的主要动词。
接下来,让我们对关系进行排名。
Python for SEOs的自然语言处理简介
最后,让我们构建知识图。
这张图描绘了一张怪物图,虽然令人印象深刻,但并不是特别有用。
Python for SEOs的自然语言处理简介
让我们再试一次,但一次只接受一个关系。
为此,我们将创建一个函数,将关系文本作为输入传递(粗体文本)。
现在,当我运行displaygraph(“launches”)时,我得到了本文开头的图形。
下面是我绘制的一些关系图。
Python for SEOs的自然语言处理简介
Python for SEOs的自然语言处理简介
Python for SEOs的自然语言处理简介
Python for SEOs的自然语言处理简介
我用本文中的所有步骤创建了一个Colab笔记本,最后,您将发现一个包含更多关系的漂亮表单。
只需运行所有代码,单击下拉选择器并单击play按钮即可查看图形。
Python for SEOs的自然语言处理简介

森摩尔网络从2013年开始做外贸网站的SEO推广服务,到现在已经7年多了。我们已经为上千个人和企业提供外贸网站的优化推广服务,客户遍及全国各地,我们的服务深受客户好评!如果您有外贸网站需要推广,请联系我们,我们会提供专业、快速的额服务!

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
英文新闻稿写作发布服务—中级版
外贸网站Google排名优化包月套餐
100不同站点多类型外链服务
150英文目录网站提交服务Dofollow外链