自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(3626)
  • 资源 (4)
  • 收藏
  • 关注

原创 视频课程更新,机器学习、数理统计、矩阵分析、运筹视频教程

如果各位读者朋友读到了这里,不妨移步到我的B站(五道口纳什),那里我将进行每周至少一次的更新,更多视频课程等待各位的阅读和反馈。导览传送门如下:1. 数据&算法【手推公式】指数族分布(exponential family distribution),伯努利分布及高斯分布的推导【手推公式】从二分类(二项分布)到多分类(多项分布),最大似然估计与交叉熵损失的等价【机器学习】【手推公式】从Hinge loss(合页损失)到 SVM(hard margin/soft margin)【手推公式

2021-01-05 19:45:41 2801 6

原创 从一个例子看频率学派与贝叶斯学派的不同(Python)

考虑如下的一个游戏场景:setup: Alice and Bob enter a room. Behind a curtain there is a billiard table, which they cannot see, but their friend Carol can. Carol rolls a ball down the table, and marks where it lan

2015-12-21 08:26:33 2554 3

原创 BP神经网络——从二次代价函数(Quadratic cost)到交叉熵(cross-entropy cost)代价函数

我们首先来回顾BP神经网络反向传播过程: 1. 首先在当前网络状态((w,b)(w,b)给定)下,根据feedforward(a=σ(w⋅a+b)a=\sigma(w\cdot a+b)),预测当前样本xx的label值,再根据代价函数(此时不指定具体形式,C=(a,y)C=(a, y),a=σ(z)a=\sigma(z),aa是activation激活值的缩写),计算对于神经网络的最后一层,代价

2015-11-28 18:20:48 14852 2

原创 点乘和叉乘及其物理意义(C++STL实现)

