卷积神经网络(CNN)之一维卷积、二维卷积、三维卷积详解
<div id="post_detail">
卷积神经网络(CNN)之一维卷积、二维卷积、三维卷积详解
作者:szx_spark
由于计算机视觉的大红大紫,二维卷积的用处范围最广。因此本文首先介绍二维卷积,之后再介绍一维卷积与三维卷积的具体流程,并描述其各自的具体应用。
1. 二维卷积
图中的输入的数据维度为,过滤器大小为,二者做卷积,输出的数据维度为()。如果你对卷积维度的计算不清楚,可以参考我之前的博客吴恩达深度学习笔记(deeplearning.ai)之卷积神经网络(CNN)(上)。
上述内容没有引入channel的概念,也可以说channel的数量为1。如果将二维卷积中输入的channel的数量变为3,即输入的数据维度变为()。由于卷积操作中过滤器的channel数量必须与输入数据的channel数量相同,过滤器大小也变为。在卷积的过程中,过滤器与数据在channel方向分别卷积,之后将卷积后的数值相加,即执行次3个数值相加的操作,最终输出的数据维度为。
以上都是在过滤器数量为1的情况下所进行的讨论。如果将过滤器的数量增加至16,即16个大小为的过滤器,最终输出的数据维度就变为。可以理解为分别执行每个过滤器的卷积操作,最后将每个卷积的输出在第三个维度(channel 维度)上进行拼接。
二维卷积常用于计算机视觉、图像处理领域。
2. 一维卷积
图中的输入的数据维度为8,过滤器的维度为5。与二维卷积类似,卷积后输出的数据维度为。
如果过滤器数量仍为1,输入数据的channel数量变为16,即输入数据维度为。这里channel的概念相当于自然语言处理中的embedding,而该输入数据代表8个单词,其中每个单词的词向量维度大小为16。在这种情况下,过滤器的维度由变为,最终输出的数据维度仍为。
如果过滤器数量为,那么输出的数据维度就变为。
一维卷积常用于序列模型,自然语言处理领域。
3. 三维卷积
这里采用代数的方式对三维卷积进行介绍,具体思想与一维卷积、二维卷积相同。
假设输入数据的大小为,channel数为,过滤器大小为,即过滤器维度为(一般不写channel的维度),过滤器数量为。
基于上述情况,三维卷积最终的输出为。该公式对于一维卷积、二维卷积仍然有效,只有去掉不相干的输入数据维度就行。
三维卷积常用于医学领域(CT影响),视频处理领域(检测动作及人物行为)。
</div>
<div class="postDesc">posted @ <span id="post-date">2018-02-12 19:55</span> <a href="https://www.cnblogs.com/szxspark/">szx_spark</a> 阅读(<span id="post_view_count">33325</span>) 评论(<span id="post_comment_count">2</span>) <a href="https://i.cnblogs.com/EditPosts.aspx?postid=8445406" rel="nofollow">编辑</a> <a href="#" onclick="AddToWz(8445406);return false;">收藏</a></div>
</div>
<script src="//common.cnblogs.com/highlight/9.12.0/highlight.min.js"></script><script>markdown_highlight();</script><script type="text/javascript">var allowComments=true,cb_blogId=375231,cb_entryId=8445406,cb_blogApp=currentBlogApp,cb_blogUserGuid='f55a01d5-ba2a-4a3b-851a-08d49c352df3',cb_entryCreatedDate='2018/2/12 19:55:00';loadViewCount(cb_entryId);var cb_postType=1;var isMarkdown=true;</script>
<div class="feedbackItem">
<div class="feedbackListSubtitle">
<div class="feedbackManage">
<span class="comment_actions"><a href="javascript:void(0);" onclick="return ReplyComment(4281410,'uwzZBDe1o3C4+cHXiGaACTgf8CJ9VlbneIQL8TlwaF2K4o5e7slw3A==')">回复</a><a href="javascript:void(0);" onclick="return QuoteComment(4281410,'uwzZBDe1o3C4+cHXiGaACTgf8CJ9VlbneIQL8TlwaF2K4o5e7slw3A==')">引用</a></span>
</div>
<a href="#4281410" class="layer">#1楼</a><a name="4281410" id="comment_anchor_4281410"></a> <span class="comment_date">2019-06-17 10:01</span> <a id="a_comment_author_4281410" href="http://home.cnblogs.com/u/1240372/" target="_blank">李莫愁</a> <a href="http://msg.cnblogs.com/send/%E6%9D%8E%E8%8E%AB%E6%84%81" title="发送站内短消息" class="sendMsg2This"> </a>
</div>
<div class="feedbackCon">
<div id="comment_body_4281410" class="blog_comment_body">作者您好,感谢您的分享,内容很详细,很有帮助。<br>在此纠正一个小错误,在1二维卷积中,第三条,当过滤器数量增加到16时,过滤器的大小应该时5*5*16。</div><div class="comment_vote"><a href="javascript:void(0);" class="comment_digg" onclick="return voteComment(4281410,'Digg',this)">支持(0)</a><a href="javascript:void(0);" class="comment_bury" onclick="return voteComment(4281410,'Bury',this)">反对(0)</a></div>
</div>
</div>
<div class="feedbackItem">
<div class="feedbackListSubtitle">
<div class="feedbackManage">
<span class="comment_actions"><a href="javascript:void(0);" onclick="return ReplyComment(4281411,'uwzZBDe1o3C4+cHXiGaACTgf8CJ9VlbneIQL8TlwaF2K4o5e7slw3A==')">回复</a><a href="javascript:void(0);" onclick="return QuoteComment(4281411,'uwzZBDe1o3C4+cHXiGaACTgf8CJ9VlbneIQL8TlwaF2K4o5e7slw3A==')">引用</a></span>
</div>
<a href="#4281411" class="layer">#2楼</a><a name="4281411" id="comment_anchor_4281411"></a><span id="comment-maxId" style="display:none;">4281411</span><span id="comment-maxDate" style="display:none;">2019/6/17 10:02:55</span> <span class="comment_date">2019-06-17 10:02</span> <a id="a_comment_author_4281411" href="http://home.cnblogs.com/u/1240372/" target="_blank">李莫愁</a> <a href="http://msg.cnblogs.com/send/%E6%9D%8E%E8%8E%AB%E6%84%81" title="发送站内短消息" class="sendMsg2This"> </a>
</div>
<div class="feedbackCon">
<div id="comment_body_4281411" class="blog_comment_body">16个5*5*3</div><div class="comment_vote"><a href="javascript:void(0);" class="comment_digg" onclick="return voteComment(4281411,'Digg',this)">支持(0)</a><a href="javascript:void(0);" class="comment_bury" onclick="return voteComment(4281411,'Bury',this)">反对(0)</a></div>
</div>
</div>
<div id="comments_pager_bottom"></div></div><script type="text/javascript">var commentManager = new blogCommentManager();commentManager.renderComments(0);</script>
</div><!--end: forFlow -->
</div>
昵称:
不改了 退出 订阅评论
[Ctrl+Enter快捷键提交]
【前端】SpreadJS表格控件,可嵌入系统开发的在线Excel
【推荐】程序员问答平台,解决您开发中遇到的技术难题
· 卷积神经网络(CNN)中卷积的实现
· 卷积神经网络(CNN)模型结构
· 卷积神经网络CNN理解
· 吴恩达深度学习笔记(deeplearning.ai)之卷积神经网络(CNN)(下)
· MXNET:卷积神经网络基础
· 倪光南:未来RISC-V很可能成为世界主流的CPU之一
· 千克的变迁 | 大家谈
· 比亚迪与丰田达成合作:新车型2025年前在华投放
· 研究人员研发出具有强大人工神经系统的皮肤:异步编码电子皮肤
· 盲人看到的世界真是黑漆漆一片吗?
» 更多新闻...