如何检测同一行中的多种语言?

2024-06-28 11:36:46 发布

您现在位置:Python中文网/ 问答频道 /正文

在java和python中有一些api,也尝试过一些在线演示,但所有api都将句子作为一个整体,给出了一个整体的可能语言。在我的例子中,我在同一行有多种语言需要被检测,除了英语以外的其他语言要被删除,同时保持句子的完整性。在

示例:

  1. 化粪池安全。/无危险倒在福斯七巧板。存放于阴凉干燥处。/护林员在这里等着。在
  2. 4倍浓缩,清洁效果更佳*4倍浓缩浓缩液*
  3. 无磷酸盐无磷酸盐
  4. 进口用于/进口宝洁公司,多伦多,M5W 1C5

Tags: api语言示例java例子句子完整性整体
1条回答
网友
1楼 · 发布于 2024-06-28 11:36:46

我相信你从阅读评论中得到的指导是最好的解决办法:“我试过了——把整个句子标记成单词,并检查每个单词的语言”。但是您应该考虑开发一个bag of words algorithm。在

简单地说,你可以计算出句子中所有单词的出现次数,并将它们存储在一个列表中,并列出它们所属语言的索引。 然而,当您在一个句子中检测到多个语言时,可能需要多个列表,出现最多语言单词的列表将决定句子每个部分的语言。在

This is an English sentence written in english,dans un endroit frais et sec
[english:english:2][this:english:1][is:english:1][an:english:1][sentence:english:1][written:english:1][in:english:1]
[dans:french:1][un:french:1][endroit:french:1][et:french:1][sec:french:1]

this->beginning->list index 0, sentence->end of english->list index 3

但是,这仍可能在示例中产生错误,因为样本空间越小,结果越不准确:

化粪池安全。/无危险倒在福斯七巧板。存放于阴凉干燥处。/护林员在这里等着。(所有单词只出现一次,这并不能通过单词的数量来确定语言,而只能通过它们连续属于哪种语言的总和来确定语言

无论如何,希望这是有意义的,并希望它在某种程度上帮助你找到一个解决办法。请随意评论,我会尽力帮你解决你的问题。在

相关问题 更多 >