2

我正在开发一个系统,该系统可以根据各种用户输入(例如音节模板或修改后的 Backus Naur 表格)创建虚构的单词。不过,计划中的一种新模式是机器学习。在这里,用户没有明确定义任何规则,而是粘贴一些文本,系统会学习给定单词的结构并创建相似的单词。

我目前的幼稚方法是创建一个字母邻域概率表(包括一个特殊的词尾“字母”),并通过按字母对扫描输入来填充它(使用空格和标点符号作为单词边界)。创建一个单词意味着查找每个字母跟随当前字母的概率,并根据概率随机选择一个,附加并重复,直到遇到单词结尾。

但我正在寻找更复杂的方法(可能?)提供更好的结果。我对机器学习知之甚少,因此感谢您提供有关主题、技术或算法的指针。

4

1 回答 1

2

我认为对于独立的单词(特别是名称),一个简单的马尔可夫链系统(您在谈论使用字母对时似乎会描述它)可以表现得非常好。给它一个词典,然后给它一个种子,根据它学到的东西生成一个新名字。您可能需要调整马尔可夫链的前缀长度以获得听起来不错的结果(正如在对您的问题的评论中指出的那样,2 个字母比一个要好得多)。

我曾经用精灵和兽人的名字词典尝试过,得到了非常令人满意的结果。

于 2011-07-21T13:41:48.410 回答