楼主: 时光永痕
707 0

[数据挖掘新闻] 所以你想成为一名机器学习工程师? [推广有奖]

  • 0关注
  • 14粉丝

svip3

学术权威

12%

(VIP/贵宾)八级

11%

威望
0
论坛币
26 个
通用积分
57.2238
学术水平
4 点
热心指数
4 点
信用等级
4 点
经验
34180 点
帖子
2732
精华
0
在线时间
321 小时
注册时间
2020-7-21
最后登录
2024-8-1

楼主
时光永痕 学生认证  发表于 2022-6-6 10:59:55 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
理想情况下,机器学习工程师应同时具备软件工程师的技能和软件工程师的经验。数据科学家和数据工程师。但是,数据科学家和软件工程师通常来自非常不同的背景,不应期望数据科学家成为出色的程序员,也不应期望软件工程师提供统计摘要。尽管如此,机器学习算法的背景以及如何实现它们对于机器学习工程师 (MLE) 来说至关重要。  

MLE 使用不同的算法并将它们应用于不同的代码库和设置。以前在软件工程和代码库方面的经验将为这个职业领域提供非常有用的基础。MLE 从软件工程背景开始,然后获得机器学习(ML) 和工作中的统计知识。跟上当前的机器学习和深度学习研究和实施也是 MLE 职责的重要组成部分。

机器学习工程师负责构建能够执行困难任务或替代缓慢、乏味的人工工作的 ML 系统。这些目标需要良好的工程设计、编写无错误的 ML 代码的能力以及开发所需算法的能力。

算法
算法是用于解决问题或告诉计算机做什么的一系列步骤或指令。通过使用算法,机器学习为计算机提供了发展习惯性反应的能力。这些响应基于观察以及与系统交互的人的重复行为和动作。学习重复行为的能力很重要。随着 ML 模型接收到新数据,它们会适应,早期的经验提供了如何响应的选项。

有基本的知识算法支持机器学习将有助于实现模型。机器学习算法可以分为三大类:

监督学习是最常用的。训练程序充当监督者,并在做出预测后纠正算法所犯的错误。
在目标是使用算法来发现和呈现数据中其他无法识别的结构的情况下,无监督学习可能很有用。
强化学习是两者的混合。它为每个反应或行动提供某种形式的反馈,但没有给出精确的正确或错误评估。
机器学习新手十大算法之旅有利于入门基础知识。

由于没有能够为每种设置提供最佳结果的特定算法,因此必须修改每种算法。修改现有算法是一种常见的做法。算法易于修改,应根据不断变化的情况进行调整。当算法结构正确时,新的修改可以产生更好的算法。

Python
学习 Python 是必须的。幸运的是,它是一种更容易学习的编程语言。大多数机器学习项目将使用 Python 或 C/C++(通常首选 Python)。有些人会将其描述为一种有用的、相当容易学习的脚本语言。对于那些还没有熟悉Python,有许多免费的、用户友好的课程。一个有用的提示:注意标签和间距,这是组织和激活代码所必需的。对于 Python,空格很重要。

作为一种编程语言,Python 可以让工作快速完成并更有效地集成系统。Python 通常用于通用的高级编程。它最初由 Guido van Rossum 于 1991 年设计,后来由 Python 软件基金会开发。它的目的是强调代码的可读性,其语法允许程序员使用更少的代码行来表达概念。

与大多数技能一样,Python 需要练习、练习、练习。这免费机器学习交互式工具有助于开发 Python 技能并开始使用算法。许多数据工具是用 Python 构建的,或者是通过 API 访问构建的,从而可以轻松访问 Python。该语言的语法相当容易掌握。Python 目前拥有大量可用的培训资源,并支持各种编程范式,从面向对象编程到函数式编程。推荐读物包括:

使用 Python 学习:如何像计算机科学家一样思考也是一个很好的免费资源。
应用程序编程接口 (API)
一个应用程序接口概括地说,就是一系列明确定义的各种组件之间通信的方法。它包括通信协议、构建软件的工具和子程序定义。

