本文是本人于 2003 年做的研究生论文综述,权当作一个遥远的输入法历史回顾吧。这次重新整理成 HTML 格式的同时,修改了个别的错别字和语法错误。当我重温此文的时候,仍然觉得收获不小,希望对读者也有所裨益。
现在是 2020 年末,汉字输入技术已经发生了巨大变化,人工智能技术的应用使得文字识别和语音识别这些非编码输入方式日益成熟、实用,基于键盘编码的汉字输入也取得长足的进步。互联网和智能手机的普及,使中文输入产品及其用户的格局发生了深刻的变化,形成了搜狗输入法、百度输入法和讯飞输入法三大头部产品。输入法的商业模式更是焕然一新,输入法均是免费提供,变现则是通过其它方式实现。中文顶功编码理论和输入技术从 2005 年诞生,经过 10 多年的发展,到逐步为输入法爱好者接受,口碑相传,亲自动手,尝试用顶功技术对音码、形码、音形码进行改造,对字词模式和整句模式进行优化,取得了丰硕成果,最著名的有声笔系列和星空系列的顶功输入法方案,另外还有一码起顶的左飞 1811,二码起顶的西风瘦码、小兮码、灵形速影、左飞双拼、顶功雅歌,三码起顶的左飞三码、听雨三码,二四顶屏的顶功希码,星空学系列的星空两笔、星空键道及其变种,采用四二顶的 C42,采用五二顶的徐码五二顶等等。
至于本文所述输入法历史之后的进展情况,本人打算另外撰文加以回顾。
1978 年 7 月 9 日上海《文汇报》在第一版以标题为 “汉字进入了计算机” 长篇文章详细报道了支秉彝先生完成 “见字识码” 的小键盘输入汉字的设计方案和编码码本,掀开了 “编码潮” 的序幕,越来越多的人卷入到汉字与电脑碰撞的旋涡,形成了陈力为先生所形容为 “史无前例的规模巨大的群众性科研活动”。
1978 年 12 月,张其睿、支秉彝等汉字编码先行者在青岛召开了我国首次 “汉字编码研究会”。会后,科学技术文献出版社出版了《汉字编码方案汇编》,这是第一本关于编码方案的专著。1979 年夏,陈明远主持了第一个中文信息研讨班,进行了为时两个月信息处理汉字的基础理论和编码方案研究,张普等将研究成果连续发表在《语文现代化》杂志上,这是第一批研究汉字特征信息的论文。1981 年,以钱伟长为理事长的中国中文信息学会成立。中文信息学会及所属的汉字编码专业委员会、《中文信息学报》、《中文信息》等杂志成为组织交流汉字编码及理论的场所和媒介。1981 年至今中文信息学会、汉字编码委员会召开国际性、全国性学术会议几十次。在上述学术会议和全国性杂志、报刊、专利公告上发表的国内外论文和公布编码方案约在数千种以上,已上机运行的也超千种。
汉字编码输入利用计算机的标准配置实现,通过编码对汉字信息进行压缩,既经济又快速,因而一直是汉字信息处理领域中参与人数最多、研究得最多、讨论得最热烈、产品竞争最激烈的领域。随着手机在中国的普及,手机短信量急剧增加,又促进了数字键盘汉字编码输入法的发展。
虽然目前的汉字编码输入法已有成千上万,然而对它的研究热潮仍然一浪高过一浪。纵观为数众多的汉字编码输入法,大多为低水平的重复设计和开发,技术上的突破很少,理论上的创新就更为罕见了,造成了巨大的人力、物力和财力的浪费。同时,虚假的广告宣传、恶性的商业竞争、猖狂的盗版使用,既使得广大的用户无所适从,又损害了汉字编码输入法开发者的利益。
本文打算分基础工作、理论研究和实用系统三个方面来对汉字编码输入技术的历史和现状进行综合评述,最后指出现有技术中存在的问题并预测今后技术的发展趋势。基础工作包括国家标准和规范的制定和推行,语料库建设,字、词和汉字特征信息使用频度统计;理论研究包括汉字各阶信息熵计算,字词编码最短极限码长的计算,汉字编码输入模型的建立,输入法评测方法的讨论;实用系统包括至今为止已投入使用的典型汉字编码输入系统的发展状况,它们在编码技术、反馈技术、接口技术等方面的特点。
1 基础工作
1974 年 8 月,我国开始了第一个大型汉字信息处理工程项目 “748 工程”,其主要成果之一是《汉字频度表》,它首先为汉字信息处理提供了重要的基础数据。1980 年前后,陈明远、盛谏等人分别公布汉语音节、声母、韵母、声调和字母频度统计。1980 年,经过对《汉字频度表》和其它字表的统计分析,国家标准总局颁布了汉字信息处理领域的第一个国家标准《信息交换用汉字编码字符集・基本集》(GB2312-80)。这是一个在中国的汉字信息处理历史上划时代的、具有深远影响的标准。1981 年,武汉大学、复旦大学等公布了在《新华字典》字集范围内的字根频度统计结果。1984 年,国家文字改革委员会与武汉大学公布了《辞海》字集范围内汉字笔画、部件、结构的动态统计分析结果。1985 年,国家文字改革委员会与山西大学公布了人命姓氏用字的抽样统计分析结果。1986 年,北京航空学院、新华社利用计算机技术分别公布了基于大型语料库的新的汉字使用频度统计和流通频度统计 [5]。1985 年后,还有北京师范大学、上海交通大学、北京语言学院等分别使用各具特色的自动分词技术公布了大型语料库的现代汉语词语使用频度统计 [8]。
武汉大学、上海交通大学、陕西大学、中国人民大学、北京语言学院、北京信息工程学院、北京师范大学、深圳大学、北京航天航空大学和新华社等单位分别建立了具有使用侧重面的大型汉语语料库。今年来我国学者提出在语料库语言学指导下建立语料库,使语料库建设走上更加科学化和规范化的道路。上海交通大学、北京图书馆、国家语委陆续推出规模越来越大、属性越来越全,数据越来越精确的大型汉字属性库。北京大学计算机语言研究所还建立了以汉语语法为中心的 “现代汉语语法信息词典” [9]。内容全面、翔实、使用方便的汉语语料库、字词属性库对推动汉字编码键盘输入技术的发展无疑会起到重大作用。
九十年代后公布的与汉字键盘输入系统有关的国家标准有 GB13000.1《信息技术多八位编码字符(UCS)》、GB18030 《信息技术 信息交换用汉字编码字符集 基本集的扩充》、GB18031 《信息技术 数字键盘汉字输入通用要求》、GB15834 《标点符号用法》和即将公布的有 GB/T18220-2000《信息技术 通用键盘汉字输入通用要求》。语委颁布的规范有 GF3001 《信息处理 GB13000.1 字符汉字部件规范》、GF3002 《GB13000.1 字符集汉字笔顺规范》、GF3003 《信息处理用汉语拼音方案表示规范通用键盘》。
GB2312-80 包含 6763 个字,GB13000.1 包含 20902 个字,GB18030 包含 27533 个字。关于编码字符集,GB/T 18031 要求数字键盘编码应包括 GB2312 或 GB13000.1 或 GB18030 中定义的全部汉字字符,GB/T18220-2003 要求通用键盘编码应包括 GB18030 中定义的全部汉字符号和现代汉语标点符号。
关于键位设置,GB/T 18031 对数字键盘规定输入汉字的编码元素要设定在 0~9 的数字键范围内,并对五种基本笔画和汉语拼音符号的键位作了规定。多笔画部件及笔画组合可以自由设定。GB/T18220-2003 对通用键盘规定‘A’到‘Z’26 个字母键输入汉字和词语的特征编码信息。‘0’到‘9’10 个数字键,除用来输入阿拉伯数字外,还可用来输入汉字和词语的特征编码信息的辅助信息,包括汉语声调、重码字选择等。另外,还对 GB/T 15834 定义的 23 个标点符号的键位进行了规定。
关于部件规范,GF 3001 对 GB 13000.1 的 20902 个汉字进行逐个拆分、归纳与统计后给出了 560 个基础部件,并规定:基础部件(也称末级部件)为最小的不可拆分的部件;基础部件可以组合成成字部件使用,但不得组合成非字部件;汉字拆分为部件时,应遵循 “相离、相接可拆,交重不拆(可拆成笔画)” 的原则。
关于笔画规范,GF 3002 明确了汉字的基本笔形是五种,其排列顺序为一(横)、丨(竖)、丿(撇)、丶(点)、乛(折),分别用符号 1、2、3、4、5 表示。GF 3002 还给出了 GB 13000.1 的 20902 字的规范笔顺。
2 理论研究
2.1 字熵、最短码长和极限速度
早在 50 年代,钱文浩先生开始从信息论的角度研究汉字,并计算汉字的熵值。这项工作一直延续了三十年,陈文熙、王世宁、李公宜、刘源等将汉字熵值的研究从字熵推进到词熵,从零阶熵推进到高阶熵值。中文的熵值研究对包括键盘输入技术在内的中文信息处理具有重要的理论价值,并对汉字编码具有指导作用。
李公宜等按照信息论原理,计算出汉字的零阶熵 为 9.66 比特。他们根据不同语言的句子具有等价的语义信息这一基本前提,推出汉字的极限熵 H∞在 5.2 比特到 5.5 比特之间 [10]。他们同时还从中文信息熵得出了在码元数不大于 36 时以句子为编码对象前提下汉字编码的最短平均码长为 1.25, 从而驳斥了某些编码自称能一键一字、输入速度达到每分钟 300 字的神话。虽然码元数大于 36 后,在理论上可以进一步缩短平均码长,但是由于手指移动速度会受到影响,反而会使输入速度下降,因而继续增加码元是不可取的。不能突破 1.25 键 / 字的结论是针对汉字信源总体作出的,与个别或某些词语或句子能够实现一键一字的实际情况并不矛盾。
冯志伟根据他自己建立的 “汉字容量局限定理”,在汉字的字种数为 12370 的范围内,计算出汉字的零阶熵 为 9.65 比特 [11]。他还利用英汉双语语料库,间接推算出汉字的极限熵 H∞处于 3.0212 比特到 5.0713 比特之间,其平均值为 4.0462。
王晓龙等直接用概率论的方法,在 180 万字的样本数据内,计算了 N 元字词编码的最短码长 [12]。当 N 等于 26 时,字输入最短码长为 2.081087,词输入最短码长为 1.731010。当 N 等于 36 时,词输入最短码长为 1.588347。他根据日本打字员的平均每分钟击键数(N=26 时为 450 击,N=50 时为 250 击,N=2000 时为 5000 击)给出了录入员的平均速度上限(N=26 时为 260 字 / 分,N=50 时为 170 字 / 分),再次说明了码元数的过度增加虽然可以缩短码长但却会降低输入速度的道理。他同时还指出,当 N 增大时,最短码长和汉字(词)熵的差距随之增加,编码效率逐步降低。
陈一凡认为 “由于汉语字、词的熵值高于拼音文字和汉语的冗余度较低、组词方式灵活,使汉字小键盘输入的效率远远高于拼音文字” [5]。他在这里忽视了一个问题,那就是汉字是通过编码以后输入的,拼音文字的输入则是没有经过编码而直接进行的。根据信息论原理,编码是可以对作为信源的汉字信息进行压缩的。因此,汉字的编码输入和拼音文字的直接输入没有什么可比性。
2.2 输入模型
整个汉字编码输入过程涉及到人、机、文、码等多种对象,包含了一系列人和机的活动。弄清各种对象和活动之间的相互关系和影响,从而建立起汉字编码输入的概念模型和数学模型,对汉字编码输入法的研究具有重要的理论指导意义。不幸的是,输入模型并没有得到足够的重视。在现有的出版物中,对输入模型的探讨是很少的。
不过,陈一凡等的《汉字键盘输入技术与理论基础》一书对输入模型做了相当深入的研究 [5]。他们分析了汉字键盘输入流程,提出了 “理想的汉字特征信息键盘输入的数学模型” 和 “实际的汉字特征信息键盘输入的数学模型” 。他们的数学模型以集合论为工具,说明了汉字、汉字特征信息、键元、汉字内码之间的映射关系及重码的处理办法。
张侃等按照人的视听感觉、认知和动作对整个汉字键盘输入过程进行分界和说明,得到了一个汉字键盘输入的认知模型 [14]。该模型的三个不同层次的加工过程和容量限制分别为评测汉字输入方法的三个主要素质提供理论依据:即长期记忆量与易学性,短期记忆量与心理负荷和易学性,认知、动作加工与易用性和输入速度。
何克杭分析了人类识别汉字的认知模型,并将认知心理学的理论方法系统地应用于汉字编码的形码方案设计,以解决快速性和易学性的矛盾 [15]。
2.3 输入法评测
面对 80 年代初 “编码潮” 涌现出的数百种方案和上百种上机运行的汉字键盘输入系统,对它们的内在素质和使用效果的优劣评估提到议事日程。上海交通大学、北京信息工程学院、中国标准化与信息分类编码研究所、中国科学院心理研究所等单位不断探索评估理论和设计评测软件。评估对象由 80 年代初的编码方案发展为八十年代末的包含 “编码层次” 和 “软件层次” 的整个输入系统;评测内容由表象测定深入到与认知心理结合的内在素质测定;评测手段由定性到定量;评测方法由主观因素起作用逐渐过渡到计算机客观评测;九十年代则将评测内容和指标写进了国家标准。
从 1980 年起,中国开始进行过几次民间组织的评测工作。由上海交通大学牵头起草了一个评测试行草案。1983 年 4 月,台湾中文电脑研析室主持了对汉字输入方法的调查评估,参加测试的方案有 7 个。1984 年夏,中国中文信息研究会汉字编码委员会、上海交通大学、中国福利会少年宫组织了有 5 个方案参加的计算机定量测试工作,为评测的理论和实践打下了初步基础。1985 年在国务院振兴办公室、国家科委和国家标准局的领导下,挂靠在国家标准局信息分类编码研究所的全国汉字输入方案评测办公室组织各方面有关专家,在对评测试行规则草案进行了全面修改和补充又先后经过三次专家评审,于 1985 年 12 月形成了汉字键盘输入方法评测规则草案 [16]。
1986 年 3 月至 5 月,由国务院电子振兴办公室、国家科委和国家标准化总局、中国中文信息学会联合组织的首届全国性评测历时 38 天,报名方案 51 个。经静态参数测试和资格审查,确定 34 个方案进入动态测试。其中,有形码 20 个、音码 3 个、音形码 8 个、形音码 1 个、形字音词码 1 个、整字键盘方案 1 个。按照测试规定和成绩评选出了 11 个 A 类方案和 19 个 B 类方案。11 个 A 类方案是:陈代于的大众编码,张国防的五十字元多能汉字输入法,唐懋宽的中文声数编码,钱伟长的宏观字形编码,陈国斌的层次四角编码,万仁芳的前三末一拼形方案,刘书泽的部形码,李金凯的笔形编码,由中文信息学会汉字编码专业委员会组织协调、公安部十二局负责牵头的公关项目联合 45-3 输入法,欧阳松的 CK 码,李公宜的 JDL 无间隔输入法。以上 A 类方案的平均速率为 43.16 字 / 分,平均错码率为 3.14%,最高平均速率为 52.52 字 / 分,最低平均速率为 34.83 字 / 分,操作员最短学习期(包括教学)时间为 38 小时。此次评测工作有力地推动了汉字编码输入技术的发展。
1987 年在大连举办了中华杯中文电脑公开赛,探索将汉字编码输入作为计算机系统的一个子系统来进行评测,同时电子工业部向上海交通大学和北京信息工程学院下达了 “汉字键盘输入评测技术” 研究课题,推动了评测工作向 “的客观、公证、科学” 的方向发展。
进入九十年代后,汉字能否输入计算机的问题已得到解决。但随着计算机的普及,汉字编码输入者中专业打字员的比例越来越少,并且中小学生也都普遍的开始学习汉字编码输入。汉字编码的规范性问题、与语文教学的关系问题、易学性问题等日益尖锐地显现了出来。王力德就普及型汉字编码的易学性目标体系和效率目标体系进行了有益的探索 [17]。文献 [18]-[26] 围绕认知码和五笔字型的规范性问题进行了激烈的讨论。华绍和等指出适应中小学教学用的汉字编码应具备的特点有:编码应符合国家语言文字有关标准和规范;编码实现应使用通用设备,键位设置应符合有关规定;编码以计算机输入为基础,与识字、写字、查字相结合;编码应把汉字全息输入与非全息输入有机结合起来;为基础教育服务,与语文教学紧密结合 [27]。
九十年代的国家标准将编码层次和软件层次视为统一的键盘输入系统进行性能考核。《数字键盘汉字输入通用要求》和《通用键盘汉字输入通用要求》规定的系统性能指标有三个:易学性、汉字输入平均码长和重码字词键选率,给出了应当达到的最低要求。值得注意的是,这些标准用键选率取代了传统上使用的重码率。易学性指标要求 “学会使用汉字编码输入系统的时间尽量短,并应符合使用汉语作为母语的使用者的思维习惯”,对数字编码则更进一步要求 “做到上手能用”。平均码长指标对通用键盘汉字输入要求小于 3.2 键 / 字(汉语拼音、笔画为主的简易编码)或小于 2.2 键 / 字(部件码、音形码、形音码、双拼);平均码长指标对数字键盘汉字输入要求小于 6 键 / 字(逐字字段输入)或小于 4 键 / 字(字词混合输入)。键选率指标对通用键盘汉字输入要求小于 6%(汉语拼音、笔画为主的简易编码)或小于 1.5%(部件码、音形码、形音码、双拼);键选率指标对数字键盘汉字输入要求小于 8%(逐字字段笔画、部件码输入)或小于 10(字词混合笔画、部件码输入)或小于 13(10 键位逐字字段拼音输入)或小于 14(8 键位逐字字段拼音输入)或小于 12(10 键位字词混合拼音输入)或小于 14(8 键位字词混合拼音输入)。