来源:大数据文摘

本文约2600字,建议阅读6分钟。

自学是一门需要自律和付出才能掌握的艺术。

时间和成本是人们在尝试学习数据科学,人工智能或机器学习时面临的重大阻碍。自学是一门需要自律和付出才能掌握的艺术。如果处理得当,你能灵活地将学习与工作相结合。

然而,人工智能或机器学习的开始阶段非常艰难,但是请相信我这样的担心是值得的。自学时取得良好进展的关键是按照自己的节奏学习。

在这篇文章中,我将分享一个期望学习数据科学,人工智能和机器学习,以及在学习其他新事物方面取得良好的进步的人可以遵循的道路。我还将分享我个人使用的资源链接,并毫无疑问地推荐这些材料。

学一些数学

虽然听起来很烦人,但是在这个领域中数学非常重要。我可以肯定地说,任何阅读这篇文章的人都具有高中数学的一些基础知识或中级知识。这是一个好的开始,但在数据科学,人工智能和机器学习领域,这些还远远不够。

你需要进一步深入研究,并学习一些统计,代数和其他领域的概念。我会整理一个主题和资源列表,以帮助你学习数据科学中的数学,但是Ibrahim Sharaf ElDen在这篇文章中已经完美地做到了。

相关报道:

https://towardsdatascience.com/mathematics-for-data-science-e53939ee8306?gi=e0a64546b594

学会编程

作为初学者,不要直接开始学习编写用于机器学习的代码,而应该先学一般的编程核心概念。了解编程的全部内容,了解现有代码的类型以及如何正确编写代码。这一点非常重要,因为你将在从事该领域的其余时光中受用于这些基本概念。花点时间在这步当中,而不要急于学习高级的东西,了解此步骤中的大多数内容将决定你在行业中的表现。

你可以在在里找到非常好的介绍编程和计算机科学的视频。这个视频将带你全面了解编程和计算机科学的所有重要概念。花点时间,并确保你了解当中的每一点。

相关链接:

https://www.youtube.com/watch?v=zOjov-2OZ0E

熟练使用一种编程语言

如今,数据科学家,人工智能和机器学习工程师使用多种语言来完成工作,其中最常用的语言是Python,R,Java,Julia和SQL。也可以使用许多其他语言,但出于多种原因,我列出的语言是最常用的语言:

  • 如果你有足够的学习时间并能坚持,那么它们很容易学会并且可以快速用于开发;

  • 它们使你可以用更少的代码做更多的事情;

  • 它们有一个良好而稳固的技术社区,可以在遇到任何问题时为你提供帮助和支持;

  • 他们拥有你作为数据科学家,人工智能或机器学习工程师所需的几乎所有库和软件包;

  • 它们是开源的,可以免费使用。

学习一种以上的语言绝对是没有错的,事实上,了解一种以上的语言是有好处的。但你必须花时间,并避免同时学习多种语言,因为这可能会使你感到困惑,并使你暂时迷失方向。花时间,一次学习一种语言,并确保仅学习职业所需的部分。我建议你先学习Python,因为它是一种相对容易理解的语言。我还建议你在学习用于数据科学和人工智能 / 机器学习的Python之前先学习一般的Python。

相关链接:

https://www.youtube.com/watch?v=r-uOLxNrNk8

https://www.youtube.com/watch?v=rfscVS0vtbw&t=5s

学习寻找数据

数据不是天上掉下来的,有时根本没有数据供你使用,但是无论如何,你都必须找到一种获取可以使用的数据的方法。与你合作的组织可能有一个很好的数据收集系统,如果有的话,那么这对你来说是一个加分。否则,你必须找到一种获取数据的方法,不仅可以获取任何数据,还能获取可以用来实现目标的高质量数据。

获取数据并不直接意味着挖掘数据,它是数据挖掘下的一个过程。你可以在互联网上的许多地方获得免费和开源的数据,有时你可能不得不从网站上抓取数据。网络抓取非常重要,我恳请每个人都学习它,因为在你作为数据科学家,人工智能或机器学习工程师的职业生涯中可能会需要它。这是有关网络抓取的好教程。

课程链接:

https://www.youtube.com/watch?v=0_VZ7NpVw1Y

数据也可能保存在数据库中,因此作为数据科学家,人工智能或机器学习工程师,你必须了解一些数据库管理知识,以便能够连接到数据库并直接进行工作。在此阶段,SQL知识非常重要。你可以在此处学习相关知识。

相关链接:

https://www.youtube.com/watch?v=sTiWTx0ifaM&t=15s

学会做数据处理

这通常称为数据整理。此过程涉及清洗你拥有的数据,这可以通过对你拥有的数据执行一些探索性数据分析并删除数据中不需要的部分来完成。该过程还涉及将你拥有的数据构造为可以使用的形式。这个阶段是从事数据科学,人工智能或机器学习项目中最疲惫的部分。在学习过程中,你使用的大多数示例数据都已经做过预处理,但是现实世界中的数据可能没有经过任何处理阶段。作为一个渴望在此领域做得很好的人,你应该找到一些现实世界的数据并加以处理。

