东南大学物联网交通应用研究中心
东南大学物联网交通应用研究中心
北京时间:
深度学习在各个领域的打开方式
2018-11-30 21:47   作者:   来源:智车科技 推荐人:王涵   浏览:47   我要评论

文本分析



    在本例中,我们将分析推特数据,了解针对特定词或短语的情感是积极的还是消极的。情感分析有很多实际的应用,如品牌推广、竞选活动和广告营销。

    过去(目前仍然)进行情感分析通常使用机器学习。机器学习模型可分析单个词,但深度学习网络可应用于完整的句子,大大地提高了准确性。

    训练组由数以千计正面或负面的推特样本组成。这里是训练示例:
 
    我们通过去除“the”和“and”等“停滞词”对数据进行了清理,这些词对于算法的学习毫无用处。然后,我们上传了长短期记忆(longshort-term memory, LSTM)网络,它是一种递归神经网络(recurrent neural network, RNN),可学习时间上的依赖关系。



    LSTM 擅长对序列和时序数据进行分类。当分析文本时,LSTM 不仅会考虑单个词,还会考虑句子结构和词的组合。

    网络本身的 MATLAB 代码非常简单:

layers = [ sequenceInputLayer(inputSize)    
lstmLayer(outputSize,'OutputMode','last')
        fullyConnectedLayer(numClasses)
        softmaxLayer
        classificationLayer ]

    在 GPU 上运行时,它训练的非常快速,30 次迭代(完整遍历一次所有数据)只需 6 分钟。

    完成对模型的训练后,我们就可对新数据使用该模型。例如:我们可用它确定情感分数与股票价格之间是否相关。

语音识别

    在本例中,我们需要将语音音频文件分类到其对应的词类。初看上去,此问题与图像分类完全不同,但实则非常相似。频谱是 1D 音频文件中信号的二维显示(图 1)。我们可以将其用作对卷积神经网络(CNN)的输入,如同使用“真实”图像一样。

 


图1. 上部:原始音频信号。底部:对应频谱

    spectrogram() 函数是一种将音频文件转换为其对应时频的简单方式。但是,语音是音频处理的一种特定形式,其中重要特征会包含在特定的频率处。由于我们希望 CNN 专注于这些特定的频率处,我们将使用美尔倒谱系数,该系数会锁定跟语音最相关的频率区域。

    我们在希望分类的词类之间均匀地分配训练数据。

    为减少伪正面情感,我们纳入了容易与目标类别混淆的词类。例如,如果目标词是“on”,则“mom”、“dawn”和“won”等词会放到“未知”类别中。网络不需要知道这些词是什么,只需要知道它们不是目标词。

    我们随后定义了一个 CNN。由于我们使用频谱作为输入值,因此 CNN 的结构可以是类似于用于图像的结构。

    模型训练完毕后,它会将输入图像(频谱图)分类到相应的类别(图 2)。验证集的准确性约为 96%。


图2. 词“yes”的分类结果

图像降噪


    小波和滤波器是(仍然是)降噪的常见方法。在本例中,我们将了解到经过预训练的图像降噪 CNN(DnCNN) 将如何应用于包含高斯噪声的一组图像中(图 3)。

 


图3. 添加了高斯噪声的原始图像

    我们首先下载一个包含高斯噪声的图像。

    imshow(noisyRGB);

    由于这是彩色图像,但网络是在灰阶图像上受训的,因此该过程的唯一难点是需要将图像分为三个不同通道:红(R)、绿(G)、蓝(B)。

oisyR = noisyRGB(:,:,1);
noisyG = noisyRGB(:,:,2);
noisyB = noisyRGB(:,:,3);
加载预先训练的 DnCNN 网络:
net= denoisingNetwork('dncnn');
现在我们可以使用它去除每个颜色通道中的噪声。
denoisedR = denoiseImage(noisyR,net);
denoisedG = denoiseImage(noisyG,net);
denoisedB =denoiseImage(noisyB,net);
重新组合经过降噪处理的颜色通道,形成降噪后的 RGB 图像。
denoisedRGB =cat(3,denoisedR,denoisedG,denoisedB);
imshow(denoisedRGB)
title('Denoised Image')
原始(非噪声)图像与降噪图像的快速视觉对比图说明结果是合理的(图 4)。

 


图4. 左:原始(非噪音)图像。右:已降噪图像

    让我们放大几个细节:
rect = [120 440  130  130];
cropped_orig = imcrop(RGB,rect);
cropped_denoise = imcrop(denoisedRGB,rect);
imshowpair(cropped_orig,cropped_denoise,'montage');

    图 5 中的放大视图显示降噪结果造成了一些负面影响。显而易见,原始(非噪声)图像具有更高的清晰度,尤其是屋顶和草地。这一结果可能是可接受的,或者图像需要进一步处理,这取决于它将用于哪些应用。

 


图5. 放大视图

    如果考虑使用 DnCNN 进行图像降噪,请记住,它只能识别其接受过训练的噪声类型,在本例中是高斯噪声。为提高灵活性,您可以使用 MATLAB 和 Deep Learning Toolbox™ 通过预定义层训练自己的网络,也可以训练完全自定义的降噪神经网络。







相关阅读
发表评论
姓名:
联系方式:
评论专区
东南大学 东南大学交通学院 清华大学 同济大学 西南交通大学 北京航空航天大学 上海交通大学 浙江大学
University of Wisconsin - Madison University of Michigan Rensselaer Polytechnic Institute Santa Clara University Rutgers University
交通运输部路网监测与应急处置中心 江苏省交通运输厅 南京智库联盟 江苏交通控股有限公司 江苏高速公路联网营运管理有限公司
中心概况研究动态新闻中心合作交流加入我们
Copyright © 2015 东南大学物联网交通应用研究中心 All Rights Reserved.