将 nlp.pipe() 与 spaCy 的预分段和预标记化文本结合使用

2024-01-09

我正在尝试标记和解析已经分成句子并且已经被标记化的文本。举个例子:

sents = [['I', 'like', 'cookies', '.'], ['Do', 'you', '?']]

处理批量文本的最快方法是.pipe()。但是,我不清楚如何将其与预标记和预分段的文本一起使用。性能是这里的关键。我尝试了以下操作,但这引发了错误

docs = [nlp.tokenizer.tokens_from_list(sentence) for sentence in sents]
nlp.tagger(docs)
nlp.parser(docs)

Trace:

Traceback (most recent call last):
  File "C:\Python\Python37\Lib\multiprocessing\pool.py", line 121, in worker
    result = (True, func(*args, **kwds))
  File "C:\Python\projects\PreDicT\predicting-wte\build_id_dictionary.py", line 204, in process_batch
    self.nlp.tagger(docs)
  File "pipes.pyx", line 377, in spacy.pipeline.pipes.Tagger.__call__
  File "pipes.pyx", line 396, in spacy.pipeline.pipes.Tagger.predict
  File "C:\Users\bmvroy\.virtualenvs\predicting-wte-YKqW76ba\lib\site-packages\thinc\neural\_classes\model.py", line 169, in __call__
    return self.predict(x)
  File "C:\Users\bmvroy\.virtualenvs\predicting-wte-YKqW76ba\lib\site-packages\thinc\neural\_classes\feed_forward.py", line 40, in predict
    X = layer(X)
  File "C:\Users\bmvroy\.virtualenvs\predicting-wte-YKqW76ba\lib\site-packages\thinc\neural\_classes\model.py", line 169, in __call__
    return self.predict(x)
  File "C:\Users\bmvroy\.virtualenvs\predicting-wte-YKqW76ba\lib\site-packages\thinc\neural\_classes\model.py", line 133, in predict
    y, _ = self.begin_update(X, drop=None)
  File "C:\Users\bmvroy\.virtualenvs\predicting-wte-YKqW76ba\lib\site-packages\thinc\neural\_classes\feature_extracter.py", line 14, in begin_update
    features = [self._get_feats(doc) for doc in docs]
  File "C:\Users\bmvroy\.virtualenvs\predicting-wte-YKqW76ba\lib\site-packages\thinc\neural\_classes\feature_extracter.py", line 14, in <listcomp>
    features = [self._get_feats(doc) for doc in docs]
  File "C:\Users\bmvroy\.virtualenvs\predicting-wte-YKqW76ba\lib\site-packages\thinc\neural\_classes\feature_extracter.py", line 21, in _get_feats
    arr = doc.doc.to_array(self.attrs)[doc.start : doc.end]
AttributeError: 'list' object has no attribute 'doc'

只需将管道中的默认分词器替换为nlp.tokenizer.tokens_from_list而不是单独调用它:

import spacy
nlp = spacy.load('en')
nlp.tokenizer = nlp.tokenizer.tokens_from_list

for doc in nlp.pipe([['I', 'like', 'cookies', '.'], ['Do', 'you', '?']]):
    for token in doc:
        print(token, token.pos_)

Output:

