1 / 51

第二章 文本

第二章 文本. 内容. 一、编码 二、文本处理 三、文本显示. 一、编码. 几个编码标准. ASCII ISO8859-1… GB2312 GB12345 GBK CJK BIG5. UCS Unicode UTF-8 UCS-2 UTF-16 GB18030. ASCII. 计算机中使用得最广泛的西文编码字符集 : 美国标准信息交换码 (American Standard Code for Information Interchange, 简称 ASCII 码 ) ,后来被批准为 ISO-646-US 标准

tokala
Download Presentation

第二章 文本

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第二章 文本

  2. 内容 一、编码 二、文本处理 三、文本显示

  3. 一、编码

  4. 几个编码标准 • ASCII • ISO8859-1… • GB2312 • GB12345 • GBK • CJK • BIG5 • UCS • Unicode • UTF-8 • UCS-2 • UTF-16 • GB18030

  5. ASCII • 计算机中使用得最广泛的西文编码字符集:美国标准信息交换码(American Standard Code for Information Interchange, 简称ASCII码),后来被批准为ISO-646-US标准 • ASCII字符集中: • 96个可打印字符+32个控制字符 • 采用7位二进制进行编码

  6. GB 1988-80 (ISO 646-CN) 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 1 2 3 4 5 6 7 ¥ ASCII码/ ISO-646-US标准

  7. ISO-646-DE (德国) ISO-646-DK (丹麦) ISO-646的本地化

  8. ISO 646的不足 • 7位代码空间太小, • 不同国家和地区使用不同的标准,难以兼容, • 东亚地区使用的大字符集无法编码,

  9. ISO8859. 1 Latin1 (West European) 2 Latin2 (East European) 3 Latin3 (South European) 4 Latin4 (North European) 5 Cyrillic 6 Arabic 7 Greek 8 Hebrew 9 Latin5 (Turkish) 10 Latin6 (Nordic) 11Latin/Thai 12non-existent 13BalticRim 14Celtic 15Latin-9 16South-EasternEruopean ……… GL GR C0 C1 扩充ASCII字符集 单8位代码空间

  10. ISO-8859-1 (West European) ISO-8859-2 (East European) ISO 8859 扩充ASCII字符集

  11. MS-Windows 的code page • 代码页实际上就是各个不同的字符集。微软公司在开发DOS和Windows的各文种产品时,将各文种的字符集加以整理,并对每个具体的代码页都赋以一个代号,称作“代码页ID”。比如:CP1252代码页是ISO 8859-1的扩充,是ISO 8859-1的超集

  12. 汉字的编码 • 汉字(Chinese character, Han character, Hanzi)是记录汉语(国语,华语)的文字,属于表意文字,它用符号直接表达词或词素。中文文本的基本组成单位是汉字字符。 • 汉字的特点 • 数量大(我国汉字自古至今累计已超过7万字,国家语委颁布的“现代汉语通用字表”包含7000汉字) • 多个国家和地区使用:香港,台湾地区,以及日本、韩国、朝鲜,新加坡,马来西亚等。 • 字形复杂,同音字多,异体字多。 根据统计,常用汉字的频率,前165个汉字频率和>50%,前1000个汉字频率>95%。按小学教学经验,识字900个左右,基本可以读书、看报、写作文。按照小学教学大纲,小学毕业识字2500。GB2312的一级字库的频率和>99%。4000个汉字能达到99.9%使用频率。最常用的汉字:的(3.83%)、一(1.26%)、是(0.97%)、在(0.95%)、了(0.85%)、和(0.75%)、有(0.69%)、主(0.60%)、中(0.6%),这十个汉字占11.16%。

  13. 汉字正形 • 同一个宋体字有不同笔画或不同结构的,选择一个便于辨认,便于书写的形体; • 同一个字宋体和手写楷书笔画结构不同的,宋体尽可能接近手写楷书;不完全根据文字学的传统。

  14. GB2312-1980 • 1981年颁布,《信息交换用汉字编码字符集·基本集》。 • GB2312字符集由三个部分构成 • 字母、数字和各种符号,包括拉丁字母、俄文、日文平假名与片假名、希腊字母、汉语拼音等共682个(统称为GB2312图形符号); • 一级常用汉字,共3755个,按汉语拼音排列; • 二级常用字,共3008个,因不太常用,所以按偏旁部首排列。

  15. 83(53h) 20(14h) GB2312-80的字符集及字符布局 每一个汉字或符号有一个确定的位置,该位置的区号和位号就是这个汉字的“区位码”。 大 区位码是2083,即 0010100,1010011 16进制表示为 14 53h

  16. GB2312-80字符集在ISO 2022双8位代码空间中的位置 73h 0x7E 0xA1 0xFE 尾字节 图形符号 0x 30 34h 大 GB2312 汉字 (6763 ) 个汉字 0x77 0x81 0xA1 0xFE 首字节 GB2312-80汉字交换码 0x20 0x20 例如, “大”字的国标交换码是: 0110100 1110011即16进制的: 34 73h

  17. F3h 0x 30 汉字交换码 0x77 大 B4h 汉字机内码 GB2312-80汉字内码 为了在机内区别于西文编码,GB2312 汉字字符集在双8位代码空间中映射到右下角位置,即在国标码的基础上,每个字节的最高位置1 “大”字的机内码为 10110100,11110011 (B4F3)

  18. GB12345-1990 • GB2312-80是面向简体汉字的编码。 • 为了使用繁体汉字,特制订了繁体汉字字符集的国家标准(信息交换用汉字编码字符集--辅助集GB12345-1990) 。 • 兼容GB2312,含 717 个图形符号, 6866 个汉字 • 简体、繁体相同的汉字,编码保持不变, • 对应1个繁体字的,替换为对应的繁体字,如繁体字“燈”,只对应一个简体字“灯”。 • 对应多个繁体字的,替换为最常用的那个繁体字,其它对应繁体字放在扩充区。如简体字“发”,对应“發”、“髮”2个 繁体字。在“发展”一义时,用“發展”,在“头发”一义时用“頭髮”。再如“复”字,在“复杂”一义时用“複雜”,在“反复”一义时用“反復”。这样的简体字有100多个。

  19. GB2312和GB12345的不足 • GB2312汉字一些特殊应用的需要:字数太少,无法满足 • 人名、地名; • 古籍整理、古典文献研究。 • 简体和繁体分属于2个字符集,在简、繁体汉字同时使用时,很不方便。

  20. CJK(中日韩)统一汉字字符集 • 所谓CJK统一汉字编码, 是指不论国家和地区,不论汉字的字义有无区别,只要字形相同,该汉字就只有一个代码。 • CJK字符集以现有各国和地区的标准字符集作为源字符集,将其中的汉字按统一的认同规则进行认同/甄别后,生成涵盖各源字集并按东亚著名的四大字典(康熙字典、大汉和字典、汉语大字典及大字源)的页码/字位综合排序(按部首—笔画数目)排序,构成共27,484个汉字组成的大字符集。 • 经过中、日、韩、越、新的力争,国际标准化组织在Unicode编码体系中给汉字划出了9万多个码位,各国将对CJK汉字字符集作进一步的扩充。

  21. 《汉字内码扩展规范》GBK • GBK全称《汉字内码扩展规范》(1995年) • 向下与 GB 2312 编码兼容 • 向上准备向ISO 10646.1 国际标准过渡,是一个承上启下的标准。 • GBK 规范收录了 ISO 10646.1 中的全部 CJK 汉字和符号,并有所补充 • GB 2312中的全部汉字(GBK/2) • 其他CJK汉字和增补的汉字(GBK/3和GBK/4),共21003个汉字 • 另外还有883个图形符号(GBK/1, GBK/5)

  22. GBK汉字编码的特点 • 汉字数目多,共21003个; • 简体和繁体汉字在同一个字符集中; • 包含了中、日、韩认同的全部CJK汉字; • 双字节编码,第1字节的最高位必为“1”,第2字节的最高位不一定是“1”; • 与GB2312-80保持向下兼容; • 与ISO10646中的汉字字汇兼容,代码不兼容

  23. GBK的代码空间以及字符分布 总计 23940 个码位,共收入 21003 个汉字和883图形符号,未使用的区域作为用户自定义区 增补汉字 图形符号 CJK汉字

  24. BIG5汉字编码 • BIG 5汉字编码是我国台湾地区计算机系统中使用的汉字编码字符集。由Acer等五家公司推出,故称大五码。 • 包含 420 个图形符号和 13070 个汉字(不使用简化汉字)。 • 编码范围是 0x8140--0xFE7E、0x81A1--0xFEFE, • 0xA440--0xF97E、0xA4A1--0xF9FE 是汉字区。

  25. BIG5汉字编码空间

  26. 通用编码字符集UCS • 需求: • 各个国家和民族都有自己的语言和文字,现代人类使用的语言有6800种。 • 希望所有这些语言文字都能方便地进行计算机通信,特别是允许能同时使用任意多种语言文字 • 例如:  • 中文简体:南京大学计算机系 • 中文繁体:南京大学計算機系 • 日文:今日はいい天気ですね • 俄文:йцкуенгшщзфывапльсчя • 俄文:ЙЦЕНГШЩЗДЛРПАВЫФЯЧИЬ

  27. ISO/IEC 10646 (UCS) • ISO/IEC 10646 即“通用编码字符集”(Universal Coded Character Set,简称UCS), 相应的工业标准称为“Unicode”,两者完全兼容。 • 设计目标: • 实现所有字符在同一字符集中等长编码、同等使用的真正多文种信息处理。 • 1993、2000分别发布标准的第1部分(ISO/IEC 10646.1:1993和10646.1:2000),对应的中国国家标准是GB 13000.1。第2部分(ISO/IEC 10646.2)也已发布。

  28. UCS的体系结构 在 UCS 中每一个字符用 4 个字节编码,对应着每个字符在编码空间的组号、平面号、行号和字位号。

  29. UCS的代码空间 专用平面 辅助平面 基本多文种平面(BMP)

  30. UCS 的BMP 平 面

  31. UCS的变形显现形式之一UTF-8 • 为了与原8-bit系统保持向下兼容,UCS还可以采用8位编码,即采用单字节表示ASCII字符,这种可变长编码称为“UTF-8”(UCS Transformation Form – 8) • UTF-8(可变长形式编码), • 单字节: ASCII字符(from 20 to 7F) • 双字节: Latin等字符(from 80 to 07FF) • 三字节: 其它BMP字符 • 四字节: 其它字符

  32. UTF-8的变换

  33. UCS的变形显现形式之一UTF-16 • 为了扩大字符集的容量,在UCS文本中还允许插入一些4字节的UCS-4字符. • 在BMP平面中保留了2个有1024个位置的块(D800 到 DFFF),这些位置不能用来表示任何符号, • 从每一块中各选一个数字所组成的这些数字对,可用来表示多达100万个UCS-4字符。 • 这种编码方式面向双字节,允许4字节编码,称为“UTF-16”( UCS Transformation Form – 16 ),这是一种处理效率与存储容量折中的编码方案。

  34. UTF-16的变换 v = 0x064321 v′ = v - 0x10000 = 0x54321 = 0101 0100 0011 0010 0001 vh = 01 0101 0000 // higher 10 bits of v′ vl = 11 0010 0001 // lower 10 bits of v′ w1 = 0xD800 // the resulting 1st word is initialized with the high bits w2 = 0xDC00 // the resulting 2nd word is initialized with the low bits w1 = w1 | vh = 1101 1000 0000 0000 | 01 0101 0000 = 1101 1001 0101 0000 = 0xD950 w2 = w2 | vl = 1101 1100 0000 0000 | 11 0010 0001 = 1101 1111 0010 0001 = 0xDF21

  35. Unicode的应用 • Unicode给全世界各个国家和地区使用的每个字符提供了一个唯一的编码 • Unicode标准已经被IBM, Microsoft, Apple, HP, Oracle, SAP, Sun, Sybase和其它许多公司所采用,最新的许多软件标准都需要Unicode,例如XML, Java, CORBA 3.0, WML等,许多操作系统、所有最新的浏览器和许多其他产品都支持Unicode。 • Unicode标准的出现和采用,是近些年来全球软件技术最重要的发展趋势之一。

  36. UCS/Unicode与汉字编码——GB18030-2000 • 与现有的绝大多数汉字操作系统、中文平台在计算机内码一级兼容,即与国家标准GB 2312信息处理交换码所对应的事实上的内码标准兼容 • 在字汇上支持UCS/Unicode (GB13000.1-1993)的全部中、日、韩(CJK)统一汉字字符和全部CJK统一汉字扩充A的字符。 • 同时收录了藏文、蒙文、维吾尔文等主要的少数民族文字,为推进少数民族的信息化奠定了坚实的基础。 • 该标准由信息产业部和国家质量技术监督局在2000年联合发布的,并在2001年开始执行。 最新标准为2005版

  37. GB18030-2000的编码 采用单字节、双字节和四字节三种方式对字符编码。

  38. GB18030-2000的应用 • 2001年,微软公司发行的操作系统简体中文版Windows XP遵守了新颁布的国家标准GB18030-2000, • 微软的办公软件简体中文版(Office XP)则捆绑了方正集团的大字库,收字达到64000个。 • 然而,仍有许多中文信息处理软件还没有支持GB18030-2000标准,甚至没有支持GBK规范,对于人名、地名中的昇、昈、昉、镕、珺、喆等看似生僻而实际上并不生僻的字无法处理。

  39. GB2312-80 (GB12345-90) GBK 兼 容 CJK汉字字汇 GBK 不兼容? GB2312 UCS/Unicode GB18030-2000 GB18030 汉字扩展区 内码区 小结1

  40. 小结2 • 编码字符集(coded character set) 按某种规则编码的字符的有序集合。每个编码字符集有三个最重要的属性: • 字汇(repertoire):编码字符集中有哪些字符 • 编码规则:如何确定每个字符的代码 • 码长: 字符代码的长度。它决定了代码空间的大小 • 定长码:7位,8位,双字节,4字节 • 可变长码:单-双-4字节码

  41. 二、文本处理

  42. 目的和内容 • 目的:用计算机对文本中包含的文字信息进行包括对字、词、短语、句、篇章的识别、转换、压缩、存储、检索、分析、理解和生成等有关的处理。 • 内容: • 字数统计,字频统计,简/繁体相互转换,汉字/拼音相互转换,排序,错误检测; • 自动分词,词频统计,词性标注,词义辨识,大陆/台湾术语转换; • 文本压缩,文本加密,文本著作权保护; • 关键词提取,文献分类,自动文摘生成; • 文本检索(关键词检索、全文检索),文本过滤; • 文语转换(语音合成),文种转换(机器翻译); • 篇章理解,问答系统,自动写作等。

  43. 基于词的处理--自动分词技术 • 什么是分词 • 词界(Word Boundary)是词语之间的间隙,词界的标志是两个词之间的空格。汉语分词的过程也就是找出词界的过程。 • 分词的意义 机器翻译、信息检索 • 分词的难点 • 歧义识别 交叉歧义:“表面的”;组合歧义:“这个门把手坏了”,“请把手拿开”;真歧义:“乒乓球拍卖完了” 今年真好晦气全无财帛进门、熊出没注意! • 新词识别 地名,人名等,“王军虎”,“王军虎头虎脑的”

  44. 基于词的处理--自动分词技术2 • 分词方法 • 基于字符串匹配的分词方法(机械方法) • 基于理解的分词方法 • 基于统计的分词方法 • 基于机器学习的方法

  45. 文档自动摘要技术 • 目标: • 利用计算机自动处理技术,以比较小的篇幅表述整个文档的主要内容。 • 要考虑的因素有摘要的准确率、盖全率、文件摘要压缩比(Compression Ratio)、摘要可读性、流畅性、用户焦点等,这些因素直接影响自动摘要结果的好坏 • 几个自动摘要方法 • 基于统计的自动摘要 • 基于理解的自动摘要 • 基于信息抽取的自动摘要 • 基于结构的自动摘要

  46. 自然语言理解/自然语言处理 • 主要应用领域: • 机器人语音对话 • 大型数据库的自然语言查询 • 计算机自动创作 • 机器翻译和机助翻译 • 话语自动翻译 • ……

  47. 三、文本显示

  48. 1. 点阵字体 HZK12 HZK16 HZK24s HZK24k HZK24H

  49. 显示步骤 • 获取该汉字机内码; • 由机内码推算出区位码; • 由区位码计算出记录号rec =(区码-1) *94(位码-1); • 由记录号rec计算汉字在字库中的位置offset ; • 读取相关字模信息,画点写字

More Related