表2.7 频率最高的前十个地名中字表 地名用字 首字频次 中字频次 尾字频次 总次数 家 8 4285 240 4533 山 227 2871 3725 6923 河 299 2149 2501 4949 水 410 2001 182 2593 族 0 1676 0 1676 子 47 1627 782 2456 庄 47 1558 515 2120 桥 159 1277 1401 2837 城 382 1249 190 1821 溪 91 1181 247 1518 表2.8 频率最高的前十个地名尾字表 地名用字 首字频次 中字频次 尾字频次 总次数 乡 8 119 36115 36242 镇 121 188 11667 11976 山 227 2871 3725 6823 河 299 2149 2501 4949 县 3 86 1759 1848 桥 159 1277 1401 2837 村 8 939 1275 2222 区 0 16 1141 1157 场 13 322 976 1302 库 93 137 784 1014
表2.9 频率最高的前十个地名用字表 地名用字 首字频次 中字频次 尾字频次 总次数 乡 8 119 36115 36242 镇 121 188 11667 11976 山 227 2871 3725 6823 河 229 2149 2501 4949 家 8 4285 240 4533 大 3134 805 2 3941 桥 159 1277 1401 2837 水 410 2001 182 2593 子 47 1627 782 2456 龙 1169 1064 37 2270 ● 地名的上下文信息 与中国姓名识别中采用的方法相似,我们从大规模真实文本中统计产生中国地名的左右指界词集,并按照指界词与地名的共现频率划分指示级别。级别从高到低依次为l级、2级、3级、O级(无边界) [14],表2.10和表2.11分别列出了中国地名的左边界信息和右边界信息。 表2.10 中国地名的左边界信息 边界级别 类型 实例 1 1级左指界词、地名、地名指代 “原籍”、“开赴” “**省/平邑县” “该县/黄田镇…” 2 2级左指界词、句首 “靠近”、“荣获” 3 3级左指界词 “走访”、“凭借” 表2.11 中国地名的右边界信息 边界级别 类型 实例 1 l级右指界词、地名、地名指代 “高原”、“边界” “平邑县/**村”“…**、高碧/等4乡” 2 2级右指界词、句末标点 “筹建”、“郊外” 3 3级右指界词 “推行”、“物价” 2.2.2 基于规则的地名识别方法中的相关资源 汉族地名在大规模真实文本中出现的基本上是县级及其以上的地名,动态出现的非常少,所以,在地名动态识别过程中,我们可以将县级及其以上的地名都收录到静态的词表中,就基本上解决了绝大部分汉族地名识别的问题。然后再对极少数地名做动态识别[15] [16]。 从地名构成上来看,可以把地名拆分为地名核心成分和地名尾两部分。 例如:地名“浙江省”就是由地名核心成分“浙江”和地名尾“省”组成的,同样地,地名“安苑路”是由地名核心成分“安苑”和地名尾“路”组成的。但是,作为地名标志的“省”和“路”有时候在文本中是不出现的,也就是当我们只说“浙江”时,大家也知道是“浙江省”。 某些中国地名遵循一定的构词规则,主要如下: 【a】 单字姓氏+“家”+地名后缀 如:“赵家楼、蔡家坡” 【b】 数词+“里”+地名后缀 如:“三里屯、五里坪、十八里铺” 【c】 实体名词+地名后缀 如:“葫芦岛、天鹅湖、狼牙山” 2.3 相关程序设计的技术 Visual Basic 是新型的计算机程序设计语言,与传统程序设计语言相比,Visual Basic 有许多特点,最突出的特点是可视化,事件驱动和交互式。 可视化 使用传统的计算机高级语言开发应用程序,应用程序界面都需要程序员编写语句来实现。对于图形界面的应用程序,只有在程序运行是才能看到效果,一旦不满意,还需要修改程序,所以开发工作非常繁杂。 Visual Basic是Windows 环境下的应用程序开发工具,用它开发应用程序主要有两部分工作:设计界面和编写代码。Visual Basic似乎可视化程序开发工具,在开发过程中看到的界面,与程序运行是的界面基本相同。同时Visual Basic 还想程序员提供了若干界面设计所需要的对象(称为控件),程序员在设计界面是,只要将所需要的控件放到窗口的指定位置即可,整个界面设计过程基本不需要编写代码。 事件驱动 在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。程序从第一行代码执行并按应用程序中预定的路径执行,必要是调用过程。 用Visual Basic 开发的应用程序,代码不是按照预定的路径执行,而是在响应不同的事件是执行不同的代码片段。事件可以由用户操作触发,也可以由来自操作系统或其他应用程序的消息触发,甚至由应用程序本身的消息触发。这些时间的顺序决定了代码执行的顺序,因此应用程序每次运行是所经过的代码的路径都是不同的。 因为事件的顺序是无法预测的,所以在代码中必须对执行的“各种状态”作一定的假设。当作出某些设计时,应组织好应用程序的结构,以确保该假设始终有效。在执行中代码也可以触发事件。如果原来的假设该事件仅能有用户的交互操作所触发,则可能会产生意料外的结果。 交互式 传统的应用程序的开发过程可以分为3个明显的步骤:编码,编译和测试代码。但是Visual Basic 与传统的语言不同,它使用交互式方法开发应用程序,使3个步骤之间不再有明显的界限。 在C ,Pascal 等语言里,如果编写代码是发生了错误,则在开始编译应用程序时该错误就会被翻译器捕获,此时必须查找并改正错误,然后再次进行编译,对每一个发现的错误都要重复这样的过程。Visual Basic 在编程者输入代码是便进行解释,实时捕获并突出显示大多数语法或拼写错误,看起来像一位专家在监视代码的输入。 除实时捕获错误以外,Visual Basic 也在输入代码时部分地编译该代码,当准备运行和测试应用程序是,只需要段时间即可完成编译。如果编译器发现了错误,则将错误突出显示于代码中,这时可是更正错误并继续编译,而不是从头开始。 首页 上一页 1 2 3 4 下一页 尾页 3/4/4 相关论文
首页 上一页 1 2 3 4 下一页 尾页 3/4/4