聚类

保姆教程 | YOLOv5在建筑工地中安全帽佩戴检测的应用

孤街浪徒 提交于 2021-02-17 04:31:21
点击上方 “ 机器学习与生成对抗网络 ”,关注"星标" 获取有趣、好玩的前沿干货! 教程来自: https://github.com/PeterH0323/Smart_Construction 编辑:AI深度前沿视线 一、YOLO v5训练自己数据集教程 1.1 创建自己的数据集配置文件 1.2 创建每个图片对应的标签文件 1.3 文件放置规范 1.4 聚类得出先验框(可选) 1.5 选择一个你需要的模型 1.6 开始训练 1.7 看训练之后的结果 二、侦测 三、检测危险区域内是否有人 3.1 危险区域标注方式 3.2 执行侦测 3.3 效果:在危险区域里面的人体会被 红色框 选出来 四、生成 ONNX 五、增加数据集的分类 该项目是使用 YOLOv5 v2.x 来训练在智能工地安全领域中头盔目标检测的应用,先来一波演示! 指标 yolov5s 为基础训练, epoch = 50 分类 P R mAP0.5 总体 0.884 0.899 0.888 人体 0.846 0.893 0.877 头 0.889 0.883 0.871 安全帽 0.917 0.921 0.917 对应的 权重文件 :https://pan.baidu.com/share/init?surl=ELPhtW-Q4G8UqEr4YrV_5A,提取码: b981 yolov5m 为基础训练, epoch =

Spark机器学习库(MLlib)指南

淺唱寂寞╮ 提交于 2021-02-16 23:12:55
机器学习库(MLlib)指南 MLlib是Spark的机器学习(ML)库。机器学习具有可扩展性和易用性。 提供高级API ,它提供了以下工具: ML算法:常见的学习算法,如分类、回归、聚类和协同过滤 特征化:特征提取、变换、降维和选择 管道:用于构建、评估和调优ML管道的工具 持久性:保存和加载算法、模型和管道 实用程序:线性代数,统计学,数据处理等。 声明:基于DataFrame的API是主要API 基于MLlib RDD的API现在处于维护模式。 从Spark 2.0开始,在 spark.mllib 程序包已进入维护模式。Spark的主要机器学习API现在是 DataFrame -based API spark.ml 。 有什么影响 ? MLlib将支持基于RDD的API spark.mllib 以及错误修复。 MLlib不会为基于RDD的API添加新功能 。 在Spark 2.x版本中,MLlib将为基于DataFrames的API添加功能,以实现与基于RDD的API的功能奇偶校验。 在达到功能奇偶校验(粗略估计Spark 2.3)之后,将弃用基于RDD的API。 The RDD-based API is expected to be removed in Spark 3.0. 预计将在Spark 3.0中删除基于RDD的API。

不均衡样本集问题

时光怂恿深爱的人放手 提交于 2021-02-16 17:53:39
2019-08-27 11:01:52 问题描述: 对于二分类问题,如果在训练的时候正负样本集合非常的不均衡,比如出现了1 :1000甚至更大的比例悬殊,那么如何处理数据以更好的训练模型。 问题求解: 为什么很多的分类模型在训练数据的时候会出现数据不均衡的问题呢?本质原因是模型在训练时优化的目标函数和人们在测试的时候的评价标准不一致。这种不对齐可能是由于训练数据的样本分布与测试时的样本分布一致,比如在训练的时候正负样本严重不均衡,但是在测试的时候,正负的比例几乎是1 :1。也可能是由于训练阶段不同类别的权重与测试的时候不一致,例如在训练的时候认为所有样本的贡献是一致的,但是在测试的时候某些样本的正确率要求要高很多。 根据上述的问题,一般可以从两个角度来处理样本不均衡的问题。 基于数据的方法 基于数据的方法核心就是将原本不均衡的训练集合通过采样的方式使之变的均衡。具体来说有两种方案,一是过采样,二是欠采样。 过采样 :过采样本质就是扩充少样本,使之数量变多。过采样的算法可以理解为是启发式的,也就是说言之有理即可,没有一条绝对正确的算法能够保证过采样算法的效果。 1)最简单的方案就是直接从少样本的训练集中有放回的选取样本,本质是对少样本数据集进行了复制。缺点是没有增加训练数据集的信息量,容易过拟合。 2)SMOTE算法,对少数类样本集中每个样本x

机器学习之样本不均衡

