
机器学习
机器学习
Dark-Rich
Let the code into my blood
展开
-
时序数据的预测问题
过去的数据进行模型训练,使用将来的数据进行测试;当前的状态只会影响将来,而不会影响过去。原创 2019-10-24 00:49:49 · 966 阅读 · 0 评论 -
信息论(信息熵、KL散度、交叉熵以及互信息)
信息论是一门用数理统计方法来研究信息的度量、传递和变换规律的科学。它主要是研究通讯和控制系统中普遍存在着信息传递的共同规律以及研究最佳解决信息的获限、度量、变换、储存和传递等问题的基础理论。这似乎与概率论和机器学习的关注点相去甚远,但实际上两者之间有着密切的联系。因为简单地表示数据,需要将短码字分配给高概率的位串,并将长码字保留给低概率的位串。这与自然语言中的情况类似,常见的单词(如“a”...原创 2019-10-12 19:54:44 · 679 阅读 · 0 评论 -
TVM简介
TVM软件栈工作流程从已有的深度学习框架中获取一个模型并将此模型转换为计算图表示(深度学习框架的前端主要是计算图表示以及自动梯度);图中 Section 3 使用一些方法优化当前的计算图得到优化后的计算图(操作融合,可以将多个操作合并为一个kernel,以此节省存储中间结果的空间;数据布局转换,改变计算图中张量的存储方式以适应目标硬件设备并提升执行效率);图中 Section 4 针对...原创 2019-06-25 17:18:22 · 41753 阅读 · 2 评论 -
GAN综述
GANGAN的优化是一个极小极大博弈问题;minGmaxDV(D,G)=Ex∼pdata(x)[logD(x)]+Ez∼pz(z)[log(1−D(G(z)))]\mathop{min}\limits_{G}\mathop{max}\limits_{D}V(D, G) = E_{x\sim p_{data}(x)}[\log{D(x)}] + E_{z\sim p_{z}(z)}[\lo...原创 2019-06-18 17:52:07 · 2177 阅读 · 0 评论 -
LR+GBDT的工作原理
简介因为梯度提升树训练过于复杂,而逻辑回归过于简单,只能发现线性简单,而对于交互项和非线性关系没有辨识度。于是用梯度提升树训练模型,基于树模型,就有了交叉和非线性,然后把叶子节点放到逻辑回归模型里,解决了逻辑回归算法的缺点。简单来说,就是将梯度提升树的输出作为逻辑回归的输入,最终得到逻辑回归模型。如梯度提升树中有三棵树,T1T_1T1、T2T_2T2和T3T_3T3,每棵树的叶子节点...原创 2019-06-18 17:42:08 · 1519 阅读 · 0 评论 -
k-means
简介K-均值算法的基本思想是首先从含有N个数据对象的数据集中随机选择K个数据对象作为初始中心,然后计算每个数据对象到各中心的距离,根据最近邻原则,所有数据对象将会被划分到离它最近的那个中心所代表的簇中,接着分别计算新生成的各个簇中数据对象的均值作为各簇新的中心,比较新的中心和上一次得到的中心,如果新的中心没有发生变化,则算法收敛,输出结果,如果新的中心和上一次的中心相比发生变化,则要根据新的中心...原创 2019-06-18 17:13:32 · 357 阅读 · 0 评论 -
利用C++调用PyTorch的模型
背景PyTorch的主要接口是Python语言。虽然Python是许多需要动态和易于迭代的场景的首选语言,但同样有很多情况下,Python的这些属性恰好是不利的。在生产环境中,需要保证低延迟和其它严格的要求,而对于生产场景,C ++通常是首选语言,通常C++会被绑定到Java或Go当中;第一种方法是在PyTorch中直接使用C++编写PyTorch的前端,而不是通常情况下使用Python来编...原创 2019-01-19 18:20:04 · 14337 阅读 · 11 评论 -
基于PyTorch的GAN
from __future__ import print_functionimport osimport torchimport torchvisionimport torch.nn as nnfrom torchvision import transformsfrom torchvision.utils import save_image# Device configurati...原创 2019-01-15 15:10:19 · 800 阅读 · 1 评论 -
基于PyTorch的风格迁移
from __future__ import print_functionfrom __future__ import divisionfrom torchvision import modelsfrom torchvision import transformsfrom PIL import Imageimport argparseimport torchimport torch...原创 2019-01-14 14:24:26 · 493 阅读 · 0 评论 -
基于PyTorch的卷积神经网络
from __future__ import print_functionimport torch import torch.nn as nnimport torchvisionimport torchvision.transforms as transforms# Device configurationdevice = torch.device('cuda:0' if torc...原创 2019-01-10 16:04:48 · 783 阅读 · 0 评论 -
基于PyTorch的线性回归算法
基于PyTorch使用Jupyter Notebook环境实现线性回归算法;使用均方差作为损失函数;使用随机批梯度下降作为参数优化算法;动画显示模型拟合数据的过程;序列化模型参数;from __future__ import print_functionimport torchimport torch.nn as nnimport numpy as npimport matp...原创 2019-01-08 10:44:34 · 557 阅读 · 0 评论 -
基于邻域的推荐算法
User-Based用户相似度:wuv=∣N(u)∩N(v)∣∣N(u)∪N(v)∣w_{uv} = \frac{|N(u) \cap N(v)|}{|N(u) \cup N(v)|}wuv=∣N(u)∪N(v)∣∣N(u)∩N(v)∣wuv=∣N(u)∩N(v)∣∣N(u)∣∣N(v)∣w_{uv} = \frac{|N(u) \cap N(v)|}{\sqrt{|N(u)| |N(...原创 2019-03-20 11:45:01 · 755 阅读 · 0 评论 -
深度学习优化算法
Mini-batch梯度下降法批梯度下降时,每一次迭代代价函数都会降低(如果某一次不是,说明出问题了,可能要改变学习率),而mini-batch梯度下降时,不一定每次都降低,但是总的趋势是下降的;Mini-batch的大小设为m(总样本数)时,变成了batch梯度下降(训练慢当样本总数大时),当设为1,变成了随机梯度下降(这时没能很好利用多样本的向量化的优势,也会导致变慢)。所示实际中选择不...原创 2018-12-28 14:24:35 · 345 阅读 · 0 评论 -
深度学习训练技巧
参数初始化Zero initializationRandom initializationHe initializationTry “He Initialization”; this is named for the first author of He et al., 2015. (If you have heard of “Xavier initialization”, this i...原创 2018-12-28 14:22:06 · 582 阅读 · 0 评论 -
卷积神经网络中特征图大小的计算
输入图片大小 W×WFilter大小 F×F步长 Spadding的像素数 P输出特征图大小 N = (W − F + 2P ) / S + 1原创 2018-11-26 14:32:35 · 3666 阅读 · 0 评论 -
【笔记】Discovering and Exploiting Deterministic Label Relationships in Multi-Label Learning
从多标签数据中学习知识,已成为近些年机器学习和数据挖掘方向的关注点。由于多标签数据的实际运用越来越多,关于这方面的研究也遇到一些挑战,例如运用标签的依赖性进行学习。正是如此,关注这些确定性的关系的自动学习,并且利用这些知识提高多标签学习算法的准确性,已成为热点问题。运用多标签数据中确定性的关系不是新东西,过去的方法在实际运用上不是很成功,而且缺少理论基础。 作者在本文提出利用多标签模型的边缘概率来原创 2016-04-15 15:18:03 · 567 阅读 · 1 评论 -
【笔记】A Review on Multi-Label Learning Algorithms
本文可分为五个部分,INTRODUCTION中包括对Multi-label问题的非正式定义,应用范围介绍,近年国际会议和期刊中该领域论文录用和发表的情况,最后介绍了本文的结构。THE PARADIGM中包括对对Multi-Label learning问题的正式定义和常用的评价指标。LEARNING ALGORITHMS中介绍了用于Multi-Label Learning问题的主要算法,并且常用算法分原创 2016-04-16 19:56:41 · 2442 阅读 · 0 评论 -
【笔记】A Generic Multilabel Learning-Based Classification Algorithm Recommendation Method
A Generic Multilabel Learning-Based Classification Algorithm Recommendation Method原创 2016-09-06 16:18:15 · 661 阅读 · 0 评论 -
kNN算法
kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。原创 2016-10-09 11:32:35 · 612 阅读 · 1 评论 -
人工神经网络本质理解
神经网络学习如何利用矩阵的线性变换加激活函数的非线性变换,将原始输入空间投向线性可分、稀疏的空间去分类、回归。原创 2016-11-23 20:53:47 · 2622 阅读 · 0 评论 -
多标签学习求解策略及方法
多标签学习求解策略及方法原创 2016-11-25 15:12:17 · 2234 阅读 · 0 评论 -
什么是元、元数据、元分类器?
元(meta),一般被翻译成“关于……的……”Meta-Classifier关于分类器的分类器,通常是主分类器的代理,用于提供附加的数据预处理。(如Bagging,Stacking,Vote等) A classifier, which is usually a proxy to the main classifier, used to provide additional data prepro原创 2016-11-26 00:07:05 · 3179 阅读 · 1 评论 -
强化学习介绍(RL)
机器学习有三大分支,监督学习、无监督学习和强化学习,强化学习是系统从环境学习以使得奖励最大的机器学习。人工智能中称之为强化学习,在控制论中被称之为动态规划,两者在概念上是等价的。也被翻译为增强学习。原创 2017-03-25 11:55:47 · 8279 阅读 · 2 评论 -
支持向量机(SVM)中相关问题的思考
SVM的基本想法就是求解能正确划分训练样本并且其几何间隔最大化的超平面原创 2017-04-14 12:16:50 · 673 阅读 · 0 评论 -
基于Tensorflow的CNN简单实现
基于Tensorflow 1.0+版本实现,利用mnist数据集训练CNN,达到了99.6%的准确率。原创 2017-04-23 21:43:34 · 3223 阅读 · 1 评论 -
打印随机森林模型预测样本的决策路径
import numpy as npfrom sklearn.model_selection import train_test_splitfrom sklearn.datasets import make_classificationfrom sklearn.ensemble import RandomForestClassifierX, y = make_classificatio...原创 2019-09-06 18:17:45 · 1183 阅读 · 0 评论