Expert System

旧书

我为了做专家系统的seminar,前天下午去了学校的图书馆找了学校里唯一一本关于MACSYMA的书。这本书是1984年的,算是比较古老了。书的排版字体,以及书里的记录卡片,都是我之前从未见过的,于是今天早上给书照了几张照片。

专家系统演讲

学期临近尾声,我们的一些课程也到了最后的部分。我们这学期的《专家系统》一课从这周三和今天停课了,因为到最后讲的一些只是收集、商业系统之类的东西已经与我们的关系不大了。我们从下周一开始会有一周的时间,让每个听课的同学做一个关于一个专家系统的seminar,这两天停课正好让我们准备。

再论专家系统

这两天的专家系统课,让我越听越郁闷。

我在上这门课之前,对人工智能、专家系统这一块是非常向往的。人工智能是早就有印象,而我现在说起专家系统,最早的印象是凌志军写过一本书《中国人在微软》,里面讲的李开复早年在CMU读研究生的经历。说当时李开复的导师和其他一些人工智能领域的权威,一直深信让计算机听懂人话是要用专家系统,像教小孩说话一样来让计算机慢慢学习。结果李开复独排众议,改用了统计的方法,结果把识别率提升到高达98%。这件事我之前也写过,我一直对这个故事有着深刻的印象,因为隐隐觉得如果真能做到这个底部,或许成就还无法达到CMU那帮人的水平,但这种研究已经很有趣了。所以这学期我发现专家系统课和另一门同样是必修的autometa课有冲突时,我毫不犹豫的选择这个学期先修专家系统。

Jess新体会

jess-in-action-cover我们这学期的一门课是专家系统,在课上我们用Jess作为编程语言。我们的老师也算大方,把Jess的作者写的一本书《Jess in Action》全书影印下来给我们看,又把另外一本《Building Expert Systems: Principles, Procedures, and Applications》借给我们看。前几个星期,我因为第二本书是借的,就在一个周末把全书浏览了一遍,写了一篇文章。这个周末,我把第一本书带到学校,看了几章。

专家系统的幻灭

building-expert-systems每周一三五的《专家系统》课,原本是我这学期最有期待的课了,现在却让我有些幻灭,每次听课都觉得不舒服。

我最早听说专家系统,是在一本名叫《追随智慧-中国人在微软》的书中介绍李开复的章节里。那一部分讲的是李开复在CMU跟随导致致力于计算机语音识别领域的研究。李开复的导致和很多主流专家认定语音识别要用人工智能来解决,通过建立一个专家系统来模拟人的语言学习过程,然后像教小孩说话一样来教计算机能听懂人话。而李开复独排众议,用统计的方法解决了这个问题。那时我就对专家系统这个领域充满了好奇,如果能建造出有学习能力的系统,哪怕就是像CMU那帮“老家伙”们那种程度,也是挺令人激动的。所以在这学期的开头,终于能够接触这个领域后,我相当兴奋。

Jess 常量

今天下午我们的《专家系统》继续在讲Jess。其中讲到了在Jess中定义常量,是用下面这句来定义的:

(defglobal ?*count* = 0)

Ugly?

让Jess在Emacs中运行

我们这学期有门课《专家系统》,课上用到Jess。因此,让Jess在我们自己的环境上运行起来就是我们前几节课的任务。

Jess是用Java写成的,运行在Java虚拟机下,因此在Mac上运行不成问题。今天尝试了一下,除了把路径中的空格给删除之外,似乎直接就能运行。Jess里的bin目录下有jess这个shell文件,我把整个Jess目录放到了/opt下,并在 /opt/local/bin 里面做了一个软链接,就一切正常了。