自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 使用(VAE)生成建模,理解可变自动编码器背后的数学原理

理解可变自动编码器背后的原理​ 生成模型是机器学习中一个有趣的领域,在这个领域中,网络学习数据分布,然后生成新的内容,而不是对数据进行分类。生成建模最常用的两种方法是生成对抗网络(GAN)和可变自编码器(VAE)。在这篇文章中,我将尝试解释可变自动编码器(VAE)背后的原理,以及它是如何生成上述面的数据的。自编码器(AE)​ 我们将首先讨论自动编码器。Auto Encoder是一种自监督的神经网络,它学习如何将输入编码为更低的维数,然后再次解码和重构数据以尽可能有效地接近输入。Autoenco

2020-09-30 08:38:06 7515 1

原创 适用于稀疏向量、独热编码数据的损失函数回顾和PyTorch实现

在稀疏的、独热编码编码数据上构建自动编码器自1986年[1]问世以来,在过去的30年里,通用自动编码器神经网络已经渗透到现代机器学习的大多数主要领域的研究中。在嵌入复杂数据方面,自动编码器已经被证明是非常有效的,它提供了简单的方法来将复杂的非线性依赖编码为平凡的向量表示。但是,尽管它们的有效性已经在许多方面得到了证明,但它们在重现稀疏数据方面常常存在不足,特别是当列像一个热编码那样相互关联时。在本文中,我将简要地讨论一种热编码(OHE)数据和一般的自动编码器。然后,我将介绍使用在一个热门编码数据上受过

2020-09-29 09:29:10 5483

原创 从单词嵌入到文档距离 :WMD一种有效的文档分类方法

文档分类和文档检索已显示出广泛的应用。 文档分类的重要部分是正确生成文档表示。 马特·库斯纳(Matt J. Kusner)等人在2015年提出了Word Mover’s Distance(WMD)[1],其中将词嵌入技术用于计算两个文档之间的距离。 使用给定的预训练单词嵌入,可以通过计算“一个文档的嵌入单词需要“移动”以到达另一文档的嵌入单词所需的最小距离”来用语义含义来度量文档之间的差异。在以下各节中,我们将讨论WMD的原理,WMD的约束和近似,预取和修剪,WMD的性能。WMD原理如前所述,WM.

2020-09-28 08:38:49 5160

原创 如何管理和组织一个机器学习项目

本文主要分享一些组织管理机器学习项目的实践经验。PythonPython 是机器学习项目开发的主要使用语言之一。它包含了大量的库/包可以用于机器学习:numpy:适用于多维数组、数值计算。常用于数据处理。pandas:数据分析常用库。pandas dataframes本质上是numpy数组,它用描述性字符串作为行和列标签。数据在pandas dataframes里可以很容易进行排序、过滤、分组、连接等操作,这对数据处理很有用。PyTorch:用于构建神经网络。包括许多预训练模型和计算机视觉数据.

2020-09-27 08:56:10 5128 2

原创 在GAN中通过上下文的复制和粘贴,在没有数据集的情况下生成新内容

