人工智能
文章平均质量分 78
GitHub质检员
目前专注于大学生项目实战开发,讲解,毕业答疑辅导以及产品测评、宣传、工具推广等合作。全网粉丝30万+,CSDN特邀博主,Java新星计划多届导师,掘金/知乎/华为云/阿里云/51CTO等平台优质创作者。
展开
-
最全的机器学习模型训练全流程
我们以随机森林为例。与上面解释的类似,训练集用于建立预测模型,同时对验证集进行评估,据此进行预测,可以进行模型调优(如超参数优化),并根据验证集的结果选择性能最好的模型。特别是,第一部分是较大的数据子集,用作训练集(如占原始数据的80%),第二部分通常是较小的子集,用作测试集(其余20%的数据)。除了只进行分类建模,我们还可以进行主成分分析(PCA),这将只利用X(独立)变量来辨别数据的底层结构,并在这样做的过程中允许将固有的数据簇可视化(如下图所示为一个假设图,其中簇根据3种企鹅物种进行了颜色编码)。原创 2024-01-01 08:00:00 · 1086 阅读 · 0 评论 -
自动驾驶——Carla 模拟器简介
CARLA是一个开源的自动驾驶模拟器。它是从头开始构建的,用作模块化和灵活的API,以解决自动驾驶问题中涉及的一系列任务。CARLA的主要目标之一是帮助自动驾驶研发民主化,它是一种易于用户使用和定制的工具。为此,模拟器必须满足一般驾驶问题(例如学习驾驶策略,训练感知算法等)内不同用例的要求。CARLA基于Unreal Engine来运行模拟,并使用OpenDRIVE标准(今天为1.4)定义道路和城市环境。通过使用Python和C ++处理的API授予对模拟的控制权,该API随项目的发展而不断增长。原创 2024-01-01 03:00:00 · 1183 阅读 · 0 评论 -
在ubuntu18.04上体验百度Apollo6.0自动驾驶
Apollo 是优秀的自动驾驶开发框架,出自百度之手,目前已更新到 6.0 版本,本文旨在详细记录 Apollo 6.0 在 Ubuntu 18.04 中的完整安装及运行过程,并会阐述在虚拟机和物理机中进行安装时的细微区别。原创 2023-12-29 03:45:00 · 1645 阅读 · 0 评论 -
用图带你了解机器学习
机器学习是从数据中自动分析获得模型,并利用模型对未知数据进行预测。我们人从大量的日常经验中归纳规律,当面临新的问题的时候,就可以利用以往总结的规律去分析现实状况,采取最佳策略。从数据(大量的猫和狗的图片)中自动分析获得模型(辨别猫和狗的规律),从而使机器拥有识别猫和狗的能力。原创 2023-12-28 04:30:00 · 709 阅读 · 0 评论 -
一文搞懂梯度下降
梯度下降是机器学习中的常用算法,通过不断迭代计算函数的梯度,判断该点的某一方向和目标之间的距离,最终求得最小的损失函数和相关参数,为建立线性模型提供支持。梯度下降是一种广泛用于求解线性和非线性模型最优解的迭代算法,它的中心思想在于通过迭代次数的递增,调整使得损失函数最小化的权重。它的作用是用于优化一个目标函数,如果要最小化一个损失函数,使用的就是梯度下降法,如果要最大化一个效用函数,使用的是梯度上升法。梯度下降就是用来求某个函数最小值时自变量对应取值。原创 2023-12-28 06:15:00 · 819 阅读 · 0 评论 -
一文搞懂CUDA
统一计算设备架构(Compute Unified Device Architecture, CUDA),是由NVIDIA推出的通用并行计算架构。解决的是用更加廉价的设备资源,实现更高效的并行计算。CUDA是NVIDIA公司所开发的GPU编程模型,它提供了GPU编程的简易接口,基于CUDA编程可以构建基于GPU计算的应用程序。CUDA提供了对其它编程语言的支持,如C/C++,Python,Fortran等语言。原创 2023-12-27 07:45:00 · 615 阅读 · 0 评论 -
使用Opencv python从Image中裁剪多边形
给定标准框,把这张图上所有的标注框的小图切出来,标注框不一定是矩形,有多边形。如果需要,添加白色背景。使用多边形点查找区域。使用多边形点创建遮罩。原创 2023-12-27 04:15:00 · 106 阅读 · 0 评论 -
卷积神经网络 – CNN简介
而卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,是一种深度学习模型,它由若干卷积层和池化层组成,尤其在图像处理方面CNN的表现十分出色。在具体应用中,往往有多个卷积核,可以认为,每个卷积核代表了一种图像模式,如果某个图像块与此卷积核卷积出的值大,则认为此图像块十分接近于此卷积核。以下就是25种不同的卷积核的示例:-上图中,我们可以看到,原始图片是20×20的,我们对其进行下采样,采样窗口为10×10,最终将其下采样成为一个2×2大小的特征图。原创 2023-12-26 07:00:00 · 110 阅读 · 0 评论 -
激活函数,损失函数,正则化
在深度学习中,输入值和矩阵的运算是线性的,而多个线性函数的组合仍然是线性函数,对于多个隐藏层的神经网络,如果每一层都是线性函数,那么这些层在做的就只是进行线性计算,最终效果和一个隐藏层相当!那这样的模型的表达能力就非常有限。实际上大多数情况下输入数据和输出数据的关系都是非线性的。所以我们通常会用非线性函数对每一层进行激活,大大增加模型可以表达的内容(模型的表达效率和层数有关)。原创 2023-12-26 05:30:00 · 35 阅读 · 0 评论 -
基于树编辑距离的相似度(TEDS)
最近由于要对OCR文字识别系统的表格识别部分做指标评测分析。评测方法之前是将ground truth 和recognition result 展平后统计非空单元格之间的两两关系,得到非空单元格的关系矩阵。然后基于这个矩阵去统计Recall,Precision和 F1 score。但是这样的评测方式是有问题的:只检查非空单元格之间的直接关系,而对于由空单元格和非直接关系单元格之间未对齐引起的错误无法检测。另一个问题是无法同时对单元格的内容进行评测经过一番搜索发现了TEDS评价方法。原创 2023-12-25 09:12:00 · 121 阅读 · 0 评论 -
机器学习---特征工程介绍
特征工程是使用专业背景知识和技巧处理数据,使得特征能在机器学习算法上发挥更好的作用的过程。意义:会直接影响机器学习的效果数据中包含冗余或无关变量(或称特征、属性、指标等),旨在从原有特征中找出主要特征。原创 2023-12-30 09:45:00 · 794 阅读 · 0 评论 -
查看Python 代码的内存和模型显存消耗以及优化
Python 的 memory_profiler这个库可以帮助我们了解内存的消耗,-Pytorch-Memory-Utils和pynvml这个库可以帮助我们了解显存消耗。原创 2023-12-30 09:45:00 · 429 阅读 · 0 评论 -
YOLOv5网络结构,训练策略详解
前面已经讲过了Yolov5模型目标检测和分类模型训练流程,这一篇讲解一下yolov5模型结构,数据增强,以及训练策略。官方地址yolov5模型训练流程。原创 2023-12-30 09:45:00 · 1184 阅读 · 0 评论 -
yolov5模型训练流程
YOLOv5(You Only Look Once)是由 UitralyticsLLC公司发布的一种单阶段目标检测算-法,YOLOv5 相比YOLOv4 而言,在检测平均精度降低不多的基础上,具有均值权重文件更小,训练时间和推理速度更短的特点。YOLOv5 的网络结构分为输入端、BackboneNeck、Head 四个部分。输入端主要包括 Mosaic 数据增强、图片尺寸处理以及自适应锚框计算三部分。Mosaic数据增强将四张图片进行组合,达到丰富图片背景的效果;原创 2023-12-30 01:00:00 · 1195 阅读 · 0 评论 -
YOLOv5模型环境搭建及使用google colab训练
colab是google提供的一个jupyter notebook工具,支持google drive、tensorflow在内的google全家桶,主要用于机器学习的开发和研究。貌似每次colab分配的gpu是不一样的,有时候是P100,有时候是T4。接下来,将准备好的口罩数据集上传到colab文件夹中,这个数据集,前面我们在YOLOv5模型训练的时候用过,可以到下面的地址下载。测试发现,cpu的环境下,图片、视频检测都没问题,但是如果使用 gpu的话,就会报错了,这可能是目前版本的 bug。原创 2023-12-25 09:08:13 · 254 阅读 · 1 评论 -
Yolov5 (v6.2) 使用自己的数据训练分类模型 基于ONNX TensorRT转换
之前文章已经讲过yolov5模型的训练,这一篇将说一下分类模型训练流程。YOLOv5官方发布了v6.2版本,v6.2版本支持分类模型训练、验证、预测和导出;v6.2版本的推出使得训练分类器模型变得超级简单!v6.2版本项目结构并无太大改变,主要是增加了classify文件夹以及predict.py train.py val.py 这三个文件;那么这三个文件也分别对应着分类模型的推理、训练和验证。原创 2023-12-24 09:15:00 · 196 阅读 · 1 评论 -
Word2Vec原理简单解析
词的向量化就是将自然语言中的词语映射成是一个实数向量,用于对自然语言建模,比如进行情感分析、语义分析等自然语言处理任务。下面介绍比较主流的两种词语向量化的方式:-它就是将「不可计算」「非结构化」的词转化为「可计算」「结构化」的向量。Word2vec 是 Word Embedding 的方法之一。他是 2013 年由谷歌的 Mikolov 提出了一套新的词嵌入方法。Word2vec 在整个 NLP 里的位置可以用下图表示:-原创 2023-12-24 08:30:00 · 38 阅读 · 0 评论 -
Transformer模型简介
Transformer 是 Google 团队在 17 年 6 月提出的 NLP 经典之作,-由 Ashish Vaswani 等人在 2017 年发表的论文中提出。Transformer 在机器翻译任务上的表现超过了 RNN,CNN,只用 encoder-decoder 和 attention 机制就能达到很好的效果,最大的优点是可以高效地并行化。原创 2023-12-23 05:45:00 · 45 阅读 · 0 评论 -
Seldon Core简介
上图的过程是一个数据科学项目所要经历的典型的过程。从数据采集开始,经历数据分析,数据变形,数据验证,数据拆分,训练,模型创建,模型验证,大规模训练,模型发布,到提供服务,监控和日志。诸多的机器学习工具如Scikt-Learn,Spark, Tensorflow, MXnet, PyTorch提供给数据科学家们不同的选择,同时也给模型的部署带来了不同的挑战。原创 2023-12-23 05:00:00 · 126 阅读 · 0 评论 -
Pytorch入门,简介,开发环境搭建及pytorch-gpu源码编译
目前的深度学习框架很多,如Tensorflow、Pytorch、Keras、FastAI、CNTK等等,这些框架各有优缺点,尤其是Tensorflow和Pytorch,使用都非常广泛,那么应该如何进行选择呢?这应该是每一位即将开始学习深度学习的童鞋比较困惑的问题。下面先看看github上各种框架的一个使用统计。原创 2023-12-22 09:15:42 · 70 阅读 · 0 评论 -
Python 人脸识别系统
人脸识别不同于人脸检测。在人脸检测中,我们只检测了人脸的位置,在人脸识别任务中,我们识别了人的身份。本文重点介绍使用库 face_recognition 实现人脸识别,该库基于深度学习技术,并承诺使用单个训练图像的准确率超过 96%。识别系统用例寻找失踪者识别社交媒体上的帐户识别汽车中的驾驶员考勤系统。原创 2023-12-22 09:13:01 · 54 阅读 · 0 评论 -
python opencv 实现 图片文本倾斜校正
在这里插入图片描述](https://img-b。原创 2023-12-20 09:11:39 · 213 阅读 · 0 评论 -
OCR识别流程详解
传统的OCR基于图像处理(二值化、连通域分析、投影分析等)和统计机器学习(Adaboost、SVM),过去20年间在印刷体和扫描文档上取得了不错的效果。二值化:由于彩色图像所含信息量过于巨大,在对图像中印刷体字符进行识别处理前,需要对图像进行二值化处理,使图像只包含黑色的前景信息和白色的背景信息,提升识别处理的效率和精确度。图像降噪:由于待识别图像的品质受限于输入设备、环境、以及文档的印刷质量,在对图像中印刷体字符进行识别处理前,需要根据噪声的特征对待识别图像进行去噪处理,提升识别处理的精确度。原创 2023-12-20 09:11:00 · 321 阅读 · 0 评论