文科生如何理解卷积神经网络?

简介: 不愿意看那一堆公式符号,却想知道卷积神经网络(Convolutional Neural Network)如何做图像分辨?分享一段我给自己研究生的讲解答疑视频,希望对你有帮助。

不愿意看那一堆公式符号,却想知道卷积神经网络(Convolutional Neural Network)如何做图像分辨?分享一段我给自己研究生的讲解答疑视频,希望对你有帮助。

茫然

常有朋友问,我的Python和数据科学课程开在哪个学期,他们想过来蹭课。

不好意思,这个真没有。

我写了一系列的数据科学教程。但原本只是给我自己的研究生赋能,并非课程讲义。

他们有的人,本科学的专业,与技术毫不沾边。

但是情报学是个交叉学科。尤其是近几年,与数据科学融合愈发深入。

往周围看看,其他社会科学专业,例如新闻学、心理学、社会学、政治学等,都在利用开放互联网数据集,做以往无法想象的大规模信息分析。

在这种情况下,你一个情报学研究生,处在原本就有数据分析优势的学科,却一点儿也不掌握数据科学技能,出门好意思跟其他同学打招呼吗?

于是我给他们写教程,写尽量让文科生能看懂的教程。

事实证明,他们能跟着教程,做出来结果。

但是,我在《Python编程遇问题,文科生怎么办?》中说过,“照葫芦画葫芦”,只是你入门数据科学的第一步。

你需要理解技术应用的前提和方法,这样才能应对自己的研究问题,利用适当工具,加以解决。

本周的组会上,我听一年级研究生论文翻译展示,明显感觉他们对于卷积神经网络结构与原理,依然不清楚。

我很奇怪。

因为我专门为他们写过至少2篇文章,都是讲如何利用卷积神经网络做图像处理的。

而且,他们还用自己的数据集,重新做过训练与测试。

在文章里,我还给他们介绍了深度学习模型的基本原理,并且在文末详细列出了参考资料,供延伸阅读。

这么长时间过去了,怎么还是懵懵懂懂?

倘在从前,我肯定要训人了。

因为怎么看,这都是学习态度不端正的问题。

但是,有了同理心训练基础,我突然能够理解他们的茫然与苦恼了。

同理

他们看到的延伸阅读材料,像一个黑洞。

这个黑洞吸收他们的时间和工作量,却看不到任何正反馈。

因为他们缺乏基础。

要学好深度神经网络,并不需要多么高人一等的智慧。但是一些基础要件却很重要。这些基础包括:

  • 编程
  • 数学
  • 英语

如果有这3个基础,你根本无需导师帮助。自修 Coursera 上 Andrew Ng 《深度学习》这样的精品MOOC课程,就会让你成长迅速,大呼过瘾。

可是对国内的文科生来说,上面列出的几个基础要件,可谓是“三座大山”,能压得他们寸步难行。

编程没学过,数学早忘了,英语不过关。

你让他们一点一滴从头学起,全部补齐?

即便真补完整了,也该毕业了。

还做什么研究?

诚然,老师可以帮助他们精简学习模块。

编程不好,没关系。

不要去碰 Tensorflow 的神经网络结构搭建细节语句�,只要会用最简单的 TuriCreate 调用迁移学习工具,几行代码搞定图像识别。

英语不好,没事儿。

我把教程给你用中文写出来。你直接照着做,就能出结果。

但是数学不好,理解不了神经网络模型的原理,怎么办?

从前我也是束手无策。

要么把整个工具当作黑箱,只知道输入输出,就能做出结果来。

但这是用户的态度,不是研究者的态度。

这种低水准认知,可能让你有机会充分实践什么叫“垃圾进,垃圾出”。

很多对统计学一无所知的学生,不就是这么玩儿SPSS的吗?

想到这里,我突然灵光一闪。

借鉴

统计学对很多文科生,也很难学。

他们是通过什么途径学会的呢?

是一种“有限度拆解”。

只学会导入数据,点按钮出图表,显然不够用。

但是从头推各种分布的公式,讲解阈值设定(例如那个神奇的0.7)的原理……人早就跑掉了。

怎么办?

我想起来了李连江教授的这本书。

李老师的态度,是原理要讲清楚,不能让学生随便“拷打”数据。

但是又不能深入到底层数学原理,那样很多文科生根本就看不懂,甚至会很快丧失掉兴趣。

他的办法,简单而实际。

就是举例子和打比方。

用一个SPSS自带的雇员例子,他解释了好几章的内容。从数据的类型,一直到多元回归。

因为有了实际样例,学生充分代入,就好理解。

讲到因子分析,做旋转。这个怎么讲?

他用了两个比喻。

一个是三大男高音,代表3个因子。

三大男高音同台的演唱会,观众如潮。

有的观众爱听多明哥,有的爱听卡雷拉斯,有的是冲着帕瓦罗蒂来的。

但是观众们都坐在一起,你分不清哪个观众究竟是哪位歌唱家的粉丝。

怎么办?

让男高音们分开唱,唱对台戏

这是第二个比喻。

一旦有对台戏,观众选择的座位,就明确代表了态度。

某个问项,归属于哪个因子,也同样可以通过因子唱对台戏(旋转)来分辨。

读了《戏说统计》,我觉得讲得真好。

但是我后来看了李老师的课程视频,觉得收获更大。

