
算法
明天,今天,此时
这个作者很懒,什么都没留下…
展开
-
CPU除法运算
cpu除法是从左到右的减法,乘法是从右到左的加法原创 2022-09-04 15:28:47 · 879 阅读 · 0 评论 -
CPU乘法运算-不再迷惑
介绍计算机乘法计算过程原创 2022-08-30 11:05:08 · 1314 阅读 · 0 评论 -
词移距离(WMD)算法理解注意点
本文参考不抄袭:文本相似度度量——词移距离(WMD)看了下论文From Word Embeddings To Document Distances形象化理解WMD过程 大家都知道看论文的难点主要有两个,一个是作者的表达能力是否能够完全正确地说清楚,另外一个是读者的知识储备量。 比如这论文里面有个概念,simplex(单纯形),单纯形是线性规划里面的概念,但是不能理解,百度了一下还是不能理解,百度里面的单纯形是n维空间有n+1维单纯形(比如2维空间有三角形构成封闭空间,3为用四个点构成),wmd论原创 2020-12-17 15:44:44 · 613 阅读 · 0 评论 -
多种分词方法合并对齐分块算法
问题将以下4种方法的分词结果对齐分块。['目的', '将', '有限元分析', '技术', '运用', '于', '空调', '包装件', '的', '静态堆码', '和', '跌落', '冲击', '性能', '分析', '和', '优化', '设计', '中。', '方法', '运用', '有限元分析软件', ',', '建立', '空调', '、', '缓冲', '衬垫', '的', '有限元模型。'], ['目', '的', '将', '有', '限元', '分析', '技术', '运用',原创 2020-10-21 18:54:20 · 471 阅读 · 0 评论 -
Word2Vec、Sentence2Vec、Doc2Vec的简单区分和比较
注意,三个模型的关系不是简单的堆叠,区别很大word2vec出现最早,针对词,词粒度不限,大量文本训练,通过训练,得到词嵌入向量。doc2vec在word2vec后出现,针对词和句子(或者词和段落,或者词和文章),粒度自定义,大量文本训练,与word2vec统一水平,借鉴了word2vec的训练思想sentence2vec三个模型中出现最晚,针对句子,粒度是自然句子,大量文本训练。在word2vec的基础上的模型,纯粹只找句子向量,原文思想不复杂,通过引入 discourse(我不理解这是原创 2020-08-12 10:51:09 · 1622 阅读 · 0 评论 -
理解Doc2Vec的一些提示
启文 Doc2Vec思想源于Word2Vec,Doc2Vec论文中只说明灵感来源于Word2Vec,但是没说明具体怎么实现,我对Word2Vec理解算比较深的了,看了老久没看懂论文Doc2Vec,怀疑是翻译能力问题,百度了一下中文的解释。然后还是在论文中的图解释上看懂了,注意力忽略了。提示 1)要看懂Doc2Vec必须先看懂Word2Vec,word2Vec原始论文很少有人看得懂,给我另外一篇文章简单易懂解释Word2Vec:https://blog.youkuaiyun.com/LearnToPain/a原创 2020-08-11 16:48:26 · 246 阅读 · 0 评论 -
从概率分布到最大熵
0前言 最近在温习统计学习方法,比较针对自然语言处理,所以从最大熵开始看,最大熵是后面EM、HMM、CRF的基础。还记得第一次看最大熵的情景是根本看不懂,越不懂越烦躁。现在再看似乎不会有那种感觉,但是似乎还是有一些看不清,至少只从统计学习方法这本书来看。还有百度了一下别人写的最大熵,简单的例子写了很长篇幅来说明最大熵。依我来看,那些不懂的人并不是一个例子不详细的问题。1最大熵介绍原理:变量分布未知的情况下,同时满足变量所有限制条件,这时变量视为服从均匀分布。就是书上的例子:...原创 2020-08-23 16:15:07 · 1879 阅读 · 0 评论 -
你真的懂Word2Vec?
为什么要些这篇文章? 说到Word2Vec,都一直似懂非懂,不知道是搜索引擎问题还是,那些博主有些二,反正他们说的东西菜鸟(我还不算菜鸟)看了觉得以为懂了。其实要他们把这个算法写出,估计没有一个人,真正懂的人肯定是从其他渠道获知或者下功夫去理解的。个人认知这概念很久了,从一些老师讲解也好网上博客也好,我自以为懂了,现在要用了,结果都不知道原理。写这篇文章是让菜鸟们知道网上还是有懂的人愿意分享。启文开始说明 先了解这两篇文章,来自知乎里面分享,知乎里面的人感觉都是爱学习的人...原创 2020-06-06 16:15:53 · 299 阅读 · 0 评论 -
隐马尔科夫分词(统计概率版)
说明隐马尔科夫是机器学习算法,用于获取隐状态序列。效果依赖于样本量。尽管如此还是会出现很多不好结果,比如低频词。代码没输出中断#-*-coding:utf-8-*-import hmmlearn.hmm as hmmimport numpy as np#读取分好词的文章,就是个样空格分开的字和词with open('pku_training.utf8','r',encoding='ut...原创 2020-04-05 23:33:43 · 248 阅读 · 0 评论 -
seq2seq with attentiond对话模型实现(浓缩版)
吐槽 虽然代码量不大,花了很长时间才理清楚,几个py文件的调用关系,作为一个看源码的人来说,大量函数调来调去看过去看过来真的很累。简单的代码非要写很多步来实现,实在不理解。 只有一个地方调用的函数,实在不建议单独写个函数(除非确实需要函数),就算给别人看,这样也会带来困扰,页面切换来切换去,去理解你写的什么东西;另外,也不建议一个函数超过5个参数;不论给调用者还是给代码观看者来说体验并不好...原创 2020-03-20 16:30:22 · 333 阅读 · 0 评论 -
faster RCNN视频目标检测
参考:https://blog.youkuaiyun.com/xiaoxiao123jun/article/details/76605928代码详细参考本人博客:代码:#-*-coding:utf-8-*-import tensorflow as tfimport cv2import numpy as npimport matplotlib.pyplot as pltimport label...原创 2020-03-12 02:46:59 · 1258 阅读 · 2 评论 -
faster-rcnn按部就班跑代码预测
参考:https://blog.youkuaiyun.com/qq_29462849/article/details/80510687最好别看他的训练好的模型下载地址:http://download.tensorflow.org/models/object_detection/faster_rcnn_resnet101_coco_11_06_2017.tar.gz这里里面找相关模块和文件:https:...原创 2020-03-12 00:01:13 · 676 阅读 · 0 评论 -
查看某一步卷积后的结果数据
在keras读取某卷积层的数据获取图片卷积后的值,图片示例:#-*-coding:utf-8-*-import tensorflow as tfimport cv2keras =tf.kerasK=tf.keras.backend#定义模型这里是227x227x3的输入->卷积->最大池化->卷积,模型没有训练,用的是初始化参数model=keras.Sequ...原创 2020-03-11 00:16:28 · 1319 阅读 · 0 评论 -
tensorflow和keras写vgg-d模型
#-*-coding:utf-8-*-import tensorflow as tfkeras = tf.keras'''vgg_network tfsorflow版'''def vgg_network(x): """ 1.224x224x3的图片,input 2.卷积 [3,3,3,64]+激活 3.卷积 [3,3,64,64]+激活 4.最...原创 2020-02-27 23:55:43 · 697 阅读 · 0 评论 -
tensorflow之验证码生成与训练
思路1.验证码随机生成2.生成样本3.样本划分4.训练样本5.验证模型python 相关描述captcha包用于验证码图生成PIL包用于图像处理和展现来个例子:from captcha.image import ImageCaptchaic=ImageCaptcha()d=ic.generate('G8iY')from PIL import ImageImage....原创 2020-02-27 23:50:33 · 774 阅读 · 0 评论 -
IoU代码竟如此简单
IoU代码:def IoU(lx_1,ly_1,rx_1,ry_1,lx_2,ly_2,rx_2,ry_2): ''' :param lx_1: 第一个box的左上角x坐标 :param ly_1: 第一个box的左上角y坐标 :param rx_1: 第一个box的右下角x坐标 :param ry_1: 第一个box的右下角y坐标 :param ...原创 2020-02-02 00:29:08 · 460 阅读 · 1 评论 -
PrefixSpan频繁序列算法快速理解
经典例子 首先,图中两图间没有关系,只是说明两种数据的形式区别; 然后,我们只需要关注序列数据; 最后,我们需要理解“<>”代表什么意思?项的理解 <a(abc)(ac)d(cf)>是表中的第一项可以理解为SID为10的用户,5次来商店购买的商品集,第一次只买了a商品,第二次买了a、b、c,第三次买了a、c,第四次只买了d,第五次买了c、f。 所以,...原创 2020-01-11 12:07:40 · 762 阅读 · 0 评论 -
XGBoost公式推导(这还看不懂给我留言)
一、XGBoost前提假设9。T表示叶子点个数9。T表示叶子点个数9。T表示叶子点个数二、XGBoost损失三、单树损失的需要换成另外一种表达四、最优损失和叶子节点的信息增益...原创 2019-12-06 11:27:47 · 343 阅读 · 0 评论 -
AdaBoost
原创 2019-12-04 13:55:05 · 149 阅读 · 0 评论 -
kd-tree搜索优化(新,原创,未验证)
具体说明还是用这个例子:若X=(2.1,3.1),空间划分为:上图黄色区域是无需搜索区域,则排除它,过程如下,(因有公式,不想再在博客上打一遍,mathtype上截的图)K近邻说明都说K近邻简单,其实,k近邻相当复杂,1》简单的计算距离,距离近的k个点,很简单,结果数据量大计算慢,而且每次都要循环多次,浪费计算机资源;2》构建KD tree,树状搜索节点比遍历快,数据结构上改变...原创 2019-12-03 13:26:11 · 662 阅读 · 0 评论 -
概率估计->似然估计->最大后验估计->贝叶斯估计
设事件XXX概率估计 XXX可能性为:P(X)P(X)P(X)似然估计 在概率估计的情况下,多了一个不确定因素θ\thetaθ,这时θ\thetaθ是一个随机变量,再估计P(X=x)P(X=x)P(X=x),就要多考虑θ\thetaθ的情况,似然估计就是类似穷举θ\thetaθ的可能性,当然似然估计使用梯度求极值,选择使P(X)P(X)P(X)最大的θ\thetaθ,也就是找:θ=a...原创 2019-11-28 14:22:28 · 211 阅读 · 0 评论 -
为什么梯度是上升方向,梯度下降要取负?
讨论 这个问题是很容易忽略,也就一个负号的问题,大多是记下来,但是确实也一个搞不懂的问题。方向导数简单说明方向导数,毕竟梯度与方向导数是有关系的。 上图 l 对x,y的偏导,分别在x和y的方向上,两偏导线垂直映射到绿色线方向上,再求和就是绿色线向量长度; θ=0时,也就是绿色线和灰色线重合,也就是梯度方向上的最大方向导数。梯度方向为何是上升方向这个示例函数是f(x)=(x-...原创 2019-10-31 00:16:00 · 9837 阅读 · 1 评论 -
常规函数的梯度下降python(非机器学习梯度下降)
说明梯度下降在应用于回归方程(机器学习中的)和一般函数有一些方法上的区别。一般函数没有样本的干扰所以相对来说考虑的东西比较少,上代码代码#-*-coding:utf-8-*-import sympy as syimport numpy as npdef gradient_descent(symbol_expression,independent_vars_dict,alpha,epsi...原创 2019-10-24 14:44:15 · 194 阅读 · 0 评论 -
误解ROC曲线(菜鸟篇)
各种率看https://www.cnblogs.com/Zhi-Z/p/8728168.html实际理解看https://segmentfault.com/a/1190000016735657?utm_source=tag-newest误区1。预测结果是二分类,然后理解TPR,FPR,这明显是错的。2。一次计算然后画曲线,这也是错的,点不够。注意1。画ROC,开始要按照预测结果逆排...原创 2019-08-28 14:35:05 · 942 阅读 · 0 评论 -
汉诺塔 非递归|递推|循环实现(借鉴梳理)
package stackAndQueue;import java.util.*;import static java.lang.System.out;public class test { public static void main(String[] args) { hanoi(2); } static void hanoi(int n) ...原创 2019-05-28 10:22:18 · 636 阅读 · 0 评论 -
汉诺塔从模型到实现 递归&循环两种方式 java
汉诺塔递归模型建立public class test2 { public static void main(String[] args) { hanio(3, 'a', 'b', 'c'); } static void hanio(int n, char a, char b, char c) { if (n == 1) { System.out.println(Stri...翻译 2019-05-28 00:06:35 · 1058 阅读 · 0 评论 -
模拟退火算法(Simulated Annealing)
模拟退火算法说说什么是算法?有人理解是输入数据经过一些步骤的处理,最后输出。在我理解来看就是一种优化问题或者说就是数值分析,无论机器学习中的算法还是深度学习的算法,寻找最优模型都是解最小损失的方程。模型类型其实并不多,最后的模型都是认知模型的套用,关键还是求解损失函数,具体化模型参数。模拟退火不是模型,是一种算法,用于求解最优值。背景摘自维基百科模拟退火: 模拟退火来自冶金学的专有名词退火。...原创 2019-03-05 22:26:36 · 3481 阅读 · 2 评论