• 2009-10-30

    研究TAGGING,我们能做什么?(一) - [以用户为中心的设计]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://gundam215.blogbus.com/logs/49472370.html

    在国内,最近有很多人写tag相关的文章,比如淘宝UED的alite的Robert的。其实在国内互联网,一叶千鸟关于信息架构这些东西写的蛮早,所以07年他就有过类似文章,我在探索tag的时候找到过一本叫《tagging》的书,然后看到了豆瓣上的puting已经看过此书,然后就特意去找他聊了。在看淘宝UED那篇时,又去找了回帖的yusen,并去读了他在HCI2009年上的论文。yusen的这篇是国内迄今为止关于这个话题写的最好的,他对tagging的了解也是国内这些人里面最深入的,从他博文中OS2.0里这些文章就可以看出他对分类学的理解已经比其他人更深了。后来我也通过特殊渠道和他聊天探讨。

    在国际上,tagging这个话题从2001年开始起来,从05年开始热起,到06-08年,WWW(关于互联网的国际会议中可以算No.1)中有一半的文章在谈tagging,其他各种会议期刊关于tagging的文章也是数不胜数,2006年WWW有个关于tagging的workshop极度推荐一看。

    我迟迟不写,是因为我还有需要继续研究下去的东西,所以此篇只能算是草稿,但是草稿也要写出新意来。我对于tagging的关注是来源于5月份写的两篇草稿。反正后来就在研究信息架构的时候一头扎进去了。

    本文沿袭了《tagging》和《Information Architecture for Web》这两本书里的一些结构和思想,然后注入了一些自己的想法

    关键词

    本文可能涉及到一些关键词,如有迷茫,请向google求助:

    解耦、分类学、可寻性、PIM、分面、等级系统、多层分面等级系统、无源社会元件、有源社会元件、数据关系。

    一、Tagging的目的

    这个必须在第一个说。对tagging的需求其实不只是用户或者用户群,还有网站建设者,信息架构师,搜索引擎。

    在《tagging》书中将tagging的目的分为5类,易用(ease for use)、个人信息管理(Personal Information Management,后文用PIM代替)合作和分享(Collaborating and Sharing)、好玩(having fun)、展现自我(expressing yourself)。

    我自己将目的分为两类:PIM和IA。前者是用户的目的,后者是网站建设者和信息架构师的目的。至于什么好玩,分享和合作以及展现自我,这些都对PIM和IA起很大的作用。

    ---<--关于tagging的优缺点和基本介绍等,参看我在序中提到的各位同僚的好文即可。特别是yusen那篇论文,介绍的已经极为详细了,几十页的文字可不是盖的-->---

    至此,我必须要开始介绍一下信息架构的一些本质了。在《Information Architecture for the World Wide Web》(《web信息架构》,有中文版)这本书的作者Peter Morville的说法是这样子的,信息架构就是为了缩短用户与内容的距离。这将是我们之后所谈的所有概念的核心。而除了这个核心思想,我需要在讲的一点是方法。在我看来信息架构方法的本质是分类学(classification)

    所以全文就会以此两点为主线,讲述的是以分类学的方法来缩短用户与内容的距离的故事,而本故事的主角是tagging

    二、分类学

    在几个月的研读中,我特意去研究了taxonomy和classification的区别。taxonomy本来专指生物分类学,后来衍生为分类学,是指有层级结构的分类,而classfication本身不带层级结构的意思。而folksonomy则指大众分类法。taxonomy一般自上而下的构建,就是有专门的权威机构来构建,而folksonomy由大众来构建,这是这两者的唯一区别,切记,所以这里我要指出一个关键的误解,这是现代我看过的所有文章的共同误区,现代所有文章都认为folksonomy是扁平结构的,taxonomy是层级结构的。这是极度误解,这两者的关键差别在于源,一个是单源,一个是多源,这两者带来的一个问题,导致了folksonomy至今全是扁平结构的。

    这是什么问题呢?

    我们在回归到信息层面来思考。信息之间有几种基本关系:独立、互斥、相交、包含。这是最基本的,有点像数学里的几何物体间的关系,至于其他什么相邻,相承,这些属于次要关系,都可以被前四种关系包含。这里很关键,我在和数据库架构师(DBA)的交流中认识到了这个的重要性。这种建模方式,是DBA们的重要方法。

    这与分类学有什么关系?

    所谓层级(hierarchy)结构,就是包含关系!层级结构有一大关键,就是不能产生回路,即a包含b,b包含c,c包含a,这样的情况。但如果要建设多源状态下的层级结构,那么很难避免回路,这就是folksonomy至今全是扁平的关键原因。了解了这个原因,很重要,这对我们拓展tagging带来了基础,也就是说,我们可以努力,用某些方式让folksonomy产生等级结构。这也意味着我们将可以将大家在各自文中提到的tagging的弊端中,将无法展现层级机构这一项去掉。这就是创新的基因!

    谈到这里,我们顺带一提,DBA们对tagging这样的数据关系,可能称为pool,然后将tagging间用一些类似collaboration或者share产生的结构,称之为网状(network)结构,这也是我们在分类学中要用到的重要方法。

    tagging在这里,对比传统category的方式的优点也就体现出来了,基于network的tagging体现了一对多甚至多对多的数据关系,而传统category只能将一个文件放到一个档案柜里(想想windows的隐喻,然后可以考证folder的历史,这里我不展开了)

    接下来,我们再来谈大家都在谈的分面(facets),这个问题具体是怎么回事,我以前写过一篇介绍——《分面(facet)不是搜索》分面是一种分类法,分面分类法是为了应对复合式等级系统才会被发展出来的。我们要将问题进行多属性的考虑。从质量,从体积,从面积,都是不同的角度,这些分类不是并列的,而是相互独立的。

    这对我们处理海量信息非常重要,因为实际上tagging以类似元数据的方式流行网络的时候,就成为了海量数据。这也成为了大家诟病tagging的一个地方。因为海量的tagging降低了我们再寻找信息时代来了负担,也就是信息过载。但如果我们再度用分类法的方式,用复合式等级系统的方式去对待tagging,我们就可以消除这一不足。

    --------------------

    这里我们返回我们文章开头的主旨,信息架构是为了缩短用户与内容的距离,而现代人们用tagging的方式降低交互成本的同时,却在增加用户与内容的距离,这就让tagging变成了噪音,于是我们产生了各种方式去降噪,推荐、协同过滤、ranking算法、聚类算法,等等等等。但是说到底,我们在这里应该清晰的认识到一点,和搜索一样,这不是技术问题,这是信息架构问题。我们如何去降低信噪比呢?分类学的作用呢?且听下回分解


    历史上的今天:


    收藏到:Del.icio.us




    评论

  • 事实上 folksonomy 比较早就有层级化了

    很想看这本书
    “Dynamic Taxonomies and Faceted Search – Theory, Practice, and Experience”
    gundam215回复师母说:
    赞,我要去看看
    2009-11-07 12:09:14