【问题标题】:Python3 remove multiple hyphenations from a german stringPython3从德语字符串中删除多个连字符
【发布时间】:2018-12-28 00:57:58
【问题描述】:

我目前正在研究评估学生对考试问题的回答的神经网络。因此,需要对 Word2Vec 网络的语料库进行预处理。德语文本中的连字符很常见。主要有两种不同类型的断字:

1) 行尾:

The text reaches the end of the line so the last word is sepa- rated.

2) 枚举的简写形式:

如果有两个“元素”:

Geistes- und Sozialwissenschaften

更多“元素”:

Wirtschafts-, Geistes- und Sozialwissenschaften

这些枚举的去连字符形式应该是:

Geisteswissenschaften und Sozialwissenschaften

Wirtschaftswissenschaften, Geisteswissenschaften und Sozialwissenschaften

我需要删除所有连字符并将单词重新组合在一起。对于第一个问题,我已经找到了几种解决方案。

但我完全不知道如何获得枚举问题中单词的第二部分(在上面的示例中为“wissenschaften”)。我什至不知道这是否可能。

希望我能正确指出我的问题。

那么有人知道如何解决这个问题吗?

非常感谢您!

【问题讨论】:

    标签: python nlp word2vec preprocessor hyphenation


    【解决方案1】:

    这肯定是可能的,因为这种模式看起来相当规律。 (有时会在英语中看到一些模糊的相似之处。例如:The new requirements applied to under-, over-, and average-performing employees.

    规则似乎是粗略的,“当您看到带有连字符的单词片段,然后是und,查找以单词片段开头的已知单词,并以与终端单词相同的结尾-after-und – 并用较长的单词替换单词片段”。

    不是说德语,也没有特定语言的知识,不可能确切地知道在哪里休息是合适的。也就是说,在您的Geistes- und Sozialwissenschaften 示例中,如果没有特定于语言的知识,则不清楚第一个片段是否应该成为GeisteszialwissenschaftenGeisteswissenschaftenGeistesenschaftenGeiestesaften 或任何其他带有Sozialwissenschaften 的共享后缀。但是,如果您有一个词片段字典,或者来自其他文本的词频信息,这些文本使用相同的全长词而没有这种特定的枚举连字符,这可能有助于选择。

    (如果有多个基于已知单词的似是而非的后缀,这甚至可能是 word2vec 的一种可能应用:选择的最佳后缀很可能是创建最接近终结词的已知单词的后缀在词向量空间中。)

    由于这似乎是一个非常特定于德语的问题,我会尝试在特定于德语自然语言处理的论坛或具有特定德语支持的库中询问。 (也许,NLTK 或 Spacy?)

    而且,了解 word2vec,这种修补实际上可能对您的最终目标并不那么重要。没有对预期的完整词进行这种逻辑重组的训练仍然可以让片段获得有用的向量,并且相应的完整词可以从其他用法中获得有用的向量。无论您的下一个回归/分类器步骤做什么,这些片段可能会与完整的复合词足够接近,以至于它们“足够好”。因此,如果这似乎是一个障碍,不要害怕尝试忽略它作为一个非问题。 (然后,如果您以后找到适当的去连字符的方法,您可以测试它是否真的有帮助。)

    【讨论】:

    • 感谢您的想法和快速答复。我会在不取消连字符的情况下尝试一下,看看结果如何。
    • 我只是想到了另一个可能简单且足够的技巧。不需要在你的预处理中实现真实的词,只需要有用和一致的词。所以你可以想象将Geistes-加上Sozialwissenschaften变成Geistes-Sozialwissenschaften——不是一个真实的词,而是一个用于特定用途的有用标记,它可能在语料库中重复(如果它有很多次出现)足以得到它自己好的向量。从本质上讲,如果它接近人类语言专家使用的真实单词,您就会知道它就足够了。
    • 这将类似于 word2vec 经常为常见的拼写错误实现良好的向量。只要您的下游应用程序对您正在分析的其他文本执行相同类型的幼稚去连字符化,您就可以从这些 frankenstein-tokens 中获得一些价值——可能比“不使用尾随连字符前缀不做任何事情”的替代幼稚策略更多"。
    • 最后,这些幼稚的 frankenstein-tokens 可能通过它们的集群揭示了真正的共享后缀应该是什么。例如,对于一个足够大的语料库,在许多不同的枚举中使用相同的单词,也许草率的标记 Geistes-SozialwissenschaftenGeistes-Wirtschaftswissenschaften 最终得到的向量接近真实单词 Geisteswissenschaften 它们应该是——提供适当规范化的提示.同样:Wirtschafts-Sozialwissenschaften & Wirtschafts-GeisteswissenschaftenSozial-Geisteswissenschaften & Sozial-Wirtschaftswissenschaften
    猜你喜欢
    • 2018-11-03
    • 2013-08-20
    • 2023-01-11
    • 1970-01-01
    • 2013-07-05
    • 2018-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多