深度学图超分辨率重建中应 8
前言 8
1SRCNN 8
2 DRCN 9
3 ESPCN 10
4 VESPCN 12
5 SRGAN 13
RGRBM作粗粒度程 16
精确 19
重整化群理:鸟瞰图 19
物理学中旋转概念 19
重整化数学 20
变分重整化组(VRG) 23
RBM简总结 24
完全映射RGRBM 26
应伊辛模型 26
结展 27
深度学练记录:生成钢琴音乐? 29
创造性应深度学视觉模型非视觉务
导读
众周知目前深度学计算机视觉领域已应落加迁移学容易训练出视觉务模型现实中务原始数非视觉类型面样问题强深度学视觉模型文作者3具体案例展示切
介绍
年深度学已彻底改变计算机视觉迁移学优秀学资源数天甚数时利预先训练模型应领域获先进结果着深度学变商品化需求变成领域创造性应
迁移学教程:httpsmachinelearningmasterycomtransferlearningfordeeplearning深度学教程:httpscoursefastai
天计算机视觉领域深度学已程度解决视觉象分类目标检测识问题领域深度神网络表现优类
数视化然利深度学视觉模型指CNN做点必须数非视觉型转换图然某针图预训练模型处理数会种方法强感惊讶
文中介绍3创造性深度学案例展示公司深度学视觉模型应非视觉领域案例中会非计算机视觉问题进行转换说明便利适图分类深度学模型
案例:石油工业
石油工业中磕头机常开采石油天然气连接游梁发动机提供动力游梁发动机旋转运动转化抽油杆垂直复运动抽油杆泵样油输送表面
磕头机称抽油机源:
httpscommonswikimediaorg
复杂机械系统样抽油机容易发生障帮助诊断抽油机安装测功计测量杆负载测量绘制出张测功计泵卡显示发动机旋转周期部分负载
测功计泵卡样例源:
httpswwwresearchgatenet
抽油机出障时测功计泵卡形状会改变通常会邀请专业技术员检查卡泵部位出现障需采取什措施修复作出判断程非常耗时需非常狭窄专业知识效解决
方面程起动化前什传统机器学系统试没取效果准确率仅60左右
深度学应领域公司贝克休斯(Baker Hughes)案例中测功计泵卡转换成图然作输入传ImageNet预训练模型中结果令印象深刻——需采预训练模型新数进行微调准确率60升93模型进步优化准确率达97
贝克休斯部署系统示例左侧输入图右侧障模式实时分类系统便携式设备运行分类时间显示右角源:httpswwwyoutubecom
仅击败前基传统机器学方法现该公司需抽油机技术员花时间诊断问题提高效率立开始修复机械障
解更信息阅读篇讨类似方法文
案例二:线欺诈检测
计算机户计算机时独特模式惯浏览网站时鼠标方式者编写邮件时键盘敲击方式独二
案例中Splunk解决问题通计算机鼠标方式户进行分类果系统够根鼠标模式唯识户欺诈检测想象:欺诈者窃取某登录名密码然登录网商店购物欺诈者电脑鼠标方式独二系统容易检测种异常情况防止欺诈交易发生时会通知账户真正者
段特殊javascript代码收集鼠标活动该软件510毫秒记录次鼠标活动户页面约会产生5000–10000数点该数两挑战:首先户说量数第二户数集包含数量数点方便通常言长度序列需更精巧深度学架构
解决办法户网页鼠标活动转换单图幅图中鼠标移动条线表示颜色编码鼠标移动速度左击右击绿色红色圆圈表示种处理初始数方法解决述两问题:首先图相次处理图深度学模型
幅图中鼠标移动条颜色编码鼠标速度线表示左击右击绿色红色圆圈表示源:httpswwwsplunkcom
SplunkTensorFlow加Keras构建分类户深度学系统做两实验:
实验:某金融服务网站户组分类——访问类似页面时区分普通客户非客户
仅2000张图片组成较训练集基VGG16修改网络结构进行2分钟训练系统80准确率识两类
实验二:单户分类
该务定户通鼠标活动预测户模仿者回仅360张图片训练集基VGG16考虑数集更拟合(dropoutbatch normalization)网络结构进行修改3分钟训练准确率达78左右考虑该务挑战性结果令印象非常深刻
想解更信息请参阅面篇描述系统实验完整文章
文章链接:httpswwwsplunkcomblog20170418deeplearningwithsplunkandtensorflowforsecuritycatchingthefraudsterinneuralnetworkswithbehavioralbiometricshtml
案例三:鲸鱼声音检测
例子中谷歌卷积神网络分析录音检测中座头鲸研究言例踪单鲸鱼运动歌曲特性鲸鱼数量等趣研究目谷歌处理数需图卷积神网络
音频数转换成图方法时频谱时频谱音频数基频率特征视觉表示
男性声音说十九世纪时频谱例子源:
httpscommonswikimediaorg
音频数转换成时频谱谷歌研究员Resnet50架构训练模型达性:
精度90:90模型类鲸鱼歌声音频剪辑正确类
召回率90:果首鲸鱼歌声录音90率会贴样标签
结果令印象深刻鲸鱼研究定帮助
焦点鲸鱼转处理音频数创建时频谱时根音频数类型选择频率针类语音座头鲸歌声工业设备录音等需频率场景重信息包含频段中必须领域知识选择该参数例果类语音数第选择应该梅尔倒频谱
目前软件包音频librosa免费音频分析python库CPU生成时频谱果TensorFlow开发想GPU做时频谱计算
librosa相关链接:httpslibrosagithubiolibrosa
请参考面篇谷歌工智原始博客文章解更关谷歌处理座头鲸数信息
谷歌博客文章:httpsaigoogleblogcom201810acousticdetectionofhumpbackwhaleshtml
总言文概述般方法遵循两步骤
首先找种数转换成图方法
第二预训练卷积网络头训练
第步第二步更难需思考数否转换成图展现创造性方希述提供示例解决问题帮助果例子问题请写面评中
参考引
IoT for Oil & Gas—The Power of Big Data and ML (Cloud Next ’18)
httpswwwyoutubecomwatchv6_kdEguYwwg&featureyoutube&t1692
Beam Pump Dynamometer Card Prediction Using Artificial Neural Networks
httpswwwknepublishingcomindexphpKnEEngineeringarticledownload30836587
Splunk and Tensorflow for Security Catching the Fraudster with Behavior Biometrics
httpswwwsplunkcomblog20170418deeplearningwithsplunkandtensorflowforsecuritycatchingthefraudsterinneuralnetworkswithbehavioralbiometricshtml
Acoustic Detection of Humpback Whales Using a Convolutional Neural Network
httpsaigoogleblogcom201810acousticdetectionofhumpbackwhaleshtml
深度学图超分辨率重建中应
前言
篇文章会吃力需定基础懂文章质量高喜欢编老铁记点赞关注想问啥私信编里抱拳
超分辨率技术(SuperResolution)指观测低分辨率图重建出相应高分辨率图监控设备卫星图医学影等领域重应价值SR分两类张低分辨率图重建出高分辨率图单张低分辨率图重建出高分辨率图基深度学SR基单张低分辨率重建方法Single Image SuperResolution (SISR)
SISR逆问题低分辨率图存许高分辨率图应通常求解高分辨率图时会加先验信息进行规范化约束传统方法中先验信息通干成出现低高分辨率图实例中学基深度学SR通神网络直接学分辨率图高分辨率图端端映射函数
文介绍较新基深度学SR方法包括SRCNNDRCN ESPCNVESPCNSRGAN等
1SRCNN
SuperResolution Convolutional Neural Network (SRCNN PAMI 2016 代码)较早提出做SR卷积神网络该网络结构十分简单仅仅三卷积层
该方法低分辨率图先双三次(bicubic)插值放目标通三层卷积网络做非线性映射结果作高分辨率图输出作者三层卷积结构解释成传统SR方法应三步骤:图块提取特征表示特征非线性映射终重建
三卷积层卷积核分9x9 1x15x5前两输出特征数分6432 该文章分Timofte数集(包含91幅图)ImageNet数集进行训练相双三次插值传统稀疏编码方法SRCNN高分辨率图更加清晰图放倍数3例子
SR质量进行定量评价常两指标PSNR(Peak SignaltoNoise Ratio)SSIM(Structure Similarity Index)两值越高代表重建结果素值金标准越接图表明放倍数SRCNN取传统方法效果
2 DRCN
SRCNN层数较少时感受野较(13x13)DRCN (DeeplyRecursive Convolutional Network for Image SuperResolution CVPR 2016 代码)提出更卷积层增加网络感受野(41x41)时避免网络参数该文章提出递神网络(RNN)网络基结构:
SRCNN类似该网络分三模块第Embedding network相特征提取第二Inference network 相特征非线性变换第三Reconstruction network特征图重建结果中Inference network递网络数循环通该层次循环进行展开等效组参数串联卷积层图示:
中H1HDD享参数卷积层DRCN层卷积结果通Reconstruction Net重建结果D重建结果加权均终输出外受ResNet启发DRCN通skip connection输入图Hd输出相加作Reconstruction Net输入相Inference Net学高分辨率图低分辨率图差恢复图高频部分
实验部分DRCN包含91张图Timofte数集进行训练效果SRCNN较提高
3 ESPCN
SRCNNDRCN中低分辨率图先通采样插值高分辨率图样作网络输入意味着卷积操作较高分辨率进行相低分辨率图计算卷积会降低效率 ESPCN(RealTime Single Image and Video SuperResolution Using an Efficient SubPixel Convolutional Neural NetworkCVPR 2016 代码)提出种低分辨率图直接计算卷积高分辨率图高效率方法
ESPCN核心概念亚素卷积层(subpixel convolutional layer)图示网络输入原始低分辨率图通两卷积层特征图输入图样特征通道r2(r图目标放倍数)素r2通道重新排列成r x r区域应高分辨率图中r x r子块r2 x H x W特征图重新排列成1 x rH x rW高分辨率图变换然称作subpixel convolution 实际没卷积操作
通subpixel convolution 图低分辨率高分辨率放程插值函数隐含包含前面卷积层中动学层图做变换前面卷积运算低分辨率图进行效率会较高
重建效果PSNR指标ESPCNSRCNN1080HD视频图做放四倍高分辨率重建SRCNN需0434sESPCN需0029s
4 VESPCN
视频图SR问题中相邻帧具强关联性述种方法单幅图进行处理VESPCN( RealTime Video SuperResolution with SpatioTemporal Networks and Motion Compensation arxiv 2016)提出视频中时间序列图进行高分辨率重建达实时处理效率求方法示意图包括三方面:
纠正相邻帧位移偏差先通Motion estimation估计出位移然利位移参数相邻帧进行空间变换二者齐二齐相邻干帧叠放起做三维数低分辨率三维数三维卷积结果r2 x H x W三利ESPCN思想该卷积结果重新排列1 x rHx rW高分辨率图
Motion estimation程通传统光流算法计算DeepMind 提出Spatial Transformer Networks 通CNN估计空间变换参数VESPCN方法尺度Motion estimation:先输入图低分辨率初始变换输入图相分辨率更精确结果图示:
SR重建相邻帧间位移估计通神网路实现融合起进行端端联合训练VESPCN损失函数:
第项衡量重建结果金标准间差异第二项衡量相邻输入帧空间齐差异第三项滑化空间位移场图展示Motion Compensation 相邻帧间整齐差值图0
图出Motion Compensation重建出高分辨率视频图更加清晰
5 SRGAN
SRGAN (PhotoRealistic Single Image SuperResolution Using a Generative Adversarial Network arxiv 21 Nov 2016)生成式抗网络(GAN)SR问题出发点传统方法般处理较放倍数图放倍数4时容易结果显滑缺少细节真实感SRGANGAN生成图中细节
传统方法代价函数般均方差(MSE)
该代价函数重建结果较高信噪缺少高频信息出现度滑纹理SRGAN认应重建高分辨率图真实高分辨率图低层次素值高层次抽象特征整体概念风格应接整体概念风格评估呢?判器判断副高分辨率图算法生成真实果判器法区分出算法生成图达假乱真效果
该文章代价函数改进
第部分基容代价函数第二部分基抗学代价函数基容代价函数述素空间均方差外包含基特征空间均方差该特征利VGG网络提取图高层次特征:
抗学代价函数基判器输出概率:
中DθD()图属真实高分辨率图概率GθG(ILR)重建高分辨率图SRGAN生成式网络判式网络分:
该方法实验结果
定量评价结果PSNRSSIM两指标评价重建结果金标准素值空间差异SRGAN评价值高MOS(mean opinion score)评价显示SRGAN生成高分辨率图起更真实
物理学深度学解释性启发
令惊讶局部块旋转结构训练程中出现表明DNN组织实现块旋转重整化需手动干涉学
工智存生活角落智手机社交媒体供稿推荐引擎线广告网络导航工具基AI应程序示例应程序天会影响语音识动驾驶机器翻译视觉象识等领域深度学已系统改进现技术状态
然深度神网络(DNN)强原启发式理解 验中知道通型数集遵循特定训练获优异结果
基基物理概念框架(称重整化群(Renormalization RG))种称受限玻尔兹曼机(RBM)神网络间显着类提出种解释
RGRBM作粗粒度程
重整化种法获关微观部分信息时研究物理系统行技术种粗粒度方法显示物理定律着缩检查长度尺度物体变化 戴模糊眼镜
改变观察物理系统长度尺度时(放时)理遍历(航行)理空间
该重视RG理源提供强力框架基事实解释什物理学身
描述诸卫星类复杂结构运动需考虑成分运动
RG理提供强框架解释什物理身
例需应牛顿运动定律需考虑卫星微观成分极复杂行解释运动实践中做系统基组件详细行进行均RG理解释什程序效
外RG理似表明物理世界现理似值未知真理
RG理似表明目前物理世界理某未知真实理似
调查系统处显示相似性时RG运行良相似系统观察长度范围完全似身部分显示相似性系统示例分形
界点处系统显示出彼相距极远部分间强相关性子部分影响整系统系统物理特性完全独立微观结构
工神网络视粗粒度迭代程工神网络层组成图示较早层仅输入数(边缘颜色)中学较低级特征较深层层次较低级特征(较早特征提供)组合成较高级特征杰弗里辛顿话说:首先学简单特征然根目标学更复杂特征然分阶段进行
RG程中更深层次保留认相关特征强调相关特征
卷积神网络(CNN)
CNN识复杂程度面层中更高
精确
物理学机器学涉具许成分系统物理学研究包含许(相互作)物体系统机器学研究包括量维度复杂数外类似物理学中RG神网络设法数进行分类例动物图片组成部分(例颜色)
2014年篇文中两位物理学家Pankaj MehtaDavid Schwab提供基重整化群理深度学表现解释文强调DNN强特征提取器效模仿粗粒化程RG程特征
引文句话:DNN架构视种迭代粗粒度方案中NN新高级层数中学越越抽象高级特征
实际文中设法证明RG受限玻尔兹曼机间确实存确切映射(RBM)构成DNN构建块双层神网络
通堆叠RBM建立RGDNN间映射
重整化群理:鸟瞰图
述重化涉粗粒度技术应物理系统RG理通概念框架需方法操作概念变分重整化群(VRG)KadanoffHoughtonYalabik1976年提出种样方案
清楚阐述文选择专注种特定类型系统说明RG工作量子旋系统完全普遍进行深入研究数学机器前物理学中旋转含义进行解释
物理学中旋转概念
物理学中旋定义基粒子复合粒子原子核携带角动量形式
然旋转定义没典应物量子力学概念具旋粒子通常描绘围绕身轴旋转顶部旋转磁现象密切相关
粒子旋转(黑色箭头)相关磁场线
重整化数学
考虑N旋转系统集合出视化目假设放格子图示
旋转二维点阵(箭头表示)球体带电原子
旋转二进制变量相关联
索引i标记晶格中旋位置方便起见量v表示旋配置
热衡系统旋配置v相关概率分布具形式:
处(方便起见温度设定1)物体H(v)系统谓哈密顿量定义 应系统中粒子动势算子分母Z称分区函数化子:
系统哈密顿量表示旋间相互作相应项总:
参数集
称耦合常数决定旋(第二项)间旋外部磁场(第项)间相互作强度
需考虑重数量源初热力学概念定义 物理系统中转化工作量 数学例子中出:
符号tr代表迹(线性代数概念)文中代表见旋配置总v
重新正规化程步骤中系统长度尺度行均粗粒度系统哈密顿量新耦合常数表示
获新粗粒度变量例子中者块旋转h新哈密顿量:
更理解什块旋转请考虑面二维晶格箭头代表旋转现晶格划分方形块方块包含2×2旋块旋应块中均旋
块旋转RG中系统粗粒化描述旋转块效行新块变量
请注意新哈密顿量具原始哈密顿量相结构仅旋块配置代物理旋
两汉密尔顿义者具相结构具变量耦合
换句话说模型形式会改变缩模型变化参数时通系统重复步骤获理完全重整化次RG迭代参数删参数保留剩称
汉密尔顿义者间联系通求RG变换(面行中描述)变化获
变分重整化组(VRG)
述实现RG映射变分重整化组(VRG)方案该方案中映射操作员实现
中λ组参数运算符隐藏输入(见)旋间耦合进行编码满足关系:
定义面出新哈密顿量然精确RG变换中粗粒度系统具原始系统完全相
相条件
实践中条件完全满足变分方案找化间差异λ
等效似精确RG变换
RBM简总结
详细描述受限制Boltzmann机部工作原理里提供更简洁解释
受限制玻尔兹曼机器(RBMs)基量生成简单版包含两层:
层见单元v表示
隐藏层单位h表示
简单受限制Boltzmann机例证
次考虑二元见数集v中n元素概率分布中提取
输入见数概率分布
RBM中隐藏单元(量h表示)耦合见单元中交互量式出:
量子指数λ表示变分参数集{ cbW } 前两元素量第三矩阵RBM目标输出λ相关 概率分布该概率分布接输入数P(v)分布
配置(vh)参数λ相关联概率该量函数函数:
联合概率通隐藏单位求轻松获见单位变分(边缘化)分布样隐藏单位边缘化分布通见单位求:
定义RBM哈密顿量:
λ参数选择优化谓KullbackLeibler距离(KL)散度相熵测量两概率分布案例中感兴趣真实数分布RBM产生见单位变分分布间KL差异进步说:
两发行版相时:
完全映射RGRBM
MehtaSchwap表明建立RGRBM间精确映射变分运算符选择表达式:
回想哈密顿量H(v)包含部编码输入数概率分布通种变分算子选择快速证明隐藏层RG哈密顿量RBM哈密顿量相:
外实现精确RG变换时真实变分哈密顿量相:
具旋v 块旋h重整化组步骤精确映射见单元v隐藏单元h组成双层RBM
着堆叠越越RBM层实际正执行越越RG转换
应伊辛模型
根基原理出结RBM种监督深度学算法实现变分RG程非应关系MehtaSchwab通易理解Ising旋转模型实现堆叠RBM展示想法作输入数Ising模型采样旋转配置输入DNN中结果显示显然DNN似正执行(Kadanoff) 块旋转重整化
作者话中令惊讶局部块旋转结构训练程中出现表明DNN组织实现块旋转重整化需手动干涉学
结果表明DNN似正执行块旋重整化
图中A显示DNN架构B中绘制学参数W显示隐藏单元见单元间相互作D中着DNN层移动时逐渐形成块旋转(图中斑点)E中示出现三数样宏观结构RBM重建
深度神网络应2D Ising模型
结展
2014年表明受限制玻尔兹曼机(RBM)种神网络重整化群相连概念初物理学文中回顾部分分析前述RG深度神网络具非哲学相似性:复杂系统提炼成相关部分种RGRBM映射种相似性种形式化
深度学生物学程许相似处假设脑某种类固醇重整化理解感知现实分
正作者许通逻辑说明数中挑选出相关特征想存样暗示
假设脑某种类固醇重整化理解感知现实理
深度学练记录:生成钢琴音乐?
通试验Tensorflow v20 Alpha逐步生成钢琴音乐♪♪♪
家篇文章中会分享家关工智实验教家深度学生成音符前关生成歌词文章次生成音乐笔记生成文件(MIDI格式)
音乐角钢琴文注意帮助递神网络(RNN)门控递单元(GRU)变体生成钢琴音符文仅介绍生成笔记介绍生成正确MIDI文件计算机中播放
文针AI感兴趣尤想练深度学希通发表篇文章增加写作技巧文章容产生帮助
果您想解完整源代码文末尾Github链接现存储库中提供python笔记Colaboratory链接
开场音乐
音乐m4a141
AI中国
声音1:开钢琴
(该音乐文中创建模型生成)
纲
介绍
技术数
道
预处理MIDI文件
训练模型
推理生成MIDI文件
结果
结
记
介绍
工智前热门话题仅数(监督)生成某东西计算机视觉领域许研究员正研究生成Advesarial网络(GAN)生成图先进技术例NVIDIAGAN创建逼真面部生成器关GAN生成音乐研究
果谈音乐发生器价值帮助音乐家创作音乐增强创造力想未果领域高度关注数音乐家会创作出AI辅助产生音乐
文重点介绍通音乐中生成连续音符生成音乐知道预处理数转换神网络输入生成音乐
该实验Tensorflow v20(处alpha阶段)作深度学框架想展示通遵循佳实践测试Tensorflow v20Tensorflow v20中喜欢功通AutoGraph加速模型训练通@tffunction定义函数没tfsession没全局初始化特征Tensorflow转移PyTorch原 Tensorflow性说太Tensorflow v20改变切增加性做实验变舒适
该实验注意层注意层告诉定序实例(例音乐笔记C D E F G中)标记解该标记标记影响程度例子(NLP务):
图1:注意力视化
关注意更信息特关transformer信息您阅读篇棒文章
没进步问题继续生成音乐
技术数
实验:
Tensorflow v20:深度学框架Tensorflow新版处alpha阶段开发阶段
Python 37
Colaboratory:免费Jupyter笔记环境需设置完全云中运行拥GPU Tesla K80甚TPU悲Tensorflow v20 alpha撰写文时然支持TPU
Python库pretty_midi:操作创建MIDI文件库
数MagentaMAESTRO(MIDI音频编辑步TRacks组织)作数集数集仅包含钢琴乐器约1000音乐中机抽取100音乐加快训练时间
道
关音乐生成器工作道:
图2:道
程简化起见流程划分:
1预处理MIDI文件作神网络输入
2训练程
3生成MIDI文件
预处理MIDI文件
讨预处理midi文件前需知道midi格式文件什
pcmag中MIDI定义
(乐器数字接口)乐器合成器计算机间音乐信息交换标准协议MIDI开发台合成器键盘播放台合成器产生音符音符钮拨盘踏板调整定义代码MIDI控制消息编排系列合成器合成器扮演乐谱部分MIDI 10版1983年引入
总MIDI文件包含系列包含注释工具例钢琴吉组合种乐器通常音符
预处理MIDI文件库Python中中pretty_midi操作MIDI文件创建新文件文中库
pretty_midi文件格式
图3PrettyMidi格式
开始第二音符开始结束秒钟演奏音符结束次音符重叠音高演奏音符MIDI数字速度发出音符力
MIDI数字注名关系参考图
图4Midi数字注释名称
阅读Midi文件
批量读取midi文件pretty_midi读取方式
midi_pretty_format pretty_midiPrettyMIDI (songmid)
PrettyMidi象
钢琴卷轴阵列进行预处理
图5pretty tymidiPiano Roll Array
文中需乐器中提取音符许MIDI文件音乐中种乐器数集中MIDI文件包含种乐器钢琴钢琴乐器中提取音符更简单提取需帧秒音符pretty_midi方便函数get_piano_roll获取二进制2D numpy中音符数组(注释时间)维度数组中音符长度128时间音乐时长FPS
做源代码
预处理字典时间笔记
图6钢琴卷轴数组字典
钢琴卷轴数组转换成字典字典音符播放时间开始例面图中28开始(果转换秒假设转换piano_roll速度5 fps音乐开始播放速度56 s285)
创建字典字典值转换字符串例
array([4968]) > '4968'
做点应该循环字典键改变值
for key in dict_note
dict_note[key] ''join(dict_note[key])
预处理输入音符列表神网络目标
图7字典列出序列
字典转换成连续笔记笔记作神网络输入然时间步长作神网络输入目标
图8滑动窗口
文中序列列表长度50意味着果fps5包含10秒(50 5)游戏时间序列
列表中e表示段时间没演奏音符时候音符间会跳跃者没音符图7中示例中43跳46果转换序列序列列表
[…'6177' '6177' 'e' 'e' '73'…]
做呢批音乐处理音符
50长度滑动窗口音乐中第音符列表中添加e49次然开始时间设置字典中第timestep图7中例子中28然音乐中添加第音符(示例77’中)
然实例窗口滑动1次列表中添加48次etimestep 28中播放音符添加列表中timestep 29中播放音符添加列表中重复操作直音乐结束
段音乐中重复面程
源代码
创建注意分词器
深入研究神网络前必须创建标记器序音符更改音符序索引首先应该音符映射表示音符id索引
例:
{
'6177' 1 # 6177 will be identified as 1
'e' 2
'73' 3
}
果前输入:
['6177''6177''e''e''73']
转换:
[ 11223 ]
做法
总结预处理功功:
训练模型
解Tensorflow v20新功进行训练前架构:
神网络架构
图9:神网络架构
深度学架构3层门控循环单元(GRU种回神网络变体)注意层丢失神网络会快度拟合
Self Attention Layers存储库进行编辑便Tensorflow v20
深度学架构3层门控递单元(GRU递神网络种变体)注意层该方法采跳脱法神网络会快速拟合
Self Attention层存储库稍微编辑便Tensorflow v20
代码:
训练
通迭代数集中音乐更新模型权重述预处理数然批输入实例神网络目标例
GradientTape更新神网络权重首先apply_gradients计算损失应反传播果您熟悉PyTorchPytorch训练神网络模型方面工作方式
务必函数@ tffunction会功转换签名训练更快 tffunction缺点批量作神网络输入例批量64果数集70批包含6实例程序抛出异常图形具初始图形输入许工作原理通函数时查第输入创建占位符
文中16 BATCH_SONG96 BATCH_NNET_SIZE意味着音乐列表中获取16音乐然提取序列然神网络中步提取序列实例中获取96序列作神网络输入目标
代码:
推理生成MIDI文件
图10:推理生成MIDI文件
训练神网络模型生成MIDI文件两种方法:
需开始时选择:
生成机50音符作音乐开头
49空音符('e')然选择开始音符(例'72'确保音符NoteTokenizer中)
图11:关生成器工作视化
选择音乐生成器种子训练模型基50机音符预测音符预测值作机选择音符概率分布样做直想指定序列长度然放前50音符
生成音符列表序列次转换钢琴卷轴阵列然转换PrettyMidi象
调整音乐速度节奏生成MIDI文件
代码 :
生成注释中编写midi文件:
结果
样做时训练耗时1时持续1 epoch样做时决定进行4 epoch(4时)训练
已训练4 epoch模型结果:
头条号限制发送条音频详细资料请私信编回复音乐免费获取
(请注意MIDI文件转换mp3文件线转换器执行操作注释似点遗漏果您想听会原始MIDI传存储库中)
生成笔记间存明显差异果音符生成播放音符时节奏缓慢50机音符生成时没缓慢开始
选择机50音符开始音乐序列注意块视化:
首先注意
图12:第次注意
第二注意
图13:第二次注意
正您第注意块会学序列实例中音符聚焦音符然第二关注区块中没关注什结果判断果音符位置离前音符远会聚焦(图12图13中黑色)
结
包含钢琴音乐MAESTRO数集构建生成音乐工具预处理训练神网络模型然生成音乐音乐MIDI格式Tensorflow v20完成认Tensorflow v20户体验(UX)前版更
模型产生音乐连贯听调整播放音符方式例:发生器音符(意味着音乐开头)时慢节奏开始
尝试音乐生成器文中已尝试生成单仪器果音乐种乐器办?需更架构做点尝试种方法试验音乐数
记
关生成钢琴音乐笔记文章实际通查第篇关深度学文章启发生成音乐抒情效果 生成音符?做试验效
说试验困难首先需搜索易预处理输入神网络文件格式发现MIDI简单文件然需知道否库Python中预处理文件找两music21pretty_midi存储库没时选择pretty_midi需考虑预处理笔记值庆幸pretty_midi方便函数get_piano_roll更容易
没读关音乐研究文许研究文Colaboratory中复制显示
注意层缺乏视化效果
存储库:
httpsgithubcomharyoanote_music_generator
文档香网(httpswwwxiangdangnet)户传
《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
该内容是文档的文本内容,更好的格式请下载文档