我的深度学习入门路线

关键时刻,第一时间送达!

阅读本文需要 6 分钟

1. 前言

说实话,红色石头也是一个美剧迷,特别是一些烧脑的美剧,更是一追再追。前段时间,《西部世界》第二季也完结了。

红色石头一鼓作气,看完之后,大呼过瘾,深深地被其中栩栩如生的人工智能机器人所吸引。不禁感叹:现实世界真的会出现这样厉害的人工智能吗?

这虽然是一个看似遥远的事情,但也真的不好说没有可能!纵观这几年,深度学习发展非常迅速,发展势头一直高歌猛进。

无论是 AlphaGo 最终以 4 :1 战胜李世石,还是苹果 Siri、谷歌翻译、自动驾驶,等等。

深度学习无不在影响着我们的日常生活和行为方式。因此,可以毫不夸张地说,我们有理由相信《西部世界》中的人工智能有望成为现实,说不定哪一天,你的同事就是一个超级人工智能机器人!

深度学习,以深而复杂的神经网络模型为基础,更能挖掘海量数据深层蕴藏的数据规律,具备强大的学习能力。

可以毫不夸张地说,深度学习彻底改变了传统机器学习算法的解决问题方式。下面,我用一张图来做比较。

上图中的 4 条曲线,从下往上分别为传统机器学习算法、规模较小的神经网络、规模中等的神经网络、规模较大的神经网络。

从每条曲线的趋势可以看出,当数据量较少的时候,传统机器学习模型的表现是不错的,与神经网络模型差别不大。

但随着数据量越来越大,传统机器学习模型的性能表现开始增长缓慢,似乎到达了瓶颈。

而神经网络模型的性能仍然表现出较快的上升趋势,且规模越大,性能提升越明显。

这主要是因为深度学习模型网络结构更加复杂,更能从大数据中提取有效的特征,准确性较高。

所以,近些年来,深度学习在处理大数据和建立复杂准确的学习模型方面,有着非常不错的表现。

在机器视觉、图像处理方面,深度学习可以说是带来了革命性的变化。例如,在全球知名的图像识别竞赛 ILSVRC 中,深度学习模型,尤其是各种 CNN 模型在错误率方面,不断刷新纪录,相比之前传统机器学习算法,性能提升有质的飞跃。

从 2010 年开始,ILSVRC 有人开始使用 CNN 模型。转折点是 2012 年, AlexNet 的出现,直接将错误率降低了近 10 个百分点。这是之前所有机器学习模型无法做到的。

2015 年,包含 152 层神经元的 ResNet 模型,竟然将错误率降低至 3.57%,这甚至比人类肉眼识别的准确率还高!

除了在图像识别方面,深度学习在机器翻译领域也取得了飞跃式的发展。基于 RNN 的机器翻译最典型的代表就是谷歌翻译,让机器能够在深度学习中不断完善答案,给用户最想要的信息。

说白了就是更智慧、更精准了。直接改善了之前逐词直译的效果,而是升级为以整个句子为单位进行翻译。从性能上来说,谷歌翻译整合神经网络,翻译质量已经接近人工笔译。

不止这些,深度学习在诸如自动驾驶、推荐系统、人脸识别等领域都取得了重大进展。

近些年来,深度学习发展太快了,正在慢慢改变着我们的生活方式。深度学习技术日新月异,对相关人才的需求也越来越大。

所有的互联网公司,例如 Google、 微软、百度、腾讯等巨头,无不在布局人工智能技术和市场。各大公司也迅速开展了人工智能人才争夺战。

百度、腾讯、阿里巴巴、京东等互联网巨头甚至都在美国硅谷不惜高薪挖掘人工智能人才。现在北京、上海等地,深度学习算法岗位,年薪 3、40w 都十分正常!

不仅如次,人工智能连续两年都被写入政府工作报告中,可见国家对人工智能是相当重视的。

就在今年,我国第一本面向中学生的人工智能教材——《人工智能基础(高中版)》正式发布,人工智能相关课程已经进入高中课堂。

面对这样的人工智能趋势和浪潮,为了不被新技术淘汰,为了获得更好的工作机会和薪资收入,实现人生价值,我们更应该深入了解深度学习,利用深度学习解决实际问题,成为一名优秀的深度学习专家。

2. 如何进行深度学习?

深度学习,是机器学习的一个重要分支和延伸,是包含多隐层的神经网络结构。

深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,从而学习到数据本身最关键的特征。

简单来说,深度学习的核心结构是神经网络,深入了解神经网络,是我们掌握深度学习本质的关键因素。

下面是红色石头总结的深度学习入门路线图:

2.1 编程语言与开发工具

深度学习首选 Python,Python 已经成为深度学习主导性的编程语言。而且,现在许多主流的深度学习框架。

例如 PyTorch、TensorFlow 也都是基于 Python 的。Anaconda 作为 Python 的一个集成管理工具,它把 Python 相关数据计算与分析科学包都集成在了一起,省去了各个安装的麻烦,非常方便。