因为视频的信息传播更加丰富。

同样是刚才的例子,因为有了图像化解读,学生可以理解得更加透彻而深刻。

尤其是,每当讲到研究中统计结果出来,需要一些“不足为外人道”、“社会科学界有共识”的操作手法,李老师的笑容,总能让人跟着忍俊不禁。

讲解

有了李连江老师的例子做参考,我用组会的剩余时间,以板书的形式,一步步为研究生们讲解了以下内容:

  • 深度神经网络的基本结构;
  • 神经元的计算功能实现;
  • 如何对深度神经网络做训练;
  • 如何选择最优的模型(超参数调整);
  • 卷积神经网络基本原理;
  • 迁移学习的实现;
  • 疑问解答。

我没有追求最大化的严谨,也没有对例子的通用性和实用性做更多的要求,只是从头到尾,把一个简化到极致的图像识别模型,与客户流失预判模型进行了对比讲解。

同样的,我用了样例,也用了打比方,尽力把听讲的认知负荷,降到最低。

过程中,我要求学生随时提问。因此交互很密切。

讲解完毕后,他们几个表示,这下终于弄懂了卷积神经网络的基础知识。

由于最近阎教练的工作坊训练了视觉记录行为,我讲了几分钟后,突然觉察到这一段可以录下来,分享给更多人。

于是我让坐在前排的杨文同学,帮我录制了视频。

视频中没有能包含最初的几分钟内容,即刚才列表的前两个部分。颇为遗憾。

不过没关系,过一段时间后,我准备组会时让研究生上讲台,把这一段复述一遍,作为学习效果检查。

如果他们做得好,我会录下来,分享给大家。

他们还不知道我的打算。

所以你看见后,别告诉他们。嘘!

这段视频时长接近30分钟,不算短。

如果你和他们一样,读过了我的《如何用Python和深度神经网络锁定即将流失的客户?》、《如何用Python和深度神经网络识别图像?》和《如何用Python和深度神经网络寻找近似图片?》这几篇文章,但是对于深度神经网络的原理构造还是迷茫,建议你从头看到尾,可能会有一些收获。

欢迎点击这个链接,观看视频。

有言在先,因为是即兴讲解,没有任何准备。内容如有疏漏,在所难免。

欢迎各位高手帮助指出纰漏,我会在将来的讲解中,迭代改进。

提前谢过!

讨论

你是如何学会卷积神经网络工作原理的?对于研究中遇到的数学公式,你有没有什么更好的办法理解和掌握呢?欢迎留言,把你的经验和思考分享给大家,我们一起交流讨论。

如果你对数据科学感兴趣,不妨阅读我的系列教程索引贴《如何高效入门数据科学?》,里面还有更多的有趣问题及解法。

目录
相关文章
|
3天前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
92 55
|
12天前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
83 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
16天前
|
机器学习/深度学习 资源调度 算法
图卷积网络入门:数学基础与架构设计
本文系统地阐述了图卷积网络的架构原理。通过简化数学表述并聚焦于矩阵运算的核心概念,详细解析了GCN的工作机制。
43 3
图卷积网络入门:数学基础与架构设计
|
12天前
|
机器学习/深度学习 人工智能 自然语言处理
深入理解深度学习中的卷积神经网络(CNN)##
在当今的人工智能领域,深度学习已成为推动技术革新的核心力量之一。其中,卷积神经网络(CNN)作为深度学习的一个重要分支,因其在图像和视频处理方面的卓越性能而备受关注。本文旨在深入探讨CNN的基本原理、结构及其在实际应用中的表现,为读者提供一个全面了解CNN的窗口。 ##
|
22天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN): 从理论到实践
本文将深入浅出地介绍卷积神经网络(CNN)的工作原理,并带领读者通过一个简单的图像分类项目,实现从理论到代码的转变。我们将探索CNN如何识别和处理图像数据,并通过实例展示如何训练一个有效的CNN模型。无论你是深度学习领域的新手还是希望扩展你的技术栈,这篇文章都将为你提供宝贵的知识和技能。
71 7
|
19天前
|
机器学习/深度学习 自然语言处理 算法
深入理解深度学习中的卷积神经网络(CNN)
深入理解深度学习中的卷积神经网络(CNN)
27 1
|
25天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
本文旨在通过深入浅出的方式,为读者揭示卷积神经网络(CNN)的神秘面纱,并展示其在图像识别领域的实际应用。我们将从CNN的基本概念出发,逐步深入到网络结构、工作原理以及训练过程,最后通过一个实际的代码示例,带领读者体验CNN的强大功能。无论你是深度学习的初学者,还是希望进一步了解CNN的专业人士,这篇文章都将为你提供有价值的信息和启发。
|
22天前
|
机器学习/深度学习 人工智能 自然语言处理
探索深度学习中的卷积神经网络(CNN)及其在现代应用中的革新
探索深度学习中的卷积神经网络(CNN)及其在现代应用中的革新
|
26天前
|
机器学习/深度学习 人工智能 网络架构
深入理解深度学习中的卷积神经网络(CNN)
深入理解深度学习中的卷积神经网络(CNN)
39 1
|
19天前
|
机器学习/深度学习 人工智能 自然语言处理
深入理解深度学习中的卷积神经网络(CNN)
深入理解深度学习中的卷积神经网络(CNN)