
机器学习
文章平均质量分 80
一摩尔自由
AI之路
展开
-
GradientBoosting和AdaBoost实现MNIST手写体数字识别
一、两种算法简介:Boosting 算法简介Boosting算法,我理解的就是两个思想:1)“三个臭皮匠顶个诸葛亮”,一堆弱分类器的组合就可以成为一个强分类器;2)“知错能改,善莫大焉”,不断地在错误中学习,迭代来降低犯错概率当然,要理解好Boosting的思想,首先还是从弱学习算法和强学习算法来引入:1)强学习算法:存在一个多项式时间的学习算法以识别一组概念,且识别的正确...原创 2018-08-22 20:19:44 · 3150 阅读 · 0 评论 -
支持向量机(SVM)实现MNIST手写体数字识别
一、SVM算法简述支持向量机即Support Vector Machine,简称SVM。一听这个名字,就有眩晕的感觉。支持(Support)、向量(Vector)、机器(Machine),这三个毫无关联的词,硬生生地凑在了一起。从修辞的角度,这个合成词最终落脚到”Machine”上,还以为是一种牛X的机器呢?实际上,它是一种算法,是效果最好的分类算法之一。 SVM是最大间隔分类器,它能很好地...原创 2018-08-23 14:00:08 · 26870 阅读 · 3 评论 -
随机森林算法(RandomForest)实现MNIST手写体数字识别
一、准备:第三方库 sklearn二、代码:# -*- coding: utf-8 -*-# @Time : 2018/8/21 9:35# @Author : Barry# @File : mnist.py# @Software: PyCharm Community Editionfrom sklearn.ensemble import RandomFor...原创 2018-08-21 10:07:23 · 7670 阅读 · 0 评论 -
集成学习算法总结----Boosting和Bagging
转自:http://lib.youkuaiyun.com/article/machinelearning/351351、集成学习概述1.1 集成学习概述集成学习在机器学习算法中具有较高的准去率,不足之处就是模型的训练过程可能比较复杂,效率不是很高。目前接触较多的集成学习主要有2种:基于Boosting的和基于Bagging,前者的代表算法有Adaboost、GBDT、XGBOOST、后者的代表算法...转载 2018-08-21 11:45:57 · 352 阅读 · 0 评论 -
深度学习防止过拟合的方法
过拟合即在训练误差很小,而泛化误差很大,因为模型可能过于的复杂,使其”记住”了训练样本,然而其泛化误差却很高,在传统的机器学习方法中有很大防止过拟合的方法,同样这些方法很多也适合用于深度学习中,同时深度学习中又有一些独特的防止过拟合的方法,下面对其进行简单的梳理.1. 参数范数惩罚范数正则化是一种非常普遍的方法,也是最常用的方法,假如优化: minObj(θ)=L(y,f(x))+αG...转载 2018-09-20 10:38:56 · 776 阅读 · 0 评论 -
声纹识别
探秘身份认证利器——声纹识别!声纹识别神秘面纱在这个移动互联网大行其道的年代,人们不用互相见面就可以完成很多事情,比如社交、购物、网上开店、金融交易等等,但是如何验证身份变成了人和人在不见面的情况下最难的事情。传统的解决方案就是密码或者秘钥,它需要你记住或者存起来,容易忘又容易丢,还容易被黑客利用各种手段攻击。有多少人使用“123456“这种简单密码在网络上行走,他们就是黑客们最喜欢的目标...转载 2018-09-21 10:48:12 · 2508 阅读 · 2 评论 -
用来评估模型好坏的方差和偏差的概念及区别对比
一、基本概念上的对比解释1、偏差Bias:描述的是预测值(估计值)的期望与真实值之间的差距。偏差越大,越偏离真实数据,对象是单个模型。 2、方差Variance:描述的是预测值的变化范围,离散程度,也就是离其期望值的距离。方差越大,数据的分布越分散,对象是多个模型在忽略噪声的情况下,泛化误差可分解为偏差、方差两部分。 偏差:度量学习算法的期望预测与真实结果的偏离程度,也叫拟合能力。 方...原创 2018-10-30 11:39:35 · 2616 阅读 · 0 评论 -
半监督学习概述
半监督学习(Semi-Supervised Learning,SSL)类属于机器学习(Machine Learning,ML)。一 ML有两种基本类型的学习任务:1.监督学习(Supervised Learning,SL) 根据输入-输出样本对L={(x1,y1),···,(xl,yl)}学习输入到输出的映射f:X->Y,来预测测试样例的输出值。SL包括分类(Classific...转载 2018-11-28 18:04:17 · 3119 阅读 · 0 评论 -
将tensorflow训练好的模型移植到android上
转自:https://www.jianshu.com/p/ddeb0400452f将tensorflow训练好的模型移植到android上说明本文将描述如何将一个训练好的模型植入到android设备上,并且在android设备上输入待处理数据,通过模型,获取输出数据。通过一个例子,讲述整个移植的过程。(demo的源码访问github上了https://github.com/Cryst...转载 2019-02-19 10:42:40 · 1367 阅读 · 1 评论 -
如何理解CNN中的卷积?
转:https://blog.youkuaiyun.com/cheneykl/article/details/79740810https://www.cnblogs.com/Yu-FeiFei/p/6800519.html6、计算例子:解析:图中input 7*7*3中,7*7代表图像的像素/长宽,3代表R、G、B 三个颜色通道,可以看到周边有填充0; 有两个卷积核Filter w0、Filt...转载 2019-04-04 12:33:24 · 246 阅读 · 0 评论 -
Resnet实现CIFAR-10分类
复现何凯明Resnet论文正确率0.9+结果,但是正确率还是没有达到0.9以上,因为 101-layers 和 152-layers 的残差块结构和 34-layers 是有一些区别的。import tensorflow as tfimport osimport numpy as npimport pickle# 文件存放目录CIFAR_DIR = "./cifar-10-ba...原创 2019-08-08 11:27:14 · 4346 阅读 · 2 评论 -
通过Keras + LSTM训练天气污染程度预测模型
0 前言在上文中进行ARIMA时序预测后,了解到强大的LSTM在处理时序预测有更为优秀的表现,因此对LSTM进行了学习。LSTM是一种时间递归神经网络,它出现的原因是为了解决RNN的一个致命的缺陷。原生的RNN会遇到一个很大的问题,叫做The vanishing gradient problem for RNNs,也就是后面时间的节点会出现老年痴呆症,也就是忘事儿,这使得RNN在很长一段时间...原创 2019-08-08 21:38:49 · 15119 阅读 · 8 评论 -
迁移学习:keras + vgg16 实现图像识别
迁移学习:将一个领域的已经成熟的知识应用到其他的场景中,例如图像识别中最常见的例子,训练一个神经网络。来识别不同的品种的猫,你若是从头开始训练,你需要百万级的带标注数据,海量的显卡资源。而若是使用迁移学习,你可以使用Google发布的Inception或VGG16这样成熟的物品分类的网络,只训练最后的softmax层,你只需要几千张图片,使用普通的CPU就能完成,而且模型的准确性不差。案例一...原创 2019-08-07 15:24:49 · 4329 阅读 · 1 评论 -
Keras神经网络层学习
Keras有两种类型的模型,序贯模型(Sequential)和函数式模型(Model),函数式模型应用更为广泛,序贯模型是函数式模型的一种特殊情况。 a)序贯模型(Sequential):单输入单输出,一条路通到底,层与层之间只有相邻关系,没有跨层连接。这种模型编译速度快,操作也比较简单 b)函数式模型(Model):多输入多输出,层与层之间任意连接。这种模型编译速度慢。Ke...原创 2019-08-21 12:36:18 · 826 阅读 · 0 评论 -
scikit-learn Adaboost类库使用小结
转自:https://www.cnblogs.com/pinard/p/6136914.html 在集成学习之Adaboost算法原理小结中,我们对Adaboost的算法原理做了一个总结。这里我们就从实用的角度对scikit-learn中Adaboost类库的使用做一个小结,重点对调参的注意事项做一个总结。1. Adaboost类库概述 scikit-learn中Adaboost...转载 2018-08-22 10:14:17 · 290 阅读 · 0 评论 -
简述随机森林(RF)和梯度提升决策树(GBDT)的区别
决策树 决策树是机器学习中常用到的一种分类与回归方法,由节点和有向边组成,目的是通过每次分类将整个特征空间进行划分,这样就可以得到不同的分类样本。 决策树算法中涉及到了特征的选择,决策树的生成和剪枝。不同的决策树学习算法生成过程是相同的。决策树的剪枝就是为了防止过拟合。 例如ID3算法是在各个节点上选择信息增益最大的特征进行分裂并构建决策树,当然这样的问...原创 2018-08-22 10:11:24 · 14950 阅读 · 0 评论 -
win10+conda+pytorch-gpu安装
pytorch 官网上只有linux和Mac的程序包,没有windows系统的,但是windows系统还是可以用pytorch的。 github: https://github.com/peterjc123/pytorch-scripts首先要安装anaconda:推荐清华镜像 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ ...原创 2018-07-17 12:44:39 · 9893 阅读 · 0 评论 -
CIFAR-10整体解析与评价
1. 综述Cifar-10 是由 Hinton 的两个大弟子 Alex Krizhevsky、Ilya Sutskever 收集的一个用于普适物体识别的数据集。Cifar 是加拿大政府牵头投资的一个先进科学项目研究所。Hinton、Bengio和他的学生在2004年拿到了 Cifar 投资的少量资金,建立了神经计算和自适应感知项目。这个项目结集了不少计算机科学家、生物学家、电气工程师、神经原创 2018-01-25 09:49:47 · 6002 阅读 · 0 评论 -
用Python3.x解析CIFAR-10数据集图片
在学习tensorflow的mnist和cifar实例的时候,官方文档给出的讲解都是一张张图片,直观清晰,当我们看到程序下载下来的数据的时候,宝宝都惊呆了,都是二进制文件,这些二进制文件还不小,用文本编辑器打开看也看不懂,要是将数据再现为图像,(1)CIFAR-10数据集介绍① CIFAR-10数据集包含60000个32*32的彩色图像,共有10类。有50000个训练图像和1000原创 2018-01-25 10:12:07 · 1912 阅读 · 0 评论 -
卷积神经网络CNNs详解参考----MNIST
mnist实例--卷积神经网络(CNN)使用TensorFlow编写识别数字的CNN训练程序详解深度学习之卷积神经网络CNN及tensorflow代码实现示例CNN笔记:通俗理解卷积神经网络原创 2018-01-25 11:23:03 · 1715 阅读 · 0 评论 -
用Python3.x解析CIFAR-10数据集图片
用Python3.x解析CIFAR-10数据集图片在学习tensorflow的mnist和cifar实例的时候,官方文档给出的讲解都是一张张图片,直观清晰,当我们看到程序下载下来的数据的时候,都是二进制文件,这些二进制文件还不小,用文本编辑器打开看也看不懂,要是将数据再现为图像(1)CIFAR-10数据集介绍① CIFAR-10数据集包含60000个32*32的彩色图像,共原创 2018-01-25 18:12:12 · 831 阅读 · 0 评论 -
CIFAR-10模型训练python版cifar10数据集
在之前的博客中已经对CIFAR-10做了整体的解析,但是目前从tensorflow/models/tree/master/tutorials/image/cifar10中下载下来,运行cifar10_train.py后训练的是binary(适用于C语言)版的数据集。那么想训练CIFAR-10 python version数据集该怎么修改代码呢?其实主要需要修改的部分是cifar10_inp原创 2018-01-26 18:17:45 · 9503 阅读 · 6 评论 -
Tensorflow Object Detection API
今天跑通了Tensorflow官方例子Object Detection,遇到几个问题,这里把最简单的跑通方法写下来,供大家参考!一、前期准备:1、默认已经安装好了python+tensorflow+基本的第三方库2、pycharm环境3、下载Object Detection API:链接:链接:https://pan.baidu.com/s/1ghnLbLD 密码:85pw,把ob原创 2018-01-28 10:35:35 · 876 阅读 · 1 评论 -
Cifar10代码详解
cifar10_input.py"""Routine for decoding the CIFAR-10 binary file format."""from __future__ import absolute_importfrom __future__ import divisionfrom __future__ import print_functionimport os原创 2018-02-04 14:20:06 · 5227 阅读 · 1 评论 -
capsule模型 ResourceExhaustedError解决方法
很多人一开始跑capsule模型 会遇到下面这种情况:ResourceExhaustedError (see above for traceback): OOM when allocating tensor with shape[128,512,8,160]解决办法:1.首先得排除整个显卡上是不是有别的模型在跑?2.如果没有,检查自己的模型逻辑有没有错误?(很多时候,即使没错也会崩……)3.接下来...原创 2018-03-30 12:24:06 · 691 阅读 · 0 评论 -
胶囊网络架构
介绍本文将介绍CapsNet的体系结构,我同时尝试计算CapsNet的可训练参数数目。结果是大约820万可训练参数,与论文中的数字(113万6千)不同。论文本身不是很详细,没有涉及一些网络实现的具体设定,因此有一些问题我至今没有搞清楚(论文作者没有提供代码)。不管怎么说,我仍然认为计算网络的参数本身是一个很好的学习过程,因为它帮助人们理解特定架构的所有构建模块。CapsNet由两部分组成:编码器和...转载 2018-03-30 21:26:27 · 7239 阅读 · 1 评论 -
卷积神经网络训练技巧
翻译自文章:http://lamda.nju.edu.cn/weixs/project/CNNTricks/CNNTricks.html1.增加数据除了常用的水平镜像翻折、随机修剪、颜色调整,可以尝试将几种不同的处理方式组合起来,比如,同时旋转和随机放缩。还可以改变HSV色彩模型中的饱和度(S)和纯度(V),数值范围可以是0.25次幂到4次幂,然后乘以0.7到1.4范围内的一个系数,然后再加上-0...转载 2018-04-23 17:11:56 · 1011 阅读 · 0 评论 -
softmax_cross_entropy_with_logits函数详解
softmax_cross_entropy_with_logits函数原型:tf.nn.softmax_cross_entropy_with_logits(labels=y, logits=pred, name=None)函数功能:计算最后一层是softmax层的cross entropy,把softmax计算与cross entropy计算放到一起了,用一个函数来实现,用来提高程序的运行速度。参...转载 2018-04-26 21:50:21 · 1911 阅读 · 0 评论 -
tensorflow之batch_normalization()
在说BN算法之前我还是想先说一下,在图片以及一维信号中,BN相对与其他NORMALIZATION能大大提高准确率和训练速度。下面具体聊一聊BN.一、背景意义本篇博文主要讲解2015年深度学习领域,非常值得学习的一篇文献:《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate S...原创 2018-05-21 10:59:36 · 849 阅读 · 0 评论 -
Tensorflow中训练得到Nan错误的分析
Usually NaN is a sign of model instability, for example, exploding gradients. It may be unnoticed, loss would just stop shrinking. Trying to log weights summary makes the problem explicit.原创 2018-01-30 20:09:08 · 2646 阅读 · 0 评论