虽然在几乎任何地方都能找到真实世界的数据,但Kaggle是全球公司获取真实世界数据的绝佳场所。数据整理或处理是一项非常艰巨的任务,但如果你具备始终如一的奉献精神和坚持力,这对你而言就可能是一件非常有趣的事情了。

你可以在此处找到剑桥的教授关于数据整理的精彩演讲:

https://www.youtube.com/watch?v=sz_dsktIjt4

学会数据可视化

作为数据科学家,人工智能或机器学习工程师,也不一定意味着你所在的公司或团队中的每个人都将能够理解你所在领域的技术或原始格式的数据。这就是为什么需要学习数据可视化。数据可视化基本上是指以图形形式显示数据的过程,以便使任何人,无论他们具不具备相关背景,都可以理解数据的含义。

有许多种可视化数据的方法。作为程序员,编写代码来进行数据可视化应该是我们的首选方法,因为这是快速且无成本的。可以使用所用的编程语言附带的开源库来编写代码进行数据可视化。Matplotlib,Seaborn和Bokeh都是我们可以用来可视化数据的Python库。

你可以在此处找到有关使用Matplotlib进行数据可视化的视频教程:

https://www.youtube.com/watch?v=yZTBMMdPOww

可视化数据的另一种方法是使用诸如Tableau之类的闭源工具,它们可用于进行更优雅和复杂的可视化,但它是付费的。Tableau是最常见的工具,它是我个人经常使用的工具。我会建议所有人学习使用Tableau。

你可以在此处找到有关使用Tableau的很好的教程:

https://www.youtube.com/watch?v=aHaOIvR00So

人工智能和机器学习

人工智能和机器学习更像是数据科学的子集,因为它们也是由数据驱动的。它们指的是训练机器或其他无生命物体所涉及的过程,即通过向它们提供经过良好处理的数据来使其表现得像人。通过逐步指导机器,就可以教机器去做人类可以做的许多事情。在这种情况下,可以将机器想象为完全没有知识,但逐渐学会识别物体,说话,从错误中学习并变得更好的婴儿。我们也可以用相同的方式教机器来完成这些事情中的大多数。

人工智能和机器学习基本上是通过使用许多数学算法来赋予机器生命的过程。人工智能和机器学习的全部潜力仍然未知,因为它还是在不断进步的领域之一。但是目前,人工智能和机器学习已广泛用于认知任务,例如对象检测和识别,面部识别,语音识别和自然语言处理,欺诈和垃圾邮件检测等。

我将继续深入探讨人工智能和机器学习,但现在,我希望你在这里了解人工智能和机器学习的一般应用:

https://www.youtube.com/watch?v=5hNK7-N23eU

从这个视频资源中深入学习机器学习:

https://www.youtube.com/watch?v=GwIo3gDZCVQ&t=5s

在这些视频的结尾,你应该已经学习了有关机器学习的初学者和中级知识,了解了许多可用的机器学习算法,它们的作用以及如何使用它们。现在,你应该已经准备好构建第一个简单的机器学习模型了。

你可以在Victor Roman的这篇文章的帮助下进行操作:

https://towardsdatascience.com/machine-learning-general-process-8f1b510bd8af

学会让在网络上部署你的机器学习模型

通过部署你用机器学习构建的模型,你就可以将其提供给网络上的每个人。为此,需要对Web开发有很好的了解,因为你需要创建一个网页或一组网页来容纳模型。你网站的前端还需要与包含模型的后端进行通信。为此,你还需要知道如何构建和集成API,以处理这些通信。

如果你打算通过管道或Docker容器在云服务器上部署机器学习模型,则可能需要对云计算和DevOP有很好的了解。部署机器学习模型的方法有很多,但首先,我建议你学习如何使用Python网络框架Flask部署机器学习模型。

可以在这里找到一个很好的教程:

https://www.youtube.com/watch?v=UbCWoMf80PY

找一个导师

自学是惊人的,但是没有什么比直接向行内专业人士请教更好。这是因为你可以学到具有实际意义的概念和其他只有实践经验才能学到的东西。拥有一名导师有很多好处,但并不是每个导师都能对你的职业生涯或整个人生产生影响。这就是为什么拥有一个良好的导师很重要。

Notitia AI是一个很好的平台:

https://notitia.site/

可以在数据科学,人工智能和机器学习方面从初学者到专家水平进行培训,在该平台上,你将被指派一名私人导师,他将亲自和专业地协助你在所选领域的发展。它也是你能找到的的最实惠的网课培训和指导平台。

但请注意,仅参加课程并从在线资源中学习不会使你成为数据科学家,人工智能或机器学习工程师。你必须获得在这些领域提供认证的机构的证书,并且某些工作职位还需要你具有一定的学历。花些时间学习,获得认证或学位,你将准备好上岸。

相关报道:

https://towardsdatascience.com/the-self-learning-path-to-becoming-a-data-scientist-ai-or-ml-engineer-9ab3a97ca635

编辑:黄继彦

校对:林亦霖

