检讨我的语义维基尝试
以前我提到过很多次我在语义维基(Semantic Wiki)上的一些尝试,详参文后列表。
我最早的semantic wiki的尝试是在2003年,写WiKiOnt系统,后来转移研究方向,不了了之。到2007年又开始对Semantic MediaWiki感兴趣,2008年转到RPI后,继续研究,是我在2008年到2009年的主要研究方向。但是,我创建的所有的基于semantic wiki的系统,用户都非常的少。特别是TW Wiki,也就是RPI Tetherless World Constellation自己的Wiki,也很少人用它的语义特征,也即,大部分用户是把它当普通wiki来用的。
是用户不懂semantics吗?TW Wiki的用户可不是这样:这可是语义网最主要的一个研究小组。又如W3C OWL工作组自己的wiki,一个semantic wiki,几乎没有人用它的语义特征。世界上还有什么用户群会比这个工作组更狂热支持语义建模、元数据、推理和查询吗?可是这群人(包括我)为什么自己不在自己的工作中贯彻自己提倡的原则呢?
2010年,在“The Unbearable Lightness of Wiking”(维基中不可承受之轻)里,我写了几个问题
- Knowledge modeling
- Context
- Collaboration protocols
- Project management
现在想,其实总结起来,一个字就够了:懒。
两个字:麻烦
细化下来,有如下问题。这里只列摘要,,每个问题以后都可能详细检讨(其实有很多以前也讲过)
- 要求用户来主动提供元数据是不现实的。哪怕只是填表(用Semantic Forms)这种方式。催一下,动一下,不催,不动。
- 大多数用户不会去主动的语义思考。分类简单吧?一点也不简单。标签简单吧?很少有人来用。不是他真不会,他觉得很麻烦。非不能也,乃不为也。
- 用户不愿意改变自己的工作方式,除非是被逼的。比如写会议记录,我用笔写写就好了,自己看,干嘛要上wiki?我本来用wiki写就好了,干嘛要加元数据?
- 静态的schema不适应动态的数据。不止一次被头叫去问,你这个表单少一个属性,我要加,怎么办?然后回去改Template、Form。其实应该来说不是semantic wiki不支持数据演进,而是我们还是按数据库的思维来建应用,浪费了这个能力。
- 高估可扩展性。SMW经常导致宕机,连带影响所有使用MySQL的应用。SMW的查询复杂性可是“极低”的(按语义网的标准),多项式时间(P),但是加上复杂的模板,在还只有几万个页面的时候就不行了。
- 忽视知识的开放性。用户会有很多知识在外面,怎么连进来?特别是,怎么方便地连进来?wiki本身侧重本地知识,和linked open data这个概念,不完全一致。我们试过几次distributed query, distributed wiki,还不是很成功。
- 忽视知识的个人性。一提到知识,往往就是ontology,就是“shared conceptualisation” (Tome Gruber, 1993)。就我在wiki上工作的经验,其实属于个人的知识,可能要比共享的知识更多,也许10倍还多。比如很多博客,总结,文章,都是私人或者只给少数人看的。还有,你知道要让所有的管理员都认可一个分类系统有多费劲吗?
- 忽视知识的组织。Triple这个单位太小,不利于交换、演进、管理、个人化。
这个列表还可以加长。这些教训,或可为以后的工作提供参考。
附:到目前为止有关semantic wiki的文章:
- 一个Semantic Media Wiki简短教程 2012-01-03 (原2009-07-21)
- 用语义维基来写应用 2011-12-27(原2009-12-07)
- 维基中不可承受之轻 2011-12-22 (原2010-05-22)
- 增强语义维基查询应答的表达力 2011-05-12
- [2008]文摘
- 基于Wiki的时间管理手段[2008] (2008-09-06)
- Towards Webtop [2008] (2008-07-25)
- 语义博客[2008] (原2008-05-10)
- 要搞一个基于wiki和ontology的网站[2003]2003-12-02
还有一些工作参 http://tw.rpi.edu/wiki/Semantic_Portal_Wiki
另参: 语义网是给人用的 2011-12-20
分类: 语义网