问题标签 [crfsuite]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scikit-learn - 在 Keras 中使用 CRF 的 LSTM
我真的不明白如何结合 sklearn_crfsuite 和 Keras。
我必须制作一个经典的 LSTM,而不是最后一个 Activation,我使用 sklearn_crfsuite?
有人有例子吗?
谢谢,
machine-learning - 如何在 python crfsuite 中使用 Conll 2003 语料库
我已经下载了 Conll 2003 语料库(“eng.train”)。我想用它来使用 python crfsuite 训练来提取实体。但我不知道如何加载这个文件进行训练。
我找到了这个例子,但它不适用于英语。
同样在未来,我想培训 POS 或位置以外的新实体。我该如何添加这些。
还请建议如何处理多个单词。
python - CRFSuite 有多少训练数据?
嗨,我正在使用 crfsuite 训练一个 crf,其中包含一些我使用拉丁文本的示例数据。我用 O、PERSON 和 PLACE 标记了训练数据。当测试我的训练模型时,我得到的所有预测都是 O。我怀疑这是因为我没有足够的训练数据。我的训练基于 3760 字节。(我知道这是一点点!-它会使 CRF 不起作用吗?)
keras - 使用 CRF 进行多元二进制序列预测
这个问题是这个问题的延伸,它侧重于 LSTM 而不是 CRF。不幸的是,我对 CRF 没有任何经验,这就是我问这些问题的原因。
问题:
我想预测多个非独立组的二进制信号序列。我的数据集比较小(每组约 1000 条记录),所以我想在这里尝试一个 CRF 模型。
可用数据:
我有一个包含以下变量的数据集:
- 时间戳
- 团体
- 表示活动的二进制信号
group_a_activity
使用这个数据集,我想预测group_b_activity
它是 0 还是 1。
请注意,这些组被认为是互相关的,并且可以从时间戳中提取额外的特征——为简单起见,我们可以假设我们从时间戳中提取的只有 1 个特征。
到目前为止我所拥有的:
这是您可以在自己的机器上复制的数据设置。
在我们进入 CRF 部分之前,我怀疑我不能从多任务学习的角度来解决这个问题(通过一个模型预测 A 和 B 的模式),因此我将不得不预测每一个他们分别。
现在是 CRF 部分。我找到了一些相关的例子(这里是一个),但它们都倾向于根据先验序列预测单个类值。
这是我在这里使用 CRF 的尝试:
看来我确实设法让它工作,但我不确定我是否正确地接近它。我将在问题部分提出我的问题,但首先,这是使用keras_contrib
包的另一种方法:
问题:
我的主要问题是我是否正确构建了两个 CRF 模型。让我担心的是(1)没有很多关于 CRF 模型的文档,(2)CRF 主要用于预测给定序列的单个标签,(3)输入特征是嵌套的,(4)当以多任务方式使用,我不确定它是否有效。
我还有一些额外的问题:
- CRF 适合这个问题吗?
- 这两种方法(一种基于
pycrfuite
,一种基于keras_contrib
)有何不同,它们的优点/缺点是什么? - 从更一般的意义上说,将 CRF 和 LSTM 模型合二为一有什么好处(就像这里讨论的那样)
非常感谢!
python - TypeError: 'numpy.int32' object is not iterable - 使用 sklearn_crfsuite 时出错
crf.fit(X_train, y_train) 不运行并显示上述错误。此外,当我运行 labels2 = list(crf.classes_) 我得到 NoneType 对象不可迭代。之前没用过crfsuite,网上也找不到满意的资料。
需要注意的几件事:csv 文件有 NO None 类型,是一个简单的数据集,仅由数字(包括标签)组成,最后一列是标签。使用 CRF,因为它是一个多标签顺序问题。
我希望最终代码能给我 F1 分数,但我无法通过培训:/
c++ - 无法用crfsuite的C++ API编译一个非常简单的Tagger示例
我已经从源代码(https://github.com/downloads/chokkan/crfsuite/crfsuite-0.12.tar.gz)正确安装了crfsuite。但是当我尝试编译一个非常简单的代码时,似乎我错过了一些东西。
这是代码:
这是要编译的命令行:
和错误:
路径正确 ( /usr/local/lib
, /usr/local/include
)
python - sklearn-crfsuite 如何处理字符串?
我一直在关注sklearn-crfsuite
教程。
用于训练 CRF 模型的特征示例如下所示。
如何sklearn-crfsuite
将字符串转换melbourne
为浮点数,因为 CRF 的特征应该只是浮点数。文档中的任何地方都没有提到这一点。
python - 如何使用词嵌入作为 CRF (sklearn-crfsuite) 模型训练的特征
我想开发一个 NER 模型,我想在其中使用词嵌入功能来训练 CRF 模型。代码在没有词嵌入功能的情况下完美运行,但是当我将嵌入作为 CRF 训练的功能插入时,收到错误消息。这是我的代码片段的一部分:
当我想训练 CRF 模型时,我收到了以下错误消息:
TypeError: only size-1 arrays can be converted to Python scalars
谁能建议我如何使用词嵌入向量来训练 CRF 模型?
nlp - 在简历 (NER) 中标记自定义实体
我如何为自定义命名实体执行 NER。例如,如果我想确定特定单词是否是简历中的技能。如果(Java,c++)出现在我的文本中,我应该能够将它们标记为技能。我不想在自定义语料库中使用 spacy。我想创建数据集,例如单词将是我的特征,标签(技能)将是我的因变量。
处理这些问题的最佳方法是什么。
python - 我的 sklearn_crfsuite 模型没有学到任何东西
我正在尝试按照此处的教程创建注释预测模型,但我的模型没有学到任何东西。这是我的训练数据和标签的示例:
-1:word.lower()': '\nreference...n \n \n \n \n \n \n \n \n0\ntable\n1\n:\nairbrake\ncas\nmessages\n', '-1:word.istitle()': False, '-1:word.isupper()': False, '-1:postag': 'POS', '-1:postag[:2]': 'PO ', '+1:word.lower()': 'issue', '+1:word.istitle()': False, '+1:word. isupper()': True, '+1:postag': 'POS', '+1:postag[:2]': 'PO'}, {'bias': 1.0, 'word.lower()': '问题','word [-3:]':'SUE','word [-2:]':'UE','word.isupper()':真,'word.istitle()':假,' word.isdigit()':假,'postag':'POS','postag[:2]':'PO','w_emb_0':-1.220 4882,'w_emb_1':0.8920707,'w_emb_2':-3。
y_train = ['O', 'O', 'O'...'I-data-ca-s_message-type'....'B-data-ca-s_message-type']
这是模型定义和训练:
`
`
不幸的是,我的模型没有学到任何东西: