11 kamidox

尚未进行身份认证

兰生幽谷,不以无人而不芳

等级
TA的排名 6w+

K 均值算法

聚类问题 Clustering针对监督式学习,输入数据为 (x, y) ,目标是找出分类边界,即对新的数据进行分类。而无监督式学习只给出一组数据集 x1,x2,...,xm{x_1, x_2, ... , x_m} ,目标是去找出这组数据的模式特征,比如哪些数据是一种类型的,哪些数据是另外一种类型的。典型的无监督式学习包括市场细分,通过分析用户数据,来把一个产品的市场进行细分,找出细分人群。另外一个

2015-12-08 22:07:13

支持向量机的核函数

什么是核函数?核函数的作用是什么?怎么样把核函数和支持向量机结合起来?怎么样使用支持向量机来解决分类问题?怎么样在逻辑回归算法,支持向量机,神经网络这三个分类算法里选择使用哪个算法来解决实际问题?本文就是回答这些疑问的。

2015-12-07 23:51:27

支持向量机算法 SVM

支持向量机算法 SVM 是 Support Vector Machine 的缩写,它是工业和学术界都有广泛应用的强大的算法。

2015-12-07 23:50:11

机器学习算法的性能评估

本文介绍机器学习算法的性能评估的方法,包括算法高偏差还是高方差的诊断,学习曲线等。从工程应用的角度来讲,算法只需要知道原理,并不需要真正去实现,数值专家们帮我们实现了大量的开源算法可供我们使用。而怎么样评估某个算法的性能以及怎么样去优化性能反而是工程应用领域最重要的问题。为什么需要评估机器学习算法的性能当我们辛苦开发出来的机器学习算法不能很好地预测新数据时,我们该怎么办呢?一般情况下,有以下几个方

2015-12-01 23:44:14

神经网络(二)

本文接着介绍神经网络,包括成本函数,以及向后传播算法,用来计算神经网络成本函数的微分项。最后总结神经网络的架构设计和训练步骤。

2015-11-29 23:19:13

神经网络(一)

神经网络模拟人的神经系统,是比逻辑回归更复杂的机器学习算法。本文介绍神经网络的模型和模拟逻辑运算方面的简单应用。

2015-11-25 23:40:51

正则化

线性回归算法和逻辑回归算法都可能出现过拟合,即模型很好地拟合了训练数据,但对新数据的预测效果很差。当训练样例较少时,这种情况发生的概率就更大。正则化就是为了解决这个问题的。

2015-11-25 23:40:03

逻辑回归算法

分类问题及其表现形式为什么需要逻辑回归算法比如要对一个图片进行分类,判断图片里是否包含汽车。包含汽车的预测值为 1 。不包含汽车的预测值为 0 。这种分类问题的值是离散的,如果用 linear regresstion 来作为分类问题的预测函数是不合理的。因为预测出来的数值可能远小于 0 或远大于 1。我们需要找出一个预测函数模型,使其值的输出在 [0, 1] 之间。然后我们选择一个基准值,比如 0.

2015-11-19 20:52:48

使用 pandas 玩转股票数据

pandas 是数据分析的瑞士军刀。我们今天使用 pandas 来玩一下股票数据,看看能从数据里得到哪些有意思的信息。pandas 教程如果你熟悉 Python 的话,官网上的 10 Minutes to pandas 可以让你在短时间内了解 pandas 能干什么事以及是怎么干的。针对每个主题,都可以横向查到大量的资料和例子。如果你 Python 不熟,但又想用 pandas 玩转数据分析的话,P

2015-11-18 01:06:07

numpy 矩阵运算的陷阱