I PRON
like VERB
cookies NOUN
. PUNCT
Do VERB
you PRON
? PUNCT
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 nlp.pipe() 与 spaCy 的预分段和预标记化文本结合使用 的相关文章

  • pydev 断点不起作用

    我正在使用 python 2 7 2 sqlalchemy 0 7 unittest eclipse 3 7 2 和 pydev 2 4 开发一个项目 我在 python 文件 单元测 试文件 中设置断点 但它们被完全忽略 之前 在某些时候
  • 生成 Flask 中使用的签名会话 cookie 值

    我正在用另一个需要将项目注入会话的 Flask 服务器代理 Flask 服务器 两台服务器具有相同的密钥 因此加密签名将相同 当使用 Flask 和会话时 http 响应包含一个 Set Cookie 标头session text 其中 t
  • Keras model.summary() 结果 - 了解参数数量

    我有一个简单的神经网络模型 用于使用 Keras Theano 后端 从用 python 编写的 28x28px 图像中检测手写数字 model0 Sequential number of epochs to train for nb ep
  • 在 Python 中同时插入行

    我正在尝试对我的代码进行矢量化 但遇到了障碍 我有 nxd x 值数组 x1 xn 其中每一行 x1 有很多点 x11 x1d nxd y 值数组 y1 y2 y3 其中每一行 y1 有很多点 y11 y1d x 值的 nx1 数组 x 1
  • 当语料库有100亿个独特的DNA序列时,如何使用BK树实现快速模糊搜索引擎?

    我正在尝试使用BK tree https news ycombinator com item id 14022424python 中的数据结构 用于存储约 100 亿个条目的语料库 1e10 以实现快速模糊搜索引擎 一旦我添加超过 1000
  • 如何在 Python 2.4 CSV 阅读器中禁用引用?

    我正在编写一个 Python 实用程序 需要解析一个我无法控制的大型且定期更新的 CSV 文件 该实用程序必须在仅提供 Python 2 4 的服务器上运行 CSV 文件根本不引用字段值 但Python 2 4版本的csv库 http ww
  • 如何将 UPX 与 pyinstaller 一起使用?

    如何将 UPX 与 pyinstaller 一起使用 我正在关注文档 我已经下载了UPX 我的文件如下所示 import csv import selenium import pandas print Hello 然后我运行 pyinsta
  • TCP打孔问题

    我尝试使用 Python 3 中概述的原则为防火墙编写一个基本的 TCP 打孔器本文 http www bford info pub net p2pnat index html 不过 我无法连接任何东西 这是代码 usr bin pytho
  • python中嵌套字典值的总和

    我有一本这样的字典 data 11L a 2 b 1 a 2 b 3 22L a 3 b 2 a 2 b 5 a 4 b 2 a 1 b 5 a 1 b 0 33L a 1 b 2 a 3 b 5 a 5 b 2 a 1 b 3 a 1 b
  • 使用 NumPy 的 Mittag-Leffler 函数的不稳定性

    在尝试重现时Wolfram MathWorld 上的情节 http mathworld wolfram com Mittag LefflerFunction html 并试图帮助这个问题 https stackoverflow com qu
  • 如何从 Python 3.5 降级到 3.4

    我想安装 kivy 链接在这里 https kivy org docs installation installation windows html install win dist 用于项目 但是 当尝试使用 pip 安装它所依赖的包时
  • 是否可以在 Jupyter 笔记本中显示控制台?

    我希望能够使用 Jupyter 笔记本中的控制台在环境中进行摆弄 添加额外的单元格意味着我总是必须滚动到最底部或在我想要 类似控制台 文本字段的任何地方创建新单元格 是否可以有一个永久的控制台窗口 例如在窗口底部 Thanks 您可以启动连
  • 如何使直方图列的宽度都相同

    我在操作直方图时遇到了一些麻烦 我有一个包含两列的 df 我将它们绘制为堆叠直方图 我将它们放入特定的垃圾箱中 请参阅下面的代码 但我想在最后制作一个大垃圾箱 4000 10000 但是 默认情况下 大垃圾箱的列宽很大 有没有办法让这个大垃
  • 进行异步调用时,“yield”在龙卷风中如何工作?

    最近我在学习龙卷风简介 我遇到了以下代码 class IndexHandler tornado web RequestHandler tornado web asynchronous tornado gen engine def get s
  • 导入我自己的模块时出现“ImportError:没有名为...的模块”

    我正在尝试导入模块 但不断收到导入错误 在 PortfolioStatus py 文件中 我有以下代码 它从 share data py 模块导入 share data 类 from Shares share data import sha
  • 尝试将 cuda 与 pytorch 一起使用时出现运行时错误 999

    我为我的 Geforce 2080 ti 安装了 Cuda 10 1 和最新的 Nvidia 驱动程序 我尝试运行一个基本脚本来测试 pytorch 是否正常工作 但出现以下错误 RuntimeError cuda runtime erro
  • Python itertools groupby 中令人不安的奇怪行为/错误?

    我在用itertools groupby解析一个短的制表符分隔的文本文件 文本文件有几列 我想做的就是对具有特定值的所有条目进行分组x在特定的列中 下面的代码对名为的列执行此操作name2 寻找变量中的值x 我尝试使用以下方法来做到这一点c
  • 如何从 IDLE 命令行运行 Python 脚本?

    在 bash shell 中 我可以使用 bash 或 source 手动调用脚本 我可以在 Python IDLE 的交互式 shell 中做类似的事情吗 我知道我可以转到文件 gt gt 打开模块 然后在单独的窗口中运行它 但这很麻烦
  • Python 对列表中的值求和(如果它存在于另一个列表中)

    我有一个列表和一组 a list 1 2 2 1 1 1 b list 1 2 我正在寻找对应 b list 中的项目并将它们从 a list 中的值相加 以便输出为 1 3 2 1 我尝试过的 sum 0 for i in a list
  • 将 .parquet 编码为 io.Bytes

    目标 将 Parquet 文件上传到 MinIO 这需要将文件转换为字节 我已经能够做到这一点了 csv json and txt bytes data to csv encode utf 8 bytes json dumps self d