在构建应用程序时,API 可以通过概述底层数据并仅公开开发人员所需的对象或操作来简化流程。例如,用于文件输入/输出的 API 可能会为开发人员提供一个功能,该功能可以从一个地方复制文件并将其发送到另一个地方,而开发人员不需要了解幕后发生的文件系统操作。

API 通常与软件库相关。它描述并定义了“预期行为”。可以使用共享相同编程接口的不同库多次实现单个 API。MLE 可以采用公开可用的 API 并选择最佳模型,同时学习项目的程序。

集成开发环境 (IDE)
IDE 是一种软件程序,为计算机程序员开发新软件提供了综合工具。IDE 通常至少由源代码编辑器、调试器和构建自动化工具组成。Eclipse 和 NetBeans 等集成开发环境包含一个编译器,或口译员,或两者兼而有之。其他 IDE,例如 Lazarus 和 SharpDevelop,则没有。

随着 IDE 的集成,它与其他软件系统之间的界限变得模糊。在某些情况下,使用各种集成工具来简化图形用户界面 (GUI) 的构建。一些现代 IDE 还包括一个类层次图, 一个对象浏览器, 和一个类浏览器用于面向对象的软件开发。

一个机器学习工程师就管理数据和系统部署做出复杂的工程决策。这包括从SQL + NoSQL 数据库、API 和网页抓取,以及使用管道框架(例如,Luigi 或 Airflow)。在部署应用程序时,可能会使用容器(例如 Docker),因为它具有可扩展性和可靠性。工具(例如 Flask)可用于为应用程序创建 API。

什么是用于数据科学的最佳 Python IDE? 提供了许多这些工具的良好背景。

软件开发技能
机器学习工程师应该具有强大的软件开发背景。软件开发是一个逻辑过程,其目标是创建一个针对业务或个人目标而编程的软件。软件开发通常是一个有计划的过程,由创建操作软件期间的各个步骤组成:

初步研究
指定
设计
编程
记录
测试
错误修复
实践: Github 有多种协作工具,可以帮助扩展新手的知识和经验。Github为使用测试框架的代码提供“鼻子”,以及用于测试 API 的工具,例如 Postman。像 Jenkins 这样的 CI 系统可用于确保代码不会中断。Github 是培养良好代码审查技能的绝佳资源。

实践:开源Jupyter 笔记本也是极好的资源。它预装了几个重要的数据科学库,并带有一个干净、简单、交互式的界面。Jupyter Notebook 是一个免费的 Web 应用程序,允许创建包含实时代码、可视化、叙述性文本和方程式的共享文档。其他用途包括统计建模、数据清理和转换、数据可视化、数值模拟、机器学习等。这Jupyter 笔记本包括允许共享结果的扩展。此外,这些文件在 Github 上运行良好。

实践:熊猫食谱提供示例和资源,取自 Pandas 框架,这是一个强大的数据操作库。它提供了如何使用数据集的简单示例。

使用数据集
数据集只是数据的集合。通常,数据集与数据库表相关联,表的每一列都象征着一个特定的变量。每行对应于数据集的给定“成员”。互联网上有数以千计的数据存储库,可以访问数以百万计的数据集,包括来自世界各地的地方和国家政府的数据。谷歌推出数据集搜索因此研究人员可以找到他们工作所需的数据。为您的第一个数据科学项目提供 19 个免费公共数据集讨论互联网上可用的不同数据集。

实践: Kaggle 数据集提供了几个公开可用的数据集。它显示了使用相同数据集构建的项目。

实践: Spark Jupyter notebooks 也托管在数据块,其中提供了有关使用大数据的教程介绍。它还提供了生产级代码示例的练习。

训练机器学习模型

深度学习最基本的是将输入映射到输出。然后它找到相关性。这深度学习过程有时被称为“通用逼近器”。深度学习是一种使用多层的机器学习算法。这些逐渐从原始输入中获​​取更高级别的特征。通过图像处理,较低层可能会识别边缘,而较高层则识别数字、字母或面孔等事物。

      相关帖子DA内容精选
  • 大厂数据分析面试指南!来自亚马逊、谷歌、微软、头条、美团的面试问题!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:机器学习 工程师 Notebook NetBeans Eclipse

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-5 11:48