gpt4 book ai didi

python - 是否可以让神经网络根据分类文档对实体进行分类?

转载 作者:行者123 更新时间:2023-12-01 08:33:28 25 4
gpt4 key购买 nike

我用独立类别标记了一个文本数据集。在 Keras 中运行 CNN 分类器时,我得到的准确率 > 90%。

我的短信是客户评论“我真的很喜欢这款手机的摄像头。”类(class)例如“手机摄像头”、“内存”等

我正在寻找的是,当分类器标记指示类别的实体时,我是否可以用其中出现的类别来标记句子。或者更具体地说:如何提取输入句子中在 Keras 中为 1、2 或更多类别选择(即分类)CNN 网络的部分?

最佳答案

我的 pipilene(一般)执行类似的任务。

我不使用 nn 来解决整个任务

首先,我不直接使用神经网络来标记单独的实体,例如“相机”、“屏幕”等。有一些可能有用的好方法,例如 pointer networks或者只是attention ,但它对我来说并不适用。
我想,这种架构不能很好地工作,因为在我的数据集中有很多噪音,也就是“我很高兴我买了这台电视”等等。大约。总体来说75%,其余的数据就不太干净了。

因此,我做了一些额外的操作:

  1. 将句子分成 block (有时它们包含所需的实体)
  2. 手动将这些 block 标记为“无用”(又名“我很高兴/很沮丧”等)和有用:“好相机”、“坏手机”等。
  3. 训练分类器来对这些数据进行分类。

有关管道的详细信息

如何“识别”实体
我只是使用正则表达式和词性标签来分割我的数据。但我使用俄语数据集,因此没有好的免费俄语语法解析器/库。如果您使用英语或其他语言(在 spacy 或 nltk 库中得到了很好的呈现),您可以使用它来解析单独的实体。此外,与俄语相比,英语语法非常严格 - 这可能会让您的任务变得更容易。
不管怎样,尝试从正则表达式和解析开始。

包含“相机”、“电池”等主题的关键字的词汇也非常有帮助。

识别实体的另一种方法是主题模型 - PLSA/LDA(gensim岩石),但在我看来很难调整,因为文本中有很多噪音。您将获得很多主题{"happy", "glad", "bought", "family", ...}等等 - 但您无论如何都可以尝试主题建模。

您还可以为每个文本创建一个包含实体标签的数据集,并用注意力训练神经网络,这样您就可以通过高度注意力来识别它,但创建这个数据集非常繁琐。

创建数据集并训练神经网络
仅当我获得了可接受的“命名实体”质量时,我才开始创建数据集 - 因为如果您稍后更改此(基础)部分,您可能会丢弃数据集并重新从头开始。

最好决定哪些标签将使用一次,然后不要更改它们 - 这是工作的关键部分。

在此类数据上训练神经网络可能是工作中最简单的部分 - 对于整个文本来说,任何好的分类器都是如此。即使不是神经网络,但更简单的分类器可能会有用 - 使用混合、装袋等。

可能出现的问题
这里有一个陷阱——一些评论/特征对于神经网络分类器甚至对于人类来说并不那么明显,比如“大声”或“变得非常热”。它们通常取决于上下文。因此,我利用我们团队的一点帮助来标记数据集 - 因此,每个条目都由一组人标记以获得更好的质量。此外,我还使用上下文标签 - 产品类别 - 为每个实体添加上下文:因此,音频系统和清洗捣碎的“响亮的声音”会引发争议情绪,并且模型可以学习它。大多数案例类别标签可以通过数据库/网络解析轻松访问。

希望它有所帮助,也希望有人知道更好的方法。

关于python - 是否可以让神经网络根据分类文档对实体进行分类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53829938/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com