技术手记

统计学时代

// 友情提示, 本文又意识流了, 不喜欢这种风格, 不想大脑被打结的请绕行

昨天跟着一群无聊的人一起看腾讯 QQ 在线超过一亿, 峰值大概是 103.29M 的样子, 又是一个新的统计学时代的标记.

一亿同时在线, 意味着什么? 就算我们考虑上那些无聊开 N 个 QQ 挂着的, 就算考虑上那些开着 QQ 但是人不在电脑前面的, 就算加上越南版南非版等大部分人闻所未闻的奇怪版本, 这个数字还是异常夸张的. 同时还可以看到 QQ 游戏最高有 625 万同时在线, QQ Live 最高有 301.9 万同时在线. 在对特殊个体提供服务的同时, 很多策略都更多的是考虑大部分人的需求了. 拥有这么大的用户群, 真的是插根筷子都能发芽, 竖根扁担就能开花. 看看 QQ 影音, QQ 拼音等产品现在的装机量, 再想想现在腾讯还在憋的那些产品, 包括已公开的包括影像医生, 和只是招聘信息里泄漏出来的杀毒产品, 真的只能感慨以后除了微软, 是不是整个桌面都会交给腾讯? 至少目前, 我的机器上的绝大部分都被这两家占据了, 操作系统用 Windows7, 办公软件用 Office 2010, 杀毒用 MSE, 听歌用 WMP, 沟通用 TM, 输入用 QQ 拼音, 看电影用 QQ 影音, 下东西用 QQ 旋风, 管理软件用 QQ 软件管理器, 为了应付大陆太过猖獗的流氓软件而用 QQ 医生, 不多的非 M 非 T 的有 Chrome (虽然我也同时用 IE8), SecureCRT (这个没找到好的替代品), WLM/Hi/LibFetion 几个 IM, Adobe Reader, 7zip, 金山词霸 (这个其实用的少了, 只是装着)

