
机器学习
邦戈栗子
这个作者很懒,什么都没留下…
展开
-
深度学习中常用的损失函数
1 什么是损失函数在机器学习中,损失函数(loss function)是用来估量模型的预测值f(x)与真实值Y的不一致程度,损失函数越小,一般就代表模型的鲁棒性越好,正是损失函数指导了模型的学习。机器学习的任务本质上是两大类,分类问题与回归问题,再加上综合了判别模型和生成模型后在各类图像任务中大展拳脚的生成对抗网络,这一次我们就重点讲述这些内容。2 分类任务损失2.1、0-1 loss0-1 loss是最原始的loss,它直接比较输出值与输入值是否相等,对于样本i,它的...转载 2020-07-17 10:52:36 · 1883 阅读 · 0 评论 -
深度学习: Zero-shot Learning / One-shot Learning / Few-shot Learning
Introduction在 迁移学习 中,由于传统深度学习的 学习能力弱,往往需要 海量数据 和 反复训练 才能修得 泛化神功 。为了 “多快好省” 地通往炼丹之路,炼丹师们开始研究 Zero-shot Learning / One-shot Learning / Few-shot Learning。爱上一匹野马 (泛化能力),可我的家里没有草原 (海量数据) 。Learning类型分...转载 2019-11-20 14:20:25 · 576 阅读 · 0 评论 -
caffe训练时,loss出现87.3365则保持不变
caffe训练时,loss出现很奇怪的值:87.3365,则保持不变下去。搜索资料,找到多篇帖子:https://blog.youkuaiyun.com/u011215144/article/details/78479330https://blog.youkuaiyun.com/cheese_pop/article/details/79582077https://blog.youkuaiyun.com/ying866...转载 2019-11-19 15:07:33 · 179 阅读 · 0 评论 -
conda安装软件修改安装源及多个版本的软件
以安装pytorch 为例,本人使用Windows+anaconda3进行安装,此前电脑中已经安装了pytorch0.4版本。在安装中遇到了几个问题:1.如何在一个anaconda中安装多个版本的pytorch?如何安装使它们相互不影响呢?我们可以用Anaconda创建不同的conda环境,每个环境安装一个pytorch。下面以安装pytorch1.0为例介绍创建个性化conda环境的...原创 2019-04-11 13:14:16 · 1613 阅读 · 0 评论 -
《百面机器学习》模型评估
没有测量,就没有科学。 -----门捷列夫模型评估主要分为离线评估和在线评估两个阶段。在模型评估过程中, 分类问题、 排序问题、 回归问题往往需要使用不同的指标进行评估。 在诸多的评估指标中, 大部分指标只能片面地反映模型的一部分性能。 如果不能合理地运用评估指标, 不仅不能发现模型本身的问题, 而且会得出...原创 2019-04-07 00:21:32 · 233 阅读 · 0 评论 -
《百面机器学习》特征工程
每一件小事,因为对研究有了热爱,都可以成为工作的一部分,成为开启机器学习大门的钥匙。将算法研究应用到工作中, 与纯粹的学术研究有着一点最大的不同, 即需要从用户的角度思考问题。 很多时候, 你需要明确设计的产品特征、 提升的数据指标, 是不是能真正迎合用户的需求, 这便要求算法工程师能在多个模型间选择出最合适的那个, 然后通过快速迭代达到一个可以走向产品化的结果。 这种创新精神与尝试精神便...原创 2019-04-03 22:45:52 · 224 阅读 · 0 评论 -
机器学习知识点笔记(一)
目录什么是机器学习?如何寻找这个函数?机器学习三板斧学习路线奥卡姆剃刀(Occam's razor)原理bias偏差、variance方差监督学习L1范数和L2范数的区别和作用?为什么L1范数会使权值稀疏?为什么要稀疏?参数稀疏有什么好处呢?为什么L2范数可以防止过拟合?什么是模型过拟合,列举模型过拟合的原因及解决办法?对特征进行挑选的方法有哪些...原创 2019-02-13 23:05:03 · 2943 阅读 · 0 评论 -
pytorch学习笔记(一)简介
pytorch简介pytorch的由来Torch是什么?Torch是一个与Numpy类似的张量(Tensor)操作库,与Numpy不同的是Torch对GPU支持的很好,Lua是Torch的上层包装。PyTorch和Torch使用包含所有相同性能的C库:TH, THC, THNN, THCUNN,并且它们将继续共享这些库。其实PyTorch和Torch都使用的是相同的底层,只是使用...原创 2019-04-11 14:34:49 · 396 阅读 · 0 评论 -
pytorch学习笔记(二)快速入门之张量Tensors
pytorch官方网站张量(Tensors)Tnesors与Numpy中的ndarrays类似,但pytorch中Tensors可以使用GPU进行计算。from __future__ import print_functionimport torchfrom __future__ import print_function 用法这是为了在老版本的Python中兼顾新特性的...原创 2019-04-11 15:37:42 · 360 阅读 · 0 评论 -
pytorch学习笔记(三)快速入门之Autograd自动求导机制
Autograd: 自动求导机制autograd和Function的官方文档https://pytorch.org/docs/autogradPyTorch 中所有神经网络的核心是autograd包。autograd包为张量上的所有操作提供了自动求导。它是一个在运行时定义的框架,这意味着反向传播是根据代码来确定如何运行,并且每次迭代可以是不同的。示例张量(Tenso...原创 2019-04-12 10:30:26 · 471 阅读 · 0 评论 -
caffe 编译配置注意事项
GPU版本的caffe,CommonSettings.props配置修改,主要注意事项1.查询系统使用的cuda版本Cmd—nvcc –V2.修改系统默认的cuda版本环境变量:3.关于compute_52,sm_52;compute_60,sm_60;《UDA:nvcc编译参数示例》https://blog.youkuaiyun.com/fb_help...原创 2019-05-21 19:57:50 · 247 阅读 · 0 评论 -
ubuntu anaconda 安装caffe及pycharm 使用pycharm注意事项
1.安装主要步骤参考下面链接:https://www.linuxidc.com/Linux/2017-11/148629.htmhttps://blog.youkuaiyun.com/sinat_23853639/article/details/80990967https://blog.youkuaiyun.com/CAU_Ayao/article/details/80578600注意事项:-------...原创 2019-05-27 15:07:25 · 1710 阅读 · 0 评论 -
caffe:生成LMDB数据并训练
1.将下面的语句保存到txt中,并将txt 重命名为.bat,生成文件路径下 所有jpg 图片的路径(同理.bmp,.png)dir /b/s/p/w *.jpg > num.txt2.将带有训练标签的描述文件按比例划分为train/test,(以下示例为4:1)import osimport random#import shutiltotal_path='D:/D...原创 2019-05-29 12:13:45 · 470 阅读 · 0 评论 -
caffe:Caffe的solver参数介绍
1. Parameterssolver.prototxt文件是用来告诉caffe如何训练网络的。solver.prototxt的各个参数的解释如下:base_lr 这个参数是用来表示网络的初始学习率的。这个值是一个浮点型实数。 lr_policy 这个参数是用来表示学习率随着时间是如何变化的。值是字符串,需要加""。学习率变化的可选参数有: “step”——需要设置stepsize...转载 2019-09-17 11:33:44 · 190 阅读 · 0 评论 -
《Gluon 动手学深度学习 六》Softmax实现
线性回归适用于输出为连续值的情景,对于输出离散值的分类问题,需要使用分类模型,例如softmax,与线性回归不同的是softmax输出单元从一个变为多个。和线性回归相同的是,softmax也是一个单层神经网络。和线性回归不同的是,softmax输出层的个数等于类别个数。softmax 每个输出的计算都要依赖于上一层的每个元素,所以softmax输出层是一个全连接层。举例:图片分类问题...转载 2018-07-20 10:31:52 · 437 阅读 · 0 评论 -
机器学习:线性回归(Linear Regression)
原理:线性回归,是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为:用途:线性回归的用途主要分为以下两种。1、给定一个变量y和一些变量X1,…,Xn,这些变量有可能与y相关,线性回归分析可以用来量化y与Xj之间相关性的强度,评估出与y不相关的Xi,并识别出哪些Xi的子集包含了关于y的冗余信息。2、如果目标是预测或者映...原创 2019-02-15 08:19:36 · 420 阅读 · 0 评论 -
ROC和AUC介绍以及如何计算AUC
ROC(Receiver Operating Characteristic)曲线和AUC常被用来评价一个二值分类器(binary classifier)的优劣。这篇博文简单介绍ROC和AUC的特点,以及更为深入地,讨论如何作出ROC曲线图以及计算AUC。ROC曲线需要提前说明的是,我们这里只讨论二值分类器。对于分类器,或者说分类算法,评价指标主要有precision,recall,F-sc...转载 2018-11-21 11:19:53 · 918 阅读 · 0 评论 -
《Gluon 动手学深度学习》显示图像数据集Fashion-MNIST
%matplotlib inlineimport syssys.path.append('..')import gluonbook as gbfrom mxnet.gluon import data as gdataimport timemnist_train=gdata.vision.FashionMNIST(train = True)mnist_test=gdata.visi...原创 2018-11-05 09:05:19 · 918 阅读 · 0 评论 -
《Gluon 动手学深度学习问题:ModuleNotFoundError: No module named 'gluonbook' 》
# 如果没有安装 pandas,请反注释下面一行。# !pip install pandas%matplotlib inlineimport gluonbook as gbfrom mxnet import autograd, gluon, init, ndfrom mxnet.gluon import data as gdata, loss as gloss, nnimpor...原创 2018-10-31 11:01:50 · 2251 阅读 · 0 评论 -
caffe:contact及slice层用法说明实现多数据、多标签、多任务
contact解析Concat层的作用就是将两个及以上的特征图按照在channel或num维度上进行拼接,并没有eltwise层的运算操作,举例,如果说在channel维度上进行拼接的话,首先除了channel维度可以不一样,其余维度必须一致(也就是num、H、W一致),以Caffe为例,介绍一下这两种拼接的方式,如下:caffe中数据通常为4个维度,即 num×channels×heig...原创 2018-10-11 17:17:23 · 4974 阅读 · 1 评论 -
《Gluon 动手学深度学习 五》线性回归Gluon实现
from mxnet import autograd,nd#生成数据集num_inputs=2num_examples=1000true_w=[2,-3.4]true_b=4.2features=nd.random.normal(scale=1,shape=(num_examples,num_inputs))labels=true_w[0]*features[:,0]+true_w[...转载 2018-06-18 16:43:50 · 381 阅读 · 0 评论 -
《Gluon 动手学深度学习 四》线性回归
线性回归的基本要素:模型(学习模型参数 权重weight,偏差bias)训练数据损失函数(需要对比模型的输出和真实值之间的误差。损失函数可以衡量输出结果对比真实数据的好坏。)优化算法(需要算法来通盘考虑模型本身和损失函数,对参数进行搜索,从而逐渐最小化损失。最常见的神经网络优化使用梯度下降法作为优化算法。简单地说,轻微地改动参数,观察训练集的损失将如何移动。然后将参数向减小损失的方向调整。)线性回...原创 2018-06-17 21:05:26 · 394 阅读 · 0 评论 -
《Gluon 动手学深度学习 三》MXNet autograd 自动求导
• MXNet 提供 autograd 包来⾃动化求导过程。• MXNet 的 autograd 包可以对正常的命令式程序进⾏求导。from mxnet import autograd,nd#创建变量,并复制x = nd.arange(4).reshape((4,1))#先使用attach_grad()为变量梯度申请内存x.attach_grad()#定义有关变量x的函数。默认条件...原创 2018-06-17 18:31:29 · 3219 阅读 · 1 评论 -
《Gluon 动手学深度学习 二》NDArray和NumPy
"在深度学习中,通常会频繁地对数据进行操作。在MXNet中,NDArray是存储和变换数据的主要工具。NDArray和NumPy的多维数组非常类似。然而,NDArray提供更多的功能,例如CPU和GPU的异步计算,以及自动求导。这些都使得NDArray更加适合深度学习。"1.创建NDArrayfrom mxnet import ndx = nd.arange(12)x结果:x = x.resh...原创 2018-06-13 13:59:29 · 636 阅读 · 0 评论 -
人脸姿态检测:RPY角与Z-Y-X欧拉角
描述坐标系{B}相对于参考坐标系{A}的姿态有两种方式。第一种是绕固定(参考)坐标轴旋转:假设开始两个坐标系重合,先将{B}绕{A}的X轴旋转γγ,然后绕{A}的Y轴旋转ββ,最后绕{A}的Z轴旋转αα,就能旋转到当前姿态。可以称其为X-Y-Z fixed angles或RPY角(Roll, Pitch, Yaw)。 Roll:横滚 Pitch: 俯仰Yaw: 偏航(航向)...转载 2018-11-21 14:37:12 · 6177 阅读 · 0 评论 -
目标定位和检测系列:交并比(IOU)和非极大值抑制(NMS)的python与C/C++实现
Python实现交并比(Intersection over Union)和非极大值抑制是(Non-Maximum Suppression)是目标检测任务中非常重要的两个概念。例如在用训练好的模型进行测试时,网络会预测出一系列的候选框。这时候我们会用NMS来移除一些多余的候选框。即移除一些IOU值大于某个阈值的框。然后在剩下的候选框中,分别计算与ground truth的IOU值,通常会规定当候...转载 2018-11-20 14:00:42 · 2865 阅读 · 1 评论 -
cs231n:Python Numpy教程(一) python 笔记
教程链接:http://cs231n.github.io/python-numpy-tutorial/目录python基本数据类型容器列表字典集合元组函数类python基本数据类型和大多数编程语言一样,Python拥有一系列的基本数据类型,比如整型、浮点型、布尔型和字符串等。这些类型的使用方式和在其他语言中的使用方式是类似的。数字:整型和浮点...原创 2019-01-21 14:53:10 · 375 阅读 · 0 评论 -
多目标跟踪算法评价指标
标准CLEAR-MOT测量,包括Multi-Object Tracking Accuracy(MOTA) Multi-ObjectTracking Precision (MOTP)这两个评价标准。此外,额外引入了若干指标来进行评价:↑:表示得分越高越好,反之亦然。Recall(↑):正确匹配的检测目标数/ground truth给出的目标数Precision(↑):正确匹配...转载 2019-01-10 11:46:53 · 1983 阅读 · 0 评论 -
度量学习Metric Learning
度量学习 (Metric Learning) == 距离度量学习 (Distance Metric Learning,DML) == 相似度学习 度量学习 是指 距离度量学习,Distance Metric Learning,简称为 DML,是人脸识别中常用传统机器学习方法,由Eric Xing在NIPS 2002提出。度量学习(Metric Learning)也就是常说的相似度学习。如果...原创 2019-01-14 16:13:32 · 3251 阅读 · 1 评论 -
头部姿态估计:《Fine-Grained Head Pose Estimation Without Keypoints》
《Fine-Grained Head Pose Estimation Without Keypoints》2018,Nataniel Ruiz Eunji Chong James M. Rehg. multi-loss论文地址:https://arxiv.org/abs/1710.00925v2代码链接:https://github.com/natanielruiz/deep-head-p...转载 2018-12-06 11:25:17 · 5502 阅读 · 4 评论 -
卷积神经网络:常见的激活函数
注意非线性函数部分(也称为激活函数),是神经网络中很重要的一个部分,但是即使我们把非线性函数部分去掉,直接相乘也可以得到类别得分,但是这样就少了一些扰动(wiggle),影响泛化性能等。 Rectified Linear Unit(ReLU) - 用于隐层神经元输出Sigmoid - 用于隐层神经元输出Softmax - 用于多分类神经网络输出Linear - 用于回归神经网络输出(或...转载 2018-11-30 14:48:19 · 5626 阅读 · 0 评论 -
《Gluon 动手学深度学习 一》安装和运行
更多详细资料可以查看:网址1:http://zh.gluon.ai/chapter_crashcourse/install.html下面记录安装及简单调用的过程:1.环境: Windows 7 64bit 安装Anaconda(若未安装,可以参考网址1中的步骤) (根据操作系统下载并安装 Miniconda(网址:https://conda.io/miniconda.htm...原创 2018-06-12 14:29:36 · 3619 阅读 · 2 评论