随机推荐

  • SwiftUI 卡翻转有两个视图

    我正在尝试在两个 SwiftUI 视图之间创建卡片翻转效果 单击原始视图时 它会像翻转卡片一样在 Y 轴上 3D 旋转 并且第二个视图应在 90 度后开始可见 Using rotation3DEffect 我可以轻松旋转视图 问题是anim
  • 软件包升级后,Pip 在 Ubuntu 14.4 上损坏

    我试图在 EC2 ubuntu 14 4 实例上升级 python requests 包 执行此操作后 我运行并没有抛出错误 pip freeze and got ubuntu ip 172 31 28 196 pip freeze Tra
  • 将 ExecutorService 与多线程版本的合并排序结合使用

    我正在解决一个家庭作业问题 我必须创建一个多线程版本的合并排序 我能够实现它 但我无法停止线程的创建 我研究过使用 ExecutorService 来限制线程的创建 但我不知道如何在当前代码中实现它 这是我当前的多线程合并排序 我们需要实施
  • 将 SQL Server 2000 安全地暴露在 Internet 上

    我有一个 SQL Server 2000 机器 我想将其放在 Internet 上 以便开发人员无需 VPN 访问即可进行远程连接 最安全的方法是什么 这可能是暂时的 例如每隔一段时间 但这绝对是必要的 Thanks Rob 简短的回答 不
  • 将长字符串分割成多个字符串SQL

    所以基本上我希望将一根长绳子切成小块 但保持单词完整 因此 如果我在 JumpColumn 列中的 FoxTable 中有以下句子 棕色狐狸跳过了懒狗 然后懒狗跳过了棕色狐狸 我想在 SQL 中将其拆分为最多 20 个字符 包括空格 所以结
  • 生成网页的合理时间是多少?

    我正在开发网络应用程序 基于 Rails 3 我真的不喜欢生成页面所需的时间 根据显示的数据 它需要长达 2 5 秒甚至 4 秒 所以我只是想知道在应用程序中生成页面的平均合理时间是多少 假设您检查生成时间 例如这是 750 毫秒 然后想
  • 如何在 ef core 2 中使 contains 不区分大小写?

    我正在尝试通过搜索字符串过滤列表 它说在蓝色注释的文档中 https learn microsoft com en us aspnet core data ef mvc sort filter page that IQueryable 为您
  • 如何在 Pytorch 中展平“nn.Sequential”中的输入

    如何展平内部的输入nn Sequential Model nn Sequential x view x shape 0 1 nn Linear 784 256 nn ReLU nn Linear 256 128 nn ReLU nn Lin
  • eclipse 插件 (gef) 和图形可视化 (zest)

    我正在编写一个绘制有限状态系统的 eclipse 插件 由于它可能很大 我想附加一些现有的图形布局算法 例如分层布局 基于力的布局 来自动优化系统可视化 有没有办法集成我正在编写的插件 使用 GEF 编写 以便生成的编辑部分可以按照一些常见
  • 如何从 Scala 访问 Java 静态方法(给定该方法所在类的类型别名)

    给定类型别名type Cal java util Calendar怎样才能static getInstance方法可以访问吗 我在 Scala REPL 中尝试了以下操作 scala gt type Cal java util Calend
  • 为什么 Node.js 的运行需要 JavaScript 前端框架?

    当我们谈论 JavaScript vanilla 时 它指的是前端编程语言 它需要像 IIS Apache 或 nginx 等网络服务器来根据请求将内容传递给客户端 之后 JavaScript 在客户端浏览器上运行 但我发现的每个视频或文章
  • 如何从 vb.net 脚本打开 Solidworks、运行宏和关闭 Solidworks? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在solidworks 中运行一个VBA 宏 该宏停止工作并要求我在每次运行它时经过478 次循环迭代后重新启动Solidwork
  • Javascript ajax 将文本框文本发送到 ActionResult asp.net mvc

    Html
  • 搜索精确匹配 R 数据表

    我的问题是数据表包中的全局搜索栏 我正在尝试设置此全局搜索栏以查找完全匹配 有一些java查询基于此处的说明 搜索完全匹配并突出显示 jquery 数据表正则表达式 https stackoverflow com questions 297
  • 使用 Fabric JS 放大和缩小

    我正在使用 FabricJS 构建一个简单的图像编辑器 我几乎可以做任何我需要的事情 问题是实现缩放功能 据我所知 FabricJS 没有内置任何东西 所以我试图自己做 我在页面上放置了 2 个按钮 放大 和 缩小 单击它们分别激活 jQu
  • 如何在运行 Java 代码的 Visual Studio Code 上隐藏不需要的日志消息

    我正在使用 Visual Studio Code 编写 Java 程序 一切工作正常 除了运行代码时我总是收到不需要的消息 例如 我创建了一个非常简单且基本的Java项目 其中包含一个App java文件 在src文件夹中 默认包中 pub
  • Cloud Functions for Firebase - 从数据库触发器获取父数据

    是否有一种干净的内置方法可以直接引用数据库触发器上方节点的数据值 我知道我可以获得一个父引用 然后我可以查询该值 但如果有更简洁的方法来执行此操作 那就太好了 为了清楚起见 我想使用对象内的子节点作为触发器 当它发生时直接获取父对象的值 以
  • WPF 应用程序中的 SendKeys.Send 方法

    我正在尝试发送浏览器控件的击键 Ctrl t 但 SendKeys Send 在 WPF 应用程序中显示错误 我的问题是 我可以使用SendKeys Send WPF 应用程序中的方法 有没有其他方法可以发送自动击键 SendKeys 是
  • 迭代器和指针有什么区别[重复]

    这个问题在这里已经有答案了 所以我编写了这个程序并且它可以工作 但是我被告知我需要使用迭代器在我编写的函数中移动 我目前正在使用指针 但我认为它们基本上是相同的东西 如果有区别 迭代器是如何使用的 更新 所以我的理解是 迭代器与指针不同 即
  • 将 nlp.pipe() 与 spaCy 的预分段和预标记化文本结合使用

    我正在尝试标记和解析已经分成句子并且已经被标记化的文本 举个例子 sents I like cookies Do you 处理批量文本的最快方法是 pipe 但是 我不清楚如何将其与预标记和预分段的文本一起使用 性能是这里的关键 我尝试了以