
机器学习
文章平均质量分 71
mjiansun
Live and Learn.
展开
-
【OCR】paddle的OCR学习笔记
OCR(Optical Character Recognition,光学字符识别)是计算机视觉重要方向之一。传统定义的OCR一般面向扫描文档类对象,现在我们常说的OCR一般指场景文字识别(Scene Text Recognition,STR),主要面向自然场景,如下图中所示的牌匾等各种自然场景可见的文字。转载 2024-05-04 12:13:41 · 507 阅读 · 0 评论 -
Importing theano: AttributeError: 'module' object has no attribute 'find_graphviz'
Importing theano: AttributeError: 'module' object has no attribute 'find_graphviz'问题:>>> import theanoTraceback (most recent call last):File "", line 1, in File "/usr/local/lib/python2.7原创 2017-03-07 18:24:07 · 4623 阅读 · 0 评论 -
RNN实践之唐诗创作
这次,尝试先用RNN玩一下唐诗创作。//update 201602100001本来是唐诗的,结果唐诗里面太多生僻字所以我刚刚从网上下载了一些歌词,想仿照参考资料【4】创作一首歌。不过,只有111KB,不知道训练模型够不够。同时,我傍晚训练唐诗时,因为买的服务器是1G1核的,根本难以训练,所以换了个4G的服务器。//当然,同样是只有CPU123456安装Torch买了台最便宜的云服务器,U...转载 2018-07-06 10:17:01 · 869 阅读 · 1 评论 -
Theano官方LSTM代码解析(2)
阅读本文需要一定的Python,lstm和Theano的基础知识。 Theano是一种符号语言,它的优点在与它的自动求导机制以及GPU的透明性,缺点在于调试时极为不便。基于Theano开发的Deep Learning代码一般分为四个部分:数据准备,模型建立,预训练和训练,测试。代码按照这个顺序进行分析。Theano的LSTM代码见https://github转载 2017-02-27 13:34:22 · 1903 阅读 · 0 评论 -
RNNs
转自:http://blog.youkuaiyun.com/heyongluoyao8/article/details/48636251#循环神经网络(RNN, Recurrent Neural Networks)介绍 这篇文章很多内容是参考:http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-in转载 2016-09-22 10:11:50 · 3274 阅读 · 0 评论 -
Theano官方lstm代码解析(1)
因为需要使用 lstm,lstm的代码,和官方教程解释得不是很详细,故对 theano lstm进行一些分析理解。整体框架理解这份代码实现的功能是利用RNN(LSTM)对IMDB每部电影的评论页面的评论进行情感分类。这里的数据集比较特殊。一个包含所有句子的二重列表,列表的每个元素也为一个列表。大小为2的tuple,train[0][n] 代表一个句子(对于词库索引的List),tra...转载 2017-02-26 20:06:54 · 1222 阅读 · 0 评论 -
RNN以及LSTM的介绍和公式梳理
转自:http://blog.youkuaiyun.com/Dark_Scope/article/details/47056361前言好久没用正儿八经地写博客了,csdn居然也有了markdown的编辑器了,最近花了不少时间看RNN以及LSTM的论文,在组内『夜校』分享过了,再在这里总结一下发出来吧,按照我讲解的思路,理解RNN以及LSTM的算法流程并推导一遍应该是没有问题的。RNN最转载 2016-09-23 14:35:41 · 733 阅读 · 0 评论 -
lstm
原创 2017-02-26 16:25:11 · 394 阅读 · 0 评论 -
SVD的应用:求解Ax=b
SVD,Singular Value Decomposition,奇异值分解,作为线性代数中的重要工具,被应用在不同领域。本文只介绍如何使用这一工具求解。本节给出详细的例子介绍 【3. 关于解的讨论】中的情况,若已经理解前面的章节,可以跳过本节。2. 伪逆 Pseudoinverse。有一个大概的介绍,这里借用一下图片。iii.b. 矮胖但不满秩。ii.b. 细长但不满秩。iii.a. 矮胖且满秩。i.b. 方阵但不满秩。ii.a. 细长且满秩。i.a. 方阵且满秩。转载 2023-03-08 18:09:29 · 328 阅读 · 0 评论 -
【YOLOv5】正样本分配详解
YoloV5中loss由正样本和负样本两部分loss组成,负样本对应着图像的背景,如果负样本远多于正样本,则负样本会淹没正样本的损失,从而降低网络收敛的效率与检测精度。这就是目标检测中常见的正负样本不均衡问题,解决方案之一是增加正样本数。转载 2022-09-21 11:45:20 · 8545 阅读 · 5 评论 -
【模型部署】Pytorch->ONNX->trt
主要注意cuda、cudnn、pytorch、tensorrt、onnx、onnxruntime的版本。原创 2022-09-14 21:31:23 · 1334 阅读 · 0 评论 -
【YOLOX】核心基础完整讲解
这两个数据增强会被关闭掉。而在此之前,Mosaic和Mixup数据增强,都是打开的,这个细节需要注意。(2)由于采取了更强的数据增强方式,作者在研究中发现,转载 2022-09-13 15:51:43 · 7944 阅读 · 0 评论 -
【OCR】FPGM
比较整体的网络宽度*剪枝率的小网络与每一层都裁剪掉相同剪枝率的权重的裁剪网络是相同的,而且直接训练的整体的网络宽度*剪枝率的小网络的性能不比每一层都裁剪掉相同剪枝率的权重的裁剪网络的性能差,那么fpgm剪枝感觉没起到什么作用啊!的区别,它们的不同点是HFP在每个epoch后会将卷积核直接剪掉,被剪掉的卷积核在下一个epoch中不会再出现,而SFP在每个epoch后,会将需要剪枝的卷积核仍然保留,只是将其参数置为0,依旧参与下一轮的迭代更新,在所有的epoch循环结束后再进行权重修剪。算距离的方式如下所示。转载 2022-09-07 17:09:12 · 1651 阅读 · 1 评论 -
【机器学习】PCA(主成分分析)(二)
(Principal Component Analysis)是常用的数据分析方法。PCA是通过线性变换,将原始数据变换为一组各维度线性无关的数据表示方法,可用于提取数据的主要特征分量,常用于高维数据的降维。转载 2022-08-26 20:38:20 · 560 阅读 · 0 评论 -
【机器学习】PCA(主成分分析)(一)
上面是比较极端的情况,就是房价和面积完全正比,所以二维数据会在一条直线上。主元分析也就是PCA,主要用于数据降维。这种一维数据可以直接放在。转载 2022-08-26 13:47:14 · 971 阅读 · 0 评论 -
【YOLOV5】预测结果解码流程
网络输入维度为 640×640×3,即原始图片预处理之后的长宽都为 640 的 3 通道RGB 彩色图片,通过网络后,大中小 3 个尺度的检测层输出维度为 S×S×na×(tx+ty+tw+th+to+nc),其中 S×S 为划分的网格个数,na为每个尺度对应预设先验框的个数,nc为需要预测的类别数。如下图 所示,蓝色框是标签边界框(ground truth box),bx、by、bw、bh分别为标签边界框中心点坐标和宽高尺寸,cx、cy是该标签边界框中心所占据网格(grid)与左上角的网格距离;转载 2022-08-24 15:17:09 · 2909 阅读 · 0 评论 -
【深度学习】(一)知识蒸馏
近年来,知识提炼中的神经结构搜索,即在教师模型的指导下,对学生结构和知识转移进行联合搜索,将是未来研究的一个有趣课题。Offline Distillation缺点是教师网络通常容量大,模型复杂,需要大量训练时间,还需要注意教师网络和学生网络之间的容量差异,当容量差异过大的时候,学生网络可能很难学习好这些知识。然而,现有的在线方法(如相互学习)通常不能解决在线设置中的大容量教师,因此,进一步探索在线设置中教师和学生模型之间的关系是一个有趣的话题。这部分将探讨的教师模型和学生模型的结构之间的关系,如上图所示。.转载 2022-08-17 17:44:20 · 2216 阅读 · 0 评论 -
【Loss】中心损失 Center Loss 解释
类中心c:每一个样本的特征需要通过一个好的网络到达特征层获得,这样计算完后所有样本的特征的平均值为类中心c,而好的网络需要是在有类中心加入的情况下才能得到...转载 2022-08-17 14:15:16 · 4300 阅读 · 0 评论 -
【OCR】基于投影的文字定位与切割(python版)
【OCR技术系列之二】基于投影的文字定位与切割(python版)_华尔街的幻觉的博客-优快云博客转载 2022-08-11 13:13:13 · 790 阅读 · 0 评论 -
【YOLOv3】核心基础知识完整讲解(一)
这里推荐Yolov4作者的darknetAB代码,代码和原始作者代码相比,进行了很多的优化,如需要运行Yolov3网络,加载cfg时,使用Yolov3.cfg即可。项目的工程部署上,如果使用C++版本进行Tensorrt加速,一方面可以参照Alexey的github代码,另一方面也可以参照下面其他作者的开源代码。在准备课程过程中,大白搜集查看了网络上几乎所有的Yolov3资料,在此整理几个非常不错的文章及视频,大家也可以点击查看,学习相关知识。这里不多说,如果需要安装,可以移步大白的另一篇文章《......转载 2022-07-30 10:19:19 · 1386 阅读 · 0 评论 -
【概率图模型】(一)高斯朴素贝叶斯分类器(原理+python实现)
具体例子我们通过判定花萼长度,花萼宽度,花瓣长度,花瓣宽度的尺寸大小来识别鸢尾花的类别。关于数据集,是通过sklean加载而来,这次只采用前一百个数据进行训练,使得花的类别只有0和1两个类别,因此我们这次目标是通过花的四个特征来判断类别是0还是1。根据贝叶斯准则,可以得到在固定特征下,每个类别的概率,其表达式具体如下如果p(类别1│固定特征)>p(类别2│固定特征),则在给出的特征下,类别属于1的概率大,因此预测类别为1,可以看出贝叶斯决策理论是通过计算概率,选择概率较大的来预测类别。?..........转载 2022-07-16 16:10:12 · 4887 阅读 · 2 评论 -
【YOLOv4】详细讲解全过程
深入浅出Yolo系列之Yolov3&Yolov4&Yolov5&Yolox核心基础知识完整讲解 - 知乎深入浅出Yolo系列之Yolov5核心基础知识完整讲解 - 知乎深入浅出Yolo系列之Yolov5核心基础知识完整讲解 - 知乎转载 2022-06-23 15:17:32 · 7206 阅读 · 6 评论 -
【机器学习】(5.5)聚类--密度聚类(HDBSCAN)
1. HDBSCAN原文:Hierarchical Density-based Spatial Clustering of Applications with Noise参考1. https://towardsdatascience.com/a-gentle-introduction-to-hdbscan-and-density-based-clustering-5fd79329c1e82.Understanding HDBSCAN and Density-Based Clustering.转载 2022-04-11 16:42:38 · 1147 阅读 · 0 评论 -
并查集详解 ——图文解说,简单易懂(转)
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,HDU1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它们是否连通,或者问你整幅图一共有几个连通分支,也就是被分成了几个互相独立的块。像畅通工程这题,问还需要修几条路转载 2022-04-01 09:06:46 · 283 阅读 · 0 评论 -
【机器学习】(5.4)聚类--密度聚类(DBSCAN、MDCA)
密度聚类DBSCAN转载 2022-04-01 17:32:19 · 3208 阅读 · 0 评论 -
【机器学习】(5.3)聚类--层次聚类
无监督模型。聚类算法需要度量样本间的距离,距离度量的方式可以参考【机器学习】(5)聚类--距离度量_mjiansun的博客-优快云博客一般会使用欧氏距离。起步层次聚类( Hierarchical Clustering )是聚类算法的一种,通过计算不同类别的相似度类创建一个有层次的嵌套的树。(分为凝聚的和分裂的两种方式,常用的方式是凝聚的方式)层次聚类算法介绍假设有 n 个待聚类的样本,对于层次聚类算法,它的步骤是:步骤一:(初始化)将每个样本都视为一个聚类; 步骤二:.转载 2022-03-30 13:39:33 · 1040 阅读 · 0 评论 -
【机器学习】(5.2)聚类--Kmeans
无监督模型1. K-means1.1 基本思想1.2 算法步骤选取初始点共分为两种方式,一般选择第二种方式:(1)根据人的先验知识得到K个初始点,比如男女身高,假定男性身高175cm,女性165cm。(2)从样本中随机选择K个点作为初始点。1.3 python代码实现......转载 2022-03-28 14:08:25 · 2391 阅读 · 0 评论 -
SVM支持向量机原算法与对偶算法举例
1. 原算法与对偶算法对于支持向量机而言,对偶算法是借助拉格朗日对偶性从原算法(Primal Problem)推出的,两者完全等价,只是求解了不同的条件极值(下面是硬间隔支持向量机的原算法和对偶算法):2. 例子假设数据集D为:下面会通过原算法、对偶算法来分别计算硬间隔支持向量机的决策边界。3. 原算法求解4. 对偶算法求解上述红框b的解法与https://blog.youkuaiyun.com/u013066730/article.转载 2022-03-24 15:11:55 · 2660 阅读 · 0 评论 -
【机器学习】(4)SVM支持向量机
支持向量机SVM的原理与目标SVM的计算过程和算法步骤软间隔最大化核函数SMO算法转载 2022-03-24 15:09:13 · 896 阅读 · 0 评论 -
【机器学习】(3)Bagging和随机森林
1. Bagging这里在选择分类器时,一般就选择一种分类器,而且会选择决策树这样的弱分类器,SVM和logistic属于强分类器。2. 随机森林先选部分样本,再从这部分样本中挑选特征。3. 投票机制这个贝叶斯投票机制:具体使用可能需要自己定义新的公式。4. 样本不均衡代价敏感学习这里我还是很理解,后面懂了我再来补充。5. 样本间相似度6. 使用随机森林计算特征重要度6.1 selecttion frequency...转载 2022-03-18 21:39:25 · 1056 阅读 · 0 评论 -
【机器学习】(2)决策树
自信息量熵自信息量与熵请参考信息量与熵_mjiansun的博客-优快云博客_信息量与熵举个例子转载 2022-03-18 16:06:40 · 484 阅读 · 0 评论 -
【机器学习】(1)多元回归和logistic回归
1. 线性回归1.1 线性模型xi和h0是已知的观测值,需要求得theta的参数值,这一步其实就是在拟合一个截断面。当求得theta后,只需要给定xi的值,就可以推断出h0的值,起到了预测的作用。1.2 如何求得theta1.2.1 似然函数如果theta是被已经求得,那么预测如下公式所示。y_pred会与真实值有一定的偏差,我们将偏差记作ε,此时真实值与预测值之间的关系可以表示为(即似然函数):。我觉得这里有问题:为什么能直接套用概率密度函数?误差的概率是这样的吗.转载 2022-03-16 13:09:52 · 5259 阅读 · 0 评论 -
【ROC】调用sklearn库中的roc_curve方法
转自:https://scikit-learn.org/stable/auto_examples/model_selection/plot_roc.html#sphx-glr-auto-examples-model-selection-plot-roc-pyprint(__doc__)import numpy as npimport matplotlib.pyplot as pltfrom itertools import cyclefrom sklearn import svm, da.转载 2020-06-08 17:34:28 · 3089 阅读 · 0 评论 -
【Paddle-OCR】遇到问题总结
1、OMP问题OMP: Error #15: Initializing libiomp5md.dll,,OMP: Hint This means that multiple copies of the OpenMP解决方案"..\tools\infer\predict_det.py"增加os.environ["KMP_DUPLICATE_LIB_OK"]="TRUE"2、win32问题ImportError:DLL load failed while importing wi原创 2021-11-09 17:23:18 · 1403 阅读 · 0 评论 -
PaddleOCR打包exe--Pyinstaller
一、前期准备首先确保代码在虚拟环境中能够成功运行,gui.pyfrom paddleocr import PaddleOCR# 模型路径下必须含有model和params文件ocr = PaddleOCR(det_model_dir = './inference/default_det_model_dir/', # 检测模型所在文件夹 rec_model_dir = './inference/default_rec_model_dir/', # 识别模型所在文转载 2021-11-19 13:21:38 · 4302 阅读 · 3 评论 -
【Milvus】使用记录
索引如何选择索引类型 (一)https://milvus.io/cn/blogs/2019-12-03-select-index.mdMilvus 索引类型https://milvus.io/cn/docs/v0.9.1/guides/index.md原创 2020-06-03 19:26:42 · 575 阅读 · 0 评论 -
鲁棒性、泛化的解释和区别
鲁棒性鲁棒是Robust的音译,也就是健壮和强壮的意思。它是在异常和危险情况下系统生存的关键。在深度学习中常用于形容算法模型,当说算法模型具有鲁棒性时,表明对这个算法模型而言,一些异常的数据对整体的性能影响不大或者基本没有影响。泛化能力泛化能力指算法模型对未知数据的预测能力。学习的目的是学到隐含在数据背后的规律,对具有同一规律的学习集以外的数据经过训练的网络也能给出合适的输出,该能力称为泛化能力。...转载 2022-02-21 17:01:00 · 2948 阅读 · 0 评论 -
【Numpy】Numpy.cumsum() 用法 ( np.cumsum)
numpy.cumsum()numpy.cumsum(a, axis=None, dtype=None, out=None)axis=0,按照行累加。axis=1,按照列累加。axis不给定具体值,就把numpy数组当成一个一维数组。-----------------直接看例子-------------->>> a = np.array([[1,2,3], ...转载 2020-03-31 09:41:03 · 5838 阅读 · 0 评论 -
算法工程师大致是做什么的
作者: 龙心尘时间:2021年1月出处:https://blog.youkuaiyun.com/longxinchen_ml/article/details/113074403后续如果接触相应工作,对于一些问题的理解再来补充其实这是一个不太好解释的问题,因为并没有一个完备的定义。笔者在算法领域遇到了不少同行,发现各自的工作侧重点甚至思维方式都很不同。为了给入门的朋友一个清晰的梳理,这里就简单串一串12个常见的算法。首先,全景图镇楼。算法与非算法的区别一般来说,可以把编程工作分为两种,一种是转载 2022-03-03 09:57:38 · 9630 阅读 · 0 评论 -
如何写好论文的研究局限性
什么是研究局限性?每个研究都难免会有研究局限性。研究设计和研究方法等原因都可能造成研究局限性,而这些原因也会影响论文的研究结果。很多研究者为了不让审稿人及读者对该论文的价值产生负面评价,通常会尽量避免在论文中提及研究局限性。但尽管如此,我们仍然有必要在论文中清楚的说明研究中所产生的局限性,并说明此研究局限性对于论文结论造成什么样的影响,以此让审稿人及其他读者能够了解到我们已充分考虑到研究局限性。在本文中,我们提供一些写作研究局限性时应注意的要领,并且提供常见的研究局限性范例,分享我们建议使用的表转载 2022-02-16 14:42:07 · 6456 阅读 · 0 评论