而且,Anaconda 自带了 Jupyter Notebook,Jupyter Notebook 是一个非常强大的工具,允许使用者为数据分析、教育、文件等任何你可以想到的内容创建漂亮的交互式文档,已迅速成为数据分析、机器学习、深度学习的必备工具。

2.2 夯实深度学习理论基础

有人说深度学习就像一个黑匣子,完全不知道内部发生了什么。也有人说深度学习不需要数学理论,只要会调参数就行了。其实,这两种说法都有失偏颇。掌握基本的深度学习理论非常重要。

例如神经网络的正向传播过程,激活函数的选择与比较,反向传播参数优化的过程,等等。

只有对神经网络模型结构和推导过程有清晰的认识才能更好地建立模型优化直觉,构建性能良好的神经网络模型。而不是做只会使用框架和库,知其然不知其所以然的“调包侠”。

2.3 积累丰富的实战

俗话说:纸上得来终觉浅,觉知此事要躬行!理论与模型的建立都是为了更好地实践,为了解决实际问题。深度学习也是这样,掌握每个理论知识后,更重要的是将理论用于实践。

例如,使用深度学习模型解决图像识别、语音识别等,或者参加 kaggle。通过实战,更能加深自己的理解,帮助自己更加熟练地掌握深度学习应用技巧。

2.4 灵活使用深度学习框架

使用深度学习框架,俗话说灵活地使用“轮子”,方便我们构建更大、更复杂的深度学习模型,能帮助我们更快地构建模型来解决实际问题。

当然,这一步,个人觉得还是要建立在具备扎实的深度学习理论基础上。常用的深度学习框架有 TensorFlow、PyTorch、Keras 等。

简单来说, TensorFlow 适合工业应用构建大型项目,PyTorch 适合学术研究构建小型项目。

个人推荐使用 PyTorch,原因很简单,因为简单易懂。而且,它还弥补了 Tensorflow 静态构图的致命弱点。PyTorch 是可以构建动态计算图。

也就是说你可以随时改变神经网络的结构,而不影响其计算过程。而 Tensorflow 这种静态图模块,一旦搭建好了神经网络, 你想修改结构也不行。

3. 红色石头的学习路线

知道红色石头的读者可能清楚,我比较注重深度学习理论与实践的结合,主张使用通俗、白话的的语言来讲解机器学习、深度学习知识点。这个世界没有学不会的知识,只缺少正确的入门途径!

为了帮助大家更好地入门深度学习,我梳理了以下知识点网络:

  • 一、深度学习预备知识

    • 01:深度学习概述

    • 02:深度学习 Python 必备知识点

    • 03:Anaconda 与 Jupyter Notebook

    • 04:深度学习框架 PyTorch

  • 二、 深度学习核心理论与实战

    • 05:神经网络基础知识

    • 06:浅层神经网络(NN)

    • 07:项目实战:自己动手写一个神经网络模型

    • 08:深层神经网络(DNN)

    • 09:项目实战:让你的神经网络模型越来越深

    • 10:优化神经网络:如何防止过拟合

    • 11:优化神经网络:梯度优化

    • 12:优化神经网络:网络初始化技巧与超参数调试

    • 13:构建神经网络模型的实用建议

    • 14:项目实战:深度优化你的神经网络模型

  • 三、 卷积神经网络 CNN 与 循环神经网络 RNN

    • 15:卷积神经网络(CNN)

    • 16:项目实战:利用 PyTorch 构建 CNN 模型

    • 17:循环神经网络(RNN)

    • 18:项目实战:利用 PyTorch 构建 RNN 模型

重点来了,为了更加详细地对深度学习进行理论解析,讲解实战经验。红色石头已经在 CSDN 的 GitChat 达人课上发布了《深度学习从入门到 Python 实战》课程,将会带大家详细梳理深度学习知识体系。下面是关于本达人课的介绍。

课程内容:

第一部分(第01-04课),主要介绍一些深度学习的预备知识。对深度学习进行简要概述,列举重要的 Python 基础知识,手把手教你搭建本课程需要的开发环境,使用 Anaconda 平台,重点介绍 Jupyter Notebook 的使用以及知名的深度学习框架 PyTorch。

第二部分(第05-14课),主要介绍神经网络的基础,以最简单的两层神经网络入手,详细推导正向传播与反向梯度的算法理论。

然后,从简单网络推导至深度网络,并重点介绍神经网络优化算法及构建神经网络模型的实用建议。每一部分都会使用 Python 构建神经网络模型来解决实际问题。

第三部分(第15-18课),主要介绍卷积神经网络 CNN 和循环神经网络 RNN,重点剖析两种模型的数学原理和推导过程。

最后,利用越来越火的深度学习框架 PyTorch 分别构建 CNN 和 RNN 模型,解决实际问题。

课程特色:

  • 内容深入浅出、理论推导详细。

  • 理论结合实践,在代码实践中巩固知识。

  • 知识体系完善,深度学习知识点各个击破。

