综述中英文自然语言处理的异和同
人类经过漫长的历史发展,在世界各地形成了很多不同的语言分支,其中汉藏语 系和印欧语系是使用人数最多的两支。英语是印欧语系的代表,而汉语则是汉藏 语系的代表。中英文语言的差异十分鲜明,英语以表音(字音)构成,汉语以表 义(字形)构成,印欧和汉藏两大语系有很大的区别。
准确测量机器学习模型的误差
在机器学习模型的效果评估中,预测误差的分析是重中之重。对于现有的各种误差测量技术,如果 使用不当,会得出极具误导性的结论。这些结论会误导模型设计者设计出过拟合的模型,过拟合是 指训练出的模型对于训练集拟合的很好,但是对于新的样本集则预测效果极差。这篇文章描述了如 何正确的测量模型误差,以避免此类问题。
抓取网页内容生成Kindle电子书
自从买了kindle后,总是想着如何最大效用发挥其效用。虽然多看上有很多书可 以购买,网上也有很多免费的电子书,但是仍然有很多感兴趣的内容是以网页的 形式存在的。例如O’Reilly Atlas就提供了诸多电子书,但是只提供免费的在线阅 读;另外还有很多资料或文档都只有网页形式。于是就希望通过某种方法讲这些 在线资料转为epub或mobi格式,以便在kindle上阅读。这篇文章介绍了如何借助 calibre并编写少量代码来达到这个目的。
正确使用 RamDisk Plus 的方法解决分配内存后占用系统内存的问题
正确使用 RamDisk Plus 的方法解决分配内存后占用系统内存的问题
找到并杀掉MySQL查询进程
找到并杀掉MySQL查询进程
在Ubuntu上安装Oracle JDK
在Ubuntu上安装Oracle JDK
云监控Nagios安装步骤
云监控Nagios安装步骤
云监控Ganglia安装步骤
云监控Ganglia安装步骤
一致性哈希算法及其在分布式系统中的应用
本文将会从实际应用场景出发,介绍一致性哈希算法(Consistent Hashing)及 其在分布式系统中的应用。首先本文会描述一个在日常开发中经常会遇到的问题 场景,借此介绍一致性哈希算法以及这个算法如何解决此问题;接下来会对这个 算法进行相对详细的描述,并讨论一些如虚拟节点等与此算法应用相关的话题。
什么是成功的Git分支模型
在这篇文章中,我提出一个开发模型。我已经将这个开发模型引入到我所有的项目里(无论 在工作还是私人)已经一年有余,并且它被证明是非常成功的。我打算写这些已经很久了, 但我一直找不到时间来做,现在终于有时间了。我不会讲任何项目的具体细节,仅是关于分支策略和释放管理相关内容。 它主要体现了Git对我们源代码版本的管理。
一个小时内学习SQLite数据库
SQLite 是一个开源的嵌入式关系数据库,实现自包容、零配置、支持事务的SQL数据库引 擎。 其特点是高度便携、使用方便、结构紧凑、高效、可靠。 与其他数据库管理系统不 同,SQLite 的安装和运行非常简单,在大多数情况下 - 只要确保SQLite的二进制文件存在 即可开始创建、连接和使用数据库。如果您正在寻找一个嵌入式数据库项目或解决方案, SQLite是绝对值得考虑。
一步步教你构建 NLP 流水线.pdf
计算机更擅长理解结构化数据,让计算机去理解主要以文化习惯沉淀下来的人类语言实在是 太为难它们了。那自然语言处理获得的成功又是如何成就的呢?那就是,把人类语言(尽可 能)结构化。本文以简单的例子一步步向我们展示了自然语言处理流水线的每个阶段的工作 过程,也就是将语言结构化的过程,从句子分割、词汇标记化、...、到共指解析。作者的 解释很直观、好理解,对于刚入门 NLP 的小伙伴是不可多得的好文。
完全读懂世纪难题黎曼猜想
精彩绝伦!这一绝版珍宝让你完全读懂世纪难题“黎曼猜想”和其历史,让我们一起见证数学盛宴!
图灵奖得主Judea Pearl讲机器学习
图灵奖得主Judea Pearl:机器学习无法成为强AI基 础,突破口在“因果革命”
图解SQL的Join
对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很 多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子 有点不是很清楚。Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams 解释了SQL的Join。
通过OVF模板部署VCenterServer
VMware vSphere是一套虚拟化应用程序,包括ESXi和vCenter Server。vCenter Server 将各台主机中的资源统一在一起,使这些资源可以在整个数据中心的虚拟机之间共享。其实现原理是:根据系统管理员设定的策略,管理主机的虚拟机分配,以及给定主机内虚拟机的资源分配。
跳表SkipList的原理及实现
跳表是由William Pugh发明。他在 Communications of the ACM June 1990, 33(6) 668-676 发表了Skip lists: a probabilistic alternative to balanced trees,在该论文中详 细解释了跳表的数据结构和插入删除操作。
素数检测算法
素数的检测算 法是很有趣的,并且会涉及到数论、概率算法等诸多内容,一直觉得素数探测算法是了解概率算法很好的入口。本文和 大家简单聊聊如何确定一个数是素数。
数据可视化专家的七个秘密
数据可视化的道路上充满了不可见的陷阱和迷宫,最近ClearStory Data的两位数据可视化 开发人员分享了他们总结出来的数据可视化开发的7个不宣之秘,普通开发者了解这些方法 能提升视野,少走弯路。
使用IPMI管理Dell服务器
使用IPMI管理Dell服务器
使用IPMI Tool实现Linux系统下对服务器的IPMI管理
使用IPMI Tool实现Linux系统下对服务器的IPMI管理
实例详解机器学习如何解决问题
随着大数据时代的到来,机器学习成为解决问题的一种重要且关键的工具。不管是工业界还 是学术界,机器学习都是一个炙手可热的方向,但是学术界和工业界对机器学习的研究各有 侧重,学术界侧重于对机器学习理论的研究,工业界侧重于如何用机器学习来解决实际问 题。我们结合美团在机器学习上的实践,进行一个实战(InAction)系列的介绍(带“机器 学习InAction系列”标签的文章),介绍机器学习在解决工业界问题的实战中所需的基本技 术、经验和技巧。本文主要结合实际问题,概要地介绍机器学习解决实际问题的整个流程, 包括对问题建模、准备训练数据、抽取特征、训练模型和优化模型等关键环节;另外几篇则 会对这些关键环节进行更深入地介绍。
十二招优化固态硬盘设置
随着现在固态硬盘的发展,越来越多的厂商加入了进来,从整个DIY行业的发展来看, 新的存储技术的降价速度往往比其它硬件产品快很多。可能两年后SSD已经人手一块了,您 对SSD有何看法,在购买固态盘后,您会使用么?如何能够发挥SSD的全部性能?下面我 将教大家各种招术去提升固态硬盘的性能,首先放出第一季十二连招。
生成特定分布随机数的方法
生成随机数是程序设计里常见的需求。一般的编程语言都会自带一个随机数生成函 数,用于生成服从均匀分布的随机数。不过有时需要生成服从其它分布的随机数,例 如高斯分布或指数分布等。有些编程语言已经有比较完善的实现,例如Python的 NumPy。这篇文章介绍如何通过均匀分布随机数生成函数生成符合特定概率分布的随 机数,主要介绍Inverse Ttransform和AcceptanceRejection两种基础算法以及一些相 关的衍生方法。下文我们均假设已经拥有一个可以生成0到1之间均匀分布的随机数生 成函数,关于如何生成均匀分布等更底层的随机数生成理论,请参考其它资料,本文 不做讨论。
生成对抗网络(GANs)最新家谱:为你揭秘GANs的前世今生
生成对抗网络( AN)一经提出就风光无限,更是被Yann L un誉为“十年来机器学 习领域最有趣的想法”。
GAN“左右互搏”的理念几乎众所周知,但正如卷积神经网络(CNN)一样,GAN发展 至今已经衍生出了诸多变化形态。
深入浅出数据仓库中SQL性能优化之Hive篇
Hive查询生成多个map reduce job,一个map reduce job又有map,reduce,spill,shuffle, sort等多个阶段,所以针对hive查询的优化可以大致分为针对MR中单个步骤的优化,针对MR全局的优化以 及针对整个查询的优化。
深入解析NoSQL数据库的分布式算法.pdf
系统的可扩展性是推动NoSQL运动发展的的主要理由,包含了分布式系统协调,故障转移,资源管理和许 多其他特性。这么讲使得NoSQL听起来像是一个大筐,什么都能塞进去。尽管NoSQL运动并没有给分布式 数据处理带来根本性的技术变革,但是依然引发了铺天盖地的关于各种协议和算法的研究以及实践。正是 通过这些尝试逐渐总结出了一些行之有效的数据库构建方法。在这篇文章里,我将针对NoSQL数据库的分 布式特点进行一些系统化的描述。
深度学习框架技术剖析
2018年1月14日,袁进辉(老师木)代表OneFlow 团队在AICon 北京站做了标题为《深度学 习框架技术剖析》的演讲。
摘要:深度学习框架正在快速演化,各大公司都推出了自己的框架,TensorFlow, PyTorch, Caffe2, MXNet, PaddlePaddle,大大推动了深度学习的发展,同时也让用户有目不暇接无 所适从之感。我们认为,深度学习框架用户有必要去了解深度学习框架的一些基本原理,这 有助于我们用好“框架”这个工具,也有助于根据自身需要去选择合适的框架。
如何实现一个malloc
任何一个用过或学过C的人对malloc都不会陌生。大家都知道malloc可以分配一 段连续的内存空间,并且在不再使用时可以通过free释放掉。但是,许多程序员 对malloc背后的事情并不熟悉,许多人甚至把malloc当做操作系统所提供的系统 调用或C的关键字。实际上,malloc只是C的标准库中提供的一个普通函数,而 且实现malloc的基本思想并不复杂,任何一个对C和操作系统有些许了解的程序 员都可以很容易理解。
如何把系统或程序临时文件和缓存文件夹设置到RamDisk
众所知周知有我们电脑的硬件系统中,最大的瓶颈是在硬盘上,除非我们使用的是SSD硬盘或RAID阵列,在win7和 vista的硬盘评分里,不可能是满分的。更不谈即将出现的win8了,于是我们有一个问题,哪么如何在有限的硬件环 境下给我们的windows提速,答案是有的。虽说泰国洪水硬盘涨价,到现在还是1元1G实在不是给力,SSD硬盘虽说小 降但仍然在10元/G的价格下,但是内存却是大大的白菜,百来元选个4G二百来元来个8G,来个双通道什么的,很容 易内存就满分了,但是得意之余我们总是免不了几分遗憾,为什么呢?又众所周知,我们的32位系统,只能识别2到 3G大小的可用内存,所以说我们再大的内存,也充其量是一个摆设,自从有了RamDisk Plus,这一切就不一样了, RamDisk Plus可以把我们过剩的内存,当然,也可以说把我们现有内存的一部份(未必是过剩)化作一块虚拟磁 盘,这个虚似磁盘,我们可以放一些应用程序的临时文件什么的,大大的提高了程序的速度,为什么呢?因为内存 的速度可不是一般的SSD的硬盘可以比的,随随便便一对双通道内存再使用我们的RamDisk Plus轻松击败目前市面上 的主流内存。
浅析PageRank算法
很早就对Google的PageRank算法很感兴趣,但一直没有深究,只有个轮廓性的概念。前几天趁团队outing 的机会,在动车上看了一些相关的资料(PS:在动车上看看书真是一种享受),趁热打铁,将所看的东西 整理成此文。
本文首先会讨论搜索引擎的核心难题,同时讨论早期搜索引擎关于结果页面重要性评价算法的困境,借此 引出PageRank产生的背景。第二部分会详细讨论PageRank的思想来源、基础框架,并结合互联网页面拓 扑结构讨论PageRank处理Dead Ends及平滑化的方法。第三部分讨论TopicSensitive PageRank算法。最 后将讨论对PageRank的Spam攻击方法:Spam Farm以及搜索引擎对Spam Farm的防御。
浅谈Java中的几种随机数
众所周知,随机数是任何一种编程语言最基本的特征之一。而生成随机数的基本方式也是相 同的:产生一个0到1之间的随机数。看似简单,但有时我们也会忽略了一些有趣的功能。
期望、方差、协方差及相关系数的基本运算
期望、方差、协方差及相关系数的基本运算
你需要知道的16个Linux服务器监控命令
如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些 命令,那你就是一个 专业的 Linux 系统管理员。
有些 Linux 发行版会提供 GUI 程序来进行系统的监控,例如 SUSE Linux 就有一个非常棒 而且专业的工具 YaST,KDE 的 KDE System Guard 同样很出色。当然,要使用这些工具, 你必须在服务器跟前进行操作,而且这些 GUI 的程序占用了很多系统资源,所以说,尽管 GUI 用来做基本的服务器健康状态监测挺好,但如果你想知道真正发生什么,请关掉 GUI 开始命令行之旅吧。
那些颠覆你三观的Word隐藏技能
从会用电脑开始,Microsoft Office Word就是我们最常用的软件。靠着它,我 们写论文、写方案、写情书、写故事… 但是,你真的懂Word吗? 其实,这个软件背后,还有一大批隐藏技能你不知道。掌握他们,你将开启新世 界的大门。前方高能,小伙伴们请站稳扶好。
聚集索引和非聚集索引.pdf
索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。 在数据库中,索引的含义与日常意义上的“索引”一词并无多大区别(想想小时候查字 典),它是用于提高数据库表数据访问速度的数据库对象。
加快Java的文件序列化速度.pdf
自从第一个Java版本开始,很多开发人员一直都在尝试让Java获得最少和C/C++一样的表 现。JVM提供商尽他们最大的努力去实现一些新的JIT算法,但是还是有很多需要做的,特别 是在我们使用Java的方法上。
机器学习中的最优化算法总结
机器学习中的最优化算法总结