Internship in iDST

来阿里iDST的第三周了,开始的两天在西溪园区里面还是有点晕头转向,不清楚工作区和食堂的结构,乃至于每次吃饭都从七号楼走到二号楼,因为不知道七号楼和八号楼有食堂……大概到了第四天就基本熟悉了,每天装的像个老员工一样上班,开会,吃饭,午休。

老实说,在这里的感觉和学校很相似,毕竟作为一个实习生,没有工作上的压力,也没有正式员工各种项目和各种会。每天和在校一样,跑实验,写代码,带着期待看实验结果……,效率上还是要优于学校的,很多方面原因吧,机器比实验室的好,实验跑的快,任务相关度较高,也没有学校的很多杂事,每天的精神高度集中,倒是每天早上要开个立会。考虑到人员的分布,所谓的立会也就是个电话会议,汇报一下前一天的工作,我的效率自我感觉还可以,每天的进展还是可以保证的。周末我还是照常去公司,我比较喜欢安静吧,周末去公司的员工比较少,一个人待在里面很安静,毕竟工作日的话,淹没在各种讨论,电话之中,心里还是有些不自在的。

我在这边做一些前端的工作,来之前向老板主动请缨的。说实话,前端我没有多少积累(但是未知对我有很大的吸引力),来之前花了几周时间看相关论文和麦克风阵列,信号处理相关的东西,到这边之后也差不多够用的。其实这边这个组(智能语音交互团队)在前端方面也没有很多技术积累,主要还是偏声学/语言模型的,因此,没有多少可以与之讨论的人,这点比较遗憾(来之前其实想找个大佬带的)。过去两周终于把CHiME4讯飞的前端复现了,中间出一了一点叉子,耽误了一点时间,好在后来check代码的时候发现了,用一个周末把结果跑出来了。

阿里入职之后的麻烦事还是蛮多的,首先就是各种权限问题,机器账户,网址访问,邮件组等等,每次申请都要一批人挨个审核……,大概前三天基本都在解决权限问题,直到上周才算初步搞定权限。实习生配置的是台式机+显示器+键盘+鼠标,这个真是要吐槽了,台式机意味着我只能在公司工作(并不允许使用自己笔记本,想要远程看个实验结果都不行)……键盘,鼠标,罗技,凑合用吧(我下次还是自备吧),显示器标配DELL P2417H,但是配个台式机并没有什么卵用,连个HDMI接口都不给,因为那个台式机上没有……。前一周的工作基本都是用自己笔记本连阿里guest wifi,远程学校机器做的。机器上只能钉钉,我来了之后基本一个教研室同一届的几个人全配合我装上了钉钉,否则他们找不到我,还有一个原因,给我发数据。我是空手来的,之前的数据,代码全在学校机器上,差不多麻烦他们用钉钉给我传了好几个G的数据,然后,MATLAB和Audition,光下载就下了一天(来之前没带安装包,这边又没有ipv6,虽然阿里网速确实快,但是百度云还是慢啊),前一周基本都在解决这些破事,有点心疼时间。

阿里iDTS给我的印象,实话实说吧,来之前以为是个做research的地方,来之后感觉一股浓浓的产品风。总感觉做搞开发(移动端和web)的和iDST的工位混在一起。我软件工程本科,对产品汪的各种讨论到是感觉倍加亲切,尤其某天中午正在午休,突然被一声“你好,电视”惊醒了,我看着那位对着电视debug的前辈,想起了我当年在实验室做KWS Demo的情景,场面一度十分亲切……不过五楼有个AI LIB,不知道那边在搞些什么(PS:iDST对面是咸鱼)。说到我们这个组吧,大部分人还是在搞项目,在实验室其实不太明白KWS这个东西有什么做头,来了之后倒是明白了,产品驱动,入口嘛……

工作压力这边感觉一般吧,大家一般晚八九点走,周末也没有多少人加班,我和团队的人交流不是很多,一点可能是年龄上有差距,大部分人都是85后,要么成家,要么有对象,和我这个还待在学校里面的人关心的东西已经有很大的不同了感觉(可能我这个人care的东西也不是很主流,只想找个地方安心做事)。其次就是团队有人做AM和LM,貌似还有人搞合成,boss应该也是做AM出身,但是搞前端的人不在这个团队内(貌似在西雅图……钉钉上总有时差),因此技术上的交流也不多,这点还是有些失望的。

工作上,把讯飞的CHiME4的Loop复现了,CGMM的效果还是一般,用NN估计mask表现的我这边普遍比CGMM好,其次就是MVDR和GEV的对比上,GEV虽然语音失真比较厉害,但是可以在eval-real这个集合上获得更低的wer,在其他三个集合上表现不如MVDR,我一直觉得四个测试集合音频的性质有差异,经常出现某个集合上变差,另一个集合上变好的现象。讯飞的思路是用VAD信息和IRM修正CGMM的mask,我这边用增强的数据重新算一遍mask和noisy数据的mask做一个combine,也就是说,NN这里扮演着IRM和mask estimator两个角色,VAD方法和讯飞保证一致,今天总算做出gain了,wer降了一个多点,GEV降到6.0%以下,这个结果还是比较正常的。由于目前这个AM是用6ch的noisy数据训练的,所以我对beamforming的结果用IRM做一个单通道的增强,虽然滤去了大部分噪声,但是在wer上是没有gain的,应该是mismatch更大了吧。其实我还想把mask estimator的NN换一个模型,隐式的学习clean/noise的mask,而不是目前的用人工计算的mask作为target,这个实验室他们搞增强的人试过,听说效果不错,可以拿来一试。

学校的考试还有三周,略慌,要开始复习了>_<。