前面那些都是没有联系和实际意义的感慨, 真的感慨是在实际的数据上做了这么久的数据挖掘和机器学习后改变的世界观. 以前总以为学习应该是攒够感性认识后再积淀抽象成理性认识这样的过程, 而经典的知识大部分确实都是这样得来的, 而以前所谓的量变引起质变, 说的大概也就是这么一回事. 但是在信息爆炸数据狂潮里, 要想再这样从感性认识提升到理性认识这个过程实在是太慢了, 我们需要大规模的数据挖掘和机器学习方法来加速这个学习过程, 而这个过程给我的感觉更多是不可控的 :( 并不是说我不明白里面的原理, 特征, 拟合方法等完全看不懂, 而是在海量数据上, 直观感觉往往并不靠谱了, 加上数据分布和数据噪声可能远不是我们想象的那样, 直观上的感觉在最后只会错的更离谱.
按照官方的报告, 中国大陆网民已接近四亿, 其中百度的用户有 80%, 那么保守估计一天里会有至少一亿独立用户会访问百度并进行搜索, 这里说的是一亿的独立用户, 他们的搜索行为绝对远不止一亿, 那么在这一点上, 每天积累的用户数据也是难以想象的海量. 互联网发展到现在, 包括信息检索等技术发展了这么久, 很多直观的规则系统都已经被几乎榨干了潜力, 再想提升就只能去分析用户们各种行为下暗流涌动的奇怪特性, 从而提供更贴近大多数人需求的服务. 这里有一个比较有意思的点, 正如最前面说腾讯的时候说道的, “大多数人需求”. 到了这样一个统计学意义上, 除非一些特别恶劣的特殊情况需要保证一定要纠正, 剩余的已经不能拿抽样来很好的说明问题了, 除非抽样能足够大, 而且抽样后的评估也能完全模拟千奇百怪的网民行为, 否则抽样并不能很好的说明问题, 而最终反应在统计层面上的使用率等才有参考意义.

刨开那些简单的用规则和用机器学习实现没区别的简单特性, 在超大规模的数据下, 越来越觉得机器学习的不可控性越来越大, 很多直观的想法一经实现都会发现只有负面效果, 而很多无心插柳的改进都很不好从前往后推, 只能从结果来分析原因. 我讨厌这种不可控的感觉, 虽然很多时候可以解释成我们的想法太 geek 太高端, 虽然说我们已经努力降低 IQ 下限去站在最广大网民的角度去思考问题但是还是不够, 但是, 在一直出现与预期相差甚远的结果时, 总还是会有那么一点抓狂那么一点沮丧. 虽然还是坚信这个世界总是可以通过可以描述的规律来解释其运转的, 但是发现这样的规律已经越来越飘渺, 越来越不被我等凡人所能理解和掌控.

在互联网这个用户可以完全放心用鼠标和键盘投票的地方, 好和坏还是很容易区分的. 在把基于规则的经典方式做到极致后, 只能通过引入基于学习的方法来提升效果, 而在极致上再做调整, 任何的扰动可能都会带来无法想像的后果. 一直认为, 企业如果需要建立在海量用户上, 那么用户信息便是一个绕不开的巨坑, 此用户信息不一定是用户的具体隐私信息等, 而只是一些使用习惯或其他的行为统计数据, 而且这些数据应该是非特定指向的, 即里面的每条信息的置信度大致一样 (由于需要处理作弊等特殊情况, 不能说完全同等置信度, 或者说经过数据清洗后, 置信度会完全一样). 像 Google 百度这样有传统的搜索引擎很难撼动就在于其拥有的用户数据太多, 很多可能带来扰动的因素都已经被他们纳入机制内, 而后来者如果需要追赶, 也只能是走一样的路, 但是在市场已经有领头羊, 这些数据是否还能有同等置信度就很难说了. 比如谷歌中国累积的那么多数据, 是否就能推广到 80% 以上的中国网民上? 用大多数是受过高等教育, 且学术和政治倾向明显的用户产生的数据来推广, 也只能在同类用户群上获得更好的效果吧?

把视野放开来, 在 SNS 上如果进行充分的数据挖掘和学习, 最终对用户的反馈到底会是怎样? 是会由少部分的先进生产力带动整体, 还是大多数的白痴会传染以致整体越来越白痴? 不过应该还好, 他们的一些基本规则还能在机制里生效, 很多底线最好还是不要过的好. 在桌面软件领域, 如前所说, 腾讯的那么多用户可以一直很快乐的做小白鼠, 在给腾讯提供足够的直接反馈的同时也在统计意义上给出更多的功能取舍选择, 微软和 Google 经常说取消某功能的理由也是 “绝大多数用户不用而且这个功能确实没太多用”, 在这样的迭代速度下后起之秀们估计很难壮大起来了, 毕竟现在技术壁垒已经越来越低, 而用户和数据壁垒越来越高, 而且只要有壁垒的一方不自杀, 那这个壁垒只会继续高下去, 而丝毫不会降低.

就在写到这里的时候, 抽开去看了下说 “360 安全恐吓” 的无敌招数, 这个也算是一个学习和规则并存的产物吧, 看多了 QQ 群里 “xxxx 就送 10 QB” 这样的骗子自然知道是骗子, 但是就这种雉还是会越来越多, 那么从统计意义上这个方式就还能继续生效, 然后只要对这样的方式进行微调, 也许又可以推广到别的领域继续兴风作浪 (比如 360 的安全恐吓?).

在用户的整体素质没得到提高之前, 统计意义上为贴近用户的改进大多还是只能让用户的整体素质越来越低, 做的越好用户则越脑残, 而研发人员只能跟着越来越脑残, 因为统计只能统计过去, 无法预测将来. 而只有在新规则推动下才可能带来革命性的进步, 比如在 iPhone 之前触摸操作为什么就没法这么普及? 比如 Gmail 出现前为什么邮件就必须是一封一封的组织而不是会话模式? 还有 Tag 之类的功能, 无法仔细考究谁提出谁推广. 一般的企业会在已有规则上墨守成规最后把自己做死, 稍好的会在已有规则上用统计学习去让已有规则领域做到极致, 而真正能长盛不衰的企业应该是用新规则去开拓新领域, 等把开荒的暴利赚够后把这个领域扔给后面的二三流企业跟进, 自己再去开辟新时代. 做技术做科研同理, 在攒够二三流能力之后还是需要去努力创新开辟新领域, 这才是傲视群雄的霸气. 以上, 与君共勉.

Ubuntu 下多网卡配置自动网关

本文纯属转载, 原文: http://yiding-he.javaeye.com/blog/244943

在公司台式机上折腾了个 VirtualBox, 装了个 Ubuntu 9.10 Server, 为了上网同时开了 host-only (主要是可以分配到个固定 IP, 方便主机连), Bridge (方便公司内其他人访问用), NAT (上外网用, 不过现在不用认证了其实这个没啥意义了), 三网卡的壮观就在于经常流量不知道从哪个网卡出去了, 导致访问不到外面, 该死的自动网关…

按上文提到的方法, 直接用个 sudo route add default gw 172.*.*.* (* 处似乎算机密?) 就可以了, 一试果然

技术宅拯救世界, Linux top 命令

今天才发现这个东西还可以配置的, 好玩. 以下为参考 top 的帮助后原创翻译, 注意所有字母区分大小写.

进入 top 后, 按大写 Z 可以进入彩色配置模式, a/w 选不同的配置, 如果要自己配置, 用大写 S/M/H/T 选要改的内容, 0-7 选颜色, q 不保存直接退出配置界面, 直接回车保存退出配置界面 (发现那四个配置居然刚好还是 SMTH, 而且 0-7 就是 telnet 标准配色)

在 top 界面下, x 打开/关闭当前排序列高亮, y 打开/关闭当前运行任务高亮, z 打开/关闭彩色, b 打开/关闭高亮区域加粗

用 f 进入显示列选项, 无论大小写都可以打开或者关闭某一列, 不在列表里的任意键按了后退出配置界面

用 o 可以进入显示列调序, 对应列编号大写上移小写下移, 不在列表里的任意键按了后退出配置界面

用大写 F 或 O 选择整个 top 按哪一列排序, 我选的按 CPU, 不在列表里的任意键按了后退出, 或者在正常的 top 界面下用 > 或者 < 移动选择按下一列/上一列排序 (推荐在用了 x 后再用 > 和 <, 这样比较直观) 最后全部配好了在 top 界面下按大写 W 保存配置 ========我是吐槽的分割线======== 果然技术宅拯救世界, 无趣的死 IT 民工啊

每日愤一句:Google永远不会错[1]

看图说话: http://www.flickr.com/photos/jason5ng32/4256387970/

在玩聚SR上, 给出的标题是 “新浪在Google投放的不要脸广告:当下流行twitter新浪微博 “, 原链接 http://pp.ju690.com/p/788

不过我很好奇的是, 为啥都是骂 sina 的, 而没有一个人指出在这事上, Google 不用负责的么? 所谓的 Fanboy 啊, 是不是过头了?

每日愤一句:谁抄谁[1]

来源:

http://www.cnbeta.com/articles/101490.htm (百度工程师的开窍还是?-百度测试新搜索结果页面)

2010/01/06 16:45 更新, 由于 cnbeta 原页面无法访问, 给出百度快照地址: http://cache.baidu.com/c?m=9f65cb4a8c8507ed4fece763105392230e54f732608787532cc3933fc239045c1426a5e0767c4745cec67e6407a44b4bea876c34681765eadb9e875dadb9855e249f5730676d8c5613a30edfc05156c737e05bfede68f0bb8025e2ddc5a0db4352ba44757d97818d4d0164dd1f84034290b1e84d022e64adec40728f296059943431c55088e5256e7696f6ab4b4db33da06306e1a422c03a05c419b31e6b3334a05bc608465743f73921e8454d13e4e94a962a6e4153a139c3aeb7b5fc39fccb9e348ffbbbb85fe37791c6fd897a550422ed24cebccbb22a144415a8cbc961c0&p=c6769a4786cc43fd1bafc53c5a&user=baidu

解释:

关注业界的人都知道, 要这么算, Google 至少也是抄的 Bing 的

昨天弄太晚, 现在还不清醒, 长篇大论以后再说, 反正这个话题凑个半打还是很容易的

Win7, 还是 Win7

安装
强烈推荐使用 U 盘安装, 方便快捷. 如果没有盗版软件的愧疚, 直接用 UltraISO 将 Win7 的 iso 刻到 U 盘上, 然后直接把 U 盘当光盘一样安装就可以了, 不用考虑 SATA 的设置等. 如果还是想矜持下不用盗版的, 在磁盘管理器里将 U 盘格式化分区 (不能是卷), 设置为主分区和活动分区后, 将 Win7 iso 的所有文件解压到 U 盘, 并运行以下命令使 U 盘可引导 (其中 u: 是 U 盘的盘符), 后面就还是和光盘安装一样
c:> u:bootbootsect /nt60 u:

驱动
2009-10-23 更新, System Update 4.0 发布, 可以直接下载驱动了, 本节以下内容可以无视

我的 T60 在 Win7 自动更新后手动从 http://www.lenovo.com/windows7beta 去下载了以下驱动:
HOTKEY, Hotkey Features, Fn 快捷键和操作屏幕提示相关
IBMPM, Power Manager, 电源管理, 其实中间有用的就只有那个电池阈值了, 不然 Win7 自带的也够了
SMIIF, System Interface, 还是和屏幕提示相关的, 这个和 HOTKEY 似乎是可以有一个不装的, 但是我没仔细试
HPROTECH, Active Protection System, 硬盘保护
UNAV, UltraNav Driver, 指点杆/触摸板驱动
如果在装完上面的后在设备管理器里还有 PCI 相关的设备, 那就应该是以下两个 (经验证 X200 需要):
LMSSOL, Intel AMT 4.2 LMS&SOL
MEI, Intel AMT 4.2 MEI

系统优化
a. 关闭系统还原节省硬盘空间. 直接 Computer 上右键, System Protection 里关闭
b. 关闭休眠(Hibernate). 管理员模式运行 cmd, C:>powercfg -h off
c. 取消字体语言限制. 在控制面板的 Font settings, 去掉 Hide fonts based on language settings 的勾
# 这个很脑残感觉, 害的在 记事本/Chrome 等地方要选 Fixedsys 和 Courier New 都选不到
d. 在鼠标的电源管理页将 允许此设备将计算机从待机状态恢复 的勾去掉
# 这个也很脑残, 一开始不知道, 发现待机后随便动下机器就又醒了

软件
x. 如果无特意说明, 最好都在安装时, 在安装文件上点右键选 run as administrator 模式运行, 这样不容易出问题, 特别是文件关联什么的.
a. 7zip. 装好后选文件关联时, 也用管理员模式运行, 这样右键菜单啥的都对了.
b. Daemon Tools. 不管不兼容的提示, 和平时一样安装, 重启后最好手动管理员模式运行安装文件而不用默认的
# 据说 SPTD 1.60 可以连不兼容都不提示, 但是 4.30.4 我也没发现问题
c. Office 07. 装好 daemon 后挂 iso 跟 XP/Vista 下一样. 注意选取组件和设置个人信息是在启动画面的 Custom 里, 不然直接点就是全默认安装

小提示
a. 鼠标拖拽窗口标题栏到桌面上沿/左右两侧快速最大化, 拖回中间还原
b. Win+P 的显示器切换, Win+X 的移动设置都很方便
c. 在任务栏上按住图片向上推可以和右键一样调出 JumpList, 这个动作可以更好衔接调出 JumpList 后的操作

修改 Ubuntu-Server 的分辨率

#use hwinfo to find out the mode number for your choice of resolution
sudo apt-get install hwinfo
sudo hwinfo --framebuffer | grep 1440x900

#scroll to the end of /boot/grub/menu.lst
#add ‘vga=SOME_MODE_NUMBER’ to the end of the ‘kernel’ line
kernel /boot/vmlinuz-2.6.15-26-server root=/dev/hda1 ro quiet splash vga=0x0336

#reboot into new config
sudo shutdown -r now

Win7 手记更新 2009/6/24

1. 出了几个 Bug, 不过均已修复或未重现
a. 某次莫名其妙给我把无线网关了, 似乎我也没乱按什么键来着, 重启后好的(由于我没装 Access Connection, 所以没法 Fn+F5 控制)
aU. 发现 Win+X 在 Win7 下的功能很强大, 不知道是不是因为这个, 就跟原来 XP 下 Win, U, U 快速关机那样, 但是那次连设备管理器都找不到, 估计是硬件抽风穿越了
b. 现在屏幕显示没了… 不知道为啥, 就是调亮度/声音什么的那个绿色的条没
bU. 重装了 HotKey 和 OnDisplay 的驱动搞定
c. 7100×64 上开始菜单下沉的 Bug 在 7201×86 下再没出现, WMP 的显示问题也只在 7100×64 下出过那一次
d. 开始菜单的那几个常用程序, 莫名其妙的无法更新顺序和添加新的??? 全 remove 后现在 OK 了

2. www.lenovo.com/windows7beta
新的 HotKey 驱动比原来好点, 把 Fn+F2/F5 也较好集成了, Fn+F8/F9 只能调出相应的 Windows 窗口, Fn+F7 可以切换窗口但是没提示, 不如 Win+P)
# Fn+F8/F9 是因为我没装 UltraNav Wizzard 和 EasyEject

