Archive

Archive for the ‘标记’ Category

本博客转移到blog.baojie.org

2013/02/10 留下评论

请移步 http://blog.baojie.org/

以前在这个里发布的所有内容已转移到新博客空间

Advertisements
分类:流水帐

语义网的高级语言

2012/11/27 留下评论

在谈论语义网的时候,要和RDF路线区分开来。

和一些人谈到语义网,他们说:“语义网死了”。如果从RDF的角度来说,是的——虽然W3C路线的支持者还不承认。

但是这种观点,就如同计算机在只有机器语言,没有高级语言的时候就断言:“计算机死了”。

我大胆提出两个假设

  • RDF是一门低级语言,只适合机器使用——如同机器语言或者汇编语言
  • 语义网需要一门高级语言,面向工程师(人),用来做大规模知识库的写作、重用

为什么说RDF是低级机器语言?

  • 用URL来寻址并不错。但是把精确寻址的任务交给人,要求人来设计URL,就如同在C编程中要求人对每个变量赋予内存地址。
  • RDF是一个“平坦”(flat)的语言,缺少内部的组织单元。有很多建议,引入诸如package, named graph这样的组织单元,但目前还没有达成共识或广泛采用。
  • RDF的语法,即使是Turtle,也没有可读性,理解和重用起来非常困难。
  • RDF缺少“宏”或者构造高层次组织的能力。其实SPARQL弥补了一点,就是graph pattern;一些语言如SPIN,把graph pattern作为可重用的单元,甚至可以生成新的数据。如果把这个能力作为RDF原生的能力就好了。

2010年RDF Working Group开预备会议,我也与会了。现在回来看,我那时的想法是错误的:为RDF引入更精确的语义,基于上下文(context)的组织和寻址,并不合适——虽然Pat Hayes后来很喜欢这个想法并在工作组内推一个类似的想法

RDF的问题不是逻辑太少了,而是逻辑太多了。

知识工程的问题往往是太多考虑机器的需要,而不太考虑人的需要。而知识工程的瓶颈,又恰恰在人而不在机器。

RDF 1.1现在的几个努力方向:JSON语法,Named Graph, Turtle Syntax,这些都是好的。但是还不够。我甚至怀疑,在RDF框架内能不能达到易用性的目的。

因为从一开始,RDF就被设计成machine understandable语言。这本是好的,至少在1999年。但是一个缺少高级语言的情况,就好像编程语言的早期。结果就是知识工程的人月神话。

现在的情况也很象Web发明的时候:在Internet上,TCP/IP是面向机器的低级语言,而HTML和URL是面向人的高级语言。我觉得,现在有一个强烈的需要来设计一个Semantic Web的高级语言。

这样的高级语言要有什么特征呢?我觉得大体有这样几点

  • 支持多粒度的知识/数据组织和重用
  • 用字符串而不是URL来寻址。不追求addressing uniqueness, 而是probable and eventual addressing uniqueness
  • 支持知识的分布式传输(按一定粒度)
  • 使用目前主流程序员熟悉的语法形式。
  • 尽可能少重新发明轮子——比如rdf:plainLiteral(我是作者之一)这样的字符串类型就没什么必要
  • 支持结构化和非结构化数据的混合表达(RDF有Literal,不过,那个太局限了)
  • 这个语言的文档不要提什么“语义”(有几个程序员关心SQL的语义?),不要规定什么schema
  • 把推理转化为图的操作或者编程语言内置的运算。在这之外的推理都先不考虑。
  • 从一开始就设计成在cluster上能运行的语言
  • 拜托,用程序员看的懂的语言和例子写文档。

其实这样的语言雏形的一些部分,在不同的技术平台上都已经自发出现了。语义维基,图数据库,新一代检索引擎,都包含了上述部分概念。有心人要做的,就是一个有机的组合。我想,在我写这一段的时候,大概已经有人开始做了。

P.S. 我甚至觉得,都没有必要引入一个新的高级语言语法,就在现有的某种贴近RDF的编程语言里,做少量的增加就能实现目的。最理想的就是Python。为什么这么说?JSON本身就是Python的数据结构。而几乎所有的数据API都吃JSON。Python的类与属性定义与关系就是RDF的翻版。

其实更合适的是Lisp。但是Lisp对抽象思维要求太高,社区又太小。做面向Web的开发,为了工程经济性(人力上的),还是Python比较合适。

分类:语义网, 流水帐

