迭代速度慢?成熟的机器学习流如何设计:微博大规模机器学习框架Weiflow揭秘

在机器学习流中,模型训练只是其中耗时最短的一环。如果把机器学习流比作烹饪,那么模型训练就是最后翻炒的过程;烹饪的大部分时间实际上都花在了食材、佐料的挑选,洗菜、择菜,食材再加工(切丁、切块、过油、预热)等步骤。 在微博的机器学习流中,原始样本生成、数据处理、特征工程、训练样本生成、模型后期的测试、评估等步骤所需要投入的时间和精力,占据了整个流程的 80% 之多。
. .

一台Java服务器能跑多少个线程?

线程数量 =(机器本身可用内存 - JVM分配的堆内存)/ Xss的值,比如我们的容器本身大小是8G,堆大小是4096M,-Xss默认值,可以得出最大线程数量:4096个。 结论1:jvm堆越大,系统创建的线程数量越小。 结论2:当-Xss的值越小,可生成线程数量越多。 我们知道操作系统分配给每个进程的内存大小是有限制的,比如32位的Windows是2G。因此操作系统对一个进程下的线程数量是有限制的,不能无限的增多。经验值:3000-5000左右(我没有验证)。
. .

扔掉 OpenSSL,拥抱 LibreSSL——远离心脏出血与溺亡

2016 年 3 月初 OpenSSL 再次爆出与 2014 年的心脏出血(Heartbleed)同样严重的新漏洞——溺亡(DROWN)!在获悉这一消息的时候第一时间我去看 LibreSSL 有没有受影响,正如所料——没有(见下图)!这让我觉得 LibreSSL 取代 OpenSSL 更加必要。
. .