3. 我需要一份新的 Windows 入门教程…
发现 Win+x 这样的功能我居然到现在才知道 T__T

Win7 手记

I. U 盘安装
1. 创建启动盘
以管理员身份运行命令提示符(cmd.exe), 并进入 diskpart
C:>diskpart
查看 U 盘的序号, 并选取
DISKPART>list disk
DISKPART>select disk 2

清除内容, 并创建活动主分区, 格式化并挂载
DISKPART>clean
DISKPART>create partition primary
DISKPART>select partition 1
DISKPART>active
DISKPART>format fs=NTFS
DISKPART>assign

搞定, 退出
DISKPART>exit
# 上述步骤可以直接在计算机管理->存储里完成, 主要是格式化后将分区设为 active(活动的)

2. 制作安装盘
用 Deamon Tools 加载 Windows7 镜像到 x:, 并拷贝(u: 是 U 盘的盘符)
xcopy x:*.* /s /e /f u:
使 U 盘能自启动
u:boot>bootsect /nt60 u:

3. 正常安装

II. 各项设置
0. 如果无特意说明, 均指目前在 7201 x86 上的设置, 原来的 7100(rc) x64 有些不对.

1. 驱动等
直接让 Win7 自动更新, 完事后还需要安装的 ThinkPad 东西有
HOTKEY(一些 Fn 快捷键和屏幕显示)
HPROTECH(硬盘保护, 分 32/64bit)
IBMPM(电源管理)
SMIIF(系统界面, 还是和屏幕显示有关)
UNAV(触摸板和指点杆的驱动, 分 32/64bit)

