深度学习
文章平均质量分 91
深度学习是机器学习的一个子集,它采用了一系列称为神经网络的算法。这些神经网络的设计灵感来源于人类大脑的结构和功能,目的是通过模拟人类大脑处理信息的方式来解释数据。
核心概念
神经网络:深度学习的基础是人工神经网络,它是由相互连接的节点(或称为神经元)组成的网络,类似于人脑中的神经元。
無间行者
没有第一的技术,只有无敌的人,找到适合自已的路,勇往直前,开创出最适合自己的道,才是无敌
------------
岁月如刀斩天骄,花有重开日,人无在少年,不知道还能守护你多少年,勇往直前,道心坚定
------------
披荆斩棘、戮力前行
------------
展开
-
《昇思25天学习打卡营第25天 | 基于MindSpore的GPT2文本摘要》
本次实验使用的是nlpcc2017摘要数据,内容为新闻正文及其摘要,总计50000个样本。因GPT2无中文的tokenizer,我们使用BertTokenizer替代。数据处理,将向量数据变为中文数据。原创 2024-07-30 08:45:35 · 296 阅读 · 0 评论 -
《昇思25天学习打卡营第24天 | 基于MindSpore的红酒分类实验》
K近邻算法(K-Nearest-Neighbor, KNN)是一种用于分类和回归的非参数统计方法,最初由 Cover和Hart于1968年提出(Cover等人,1967),是机器学习最基础的算法之一。它正是基于以上思想:要确定一个样本的类别,可以计算它与所有训练样本的距离,然后找出和该样本最接近的k个样本,统计出这些样本的类别并进行投票,票数最多的那个类就是分类的结果。KNN的三个基本要素:K值,一个样本的分类是由K个邻居的“多数表决”确定的。K值越小,容易受噪声影响,反之,会使类别之间的界限变得模糊。原创 2024-07-25 19:18:09 · 661 阅读 · 0 评论 -
《昇思25天学习打卡营第23天 | 基于MobileNetv2的垃圾分类》
MobileNet网络是由Google团队于2017年提出的专注于移动端、嵌入式或IoT设备的轻量级CNN网络,相比于传统的卷积神经网络,MobileNet网络使用深度可分离卷积(Depthwise Separable Convolution)的思想在准确率小幅度降低的前提下,大大减小了模型参数与运算量。并引入宽度系数 α和分辨率系数 β使模型满足不同应用场景的需求。原创 2024-07-23 14:44:57 · 991 阅读 · 0 评论 -
使用scikit-learn进行机器学习:基础教程
本文介绍了如何使用scikit-learn进行基本的机器学习任务。从数据预处理、模型训练到模型评估,每一步都有详细的代码示例。通过这个简单的例子,希望你能对使用scikit-learn进行机器学习有一个初步的了解,并能在实际项目中加以应用。如果你对机器学习感兴趣,可以进一步学习scikit-learn的高级功能,如交叉验证、超参数调优和更多的模型选择。scikit-learn提供了丰富的文档和示例,非常适合学习和使用。原创 2024-07-17 21:23:56 · 577 阅读 · 0 评论 -
《昇思25天学习打卡营第22天 | 基于 MindSpore 实现 BERT 对话情绪识别》
BERT全称是来自变换器的双向编码器表征量(Bidirectional Encoder Representations from Transformers),它是Google于2018年末开发并发布的一种新型语言模型。与BERT模型相似的预训练语言模型例如问答、命名实体识别、自然语言推理、文本分类等在许多自然语言处理任务中发挥着重要作用。模型是基于Transformer中的Encoder并加上双向的结构,因此一定要熟练掌握Transformer的Encoder的结构。原创 2024-07-17 21:19:59 · 1049 阅读 · 0 评论 -
《昇思25天学习打卡营第20天 | 基于MindNLP+MusicGen生成自己的个性化音乐》
与传统方法不同,MusicGen采用单个stage的Transformer LM结合高效的token交织模式,取消了多层级的多个模型结构,例如分层或上采样,这使得MusicGen能够生成单声道和立体声的高质量音乐样本,同时提供更好的生成输出控制。请注意,传递给 generate 方法的任何参数都将取代生成配置中的参数,因此在调用 generate 中设置 do_sample=False 将取代生成配置中 model.generation_config.do_sample 的设置。及其权重作为音频压缩模型。原创 2024-07-16 23:37:15 · 958 阅读 · 0 评论 -
《昇思25天学习打卡营第21天 | Diffusion扩散模型》
《昇思25天学习打卡营第19天 | Diffusion扩散模型》目录《昇思25天学习打卡营第19天 | Diffusion扩散模型》模型简介什么是Diffusion Model?扩散模型实现原理Diffusion 前向过程Diffusion 逆向过程U-Net神经网络预测噪声构建Diffusion模型位置向量ResNet/ConvNeXT块Attention模块组归一化条件U-Net正向扩散数据准备与处理采样训练过程推理过程(从模型中采样)总结参考本文基于Hugging Face:The Annotat原创 2024-07-16 08:51:27 · 1120 阅读 · 0 评论 -
《昇思25天学习打卡营第19天 | Pix2Pix实现图像转换》
Pix2Pix是基于条件生成对抗网络(cGAN, Condition Generative Adversarial Networks )实现的一种深度学习图像转换模型,该模型是由Phillip Isola等作者在2017年CVPR上提出的,可以实现语义/标签到真实图片、灰度图到彩色图、航空图到地图、白天到黑夜、线稿图到实物图的转换。生成器和判别器。传统上,尽管此类任务的目标都是相同的从像素预测像素,但每项都是用单独的专用机器来处理的。原创 2024-07-14 23:44:46 · 875 阅读 · 0 评论 -
《昇思25天学习打卡营第18天 | GAN图像生成》
生成式对抗网络(Generative Adversarial Networks,GAN)是一种生成式机器学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。最初,GAN由Ian J. Goodfellow于2014年发明,并在论文生成器的任务是生成看起来像训练图像的“假”图像;判别器需要判断从生成器输出的图像是真实的训练图像还是虚假的图像。GAN通过设计生成模型和判别模型这两个模块,使其互相博弈学习产生了相当好的输出。GAN模型的核心在于提出了通过对抗过程来估计生成模型这一全新框架。原创 2024-07-13 23:02:15 · 966 阅读 · 0 评论 -
《昇思25天学习打卡营第17天 | CycleGAN图像风格迁移互换》
CycleGAN(Cycle Generative Adversarial Network) 即循环对抗生成网络,来自论文。该模型实现了一种在没有配对示例的情况下学习将图像从源域 X 转换到目标域 Y 的方法。该模型一个重要应用领域是域迁移(Domain Adaptation),可以通俗地理解为图像风格迁移。原创 2024-07-13 01:42:25 · 933 阅读 · 0 评论 -
《昇思25天学习打卡营第16天 | DCGAN生成漫画头像》
在下面的教程中,我们将通过示例代码说明DCGAN网络如何设置网络、优化器、如何计算损失函数以及如何初始化模型权重。在本教程中,使用的共有70,171张动漫头像图片,图片大小均为96*96。原创 2024-07-11 21:42:26 · 927 阅读 · 0 评论 -
《昇思25天学习打卡营第15天 | ResNet50迁移学习》
开始训练模型,与没有预训练模型相比,将节约一大半时间,因为此时可以不用计算部分梯度。使用固定特征得到的best.ckpt文件对对验证集的狼和狗图像数据进行预测。,数据集中的图像来自于ImageNet,每个分类有大约120张训练图像与30张验证图像。使用固定特征进行训练的时候,需要冻结除最后一层之外的所有网络层。对获取到的图像及标签数据进行可视化,标题为图像对应的label名称。接口下载数据集,并将下载后的数据集自动解压到当前目录下。接口中加载的训练数据集返回值为字典,用户可通过。接口创建数据迭代器,使用。原创 2024-07-11 00:05:06 · 447 阅读 · 0 评论 -
《昇思25天学习打卡营第14天 | SSD目标检测》
SSD,全称Single Shot MultiBox Detector,是Wei Liu在ECCV 2016上提出的一种目标检测算法。使用Nvidia Titan X在VOC 2007测试集上,SSD对于输入尺寸300x300的网络,达到74.3%mAP(mean Average Precision)以及59FPS;对于512x512的网络,达到了76.9%mAP ,超越当时最强的Faster RCNN(73.2%mAP)。具体可参考论文[1]。原创 2024-07-09 23:36:29 · 1389 阅读 · 0 评论 -
《昇思25天学习打卡营第13天 | Vision Transformer图像分类》
近些年,随着基于自注意(Self-Attention)结构的模型的发展,特别是Transformer模型的提出,极大地促进了自然语言处理模型的发展。由于Transformers的计算效率和可扩展性,它已经能够训练具有超过100B参数的空前规模的模型。ViT则是自然语言处理和计算机视觉两个领域的融合结晶。在不依赖卷积操作的情况下,依然可以在图像分类任务上达到很好的效果。原创 2024-07-09 08:57:01 · 484 阅读 · 0 评论 -
《昇思25天学习打卡营第12天 | ShuffleNet图像分类》
ShuffleNetV1是旷视科技提出的一种计算高效的CNN模型,和MobileNet, SqueezeNet等一样主要应用在移动端,所以模型的设计目标就是利用有限的计算资源来达到最好的模型精度。ShuffleNetV1的设计核心是引入了两种操作:Pointwise Group Convolution和Channel Shuffle,这在保持精度的同时大大降低了模型的计算量。因此,ShuffleNetV1和MobileNet类似,都是通过设计更高效的网络结构来实现模型的压缩和加速。原创 2024-07-07 23:56:19 · 797 阅读 · 0 评论 -
《昇思25天学习打卡营第11天 | ResNet50图像分类》
ResNet50网络是2015年由微软实验室的何恺明提出,获得ILSVRC2015图像分类竞赛第一名。在ResNet网络提出之前,传统的卷积神经网络都是将一系列的卷积层和池化层堆叠得到的,但当网络堆叠到一定深度时,就会出现退化问题。下图是在CIFAR-10数据集上使用56层网络与20层网络训练误差和测试误差图,由图中数据可以看出,56层网络比20层网络训练误差和测试误差更大,随着网络的加深,其误差并没有如预想的一样减小。原创 2024-07-06 23:48:15 · 702 阅读 · 0 评论 -
《昇思25天学习打卡营第10天 | 图像语义分割》
FCN主要用于图像分割领域,是一种端到端的分割方法,是深度学习应用在图像语义分割的开山之作。通过进行像素级的预测直接得出与原图大小相等的label map。因FCN丢弃全连接层替换为全卷积层,网络所有层均为卷积层,故称为全卷积网络。全卷积神经网络主要使用以下三种技术:卷积化(Convolutional)使用VGG-16作为FCN的backbone。VGG-16的输入为224*224的RGB图像,输出为1000个预测值。VGG-16只能接受固定大小的输入,丢弃了空间坐标,产生非空间输出。原创 2024-07-06 00:37:43 · 763 阅读 · 0 评论 -
《昇思25天学习打卡营第9天 | 使用静态图加速》
动态图的特点是计算图的构建和计算同时发生(Define by run),其符合Python的解释执行方式,在计算图中定义一个Tensor时,其值就已经被计算且确定,因此在调试模型时较为方便,能够实时得到中间结果的值,但由于所有节点都需要被保存,导致难以对整个计算图进行优化。在MindSpore中,静态图模式又被称为Graph模式,在Graph模式下,基于图优化、计算图整图下沉等技术,编译器可以针对图进行全局的优化,获得较好的性能,因此比较适合网络固定且需要高性能的场景。有关静态图模式的运行原理,可以参考。原创 2024-07-04 23:53:51 · 1029 阅读 · 0 评论 -
《昇思25天学习打卡营第8天 | 保存与加载》
在训练网络模型的过程中,实际上我们希望保存中间和最后的结果,用于微调(fine-tune)和后续的模型推理与部署,本章节我们将学习如何保存与加载模型。原创 2024-07-04 00:21:49 · 421 阅读 · 0 评论 -
《昇思25天学习打卡营第7天 | 模型训练》
从网络构建中加载代码,构建一个神经网络模型。nn.ReLU(),nn.ReLU(),超参(Hyperparameters)是可以调整的参数,可以控制模型训练优化的过程,不同的超参数值可能会影响模型训练和收敛速度。wt1wt−η1n∑x∈B∇lxwtwt1wt−ηn1x∈B∑∇lxwt公式中,nnn是批量大小(batch size),ηηη是学习率(learning rate)。另外,wtw_{t}w。原创 2024-07-02 23:57:43 · 1617 阅读 · 0 评论 -
《昇思25天学习打卡营第6天 | 函数式自动微分》
神经网络的训练主要使用反向传播算法,模型预测值(logits)与正确标签(label)送入损失函数(loss function)获得loss,然后进行反向传播计算,求得梯度(gradients),最终更新至模型参数(parameters)。自动微分能够计算可导函数在某点处的导数值,是反向传播算法的一般化。自动微分主要解决的问题是将一个复杂的数学运算分解为一系列简单的基本运算,该功能对用户屏蔽了大量的求导细节和过程,大大降低了框架的使用门槛。获得微分函数是一种函数变换,即输入为函数,输出也为函数。原创 2024-06-30 23:56:10 · 929 阅读 · 0 评论 -
《昇思25天学习打卡营第5天 | 网络构建》
神经网络模型是一种模仿生物神经系统结构和功能的计算模型,它由大量的节点(或称为“神经元”)组成,这些节点通过连接(或称为“权重”)相互作用,以处理信息。神经网络模型是机器学习和深度学习的核心组成部分,广泛应用于图像识别、语音识别、自然语言处理、游戏和决策系统等领域。1.输入层(Input Layer):输入层接收原始数据或特征,并将其传递给网络。每个输入节点对应数据的一个特征。2.隐藏层(Hidden Layers):隐藏层位于输入层和输出层之间,可以有一个或多个。原创 2024-06-30 00:41:41 · 659 阅读 · 0 评论 -
《昇思25天学习打卡营第4天 | 数据变换》
Lambda Transforms可以加载任意定义的Lambda函数,提供足够的灵活度。通常情况下,直接加载的原始数据并不能直接送入神经网络进行训练,此时我们需要对其进行数据预处理。提供了面向图像、文本、音频等不同数据类型的Transforms,同时也支持使用Lambda函数。这里我们先使用numpy随机生成一个像素值在[0, 255]的图像,将其像素值进行缩放。为了更直观地呈现Transform前后的数据对比,我们使用Transforms的。操作将此分词器应用到输入的文本中,对其进行分词。原创 2024-06-27 23:46:57 · 1188 阅读 · 0 评论 -
《昇思25天学习打卡营第3天 | 数据集 Dataset》
数据集(Dataset)在深度学习和机器学习中指的是一组数据的集合,这些数据通常用于训练、验证和测试模型。数据集的质量和多样性对于训练出高性能的模型至关重要。一个典型的数据集通常包含以下几个方面:数据结构:数据集可以是结构化的,如表格数据,也可以是非结构化的,如文本、图像或音频。标签:在监督学习中,数据集中的每个样本通常都有一个或多个与之关联的标签(label),这些标签用于训练模型进行预测或分类。原创 2024-06-26 21:06:31 · 1465 阅读 · 0 评论 -
《昇思25天学习打卡营第2天 | 张量 Tensor》
张量(Tensor)是一个多维数组或矩阵的概念,它是向量和矩阵的推广。在数学和物理学中,张量是一个具有多个分量的量,这些分量之间的关系可以通过一组坐标变换来描述。在计算机科学和工程领域,特别是在机器学习和深度学习中,张量通常指的是多维数组,它是数据的基本表示形式。在 MindSpore 网络运算中张量(Tensor)是基本的数据结构。张量是一种特殊的数据结构,与数组和矩阵非常相似。原创 2024-06-25 23:29:34 · 758 阅读 · 0 评论 -
《昇思25天学习打卡营第1天 | 快速入门》
昇思MindSpore是一个全场景深度学习框架,旨在实现易开发、高效执行、全场景统一部署三大目标。其中,易开发表现为API友好、调试难度低;高效执行包括计算效率、数据预处理效率和分布式训练效率;全场景则指框架同时支持云、边缘以及端侧场景。ModelZoo(模型库):ModelZoo提供可用的深度学习算法网络,也欢迎更多开发者贡献新的网络(ModelZoo地址MindSpore Extend(扩展库)原创 2024-06-24 19:44:35 · 833 阅读 · 0 评论