通信的语法,语义和语用层次:一封推荐信

2012/11/22 留下评论

以前在研究“语义信息论”(Semantic Information Theory)的时候,涉及到通信的三个层次:技术的,语义的和效果的。这个层次划分是(Weaver 1949)说的。香农的传统信息论只涉及技术这个层面。

从语言学的角度,这三个层次可以大致对应于语言的语法Syntax、语义Semantics和语用Pragmatics三个层次

今天在看《语言本能》(The Language Instinct)这本书,里面举了个很有意思的例子,可以做这三个层次的范例

一封推荐信:

亲爱的平克教授:

我非常高兴能向你推荐厄文×史密斯先生。史密斯先生是一个模范学生。他衣着整齐,而且非常守时。我认识史密斯先生已经三年了,我觉得他在各方面都是最合作的人。他的太太很迷人。

真诚的约翰×琼斯教授

语法层面:用某种NLP工具,比如Stanford parser,可以分析句子结构。比如这样的语法树

(ROOT
  (IP
    (IP
      (NP
        (NP (NR 史密斯))
        (NP (NN 先生)))
      (VP (VC 是)
        (NP
          (QP (CD 一)
            (CLP (M 个)))
          (NP (NN 模范) (NN 学生)))))
    (PU 。)
    (IP
      (NP (PN 他))
      (VP
        (VP
          (ADVP (AD 衣着))
          (VP (VA 整齐)))
        (PU ,)
        (CC 而且)
        (VP
          (ADVP (AD 非常))
          (VP (VA 守时)))))
    (PU 。)))

语义层面:基于背景知识,我们知道史密斯先生是个男人,他已婚,他至少已经三岁了(呵呵)。所谓的语义信息论,就是不仅局限于句子本身出现的符号(如“先生”),而是把它们与未出现的符号(如”男人”)也关联起来,通过出现的符号来推导出未出现的符号的一些信息。

语用层面:琼斯教授在使坏,在说史密斯的坏话,虽然一个负面的词都没有用。因为推荐信理论上是要讲被推荐人的专业素养,琼斯教授只说了一堆不相干的话。在这个特定的通信实例里,其实有一个“封闭世界假设”:如果推荐人没有说到专业素养,那说明这个专业素养是不值得提的。这种语用的信息,是基于信源和信宿共用的背景知识(如文化)和一些约定的规范(如推荐信的内容)。一些特定的场合,语用应该也是可以数学描述或近似的。留待以后有空来捣捣浆糊。

统计机器学习的一点感想

2012/11/16 2 条评论

最近看了两篇文章,有些感想。

Chomsky和Norvig都是人工智能界的泰斗级学者,他们各执一辞,论述自己对统计机器学习的看法。两篇文章看完,都让人深受启发。

争论的大意是,Chomsky认为统计方法虽然在工程上有效,但是太“肤浅”,没有展示问题的本质。Norvig说,可是这玩意就是有效、有效、有效,这里是例子、例子、例子。

其实两个人说得都没错。这里我做个类比:

一天24小时,一年365天多一点,这个是统计学习。古人从海量的数据里得到了这些规律,用来指导生活,简单有效。伟大的天文学家如第谷,编制了大量的星表来表述这些统计发现,在一定范围内是准确的。

为什么一天24小时,一年365天多一点?深入理解,要太阳系模型和万有引力定律。这个靠统计学习是学不出来的。开普勒从第谷积累的海量数据里总结出三定律,不但能解释地球的自转和公转,还能解释其他行星的运行规律。牛顿进一步解释开普勒三定律,其实用万有引力定律都可以解释。

如果这场争论是放在16世纪天文学,Norvig大体上侧重于“一天24小时,一年365天多一点”的重要性,而Chomsky侧重于发现万有引力定律的重要性。

其实都没错。

统计方法有统计方法的价值和适用范围。在这个范围内是有效的。但它不是万灵药。机器学习、数据挖掘、自然语言处理,这十年来统计方法流行。但把这种流行上升为信仰就不可取了。“大数据”hype里有人认为,什么算法都不重要,只要数据足够多,就能发现需要的规律——我觉得这就近乎宗教迷信了。

比如现在我们有DBPedia知识库。如果没有Wikipedia,单纯用机器来统计学习Web上所有的文档,我怀疑能不能产生出DBPedia这样质量的知识库(尽管DBPedia自己的质量也依然不令人满意)。