本课程将针对深度学习的复杂性和难点进行讲解和分析,主要体现在神经网络模型的数学推导、神经网络模型的优化,以及如何构建一个优秀的深度学习模型解决实际问题。希望通过课程内容的学习,大家可以扫清学习过程中的障碍,再上新台阶。

订阅福利:

  • 原价 39.99,GitChat 新用户购买立享五折优惠。

  • 订购本课程可获得专属海报,分享专属海报每成功邀请一位好友购买,即可获得 25% 的返现奖励,多邀多得,上不封顶,立即提现。

  • 提现流程:请在 GitChat 服务号中点击“我-我的邀请-提现”进行提现。

感兴趣的请扫码试读

(0)

相关推荐

  • 无意中发现了一位美团大佬的深度学习框架……

    "中国有多少数学家投入到人工智能的基础算法研究中?" 这是在上海举办的院士沙龙活动中,中国工程院院士徐匡迪对人工智能的发问,也被称为"徐匡迪之问".中国核心算法 ...

  • Python深度学习基于PyTorch(附完整PPT下载)

    人工智能与算法学习 24篇原创内容 公众号 作者:吴茂贵,资深大数据和人工智能技术专家,就职于中国外汇交易中心,在BI.数据挖掘与分析.数据仓库.机器学习等领域工作超过20年!在基于Spark.Ten ...

  • 浅谈人工智能的学习

    人工智能(AI)的发展是一个从学术研究.行业验证.商业落地.行业平台到智能生态的一层层深入过程,这也是人工智能理想的发展阶段.人工智能的重要性无需赘述,对AI学习对我们来说同样重要,但是如何学习人工智 ...

  • PyTorch入门教程

    摘要: 本文将讲解如何入门PyTorch,包括基础原理知识.numpy与PyTorch的区别以及案例研究实例.介绍PyTorch是一个非常有可能改变深度学习领域前景的Python库.我尝试使用了几星期 ...

  • 2019年上半年收集到的人工智能循环神经网络干货文章

    2019年上半年收集到的人工智能循环神经网络干货文章 机器学习:循环神经网络知识要点 循环神经网络 使用RNNs进行机器翻译--介绍RNN和LSTM网络及其应用 RNN神经网络模型综述 吴恩达深度学习 ...

  • 【每周一本书】之《深度学习入门与实践》

    人工智能如水银泻地般地渗透入了人们生活的方方面面:医疗.交通.金融.资讯.旅游到处都有人工智能技术的身影.人工智能已经打开了一片全新的世界,这个世界里充满了未知与挑战,也充满着惊喜与宝藏. 编辑 | ...

  • 深度学习入门(7)

    参考原文链接

  • 深度学习入门:几幅手稿讲解CNN

    学习深度神经网络方面的算法已经有一段时间了,对目前比较经典的模型也有了一些了解.这种曾经一度低迷的方法现在已经吸引了很多领域的目光,在几年前仅仅存在于研究者想象中的应用,近几年也相继被深度学习方法实现 ...

  • 综述 | 万字长文带你入门近几年深度学习的重要研究成果

    仅做学术分享,如有侵权,联系删除 转载于 :机器之心 这篇综述论文列举出了近年来深度学习的重要研究成果,从方法.架构,以及正则化.优化技术方面进行概述.这篇综述对于刚入门的深度学习新手是一份不错的参考 ...

  • 深度学习地震去噪入门(附程序)

    去噪技术在图像处理最先使用,并不断丰富成熟.图像去噪技术在20世纪下半叶已经成为研究热点.例如:用非局部相似性来优化稀疏方法能提高去噪的性能.字典学习有助于快速移除噪声.先验知识通过平滑噪声图像来恢复 ...

  • 12本深度学习书籍推荐:有入门,有深度

    推荐 12 本能帮助你从零开始学习深度学习的书籍.本文推荐的这些书每一本都有自己的优点,以下这些图书我按照个人推荐进行了排序.大家可以根据介绍,选择适合自己的书来读. 1 Hands-On Machi ...

  • 7本必看入门深度学习书籍

    对于入门深度学习的书籍,计算机视觉专家 Adrian Rosebrock 最近写了篇非常实用的书单,给深度学习新手推荐了7本书籍,最最重要的是,告诉了你最适合看哪些书. 这些书中,有一些理论深厚,主要 ...

  • 零基础入门深度学习(1)

    https://www.zybuluo.com/hanbingtao/note/433855 零基础入门深度学习(1) - 感知器 机器学习 深度学习入门 无论即将到来的是大数据时代还是人工智能时代, ...

  • 人工智能学习路线,文末赠书活动(深度学习Spark机器学习)

    程序IT圈 现在人工智能,机器学习这么火热,很多人想入门却不知道要从哪里入门,从哪里开始学习,该学习些什么内容,下面是我以前看过的一篇关于机器学习的学习入线文章,可能可以帮助到你入门人工智能领域 . ...