Laura:AI 字幕翻译经验分享 AI研习社第 52 期猿桌会

  越来越多的小伙伴们加入到 AI 课程的字幕翻译队伍。在这些翻译同学中,有些是 AI 相关领域的学生或从业者,有些是纯粹的知识爱好者,很多同学并未上过英语翻译课程,未经受过专门的翻译技巧培训。

  近日,在雷锋网 AI 研习社公开课上,上海外国语大学英语专业硕士毕业、目前长期从事专职英语翻译的 Laura 就从自己英语翻译的专业背景出发,从实战的角度,分享 AI 字幕翻译的技巧,希望帮助更多同学事半功倍地做好字幕翻译。公开课回放视频网址:

  Laura:上海外国语大学英语专业硕士毕业,目前从事专职英语翻译工作。曾获 CATTI 二级口译、高级口译等证书,雅思 8.0。在网易公开课、雷锋网(公众号:雷锋网)、Udacity 等平台做字幕翻译志愿者,参与翻译 CS231n、CS224n、Deep Learning Nano Degree 等 AI 相关课程。

  我今天会跟大家分享一下关于 AI 字幕翻译,我自己的一些经验和技巧。首先自我介绍一下,我是上海外国语大学英语专业的研究生,主要研究口译方向,曾考取了 CATTI 二级口译、高级口译等证书,雅思 8.0,目前专职从事于翻译工作,包括口译和笔译两个方面。在字幕翻译经历方面,我曾从事⽹易公开课的 TED TALK(科技相关话题)的翻译工作,还曾担任 UDACITY 的深度学习纳⽶学位课程字幕组翻译审核负责人,累计翻译、审校 5000 多行课程字幕,目前在雷锋字幕组参与翻译、校对 CS231n、CS224n、Hugo 教学视频等 AI 相关课程。

  本次分享,我会从一个英语专业出身的译者角度出发,主要从 4 个方面讲一下怎样做好 AI 字幕翻译:第一,字幕翻译的特点;第二,字幕翻译的原则;第三,字幕翻译的规范;第四,实战翻译的 TIPS。

  一是瞬时性,指的是字幕出现在视频上,停留的时间非常有限,往往一闪而过,这对阅读速度有一定要求。这里有一个概念,叫做 CPS——Character/Second,TED 上也对这一项有要求,就是阅读速度不要超过 21 cps。简单来说,就是这个 CPS 不应该太高,字幕不能过密、过长,不要让观众来不及看。

  因此,我在这里为大家推荐一款字幕软件,叫 Aegisub,它可以实时显示 CPS。大家可以看一下这个表格,在第三列,软件会根据字幕的长短和时长来计算出 CPS 值,颜色越深,就表示这个字幕越密,即 CPS 值越高。如果这个位置显示的颜色过深,大家就需要考虑一下,简化一下自己的表达。

  另外,还有一个检查字幕是否过长的方法就是,你可以自己模拟一下观众,翻译完后将视频进行回放,以观众的视角,看一下你在看视频的时候能否跟上字幕的速度。这是一个比较简单的检验方法,我自己也经常使用。

  二是单向性,因为字幕作为视频的一个呈现,理论上我们是不会去回看的。这一点上,字幕与一般文本是截然不同的,文本可以同时看到大片信息,而字幕则是——这一句过了,再显示下一句。因此,你在句式结构使用上,尽量不要使用嵌套式的句式结构,即不要将一句话分成不在一个页面上的两行字幕,这样观众就需要先记住前一句话,再结合下一句话才能完全理解,从而造成他们理解上的负担。

  三是多线程模式。大家自己在看课程或视频的时候,会一边听语音,一边看字幕,对于大脑来说,它需要把精力同时分配给不同的任务,在这样的情况下,分配给字幕阅读的精力就十分有限。因此大家在翻译的时候,语言与句式都不要太为复杂。

  接下来说一下翻译中要遵循的原则。根据上面的三个特点,我归纳出来以下几个原则:

  第一是语言的简洁性,即在表达上要化繁为简,让大家在看的时候能跟上字幕的显示速度,句子不要太长。

  第二是方便阅读,这是指大家不一定要进行字对字的翻译。在我们翻译那些 AI 课程的时候,让观众看懂、学懂才是最重要的目的,基于这个目的,你在翻译的时候,首先你要自己看懂这个句子,搞清楚它想说什么,然后用观众能够理解、听懂的方式表达出来。所以说做课程字幕翻译的时候,传递知识才是最重要的,如果你自己一知半解,也无法保证观众看懂,那就无法达到这一主要目的。

  第三是意群完整,指的是不要在不合适的地方断句。我们遇到的英文视频,原本的英文字幕可能是由一些软件自动生成的,断句的地方不合适, 因此在翻译时需要对这些断句进行调整。例如,某些英文原字幕会在形容词和名词间断句,这既不符合英文表达习惯,更不符合中文表达习惯。

  第四是前后一致。在翻译课程的过程中,我们往往会遇到很多专业术语,这些术语可能会前后出现很多次,特别是在时长一个多小时的课程由同学们合作完成字幕翻译的情况下,这些术语可能会因大家翻译的差异而出现前后不一致的情况。因此,大家在校对时,尤其需要注意前后术语的一致性。同时,大家也可以在翻译之前,就一起讨论、统一术语的表达,以避免给观众造成一些理解上的负担。

  下面我讲一下字幕翻译的规范。事实上,一些字幕平台,自己就会对字幕翻译有一些要求。

  第一是关于标点的使用。比如现在雷锋字幕组在做的这类翻译,就采用空格来代替逗号和句号。我一般都是用两个半角空格来代替逗号和句号,但是对其他的一些标点,比如顿号、冒号、问号、书名号这些具有实际意义的标点,是需要保留的,只是逗号、句号这些表示断句的标点用空格代替。

  第二是关于书名、人名和公司名称的翻译。一般来说,如果公司名有约定俗成的中文译名,那就直接采用该中文译文,比如说 Google 在中国,就被叫做谷歌;如果公司名还没有中文译名,即当你上网搜索时,发现网页采用的都是其英文原名,可以保留它的英文名。

  而书名和论文名,一般都要求翻译成中文名。关于书名,你可以先去网上查一下这本书是否出版过中文版本,如果有的话,你就采用已有的中文译名;如果还没有,你可以根据自己的理解翻译一下。

  还有一个需要特别提一下的就是人名。我自己在翻译的时候就遇到过,一些老师或者助教是华裔,名字是拼音式的英文名,我们一般能在网上查到的他们原来的中文名,因此大家在翻译的时候要尽量避免音译。比如我曾翻译过一个名字叫Danqi Chen,她是斯坦福的一名助教,我会在网上搜一下,找到她的中文原名——陈丹琦。

  第三是字幕长度的控制。我在这里列了 TED 的标准,比如说每行总长度不超过 42 个字符,这是一个参考。我们在翻译的时候,也要看一下这一页字幕的效果,然后自己把握一下。我下面也附上了一个相关链接:,大家可以参考一下。

  第四是关于断句。我前面也说了不要在意群中间断句,就比如说图中的第一个句子,在这里它将「one bit of terminology」变成了两行,我在翻译的时候,就会把「术语」提到第一行字幕上。第二句的断句也是非常不自然——PhD 和 student 中间断开了,这可能是因为字幕自动生成而产生的问题,因此我翻译的时候将「博士生」的翻译直接放到了下一行字幕。最下面的链接:,里面有一些断句相关的建议,大家也可以参考一下。

  现在就进入实战部分,我来具体介绍一下翻译中比较实用的一些技巧和方法,主要为以下四点:

  第一,化繁为简。其实中文和英文是两种非常不同的语言。英文是一种「形合」的语言,通过句法手段、词汇衔接等方式来体现逻辑关系,多数词都只是有一个逻辑上的连接功能,功能性大于内涵。我们经常用的一个比喻就是英语就像一串葡萄,它有一个主干,把一颗颗葡萄穿起来——这些葡萄就相当于一个一个的意群,靠着主干和上面的分支然后将其穿起来。

  中文则是「意合」的语言,不依靠句法、结构上的显性关系串起来,而是依靠其内容的内在逻辑,更具画面感和意境。比如说「枯藤老树昏鸦,小桥流水人家」这句诗,全部由名词组成,这样的句式在中文字是很美的,但是在英文中是不可能出现的。

  所以我们会说,中文的感觉就像大珠小珠落玉盘,一个玉盘中装着很多珠子,由一个个意群组成,而不像葡萄有茎干,但是这些意群间是有内在联系的,它们通过内容、实际含义串在一起。中文这样的特点要求我们在翻译的时候做到「得意忘形」,不要被英文的形式给框住了,而是以意合的形式将其翻译出来,否则翻出句子会有英文腔。当然,「得意忘形」需要一个长期的积累过程。

  此外,由于每一行字幕的字数有限,所以大家在翻译的时候要尽可能精简。针对我的一些翻译经验,以及在帮别人校对过程中遇到的一些问题,我也为大家整理一些实用的 TIPS,这些案例都是我在翻译或校对 AI 课程视频中摘取的句子:

  首先,删掉「我们」、「我们的」、「你的」、「你们」这些不必要的词,因此它们在英文中只是结构需要。如「hidden layer」前面需要一个 the、a 或者 our 这样的修饰成分以保证结构的完整性,但是这些修饰词是没有实际含义的。后面两句也是这样。我们可以使用的一个检测方法就是,你试着将这些词删掉,然后看你的译文是否还是通顺、能够理解的。

  其次,要删掉一些 fillers、口头禅,如 sort of, a bit of stuff, kind of, you know 等。举个例子,在一些课程中,有一些教授在构思自己接下来要说的话的时候,可能会不由自主地使用他们自己的一些口头禅来缓冲一下——中文中也有类似的,比如「然后」、「那么」、「就是」这类词。图中有一些案例,大家可以看到带了 sort of 、a bit of 这些词的英文句子,显得很啰嗦,大家在翻译的时候都可以将其删掉。

  最后一点就是简化表达。比如这一句「made our network more efficient」,大家不需要一看到 make 就把句子翻译成「把」字句,直接使用动宾结构就可以了。在另一句中,前面这句「what were gonna do 」和后面这句「a bit of stuff about」都没有信息量,大家完全可以不翻出来。总之,大家在翻译的时候,要想一想是否有更简练的表达。

  第二,巧用空格。字幕中,如果出现长长的一句话,观众看起来会很费劲,就像我之前说的,因为这是一个多线程的操作。我们在瞄一眼字幕后,怎样才能迅速 get 到信息点呢?一个很简单的方法就是在合适的地方加入空格,把长句变成一个个小短句,以减轻观众的理解压力,从而提高他们的阅读速度。可以加空格的地方就是那些可以拆成独立意群的地方。下面我们看一些具体案例:

  比如在「因为」、「所以」、「目前」、「我认为」等词以及「十年前」等表示时间的短语后面加上空格,以方便观众能迅速阅读到信息点。

  此外,还可以将从句拆开,变成短句/短语。大家可以参考一下我在图中列出的案例。

  三是顺句驱动。这其实是同传翻译中的一个技巧,思路是:我们尽量顺着整句话的意思,按顺序提取句中的意群,然后依次将一个意群一个意群翻出来。在这个过程中,我们可能要对原来的句子结构进行一些调整或者添加一些连接词或者进行句子的转换。我讲一下以前我们同传老师会讲到的例子,比如说 There are still 5 minutes / before we call it a day 这句话,如果使用一般的翻法,我们会翻成「在我们结束今天的会议之前还有五分钟」;但如果运用顺句驱动,可以翻译成「还有五分钟,我们就散会」,这样就把句子顺下来了。第二句,也是这个道理。这种翻译方式可以给大家多一种选择和思路。

  而顺句驱动中,第一个具体技巧就是重复。在一行字幕信息不完整的情况下,你可以通过补全这一行的关键字,让每一行的字幕都显得完整,同时也可以在不打乱句子结构的情况下,就能顺着英文意思进行翻译。比如第一个案例,每一行的内容都出现了「内容」,这些「内容」都是为了让每一行字幕看起来完整而补上去的。第二个例子,也是这样。

  第二个具体技巧是词性转换。中文的一大特点是动词用得很多,基于这一点,我们可以把英文中的名词成分或介词成分变成动词。比如第一个句子中的 winners,本来是一个名词,但可以被翻译成「胜出」,这样更能让句子顺下来,也比较贴合中文的表达习惯。

  第三是被动变主动。因为中文中主动句式会比较多,因此如果翻译出来的被动句式出现过多,就会给人一种浓浓的翻译腔。

  此外,我们也可以对句子做出一些其他的变化,例如我在下面这句话的翻译中,结合上下语境,不将 whether 直接翻译出来,而是用「准确性」来表达整句话的意思。

  第一个是边学边翻。如果你在翻译一个课程的同时,正好又在学习这个课程,当碰到不懂的情况,会先去网上查一些同一话题的中文资料,来让自己弄懂知识点后,再以观众能理解的中文表达出来——这样不仅会让翻译效果更好,而且也会对你自己的学习有促进作用。

  首先,我们可以先上网搜一下这些术语,但是搜的过程中,要注意这些来源是否靠谱。比如我自己在百度进行搜索时,会特别注意来源——我个人比较喜欢 CSDN 博客、知乎这些来源的文章。另外,我也推荐一下吴恩达老师的公众号「吴恩达deeplearningai」,因为他在Coursera 开了 Deep Learning的课程,该课程被翻成了中文资料,会在他的公众号上推送。这些资料里面对一般术语的中文翻译,我认为是比较权威的。

  第二个方法就是用雷锋字幕组的云词库。我们在翻译过程中,如果遇到不懂的术语,可以参考云词库中的中文翻译。

  如果上述方法都不管用,大家可以跟群里的小伙伴们讨论一下,一起找到一个比较合适的翻法。

  这里我要特别说明一点就是,AI 这个领域目前还处于快速发展的阶段,其中的很多中文表达还没有固定下来。大家平时在网上搜索某个术语的时候,也会从不同的来源看到不同的译法,在这种情况下,一个比较好的方式其实是,大家一起讨论一下哪种译法更贴合中文的表达习惯、更能反映其英文所要表达的意思。大家不要认为网上出现过的翻译就是最好的,如果我们能够讨论出更加合适的译法,并让它更广泛地被使用,成为主流,就更有意义。

  第一种情况是,有些术语有缩写、简写。大家遇到这类术语时,可以采取的方法是:第一次出现的时候,先翻译成中文,并在后面加上括号写上它的英文缩写,当下次再出现这个概念的时候,字数有限的情况下,就可以采用缩写。比如这句话,第一次出现 natural language process,我先把「自然语言处理」翻译出来,并在后面的括号中写上 NLP,当该术语在后面出现的时候,直接用 NLP 即可。这其实也能帮助观众积累一些英文专业术语的知识,换句话说就是,当他们以后在浏览信息时看到这些术语的英文缩写,他们就知道这个缩写指的是什么。

  第二种情况是,可能你觉得英文部分没有讲清楚,或者你觉得观众看到后不能很好理解,需要加一些解释说明。这个时候,你可以使用一些最简练的话来对其进行解释说明,如果因为加了说明而变得太长,可以考虑将后面的话移到下一行,做一个微调,毕竟字幕翻译的最终目的,就是为了让观众看懂。比方说,我在翻译 ResNet block 的时候,想到有很多观众可能会看不懂,因此我不仅将「ResNet 模块」翻译出来了,还在后面标注上了我对这个术语的理解「注:即上下都有1x1的卷积层」。

  碰到这种情况,有一半的概率其实是英文字幕本身是错误的,比如 encoding 打成了 incoding,conv net 打成了 com net,pair 打成了 pear。那怎么做呢?大家可以听一下英语原音,比如说第一句中出现了一个 comNet,我们理解不了,我们可以听一下视频原声,会比较容易发现其实这个单词应该是 conv net。另外一种方法是(针对某些课程),在返回去听英文原句的同时,配合查看相应的 PPT——因为有时候教授在念这一句话的时候,课程中的PPT上也会同步显示这句话。比如我遇到过一个字幕,句中的 if 造成了翻译困难,但当我去查看 PPT 的时候,发现其实 if 是没有的,删掉 if 以后,这句话就变得很容易理解了。