余生长醉 提交于 2021-02-16 17:46:28
以下内容是个人通过查阅网上相关资料总结出的内容 具体说明数据不均衡会带来的问题: 1) 在一个二分类问题中,训练集中 class 1的样本数比class 2的样本数是60:1。使用逻辑回归进行分类, 最后训练出的模型可能会忽略了 class 2,即模型可能会将所有的训练样本都分类为class 1。 2)在分类任务的数据集中,有三个类别,分别为A,B,C。在训练集中,A类的样本占70%,B类的样本占25%,C类的样本占5%。最后我的 分类器对类 A的样本过拟合了,而对其它两个类别的样本欠拟合。 那么该如何解决这种样本不均衡问题? 1) 过抽样 抽样是处理不平衡数据的最常用方法, 基本思想就是通过改变训练数据的分布来消除或减小数据的不平衡。 过抽样方法通过增加少数类样本来提高少数类的分类性能 , 最简单的办法是简单复制少数类样本,缺点是可能导致过拟合,没有给少数类增加任何新的信息。 改进的过抽样方法通过在少数类中加入随机高斯噪声或 产生新的合成样本 等方法。 如何解决过采样中只是简单的复制少数类样本所带来的过拟合缺点? 采用过采样的典型算法 SMOTE(它是通过对训练集里的小样本类别进行插值来产生额外的小样本类别数据) 2) 欠抽样 欠抽样方法通过减少多数类样本来提高少数类的分类性能,最 简单的方法是通过随机地去掉一些多数类样本来减小多数类的规模,缺点是会丢失多数类的一些重要信息

2018秋招面试记录

你离开我真会死。 提交于 2021-02-16 10:59:06
作业帮笔试 leetcode 53 Maximum Subarray Given an integer array nums, find the contiguous subarray (containing at least one number) which has the largest sum and return its sum. Example: Input: [-2,1,-3,4,-1,2,1,-5,4], Output: 6 Explanation: [4,-1,2,1] has the largest sum = 6. class Solution { public: int maxSubArray(vector<int>& nums) { if (nums.empty()) { return -1; } int n = nums.size(); int max_val = nums[0]; int cur_max = 0; for (int i = 0; i < n; i++) { // 这样一来每次还会比较每个值的大小, 如果数组所有值为负数的话 cur_max += nums[i]; max_val = max(max_val, cur_max); cur_max = max(cur_max, 0); // 很优秀 } return max_val; } }

思维 | 数据驱动决策的10种思维

流过昼夜 提交于 2021-02-15 02:36:01
点击蓝字 关注我们 ▼ 往期精彩回顾 ▼ 科研大牛们怎么读文献 聚类分析 数据分析师需要掌握的商业模型 导语 很多人都说会数据分析的人比别人聪明,实际上他们“聪明”在拥有分析思维,今天我们就来说说常见的数据分析思维。我总结了十种数据分析思维,也许会为你带来“灵光一闪”的感觉。 一、分类思维 日常工作中,客户分群、产品归类、市场分级……许多事情都需要有分类的思维。关键在于,分类后的事物,需要在核心关键指标上能拉开距离!也就是说,分类后的结果必须是显著的。 如图,横轴和纵轴往往是你运营当中关注的核心指标(当然不限于二维),而分类后的对象,你能看到他们的分布不是随机的,而是有显著的集群的倾向。 打个比方,经典的RFM模型依托收费的3个核心指标构建用户分群体系:最近一次消费时间(Recency)、消费频率(Frequency)、消费金额(Monetary)。 在R/M/F三个指标上,我们通过经验将实际的用户划分为以下8个区(如上图),我们需要做的就是促进不同的用户向更有价值的区域转移。也就是将每个付费用户根据消费行为数据,匹配到不同的用户价值群体中,然后根据不同付费用户群体的价值采用不同的策略(如下表) 二、矩阵思维 分类思维的发展之一是 矩阵思维 ,矩阵思维不再局限于用量化指标来进行分类。许多时候,我们没有数据做为支持,只能通过经验做主观的推断时,是可以把某些重要因素组合成矩阵

Utterance-level Aggregation for Speaker Recognition in The Wild

空扰寡人 提交于 2021-02-14 16:39:53
文章[1]主要针对的是语句长度不定,含有不相关信号的说话人识别。 深度网络设计的关键在于主干(帧级)网络的类型【the type of trunk (frame level) network】和有时间序列属性的聚合方法【the method of temporal aggregation】。 文中提出了一个强大的说话人识别深度网络,使用了一个“thin-ResNet” 网络结构,以及一个基于字典的NetVLAD[2]或者GhostVLAD层去在实践层面上聚合特征,这个可端到端训练。 文中实验在VoxCeleb1测试集上进行,证明该方法只需要更少的参数,并且SR(speaker recognition)性能优越。同时,调研了语句长度对网络性能的影响,得到结论:对于in the wild数据,a longer length is beneficial. 算法 对于SR,理想的模型应该有以下特性:1)处理任意长度的输入,得到一个定长的utterance-level descriptor;2)输出的descriptor应该是compat的,即低维表述,所需资源少,便于有效存储和恢复;3)输出descriptor应该是discriminative,例如不同说话人的descriptor之间的距离应该比同一说话人的大。 为了满足上述条件,本文采用 modified