一些错误观念的澄清,比如数学意义上的点积和叉积并不对应matlab程序中的.*(按位相乘)和*(矩阵乘法)内积的物理意义一种向量到标量的映射两向量的夹角的计算两向量是否正交的判断两向量的相似性(similarity)的度量叉积的意义如何使用C++语言(STL容器,运算符重载):表示向量计算内积计算叉积计算模长计算两向量的夹角计算点到直线的距离prerequisites内积(i

2015-11-14 20:42:35 36268 3

翻译 概率,悖论,以及理性人原则(python实现)

用Python实现对概率P的定义热身问题掷骰子增强版P接受对事件的断言两儿童悖论问题1年长者是男孩两儿童都是男孩的概率问题2至少一个是男孩两个都是男孩的概率理性人原则问题3 一个男孩生在周二两个都是男孩的概率可视化睡美人悖论蒙提霍尔悖论11非等概率输出概率分布问题4一个男孩生在2月29两个都是男孩的概率仿真未完待续在这篇手札里,我们将涉及概率论的基本原理,以及它们的pyt

2015-10-19 13:54:40 5525 2

原创 模式识别经典算法——FCM图像聚类分割(最简matlab实现)

从kmeans各个样本所属类别 的非此即彼(要么是0要么是1,如果建立一个归属矩阵$N*k$,每一行表示样本的归属情况,则会得到,其中一个entry是1,其他是0),到走向模糊(Fuzzy),走向不确定性(此时的归属(fuzzy membership)阵$P(\mu_i|x_j)\;i\in 1,\ldots k,\;j\in 1,\ldots N$,每个元素都会是[0-1]之间的概率值,行和要求为1)。无疑,基于[

2015-10-02 10:57:36 28530 12

原创 模式识别经典算法——Kmeans图像聚类分割(以最短的matlab程序实现)

kmeans之于模式识别,如同“hello world”之于C、之于任何一门高级语言。

2015-10-01 09:54:02 44064 19

原创 Kernel Trick——核机制,更高维空间内积的快速计算

当他们在谈论核的时候,到底在谈什么?Kernel是什么?如何在机器学习和模式识别的算法中实现Kernel机制?本文将从通俗的观点开始,逐步引入Kernel机制的作用,探究Kernel的历史根源,分析Kernel的工作机制,最后以一个小例子,来实现Kernel机制。

2015-09-26 18:09:31 16578 1

原创 xgboost 可视化与结果分析

xgboost 的可视化,调用 xgb.to_graphviz 或 xgb.plot_tree 接口;1. 指定 fmap(feature map)https://www.kaggle.com/mmueller/xgb-feature-importance-python按照 feature map 的格式,编写 fmap 文件:def ceate_feature_map(feature...

2019-04-04 00:42:56 9449 2

原创 python 分段拟合(curve fit)

https://stackoverflow.com/questions/29382903/how-to-apply-piecewise-linear-fit-in-python使用 np.piecewise 创建分段函数,使用 scipy.optimize.curve_fit 进行拟合:from scipy import optimizeimport matplotlib.pyplot ...

2019-03-06 22:43:35 17484 4

原创 优先队列(priority queue)的实现(java,jdk接口)

底层数据结构,最简单的情况为一维数组;两大接口(以大顶堆为例):push首先将要插入的值置于底层数据结构的末尾:heap[size-1] = value不断地将其与其父节点比较,heap[parent] >= heap[pos],break否则交换 heap[parent] 与 heap[pos] 的值,并将 pos = parentpoppos = 0h...

2019-02-24 12:41:28 1983 7

原创 python 运算符优先级、Chaining comparison operators

1. **>> 2**2**3256>> (2**2)**364>> 2**(2**3)256相同优先级的运算符会优先进行左结合,也即第一个操作数和第二个操作数结合,结果再与第三个操作数结合。对于 ** 是个例外。2. 比较运算符与 Chaining comparison operators>> 1<2==2>1Tr...

2019-02-19 21:56:53 1721 1

原创 极简代码 —— list 最小最大索引(argmax/argmin)的实现

def argmin(lst): return min(range(len(lst)), key=lst.__getitem__)def argmax(lst): return max(range(len(lst)), key=lst.__getitem__)

2019-02-11 22:59:47 6662 2

原创 极简算法 —— 判断两字符串是否为相同字母的不同顺序组成

将问题转换为统计各个字母的出现顺序:from collections import CounterCounter(str1) == Counter(str2)

2019-02-11 18:48:30 5850 6

原创 scala 偏函数与 map/collect

https://fangjian0423.github.io/2015/06/14/scala-partial/https://www.jianshu.com/p/fa2ed7ed391e0. collect 与 map 的区别由于collect方法接收的是一个偏函数类型,所以它并不能接收一个lambda表达式:scala> List(1, 3, 5, "seven").co...

2019-01-30 19:37:35 1856 1

原创 scala 与 spark 并行化

1. .par普通集合转换为并行集合scala.collection:scala> (1 to 5).foreach(println(_))12345scala> (1 to 5).par.foreach(println(_))13254注意既然是并行化处理,即一个集合不同的元素由不同的线程操作,不同线程执行的顺序是无法保证的;获取线程名:scala>...

2019-01-30 19:06:13 1444 2

原创 Spark RDD 之间的依赖关系

RDD就是一个不可变的带分区的记录集合,Spark提供了RDD上的两类操作,转换(transformation)和动作(action)。转换是用来定义一个新的RDD,包括map, flatMap, filter, union, sample, join, groupByKey, cogroup, ReduceByKey, cros, sortByKey, mapValues等。动作是返回一个...

2019-01-30 18:26:21 1195 1

原创 Spark utils —— 设置日志级别

1. 通过 SparkContext 指定日志级别val sc: SparkContext = new SparkContext(sparkConf)sc.setLogLevel("WARN")//sc.setLogLevel("DEBUG")//sc.setLogLevel("ERROR")//sc.setLogLevel("INFO")

2019-01-22 22:14:45 2008 3

原创 Python 命令的参数

1. -c 执行python语句$ python -c "print('hello')"hello

2019-01-21 22:28:04 1024 4

原创 pandas 学习 ——Series

1. Series 的获得df.iloc 按行或者按列索引一行,或一列得到的就是一个 Seriespd.Seriesfrom datetime import datetimedates = [datetime(2011, 1, i) for i in [2, 5, 7, 8, 10, 12]]s = pd.Series(np.random.randn(6), index=date...

2019-01-17 22:14:24 884 2

原创 Python 爬虫 ——html 页面的认识

1. 页面中的表格<table class="..." id="..."> <thead> <tr> <th>...</th> <th>...</th> </tr> </thead

2019-01-17 18:45:54 1241 2

原创 Spark 调优 ——cache(persist)与 checkpoint

cache 是对 persist 的进一步调用;1. 为什么要 checkpoint为了保证数据安全性,需要对运行出的中间结果进行 checkpoint最好将结果 checkpoint 到 hdfs,便于集群所有节点进行访问;checkpoint 之前先进行 cache(persist),将数据放在缓存中什么时候 checkpoint:在发生 shuffle 之后做 ch...

2019-01-13 22:07:42 1079

原创 Spark 原理 —— 从 akka 到 spark 集群的启动

1. actor 到 akkaActor 是一种消息并发模型,基于事件模型的并发机制。Scala 的 Actor 类似于 Java 中的多线程编程,不同在于:Scala 的 Actor 设计的初衷在于尽可能地避免锁和共享状态,从而避免多线程并发时出现资源征用的情况;原因在于,Java 中多数使用的是可变状态的对象资源,对这些资源进行共享实现多线程编程的话,需要控制好资源竞争与防止对象状...

2018-11-11 19:14:09 1599 2

原创 强化学习 —— gym

0. gym 下的数据结构Discrete:gym.spaces.discrete.Discreteenv.action_sample 的返回值就是 Discrete 类型Discrete(n):{0, 1, 2, 3, n-1},表示的是正整数的离散空间;成员函数:sample():离散值空间中进行采样;contains(k):离散值空间中是否包含 k;1. 认识...

2018-11-09 19:37:07 1865 2

原创 LeetCode 一题多解

1. 括号匹配20. Valid Parentheses堆栈版:class Solution(object): def isValid(self, s): """ :type s: str :rtype: bool """ stack = [] para_map = {')':'('..

2018-11-05 21:54:16 1405 2

原创 LeetCode 堆栈队列 —— 括号匹配(20、232、155)

1. 堆栈(stack)20,20. Valid Parentheses,括号匹配,堆栈(python 中使用 list 即可实现表示堆栈,list.append:入栈,list.pop():出栈)实现:左括号((、[、{)入栈;右括号()、]、})出栈;遍历全部字符串后,堆栈为空;class Solution(object): def isValid(sel...

2018-11-05 13:03:01 1355 2

原创 LeetCode —— 链表相关(206、141)

0. 数据结构定义链表节点:class ListNode(object): def __init__(self, x): self.val = x self.next = None1. 链表206,翻转链表,206. Reverse Linked List:def reverseList(head): cur, prev = hea...

2018-11-03 22:29:23 1009 1

原创 keras + tensorflow —— 函数式 API编程

1. 实现简单的逻辑回归from keras import Inputfrom keras import layersfrom keras.models import Modelx = Input(shape=(32, )) # TensorShape([Dimension(None), Dimension(32)])y = layers.Dense(16, activation='s...

2018-11-03 12:18:41 1963 3

原创 keras + tensorflow —— 训练参数数目的计算

1. RNN 模型EmbeddingEmbedding(input_dim, output_dim,input_length)input_dim 表示字典的大小;outpu_dim 则表示嵌入的维度;训练参数的数目为:input_dim✖️output_dim;model = Sequential()model.add(Embedding(10000, 64, inpu...

2018-10-30 21:42:08 3162 1

原创 matplotlib —— step、bar、stem、errorbar、hist 图形的绘制

1. plt.step() 与 plt.bar()plt.bar(range(1, len(x)), x, alpha=.4, align=‘center’, label=‘individual’)plt.step(range(1, 14), np.cumsum(x), where=‘mid’, label=‘cumsum’)x = [ 4.8923083 2.46635032 1...

2018-10-23 19:07:12 5158 1

原创 【清单】—— 编程方法、整洁代码与重构

开始时的编写;代码整洁之道;代码大全;编写可读代码的艺术;后续持续不断地重构;重构;重构手册;修改代码的艺术;

2018-10-15 21:39:27 1106

原创 字符串算法 —— 两字符串相同的单词

1. navie:集合 intersect以集合的形式分别存放两字符串,然后求集合交集。def common_words_naive(str1, str2): str1_set = set(str1.strip().split()) str2_set = set(str2.strip().split()) return str1_set & str2_set # 集合 int...

2018-09-27 08:19:53 1846 2

原创 机器学习概念 —— 样本距离矩阵

样本(XN⋅dXN⋅dX_{N\cdot d})之间的距离矩阵N, d = X.shapeX_square = np.sum(X*X, axis=1).reshape(N, 1)dist_mat = 2*X_square - 2*X.dot(X.T)pj|i=exp(−∥xi−xj∥2/2σ2i)∑k≠iexp(−∥xi−xk∥2/2σ2i)pj|i=exp⁡(−‖xi−xj‖2/2...

2018-09-08 19:40:28 2574

原创 Java Tricks —— 不小于一个数的最小2的幂次方

不小于一个数的最小2的幂次方,对于 10 就是 16,对于 21 就是 32.以下实现摘自 java HashMap 的源码:static final int tableSizeFor(int cap) { int n = cap - 1; n |= n >>> 1; n |= n >>> 2; n |= n >&g...

2018-09-06 21:35:35 1906

原创 一题多解 —— 判断一个数是否为奇数

对 2 取模,是否为 1?(负奇数对 2 取模,为 -1)jshell> 5 % 2$1 ==> 1jshell> -5 % 2$2 ==> -1同 1 相与;jshell> 5 & 1$3 ==> 1jshell> -5 & 1$4 ==> 1所以num & 1 == 1判断一个数是否为奇...

2018-09-05 22:23:50 2147

原创 Java 源码 —— List

0. 成员属性transient Object[] elementData; // non-private to simplify nested class accessprivate static final Object[] EMPTY_ELEMENTDATA = {};private static final Object[] DEFAULTCAPACITY_EMPTY_ELEM...

2018-09-03 08:18:36 1054 1

原创 Java 模式实践

1. 表驱动字符串数组 ⇒ 字符串list ⇒ contains (list 内部也是遍历)List<String> candiates = Arrays.asList(new String[] {"", "", ""});

2018-09-03 08:07:52 826

原创 Java 并发 —— 从 BIO 到 NIO

BIO,同步阻塞;NIO:同步非阻塞; 在 NIO 技术之前,服务器侧使用多线程是 BIO 的一种伪阻塞的解决方法;BIO 的多线程机制存在的问题:每一个 Socket 连接服务器,服务器侧都立刻开启(创建)一个线程处理,Socket socket = server.accept();while (true) { new Thread(new ServerHandler(s...

2018-09-01 22:17:29 981 1

原创 java 面试 —— java 基础

1. char => intchar 类型转换为 int 类型时,是转换为其 ascii 码或 unicode 码(比如中文)char ch = 'A';int i = ch; // (int)ch // i = 65;int ch = '香';int i = ch; // (int)ch // i = 39321; \u9999;...

2018-09-01 20:30:29 968

原创 【数值分析】—— 深度学习中的数值计算技巧

underflow:浮点数下溢,数值逼近 0 时出现; 0 作除数,对 0 取对数;overflow:浮点数上溢,数值逼近无穷大时出现;浮点数溢出,不论是上溢还是下溢,会使得最终的结果 Undefined(比如为 NaN),或者跟真实的结果相差很大的量级;1. softmax 函数softmax 函数用于预测多分类问题,各个类别的概率输出。softmax(x)i=exp(...

2018-08-26 21:01:57 2095

Python-2.7.3.tgz

学习《Python 源码剖析》一书所用的 Python 源码文件。

2016-04-29

文件工具类

解决java 运行 MapReduce 相关代码时报权限错误的问题。

2016-03-15

上网日志数据(hadoop用)

简单格式的数据、

2016-03-10

matlab字幕拼接用视频截图

配套于《用matlab实现视频截图字幕部分的拼接》[http://blog.csdn.net/lanchunhui/article/details/50539019]

2016-01-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除