传统方法学习IT已不再适用,快速提升的方法原来是这样

当下从事IT行业无非是纯技术人员和非纯技术人员,但是学习的方法、套路还是一样的。

在谈论 『写代码』 时最常提到的领域就是软件工程,它基于计算机科学和应用数学的基础。虽然没有必要成为一名数学家或计算机科学家才能成为软件工程师,但对于大多数人来说,有时候基本的编程概念也很难学习。

就拿数据分析师这个行业来说吧,如果想进阶成为算法工程师,那肯定需要自己尝试去写代码来完成某些特定领域的业务。对新手而言学习数据分析的第一个门槛就是 『机器学习』,因为这个很多人误认为需要很好的数学基础才能掌握机器学习相关算法,例如贝叶斯概率,线性回归等等,其实可以不用那么纠结的。

这里为广大新入行自学的小伙伴分析一下常规的三种方法, 自上而下、自下而上、其他方法。还会列出一些概念的优缺点,以及一些值得考虑的替代方案。

『自下而上』的缺点

学校的大部分内容都是围绕着这种方式来教学、学习的。许多技术和科学研究领域也都是通过这种方式教授的。这就是为什么很多学校的学生出来之后虽然知识储备很丰富,但是一干活就傻眼的原因。回想一下高中或本科学习以及可能从事过的基础学科,例如:数学、生物、化学、物理、计算机等等。是不是老师仅仅教了你知识,缺很少教实际应用的事情。

还是拿乒乓球举例,无论你对空气动力学、材料学、物理力学掌握的多么透彻,但是从来没有真正意义上拿过球拍和其他人上阵对打,那么永远不会成为一名乒乓球运动员。

『自下而上』的优点

但是还是有很多优点的许多优点。我认为其中最重要的是学习者能够获得对主题的完整理解,只要花时间掌握每个组成部分(也就是常说的系统性学习)。将问题分解成小的、连贯的片段。在编程世界中,理解任何语言、框架或工具的重要部分是一个漫长而困难的过程。

在学习一门新语言时,自下而上的方法对于需要在高层次上理解一个概念以便对转向另一个概念充满信心的学习者很有用。例如使用自下而上的方法学习 JavaScript 的基础知识可能涉及学习原始值,如数字、字符串、布尔值、数组和 null/undefined,然后转到对象和函数,最后转到范围和控制流。理想情况下每个概念都将建立在以前的概念之上,为学习下一个知识点做铺垫。

自上而下的学习

是一个一个面向宏观的、实用的过程,让学习者沉浸在主题中。自上而下方法的优先级是为问题或主题领域提供更广泛的视角,而不必详细介绍特定组件如何协同工作。将自上而下学习应用于编程的一个很好的例子是给新开发人员一个他们需要使用不熟悉的语言或工具集完成的项目。自上而下的方法不是依赖于对孤立组件的掌握进展,而是让学习者通过探索和实验来理解各个部分。

比如我现在教我的孩子读书:

  • 从产生兴趣开始,比如好看的书籍封面。
  • 是直接进行发音阅读而不是拼音。
  • 记住最常用的单词、它们的发音以及如何拼写。
  • 学习启发式方法来处理未知生词。
  • 在有(无)父母的监督下通读书籍。

但是孩子不懂为什么要读书,只是单单从兴趣出发,例如:

  • 阅读电视节目(广告)的字幕。
  • 阅读有关他喜欢的主题的故事,例如汪汪队。
  • 我们外出时阅读标志和菜单。

同样他也获得了可以跟踪并看到改进的结果。

  • 拥有更多的词汇量。
  • 能够独立流畅的阅读习惯。
  • 可以阅读越来越复杂的书籍。

以下是他目前阶段没有必要学习的内容:

  • 词类定义(动词、名词、副词等)
  • 语法规则。
  • 标点符 规则。
  • 人类语言理论。

如何学开车h1>

你会开车吗怎么学会开车的r>

当我开始学习编程和软件工程时,那是在工作以后是。因为对编程一无所知,因此有着这种想法,想从头学习:

  • 语言理论
  • 数据类型
  • 控制流结构
  • 数据结构

当我们开始编写代码时,受到是在命令行上并受到编译器问题、路径问题以及与实际学习编程无关的一大堆问题的困扰,因为没有人能把这个窗户纸帮我捅破,所以走了很多弯路。

讨厌编程strong>

我最终开始在一些受到用户重视的复杂系统上担任专业软件工程师。然后做了一门课程,展示了如何创建图形用户界面。

还用编程做了一些游戏的外挂,比如AI打王者荣耀。

我将无聊的东西与我真正喜欢的东西联系起来:用代码可以解决问题的,其他人也可以使用。我将它与重要的事情联系起来,它不再抽象和深奥。

至少对我和许多像我一样的开发人员来说,像我这样热情而没有时间的学生可以将数年的时间、精力和成果/成果浪费在自己真正热爱的事情上。

如何学习机器学习h1>

那么,是如何处理机器学习这个主题的呢r>

拉开机器学习的数学(如线性代数、微积分、统计学、概率等)的帷幕时,可以使用完全相同的自下而上的方法。

选择一个对重要的目标或结果,并将其用作镜头、过滤器或筛选主题,以研究和学习获得该结果所需的深度。

例如,假设选择线性代数。

目标可能是了解 SVD 或 PCA。这些是机器学习中用于数据投影、数据缩减和特征选择类型任务的方法。

自自下而上的方法可能是:

  • 在 scikit-learn 等高级库中实现该方法并获得结果。
  • 在 NumPy/SciPy 等低级库中实现该方法并重现结果。
  • 直接使用 NumPy 或 Octave 中的矩阵和矩阵运算来实现该方法。
  • 研究和探索所涉及的矩阵算术运算。
  • 研究和探索所涉及的矩阵分解操作。
  • 近似矩阵特征分解的研究方法。

目标动力,你可以让你的好奇心定义学习的深度。

按照这种方式,学习数学与学习编程、机器学习或其他技术学科中的任何其他主题没有什么不同。

它的效率很高,而且很有趣!

文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览211429 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月28日
下一篇 2022年2月28日

相关推荐