自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

寒小阳

专注机器学习/数据挖掘

  • 博客(21)
  • 资源 (2)
  • 收藏
  • 关注

原创 找工作笔试面试那些事儿(3)---内存管理那些事

七、内存管理       在写C/C++程序的时候,最头疼的部分一定包括内存管理,一提到内存管理总是提心吊胆,但是又不可避免地常常会遇到,而这块的知识也是公司招聘的一个评价方面,能够很好地体现笔试面试者的功底。这部分的内容稍深一些,大家细心阅读,能对内存管理有一个比较好的把握。7.1 内存分配的方式       最长被问到的问题之一,基础中的基础。对C和C++而言,内存分配方式有三种:

2013-08-30 22:56:46 14492 8

原创 找工作笔试面试那些事儿(2)---函数那些事

六、函数那些事       函数是C++/C 程序的基本功能单元,当然是笔试面试重点考察内容。函数接口的两个要素是参数和返回值。C 语言中,函数的参数和返回值的传递方式有两种:值传递(pass by value)和指针传递(pass by pointer)。C++语言中多了引用传递(passby reference)。函数的设计必须兼顾功能正确和细节合理。这里对函数的接口设计和内部实现提供了一

2013-08-29 17:30:20 11399

原创 找工作笔试面试那些事儿(1)---C,C++基础和编程风格(2)

四、表达式和基本语句4.1 运算符与复合表达式       首先非常重要的一个点是C/C++运算符的优先级问题,下图为总结的一张表,结合律特殊的运算符已经用黑体加粗标明出来了。       说实话,上表中的运算符优先级和结合律要熟记是非常困难的。虽说有表在,但是也不能每次都查表,所以我们在写程序的时候尽量要遵循后续规则:       如果代码行中的运算符比较多,用括号确定表达式

2013-08-29 14:40:38 12571 5

原创 找工作笔试面试那些事儿(1)---C,C++基础和编程风格(1)

前言       眼看着又要到一年一度的找工作季了,遥想去年这会儿,学校同学们也都是一副要上战场似得枕戈待旦整装待发的情景。想来自己当时笔试面试也确实参加了不少,无奈技术和智商平平,最后结果一般,但也确实经历了不少,外加一直有总结和整理资料的小习惯,手头上确实攒下了一些笔试面试的资源。又最近频繁有师弟师妹问我要相关的资料,想来还不如自己整理整理发到博客里,大家都能看看,希望能有一些帮助吧。

2013-08-28 21:46:40 18679 2

原创 从头细说统计机器翻译(1)

做统计翻译系统(SMT,statistical machine translation)也有一段时间了,接触了大大小小好几个翻译系统,使用它们的同时也对其原理进行了一定的了解,阅读了一些中英文资料文献,对统计机器翻译的过程有了一个比较完整的认识,自己也做了一些笔记。比较详细的一本介绍统计机器翻译的书是Philipp Koehn写的《Statistical Machine Translation》,

2013-08-26 17:48:26 13670

原创 机器翻译重要过程(3)---抽取短语

上一步通过GIZA++进行词语对齐,我们得到了对应的中英文词对,在此基础上我们就可以进行第三个重要过程了,即抽取短语。短语抽取是短语翻译表构造的第一步,而短语翻译表是翻译系统解码器的要使用到的最重要组件之一,所以抽取短语这一步意义非常大。示例:       上图展示了从含有词对齐信息的双语平行句对(上方图所示)中抽取的短语对(中下方的“示例短语”所示)。从图中可以看出,理想

2013-08-25 13:23:09 8342

原创 机器翻译重要过程(4)---估计概率构造短语翻译表

经过第三步抽取短语后,获得基于短语系统使用的翻译短语对,而接下来的第四步就是短语翻译表概率估计,它的作用是对翻译短语对的正确性进行合理的评估。        在上一节,我们得到了短语对集合,如下图所示:        在这里,我们估计概率主要进行四个分数的计算,即双向短语翻译概率(正向:“源语言->目标语言”方向;反向:“目标语言->源语言”方向 )、双向词汇化权重。首先,在上图上

2013-08-25 06:04:10 5836 2

原创 机器翻译重要过程(2)---词语对齐

在上一步预处理完成之后,平行句对中的中文部分都被切分成了相应的短语,而英文的大小写、格式、相应的空格也都加上了,在这之后就可以完成词语对齐的过程了。词语对齐的目标是得到中英文词或短语的对齐信息,便于翻译系统做解码时寻找相应的phrase。      词语对齐这一步一般都采用开源工具完成,比如现在用的最多的GIZA++,但是在平行语料数据量大的情况下,可能其完成整个词语对齐的过程耗时较长。现在也

2013-08-24 20:31:18 12430

原创 机器翻译重要过程(1)---数据预处理

目前有如之前基于统计的开源翻译系统介绍中提到的许多开源统计翻译系统,在由原始平行语料到形成最后的翻译系统的整个过程中,它们有一些相同的处理步骤,从这次的文章开始,陆续介绍几个最重要的过程做法及其意义。       一般在我们得到双语平行语料之后,在构建双语统计翻译系统之前,都会有一个双语数据预处理的过程,为后续例如词对齐处理提供分好词且格式恰当的双语数据。这里以汉英双语数据举例。

2013-08-24 19:42:05 10596

转载 perl编程规范

1 命名规则1.1 文件命名文件名称统一用英文字母(大小写)、数字和下划线的组合,长度一般不超过20个字符,文件命名体现功能的含义,正式发布版本不能加入作者信息。Perl Scripts 文件的扩展名必须是".pl",Perl Module文件的扩展名必须是".pm"。正确:lucent_file_parser.pl不是:lucent_file.p1.2 标识符 采