关键不在数据的多少,而在高质量数据有多少。相比其他Web文档,Wikipedia就是高质量数据。而目前,高质量数据的产生,还是要依赖人。统计学习,是起一个重要但辅助的作用。

又比如问答系统,如Siri和Watson,都依赖于大量人工写作的模板、数据源和知识库。在此基础上,统计机器学习等诸多方法集成,方能完成自然语言理解、知识查找这样复杂的任务。为什么把Siri扩展到中文或其他语言难?因为那些模板、数据源和知识库都没有英文世界全。各种统计机器学习的方法,对中文和英文都是存在的,但他们不能离开高质量数据(知识)而工作。

期间若干步骤本身,也是统计方法、知识方法和算法方法的集成,如知识库的提取本身,如解析器(Parser)的设计,如问题的分类,如文档的细粒度分析,如备选答案的排序。

统计方法里可以套知识方法,知识方法里可以套统计方法。锤子用来砸钉子,扳手用来拧螺丝,非要说哪个好哪个不好,就是迷信。

我们工程师最要不得的就是迷信。锤子和扳手都是好东西,想把活干好,最好都备上。

分类:流水帐

用Python发博客

2012/07/19 留下评论

本文是用Python发的

(下面是后来手工改的)

用的是这个包 https://github.com/charlax/wordpresslib

需要手工安装

git clone https://github.com/charlax/wordpresslib.git
cd wordpresslib
python setup.py install

Python代码是

import wordpresslib

url = "http://yourblogurl.com/xmlrpc.php"
wp = wordpresslib.WordPressClient(url, 'user', 'pass')
wp.selectBlog(0)

post = wordpresslib.WordPressPost()
post.title = '用Python发博客'
post.description = '本文是用Python发的'
post.tags = ["wordpress", "lib", "python"]
idPost = wp.newPost(post, True)
print "posted as", idPost
分类:流水帐 标签:, ,

语义网相关文章:一年汇总

2012/04/16 1条评论

今天整理了一下过去一年写的和语义网相关的一些博文。分类如下

为什么最近写的少了?两个原因

  • 最近3个月太忙,基本没有时间写长文;各种短的火花,都写在微博上了
  • 条条框框很多,带着脚镣跳舞,还不如不写
里面有些文章是坑。很抱歉,估计一时半会是填不了了。

目录

  • 1 形而上学
    • 1.1 旧讨论贴
    • 1.2 旧英文贴
    • 1.3 反思
    • 1.4 产业评论
    • 1.5 新思维
    • 1.6 新思维2
  • 2 工程实践
    • 2.1 问答系统
    • 2.2 会议元数据
    • 2.3 其他应用
    • 2.4 语义网语言
  • 3 产业化
    • 3.1 语义网的公司
    • 3.2 创业
  • 4 个人研究
    • 4.1 描述逻辑
    • 4.2 Context
    • 4.3 域态逻辑
    • 4.4 语义信息论
    • 4.5 语义维基
    • 4.6 Web Science
    • 4.7 咬文嚼字
    • 4.8 胡思乱想
  • 5 杂谈
    • 5.1 入门与普及
    • 5.2 八卦
    • 5.3 活动
    • 5.4 其他

1 形而上学

旧讨论贴

旧英文贴

反思

产业评论

新思维

新思维2

(暂时保护中)

2 工程实践

问答系统

会议元数据

其他应用

语义网语言

3 产业化

语义网的公司

创业

4 个人研究

描述逻辑

Context

域态逻辑

语义信息论

语义维基

Web Science

咬文嚼字

胡思乱想

5 杂谈

入门与普及

八卦

活动

其他

博客读者的地理分布

2012/03/09 1条评论

刚发现Wordpress现在可以看博客读者的地理分布了。下面是最近一个月(也许不到一个月)我的博客“语义噪声”的地区分布(地图在后)

最近一个月我基本没有在社交媒体上给我的博客做引用。主要的流量都是搜索引擎和个人主页上来的。

结论:主要的读者在美国。来自中国大陆的读者比例很低,可能是因为翻墙不方便。

United States FlagUnited States 52%
China FlagChina 10%
Taiwan, Province of China FlagTaiwan 9%
Switzerland FlagSwitzerland 7%
Germany FlagGermany 6%
United Kingdom FlagUnited Kingdom 5%
Netherlands FlagNetherlands 3%
Hong Kong FlagHong Kong 2%
Japan FlagJapan 2%

(1%及以下的就略了)

分类:声明, 信息图