- 博客(32)
- 资源 (3)
- 收藏
- 关注
原创 昇思25天学习打卡营第26天|GAN图像生成
生成式对抗网络(Generative Adversarial Networks,GAN)是一种生成式机器学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。最初,GAN由Ian J. Goodfellow于2014年发明,并在论文生成器的任务是生成看起来像训练图像的“假”图像;判别器需要判断从生成器输出的图像是真实的训练图像还是虚假的图像。GAN通过设计生成模型和判别模型这两个模块,使其互相博弈学习产生了相当好的输出。GAN模型的核心在于提出了通过对抗过程来估计生成模型这一全新框架。
2024-07-31 14:36:11
967
原创 昇思25天学习打卡营第22天|基于MindSpore通过GPT实现情感分类
【代码】昇思25天学习打卡营第22天|基于MindSpore通过GPT实现情感分类。
2024-07-30 23:52:12
209
原创 昇思25天学习打卡营第25天|Pix2Pix实现图像转换
Pix2Pix是基于条件生成对抗网络(cGAN, Condition Generative Adversarial Networks )实现的一种深度学习图像转换模型,该模型是由Phillip Isola等作者在2017年CVPR上提出的,可以实现语义/标签到真实图片、灰度图到彩色图、航空图到地图、白天到黑夜、线稿图到实物图的转换。生成器和判别器。传统上,尽管此类任务的目标都是相同的从像素预测像素,但每项都是用单独的专用机器来处理的。
2024-07-30 23:09:33
570
原创 昇思25天学习打卡营第24天|MindNLP ChatGLM-6B StreamChat
【代码】昇思25天学习打卡营第24天|MindNLP ChatGLM-6B StreamChat。
2024-07-30 22:53:49
114
原创 昇思25天学习打卡营第23天|文本解码原理--以MindNLP为例
Beam search通过在每个时间步保留最可能的 num_beams 个词,并从中最终选择出概率最高的序列来降低丢失潜在的高概率序列的风险。缺点: 错过了隐藏在低概率词后面的高概率词,如:dog=0.5, has=0.9!按照贪心搜索输出序列("The","nice","woman") 的条件概率为:0.5 x 0.4 = 0.2。选出概率最大的 K 个词,重新归一化,最后在归一化后的 K 个词中采样。增加高概率单词的似然并降低低概率单词的似然。将出现过的候选词的概率设置为 0。缺点:生成文本不连续。
2024-07-30 22:51:28
772
原创 昇思25天学习打卡营第20天|基于 MindSpore 实现 BERT 对话情绪识别
BERT全称是来自变换器的双向编码器表征量(Bidirectional Encoder Representations from Transformers),它是Google于2018年末开发并发布的一种新型语言模型。与BERT模型相似的预训练语言模型例如问答、命名实体识别、自然语言推理、文本分类等在许多自然语言处理任务中发挥着重要作用。模型是基于Transformer中的Encoder并加上双向的结构,因此一定要熟练掌握Transformer的Encoder的结构。
2024-07-30 22:15:55
1136
原创 昇思25天学习打卡营第19天|RNN实现情感分类
情感分类是自然语言处理中的经典任务,是典型的分类问题。输入: This film is terrible正确标签: Negative预测标签: Negative输入: This film is great正确标签: Positive预测标签: Positive最后我们设计一个预测函数,实现开头描述的效果,输入一句评价,获得评价的情感分类。将输入句子进行分词;使用词表获取对应的index id序列;index id序列转为Tensor;送入模型获得预测结果;打印输出预测结果。
2024-07-30 22:01:24
960
原创 昇思25天学习打卡营第18天|LSTM+CRF序列标注
序列标注指给定输入序列,给序列中每个Token进行标注标签的过程。序列标注问题通常用于从文本中进行信息抽取,包括分词(Word Segmentation)、词性标注(Position Tagging)、命名实体识别(Named Entity Recognition, NER)等。输入序列清华大学座落于首都北京输出标注BIIIOOOOOBI如上表所示,清华大学和北京是地名,需要将其识别,我们对每个输入的单词预测其标签,最后根据标签来识别实体。
2024-07-30 21:46:19
551
原创 昇思25天学习打卡营第17天|K近邻算法实现红酒聚类
K近邻算法(K-Nearest-Neighbor, KNN)是一种用于分类和回归的非参数统计方法,最初由 Cover和Hart于1968年提出(Cover等人,1967),是机器学习最基础的算法之一。它正是基于以上思想:要确定一个样本的类别,可以计算它与所有训练样本的距离,然后找出和该样本最接近的k个样本,统计出这些样本的类别并进行投票,票数最多的那个类就是分类的结果。KNN的三个基本要素:K值,一个样本的分类是由K个邻居的“多数表决”确定的。K值越小,容易受噪声影响,反之,会使类别之间的界限变得模糊。
2024-07-30 21:32:31
723
原创 昇思25天学习打卡营第16天|基于MindNLP+MusicGen生成自己的个性化音乐
与传统方法不同,MusicGen采用单个stage的Transformer LM结合高效的token交织模式,取消了多层级的多个模型结构,例如分层或上采样,这使得MusicGen能够生成单声道和立体声的高质量音乐样本,同时提供更好的生成输出控制。MusicGen不仅能够生成符合文本描述的音乐,还能够通过旋律条件控制生成的音调结构。MusicGen是来自Meta AI的Jade Copet等人提出的基于单个语言模型(LM)的音乐生成模型,能够根据文本描述或音频提示生成高质量的音乐样本,相关研究成果参考论文《
2024-07-30 21:22:37
743
原创 昇思25天学习打卡营第15天|Vision Transformer图像分类
近些年,随着基于自注意(Self-Attention)结构的模型的发展,特别是Transformer模型的提出,极大地促进了自然语言处理模型的发展。由于Transformers的计算效率和可扩展性,它已经能够训练具有超过100B参数的空前规模的模型。ViT则是自然语言处理和计算机视觉两个领域的融合结晶。在不依赖卷积操作的情况下,依然可以在图像分类任务上达到很好的效果。本案例完成了一个ViT模型在ImageNet数据上进行训练,验证和推理的过程,其中,对关键的ViT模型结构和原理作了讲解。
2024-07-30 21:05:45
664
原创 昇思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-30 20:57:55
1024
原创 昇思25天学习打卡营第13天|ShuffleNet图像分类
ShuffleNetV1是旷视科技提出的一种计算高效的CNN模型,和MobileNet, SqueezeNet等一样主要应用在移动端,所以模型的设计目标就是利用有限的计算资源来达到最好的模型精度。ShuffleNetV1的设计核心是引入了两种操作:Pointwise Group Convolution和Channel Shuffle,这在保持精度的同时大大降低了模型的计算量。因此,ShuffleNetV1和MobileNet类似,都是通过设计更高效的网络结构来实现模型的压缩和加速。
2024-07-30 20:31:36
831
原创 昇思25天学习打卡营第12天|ResNet50图像分类
ResNet50网络是2015年由微软实验室的何恺明提出,获得ILSVRC2015图像分类竞赛第一名。在ResNet网络提出之前,传统的卷积神经网络都是将一系列的卷积层和池化层堆叠得到的,但当网络堆叠到一定深度时,就会出现退化问题。下图是在CIFAR-10数据集上使用56层网络与20层网络训练误差和测试误差图,由图中数据可以看出,56层网络比20层网络训练误差和测试误差更大,随着网络的加深,其误差并没有如预想的一样减小。
2024-07-30 20:18:50
867
原创 昇思25天学习打卡营第11天|ResNet50迁移学习
本次使用迁移学习的方法对ImageNet数据集中的狼和狗图像进行分类。迁移学习详细内容见。
2024-07-30 17:30:22
519
原创 昇思25天学习打卡营第10天|FCN图像语义分割
FCN主要用于图像分割领域,是一种端到端的分割方法,是深度学习应用在图像语义分割的开山之作。通过进行像素级的预测直接得出与原图大小相等的label map。因FCN丢弃全连接层替换为全卷积层,网络所有层均为卷积层,故称为全卷积网络。全卷积神经网络主要使用以下三种技术:卷积化(Convolutional)使用VGG-16作为FCN的backbone。VGG-16的输入为224*224的RGB图像,输出为1000个预测值。VGG-16只能接受固定大小的输入,丢弃了空间坐标,产生非空间输出。
2024-07-29 23:54:33
607
原创 昇思25天学习打卡营第9天|使用静态图加速
AI编译框架分为两种运行模式,分别是动态图模式以及静态图模式。MindSpore默认情况下是以动态图模式运行,但也支持手工切换为静态图模式。
2024-07-29 23:38:58
985
原创 昇思25天学习打卡营第7天|模型训练
从网络构建中加载代码,构建一个神经网络模型。nn.ReLU(),nn.ReLU(),超参(Hyperparameters)是可以调整的参数,可以控制模型训练优化的过程,不同的超参数值可能会影响模型训练和收敛速度。目前深度学习模型多采用批量随机梯度下降算法进行优化,随机梯度下降算法的原理如下:公式中,𝑛是批量大小(batch size),η是学习率(learning rate)。另外,为训练轮次𝑡中的权重参数,∇𝑙为损失函数的导数。
2024-07-29 23:20:35
1012
原创 昇思25天学习打卡营第8天|保存与加载
在训练网络模型的过程中,实际上我们希望保存中间和最后的结果,用于微调(fine-tune)和后续的模型推理与部署。导入依赖定义网络。
2024-07-29 23:19:26
271
原创 昇思25天学习打卡营第6天|函数式自动微分
神经网络的训练主要使用反向传播算法,模型预测值(logits)与正确标签(label)送入损失函数(loss function)获得loss,然后进行反向传播计算,求得梯度(gradients),最终更新至模型参数(parameters)。自动微分能够计算可导函数在某点处的导数值,是反向传播算法的一般化。自动微分主要解决的问题是将一个复杂的数学运算分解为一系列简单的基本运算,该功能对用户屏蔽了大量的求导细节和过程,大大降低了框架的使用门槛。
2024-07-29 22:16:15
851
原创 昇思25天学习打卡营第5天|网络构建
神经网络模型是由神经网络层和Tensor操作构成的,提供了常见神经网络层的实现,在MindSpore中,类是构建所有网络的基类,也是网络的基本单元。一个神经网络模型表示为一个Cell,它由不同的子Cell构成。使用这样的嵌套结构,可以简单地使用面向对象编程的思维,对神经网络结构进行构建和管理。构建一个用于Mnist数据集分类的神经网络模型。导入相关依赖1、定义模型类当我们定义神经网络时,可以继承nn.Cell类,在__init__方法中进行子Cell的实例化和状态管理,在construct。
2024-07-25 20:30:57
549
原创 昇思25天学习打卡营第4天|数据变换Transforms
通常情况下,直接加载的原始数据并不能直接送入神经网络进行训练,此时我们需要对其进行数据预处理。MindSpore提供不同种类的数据变换(Transforms),配合数据处理Pipeline来实现数据预处理。所有的Transforms均可通过map方法传入,实现对指定数据列的处理。提供了面向图像、文本、音频等不同数据类型的Transforms,同时也支持使用Lambda函数。同样是导入依赖。
2024-07-25 20:08:54
765
原创 昇思25天学习打卡营第3天|数据集Dataset
MindSpore提供基于Pipeline的,通过和实现高效的数据预处理。其中Dataset是Pipeline的起始,用于加载原始数据。提供了内置的文本、图像、音频等数据集加载接口,并提供了自定义数据集加载接口。导入依赖1、数据集加载使用数据集作为样例,提供的接口,因此我们使用download库下载数据集并解压。解压后的文件放在当前目录下(./)运行结果为:压缩文件删除后,直接加载,可以看到其数据类型为MnistDataset。运行结果为:2、数据集迭代。
2024-07-25 19:42:58
566
原创 昇思25天学习打卡营第2天|张量Tensor
是一个可用来表示一些矢量、标量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。张量之间有很多运算,包括算术、线性代数、矩阵处理(转置、标引、切片)、采样等,张量运算和NumPy的使用方式类似,下面介绍其中几种操作。表示非零元素的值,shape表示的是被压缩的稀疏张量的形状。张量的属性包括形状、数据类型、转置张量、单个元素大小、占用字节数量、维数、元素个数和每一维步长。普通算术运算有:加(+)、减(-)、乘(*)、除(/)、取模(%)、整除(//)。
2024-07-23 22:27:38
930
原创 昇思25天学习打卡营第1天|初学教程
MindSpore的dataset使用数据处理流水线(Data Processing Pipeline),需指定map、batch、shuffle等操作。这里我们使用map对图像数据及标签进行变换处理,然后将处理好的数据集打包为大小为64的batch。打印每一轮的loss值和预测准确率(Accuracy),可以看到loss在不断下降,Accuracy在不断提高。在此设置三轮,3个epoch,训练的loss在不断下降。获取数据对象,并打印数据集中包含的数据列名,用于dataset的预处理。
2024-07-18 23:00:26
738
原创 [macOS] zsh:command not found: python问题解决
zsh:command not found: python问题解决
2022-08-16 16:14:40
7308
1
原创 设置Maven的setting.xml
Maven的库在中国大陆非常慢,有些包更新不上,上一篇用了阿里云的镜像有些包还是下载不了,搜了一下发现这个setting.xml写法,这个很好用。转载一波:https://zhuanlan.zhihu.com/p/71998219,并在此感谢大佬的分享。附上相关的setting.xml内容:<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema
2020-08-05 14:46:43
283
原创 Mac IDEA 配置 Maven
IDEA配置安装Maven1、下载Maven包http://maven.apache.org/download.cgi下载并解压到某路径下 /Users/kangql/software/apache-maven-3.6.32、配置环境变量在终端命令行中输入open ~/.bash_profile打开文件(也可以使用vim命令打开,用i修改,修改后按esc键再用:wq保存) 根据自己解压路径在文件中添加一下环境变量#Mavenexport PATH="/Users/kangql
2020-08-05 10:31:11
598
1
原创 码云入门
码云入门1、注册码云账号2、下载git客户端到本地,https://git-scm.com/download/win(但是这个官方网址我下载的时候太慢了,就在网上搜索下载的)生成公钥安装完git客户端后,使用git bash创建公钥在命令行中输入cd ~/.ssh,若出现下图则表示没有生成过公钥生成公钥语句ssh-keygen,之后操作默认回车查看公钥cat ~/.ssh/id_...
2019-03-27 15:54:07
197
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用
2017-05-14 23:09:55
116
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人