魔改StyleGAN模型为图片中的马添加头盔介绍GAN体系结构一直是通过AI生成内容的标准,但是它可以实际在训练数据集中提供新内容吗? 还是只是模仿训练数据并以新方式混合功能?在本文中,我将讨论“重写深度生成模型”(https://arxiv.org/abs/2007.15646)一文,该文件可直接编辑GAN模型,以提供所需的输出,即使它与现有数据集不匹配也是如此。 上图是编辑示例,您可以在其中复制头盔功能并将其粘贴到上下文中。 我相信这种可能性将打开数字行业中许多新的有趣应用程序,例如为可能不存在.

2020-09-26 09:55:27 4126

原创 机器学习中的标签泄漏介绍及其如何影响模型性能

您是否对完美或接近完美的模型表现不知所措? 你的快乐被出卖了吗?简而言之,当您要预测的信息直接或间接出现在训练数据集中时,就会发生标签泄漏或目标泄漏。 它会导致模型夸大其泛化误差,并极大地提高了模型的性能,但模型对于任何实际应用都毫无用处。数据泄漏如何发生最简单的示例是使用标签本身训练模型。 在实践中,在数据收集和准备过程中无意中引入了目标变量的间接表示。 触发结果的特征和目标变量的直接结果是在数据挖掘过程中收集的,因此在进行探索性数据分析时应手动识别它们。数据泄漏的主要指标是“太好了,不能成为现

2020-09-25 08:42:56 4784

原创 解决数独问题用人工智能还是量子计算?

作为一种有趣的棋盘游戏,数独诞生100周年之后,它是如何成为计算研究的焦点之一的呢?探索如何使用人工智能或量子计算机从头开始创建一个智能数独求解器。在深入探究之前,先来了解一下历史马克•布洛赫说:“历史被称为学科之母。”那么,让我们来谈谈著名的数独游戏是如何诞生的吧。这个故事可以追溯到19世纪末,起源于法国。法国日报《世纪报》(Le Siecle)发布了一款9x9大小的猜谜游戏,它需要算术运算而不是逻辑运算,它的数字是两位数,而不是1- 9。它的游戏性质与数独游戏(Sudoku)类似,即把横排、列和对

2020-09-24 09:08:35 4375

原创 通过实例理解如何选择正确的概率分布

概率分布​ 概率分布是描述获得事件可能值的数学函数。概率分布可以是离散的,也可以是连续的。离散分布是指数据只能取某些值,而连续分布是指数据可以取特定范围内的任何值(可能是无限的)。​ 离散概率分布有很多种。离散概率分布的使用取决于数据的属性。例如,使用:二项分布,计算在每次试验中只有两种可能结果之一的过程的概率,例如掷硬币。超几何分布,以找出在n次不替换的抽取中k次成功的概率。泊松分布,测量给定时间内发生给定事件数的概率,例如每小时图书馆借书的计数。几何分布,确定在第一次成功之前一定数量.

2020-09-23 08:31:27 4459

原创 8种交叉验证类型的深入解释和可视化介绍

交叉验证(也称为“过采样”技术)是数据科学项目的基本要素。 它是一种重采样过程,用于评估机器学习模型并访问该模型对独立测试数据集的性能。在本文中,您可以阅读以下大约8种不同的交叉验证技术,各有其优缺点:Leave p out cross-validationLeave one out cross-validationHoldout cross-validationRepeated random subsampling validationk-fold cross-validationStr.

2020-09-22 08:37:21 7158

原创 使用梯度上升欺骗神经网络,让网络进行错误的分类

在本教程中,我将将展示如何使用梯度上升来解决如何对输入进行错误分类。出如何使用梯度上升改变一个输入分类神经网络是一个黑盒。理解他们的决策需要创造力,但他们并不是那么不透明。在本教程中,我将向您展示如何使用反向传播来更改输入,使其按照想要的方式进行分类。人类的黑盒首先让我们以人类为例。如果我向你展示以下输入:很有可能你不知道这是5还是6。事实上,我相信我可以让你们相信这也可能是8。现在,如果你问一个人,他们需要做什么才能把一个东西变成5,你可能会在视觉上做这样的事情:如果我想让你把这个变

2020-09-21 08:49:21 4728 1

原创 15个应该掌握的Jupyter Notebook 使用技巧

Jupyter Notebook是一个基于浏览器的交互式编程环境(REPL, read eval print loop),它主要构建在IPython等开源库上,允许我们在浏览器上运行交互式python代码。并且有许多有趣的插件和神奇的命令,大大增强了python的编程体验。1. 计算单元的执行时间我们可以在一个jupyter notebook单元的开头使用%%time命令来计算执行该单元的时间。2. 进度条可以使用python外部库创建进度条,它可以实时更新代码运行的进度。它让用户知道正在运行的代

2020-09-20 08:47:05 11816 4

原创 Pandas处理时间序列数据的20个关键知识点

​ 时间序列数据有许多定义,它们以不同的方式表示相同的含义。一个简单的定义是时间序列数据包括附加到顺序时间点的数据点。​ 时间序列数据的来源是周期性的测量或观测。许多行业都存在时间序列数据。举几个例子:一段时间内的股票价格每天,每周,每月的销售额流程中的周期性度量一段时间内的电力或天然气消耗率​ 在这篇文章中,我将列出20个要点,帮助你全面理解如何用Pandas处理时间序列数据。1.不同形式的时间序列数据​ 时间序列数据可以是特定日期、持续时间或固定的自定义间隔的形式。​ .

2020-09-19 07:15:51 5165

原创 在PyTorch中使用Seq2Seq构建的神经机器翻译模型

在这篇文章中,我们将构建一个基于LSTM的Seq2Seq模型,使用编码器-解码器架构进行机器翻译。本篇文章内容:介绍数据准备和预处理长短期记忆(LSTM) - 背景知识编码器模型架构(Seq2Seq)编码器代码实现(Seq2Seq)解码器模型架构(Seq2Seq)解码器代码实现(Seq2Seq)Seq2Seq(编码器+解码器)接口Seq2Seq(编码器+解码器)代码实现Seq2Seq模型训练Seq2Seq模型推理1.介绍神经机器翻译(NMT)是一种机器翻译方法,它使用人工神

2020-09-18 08:34:53 6074

原创 使用卡尔曼滤波平滑时间序列,提高时序预测的准确率

在时间序列预测中,脏乱数据的存在会影响最终的预测结果。这是肯定的,尤其是在这个领域,因为时间依赖性在处理时间序列时起着至关重要的作用。噪音或异常值必须按照特别的解决方案小心处理。在这种情况下,tsmoothie包可以帮助我们节省大量时间来准备用于分析的时间序列。Tsmoothie是一个用于时间序列平滑和离群值检测的python库,它可以以向量化的方式处理多个序列。它很有用,因为它可以提供我们需要的预处理步骤,如去噪或离群值去除,保留原始数据中的时间模式。在这篇文章中,我们使用这些小工具来改进预测任务。.

2020-09-17 08:42:17 14718 2

原创 反向传播算法:定义,概念,可视化

定义向前传播​ 通常,当我们使用神经网络时,我们输入某个向量x,然后网络产生一个输出y,这个输入向量通过每一层隐含层,直到输出层。这个方向的流动叫做正向传播。​ 在训练阶段,输入最后可以计算出一个代价标量J(θ)。反向传播算法​ 然后,代价通过反向算法返回到网络中,调整权重并计算梯度。未完待续……分析​ 可能是你们在学校里做过用代数的方法来分析反向传播。对于普通函数,这很简单。但当解析法很困难时,我们通常尝试数值微分。数值微分​ 由于代数操作很困难,在数值方法中,我们通常使用计.

2020-09-16 08:44:03 6614

原创 深入SVM:支持向量机核的作用是什么

​ 您可能听说过所谓的内核技巧,这是一种支持向量机(SVMs)处理非线性数据的小技巧。这个想法是将数据映射到一个高维空间,在这个空间中数据变成线性,然后应用一个简单的线性支持向量机。听起来很复杂,但操作起来确实如此。尽管理解该算法的工作原理可能比较困难,但理解它们试图实现的目标却相当容易。往下读,自然就会明白了!当数据是线性可分的:线性支持向量机​ 支持向量机是如何工作的呢?支持向量机可用于分类和回归任务,但是在本文中,我们将主要关注前者。让我们首先考虑具有线性可分的两个类的数据。我们将创建两个独.

2020-09-15 09:08:15 5509 1

原创 使用卷积神经网络构建图像分类模型检测肺炎

在本篇文章中,我将概述如何使用卷积神经网络构建可靠的图像分类模型,以便从胸部x光图像中检测肺炎的存在。肺炎是一种常见的感染,它使肺部的气囊发炎,引起呼吸困难和发烧等症状。尽管肺炎并不难治疗,但及时诊断是至关重要的。如果没有适当的治疗,肺炎可能会致命,特别是在儿童和老年人中。胸部x光检查是诊断肺炎的一种负担得起的方法。开发一种能够可靠地根据x光图像对肺炎进行分类的模型,可以减轻需求高的地区医生的负担。数据Kermany和他在加州大学圣迭戈分校的同事们在使用深度学习的胸部x光和光学相干断层扫描的基础上,

2020-09-14 09:16:30 11530 10

原创 基于树的机器学习模型的演化

基于树的分类模型是一种监督机器学习算法,它使用一系列条件语句将训练数据划分为子集。每一次连续的分割都会给模型增加一些复杂性,这些复杂性可以用来进行预测。最终结果模型可以可视化为描述数据集的逻辑测试的路线图。决策树对于中小型数据集很流行,因为它们容易实现,甚至更容易解释。然而,他们也不是没有挑战。在本文中,我们将重点介绍基于树的分类模型的优缺点以及克服它们所取得的进展。决策树的构造下面的示例描述了只有两个特性和两个类的样例数据集(左)。决策树算法从根节点中的所有15个数据点开始。该节点被称为不纯节点,因

2020-09-13 08:48:48 5381 1

原创 可以提高你的图像识别模型准确率的7个技巧

假定,你已经收集了一个数据集,建立了一个神经网络,并训练了您的模型。但是,尽管你投入了数小时(有时是数天)的工作来创建这个模型,它还是能得到50-70%的准确率。这肯定不是你所期望的。下面是一些提高模型性能指标的策略或技巧,可以大大提升你的准确率。得到更多的数据这无疑是最简单的解决办法,深度学习模型的强大程度取决于你带来的数据。增加验证准确性的最简单方法之一是添加更多数据。如果您没有很多训练实例,这将特别有用。如果您正在处理图像识别模型,您可以考虑通过使用数据增强来增加可用数据集的多样性。这些技.

2020-09-12 08:45:11 16671 2

原创 在PyTorch中使用DistributedDataParallel进行多GPU分布式模型训练

先进的深度学习模型参数正以指数级速度增长:去年的GPT-2有大约7.5亿个参数,今年的GPT-3有1750亿个参数。虽然GPT是一个比较极端的例子但是各种SOTA模型正在推动越来越大的模型进入生产应用程序,这里的最大挑战是使用GPU卡在合理的时间内完成模型训练工作的能力。为了解决这些问题,从业者越来越多地转向分布式训练。 分布式训练是使用多个GPU和/或多个机器训练深度学习模型的技术。 分布式训练作业使您能够克服单GPU内存瓶颈,通过同时利用多个GPU来开发更大,功能更强大的模型。这篇文章是使用tor

2020-09-11 09:15:06 8627 1

原创 使用2D卷积技术进行时间序列预测

本文将展示一种新的时间序列预测方法。目标数据集在这个项目中使用的数据是来自北卡罗来纳州夏洛特分校的全球能源预测竞赛的数据。您可以在这里找到更多信息:http://www.drhongtao.com/gefcom/2017你需要知道的是,这些数据是来自能源网络的各种读数。我们的目标是利用这些数据点预测电网的实时能源需求。数据点还包括露点和干球温度,因为空调是能源消耗的主力。我们的目标变量是RTDemand(Real Time energy demand):电网的实时能源需求。数据具有清晰的日周期特征。

2020-09-10 08:38:58 14967 9

原创 LightGBM的参数详解以及如何调优

lightGBM可以用来解决大多数表格数据问题的算法。有很多很棒的功能,并且在kaggle这种该数据比赛中会经常使用。但我一直对了解哪些参数对性能的影响最大以及我应该如何调优lightGBM参数以最大限度地利用它很感兴趣。我想我应该做一些研究,了解更多关于lightGBM的参数…并分享我的旅程。我希望读完这篇文章后,你能回答以下问题:LightGBM中实现了哪些梯度增强方法,它们有什么区别?一般来说,哪些参数是重要的?哪些正则化参数需要调整?如何调整lightGBM参数在python?.

2020-09-09 09:45:57 20596

原创 使用深度学习模型创作动漫故事,比较LSTM和GPT2的文本生成方法

这个项目的动机是想看看在短短的几年时间里NLP领域的技术已经走了多远,特别是当它涉及到生成创造性内容的时候。通过生成动画概要,我探索了两种文本生成技术,首先是使用相对陈旧的LSTM,然后使用经过微调的GPT2。在这篇文章中,您将看到AI创建这种废话开始的过程。。。A young woman capable : a neuroi laborer of the human , where one are sent back home ? after defeating everything being

2020-09-08 08:33:41 5618

原创 Matplotlib中的“plt”和“ax”到底是什么?

在幕布中绘图,还是在幕布上的单元格中绘图?​ 实际上,作为最流行和最基础的数据可视化库,Matplotlib在某些方面有些令人困惑,这些部分经常有人问起。我应该在什么时候使用“axes”为什么有时用“plt”而有时用“ax”?它们之间有什么区别?​ 在网上有这么多的例子向人们展示如何使用Matplotlib来绘制这种或那种图表,但我很少看到任何教程提到“为什么”。这可能会使编程经验较少或从其他语言(如R)切换到这种语言的人感到非常困惑。​ 在本文中,我不会教您使用Matplotlib

2020-09-07 08:46:38 14627 4

原创 机器学习算法背后的数学原理

不同的机器学习算法是如何从数据中学习并预测未知数据的呢?​ 机器学习算法的设计让它们从经验中学习,当它们获取越来越多的数据时,性能也会越来越高。每种算法都有自己学习和预测数据的思路。在本文中,我们将介绍一些机器学习算法的功能,以及在这些算法中实现的有助于它们学习的一些数学方程。机器学习算法的类型机器学习算法大致可以分为以下四类:**监督学习:**用于预测的目标是已知的情况。这些算法生成一个函数,该函数将输入映射到输出变量。回归和分类算法都属于这一类。在回归中,输出变量是连续的,而在分类中,输出变

2020-09-06 09:29:04 11023 2

原创 特征工程之处理时间序列数据

维基百科对于特征工程的定义是:利用相关领域知识,通过数据挖掘技术从原始数据中提取特征的过程。这些特征可以用来提高机器学习算法的性能。不过,特征工程不一定非得很花哨。特征工程的一个简单但普遍的处理对象是时间序列数据。特征工程在这个领域的重要性是因为(原始)时间序列数据通常只包含一个表示时间属性的列,即日期时间(或时间戳)。对于日期时间数据,特征工程可以看作是从独立的(不同的)特征数据中提取有用的信息。例如,从“2020–07–01 10:21:05”这日期时间数据中,我们可能需要从中提取以下特征:月.

2020-09-05 09:40:25 8528

原创 推荐系统基础:使用PyTorch进行矩阵分解

我们一天会遇到很多次推荐——当我们决定在Netflix/Youtube上看什么,购物网站上的商品推荐,Spotify上的歌曲推荐,Instagram上的朋友推荐,LinkedIn上的工作推荐……列表还在继续!推荐系统的目的是预测用户对某一商品的“评价”或“偏好”。这些评级用于确定用户可能喜欢什么,并提出明智的建议。推荐系统主要有两种类型:基于内容的系统:这些系统试图根据项目的内容(类型、颜色等)和用户的个人资料(喜欢、不喜欢、人口统计信息等)来匹配用户。例如,Youtube可能会根据我是一个厨师的事实

2020-09-04 08:33:41 7636

原创 机器学习特性缩放的介绍,什么时候为什么使用

在这篇文章中,我们将讨论什么是特征缩放以及为什么我们在机器学习中需要特征缩放。我们还将讨论数据的标准化和标准化,以及使用scikit-learn实现同样的标准化和标准化。什么是特性缩放?特征缩放是对输入数据进行标准化/规范化所需要的重要预处理之一。当每一列的值范围非常不同时,我们需要将它们扩展到公共级别。这些值重新规划成公共水平,然后我们可以对输入数据应用进一步的机器学习算法。我们有不同的特征,其中一个特征的数据可能以公里表示,另一列的数据可能以米表示,最后一列的数据可能以厘米表示。在将算法应用到数.

2020-09-03 08:36:41 5269

原创 理解GPT-3: OpenAI最新的语言模型

介绍如果你一直在关注NLP领域的最新发展,那么在过去几个月里几乎不可能避免GPT-3的炒作。这一切都始于OpenAl研究人员发表的论文《Language Models are few Shot Learners》,该论文介绍了GPT-3系列模型。GPT-3的规模和语言能力是惊人的,它可以虚构、开发程序代码、编写深思熟虑的商业备忘录、总结文本等。它可能的用例仅限于我们的想象。它的迷人之处在于,同一个算法可以执行广泛的任务。与此同时,人们对GPT-3能力的性质和风险普遍存在误解。为了更好地理解GPT-3

2020-09-02 08:26:33 14440 3

原创 每个数据科学家都应该知道的20个NumPy操作

NumPy构成了数据科学领域中许多Python库的基础。关于数据科学的一切都始于数据,数据以各种形式出现。数字、图像、文本、x射线、声音和视频记录只是数据源的一些例子。无论数据采用何种格式,都需要将其转换为一组待分析的数字。因此,有效地存储和修改数字数组在数据科学中至关重要。NumPy (Numerical Python)是一个科学计算包,它提供了许多创建和操作数字数组的方法。它构成了许多与数据科学相关的广泛使用的Python库的基础,比如panda和Matplotlib。在这篇文章中,我将介绍20

2020-09-01 09:00:34 9324 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除