摘要: 在自然语言处理中词性标注和词干提取是最重要的任务。文中研究与实现基于Android 的维吾尔文词性标注和词干提取APP,为维吾尔语自然语言处理工作开发出了快捷和方便的标注平台,目的是通过APP 对大规模语料进行词性标注和词干提取,实现了广大学员通过一部Android 系统的手机随时随地参与语料标注任务,从而完成了大规模语料的标注工作
0 引 言
21世纪信息技术猛速发展,智能手机已成为了人们的随身携带物品,在有些方面已经超过人类的操作,很多人工操作的日常事情都可以交由计算机或智能手机来处理,如:记录信息、保存和处理数据库信息等[1]。百度AI 开放平台也开发过词性标注与词干提取工具,主要功能是自动分析文本中的句法结构和分词。百度AI 的工具仅仅适合于中文词法与句法分析,不适合维吾尔语的句法与词法分析,且对兼类词进行标注时,结果不太理想。因此,本文研究适合维吾尔语的标注平台,并充分考虑系统的可行性,开发出了Android 的应用APP 软件,将依赖于PC 机的标注平台转移到了智能手机上。该应用软件提供手动词性标注和词干提取功能,最主要的特色是功能齐全、操作简单、界面友好,为广大研究员提供了必不可少的自然语言处理辅助工具。
1 Android架构
Android 是一种操作系统,提供对外免费开放代码,用于移动终端中(智能手机)。Google 公司正式对外展示Android 操作系统以后,成立了Android 操作系统。未来的IT 行业中,移动应用将占有重要的地位,越来越多的领域实现自己的移动应用系统,最重要的给用户带来最大的方便。一个完整的基于Android 的APP 软件需要Linux Kernel,Android Runtime,Liberaries 及 Application Frameuork的支持。
Linux Kernel:Android 运行在 Linux Kernel之上。在Android 操作系统实际工作中,首先需要Linux Kernel 的全面支持,有了Linux Kernel 的支持才能够实现Android操作系统。Linux Kernel由许多驱动程序组成,这些驱动程序设计能完成对软硬件的驱动[2]。
Android Runtime:Android 操作系统的执行需要良好的运行环境,说的运行环境就是Android Runtime。Android Runtime里面的Core Libraries就相当于Java的JDK,是执行Android 应用程序所需要的核心库,DVM(Dalvik Virtual Machine)是Android 系统运行所需的特定的虚拟机。
Liberaries:Android 操作系统所形成的所有数据需要储存,Liberaries 就是存储缓冲器。
如图2所示,云计算按服务的层级进行分类,分为基础设施服务(Infrastructure as a Service,IaaS)、系统平台—应用服务器应用框架(Platform as-a Service,PaaS)、软件服务(Software as a Service,SaaS)。IaaS提供网络教学平台需要的服务器、计算、存储、网络硬件等基础设施服务,节省了教学平台的维护成本和办公场所。PaaS云计算平台提供一套工具服务,可以为编码和部署网络教学平台应用程序提供高效快速的服务。SaaS就是根据网络教学平台需要的功能开发成应用软件,用户通过运行网络浏览器的客户端,享受这种软件服务。
Application Framework:是指 Android 操作系统的整个框架,有了系统框架,设计中的所有程序才能够有秩序地嵌入到里面。系统框架如图1所示。
图1 Android
系统架构图
Fig.1 Architecture diagram of Android system
在Android 操作系统的开发中,开发人员可通过访问应用程序编程接口(Application Programming Interface,API)框架来完成核心应用程序的使用,下面将重点分析这些小系统。
系统词干提取界面图5所示,该界面是为了词干提取而设计的,点击“导入文本”图标就可以导入文本;然后将这个软件导入的文本一行一行来读取,读取的句子里面有几个词语,这个软件自动给你计数,显示你打开的文本是那个文本里面的内容等;最后点击开始提取,这个按钮给你自动分词,将看到这个词的分类选择单词、构词或对偶词直到读取的文本结束为止。
维吾尔语不仅词汇和形态丰富,语言特征也较明显。维吾尔语构词是由词干加后缀或前缀组成的,通过直接连写词缀的方式构造出来。虽然一个词干和词缀的连写构造出一个构词,但维吾尔语中的多词干和词缀数量和形态很多,如果连写方式不同,那么造出来的构词的词性也不同。因此收集大规模文本语料,通过APP手工切分词干和词缀。词干库总共建立了30 000 条词语,提取过程如图3所示。
该系统是分析词性标注、词干提取和针对分词的一个工具,首先收集大规模文本材料,其次启动APP,点击导入文本按钮读取文本资料,根据任务进行标注或提取词干,最后保存数据。系统结构如图2所示。
使用setLan()这个方法来实现关于软件的核心代码更新,软件的核心代码部分如图6所示。
1.1 Android SDK
SDK(Software Development Kit)是开发软件工具包[4]。SDK 是被开发软件工程采用的软件包、软件框架和硬件平台、操作系统与建立应用软件开发工具的集合,软件开发工具包就是Android SDK[4]。当前最新的SDK 软件包括Eclipse IDE 开发环境。在Android 系统中SDK 是必不可少的部分,提供开放免费的服务,开发人员不需进行较高的投资成本。
1.2 系统结构图
两组的生活质量、满意度评分进行比较,观察组的生活质量、满意度评分高于对照组,统计学有意义(P<0.05);见表2。
2 维吾尔语文本语料库的建立
2.1 词干库的建立
首先将文本分成句子,然后句子又分成词语,最后将词袋分成单词。对单词进行手工切词干和词缀,切词干过程还标注了词的原型、弱化形式、词干、第一个词缀、第二个词缀、第三个词缀、第四个词缀及对偶词等,构建的词干库的规模和形态很丰富。词干提取方法如图4所示。
图4 词干提取方法
1)用来搭建应用程序视图部分(Views):该视图实现了丰富和可扩展的功能,基本元素包括列表(List)、网格(Grids)、输入框(Edittext)、按钮(Button),复选框(CheckBox)。
推动环境损害修复机制建设。强化检察机关与法院、生态环境职能部门的协作,进一步明确各自职责,推动受损环境得到有效修复。针对环境损害赔偿金的管理问题,探索推动建立由政府牵头、相关行政部门与司法机关共同参与的生态环境公益损害赔偿基金管理制度。
2)应用程序的内容提供器(Content Providers):当操作系统访问程序设计时,它能够访问另一个程序。
3)资源访问的资源管理器(Resource Manager):提供非代码资源访问时,主要由字符、图片、形状和布局文件(layout files)组成。
4)通知管理器(Notification Manager):在 Android系统中应用程序在状态栏中显示自定义的提示信息。
5)活动管理器(Activity Manager):这个操作系统是能够完成导航前进、回退功能以及管理程序设计的生命周期[4]。
2.2 词性库的建立
目前在维吾尔语中词性大体上划分为实词、虚词、感叹词等。对实词细分有动词和静词两种,其中静词有副词、数词、名词、形容词等。如此细分统计维吾尔语总共有42 个词性,维吾尔语是形态很丰富的语言,维吾尔语名词的不同词缀有49 个,动词的不同词缀有150 多个,形容词的不同词缀有55 个,数词的不同词缀有57 个。有些词的形态变化会导致词性变化,会导致词性变化的后缀简称为构词后缀[5]。统计维吾尔语中的词性,进行手工标注,表1为维吾尔文一级词性统计表,手工词性标注示例如图7所示。
这个界面是为了词性标注而设计的,首先,点击“导入文本”图标就可以导入文本,这个软件将导入的文本一行一行来读取,读取的句子里面有几个词这个软件自动给你计数,显示你打开的文本是哪个文本里面读取的内容等信息;然后,点击开始标注这个按钮给你自动分词,能看到这个词的分类选择单词、构词或对偶词直到读取的文本结束为止。
3 结 语
本文研究与实现基于Android 的维吾尔语词干提取、词性标注软件(APP)。本工具有导入文本、分句、分词、词干提取和词性标注功能。将依赖于PC 机的标注平台转移到了智能手机上,为维吾尔语自然语言处理工作开发出了快捷和方便的标注平台,从而完成了大规模语料的标注工作。该系统的实现为低资源少数民族智能化研究工作做出了贡献。
米维信息认为该APP有维汉两种语言的相互切换使用功能,下一步再改进和优化APP,新增哈萨克和柯尔克孜语等多语种文本标注功能,做出多语种自然语言处理辅助软件。