❶ 大数据专业需要学习什么语言
1、大数据专业一般学习的语言都是Python。Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。尤其是在大数据领域,使用越来越广泛。
2、也可以学习JAVA,java语言是现阶段全球范围使用最广泛的语言,在大数据领域也可以使用。
3、也可以使用R语言。R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。
4、希望对你有帮助。
❷ 生物背景入门生物信息学,需要补哪些计算机知识
学会Linux的基础操作,譬如常见的ls,grep,less,ark等即可。当然最开始接触Linux的时候会各种不习惯,比较好的学习手段是把自己的笔记本装成Linux,大多数人喜欢mate界面的fedora。然后在Linux里听歌看电影,如果写文档就用虚拟机或者bps。这么用个1-2个月就比较舒服了。学一门编程语言,会简单的文本处理。现在知乎上首推python,据说语法清晰入门简单。认认真真看个1个月加练习,基本上普通的文本处理就没什么问题了。本条目可以和第一条一起用,在Linux下用python有加乘效果。如果想稍微进阶一下,需要学习和了解常见的数据结构,譬如什么是二叉树,什么是哈希表,什么是链表,哈希碰撞是怎么产生的,链表相对数组有哪些性能优劣等等。这些基础数据结构大概花费几天即可掌握,不需要深入。如果在处理文本时能使用恰当的数据结构,则会事半功倍。那么如果能花1-2个月把上述问题都搞明白了,顺便做个简单的项目,譬如写个fast.Oz的过滤脚本,那么后面的进度就很简单了。目前主流二代测序的数据分析本质来说也就是用些开源软件倒腾下然后网上找公开数据库折腾。并没有多高的技术壁垒。反而是对生物学意义的理解更为重要。最后,编写代码方面,需要一些技能是光上一点基础课学不来的,必须在战争中学习战争。比如说会写了python或者C,java,但是还是需要一些高级技术以及技术细节。之前在做测序数据分析的时候要求写成并行的程序,这样服务器跑起来快,免得结果等好几天。如此种种还有很多,解决程序运行中出现的形形色色的幺蛾子需要扎实的经验积累。
❸ 大数据处理需要用到的九种编程语言
大数据处理需要用到的九种编程语言
随着大数据的热潮不断升温,几乎各个领域都有洪水倾泻般的信息涌来,面对用户成千上万的浏览记录、记录行为数据,如果就单纯的Excel来进行数据处理是远远不能满足的。但如果只用一些操作软件来分析,而不怎么如何用逻辑数据来分析的话,那也只是简单的数据处理。
替代性很高的工作,而无法深入规划策略的核心。
当然,基本功是最不可忽略的环节,想要成为数据科学家,对于这几个程序你应该要有一定的认识:
R若要列出所有程序语言,你能忘记其他的没关系,但最不能忘的就是R。从1997年悄悄地出现,最大的优势就是它免费,为昂贵的统计软件像是Matlab或SAS的另一种选择。
但是在过去几年来,它的身价大翻转,变成了资料科学界眼中的宝。不只是木讷的统计学家熟知它,包括WallStreet交易员、生物学家,以及硅谷开发者,他们都相当熟悉R。多元化的公司像是Google、Facebook、美国银行以及NewYorkTimes通通都使用R,它的商业效用持续提高。
R的好处在于它简单易上手,透过R,你可以从复杂的数据集中筛选你要的数据,从复杂的模型函数中操作数据,建立井然有序的图表来呈现数字,这些都只需要几行程序代码就可以了,打个比方,它就像是好动版本的Excel。
R最棒的资产就是活跃的动态系统,R社群持续地增加新的软件包,还有以内建丰富的功能集为特点。目前估计已有超过200万人使用R,最近的调查显示,R在数据科学界里,到目前为止最受欢迎的语言,占了回复者的61%(紧追在后的是39%的Python)。
它也吸引了WallStreet的注目。传统而言,证券分析师在Excel档从白天看到晚上,但现在R在财务建模的使用率逐渐增加,特别是可视化工具,美国银行的副总裁NiallO’Conno说,“R让我们俗气的表格变得突出”。
在数据建模上,它正在往逐渐成熟的专业语言迈进,虽然R仍受限于当公司需要制造大规模的产品时,而有的人说他被其他语言篡夺地位了。
“R更有用的是在画图,而不是建模。”顶尖数据分析公司Metamarkets的CEO,MichaelDriscoll表示,
“你不会在Google的网页排名核心或是Facebook的朋友们推荐算法时看到R的踪影,工程师会在R里建立一个原型,然后再到Java或Python里写模型语法”。
举一个使用R很有名的例子,在2010年时,PaulButler用R来建立Facebook的世界地图,证明了这个语言有多丰富多强大的可视化数据能力,虽然他现在比以前更少使用R了。
“R已经逐渐过时了,在庞大的数据集底下它跑的慢又笨重”Butler说。
所以接下来他用什么呢?
Python如果说R是神经质又令人喜爱的Geek,那Python就是随和又好相处的女生。
Python结合了R的快速、处理复杂数据采矿的能力以及更务实的语言等各个特质,迅速地成为主流,Python比起R,学起来更加简单也更直观,而且它的生态系统近几年来不可思议地快速成长,在统计分析上比起R功能更强。
Butler说,“过去两年间,从R到Python地显着改变,就像是一个巨人不断地推动向前进”。
在数据处理范畴内,通常在规模与复杂之间要有个取舍,而Python以折衷的姿态出现。IPythonNotebook(记事本软件)和NumPy被用来暂时存取较低负担的工作量,然而Python对于中等规模的数据处理是相当好的工具;Python拥有丰富的资料族,提供大量的工具包和统计特征。
美国银行用Python来建立新产品和在银行的基础建设接口,同时也处理财务数据,“Python是更广泛又相当有弹性,所以大家会对它趋之若鹜。”O’Donnell如是说。
然而,虽然它的优点能够弥补R的缺点,它仍然不是最高效能的语言,偶尔才能处理庞大规模、核心的基础建设。Driscoll是这么认为的。
Julia今日大多数的数据科学都是透过R、Python、Java、Matlab及SAS为主,但仍然存在着鸿沟要去弥补,而这个时候,新进者Julia看到了这个痛点。
Julia仍太过于神秘而尚未被业界广泛的采用,但是当谈到它的潜力足以抢夺R和Python的宝座时,数据黑客也难以解释。原因在于Julia是个高阶、不可思议的快速和善于表达的语言,比起R要快的许多,比起Python又有潜力处理更具规模的数据,也很容易上手。
“Julia会变的日渐重要,最终,在R和Python可以做的事情在Julia也可以”。Butler是这么认为的。
就现在而言,若要说Julia发展会倒退的原因,大概就是它太年轻了。Julia的数据小区还在初始阶段,在它要能够和R或Python竞争前,它还需要更多的工具包和软件包。
Driscoll说,它就是因为它年轻,才会有可能变成主流又有前景。
JavaDriscoll说,Java和以Java为基础的架构,是由硅谷里最大的几家科技公司的核心所建立的,如果你从Twitter、Linkedin或是Facebook里观察,你会发现Java对于所有数据工程基础架构而言,是非常基础的语言。
Java没有和R和Python一样好的可视化功能,它也不是统计建模的最佳工具,但是如果你需要建立一个庞大的系统、使用过去的原型,那Java通常会是你最基的选择。
Hadoop and Hive
为了迎合大量数据处理的需求,以Java为基础的工具群兴起。Hadoop为处理一批批数据处理,发展以Java为基础的架构关键;相较于其他处理工具,Hadoop慢许多,但是无比的准确和可被后端数据库分析广泛使用。和Hive搭配的很好,Hive是基于查询的架构下,运作的相当好。
Scala又是另一个以Java为基础的语言,和Java很像,对任何想要进行大规模的机械学习或是建立高阶的算法,Scala会是逐渐兴起的工具。它是善于呈现且拥有建立可靠系统的能力。
“Java像是用钢铁建造的;Scala则是让你能够把它拿进窑烤然后变成钢的黏土”Driscoll说。
Kafka andStorm说到当你需要快速的、实时的分析时,你会想到什么?Kafka将会是你的最佳伙伴。其实它已经出现五年有了,只是因为最近串流处理兴起才变的越来越流行。
Kafka是从Linkedin内诞生的,是一个特别快速的查询讯息系统。Kafka的缺点呢?就是它太快了,因此在实时操作时它会犯错,有时候会漏掉东西。
鱼与熊掌不可兼得,“必须要在准确度跟速度之间做一个选择”,Driscoll说。所以全部在硅谷的科技大公司都利用两个管道:用Kafka或Storm处理实时数据,接下来打开Hadoop处理一批批处理数据系统,这样听起来有点麻烦又会有些慢,但好处是,它非常非常精准。
Storm是另一个从Scala写出来的架构,在硅谷逐渐大幅增加它在串流处理的受欢迎程度,被Twitter并购,这并不意外,因为Twitter对快速事件处理有极大的兴趣。
MatlabMatlab可以说是历久不衰,即使它标价很高;在非常特定的利基市场它使用的相当广泛,包括密集的研究机器学习、信号处理、图像辨识等等。
OctaveOctave和Matlab很像,除了它是免费的之外。然而,在学术信号处理的圈子,几乎都会提到它。
GOGO是另一个逐渐兴起的新进者,从Google开发出来的,放宽点说,它是从C语言来的,并且在建立强大的基础架构上,渐渐地成为Java和Python的竞争者。
这么多的软件可以使用,但我认为不见得每个都一定要会才行,知道你的目标和方向是什么,就选定一个最适合的工具使用吧!可以帮助你提升效率又达到精准的结果。
以上是小编为大家分享的关于大数据处理需要用到的九种编程语言的相关内容,更多信息可以关注环球青藤分享更多干货
❹ 生物信息分析师都需要具备哪些技能
1. 计算生物学、统计学、机器学习、生物信息学等相关专业
2. 国内毕业者需硕士学位或以上 (或国内本科及两年以上相关工作经验) / 海归人员需国外的本科学位或以上
3. 熟悉Linux/Unix操作系统,有HPC环境背景优先考虑
4. 熟悉生信流程创建
5. 精通PerI、R (如会Matlab、Python、C/C++中两种以上编程语言可加分)
6. 具备较强的中英文文献查询与阅读能力,并做英文书面报告
7. 精通单细胞、高通量测序数据的分析全流程者优先考虑
❺ 生物信息学
一, 生物信息学发展简介
生物信息学是建立在分子生物学的基础上的,因此,要了解生物信息学,就
必须先对分子生物学的发展有一个简单的了解.研究生物细胞的生物大分子的结
构与功能很早就已经开始,1866年孟德尔从实验上提出了假设:基因是以生物
成分存在[1],1871年Miescher从死的白细胞核中分离出脱氧核糖核酸(DNA),
在Avery和McCarty于1944年证明了DNA是生命器官的遗传物质以前,人们
仍然认为染色体蛋白质携带基因,而DNA是一个次要的角色.
1944年Chargaff发现了着名的Chargaff规律,即DNA中鸟嘌呤的量与胞嘧
定的量总是相等,腺嘌呤与胸腺嘧啶的量相等.与此同时,Wilkins与Franklin
用X射线衍射技术测定了DNA纤维的结构.1953年James Watson 和Francis
Crick在Nature杂志上推测出DNA的三维结构(双螺旋).DNA以磷酸糖链形
成发双股螺旋,脱氧核糖上的碱基按Chargaff规律构成双股磷酸糖链之间的碱基
对.这个模型表明DNA具有自身互补的结构,根据碱基对原则,DNA中贮存的
遗传信息可以精确地进行复制.他们的理论奠定了分子生物学的基础.
DNA双螺旋模型已经预示出了DNA复制的规则,Kornberg于1956年从大
肠杆菌(E.coli)中分离出DNA聚合酶I(DNA polymerase I),能使4种dNTP连接
成DNA.DNA的复制需要一个DNA作为模板.Meselson与Stahl(1958)用实验
方法证明了DNA复制是一种半保留复制.Crick于1954年提出了遗传信息传递
的规律,DNA是合成RNA的模板,RNA又是合成蛋白质的模板,称之为中心
法则(Central dogma),这一中心法则对以后分子生物学和生物信息学的发展都起
到了极其重要的指导作用.
经过Nirenberg和Matthai(1963)的努力研究,编码20氨基酸的遗传密码
得到了破译.限制性内切酶的发现和重组DNA的克隆(clone)奠定了基因工程
的技术基础.
正是由于分子生物学的研究对生命科学的发展有巨大的推动作用,生物信息
学的出现也就成了一种必然.
2001年2月,人类基因组工程测序的完成,使生物信息学走向了一个高潮.
由于DNA自动测序技术的快速发展,DNA数据库中的核酸序列公共数据量以每
天106bp速度增长,生物信息迅速地膨胀成数据的海洋.毫无疑问,我们正从一
个积累数据向解释数据的时代转变,数据量的巨大积累往往蕴含着潜在突破性发
现的可能,"生物信息学"正是从这一前提产生的交叉学科.粗略地说,该领域
的核心内容是研究如何通过对DNA序列的统计计算分析,更加深入地理解DNA
序列,结构,演化及其与生物功能之间的关系,其研究课题涉及到分子生物学,
分子演化及结构生物学,统计学及计算机科学等许多领域.
生物信息学是内涵非常丰富的学科,其核心是基因组信息学,包括基因组信
息的获取,处理,存储,分配和解释.基因组信息学的关键是"读懂"基因组的核
苷酸顺序,即全部基因在染色体上的确切位置以及各DNA片段的功能;同时在
发现了新基因信息之后进行蛋白质空间结构模拟和预测,然后依据特定蛋白质的
功能进行药物设计[2].了解基因表达的调控机理也是生物信息学的重要内容,根
据生物分子在基因调控中的作用,描述人类疾病的诊断,治疗内在规律.它的研
究目标是揭示"基因组信息结构的复杂性及遗传语言的根本规律",解释生命的遗
传语言.生物信息学已成为整个生命科学发展的重要组成部分,成为生命科学研
究的前沿.
二, 生物信息学的主要研究方向
生物信息学在短短十几年间,已经形成了多个研究方向,以下简要介绍一些
主要的研究重点.
1,序列比对(Sequence Alignment)
序列比对的基本问题是比较两个或两个以上符号序列的相似性或不相似
性.从生物学的初衷来看,这一问题包含了以下几个意义[3]:
从相互重叠的序列片断中重构DNA的完整序列.
在各种试验条件下从探测数据(probe data)中决定物理和基因图
存贮,遍历和比较数据库中的DNA序列
比较两个或多个序列的相似性
在数据库中搜索相关序列和子序列
寻找核苷酸(nucleotides)的连续产生模式
找出蛋白质和DNA序列中的信息成分
序列比对考虑了DNA序列的生物学特性,如序列局部发生的插入,删除(前
两种简称为indel)和替代,序列的目标函数获得序列之间突变集最小距离加权
和或最大相似性和,对齐的方法包括全局对齐,局部对齐,代沟惩罚等.两个
序列比对常采用动态规划算法,这种算法在序列长度较小时适用,然而对于海
量基因序列(如人的DNA序列高达109bp),这一方法就不太适用,甚至采用算
法复杂性为线性的也难以奏效.因此,启发式方法的引入势在必然,着名的
BALST和FASTA算法及相应的改进方法均是从此前提出发的.
2, 蛋白质结构比对和预测
基本问题是比较两个或两个以上蛋白质分子空间结构的相似性或不相似性.
蛋白质的结构与功能是密切相关的,一般认为,具有相似功能的蛋白质结构一般
相似.蛋白质是由氨基酸组成的长链,长度从50到1000~3000AA(Amino Acids),
蛋白质具有多种功能,如酶,物质的存贮和运输,信号传递,抗体等等.氨基酸
的序列内在的决定了蛋白质的3维结构.一般认为,蛋白质有四级不同的结构.
研究蛋白质结构和预测的理由是:医药上可以理解生物的功能,寻找docking
drugs的目标,农业上获得更好的农作物的基因工程,工业上有利用酶的合成.
直接对蛋白质结构进行比对的原因是由于蛋白质的3维结构比其一级结构
在进化中更稳定的保留,同时也包含了较AA序列更多的信息.
蛋白质3维结构研究的前提假设是内在的氨基酸序列与3维结构一一对应
(不一定全真),物理上可用最小能量来解释.
从观察和总结已知结构的蛋白质结构规律出发来预测未知蛋白质的结构.同
源建模(homology modeling)和指认(Threading)方法属于这一范畴.同源建模用
于寻找具有高度相似性的蛋白质结构(超过30%氨基酸相同),后者则用于比较
进化族中不同的蛋白质结构.
然而,蛋白结构预测研究现状还远远不能满足实际需要.
3, 基因识别,非编码区分析研究.
基因识别的基本问题是给定基因组序列后,正确识别基因的范围和在基因组
序列中的精确位置.非编码区由内含子组成(introns),一般在形成蛋白质后被丢
弃,但从实验中,如果去除非编码区,又不能完成基因的复制.显然,DNA序
列作为一种遗传语言,既包含在编码区,又隐含在非编码序列中.分析非编码
区DNA序列目前没有一般性的指导方法.
在人类基因组中,并非所有的序列均被编码,即是某种蛋白质的模板,已
完成编码部分仅占人类基因总序列的3~5%,显然,手工的搜索如此大的基因序
列是难以想象的.
侦测密码区的方法包括测量密码区密码子(codon)的频率,一阶和二阶马尔
可夫链,ORF(Open Reading Frames),启动子(promoter)识别,HMM(Hidden
Markov Model)和GENSCAN,Splice Alignment等等.
4, 分子进化和比较基因组学
分子进化是利用不同物种中同一基因序列的异同来研究生物的进化,构建进
化树.既可以用DNA序列也可以用其编码的氨基酸序列来做,甚至于可通过相
关蛋白质的结构比对来研究分子进化,其前提假定是相似种族在基因上具有相似
性.通过比较可以在基因组层面上发现哪些是不同种族中共同的,哪些是不同的.
早期研究方法常采用外在的因素,如大小,肤色,肢体的数量等等作为进化
的依据.近年来较多模式生物基因组测序任务的完成,人们可从整个基因组的角
度来研究分子进化.在匹配不同种族的基因时,一般须处理三种情况:
Orthologous: 不同种族,相同功能的基因
Paralogous: 相同种族,不同功能的基因
Xenologs: 有机体间采用其他方式传递的基因,如被病毒注入的基因.
这一领域常采用的方法是构造进化树,通过基于特征(即DNA序列或蛋白
质中的氨基酸的碱基的特定位置)和基于距离(对齐的分数)的方法和一些传统
的聚类方法(如UPGMA)来实现.
5, 序列重叠群(Contigs)装配
根据现行的测序技术,每次反应只能测出500 或更多一些碱基对的序列,
如人类基因的测量就采用了短枪(shortgun)方法,这就要求把大量的较短的序列
全体构成了重叠群(Contigs).逐步把它们拼接起来形成序列更长的重叠群,直
至得到完整序列的过程称为重叠群装配.从算法层次来看,序列的重叠群是一个
NP-完全问题.
6, 遗传密码的起源
通常对遗传密码的研究认为,密码子与氨基酸之间的关系是生物进化历史上
一次偶然的事件而造成的,并被固定在现代生物的共同祖先里,一直延续至今.
不同于这种"冻结"理论,有人曾分别提出过选择优化,化学和历史等三种学说
来解释遗传密码.随着各种生物基因组测序任务的完成,为研究遗传密码的起源
和检验上述理论的真伪提供了新的素材.
7, 基于结构的药物设计
人类基因工程的目的之一是要了解人体内约10万种蛋白质的结构,功能,
相互作用以及与各种人类疾病之间的关系,寻求各种治疗和预防方法,包括药物
治疗.基于生物大分子结构及小分子结构的药物设计是生物信息学中的极为重要
的研究领域.为了抑制某些酶或蛋白质的活性,在已知其蛋白质3级结构的基础
上,可以利用分子对齐算法,在计算机上设计抑制剂分子,作为候选药物.这一
领域目的是发现新的基因药物,有着巨大的经济效益.
8, 其他
如基因表达谱分析,代谢网络分析;基因芯片设计和蛋白质组学数据分析等,
逐渐成为生物信息学中新兴的重要研究领域;在学科方面,由生物信息学衍生的
学科包括结构基因组学,功能基因组学,比较基因组学,蛋白质学,药物基因组
学,中药基因组学,肿瘤基因组学,分子流行病学和环境基因组学.
从现在的发展不难看出,基因工程已经进入了后基因组时代.我们也有应对
与生物信息学密切相关的如机器学习,和数学中可能存在的误导有一个清楚的认
识.
三, 生物信息学与机器学习
生物信息的大规模给数据挖掘提出了新课题和挑战,需要新的思想的加入.
常规的计算机算法仍可以应用于生物数据分析中,但越来越不适用于序列分析问
题.究竟原因,是由于生物系统本质上的模型复杂性及缺乏在分子层上建立的完
备的生命组织理论.
西蒙曾给出学习的定义:学习是系统的变化,这种变化可使系统做相同工作
时更有效[4].机器学习的目的是期望能从数据中自动地获得相应的理论,通过采
用如推理,模型拟合及从样本中学习,尤其适用于缺乏一般性的理论,"噪声"
模式,及大规模数据集.因此,机器学习形成了与常规方法互补的可行的方法.
机器学习使得利用计算机从海量的生物信息中提取有用知识,发现知识成为可能
[5].
机器学习方法在大样本,多向量的数据分析工作中发挥着日益重要的作用,
而目前大量的基因数据库处理需要计算机能自动识别,标注,以避免即耗时又花
费巨大的人工处理方法.早期的科学方法—观测和假设----面对高数据的体积,
快速的数据获取率和客观分析的要求---已经不能仅依赖于人的感知来处理了.因
而,生物信息学与机器学习相结合也就成了必然.
机器学习中最基本的理论框架是建立在概率基础上的,从某种意义来说,是
统计模型拟合的延续,其目的均为提取有用信息.机器学习与模式识别和统计推
理密切相关.学习方法包括数据聚类,神经网络分类器和非线性回归等等.隐马
尔可夫模型也广泛用于预测DNA的基因结构.目前研究重心包括:1)观测和
探索有趣的现象.目前ML研究的焦点是如何可视化和探索高维向量数据.一般
的方法是将其约简至低维空间,如常规的主成分分析(PCA),核主成分分析
(KPCA),独立成分分析(Independent component analysis),局部线性嵌套(Locally
Linear embedding).2)生成假设和形式化模型来解释现象[6].大多数聚类方法可
看成是拟合向量数据至某种简单分布的混合.在生物信息学中聚类方法已经用于
microarray数据分析中,癌症类型分类及其他方向中.机器学习也用于从基因数
据库中获得相应的现象解释.
机器学习加速了生物信息学的进展,也带了相应的问题.机器学习方法大多
假定数据符合某种相对固定的模型,而一般数据结构通常是可变的,在生物信息
学中尤其如此,因此,有必要建立一套不依赖于假定数据结构的一般性方法来寻
找数据集的内在结构.其次,机器学习方法中常采用"黑箱"操作,如神经网络
和隐马尔可夫模型,对于获得特定解的内在机理仍不清楚.
四, 生物信息学的数学问题
生物信息学中数学占了很大的比重.统计学,包括多元统计学,是生物信息
学的数学基础之一;概率论与随机过程理论,如近年来兴起的隐马尔科夫链模型
(HMM),在生物信息学中有重要应用;其他如用于序列比对的运筹学;蛋白质
空间结构预测和分子对接研究中采用的最优化理论;研究DNA超螺旋结构的拓
扑学;研究遗传密码和DNA序列的对称性方面的群论等等.总之,各种数学理
论或多或少在生物学研究中起到了相应的作用.
但并非所有的数学方法在引入生物信息学中都能普遍成立的,以下以统计学
和度量空间为例来说明.
1, 统计学的悖论
数学的发展是伴随悖论而发展的.对于进化树研究和聚类研究中最显着的悖
论莫过于均值了,如图1:
图1 两组同心圆的数据集
图1是两组同心圆构成的数据集,显然,两组数据集的均值均在圆点,这也
就说明了要采用常规的均值方法不能将这两类分开,也表明均值并不能带来更多
的数据的几何性质.那么,如果数据呈现类似的特有分布时,常有的进化树算法
和聚类算法(如K-均值)往往会得错误的结论.统计上存在的陷阱往往是由于
对数据的结构缺乏一般性认识而产生的.
2, 度量空间的假设
在生物信息学中,进化树的确立,基因的聚类等都需要引入度量的概念.举
例来说,距离上相近或具有相似性的基因等具有相同的功能,在进化树中满足分
值最小的具有相同的父系,这一度量空间的前提假设是度量在全局意义下成立.
那么,是否这种前提假设具有普适性呢
我们不妨给出一般的描述:假定两个向量为A,B,其中,
,则在假定且满足维数间线性无关的前提下,两个
向量的度量可定义为:
(1)
依据上式可以得到满足正交不变运动群的欧氏度量空间,这也是大多数生物信息
学中常采用的一般性描述,即假定了变量间线性无关.
然而,这种假设一般不能正确描述度量的性质,尤其在高维数据集时,不考
虑数据变量间的非线性相关性显然存在问题,由此,我们可以认为,一个正确的
度量公式可由下式给出:
(2)
上式中采用了爱因斯坦和式约定,描述了变量间的度量关系.后者在满足
(3)
时等价于(1),因而是更一般的描述,然而问题在于如何准确描述变量间的非线
性相关性,我们正在研究这个问题.
五, 几种统计学习理论在生物信息学中应用的困难
生物信息学中面对的数据量和数据库都是规模很大的,而相对的目标函数却
一般难以给出明确的定义.生物信息学面临的这种困难,可以描述成问题规模的
巨大以及问题定义的病态性之间的矛盾,一般从数学上来看,引入某个正则项来
改善性能是必然的[7].以下对基于这一思想产生的统计学习理论[8],Kolmogorov
复杂性[98]和BIC(Bayesian Information Criterion)[109]及其存在的问题给出简要介
绍.
支持向量机(SVM)是近来较热门的一种方法,其研究背景是Vapnik的统计
学习理论,是通过最大化两个数据集的最大间隔来实现分类,对于非线性问题则
采用核函数将数据集映射至高维空间而又无需显式描述数据集在高维空间的性
质,这一方法较之神经方法的好处在于将神经网络隐层的参数选择简化为对核函
数的选择,因此,受到广泛的注意.在生物信息学中也开始受到重视,然而,核
函数的选择问题本身是一个相当困难的问题,从这个层次来看,最优核函数的选
择可能只是一种理想,SVM也有可能象神经网络一样只是机器学习研究进程中
又一个大气泡.
Kolmogorov复杂性思想与统计学习理论思想分别从不同的角度描述了学习
的性质,前者从编码的角度,后者基于有限样本来获得一致收敛性.Kolmogorov
复杂性是不可计算的,因此由此衍生了MDL原则(最小描述长度),其最初只
适用于离散数据,最近已经推广至连续数据集中,试图从编码角度获得对模型参
数的最小描述.其缺陷在于建模的复杂性过高,导致在大数据集中难以运用.
BIC准则从模型复杂性角度来考虑,BIC准则对模型复杂度较高的给予大的
惩罚,反之,惩罚则小,隐式地体现了奥卡姆剃刀("Occam Razor")原理,近
年也广泛应用于生物信息学中.BIC准则的主要局限是对参数模型的假定和先验
的选择的敏感性,在数据量较大时处理较慢.因此,在这一方面仍然有许多探索
的空间.
六, 讨论与总结
人类对基因的认识,从以往的对单个基因的了解,上升到在整个基因组水平
上考察基因的组织结构和信息结构,考察基因之间在位置,结构和功能上的相互
关系.这就要求生物信息学在一些基本的思路上要做本质的观念转变,本节就这
些问题做出探讨和思索.
启发式方法:
Simond在人类的认知一书中指出,人在解决问题时,一般并不去寻找最优
的方法,而只要求找到一个满意的方法.因为即使是解决最简单的问题,要想得
到次数最少,效能最高的解决方法也是非常困难的.最优方法和满意方法之间的
困难程度相差很大,后者不依赖于问题的空间,不需要进行全部搜索,而只要能
达到解决的程度就可以了.正如前所述,面对大规模的序列和蛋白质结构数据集,
要获得全局结果,往往是即使算法复杂度为线性时也不能够得到好的结果,因此,
要通过变换解空间或不依赖于问题的解空间获得满意解,生物信息学仍需要人工
智能和认知科学对人脑的进一步认识,并从中得到更好的启发式方法.
问题规模不同的处理:
Marvin Minsky在人工智能研究中曾指出:小规模数据量的处理向大规模数
据量推广时,往往并非算法上的改进能做到的,更多的是要做本质性的变化.这
好比一个人爬树,每天都可以爬高一些,但要想爬到月球,就必须采用其他方法
一样.在分子生物学中,传统的实验方法已不适应处理飞速增长的海量数据.同
样,在采用计算机处理上,也并非依靠原有的计算机算法就能够解决现有的数据
挖掘问题.如在序列对齐(sequence Alignment)问题上,在小规模数据中可以采用
动态规划,而在大规模序列对齐时不得不引入启发式方法,如BALST,FASTA.
乐观中的隐扰
生物信息学是一门新兴学科,起步于20世纪90年代,至今已进入"后基因
组时代",目前在这一领域的研究人员均呈普遍乐观态度,那么,是否存在潜在
的隐扰呢
不妨回顾一下早期人工智能的发展史[11],在1960年左右,西蒙曾相信不出
十年,人类即可象完成登月一样完成对人的模拟,造出一个与人智能行为完全相
同的机器人.而至今为止,这一诺言仍然遥遥无期.尽管人工智能研究得到的成
果已经渗入到各个领域,但对人的思维行为的了解远未完全明了.从本质来看,
这是由于最初人工智能研究上定位错误以及没有从认识论角度看清人工智能的
本质造成的;从研究角度来看,将智能行为还原成一般的形式化语言和规则并不
能完整描述人的行为,期望物理科学的成功同样在人工智能研究中适用并不现
实.
反观生物信息学,其目的是期望从基因序列上解开一切生物的基本奥秘,从
结构上获得生命的生理机制,这从哲学上来看是期望从分子层次上解释人类的所
有行为和功能和致病原因.这类似于人工智能早期发展中表现的乐观行为,也来
自于早期分子生物学,生物物理和生物化学的成就.然而,从本质上来讲,与人
工智能研究相似,都是希望将生命的奥秘还原成孤立的基因序列或单个蛋白质的
功能,而很少强调基因序列或蛋白质组作为一个整体在生命体中的调控作用.我
们因此也不得不思考,这种研究的最终结果是否能够支撑我们对生物信息学的乐
观呢 现在说肯定的话也许为时尚早.
综上所述,不难看出,生物信息学并不是一个足以乐观的领域,究竟原因,
是由于其是基于分子生物学与多种学科交叉而成的新学科,现有的形势仍表现为
各种学科的简单堆砌,相互之间的联系并不是特别的紧密.在处理大规模数据方
面,没有行之有效的一般性方法;而对于大规模数据内在的生成机制也没有完全
明了,这使得生物信息学的研究短期内很难有突破性的结果.那么,要得到真正
的解决,最终不能从计算机科学得到,真正地解决可能还是得从生物学自身,从
数学上的新思路来获得本质性的动力.
毫无疑问,正如Dulbecco1986年所说:"人类的DNA序列是人类的真谛,
这个世界上发生的一切事情,都与这一序列息息相关".但要完全破译这一序列
以及相关的内容,我们还有相当长的路要走.
(来源 ------[InfoBio.org | 生物信息学研讨组])http://www.infobio.org
生物信息学(Bioinformatics)是在生命科学的研究中,以计算机为工具对生物信息进行储存、检索和分析的科学。它是当今生命科学和自然科学的重大前沿领域之一,同时也将是21世纪自然科学的核心领域之一。其研究重点主要体现在基因组学(Genomics)和蛋白学(Proteomics)两方面,具体说就是从核酸和蛋白质序列出发,分析序列中表达的结构功能的生物信息。
生物信息学是一门利用计算机技术研究生物系统之规律的学科。
目前的生物信息学基本上只是分子生物学与信息技术(尤其是因特网技术)的结合体。生物信息学的研究材料和结果就是各种各样的生物学数据,其研究工具是计算机,研究方法包括对生物学数据的搜索(收集和筛选)、处理(编辑、整理、管理和显示)及利用(计算、模拟)。
1990年代以来,伴随着各种基因组测序计划的展开和分子结构测定技术的突破和Internet的普及,数以百计的生物学数据库如雨后春笋般迅速出现和成长。对生物信息学工作者提出了严峻的挑战:数以亿计的ACGT序列中包涵着什么信息?基因组中的这些信息怎样控制有机体的发育?基因组本身又是怎样进化的?
生物信息学的另一个挑战是从蛋白质的氨基酸序列预测蛋白质结构。这个难题已困扰理论生物学家达半个多世纪,如今找到问题答案要求正变得日益迫切。诺贝尔奖获得者W. Gilbert在1991年曾经指出:“传统生物学解决问题的方式是实验的。现在,基于全部基因都将知晓,并以电子可操作的方式驻留在数据库中,新的生物学研究模式的出发点应是理论的。一个科学家将从理论推测出发,然后再回到实验中去,追踪或验证这些理论假设”。
生物信息学的主要研究方向: 基因组学 - 蛋白质组学 - 系统生物学 - 比较基因组学
姑且不去引用生物信息学冗长的定义,以通俗的语言阐述其核心应用即是:随着包括人类基因组计划在内的生物基因组测序工程的里程碑式的进展,由此产生的包括生物体生老病死的生物数据以前所未有的速度递增,目前已达到每14个月翻一番的速度。同时随着互联网的普及,数以百计的生物学数据库如雨后春笋般迅速出现和成长。然而这些仅仅是原始生物信息的获取,是生物信息学产业发展的初组阶段,这一阶段的生物信息学企业大都以出售生物数据库为生。以人类基因组测序而闻名的塞莱拉公司即是这一阶段的成功代表。
原始的生物信息资源挖掘出来后,生命科学工作者面临着严峻的挑战:数以亿计的ACGT序列中包涵着什么信息?基因组中的这些信息怎样控制有机体的发育?基因组本身又是怎样进化的?生物信息学产业的高级阶段体现于此,人类从此进入了以生物信息学为中心的后基因组时代。结合生物信息学的新药创新工程即是这一阶段的典型应用。
❻ 请问perl和matlab哪个用于生物信息学分析更好
一般情况下必须是perl,不过还要看具体情况啦!