2013-08-23 17:02:05 3693

原创 perl总结(4)--grep和map

1) 介绍2) grep - 过滤数组3) map - 对数组中的内容做批量处理4) "grep"和"map"的相似之处5)一些相关例子             -------------------------------------------------------------------------------------------------------------

2013-08-23 16:08:04 3228

原创 perl总结(3)

七、正则表达式        这次对perl的正则表达式做一个总结。        正则表达式是perl在文本处理时最为简洁方便的功能。可以迅速地查找/替换字符串,提取字符串中想要的部分做处理。一般都说正则表达式是一个描述模式(pattern)的字符串,而所谓模式,其实是我们需要寻找的特定的字符序列,由一对反斜杠包起来,例如/def/即模式def。一、匹配操作符

2013-08-22 16:24:16 2321

原创 perl总结(2)

四、控制语句1. 条件语句:有以下几种形式的条件语句,和C,java还是类似的。if ( expression )  BLOCK;if ( expression )     BLOCK1else BLOCK2;if ( expression1 )     BLOCK1;elsif ( expression2 )    BLOC

2013-08-22 11:57:25 2168

原创 perl总结(1)

Perl作为一种脚本语言,用于自然语言处理和文本相关的问题上,非常简单直接。最近用的也比较多,在这里做一个小总结吧。       首先介绍一下数据类型(变量类型),perl中有三种类型的变量,用不同的前缀来区分,如下所示。Perl中的变量是不需声明也可直接使用的,但是声明变量有助于查错,是比较好的编程习惯,还是建议大家在使用之前先声明一下吧。1、Scalar(标量)

2013-08-21 17:42:49 2325

原创 使用MOSES搭建网页翻译系统

在你完成整套moses的训练和微调(tuning)之后,你可以在本机上对文本里面的内容进行翻译,或者手动在终端输入进行翻译。这种方式作为研究是可以的,只适合单人使用,一个实际的服务器能同时处理多个人的翻译需求,且整个系统只启动一次,不用每次来一个请求载入一次相关数据(因为moses的数据较大时载入需要一定时间)。这样我们就应该以server的形式启动我们的翻译系统。1 简介

2013-08-21 11:51:23 6926 5

原创 机器翻译评估标准介绍和计算方法

对于翻译系统翻译出来的结果,我们当然可以人工判断其好坏,但这有很多限制。首先,每个人的评判标准不一样;然后,这对于评判人自身的英语水平也是有一定的要求的。近年来国际上也出了一些用于机器评判翻译结果好坏的标准,下面一一介绍一下这些标准及其计算方法:一、BLEU评测方法BLEU(Bilingual Evaluation understudy)方法由IBM提出,这种方法认为如果熟译系统魏译文越接

2013-08-20 21:31:27 27481 4

原创 MOSES的高级特征和功能

一、Binary Phrase Tables with On-demand Loading顾名思义,就是moses具有这样一个功能:将词表(phrase table)二值化并按所需(所需要翻译的内容)载入需要的部分。这是因为一个实际的翻译系统,其phrase table通常会非常大,大到很难一次性将其载入内存。首先需要将标准ascii编码的phrase tables转化成二值化的格式,以下

2013-08-20 17:53:52 5591 2

原创 基于统计的开源翻译系统介绍

到目前为止,多个开源的SMT系统已经开发出来,在完成许多翻译任务中有着先进惊人的性能,如中国的英语和阿拉伯语的英文翻译。这些系统中的一些重点使用基于短语的模型(如摩西),且多年来已经已被广泛用于社区,而其他人试图用层次模型(如Joshua)处理不同语音之间的句法结构的变化。虽然这些系统和其使用的方法都能得到很有竞争力的翻译质量,但是他们的侧重点不一样,也有着不同的长处和弱点。以下我将对目前开源的S

2013-08-20 17:09:13 4993

原创 MOSES系统训练中间过程和意义详解

关于Moses训练的那些事      前面已经将moses从编译到训练测试的整体流程过了一遍,想必大家对这个工具有了一个大致的理解。这里再详细说一些东西,可能能帮助大家对moses有更深的认识。      也许你在训练过程中会遇到一定的问题,事实上,训练总共分为7个steps(步骤),有些情况下(尤其是语料非常大的时候,这个本人非常有体会,昨天训练了700万句平行语料数据,结果...)执行

2013-08-20 16:44:27 7444 1

原创 MOSES翻译系统的训练,调优和使用

这里我假设你已经成功安装了摩西moses,并希望在平行语料数据的基础上建立一个真正的短语翻译系统。这个过程需要一定的Unix的基础,理想情况下,最好还有一台Linux服务器。当然,如果你只是想试试的话,你也可以在一台笔记本电脑上安装并运行它,但最少要2G的内存(貌似现在的电脑都至少有这么大吧),和10G的空闲磁盘空间(声明一下,这是本人估计的,有可能配置达不到这个也能跑,但训练的速度会非常慢的)。

2013-08-20 15:32:49 13915 31

原创 手把手教你编译MOSES机器翻译系统

摩西是一个由英国爱丁堡大学的SMT先锋团队[科恩等人,2007 ]开发的翻译系统。摩西的最新版本支持许多特征和功能。例如,它支持基于短语和基于语法基础的模型(从短语/规则提取解码)。同时,它提供的因素翻译模型(factored translation model)使得系统能够使用在不同层次的多种信息。此外,混淆网络(confusion network)和字格(word lattices)可以用来作

2013-08-20 11:51:35 12764 1

高质量C/C++编程指南

非常好的编程指导资源,能够帮助养成良好的编程习惯,同时也能留心一些C/C++编程的注意点。

2013-08-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除