Trouble Using macOS

因为工作原因, 第一次开始尝试使用macOS. 这里列一下一些主要的问题, 方便从GNU/Linux切换过来的的时候参考. 有了解决方案或新的问题我会继续更新. 这里的问题有一些只是习惯不一致, 我可以通过在Linux上配置新的使用习惯来调整自己, 另外一些则是功能缺失.

现在还没决定要不要长期用下去, 因为以下不少问题还解决不好. 当然macOS的优点也很明显:能够使用outlook客户端处理公司邮件/calendar(这是关键原因); UI好看(主要是字体渲染); 不容易出硬件问题(连不上wifi/投影之类的). 所以用于日常开会处理邮件到处跑比较方便, 可能不会用来写很多代码.

Exploration & Exploitation

1

一眨眼就已经毕业了, 在CMU呆了一年半, 大概只做了三件事情.

  • 第一个学期又看了一点geometry, 然后趁机把全景拼接整体上做的科学了. 尤其是写了BA之后, 能把理论上该拼好的图都拼好了.

  • 写了一个tensorpack. 主要是离开了贵司之后发现基本找不到可用的炼丹炉前端, 就在TensorFlow发布之后开始造了一个. 当然现在还是缺很多feature(以及背后的system), 不能满意的scale起来, 最多只能跑跑ImageNet.

  • 赢了ViZDoom的比赛并且发了篇paper, 搞了个小新闻.

如果说还有一点什么成绩, 那就是做了一些低精度网络的东西.但这些都是次要的, 很惭愧, 就做了一点微小的工作.

About Research

这个领域里,什么都特别快.

三个月前看到Bengio组的BinaryConnect. 脸草的同事都很喜欢模型加速/压缩的主题,因此立刻就重现了结果开始改进. 当时就说要做成Binary Activation,并且搞一个GPU runtime. 正当同事们回家过年,我在yy这学期parallel大作业要不就写这个runtime的时候,昨天看到Bengio新的paper挂出来,已经都做完了. 更夸张的是,在前天arxiv挂了另一篇文章,方法基本一样.

三个月,能专心做的话并不难,然而我要应付作业,要去oculus写代码,还有其他好玩的东西在分心. 想着有空慢慢做的时候,别人已经不等你了.

2014 Year Review

迟来的流水账Year Review.

1月放假之后没回家心里想的是待到SIGGRAPH deadline但其实最后几天反正也没我什么事...看了几天书到过年前一周回家.

回家开始背GRE单词,先翻韦小绿翻到一半觉得效率太低开始刷3000. 刷到一大半这时候大过年的突然听说有Facebook新加坡Hackathon, 于是折腾报名, 各种材料, 跑上海办签证还被拒,等等事情一周, 最终成功去新加坡土豪游一圈经雅加达回北京.

Program Efficiency: Algorithm Doesn't Matter So Much - SIGMOD 2014

上学期组团参加了SIGMOD Programming Contest 2014, 进入了Finalist. 因此6月23日至26日, 我在Utah州Snowbird度假村参加ACM SIGMOD/PODS 2014会议.

每年的比赛题目跟ACM-ICPC比较像, 就是给输入, 产生确定的输出. 比赛形式的不同在于, ICPC中选手要尽量快的写出一个运行速度可以接受的程序, 而在SIGMOD比赛里, 我们需要在一个 多月时间里写出一个在给定机器上运行速度尽量快的程序, 而且可以用任何手段(并行, 汇编, SIMD, 文件读写).

最终结果与之前的online测试结果基本一致, 获得了第四名. 听了其他选手的报告, 深深的感觉到, 压榨程序效率时, 算法并不怎么重要.

Classify WeChat Audio Messages using Speaker Recognition

Problem

微信的聊天记录导出一直是挺麻烦的事, 尤其是在iphone上. 前几天想导出一部分语音聊天记录, 就到iphone的文件系统里去找了一下, 发现微信的语音记录存放在/var/mobile/Applications/{app id}/Documents/{user id}/Audio/{friend id}/*.aud

问题是, 微信将两人互相的对话音频存在一个目录下, 不知道如何区分, 去逆向微信的聊天记录格式恐怕比较困难, 于是想到使用上学期做的说话人识别(Speaker Recognition)系统来自动处理这个问题.

BCTF Write-up

受人蛊惑拉拢, 3月8号8点至10号8点, 我参加了首届「百度杯」全国网络安全技术对抗赛(BCTF)资格赛. 大家全都是第一次参加CTF, 发觉自己实在各种弱, 不过长了很多见识..也遇到很多好玩的题目.

我们工具都不太专业, 尤其是二进制能力比较差, 之前从来都没用过IDA, 没配过gdb, Reverse/PWN的题都只做出了最简单的. Web题方面也没什么经验, 有提示的题能跟着线索做, 其余的都茫然了. Day1和Day2上午我们队都曾到过leaderboard top1. 不过慢慢被追上来了. CRYPTO500 如果不被坑的话早点做出来可能还有进决赛的希望..

随便说几个题好了..