常见机器学习算法背后的数学

三世轮回 提交于 2021-02-14 12:13:45
不同的机器学习算法是如何从数据中学习并预测未见数据的呢? 机器学习算法是这样设计的,它们从经验中学习,当它们获取越来越多的数据时,性能就会提高。每种算法都有自己学习和预测数据的方法。在本文中,我们将介绍一些机器学习算法的功能,以及在这些算法中实现的有助于学习过程的一些数学方程。 机器学习算法的类型 机器学习算法大致可以分为以下四类: 监督学习:预测的目标或输出变量是已知的。这些算法生成一个函数,该函数将输入映射到输出变量。回归和分类算法属于这一类。在回归中,输出变量是连续的,而在分类中,输出变量包含两个或更多的离散值。一些监督学习算法包括线性回归,逻辑回归,随机森林,支持向量机,决策树,朴素贝叶斯,神经网络。 无监督学习:目标或输出变量是未知的。这些算法通常对数据进行分析并生成数据簇。关联、聚类和维数约简算法属于这一类。K-means聚类、PCA(主成分分析)、Apriori算法等是非监督学习算法。 半监督学习:它是监督和非监督学习方法的结合。它使用已知数据来训练自己,然后标记未知数据。 强化学习:机器或代理被训练从“试错”过程中学习。机器从过去的决策经验中学习,并利用它的学习来预测未来决策的结果。强化学习算法的例子有Q-Learning, Temporal Difference等。 线性回归 线性回归是通过拟合数据点上的最佳直线来预测连续变量的结果

数据准备<3>:数据预处理

与世无争的帅哥 提交于 2021-02-13 16:17:37
<font size='+0.5'> 数据预处理 是指因为算法或者分析需要,对经过数据质量检查后的数据进行转换、衍生、规约等操作的过程。整个数据预处理工作主要包括 五个方面内容 :简单函数变换、标准化、衍生虚拟变量、离散化、降维。本篇文章将作展开介绍,并提供基于Python的代码实现。</font> 0. 示例数据集说明 /labcenter/python/dataset2.xlsx import pandas as pd import numpy as np # 读取数据 dataset = pd.read_excel("/labcenter/python/dataset2.xlsx") # 打印数据集 dataset Out[58]: col1 col2 col3 col4 col5 col6 col7 0 101 96 aaa 3.85 2017-04-05 17:39:08 0-10 800 1 102 13 bbb 2.78 2017-04-04 03:00:14 10-20 1000 2 103 160 aaa 4.40 2017-04-03 14:45:29 10-20 600 3 104 128 ccc 2.49 2017-04-22 11:17:12 20-30 2400 4 105 10 ccc 3.70 2017-04-22 16:42:08 30-40

顶刊综述 | mNGS的临床应用与挑战

北城以北 提交于 2021-02-13 08:48:17
如果说宏基因组学是大家关注的焦点,那么mNGS应该是宏基因组学焦点中的NO.1,尤其是在新冠疫情的大环境下。 mNGS在临床中的实际应用如何?在临床实验室中又面临着怎样的挑战?... 这些问题的答案都在今天分享的这篇综述中。2020年6月,来自美国的研究人员在《 Nature Reviews Genetics 》杂志(IF=33.133)发表了关于mNGS的综述, 回顾了mNGS在临床和公共卫生环境中的各种应用, 讨论了在临床实验室中采用mNGS所面临的挑战,并提出了克服这些挑战的步骤。同时展望了mNGS在临床领域的未来发展方向。 临床微生物学:从传统技术到mNGS 临床微生物学领域包括诊断微生物学、从临床样本中识别病原体以指导感染患者的管理和治疗策略、公共卫生微生物学以及社区监测和监测传染病暴发等。微生物的传统诊断技术包括:培养物中微生物的生长和分离,病原体特异性抗体(血清学)或抗原的检测以及微生物核酸(DNA或RNA)的分子鉴定,通常是通过PCR进行的。 尽管大多数分子分析使用特定的引物或探针仅靶向有限的病原体,但宏基因组学方法可表征样品中存在的所有DNA或RNA,从而能够分析患者样品中的整个微生物组以及人类宿主基因组或转录组。 宏基因组学方法已经应用了数十年,以表征各种生态位,从海洋环境到有毒土壤到节肢动物疾病载体再到人类微生物组。 mNGS是对患者样品中微生物和宿主遗传物质