![](/lib_static/assets/images/user_logo/35a1260c86c37a7f75c835f0683375055b51db3e.jpg)
计算机的关键技术继续发展未来的计算机技术将向超高速、超小型、平行处理、智能化的方向发展。尽管受到物理极限的约束,采用硅芯片的计算机的核心部件CPU的性能还会持续增长。作为Moore定律驱动下成功企业的典范Inter预计2001年推出1亿个晶体管的微处理器,并预计在2010年推出集成10亿个晶体管的微处理器,其性能为10万MIPS(1000亿条指令/秒)。而每秒100万亿次的超级计算机将出现在本世纪初出现。超高速计算机将采用平行处理技术,使计算机系统同时执行多条指令或同时对多个数据进行处理,这是改进计算机结构、提高计算机运行速度的关键技术。同时计算机将具备更多的智能成分,它将具有多种感知能力、一定的思考与判断能力及一定的自然语言能力。除了提供自然的输入手段(如语音输入、手写输入)外,让人能产生身临其境感觉的各种交互设备已经出现,虚拟现实技术是这一领域发展的集中体现。传统的磁存储、光盘存储容量继续攀升,新的海量存储技术趋于成熟,新型的存储器每立方厘米存储容量可达10TB(以一本书30万字计,它可存储约1500万本书)。信息的永久存储也将成为现实,千年存储器正在研制中,这样的存储器可以抗干扰、抗高温、防震、防水、防腐蚀。如是,今日的大量文献可以原汁原味保存、并流芳百世。新型计算机系统不断涌现硅芯片技术的高速发展同时也意味着硅技术越来越近其物理极限,为此,世界各国的研究人员正在加紧研究开发新型计算机,计算机从体系结构的变革到器件与技术革命都要产生一次量的乃至质的飞跃。新型的量子计算机、光子计算机、生物计算机、纳米计算机等将会在21世纪走进我们的生活,遍布各个领域。量子计算机量子计算机是基于量子效应基础上开发的,它利用一种链状分子聚合物的特性来表示开与关的状态,利用激光脉冲来改变分子的状态,使信息沿着聚合物移动,从而进行运算。量子计算机中数据用量子位存储。由于量子叠加效应,一个量子位可以是0或1,也可以既存储0又存储1。因此一个量子位可以存储2个数据,同样数量的存储位,量子计算机的存储量比通常计算机大许多。同时量子计算机能够实行量子并行计算,其运算速度可能比目前个人计算机的PentiumⅢ晶片快10亿倍。目前正在开发中的量子计算机有3种类型:核磁共振(NMR)量子计算机、硅基半导体量子计算机、离子阱量子计算机。预计2030年将普及量子计算机。光子计算机光子计算机即全光数字计算机,以光子代替电子,光互连代替导线互连,光硬件代替计算机中的电子硬件,光运算代替电运算。与电子计算机相比,光计算机的“无导线计算机”信息传递平行通道密度极大。一枚直径5分硬币大小的棱镜,它的通过能力超过全世界现有电话电缆的许多倍。光的并行、高速,天然地决定了光计算机的并行处理能力很强,具有超高速运算速度。超高速电子计算机只能在低温下工作,而光计算机在室温下即可开展工作。光计算机还具有与人脑相似的容错性。系统中某一元件损坏或出错时,并不影响最终的计算结果。目前,世界上第一台光计算机已由欧共体的英国、法国、比利时、德国、意大利的70多名科学家研制成功,其运算速度比电子计算机快1000倍。科学家们预计,光计算机的进一步研制将成为21世纪高科技课题之一。生物计算机(分子计算机)生物计算机的运算过程就是蛋白质分子与周围物理化学介质的相互作用过程。计算机的转换开关由酶来充当,而程序则在酶合成系统本身和蛋白质的结构中极其明显地表示出来。20世纪70年代,人们发现脱氧核糖核酸(DNA)处于不同状态时可以代表信息的有或无。DNA分子中的遗传密码相当于存储的数据,DNA分子间通过生化反应,从一种基因代玛转变为另一种基因代码。反应前的基因代码相当于输入数据,反应后的基因代码相当于输出数据。如果能控制这一反应过程,那么就可以制作成功DNA计算机。蛋白质分子比硅晶片上电子元件要小得多,彼此相距甚近,生物计算机完成一项运算,所需的时间仅为10微微秒,比人的思维速度快100万倍。DNA分子计算机具有惊人的存贮容量,1立方米的DNA溶液,可存储1万亿亿的二进制数据。DNA计算机消耗的能量非常小,只有电子计算机的十亿分之一。由于生物芯片的原材料是蛋白质分子,所以生物计算机既有自我修复的功能,又可直接与生物活体相联。预计10~20年后,DNA计算机将进入实用阶段。纳米计算机“纳米”是一个计量单位,一个纳米等于10[-9]米,大约是氢原子直径的10倍。纳米技术是从80年代初迅速发展起来的新的前沿科研领域,最终目标是人类按照自己的意志直接操纵单个原子,制造出具有特定功能的产品。现在纳米技术正从MEMS(微电子机械系统)起步,把传感器、电动机和各种处理器都放在一个硅芯片上而构成一个系统。应用纳米技术研制的计算机内存芯片,其体积不过数百个原子大小,相当于人的头发丝直径的千分之一。纳米计算机不仅几乎不需要耗费任何能源,而且其性能要比今天的计算机强大许多倍。目前,纳米计算机的成功研制已有一些鼓舞人心的消息,惠普实验室的科研人员已开始应用纳米技术研制芯片,一旦他们的研究获得成功,将为其他缩微计算机元件的研制和生产铺平道路。互联网络继续蔓延与提升今天人们谈到计算机必然地和网络联系起来,一方面孤立的未加入网络的计算机越来越难以见到,另一方面计算机的概念也被网络所扩展。二十世纪九十年代兴起的Internet在过去如火如荼地发展,其影响之广、普及之快是前所未有的。从没有一种技术能像Internet一样,剧烈地改变着我们的学习、生活和习惯方式。全世界几乎所有国家都有计算机网络直接或间接地与Internet相连,使之成为一个全球范围的计算机互联网络。人们可以通过Internet与世界各地的其它用户自由地进行通信,可从Internet中获得各种信息。回顾一下我国互联网络的发展,就可以感受到互联网普及之快。近三年中国互联网络信息中心(CNNIC)对我国互联网络状况的调查表明我国的Internet发展呈现爆炸式增长,2000年1月我国上网计算机数为350万台,2001年的统计数为892万台,翻一番多;2000年1月我国上网用户人数890万;2001年1月的统计数为2250万人,接近于3倍;2000年1月CN下注册的域名数为48575,2001年1月的统计数为122099个,接近于3倍;国际线路的总容量目前达2799M,8倍于2000年1月的351M。人们已充分领略到网络的魅力,Internet大大缩小了时空界限,通过网络人们可以共享计算机硬件资源、软件资源和信息资源。“网络就是计算机”的概念被事实一再证明,被世人逐步接受。在未来10年内,建立透明的全光网络势在必行,互联网的传输速率将提高100倍。在Internet上进行医疗诊断、远程教学、电子商务、视频会议、视频图书馆等将得以普及。同时,无线网络的构建将成为众多公司竞争的主战场,未来我们可以通过无线接入随时随地连接到Internet上,进行交流、获取信息、观看电视节目。移动计算技术与系统随着因特网的迅猛发展和广泛应用、无线移动通信技术的成熟以及计算机处理能力的不断提高,新的业务和应用不断涌现。移动计算正是为提高工作效率和随时能够交换和处理信息所提出,业已成为产业发展的重要方向。移动计算包括三个要素:通信、计算和移动。这三个方面既相互独立又相互联系。移动计算概念提出之前,人们对它们的研究已经很长时间了,移动计算是第一次把它们结合起来进行研究。它们可以相互转化,例如,通信系统的容量可以通过计算处理(信源压缩,信道编码,缓存,预取)得到提高。移动性可以给计算和通信带来新的应用,但同时也带来了许多问题。最大的问题就是如何面对无线移动环境带来的挑战。在无线移动环境中,信号要受到各种各样的干扰和衰落的影响,会有多径和移动,给信号带来时域和频域弥散、频带资源受限、较大的传输时延等等问题。这样一个环境下,引出了很多在移动通信网络和计算机网络中未遇到的问题。第一,信道可靠性问题和系统配置问题。有限的无线带宽、恶劣的通信环境使各种应用必须建立在一个不可靠的、可能断开的物理连接上。在移动计算网络环境下,移动终端位置的移动要求系统能够实时进行配置和更新。第二,为了真正实现在移动中进行各种计算,必须要对宽带数据业务进行支持。第三,如何将现有的主要针对话音业务的移动管理技术拓展到宽带数据业务。第四,如何把一些在固定计算网络中的成熟技术移植到移动计算网络中。面向全球网络化应用的各类新型微机和信息终端产品将成为主要产品。便携计算机、数字基因计算机、移动手机和终端产品,以及各种手持式个人信息终端产品,将把移动计算与数字通信融合为一体,手机将被嵌入高性能芯片和软件,依据标准的无限通信协议(如蓝牙)上网,观看电视、收听广播。在Internet上成长起来的新一代自然不会把汽车仅作为代步工具,汽车将向用户提供上网、办公、家庭娱乐等功能,成为车轮上的信息平台。跨入新世纪的门槛,畅想未来之时,我们不妨回顾本世纪人们对计算机的认识。1943年IBM总裁Thomas Wason说“我认为全世界市场的计算机需求量约为五台”。1957年美国PrenticeHall的编辑撰文“我走遍了这个国家并和许多最优秀的人们交谈过,我可以确信数据处理热不会热过今年”。1968年IBM的高级计算机系统工程师的微晶片上注解“但是……它究竟有什么用呢?”。1977年数字设备公司的创始人和总裁Ken Olson说“任何人都没有理由在家里放一台计算机”。愿我们的所言也将被证明是肤浅的、保守的。水利水电工程地质计算机应用技术协作网(以下简称“协作网”)这个“学术技术交流组织”以及她这几年来开展的一系列卓有成效的工作,已经得到了各级领导的肯定和广大工程地质工作者的认可。在协作网即将正式成立和全国第三次水利水电工程地质计算机应用技术交流会即将召开之际,作为协作网的发起者和组织者,系统地对我们以及一切关心和爱护协作网的朋友们共同倾注了大量激情、精力和时间的工程地质计算机应用工作进行总结,是十分有意义的。今后的工作如何开展,协作网如何运作,专业软件向何处去,如何应用计算机技术去推动工程地质专业学科的发展,所有这些,不但是我们关注的焦点,也是每个网员都应该认真关心和思考的问题。我们在积极探索协作网的定位的同时,更在严肃认真地思考协作网的任务、宗旨和目标,此文旨在阐明我们的一些看法,与大家共同探讨。计算机技术的发展让人们始料不及,Internet的辉煌令世人惊叹不已。有史以来,从来就没有一种技术能象计算机技术这样日新月异;数千年的人类文明史,唯有今天的Internet深刻地改变着整个世界。信息社会概念新颖的服务意识,获取信息同时又提供信息的互助观念,既是竞争对手又是合作伙伴的业界思想,自由软件公开源程序代码的业界潮流,敢于挣脱旧的阻碍生产力发展的条条框框又勇于创新的时代精神,是计算机业界和Internet所独有的,也是计算机和Internet改变世界的精髓。我们认为,协作网不单纯是一个技术学术交流组织,它不同于其它学术团体,而是融入了信息社会全新的思想、观念和精神,顺应信息社会的世界潮流,是对传统计算机应用概念的一种新的诠释,是信息社会计算机与专业应用相结合的一种新的模式。1 过去的启示从八十年代开始,水利水电系统内各单位相继成立了计算机处室,以此来开展本单位的计算机应用工作。时至今日,一些单位的计算机处室相继解散,总院也没有再保留计算机处。这种现象说明了什么问题?过去的那套开展计算机应用工作的思路和管理办法是否符合计算机技术的特点?是否适应计算机应用技术的发展?问题出在哪里?应该进行怎样的改革?这些都是值得我们认真探讨的问题。多年以来,我们对于开展计算机应用工作的习惯做法是采用科技项目的管理方式,即投入一部分经费,进行一些专业软件的开发。这种管理方式在计算机应用初期有其优越性,但随着时代的进步,这种管理模式越来越与现实不相适应,其原因就是对“软件”这一计算机应用的核心部件不理解,或者说产生了认识上的偏差。软件就象一个人一样,要经历出生、成长、成熟到死亡的各个阶段,称为软件的生命周期。在软件的整个生命周期中,包括系统分析阶段、开发阶段、应用与推广阶段和维护与完善阶段。其中前两个阶段只占整个生命周期的很小一部分,而后两个阶段则是一个互动的过程,即互相推动发展的过程。我们传统的工作方式的弊病主要表现在:一是只对软件开发阶段进行管理,也就是说只关心软件的出生,不关心软件的成长,致使一些软件开发出来,由于得不到发展而夭折;二是计算机应用工作独立于各专业处,造成开发与专业应用严重脱节,更谈不上推广应用。这些恐怕就是专业软件发展缓慢的根本原因,也是计算机应用推广工作的困难所在。各专业的计算机应用工作的关键在于开发和使用针对性很强的专业性应用软件。这种应用软件不同于其他科技产品,影响其发展的因素很多,包括领导的重视,单位的财力,计算机支撑软件平台的选择,使用人员的素质等等。因此,计算机应用工作的内容决不是仅仅对软件开发阶段进行管理,还涉及到很多社会问题,是一个复杂的系统工程。既要对专业需求进行调查,对开发过程进行跟踪管理,又要对开发出的软件进行市场宣传、推广和服务,以及制定相应的行业标准等等。由于计算机技术的应用不仅带来专业技术的进步和发展,更带来观念的转变与更新。因此,会在不同程度上与现行的技术与管理模式发生冲突,产生矛盾,所以要进行广泛探讨,并考虑进行相应的改革。2 协作网的由来工程地质勘测的计算机应用工作多年来没有得到应有的重视,在行业中处于落后的状态,这是我们一直非常关注的问题。1995年初,我们开始尝试由专业处自己来抓这项工作(早在70年代电力行业就已开展这方面的工作,并且卓有成效)。我们对水利水电各勘测单位的软件开发情况及开发人员状况作了一个调查,对反馈的信息进行了分析整理,并对几个勘测单位进行了实地考查。通过调查研究,我们感到勘测专业由于交流甚少,应用软件大多处于低水平的重复开发状况,造成人员和资金的浪费。因此打破各单位之间的封闭,建立良好的沟通渠道是当时急待解决的首要问题。在1995年10月召开的全国水利水电工程地质信息网学术大会上,我们首次提出了成立协作网的倡议,希望通过协作网这一组织形式来实现互相交流和推动计算机应用工作的开展。这一倡议得到了与会代表的肯定,大家认为这项工作十分必要、非常及时。接着在同年的11月份,我们在武汉召开了第二次水利水电工程地质计算机应用技术交流会,参加这次会议的主要是勘测专业的软件开发人员和使用人员。大家充分讨论了协作网对行业计算机应用工作和专业应用软件发展的意义,一致拥护组建协作网。1996年初,协作网筹建组正式成立,开始了我们这三年多来的筹建工作。3 协作网的管理意义和实际效果协作网运作实际上有其独特的管理意义。我们所说的“管理”具有自己的特色,既有行业管理的内涵,也包括协作网具体运作的方式,是打破旧的管理模式的一种尝试。协作网没有现成的管理模式可供使用,我们只有借鉴别人的经验并在实践中不断摸索。我们搜集外系统的相关计算机应用的先进成果,把它引入水利水电勘测行业,并把行业内的计算机应用经验进行推广和交流,以此来推动勘测行业计算机应用工作的进步。我们的主要工作之一就是通过《工程地质计算机应用》网刊的出版,来团结全体网员,达到交流与合作的目的,实践证明效果是好的。网刊既是网员们交流的场所,又是我们进行计算机应用工作舆论宣传的工具。借鉴计算机业界的新观念、新思想和几年来的实践与摸索,我们逐步形成了对本行业计算机应用工作的管理思路,通过与网员的交流得到了大家的认同。我们的主要观点包括:(1)抓标准软件、基础软件的开发,这是软件发展的根基。只有具备了开发层次比较高,应用、维护、拓展都比较好的标准软件和基础软件,才能使专业计算机应用软件开发有序、高速发展,这个道理就象盖高楼大厦必须要有牢固的地基一样。(2)对软件不搞鉴定。计算机业界早就不再进行所谓的软件鉴定。因为软件开发出来,自身难免存在一些问题,需要进行大量的应用测试,不断进行修正和完善。而我们行业的软件起步较晚,需完善的地方很多。如果不广泛地进行交流和应用,由用户来发现问题和进行评价,形式上的鉴定只能是纸上谈兵。(3)积极倡导各单位之间的交流与合作,以交流促发展,大力倡导自由软件这一时代潮流的产物。当今计算机界对自由软件Linux的推崇,正说明自由软件在计算机界具有特殊的生命力。自由软件精神对专业软件的发展将会产生不可估量的影响。(4)协作网是一个自愿联合组织,她所体现的是信息社会的精神。工业社会强调的是竞争,最终导致分裂和封闭;而信息社会强调的是合作与互助,强调的是团队精神。互联网的飞速发展,加速了社会的信息化进程,现在,网络上的交流完全不分国界,没有地域的限制,网络将自己的触角伸向世界的每一个角落,网络生活每天都在创造奇迹。求医、求学、求助、求职…,从中我们看到了人类互助的愿望借助网络这一桥梁得到了充分的体现,网络实现了人们过去想做而做不到的事。协作网正是顺应了这一时代潮流,把所有关心专业软件发展的人,包括软件开发人员、使用人员、部门领导、大学教授以及软件开发商等等联系在一起,通过信息的广泛交流,调动各方的积极性,建立起互惠互利的合作关系,充分发挥各方优势,互助互补,这也是通过协作网进行管理的意义。(5)在运作机制上,采取自愿入网的原则,而不使用行政手段。因为没有大量的经费作后盾,我们必须靠优质的服务和求真务实的精神来赢得网员们的支持。协作网是为了把所有关心专业软件发展的人联系在一起,因此网员并不局限于本系统的单位和个人,这也体现了协作网的开放意识。(6) 在Internet上建立工程地质计算机应用主页,使得信息的交换更为自由快捷,软件交流更为方便灵活。主页吸引了更多的计算机应用爱好者,拓展了交流范围,并起到了宣传作用,利用现代化的通信手段进行交流是我们始终追求的目标。通过这三年多的努力,协作网的工作得到了各方的肯定,确立了在全国工程地质界的位置,为水利水电行业赢得了很好的声誉。不论是工程地质界的老前辈,还是新一代年轻的地质工作者都高度评价了这项工作对专业学科进步与发展的意义。从实际效果来看,信息交流的结果同时带动了专业软件的开发和应用工作。一些软件开发较好的单位通过协作网大力宣传他们的软件,赢得了更多的用户,从而带动了软件的完善与推广工作;许多过去计算机应用工作比较落后的勘测院通过引进软件、学习外单位的先进经验,提高了自己的应用水平,在工作中尝到了甜头;一些计算机爱好者通过交流经验,交流自由软件,互相学习,共同提高;一些勘测部门的领导对计算机有了更深的认识;大学教授们也找到了发挥自己特长的空间;特别值得一提的是网刊中的一些介绍软件使用经验的文章解决了许多单位的具体应用问题…。这些都充分显示出信息的作用是威力无穷的,这是过去计划体制下用多少钱也无法办到的.而我们抓住了信息这一环节,真正改变了计算机应用工作的管理模式,使软件的开发和应用有机地结合起来,适应了信息技术的发展要求。协作网的另一实际效果还在于她发挥了很好的宣传鼓动作用。她的凝聚力表现在将过去分散的个体有机地连接在一起。她的尊重人才、鼓励创新、倡导合作的思想极大地调动了技术人员的积极性,使人才的创造热情有了发挥的空间。人们逐渐抛弃了过去封闭的意识,开始意识到合作的意义,开始走出个人的圈子,进行更广泛的交流,纷纷拿出自己多年的成果与大家共同分享。网员们的支持、理解和热情,使我们对这项工作的前景充满信心。协作网的工作效果为我们展示出现代管理的深层次意义,这也是我们行业管理部门进行改革的一大课题。在过去计划体制下,所谓管理多是针对人财物的管理,实际上只有“管”,而没有“理”。而在计划体制逐步削弱的今天,管理部门逐渐丧失了人财物支配权的情况下,是不是就不再需要进行行业管理?答案应该是否定的!任何时候、任何情况下管理都是必不可少的,只是管理的内容、管理的方式有所不同,管理对事物的发展始终起着举足轻重的作用。在当今的改革大潮中,我们是做时代的弄潮儿?还是被社会所淘汰?如果我们总是抱着固有的旧观念不思进取,必然是逆水行舟,不进则退。当前,我们正处于工业社会向信息社会转变的发展时期,新观念、新技术层出不穷,给社会的方方面面带来极大的冲击,信息的作用也变得越来越重要,信息服务将是新时期行业管理工作的一个主要内容。我们必须转变观念,以新的姿态来迎接信息社会的挑战。协作网将始终不渝地坚持全新的理念,本着求真务实的精神,为领导提供决策支持、为基层提供信息服务,尽我们应尽的责任和义务。4 协作网的发展前景在水利总院、水电总院领导的大力支持下,协作网将于今年10月正式成立,这必将大大推动协作网的工作向前发展。在过去三年多的筹建工作中,协作网主要起到了沟通信息的作用。随着协作网的正式成立,我们希望吸引更多的计算机应用爱好者加入进来,本着互助、奉献、实现自我的精神来共同发展,协作网始终为每一个有识之士尽力创造施展才华的空间;协作网除了作好宣传推广工作外,还要深入到应用软件的开发中去,加快专业软件的标准化进程,今后将更加积极寻求形式多样的合作方式,致力于开发本行业自已的高科技产品。丰富和完善工程地质主页,以更新、更吸引人的内容迎接各位网友的到来。加快行业内信息交流的网络化进程。在此,我们想进一步强调,协作网为每个网员提供了一个可以自由驰骋的大舞台,你可以尝试自己想做的每一件事,你的每一个想法都可以在网上或通过网刊发布,你可以宣传自己的软件,发表自己对软件的意见和建议,谈自己的新思想、新认识、新观点,为大家提供一些有用的信息与经验,寻求合作,提出自己急待解决的问题…,总之,让各种信息借助网络以最快的速度传播到每一个网员,使网员们能够进行更广泛的互助与交流。当然,这些美好愿望的实现还要靠全体网员以及所有关心协作网的朋友们的共同努力。我们欢迎更多的单位和个人加入到协作网中,我们也非常欢迎计算机软件公司把他们先进的技术带给我们,让我们为提高勘测行业的计算机应用水平而共同努力。
Computer paper Computer paper is a computer professional training program graduates in the compulsory aspect. Students through the writing of computer paper, the comprehensive use of computer training expertise to analyze and solve practical problems, the school has been used not only to operate in practice, the ability to put pen to paper to be very good exercise, but also greatly enhanced in the future direction of social struggle, the struggle Courage and self-confidence. Computer paper can be divided into three general categories: 1 Computer Theory 2 computer network 3, computer application Computer research papers, usually have the following four categories: An independent and complete the design of a small project or a project in an integrated plate (for example, a number of applications, tools or software designed by the board, interface, etc.), and then write a summary of research and analysis. 2, or is about to implement the project to carry out a partial analysis (needs analysis, platform selection, block, some of the modules of the detailed design). 3 comparison, the analysis of a computer in the field of advanced technology or sophisticated software to make their own specific comments and suggestions. 4 computer in the field of theoretical issues its own unique view or opinion, to correct errors or suggest improvements or solutions.
生物信息学推荐系统设计关键词:推荐系统;生物信息学推荐系统(RecommenderSystem)[1]是个性化信息服务的主要技术之一,它实现的是“信息找人,按需服务”;通过对用户信息需要、兴趣爱好和访问历史等的收集分析,建立用户模型,并将用户模型应用于网上信息的过滤和排序,从而为用户提供感兴趣的资源和信息。生物信息学(Bioinformatics)[2,3]是由生物学、应用数学和计算机科学相互交叉所形成的一门新型学科;其实质是利用信息科学的方法和技术来解决生物学问题。20世纪末生物信息学迅速发展,在信息的数量和质量上都极大地丰富了生物科学的数据资源,而数据资源的急剧膨胀需要寻求一种科学而有力的工具来组织它们,基于生物信息学的二次数据库[4]能比较好地规范生物数据的分类与组织,但是用户无法从大量的生物数据中寻求自己感兴趣的部分(著名的生物信息学网站NCBI(美国国立生物技术信息中心),仅仅是小孢子虫(Microsporidia)的DNA序列就达3399种),因此在生物二次数据库上建立个性化推荐系统,能使用户快速找到自己感兴趣的生物信息。特别是在当前生物信息数据量急剧增长的情况下,生物信息学推荐系统将发挥强大的优势。1推荐系统的工作流程应用在不同领域的推荐系统,其体系结构也不完全相同。一般而言,推荐系统的工作流程[5]如图1所示。(1)信息获取。推荐系统工作的基础是用户信息。用户信息包括用户输入的关键词、项目的有关属性、用户对项目的文本评价或等级评价及用户的行为特征等,所有这些信息均可以作为形成推荐的依据。信息获取有两种类型[6],即显式获取(Explicit)和隐式获取(Implicit),由于用户的很多行为都能暗示用户的喜好,因此隐式获取信息的准确性比显式高一些。(2)信息处理。信息获取阶段所获得的用户信息,一般根据推荐技术的不同对信息进行相应的处理。用户信息的存储格式中用得最多的是基于数值的矩阵格式,最常用的是用m×n维的用户—项目矩阵R来表示,矩阵中的每个元素Rij=第i个用户对第j个项目的评价,可以当做数值处理,矩阵R被称为用户—项目矩阵。(3)个性化推荐。根据形成推荐的方法的不同可以分为三种,即基于规则的系统、基于内容过滤的系统和协同过滤系统。基于规则的推荐系统和基于内容过滤的推荐系统均只能为用户推荐过去喜欢的项目和相似的项目,并不能推荐用户潜在感兴趣的项目。而协同过滤系统能推荐出用户近邻所喜欢的项目,通过用户与近邻之间的“交流”,发现用户潜在的兴趣。因此本文所用的算法是基于协同过滤的推荐算法。(4)推荐结果。显示的任务是把推荐算法生成的推荐显示给用户,完成对用户的推荐。目前最常用的推荐可视化方法是Top-N列表[7],按照从大到小顺序把推荐分值最高的N个事物或者最权威的N条评价以列表的形式显示给用户。2生物信息学推荐系统的设计综合各种推荐技术的性能与优缺点,本文构造的生物信息学推荐系统的总体结构如图2所示。生物信息学推荐系统实现的主要功能是在用户登录生物信息学网站时,所留下的登录信息通过网站传递到推荐算法部分;推荐算法根据该用户的用户名从数据库提取出推荐列表,并返回到网站的用户界面;用户访问的记录返回到数据库,系统定时调用推荐算法,对数据库中用户访问信息的数据进行分析计算,形成推荐列表。本系统采用基于近邻的协同过滤推荐算法,其结构可以进一步细化为如图3所示。算法分为邻居形成和推荐形成两大部分,两部分可以独立进行。这是该推荐系统有别于其他系统的优势之一。由于信息获取后的用户—项目矩阵维数较大,使得系统的可扩展性降低。本系统采用SVD矩阵降维方法,减少用户—项目矩阵的维数,在计算用户相似度时大大降低了运算的次数,提高了推荐算法的效率。(1)信息获取。用户对项目的评价是基于用户对某一个项目(为表示简单,以下提及的项目均指网站上的生物物种)的点击次数来衡量的。当一个用户注册并填写好个人情况以后,系统会自动为该用户创建一个“信息矩阵”,该矩阵保存了所有项目的ID号以及相应的用户评价,保存的格式为:S+编号+用户评价,S用于标记项目,每个项目编号及其评价都以“S”相隔开;编号是唯一的,占5位;用户评价是用户点击该项目的次数,规定其范围是0~100,系统设定当增加到100时不再变化。这样做可防止形成矩阵时矩阵评价相差值过大而使推荐结果不准确。(2)信息处理。信息处理是将所有用户的信息矩阵转换为用户—项目矩阵,使用户信息矩阵数值化,假设系统中有M个用户和N个项目,信息处理的目的就是创建一个M×N的矩阵R,R[I][J]代表用户I对项目J的评价。(3)矩阵处理。协同过滤技术的用户—项目矩阵的数据表述方法所带来的稀疏性严重制约了推荐效果,而且在系统较大的情况下,它既不能精确地产生推荐集,又忽视了数据之间潜在的关系,发现不了用户潜在的兴趣,而且庞大的矩阵增加了计算的复杂度,因此有必要对该矩阵的表述方式做优化,进行矩阵处理。维数简化是一种较好的方法,本文提出的算法应用单值分解(SingularValueDecomposition,SVD)技术[8],对用户—项目矩阵进行维数简化。(4)相似度计算。得到降维以后的用户矩阵US,就可以寻找每个用户的近邻。近邻的确定是通过两个用户的相似度来度量的。本文采用Pearson相关度因子[9]求相似度。(5)计算用户邻居。该方法有两种[10],即基于中心的邻居(Center-BasedNeighbor)和集合邻居(AggregateNeighbor)。本系统采用了第一种方法,直接找出与用户相似度最高的前N个用户作为邻居,邻居个数N由系统设定,比如规定N=5。(6)推荐形成。推荐形成的前提是把当前用户的邻居ID号及其与当前用户的相似度保存到数据库中,而在前面的工作中已找出各用户的邻居以及与用户的相似度,推荐形成部分只需要对当前登录用户进行计算。推荐策略是:对当前用户已经访问过的项目不再进行推荐,推荐的范围是用户没有访问的项目,其目的是推荐用户潜在感兴趣的项目;考虑到系统的项目比较多,用户交互项目的数量很大,所以只筛选出推荐度最大的N个项目,形成Top-N推荐集,设定N=5。3生物信息学推荐系统的实现生物信息学推荐系统的实现可以用图4来表示。数据库部分主要存储用户信息和项目信息,用SQLServer2000实现。数据访问层实现了与用户交互必需的存储过程以及触发器,也使用SQLServer2000,主要完成以下功能:初始化新用户信息矩阵;插入新项目时更新所有用户的信息矩阵;用户点击项目时更新该用户对项目的评价;删除项目时更新所有用户的信息矩阵。用户访问层主要涉及网页与用户的交互和调用数据访问层的存储过程,在这里不做详细的介绍。推荐算法完成整个个性化推荐的任务,用Java实现。(1)数据连接类DataCon。该类完成与SQLServer2000数据库的连接,在连接之前必须要下载三个与SQLServer连接相关的包,即msutil.jar、msbase.jar和mssqlserver.jar。(2)数据操作类DataControl。该类负责推荐算法与数据库的数据交换,静态成员Con调用DataCon.getcon()获得数据库连接,然后对数据库进行各种操作。把所有方法编写成静态,便于推荐算法中不创建对象就可以直接调用。(3)RecmmendSource与CurrentUserNeighbor。这两个类作为FCRecommand类的内部类,RecmmendSource用于保存当前用户的推荐列表,包括推荐项目号和推荐度;CurrentUserNeighbor用于保存邻居信息,包括邻居ID号、相似度及其访问信息。(4)协同过滤推荐算法FCRecommand。该类实现了整个推荐算法,主要分为邻居形成方法FCArithmetic和推荐形成方法GenerateRecommend。下面给出方法FCArithmetic的关键代码:Matrixuser_item=this.User_Item_Arry();//获取用户—项目矩阵user_item=this.SVD_Calculate(user_item);//调用SVD降维方法Vectorc_uservector=newVector();//当前用户向量Vectoro_uservector=newVector();//其他用户向量Vectorc_user_correlate_vector=newVector();//当前用户与其他用户之间相似度向量for(inti=0;ifor(intj=0;jc_uservector.addElement(user_item.get(i,j));//1.获得当前用户向量for(intk=0;ko_uservector.clear();for(intl=0;lo_uservector.addElement(user_item.get(k,l));//2.获得其他用户的向量//3.计算当前用户与其他用户的相似度usercorrelativity=this.Correlativity(c_uservector,o_uservector);c_user_correlate_vector.addElement(usercorrelativity);}//4.根据当前用户与其他用户的相似度,计算其邻居this.FindUserNeighbor(i,c_user_correlate_vector);}根据邻居形成方法FCArithmetic,可以得到每个用户的邻居。作为测试用例,图6显示用户Jack与系统中一部分用户的相似度,可以看出它与自己的相似度必定最高;并且它与用户Sugx访问了相同的项目,它们之间的相似度也为1,具有极高的相似度。4结束语在传统推荐系统的基础上,结合当前生物信息学网站的特点,提出一个基于生物信息平台的推荐系统,解决了传统生物信息网站平台信息迷茫的缺点,为用户推荐其感兴趣物种的DNA或蛋白质序列。优点在于协同过滤的推荐算法能发现用户潜在的兴趣,能促进生物学家之间的交流;推荐算法的邻居形成与推荐形成两部分可以单独运行,减少了系统的开销。进一步的工作是分析生物数据的特点及生物数据之间的关系,增加用户和项目数量,更好地发挥推荐系统的优势。参考文献:[1]PAULR,HALRV.Recommendersystems[J].CommunicationsoftheACM,1997,40(3):56-58.[2]陈新.生物信息学简介[EB/OL].(2001).http://166.111.68.168/bioinfo/papers/Chen_Xin.pdf.[3]林毅申,林丕源.基于WebServices的生物信息解决方案[J].计算机应用研究,2005,22(6):157-158,164.[4]邢仲璟,林丕源,林毅申.基于Bioperl的生物二次数据库建立及应用[J].计算机系统应用,2004(11):58-60.
226 浏览 6 回答
348 浏览 2 回答
234 浏览 3 回答
161 浏览 4 回答
345 浏览 5 回答
237 浏览 3 回答
320 浏览 3 回答
294 浏览 2 回答
132 浏览 2 回答
240 浏览 2 回答
276 浏览 4 回答
242 浏览 5 回答
177 浏览 5 回答
81 浏览 3 回答
307 浏览 3 回答