简介成为数据科学家最棒的事情之一就是编程。很多时候,我发现自己沉浸在从头开始为项目编程的时间。当你看到你的辛勤工作构思出一个成功的模型时,是多么令人兴奋!但作为数据科学家(或程序员),在不同阶段创建代码检查点同样重要。了解您上次的起点非常有帮助。这样,如果您需要查看历史代码或将代码分支到不同的路径,总有回退的余地。这就是为什么GitHub是编写代码的好地方。本系列的前几篇文章阐述了为什么每个数据科学家都应该拥有一个活跃的GitHub帐户。无论是用于协作、重新开始或组合代码,还是用于教育目的,这都是一个提高您的编码技能和知识的绝佳平台。现在让我们进入本文的核心——机器学习代码!我选择了一些我认为每个数据科学家都应该尝试的非常有趣的项目。除了编程之外,成为数据科学家还有很多方面。我们需要了解社区中的所有最新发展,其他机器学习专家和思想领袖在谈论什么,从事有争议的项目的道德含义是什么等等。这就是为什么我在文章中加入了Reddit讨论。GitHub热门项目OpenAI深度强化学习资源项目地址:https://github.com/openai/spinningup本系列我们会不断补充强化学习的资源,这里是迄今为止最好的——OpenAI资源大赠送!这是一个开源的教育资源,旨在让大家更容易学习深度强化学习。考虑到强化学习对大多数人来说过于复杂,这是一个对新手友好的知识库。这个存储库包含一些方便的资源:RL术语、各种算法和基础理论的介绍一篇关于如何成长为RL研究人员的论文一个按主题分类的重要论文列表关键算法的简短、自行实现的代码libraryNVIDIA的WaveGlow项目地址:https://github.com/NVIDIA/waveglow这个是给音频和语音处理领域的人看的。WaveGlow是一个基于流的语音合成生成网络。换句话说,它是一个可以从梅尔频谱图生成高质量语音的网络(是的,一个单独的网络!)。该项目包含WaveGlow的PyTorch实现以及预训练模型。这真是一个不错的框架,如果你想深入挖掘,可以点击下面的链接:研究论文:https://arxiv.org/abs/1811.00002音频样本演示网站:https://nv-adlr。github.io/WaveGlowBERTasaservice项目地址:https://github.com/hanxiao/bert-as-service我们在上个月的文章中介绍了BERT的PyTorch实现,这里是另一个版本。对于BERT的新手,它代表来自Transformers的双向编码器表示。它是一种预训练语言表示的方法。BERT的成果点亮了NLP的世界,谷歌的研究人员亲切地发布了一些预训练模型,以方便研究。此代码库使用BERT作为句子编码器,作为可通过ZeroMQ访问的服务,您只需两行代码即可将句子映射为固定长度的特征表示。BERT使用简单、速度极快且可扩展。尝试一下!GoogleQuickDraw游戏Python实现项目地址:https://github.com/1991viet/QuickDrawQuickDraw是Google开发的一款流行的网络游戏,神经网络会猜测你在画什么。神经网络从每幅画中学习,提高其正确猜测涂鸦内容的能力。开发人员根据用户之前绘制的涂鸦构建了一个庞大的数据集。这是一个开源数据集,这里是数据集地址:https://github.com/googlecreativelab/quickdraw-dataset。您现在可以基于此存储库在Python中构建您自己的QuickDraw游戏。有详细教程。使用此代码,您可以运行一个可以在计算机摄像头前或在画布上绘图的应用程序。GAN理解与可视化项目地址:https://github.com/CSAILVision/gandissectGAN分解是麻省理工学院计算机科学与人工智能实验室研究人员首创的一种方法,是一种独特的可视化与理解生成对抗网络(GAN)神经元的方法.但它并不止于此——研究人员还创建了GANPaint来展示GAN分解的工作原理。GAN分解通过检查和操纵特定GAN模型的内部神经元来探索GAN模型学到了什么。您可以先查看研究论文和视频演示,然后直接转到GitHub存储库并直接进入代码!Reddit讨论为什么首先需要梯度下降?https://www.reddit.com/r/MachineLearning/comments/9sfv8x/d_a_note_on_why_gradient_descent_is_even_needed/在学习基本的机器学习概念时,您是否曾想过这个问题?梯度下降是我们在早期学习中必然会遇到的基本算法之一,它已被证明在ML中非常有效。但是一旦你开始阅读这篇文章,你就会对之前所学的内容产生疑问。最初是一个简单的问题,后来变成了Reddit高管之间的一场大讨论。我真的很喜欢浏览这些评论,而且我敢肯定,如果您对这个领域感兴趣并且对数学有认真的态度,您也会发现它很有用。海量神经网络的逆向工程https://www.reddit.com/r/MachineLearning/comments/9symfk/d_reverseengineering_a_massive_neural_network/当复杂海量神经网络的开发者突然消失而没有留下任何理解网络所需的文档时,你该怎么办?这不是无缘无故的虚构,而是真实发生的普遍情况,提问者自己也遇到过。这种情况一直发生在开发人员身上,但是当涉及到深度学习时,这是一个全新的情况。本文介绍几种科学家可以用来还原深度模型原始设计思路的方法。有些回答很实用,有些很荒谬,但每一个都增加了一个视角。也许有一天当您也遇到这种情况时,他们会帮助您。关于TensorFlow2.0API的辩论https://www.reddit.com/r/MachineLearning/comments/9ysmtn/d_debate_on_tensorflow_20_api/关于这个话题的大量评论引起了我的注意(撰写本文时有110条评论),世界上有什么话题能引起这样的争议?但当你继续阅读时,辩论者之间的意见分歧令人难以置信。除了TensorFlow被嘲讽为“不是最好的框架”之外,很多人都在赞美PyTorch(如果你用过PyTorch,就会明白这并不奇怪)。这一切都始于FrancoisChollet将他的想法发布到GitHub,点燃了机器学习社区的火焰。ReinforcementLearningBasedonPredictionRewardhttps://www.reddit.com/r/MachineLearning/comments/9tangi/r_reinforcement_learning_with_predictionbased/这篇文章中的另一个OpenAI项目是他们的又一个巨大突破。标题看起来没有那么特别,但是你需要了解OpenAI团队做了什么。正如一位Reddit用户指出的那样,OpenAI的工作让我们离模仿人类行为的机器又近了一步。花了大约一年的训练才以超人的水平击败了蒙特祖玛的复仇,这令人印象深刻!找到您的第一份数据科学家工作https://www.reddit.com/r/datascience/comments/9xxm3w/landed_my_first_job_as_a_data_scientist/这是为那些有抱负的数据科学家准备的文章。这篇文章的作者解释了他是如何找到这份梦寐以求的工作的,他的背景,他在哪里学习数据科学等。在回答了这些标准问题之后,他写了一篇非常好的文章,讲述了处于类似情况的人可以做些什么来实现他们的抱负。文章后面还会给出一些有用的评论。当然,你也可以向作者提出你自己的问题。结论这个月有很多收藏。我个人觉得GAN分析的代码库非常吸引人。我目前正在尝试在我自己的设备上复制它,它应该可以正常工作。我也在密切关注“逆向工程大型神经网络”这个话题,因为如果我发现自己处于同样的困境,这篇文章中给出的想法可能会非常有帮助。你最喜欢哪个GitHub项目?您认为哪个Reddit帖子最突出?您可以留言告诉我们。
