金沙js0888_首頁(欢迎您)

  • <td id="dgejl"><strike id="dgejl"></strike></td>
        1. 2020年有用的机器学习工具2020

          作者: 闻数起舞 2020-10-12 08:05:09

          TL; DR —构建良好的机器学习应用程序就像制作米其林式菜肴。 拥有一个井井有条的厨房是至关重要的,但是选择太多了。 在本文中,我重点介绍了我发现的工具,这些工具可用于交付专业项目,分享一些想法和替代方案,并进行快速的实时调查(您可以在参与后看到社区的想法)。

          像任何工具讨论一样,该列表并不详尽。 我尝试着眼于最有用和最简单的工具。 欢迎在评论部分中提出任何反馈意见,或者让我知道是否有更好的选择。

          免责声明:本帖子不被认可或赞助。 我将数据科学和ML互换使用。

          "如何构建良好的机器学习应用程序?"

          在与学校中有抱负的数据科学家,希望转换的专业人士以及团队经理进行的聊天中,这个问题以各种形式多次出现。

          交付专业数据科学项目有很多方面。 像许多其他人一样,我喜欢使用在厨房做饭的类比:有成分(数据),食谱(设计),烹饪过程(以及您独特的方法),最后是实际的厨房(工具)。 )。

          因此,本文遍历了我的厨房。 它重点介绍了设计,开发和部署全栈机器学习应用程序的最有用工具,这些应用程序是与系统集成或在生产环境中为人类用户服务的解决方案。

          如果您想进一步了解交付ML的其他方面,请在此处查看我的文章。

          压倒性的可能性

          我们生活在黄金时代。 如果您在Google中搜索"机器学习工具"或咨询顾问,您可能会得到以下信息:

          2020年最有用的机器学习工具2020

          > Data & AI Landscape 2019, Image Source

          那里有太多工具。 可能的组合是无限的。 这可能会令人困惑和压倒性。 所以,让我帮助您缩小范围。 也就是说,没有完美的设置。 这完全取决于您的需求和约束。 因此,进行相应的选择,选择和修改。

          我的列表按以下顺序排列优先级(不按顺序排列):

          • 免费
          • 易于学习和设置
          • 未来证明(采用和工具成熟度)♻️
          • 研究工程
          • 在初创企业或大型企业中为大型或小型项目工作
          • 只要完成工作

          警告:我有99%的时间使用Python。 因此,这些工具可以与本机Python一起很好地使用或构建。 我尚未使用其他编程语言(例如R或Java)对其进行测试。

          1. 冰箱:数据库

          PostgreSQL

          一个免费的开源关系数据库管理系统(RDBMS),强调可扩展性和技术标准合规性。 它旨在处理各种工作负载,从单台机器到具有多个并发用户的数据仓库或Web服务。

          2020年最有用的机器学习工具2020

          > Image Source

          备选方案:MySQL,SAS,IBM DB2,Oracle,MongoDB,Cloudera,GCP,AWS,Azure,PaperSpace

          2. 工作台:部署管道工具

          管道工具对于开发的速度和质量至关重要。 我们应该能够以最少的人工处理快速进行迭代。 这是一个运行良好的设置,有关更多详细信息,请参阅我的12小时ML挑战文章。 每个懒惰的数据科学家都应该在项目的早期阶段对此进行尝试。

          2020年最有用的机器学习工具2020

          > Author's work, 12-Hour ML Challenge

          (1) Github

          它提供了Git的分布式版本控制和源代码管理(SCM)功能,以及其自己的功能。 它为每个项目提供访问控制和多种协作功能,例如错误跟踪,功能请求,任务管理和Wiki。

          备选:DVC,BitBucket,GitLab

          (2) PyCharm社区版

          计算机编程中使用的集成开发环境(IDE),专门用于Python语言。 它是由捷克JetBrains公司开发的。 它提供代码分析,图形调试器,集成的单元测试器,与版本控制系统(VCSes)集成,并支持使用Django进行Web开发以及使用Anaconda进行数据科学开发。

          替代方案:Atom,Sublime

          (3) pytest

          框架使编写小型测试变得容易,但可以扩展以支持针对应用程序和库的复杂功能测试。 它节省了手动测试的大量时间。 如果您每次更改代码都需要测试某些东西,请使用Pytest将其自动化。

          备选:单元测试

          (4) CircleCi

          CircleCI是一个持续集成和部署工具。 当您提交到Github时,它将使用远程docker创建一个自动化的测试工作流。 Circle CI拒绝任何未通过PyTest设置的测试用例的提交。 这样可以确保代码质量,尤其是在与较大的团队合作时。

          备选方案:詹金斯,特拉维斯CI,Github Action

          (5) Heroku(仅当您需要网络托管时)

          平台即服务(PaaS),使开发人员可以完全在云中构建,运行和操作应用程序。 您可以与CircleCI和Github集成以启用自动部署。

          替代方案:Google App Engine,AWS Elastic Compute Cloud,其他

          (6) Streamlit(仅在需要交互式UI时)

          Streamlit是面向机器学习和数据科学团队的开源应用程序框架。 近年来,它已成为我最喜欢的工具之一。 查看我如何使用它以及本节中的其他工具来创建电影和模拟应用程序。

          替代方案:Flask,Django,Tableau

          3. iPad:探索工具

          Streamlit重新点亮

          忘了Jupyter Notebook。 是的,这是对的。

          Jupyter是我探索数据,进行分析以及尝试不同数据和建模过程的入门工具。 但我不记得有多少次:

          • 我花了很多时间进行调试(并抽出头发),但最终意识到我忘了从头开始运行代码。 Streamlit解决了此问题。
          • 即使稍作更改,我也必须等待一段时间才能重新运行数据管道。 Streamlit缓存可解决此问题。
          • 我不得不将代码从Jupyter重写或转换为可执行文件,以及花在重新测试上的时间。 Streamlit提供了一个快捷方式。

          真令人沮丧。 因此,我使用Streamlit进行早期探索并为最终的前端服务-用一块石头杀死两只鸟。 以下是我的典型屏幕设置。 左侧为PyCharm IDE,右侧为结果可视化。 试一试。

          2020年最有用的机器学习工具2020

          > IDE (left) + live update with Streamlit (right), author's work from the Forgotten Algorithm

          替代方案:Jupyter Notebook,Anaconda的Spyder,Microsoft Excel(严重)

          4. 刀具:机器学习框架

          就像使用实际的刀一样,您应该根据食物和切割方式选择合适的刀。 有通用刀和特种刀。

          要小心。 尽管寿司刀更加亮丽,但使用专用刀将寿司切成骨头将需要很长时间。 选择正确的工具来完成工作。

          (1) Scikit-Learn(通用ML用例)

          在Python中进行常规机器学习的入门框架。 说够了。

          2020年最有用的机器学习工具2020

          > Use Cases for Scikit-Learn, Source

          备选方案:无,期限。

          (2) PyTorch(深度学习用例)

          一个基于Torch库的开源机器学习库。 鉴于深度学习的重点,它主要用于计算机视觉和自然语言处理等应用。 它主要由Facebook的AI研究实验室(FAIR)开发。 最近,许多著名的AI研究机构,例如Open AI,都使用PyTorch作为其标准工具。

          替代方案:Tensorflow,Keras,Fast.ai

          (3) 开设AI Gym(强化学习用例)

          开发和比较强化学习算法的工具包。 它提供API和可视环境。 这是社区正在为其构建工具的活跃区域。 打包好的工具还不多。

          替代方案:许多小型项目,但维护得不如健身房。

          5. 火炉:实验管理

          (1) Atlas

          这是一个免费工具,可让数据科学家使用几个摘要进行实验并将结果显示在基于Web的仪表板上。

          2020年最有用的机器学习工具2020

          > Atlas process, source

          免责声明:我曾在创建Altas的公司Dessa工作。

          替代方案:ML Flow,SageMaker,Comet,权重和偏移,数据机器人,Domino

          (2) 一项调查

          出于好奇,寻找合适工具时最困扰您的是什么? 我很想听听您的以下想法。 这是一项实时调查,因此您可以查看社区参与后的想法。

          (3) 另一种观点

          如前所述,没有完美的设置。 这完全取决于您的需求和约束。 这是关于哪些工具可用以及它们如何协同工作的另一种观点。

          2020年最有用的机器学习工具2020

          > Presentation from Sergey Karayev at Full Stack Deep Learning, 2019

          (4) 迷你挑战赛

          如果您想了解有关如何使用这些工具的更多信息,最好的方法是找到一个要进行的项目。 您可以将工具合并到当前项目中,也可以进行12小时的ML挑战。 不确定如何? 看看我如何使用讨论的工具和流程创建用户授权的推荐应用程序。

          我期待看到您能创造什么。 请与社区共享,并在Twitter tag上标记我。

          喜欢您阅读的内容吗? 在Medium,LinkedIn或Twitter上关注我。 另外,您是否想以数据科学家的身份学习商业思维和沟通技巧? 查阅我的《机器学习的影响力》指南。

          机器学习 数据科学 ML
          上一篇:人工智能,基因编辑与诺贝尔奖的突破,可以让你80岁像40了 下一篇:实例 | 使用CNN和Python实施的肺炎检测
          评论
          取消
          暂无评论,快去成为第一个评论的人吧

          更多资讯推荐

          人工智能如何应用于数据中心的物理安全

          机器学习和人工智能被吹捧为解决数据中心问题的万能药。虽然大部分都是炒作和毫无根据的乐观主义,但人工智能工具在某些领域已经是有用和实用的。这些领域包括数据中心物理安全,人工智能在三个方面发挥着重要作用:图像和声音识别、异常检测和预测分析。

          Cassie ·? 1天前
          你的生产型ML复现不了,可能是工作流程出了问题

          在机器学习社区,越来越多的人开始讨论研究的可复现性,但这些讨论大部分局限于学术环境。如何确保生产环境的ML可复现?

          机器之心 ·? 3天前
          七个关键因素:如何选择出优秀机器学习算法?

          任意的机器学习问题都可以应用多种算法,生成多种模型。例如,垃圾邮件检测分类问题可以使用多种模型来解决,包括朴素贝叶斯模型、逻辑回归模型和像BiLSTMs这样的深度学习技术。

          读芯术 ·? 3天前
          AI看图说话首超人类!微软认知AI团队提出视觉词表预训练超越Transformer

          能看图会说话的AI,表现还超过了人类?最近,Azure悄然上线了一个新的人工智能服务,能精准的说出图片中的内容。

          佚名 ·? 4天前
          低代码机器学习工具

          通常,要开发机器学习模型并将该模型部署到可以在操作上使用的状态,需要对编程有深入的了解,并且需要充分了解其背后的算法。

          闻数起舞 ·? 4天前
          没有完整图时,如何使用图深度学习?

          自从神经网络提出以来,其在人脸识别、语音识别等方面表现出卓越的性能。以前需要人工提取特征的机器学习任务,现在通过端到端的方法就能解决。

          机器之心 ·? 2020-10-16 14:59:32
          机器学习在银行有哪些应用场景?

          本文澄清了机器学习平台和大数据平台的关系,分析了机器学习平台在银行应用的未来趋势,并重点梳理了机器学习在银行的主要应用场景。

          twt社区 ·? 2020-10-16 09:09:20
          Menger:大规模分布式强化学习架构

          今天,我们要介绍的是Menger——一种具有本地化推理能力的大规模分布式RL架构,可通过多个处理集群(如Borg单元)扩展数千个Actors,从而减少了芯片放置任务的训练时间。

          雷锋字幕组 ·? 2020-10-15 19:22:09
          Copyright?2005-2020 51CTO.COM 版权所有 未经许可 请勿转载
          金沙js0888