细胞的结构

细胞是大脑的重要组成部分。当您训练一个大脑时,您实际上是与细胞工作。细胞可以包含以下字段:

  • Input*
  • Output*
  • Context
  • JS
  • Tags

Input/Output

最简单,也是最常见的细胞包括一对 Input 和 Output,如下所示:

例 1. 单个细胞

    • Input: Hello
    • Output: Hi!

Input 字段表示用户可能输入的内容。Output 字段描述了大脑应该做出什么反应。两个字段一起定义了一个“行为”。对于上例中的细胞,它的行为是当用户说“Hello”时回答“Hi!”。

BrainXML

输入和输出字段需要一个 BrainXML 表达式。BrainXML 是类似 XML 的标记语言。一个 BrainXML 表达式包含以下一项或多项。

  • 词语
  • BrainXML 元素

输入字段的 BrainXML 元素举例:

  • *
  • <n>
  • <nerve>
  • <bot>

输出字段的 BrainXML 元素举例:

  • <s>
  • <rand>
  • <u>
  • <user>

每个元素执行一个特定功能。某些元素只能用于输入,或输出字段。一些元素则是两个字段都可以用,但它们的功能可能是不同的。要获得完整的 BrainXML 元素及其使用方法列表,请查看 BrainXML Reference

Context

从字面也可以看出,Context 字段提供了跟用户信息有关的附加信息,因此大脑能够根据不同的上下文对同一用户信息进行不同的响应。

Context 字段的必要性来自于一个事实,即上下文不同时,同一词语可能意味着完全不同的含义。很显然,当用户说“Hello!”时我们应该回答“Hi”。但是,我们应该怎样回答“Why”呢? 有了 Context 字段,下面的细胞就可以对“Why”进行适当的回答。

例 2. 带 Context 字段的细胞

  • 1
    • Input: Why
    • Output: That's the way it is.
  • 2
    • Input: Why
    • Context: I like pizza
    • Output: Pizza is delicious.
    • What is your favorite food?
    • I like pizza.
    • Why?
    • Pizza is delicious.

正如上面的例子演示的那样,其中有多个细胞具有相同的输入,而系统将选择一个更加符合上下文的(细胞 2)。通过输入带恰当的上下文的细胞,您可以让大脑与用户进行深入的对话。

两个注释

  • Context 字段要使用 BrainXML。它需要与 Input 字段相同的元素。
  • 一般而言,除非已经有了一个具有相同输入的细胞,否则不必创建一个带上下文的细胞。