HotData自动抽取模块的分析与设计.docx
- 文档编号:701580
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:70
- 大小:1.45MB
HotData自动抽取模块的分析与设计.docx
《HotData自动抽取模块的分析与设计.docx》由会员分享,可在线阅读,更多相关《HotData自动抽取模块的分析与设计.docx(70页珍藏版)》请在冰点文库上搜索。
HotData自动抽取模块的分析与设计
HotData自动抽取模块的分析与设计
[摘要]本文探讨了如何对生物医学学术期刊网站的附加数据库进行半自动化抽取。
文章以17本国际知名生物医学期刊作为分析对象,确认了学术期刊网站附加数据抽取的必要性和可行性。
并提出了这些期刊网站附加数据的关键字段及组合规律,逐步讨论如何将网站附加数据抽取到本地的过程。
[关键词]HotData、ETL、生物医药文献、附加数据、自动抽取
HotDataautomaticextractionmoduleAnalysisandDesign
[Abstract]Thispaperdiscussedhowtosemi-automaticallysampleadditionaldatafromprofessionalacademicperiodicalwebsites.Thepaperanalyzed17internationalwell-knownbiomedicalperiodicals.Thenecessityandpossibilityofsamplingadditionaldatafromacademicperiodicalwebsiteswasconfirmed.Andproposedthekeywordsandcombinationrulesofadditionaldatafromtheseperiodicalwebsites.Graduallydiscussedtheprocessofhowtosampleadditionaldatafromwebsitestothelocalcomputers.
[Keywords]HotData、ETL、Biomedical-Literature、Supplementary-Data、Data-Description
引言
随着生物医学研究技术的进步,高通量实验产生了大规模有意义的数据。
在学术期刊以文献形式公布研究成果时,需要通过不同的途径来公布这些数据,其中文献的附加数据(SupplementaryData),也称作补充材料(SupplementaryMaterial),是最普遍的方式。
附加数据以电子格式发布在期刊网站的文献归档中,其数据内容和数据描述是进行统计分析和文本挖掘的重要数据源。
充分有效的利用这些资源,进行研究实验以促进生物学和生物信息学的发展,显得非常必要。
然而,附加数据在国际上尚未引起关注,相关研究也处于空白阶段[12]。
为了对附加数据进行系统研究,上海生物信息技术研究中心根据其特点,提出了HotData(热点数据)的概念,它的含义为:
由生物医学期刊以电子格式在网站上发布,作为科技文献内容的补充说明,且访问时间具有一定限制(Hot)的附加数据(Data)。
此概念着重强调了附加数据的访问时间限制性,因此数据的收集整理成为亟待解决的问题。
本文总结了HotData的发布规律及数据形式,它的分散性、多样性以及时间限制等特点,向传统的自动抽取技术提出了挑战。
不过,通过利用HotData的层次性、标记语言以及关键词等优势,能够将期刊之间的差异逐渐缩小,以一套通用的方案解决自动抽取问题,最终采用Eclipse为开发平台,Java技术为工具,开发出HotData自动抽取模块,即HotDataSpider软件。
HotDataSpider是以抽取、转换和加载HotData为目的而设计开发的软件,它应用数据仓库技术中常用的ETL工具成功解决了HotData的收集整理问题,主要步骤包括:
⑴数据抽取(Extraction):
解决HotData与HotData信息的获取问题;实现HotDataURL的解析、文摘信息的获取和HotData的下载等功能。
⑵数据转换(Transformation):
解决HotData与HotData信息形式混乱的问题;实现工程目录结构化管理、HotData信息标准化、URL分级管理以及用户筛选URL列表等功能,与抽取部分结合紧密。
⑶数据加载(Loading):
为以后HotData导入主题数据库提供桥梁;实现当前工程导出的功能。
由于期刊网站具有形式多样、改版修正和多层连接等特点,若仅依靠计算机程序的判断,则难以保证抽取的正确性。
因此,HotDataSpider实现了“半自动抽取”,为用户提供交互式的操作界面,引入人工干预技术来辅助程序筛选HotDataURL列表,进行下载控制。
目前,已实现了对15本国际知名期刊HotData的半自动抽取,通过了368个测试案例,软件性能稳定。
HotDataSpider采用工程(Project)管理的方式将所有查询、浏览、筛选、下载等操作以工程项目的形式串联在一起,进行规范化管理。
软件支持HotData查询、文摘信息浏览、数据页面预览、数据URL筛选、用户下载控制、HotData编辑以及当前工程导出等功能。
正文
第1章绪论
1.1研究背景
随着生物医学研究技术的进步,高通量实验产生了大规模有意义的数据。
在学术期刊以文献形式公布研究成果时,需要通过不同的途径来公布这些数据,其中文献的附加数据(SupplementaryData),也称作补充材料(SupplementaryMaterial),是最普遍的方式。
附加数据以电子格式发布在期刊网站的文献归档中,其数据内容和数据描述是进行统计分析和文本挖掘的重要数据源。
充分有效的利用这些资源,进行研究实验以促进生物学和生物信息学的发展,显得非常必要。
然而,附加数据存在于半结构化的网页中,其分散性、多样性以及访问时间限制性,使系统研究面临重重障碍。
如何将附加数据与其相关信息抽取出来,转换为统一的格式,并最终加载到主题数据库供用户访问,成为亟待解决的问题。
1.2研究目的
为了对附加数据进行系统研究,上海生物信息技术研究中心根据其特点,提出了HotData(热点数据)的概念,它的含义为:
由生物医学期刊以电子格式在网站上发布,作为科技文献内容的补充说明,且访问时间具有一定限制(Hot)的附加数据(Data)。
此概念着重强调了附加数据的访问时间限制性,因此数据的收集整理成为亟待解决的问题。
1.3国内外研究进展
目前,人们对生物医学文献的研究,还局限在题名、摘要、关键词和正文等几个传统的部分。
仅有极少数生物信息学家指出,应尽早对附加数据进行收集和整理[1],但是在国际上尚未引起关注,相关研究也处于空白阶段。
此外,Web生物学信息的抽取一直是计算机领域的技术难点,除了各数据源网页自治和半结构化的原因,生物学信息的一些特点,如:
多种命名实体(基因、蛋白质、药物、细胞、调控因子、转录因子和启动子等)、某项实验属性缺失以及排序不固定[2],都向传统的自动识别抽取技术提出了挑战。
1.4本文主要研究内容
本文的研究目标是在提出HotData概念的基础上,总结其发布规律,分析并设计出HotData自动抽取模块,开发出HotDataSpider软件,为解决数据的收集、转换、更新和加载等问题提供支持。
第2章理论技术基础
2.1HotData的定义
HotData,即“热点数据”,是上海生物信息技术研究中心根据附加数据的特点所提出的概念,它的含义为:
由生物医学期刊以电子格式在网站上发布,作为科技文献内容的补充说明,且访问时间具有一定限制(Hot)的附加数据(Data)。
HotData着重强调了附加数据的访问时间限制性,因此需要尽快对其进行收集和整理。
HotData以电子格式发布在期刊网站的文献归档中,主要包括数据内容和数据描述两部分。
其中,数据内容是对文献内容的补充(如基因组、转录组、蛋白质组和代谢组等方面的实验图谱及数据),可作为统计分析、实验设计以及构建生物医学数据库的重要数据源;数据描述则是对数据内容的概括及解释,具有关键词且分类性强。
随着文本挖掘技术在生物信息学领域中的应用越来越广泛,研究人员利用自然语言处理技术,对大量生物医学文献的全文和摘要进行了分析,从而挖掘出隐含的生物学知识[3]——那么,如果将HotData的描述与文献内容联系起来,作为文本挖掘的研究对象,可对隐含知识的挖掘提供有力的支持。
因此,收集HotData并对数据信息进行规范化的数据库管理,是一项很有意义的工作。
2.2对HotData的发布规律
然而,HotData目前在国际上尚未引起关注,对HotData的相关研究也处于空白阶段,没有一套成熟的发布、收集、管理和研究的标准。
因此,我对17本国际知名生物医学期刊进行调查,初步总结了HotData的发布规律,如表2.1所示:
杂志标准名称
层次性
标记语言
附加数据Keyword
注册
改版
Cell
T
HTML/XML
SupplementalData
F
T
NucleicAcidsRes
T
HTML
Supplementary*
F
T
ProcNatlAcadSciUSA
T
HTML
Supporting*
F
F
MolCellProteomics
T
HTML
SupplementalData
T
T
JBiolChem
T
HTML
SupplementalData
F
F
JProteomeRes
T
HTML
SupportingInfo
F
F
JVirol
T
HTML
SupplementalMaterial
F
F
EMBOJ
T
HTML
SupplementaryInformation
F
T
Oncogene
T
HTML
SupplementaryInformation
F
T
Bioinformatics
T
HTML
SupplementaryData
T
F
Blood
T
HTML
Supplemental*
F
F
GenomeRes
T
HTML
SupplementalReserchData
F
F
Science
T
HTML
Supporting*/Supplement*
F
T
PLoSBiol
T
HTML
FullText
F
F
PLoSComputBiol
T
HTML
FullText
F
F
BMCBioinformatics
F
HTML
FullText
-
-
BMCGenomics
F
HTML
FullText
-
-
表2.1HotData规律分析
HotData主要有以下特点:
⑴层次性:
多数期刊的文献归档具有层次性,依次访问归档入口、年归档、卷期归档和附加数据归档(或全文),便可到达HotData的链接,少数期刊不具有层次性;⑵标记语言:
期刊归档网页的标记语言为HTML或XML;⑶关键词:
在卷期归档或全文页面中,可以找到链接到附加数据归档的HotData关键词,但每种杂志的关键词不同;⑷分散性:
HotData与文献对应,由所属期刊维护,造成网页排版和数据形式多样;⑸时间限制:
HotData大多只能在一段时间内访问,近几年发表的HotData需要注册才能访问;⑹网页改版:
同一期刊可能存在归档页面改版现象。
HotData的分散性、多样性以及时间限制等特点,向传统的自动抽取技术提出了挑战。
曾有专家指出,所有发布在期刊网站中的HotData应遵循共同的标准(如Nature标准[1]),只有提出一套成熟的HotData发布标准,才能结束这种形式混乱的局面。
不过,HotData的层次性、标记语言以及关键词等优势,可为编程人员所利用,开发出相应的抽取、转换和加载软件,最终建立公共数据库,供研究人员访问。
第3章模块的分析与设计
3.1需求分析
由HotData的现状可知,数据的收集是进行一切研究的前提。
随着越来越多的HotData出现在期刊网站中,手工下载显然无法适应研究的需要。
只有开发出HotData自动抽取模块,以计算机为工具将HotData从自治的数据源中抽取到本地,才能进行下一步的规范化管理。
但是,半结构化的网页数据存在着大量错误和冗余,若仅依靠计算机程序的判断,则难以保证抽取的正确性,因此需要引入人工判断。
一个成熟的HotData自动抽取模块应具有以下功能及特点:
⑴提供交互式的操作界面,实现“半自动化”的抽取;
⑵提供归档查询的功能,根据用户的选择,可从期刊的文献中解析出HotData的URL;
⑶提供附加数据页面浏览功能,辅助用户筛选URL;
⑷可进行下载控制,将数据存储至本地;
⑸可获取HotData对应的文摘信息;
⑹为以后数据导入主题数据库提供支持;
⑺将所有查询、浏览、筛选、下载等操作以工程项目的形式串联在一起,进行规范化管理;
⑻软件需通过大量测试,运行稳定且易维护。
3.2ETL的应用
3.2.1定义
开发HotDataSpider软件,是本课题的最终目标,若要实现需求分析中所列举的各项功能,需要引入数据仓库技术中常用的ETL工具来攻克所有难题。
ETL(Extract抽取,Transformation转换,Loading加载)是指从数据源获取数据,并对数据进行清洗转换,最终加载到数据仓库的过程,是构建数据仓库的重要环节[4]。
ETL工具可以解决数据源分散、数据不清洁和数据仓库构建等问题,在通信、证券和银行等领域有广泛的应用[5]。
3.2.2应用现状
随着后基因组时代的到来,ETL技术逐渐被引入生物医学领域,用于集成高通量实验产生的大量异构数据,为研究人员提供高质量的分析数据。
生物医学数据通常存在于不同的关系数据库、面向对象数据库和互联网资源中,数据的组成表示比较复杂,包括不同格式的文本和大量的图表,而且大部分数据具有异构、描述性和自治的特点,存在错误和冗余[6],这些都对传统的ETL技术提出了挑战。
目前,人们利用ETL技术构建了一些面向主题的生物医学数据仓库:
在国外,一些公司已经开发出用于建立和使用数据库的系统,提供较成熟的ETL工具,在序列、注释数据库的研究中取得了一定的成果[7]。
然而,国内对ETL技术的开发甚少,因此在生物医学领域中的应用还处在起步阶段。
3.2.3如何应用
HotData作为网络资源形式的生物医学数据,具有分散、自治、半结构化和描述性的特点。
ETL工具分别从三个方面来实现需求分析中的功能:
⑴抽取:
解决HotData与HotData信息的获取问题。
实现HotDataURL的解析、文摘信息的获取和HotData的下载等功能。
⑵转换:
解决HotData与HotData信息形式混乱的问题。
实现工程目录结构化管理、HotData信息标准化、URL分级管理以及用户筛选URL列表等功能,与抽取部分结合紧密。
⑶加载:
为以后HotData导入主题数据库提供桥梁。
实现当前工程导出的功能。
所有功能描述将在第5章详细介绍。
3.3系统流程的设计
系统流程是设计的核心,我将其划分为URL解析、文摘信息获取和用户判断三个重要部分,各部分间有着紧密的关联,如图3.1所示。
下面将对其进行详细介绍。
3.3.1URL解析
在第2章曾提到,HotData的层次性、标记语言和关键词等优势,可为编程人员所利用。
根据手动下载的经验,可通过以下步骤到达HotData的下载页面:
⑴提供期刊Archive地址,作为程序的入口;
⑵进入期刊按年份排列的归档页面,解析出所有的年份;
⑶进入某一年份按卷期排列的归档页面,解析出所有的卷期;
⑷进入某卷期的文章列表页面,解析出所有的文章标题;若没有HotData关键词,进行第⑸步,否则跳至第⑹步;
⑸查看全文;
⑹寻找关键字;
⑺进入HotData的归档页面;
⑻将HotData的URL列表返回给用户。
以上步骤可参考图3.1左边部分。
需要注意的是,由于每本期刊的URL形式和HotData规律不同,需要分别编写解析器;
3.3.2文摘信息获取
除解析URL以外,获取HotData对应的文章信息也是不可缺少的部分,它直接影响到数据管理和工程导出等操作。
本部分主要包括以下步骤:
⑴与3.2.1节的第⑷步联系起来,进入某卷期的文章列表页面;
⑵解析出卷号、期号及文章标题;
⑶调用PubMed提供的API,下载相应卷期的PubMedXML文件;
⑷将文章标题与XML文件中的标准题目相匹配;
⑸根据匹配的正确标题,返回相应的文摘信息;
⑹将文摘信息与HotData相对应。
以上步骤可参考图3.1右边部分。
3.3.3用户判断
这一部分是ETL技术中抽取和转换的有机结合,这是因为归档网页中存在着数据更新、链接错误和多重链接等情况,目前的编程水平还无法针对所有期刊提出统一的解决方案,所以在抽取过程中引入人工判断是十分必要的。
本部分主要包括以下步骤:
⑴与3.2.1节的第⑺步联系起来,首先将HotDataURL列表返回给用户;
⑵用户根据事先制定好的规则,浏览网页,筛选URL列表;
⑶将筛选好的URL列表添加至当前工程项目,即添加到下载队列;
⑷下载数据;下载任务在杂志内串行,杂志间可并行;
⑸将HotData存放到本地;
⑹与3.2.2节的第⑸步相联系,将HotData与文摘信息对应;
⑺导出HotData存放目录及数据信息表,最终导入数据库。
以上步骤可参考图3.1中间部分。
图3.1HotDataSpider系统流程图
第4章HotData数据收集
4.1手工下载
前期寻找期刊附加数据规律,如数据URL,关键字等信息,或无法用程序实现自动下载的特殊期刊,采用手工下载方式。
从各免费期刊的网站上直接下载文章附加数据,登录期刊网站,从期刊Archive按照文章发表顺序下载附加数据。
根据关键字寻找含附加数据的文章下载到本地。
常见关键字有:
Supplementaryinformation,
Availability,
supplementalResearchData,
SupportingInformation,
Availabilityandrequirements等
一篇含附加数据的文章为一条记录,它的所有数据存放在以这篇文章的PubmedID命名的文件夹中,一本期刊所有数据存放在以期刊名命名的文件夹中。
使用Endnote从Pubmed搜索得到每篇文章的文摘项目,每本期刊的所有文摘存放在一个endnote库文件中。
附加数据常见格式有:
PDF,word,txt文本,图像,视频,html网页
4.2自动下载与更新
4.2.1基本流程
编写程序实现从互联网自动下载数据,数据下载基本流程为
4.2.2主要问题
主要需解决的问题:
I.如何找到数据下载地址
II.如何得到文章的文摘信息并把它与数据对应起来
4.2.3具体实现
1.JournalList文件
维护一个JournalList文件,程序读取此文件作为初始输入,并且记录当前已下载期刊数据的历史信息,根据此文件判断是否需要更新
JournalList文件一行为一条记录,一条记录包含8个字段,字段之间以Tab隔开,如下表所示:
字段名
说明
jouranlID
4位流水号,每本期刊分配一个不变的id
journalName
期刊名称,字符串,
jouranlArchiveURL
期刊文章存档URL,如
yearURL
期刊按年份归档的页面URL,含正则表达式
volumeURL
期刊每卷的URL,含通配符,可以匹配期刊每卷的URL,如Cell的112卷第三册的URL为
Cell的volumeURL为
dataURL
附加数据的URL,含正则表达式的字符串,可以是多个,以逗号隔开,用以匹配下载数据的URL如
keywords
此期刊附加数据的关键字,可以是多个,并含正则表达式,以逗号隔开,如Cell关键字[SupplementalData]
isFullText
下载此期刊数据是否需要点击查看全文。
这个字段值为ture或false
currentYear
当前存储的最新数据的年份
currentVolume
当前存储的最新数据的卷号
currentIssue
当前存储的最新数据的期号
ArchiveURL
yearURL
volumeURL
2.程序流程图
4.3数据分类
4.3.1分类列表
根据生物学知识及数据特点做出分类系统
每篇文章对应数据具有一个或多个分类属性
1.原Hotdata分类的缺陷
1).一部分数据应按照基因组数据—转录组数据—蛋白质组数据的顺序分类,缺少了RNA数据的分类。
蛋白质功能中,有些数据在5.1酶和5.2蛋白质相互作用之间不好归类。
2).亚细胞定位方面的数据难以归类。
3).疾病数据分类有待扩充
4).分类级别不统一
2.修正后的分类表
数据分类列表
(Parent_)Type_id
Type_Name(English)
Type_Name(Chinese)
一级
二级
三级
1
Genome
基因组
1.1
NucleotideSequence
核酸序列
1.2
Gene
基因
1.2.1
GeneExpression
基因表达
1.2.2
SequenceMotif
序列Motif
1.2.3
AlternativeSplicing
选择性剪切
1.2.4
Others
其它
2
Transcriptome
转录组
2.1
Transcription
转录
2.2
RNAStructure
RNA结构
2.2.1
RNASequence
RNA序列
2.2.2
RNA2DStructure
RNA二级结构
2.2.3
RNA3DStructure
RNA三级结构
2.2.4
Others
其它
2.3
RNAmodification
转录后修饰
2.4
RNAFunction
RNA功能
2.4.1
Mutation&SNP
变异与单核苷酸多态性
2.4.2
RNAInterference(iRNA)
RNA干扰
2.4.3
InverseTranscription
逆转录
2.4.4
NucleotideEnzyme
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- HotData 自动 抽取 模块 分析 设计