首页 理论教育 大数据时代图书馆信息系统研究方法简介

大数据时代图书馆信息系统研究方法简介

时间:2023-07-31 理论教育 版权反馈
【摘要】:本书的研究方法主要包含两个模块,即数据源管理模块和数据分析模块。本实验采用的技术手段为Java编程语言和MATLAB,开发工具主要为JDK 1.8和MATLAB R2018b,为便于其他研究者验证,生成的实验数据和实验代码可以从Github[35]地址处免费获取。结构化数据的优势在于,国家自然科学基金委员会已经做了大量的数据规范工作,一般可以直接提供给程序分析使用,如趋势研究、数据筛选和演化网络分析等。对于内存计算时的维数灾难问题,主流的方法就是数据降维。

大数据时代图书馆信息系统研究方法简介

本书的研究对象为36所“双一流”A类大学,由于国防科技大学属于军事涉密单位,不进行研究,因此,数据来源是“双一流”A类大学中除国防科技大学外的35所,同时,本书的实验数据来自1998年1月1日至2017年12月31日共计20年的自然科学基金数据,基本涵盖了教育部“985”计划实施以来和“双一流”计划开始的所有数据。

本书的研究方法主要包含两个模块,即数据源管理模块和数据分析模块。数据源管理模块的主要作用是对公开获取的自然科学基金数据进行数据清洗、数据分类等预处理,并生成可供MATLAB分析的数据源。数据分析模块是对数据源管理模块提供的数据进行数据降维和可视化分析,以期能更清晰、更直观地寻找“双一流”大学和自然科学基金之间的关系。

本实验采用的技术手段为Java编程语言和MATLAB,开发工具主要为JDK 1.8和MATLAB R2018b,为便于其他研究者验证,生成的实验数据和实验代码可以从Github[35]地址处免费获取。

从国家自然科学基金委员会的网站上获得的数据存在大量噪音,需要进行数据清洗及分类等预处理。对于结构化数据,如立项日期、立项编号等,进行直接归类存储,分析的时候利用数据字典将内容映射成对应的整型变量;对于结构化数据集合,将其转化为对应的整型变量后构造成向量数据;当多个向量数据作为一组数据时,将该组数据转化为对应的二维矩阵,如果数据不止一组,则转化为高维矩阵。

结构化数据的优势在于,国家自然科学基金委员会已经做了大量的数据规范工作,一般可以直接提供给程序分析使用,如趋势研究、数据筛选和演化网络分析等。但是,结构化数据的劣势在于,数据之间的关系往往是在数据首次存储时已经定好数据范式和关联关系,这类数据一般只能进行简单的数据统计研究,如科技成果统计,却很难进行有效的数据挖掘。

非结构化数据的优势刚好弥补结构化数据的劣势,非结构化数据往往具备语义属性,很难直接提供给程序进行分析使用。如果需要转化为程序可以处理的矩阵数据,必须先定义好映射规则。不同的研究人员站在不同的研究角度上会提出不同的映射规则,解决不同的研究问题。也正由于对非结构化的数据缺乏统一的研究范式,不同研究人员的不同研究范式直接影响研究问题的解决路线

基于传统的自然语言处理技术是非结构化数据处理的常见方法,其主要原理是基于词袋模型(Bag of Words)。词袋模型的核心思想是将文本视作一系列单词构成的向量空间。利用词袋模型计算不同文本的相似度,一般是先用分词工具将文本分词,分词的时候先过滤掉停用词,然后利用分词工具的主题词库对文本进行向量化,这样,一个文本会基于主题词库生成一个文本向量。计算两个文本相似度的问题则转化为计算两个向量的夹角的余弦值,也就是余弦相似度。但是,词袋模型的难度在于分词问题和向量维度问题。

(1)分词问题的处理策略

基于通用分词工具的词库往往对特定领域的文本分词效果差,这是由不同语言环境中的上下文语境的适用性导致的。语言本身的复杂导致很难建立一个普遍适用的词库,如词语在语义上存在上位词、下位词的分类问题;词语在语法上存在歧义问题,同义词、反义词分类的问题。如果消除歧义考虑文本上、下文,就需要进行词语的推断处理,如基于二元词(2-gram)、三元词(3-gram)和词组句群的推断处理。更复杂的问题是存在词语跨语言的固定表达,这一点在科研文献中尤为突出,如“CRISPR/Cas9基因编辑”往往是固定表达,但是“CRISPR”属于英语,基因编辑属于汉语。(www.xing528.com)