成为数据科学家、人工智能和机器学习工程师的自学之路相关推荐

  1. 大数据、人工智能和机器学习之间,主要是什么关系?

    大数据是人工智能和机器学习的基础 人工智能和机器学习将会对制造业产生巨大影响.有了这些技术,制造商将获得解决人类无法解决的问题所需的计算能力.最终将能够为制造商几个世纪以来一直在寻求的生产问题提供规范 ...

  2. Java语言开发在线购物推荐网 购物商城推荐系统 基于用户、物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)开发框架 大数据、人工智能、机器学习项目开发

    Java语言开发在线购物推荐网 购物商城推荐系统 基于用户.物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)开发框架 大数据.人工智能.机器学习项目开发ShopRec ...

  3. Java语言开发在线音乐推荐网 音乐推荐系统 网易云音乐爬虫 基于用户、物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)框架 大数据、人工智能、机器学习项目开发

    Java语言开发在线音乐推荐网 音乐推荐系统 网易云音乐爬虫 基于用户.物品的协同过滤推荐算法 SSM(Spring+SpringMVC+Mybatis)框架 大数据.人工智能.机器学习项目开发Mus ...

  4. 使用Java+SSM(Spring+SpringMVC+Mybatis)开发在线美食推荐网 美食推荐系统 美食天下美食爬虫 基于用户、物品的协同过滤推荐算法实现 大数据、人工智能、机器学习项目开发

    使用Java+SSM(Spring+SpringMVC+Mybatis)开发在线美食推荐网 美食推荐系统 美食天下美食爬虫 基于用户.物品的协同过滤推荐算法实现 大数据.人工智能.机器学习项目开发Fo ...

  5. 剖析大数据、人工智能、机器学习、神经网络、深度学习五者之区别与联系

    1 引言 当下时代,无论你是否专业于CS,想必都应当听过大数据.人工智能.机器学习.神经网络与深度学习这几个热词.他们区别明显却又联系紧密,有些互有交集,有些又是另一部分的子集.基于上述原因,现作文一 ...

  6. Java开发在线购物推荐网 购物商城推荐系统 基于用户、物品的协同过滤推荐算法 京东商城爬虫 SSM(Spring+SpringMVC+Mybatis)开发框架 大数据、人工智能、机器学习项目开发

    Java开发在线购物推荐网 购物商城推荐系统 基于用户.物品的协同过滤推荐算法 京东商城爬虫 SSM(Spring+SpringMVC+Mybatis)开发框架 大数据.人工智能.机器学习项目开发Sh ...

  7. 大数据、人工智能、机器学习与深度学习是什么意思?之间有什么关系?

    大数据.人工智能是目前大家谈论比较多的话题,它们的应用也越来越广泛.与我们的生活关系也越来越密切,影响也越来越深远,其中很多已进入寻常百姓家,来举个例子如:无人机.网约车.自动导航.智能家电.电商推荐 ...

  8. 数据科学、大数据、人工智能、机器学习的区别是什么?

    数据科学 数据科学是研究处理大量数据并为预测.规范和规范分析模型提供数据的研究.它有助于使用各种科学方法.算法.工具和流程从大量数据集中区分有用的原始数据/见解.它包括从大量数据集中挖掘.捕获.分析和 ...

  9. 袋装决策树_袋装树是每个数据科学家需要的机器学习算法

    袋装决策树 袋装树木介绍 (Introduction to Bagged Trees) Without diving into the specifics just yet, it's importa ...

最新文章

  1. laravel的日志服务
  2. 现在,用音频也能指挥GAN生成图像了
  3. python中yield使用
  4. mvc大对象json传输报错
  5. 强转类型,flash声音,父与子的交互
  6. Android Service完全解析,关于服务你所需知道的一切(下)
  7. nginx 代理https后,应用redirect https变成http --转
  8. 用LIBSVM做回归和预测
  9. Fedora 17 install VMWare tool
  10. 完整的MIME类型列表
  11. JAVA随机生成文件名:当前年月日时分秒+五位随机数
  12. mysql查询雇员部门和性别_数据库管理系统MySQL实验
  13. bootstrap时间格式化
  14. 编译“have the same erasure, yet neither overrides“
  15. js中Array数组基本方法
  16. Java程序设计基础
  17. SQLServer根据.mdf,.ldf,.ndf文件恢复数据库
  18. window10笔记本安装USB转VGA驱动,电脑重启后无法开机
  19. 数据库原理第三章习题作业
  20. MSP430番外——BSL介绍

热门文章

  1. java字符串复制空值_Java脚本:去除字符串中空值
  2. 基于注解处理器开发自动生成getter和setter方法的插件
  3. Mysql系列(三)—— Mysql主从复制配置
  4. 是否能领先e步 浅析SSD中的eTLC和eMLC颗粒
  5. 你会不会用mysql查询近7个月的数据?没有记录默认为空
  6. 【143】360云盘资源
  7. 并行计算框架 Apache Hama
  8. javascript常用小例子
  9. Javascript+xmlhttp调用Webservice
  10. BizTalk 2006 简单入门示例程序(附源项目文件下载)