算法
巧克力冰沙真好吃
这是啥意思
展开
-
tensorflow 使用HMM的 viterbi 计算误差
# observation:[batch_size,num_step,output_dims] 神经网络输出# transition:[output_dims,output_dims] 转移矩阵# pi:[batch_size,output_dims] 初始概率矩阵def lstm_crf_viterbi(observation,transition,pi): batch_size ...原创 2018-03-07 14:22:42 · 628 阅读 · 0 评论 -
EM算法的应用--高斯混合模型学习
适用问题高斯混合模型:P(y∣θ)=∑k=1Kαkϕ(y∣θk)P(y\mid \theta)=\sum_{k=1}^{K}\alpha_{k}\phi(y\mid \theta_{k}) 可以视为由不同模型参数θk=(μk,σ2k)\theta_{k}=(\mu_{k},\sigma_{k}^{2})构成的不同高斯分布,由不同的权重αk\alpha_{k}来共同决定y的概率。 算法需要输入观测原创 2017-05-17 22:20:44 · 579 阅读 · 0 评论 -
隐马尔可夫模型 HMM
适用问题A:状态转移矩阵 B:观测概率矩阵 π\pi:初始状态概率分布 O:观测序列 模型:λ(A,B,π)\lambda(A,B,\pi) 概率计算:通过模型,计算O出现的概率 学习问题:用O,极大似然估计模型的参数A,B,π\pi 预测(解码)问题:给定观测序列O和模型,求最有可能的状态序列算法概率计算: 前向: 后向: 综合:原创 2017-05-18 15:59:22 · 436 阅读 · 1 评论 -
EM算法
适用问题带有隐变量(无法直接观测的变量)的条件概率 P(Y,Z∣Θ)P(Y,Z\mid \Theta) Y是可观测变量,Z是隐变量,Θ\Theta 是模型参数通过提供 观测变量Y的观测值、Z的取值范围、P(Y,Z∣Θ)P(Y,Z\mid\Theta) 、 P(Z∣Y,Θ)P(Z\mid Y,\Theta), 计算出模型参数 Θ\Theta算法 原理本质上是求 P(Y∣θ)=∑ZP(原创 2017-05-17 15:44:21 · 419 阅读 · 0 评论 -
朴素贝叶斯
用途:解决多分类问题。训练集(xi,yi),xij 在某个特征中取值,yi是分类结果。缺点:1.假设了条件独立,即假设xi中每个元素xij的选取都不受其他xij的影响,而这会牺牲分类准确率。 2.无法处理隐变量(无法直接观测的变量)。算法: 其中 I(yi=ck)是指 if yi==ck return 1 else return 0; N是训练集的数据条数 为了避免P的计算中出现0的情况,原创 2017-05-14 20:45:12 · 234 阅读 · 0 评论 -
线性规划笔记
图解法将约束条件在坐标系中画出,找到围成的图形(可行域),再做目标函数图像,并向值变大的方向移动,直到可行域边界,交点称为最优解 凸集:在点集中任取两点,则其连线仍在其中(即没有凹入的部分;没有空洞)。 ①若LP问题的可行域存在,则可行域一定是凸集。 ②若LP问题的最优解存在,则最优解或最优解之一,一定是可行域凸集的某个极点(顶点)。单纯型法约束条件系数的矩阵称为Amn,其m阶可逆子阵称为基B原创 2017-05-13 12:49:00 · 1029 阅读 · 0 评论 -
感知机
用途:给定训练数据集,得到能够将数据线性划分的超平面wx+b=0,从而对输入数据进行判别,一般用于二分类问题。适用范围仅在线性可分的情况下可行算法原始模型 对偶模型 此处可以把内积一次全计算出来放入一个矩阵来减少运算次数 原理要找出一个超平面 wx+b=0 来正确区分实例点,那么定义连续可导的损失函数用来衡量超平面划分的正确率(衡量w 和 b参数的好坏),损失函数根据点到超平面距离原创 2017-05-12 16:31:25 · 347 阅读 · 0 评论 -
拟牛顿法
用途:同牛顿法,解f(x)的极值,解决了牛顿法求海瑟矩阵逆慢的问题限制f(x)必须是凸(凹)函数,且二阶可导(是否与海瑟矩阵正定等价?)算法原理DFP 用 模拟 BFGS用 模拟 每一次迭代,不需要重新计算矩阵,而是在原矩阵上加上两个矩阵进行迭代 以DFP为例:定义G的迭代公式为(用代替)( , , )显然 递推公式满足上述要求 BFGS算法同理,但在逆矩阵迭代公式处理上有不原创 2017-05-12 14:30:15 · 248 阅读 · 0 评论 -
牛顿法
用途:给定函数f(x),输出其极值约束 :f(x)必须是凸(凹)函数,且二阶可导缺点 :计算黑塞矩阵的逆需要时间过长解决方法拟牛顿法[这里写链接内容](%E2%80%9C%E6%8B%9F%E7%89%9B%E9%A1%BF%E6%B3%95%E2%80%9D)算法: gk是f(x)对当前xk的一阶导, Hk是黑塞矩阵原理:根据二阶泰勒展开式 如果Xk+1是驻点 那么在Xk原创 2017-05-12 10:49:18 · 321 阅读 · 0 评论 -
自适应中心点个数的K-means java实现
private int minPoint[]; private int belongs[] ; public static void main(String[] args) { int times[] = { 10, 11, 12, 13, 14, 45, 56, 50, 47 ,60}; KMeans m = new KMeans();原创 2017-02-10 09:25:38 · 2028 阅读 · 0 评论