【问题标题】:Data-mining algorithm for dynamically consolidating recurring substrings?动态合并重复子串的数据挖掘算法?
【发布时间】:2013-02-12 19:11:52
【问题描述】:

我正在尝试构建一个人工智能单元。我计划首先将感官输入(“观察”)收集到一个短期工作记忆列表中,不断形成在这个列表中找到的模式(“想法”),然后将这些想法提交到一个长期存储记忆中它们达到了相当大的规模,可能是七个连锁观察。对于任何哲学爱好者来说,类似于洛克的人类理解论文,但这不会是Tabula Rasa。需要有一个编码的底层结构。

因此,我的问题是:

是否有/在哪里有一个好的算法来动态合并或“模式化”这个不断增长的观察字符串的最大子字符串?例如:如果到目前为止给了我 ABCDABCABC,我想要一个 ABC 想法,D 和另外两个 ABC 想法;然后,如果观察到另一个 D 并将其添加到短期记忆中,我想要一个 ABCD 令牌、一个 ABC 令牌和另一个 ABCD 令牌。我不想使用 Shortest Common Substring,因为我需要在添加任意数量的字符后重新运行它。我想我更喜欢一些易于搜索/修改的树结构。

这看起来是不是一个足够体面的解决方案? http://www.cs.ucsb.edu/~foschini/files/licenza_spec_thesis.pdf。如果不出意外,我认为其他数据挖掘者可能会喜欢。

【问题讨论】:

  • 什么是{A,B,C,D}?单个字符、单词/标记或子字符串?
  • 我不是这个领域的专家,但这听起来很像您在为压缩算法构建字典时想要做的事情。
  • @wildplasser - 它们是“观察”、感官输入标记,但就我而言,它们可能是字符。
  • 您需要第一次通过(tokeniser),它使用字符,并将它们作为“单词”或“令牌”返回。 (如果你不能构造这样的标记器,你的标记将是最小的标记:单个字符)开发“动态”DFA 非常接近于构造马尔可夫树(或决策树,或贝叶斯树)。 (除了,例如,循环是可能的)查看我的 Wakkerbot 标记器的个人资料(这是相当先进的,恕我直言,但非常特定于域)
  • 霍夫曼编码,或者一些LZ类算法。

标签: string artificial-intelligence substring data-mining longest-substring


【解决方案1】:

第一步:标记器。定义您认为 {A,B,C,D} 和不考虑的内容。

  • 您需要至少一个额外的标记来存放垃圾/杂项(好消息是,如果出现此标记,随后的状态机将始终重置为其起始状态)
  • 您可能希望也可能不希望保留空格(这会再次导致额外的令牌,以及稍后在 DFA 或 NFA 识别器中的许多额外状态)
  • 也许您需要某种等价类:例如,将所有数字字符串包装成一种标记类型;折叠小写/大写;接受某种程度的拼写错误(很难!)
  • 您可能需要特殊的虚拟令牌类型用于行首/行尾等。
  • 您必须在允许的 误报 数量与 误报 数量之间做出选择。
  • 如果涉及文本,请确保所有源都采用相同的规范编码,或对它们进行预处理以使其采用相同的编码。

构建标记器是调查您的语料库的绝佳方式:如果它是来自外部世界的真实数据,您会惊讶于您在开始时甚至不知道它们存在的时髦案例!

如果正确的标记化,第二步(识别器)可能会容易得多。对于正常的确定性状态机(具有要识别的预定义序列),您可以使用 Dragon Book 或 Crochemore 中的标准算法。

对于 模糊 自学习匹配器,我将从构建马尔可夫链或 -trees 开始。 (也许贝叶斯树,我不是这方面的专家)。 我认为从标准状态机开始并为节点和边添加一些权重和计数并不难。并动态地向图中添加边。或删除它们。 (这是我希望开始变得艰难的地方)

战略决策:您需要数据库吗?如果您的模型适合核心,那么您不会也不应该这样做。 (数据库不打算获取一行并处理它,然后存储它然后获取下一行等)如果您的数据不适合核心,您将不仅仅是数据建模问题。顺便说一句:我所知道的所有 DNA 组装器/匹配器,在核心中工作并使用平面文件。 (可能有数据库备份,便于管理和检查)

【讨论】:

  • 非常感谢;特别渴望研究自学匹配器。
  • 顺便说一句:您感兴趣的领域是什么?自然语言?日志文件分析? DNA识别?数字音乐识别 ;-?
  • 我在问题的第一段中简要提到了它。我希望创建一个自主学习单元,具有感官输入标记(A、B、C 和 Ds)的输入流。低水平的神经关联是通过它们简单地彼此相邻到达而发生的。模式识别对想法进行编码。我想这还不是一个 AI,但就像计算机的 ALU 一样,这个 ALU 旨在作为功能性 AI 的操作核心。人是按照上帝的形象造的(创世记 1:27),我不希望灵魂得到重生,但我对复制动物大脑持乐观态度。
  • 你告诉我:我创造了一个怪物:twitter.com/Hubert_B_Both,它不会死。下周末它将是圣经启用 (TM) 和创世纪证明。
  • 有趣。能推理吗?圣经启用是什么意思?
猜你喜欢
  • 1970-01-01
  • 2011-08-25
  • 1970-01-01
  • 2011-01-13
  • 2019-04-24
  • 2022-01-16
  • 2015-07-19
  • 2012-05-01
  • 2011-08-06
相关资源
最近更新 更多