尽管常见的词库都是采用基于贪婪模式的最大匹配算法,但是也存在不同科研文献中的正向最大匹配和逆向最大匹配的适用性问题。如果不基于通用词库,则需要自己建立主题词库,基于人工阅读建立主题词库的效果最好,但是人工成本很高。如果基于机器学习的方法建立主题词库,如采用word2vec模型[36],那么训练的样本数量、训练模型、迭代次数的优化则是很复杂的研究问题。因此,很难有一个绝对适用的词库,需要基于不同的场景设计不同的策略。

(2)维数灾难问题处理策略

如果希望在利用词库对文本进行向量化时尽可能减少信息的损失,就应该尽可能减少词语的合并。但是,这样会带来维数灾难问题(Curse of Dimensionality)。这一点在汉语中表现得尤为严重。汉语本来就缺乏类似英文的空格分隔符,汉语的分词复杂性导致词库合并时很难有一个标准解,带来的文本矢量化之后的矩阵过于稀疏。稀疏矩阵的最大问题在于分析时的计算量为指数级上升,同时矩阵进行计算时相关数据要加载到内存中,内存中如果驻留大量的数据就会导致计算机运行变慢。并且,内存数据和硬盘数据不同,内存计算时的局部性原理、矩阵数据的不可分割问题导致内存数据很难像硬盘数据的分布式存储和分布式计算

对于内存计算时的维数灾难问题,主流的方法就是数据降维。数据降维有多种方法,一般是利用词频逆文本频率算法(Term Frequency-Inverse Document Frequency,TDIDF)建立向量空间模型(Vector Space Model,VSM)[37]。即用词频逆文本频率算法对文本数据进行词频统计(TF),建立词库,然后统计逆文本频率指数(IDF),得到向量空间模型,最后利用向量空间模型的向量进行计算。如果要进行进一步向量降维,会使用两种策略:特征选择(Feature Selection,FS)和特征抽取(Feature Extraction,FE)。特征选择和特征抽取的本质都是对向量空间模型进行奇异值分解(Singular Value Decomposition,SVD),生成奇异值分解矩阵。如果是进行特征选择策略,就是通过奇异值分解后的左奇异变量代表整体特征,这类分析策略如潜在语义分析(Latent semantic analysis,LSA);如果是特征抽取策略,则是通过奇异值分解右奇异变量的计算,将向量空间的维度,如m维度向量空间转化(如旋转)到n维度向量空间,使n维向量空间是向量空间的向量样本方差最大的空间,减少矩阵稀疏程度,这类策略如主成分分析(Principal Components Analysis,PCA)。由于词袋模型没考虑词与词之间的顺序,一般还可以基于主题的隐含狄利克雷分布(Latent Dirichlet Allocation,LDA)对向量空间的向量进行处理,用于主题分类简化。

对于分词问题,本书选取的结构化数据的字段主要包含基金编号、“双一流”大学名称、基金立项时间和基金资助类别。本书选取的非结构化的字段主要是每个资助基金对应的基金关键词。为了简化问题,采用基金关键词作为实验数据,因为关键词列表本身有关键词词组间的分隔符,尽管自然科学基金系统在不断升级,但是关键词之间的分隔符在一定时间内是不变的,利于计算机处理。考虑到科研基金的行业特点,不采用通用分词工具,而是从自然科学基金立项项目的关键词列表进行数据清洗,生成面向自然科学基金领域的主题词库。

在建立主题词库时,需要考虑立项基金的关键词的停用词表和关键词列表分割词问题。同时,考虑上文提到的“CRISPR/Cas9基因编辑”等类似的词语情况,采取的策略是,如果一个关键词词组是由中文开头构成的,则进行关键词词组分割;如果一个关键词词组是由英文开头构成的,如“Cas9基因编辑”,则视作词库中的一个完整单词,不需要对关键词词组进行分割。

对于维数灾难问题,本书的研究词库来自现有立项自然科学基金的数据清洗,因此,可以做到对关键词列表的矢量化。但是由于不同科研工作者对项目关键词的理解不一样,并且关键词的数量很多,导致向量化的维度很高,需要向量维度降维。本书对关键词向量的降维主要采用一种新的方法,即t-分布领域嵌入算法(t-distributed Stochastic Neighbor Embedding,t-SNE),该方法由图灵奖得主Geoffrey Hinton提出。该方法和主成分分析方法的区别在于,能更好地可视化。主成分分析主要用于压缩数据,不能解决线性不可分问题;t-SNE主要用来解决线性不可分问题。通过t-SNE的降维可以有效地对数据进行分类,能够很清晰地看到数据全景。但是,它的局限性是只能用来做投影,将高维度向量进行映射,但不反映聚类关系,也不能用于预测。一般情况下,为了降低向量的维度,在运行t-SNE前先用主成分分析进行初步的数据降维。尽管t-SNE有这些局限性,但是并不影响本书的数据分析,本书需要用t-SNE对“双一流”大学的所有立项数据进行分析。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