2. 系统优化
a. 关闭硬盘保护. 直接右键 My Computer 改之
b. 关闭休眠(Hibernate). 管理员模式运行 cmd, C:>powercfg -h off
c. 取消字体语言限制. 在控制面板的 Font settings, 去掉 Hide fonts based on language settings 的勾.
# 这个很脑残感觉, 害的在 记事本/Chrome 等地方要选 Fixedsys 和 Courier New 都选不到
d. 在鼠标的电源管理页将 允许此设备将计算机从待机状态恢复 的勾去掉.
# 这个也很脑残, 一开始不知道, 发现待机后随便动下机器就又醒了.

3. 软件
x. 如果无特意说明, 最好都在安装时, 选 run as administrator 模式运行安装文件, 这样不容易出问题.
a. 7zip. 装好后选文件关联时, 也用管理员模式运行, 这样右键菜单啥的都对了.
b. gvim. 无特别情况, 在 7100 x64 下右键关联有问题, 不知道是不是没用管理员模式的原因.
c. daemon tools. 提示不兼容的时候, 不管他, 记得重启后最好还是自己手动管理员模式运行安装文件而不是用默认的.
d. office 07. 装好 daemon 后挂 iso, 跟 XP/Vista 下安装一样, 注意选取组件和设置个人信息是在启动画面下面的 Custom 里, 不然直接点安装就是全默认了.

Bug 汇总.

1. 某次莫名其妙给我把无线网关了, 似乎我也没乱按什么键来着, 重启后好的(由于我没装 access connection, 所以没法 Fn+F5 控制)

2. 现在屏幕显示没了… 不知道为啥, 就是调亮度/声音什么的那个绿色的条没了