我是一名生物技术专业的学生,目前正在研究单粒子跟踪。对于我的工作,我需要使用深度学习的各个方面(CNN、RNN 和对象分割),但我不熟悉这些主题。我对python有一些先验知识。
那么,在进入深度学习之前我必须先学习机器学习,还是可以跳过机器学习?
在深度学习之前学习机器学习有什么好处和坏处?
我是一名生物技术专业的学生,目前正在研究单粒子跟踪。对于我的工作,我需要使用深度学习的各个方面(CNN、RNN 和对象分割),但我不熟悉这些主题。我对python有一些先验知识。
那么,在进入深度学习之前我必须先学习机器学习,还是可以跳过机器学习?
在深度学习之前学习机器学习有什么好处和坏处?
这个问题没有真正的意义:深度学习是机器学习的一个子主题,所以你不能真正“跳过”它。这有点像“我想学三角学,但我需要先学几何吗?”
话虽如此,为了理解深度学习,你应该真正了解机器学习的一般原理,否则你不会理解它。或者,更重要的是,你不会理解深度学习可以应用于哪些问题,以及哪些问题可以用其他方法更好地解决。
您不需要详细介绍,但至少应该获得一个概述。
就像 Oliver Mason 提到的,深度学习只是机器学习的一个子领域。为了有效地学习深度学习,您需要具备某些先决条件,例如机器学习的基本原理和具有一些编程知识的简单人工神经网络的基础知识(Python 是首选语言)。话虽如此,您不需要了解每一个机器学习算法及其实践。
现在,如果深度学习恰好只是这个特定项目所需的工具并且没有时间深入了解它,那么我建议您看一下 python 库,如 Tensorflow、pytorch、scikit learn、scipy、open cv 等。您可以开始使用 DL、ML 模型以及这些库和许多其他库,而无需知道它是底层算法和实现。
以很少的机器学习知识开始深度学习的最佳课程之一是 Andrew ng 在 coursera 上的 deep learning.ai 课程(您可以旁听课程并免费获得所有课程资料)
这是课程的链接:Deep learning.ai
机器学习使用算法来消化数据集,根据分析的数据得出结论,并利用这些结论以最有效的方式完成任务。这种能力是机器学习与从一开始就使用特定命令序列编程的机器之间的根本区别。机器学习具有动态完成任务的能力。
深度学习是实现机器学习的方法之一,旨在使用人工神经网络模拟人脑的工作方式。深度学习使用许多算法作为“神经元”来共同确定和消化数据集中的某些特征。
与旨在完成某些任务的通用机器学习程序相比,深度学习程序通常具有更复杂的功能来研究、消化和分类数据。
机器学习模型需要数据来学习和获得参数估计,因此可以使用的数据越多,机器学习程序就会越智能。此外,操作机器学习模型——尤其是用于深度学习的逻辑网络——需要很高的计算能力。这是因为深度学习模型必须同时操作多个过程,尤其是在训练阶段。在训练阶段,机器学习模型必须处理非常大量的数据才能被归类为参考。
那么,在进入深度学习之前我必须先学习机器学习,还是可以跳过机器学习?
引用Wikipedia的话,“深度学习(也称为深度结构化学习或差分编程)是更广泛的机器学习方法家族的一部分,该方法基于具有表示学习的人工神经网络。”
话虽如此,最好先了解机器学习的基础知识,这样您才能完全了解深度学习的工作原理,以及如何有效和高效地应用它。但是,您始终可以直接跳到深度学习而不会遇到任何重大问题,因为已经有很多库支持 Python 上的深度学习,例如TensorFlow。
在深度学习之前学习机器学习有什么好处和坏处?
优点:
由于深度学习是机器学习的一个子集,因此拥有有关机器学习和其他机器学习算法的基础知识将是有益的。
缺点:
您可能(不)浪费时间和精力来学习您不会使用的东西。