【问题标题】:Standard Algorithms to implement Transliteration and Transliteration Suggestion实现音译和音译建议的标准算法
【发布时间】:2019-10-10 21:58:49
【问题描述】:

我已经构建了一个从英语音译为多种语言的算法,因为我们应该向他们展示他们输入的单词的适当建议,所以我已经制定了在该语言词典中搜索的逻辑。

逻辑我已实现在该语言词典中进行搜索:

  1. 最后输入的元音中的差异并找到单词。 { 例如 : re — > r* }
  2. 替换所有可能组合中的所有元音。 { 例如 : 测试 — > [ tAst*, tEst*, tIst*, tOst*, tUst* ] }
  3. 字典中可能出现的最小距离单词。 (Levenshtein 距离算法)
  4. 在字典中查找发音相似的单词。 { Ex : tast —> [ tEst*, tEAst*, .. ] }
  5. 强调元音之间的辅音并在字典中搜索。 { 例如:可能 —> [ 可能* ] }

有没有标准的算法来实现上述逻辑的音译和音译建议?

【问题讨论】:

  • 你真的是指音译吗? en.wikipedia.org/wiki/Transliteration
  • 我认为要使用的数据结构是 trie,但我无法为您提供精确的算法链接,这些算法可以满足您的需求。
  • @WalterTross - 是的。上面我提供的例子都是英文的,所以大家都能理解其背后的逻辑。

标签: algorithm google-translate levenshtein-distance transliteration google-input-tools


【解决方案1】:

循环神经网络(例如 LSTM)可用于预测下一组单词或建议。可以制作一组英语句子的训练集,以及它们的翻译版本,以及该语言中所有可能的单词组合,如词向量。

【讨论】:

  • 感谢您的回答:这与预测下一组单词无关。我想澄清一下,问题在于音译(en.wikipedia.org/wiki/Transliteration)。我试图通过键盘替换每种语言来实现音译。在这种情况下: 1. 每种语言中可以有相似的发音辅音或元音。 2.人们尝试输入单词的方式可能会有所不同。对于“Peter”-(“Piter”,“Peeter”,..),但结果应该是发音“Peter”的该语言的正确数据。因此,我们必须找到该语言最近的字典单词。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-28
  • 1970-01-01
  • 2013-05-03
  • 1970-01-01
  • 1970-01-01
  • 2018-08-20
相关资源
最近更新 更多