陷阱一:数据结构混乱array 和 matrix 都可以用来表示多维矩阵In [98]: a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])In [99]: aOut[99]:array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])In [100]: A = np.matrix([[1, 2, 3

2015-10-01 10:25:14

常用的微分运算法则

机器学习涉及到较多的数学知识,在工程应用领域,这些数学知识不是必要的,其实很多算法都是数值运算专家写好了的。然而知其然知其所以然,了解这些数学公式的来龙去脉是帮助理解算法的关键。本文直接给出常用的微分运算法则,并运用这些法则来计算分类回归算法(LogisticRegression)预测模型SigmoidFunction的微分公式。

2015-09-28 22:16:39

线性回归算法

本文总结了线性回归算法里用到的一些微积分知识,接着根据最小均方差推导出梯度下降算法以及优化后的随机梯度下降算法。微积分基本运算法则法则一:对 y(x)=cxny(x)=cx^n ,其针对 x 的偏导数为 ∂∂xf(x)=cnxn−1\frac{\partial}{\partial x}f(x)=cnx^{n-1}法则二:常数的微分为 0法则三:偏导数可以穿透累加器,即 ∂∂x0∑i=0nF(x

2015-09-11 22:09:39

使用 Markdown + MathJax 在博客里插入数学公式

在书写数值计算类文章,特别是机器学习相关算法时,难免需要插入复杂的数学公式。一种是用图片在网页上展示,另外一种是使用 MathJax 来展示复杂的数学公式。它直接使用 Javascript 使用矢量字库或 SVG 文件来显示数学公式。优点是效果好,比如在 Retina 屏幕上也不会变得模糊。并且可以直接把公式写在 Markdown 文章里。本文介绍使用 MathJax 在 Markdown 文件里直

2015-09-11 22:08:13

机器学习入门指南

前段时间微软的年龄识别网站风靡全球,它的核心算法就是机器学习领域的内容。机器学习看起来高深莫测,学习曲线比较陡,实际上优秀的入门资料不但可以降低学习门槛,还可以激发学习乐趣。

2015-09-11 22:05:51

利用 LeakCanary 来检查 Android 内存泄漏

前言你被概率性的 OOM 困扰么?有时候,OOM 像幽灵一样,挥之不去,可真想把它揪出来时,又捉之不着。或许,是时候用 LeakCanary 来诊断一下了。它是一个用来检查 Android 下内存泄漏的开源库,这篇文章主要介绍其用法、架构和其背后的实现原理。Square 有篇文章介绍了开发这个库的原因。他们的一个付款流程里,需要用到用户的签名,他们直接用 Bitmap 来画签名

2015-05-12 22:43:55

Android 内存与性能

官方教程Android Performance 是 GOOGLE 近期发布在 Udacity 上的官方教程不方便科学上网的同学可以从我的百度网盘里下载。Android Performance Patterns 是 GOOGLE 在 2015 年初发布在 Facebook 上的专题课程这部分内容 CDGChina 加了中文字幕,并放在 Youku 上了。Notes

2015-05-12 22:43:01

学习开源代码的三个层次

网络上有很多优秀的开源代码,学习这些代码是提高自己编程水平的最佳途径。我们在实际项目开发的过程中也会使用很多优秀的开源代码来加快开发速度,避免重复造轮子。优秀开源代码至少可以给我们提供三个层次的学习资料。第一层次:使用开源代码这一步相对简单,也是大部分人在项目开发过程中最常用的方式。优秀的开源代码一般文档齐全,示例代码丰富。通过简单地学习这些资料,可以较容易地掌握开源代码的用法。

2015-01-17 01:30:38

FlaskBB阅读笔记(四)

开篇FlaskBB是用Flask框架实现的一个轻量级的论坛社区软件,代码托管在GitHub上。本系列文章通过阅读FlaskBB的源代码来深入学习Flask框架,以及在一个产品级的Flask应用里的一些最佳实践规则。本文是本系列文章的第四篇,通过分析FlaskBB的自动测试代码,进而介绍Python下的自动化测试工具pytest。自动化测试在开发和重构过程中有着非常重要的地位。甚至还

2014-12-21 23:19:18

FlaskBB阅读笔记(三)

开篇FlaskBB是用Flask框架实现的一个轻量级的论坛社区软件,代码托管在GitHub上。本系列文章通过阅读FlaskBB的源代码来深入学习Flask框架,以及在一个产品级的Flask应用里的一些最佳实践规则。本文是本系列文章的第三篇,将介绍ORM基础知识,分析Flask-SQLAlchemy及sqlalchemy ORM引擎的一些常用方法,进而介绍FlaskBB用户管理模块的

2014-12-09 17:59:58

使用 patchrom 移植 MIUI

开篇MIUI 使用代码插桩的方式来移植。即 MIUI 把他们基于 AOSP 的修改的代码全部用 smali 开放出来。这样我们通过对比 MIUI 的 smali 代码和 AOSP 的 smali 代码就可以知道 MIUI 修改了哪些内容,把这些内容移植过去即可完成 MIUI的移植。本文以 jellybean42-mtk 为例,描述使用 patchrom 移植 MIUI的方法以及在过程中遇到

2014-12-06 18:20:02

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!