7月 ML 和 Python 最受欢迎的10大开源项目

人工智能头条 2018-07-27 17:36
关注文章

【导读】七月就要结束了,在即将到来的 7 月最后一个周末,人工智能头条为大家整理了本月 ML 和 Python 最受欢迎的十大开源项目。就算放假在家也可以知道大家现在都在学些什么,学习放假两不误。这个周末我们一起过~~


机器学习开源项目 Top 10


我们从过去一个月将近250个机器学习开源项目中筛选出最受关注的10大开源项目,GitHub 上 Stars 平均为1041。其中涵盖了DensePose,图像分类,多尺度训练,移动端的AI 计算引擎,卫星图像,NLP,Python包,文字检测,NCRF,DALI 等主题。下面我们来一一介绍。


Top 1. DensePose





DensePose 是Facebook 研究院开发的一种实时人体姿态估计方法,它能够将2D RGB 图像中的目标像素映射到3D 表面模型。DensePose 项目旨在通过这种基于3D 表面模型来理解图像中的人体姿态,并能够有效地计算2D RGB 图像和人体3D 表面模型之间的密集对应关系。与人体姿势估计需要使用10或20个人体关节(手腕,肘部等) 不同的是,DenPose 使用超过5000个节点来定义,由此产生的估计准确性和系统速度将加速AR和VR 工作的连接。


相关链接:https://research.fb.com/facebook-open-sources-densepose/

Github 链接:https://github.com/facebookresearch/DensePose



Top 2. Darts





Darts 是 CMU 联合DeepMind 团队研发的一种可微分的卷积循环网络结构,它能够基于结构表征的连续性,通过梯度下降法来更有效地进行结构搜索。在CIFAR-10,ImageNet,Penn Treebank 和WikiText-2 等大型数据库的实验验证了这种结构在卷积图像分类和循环语言建模方面的高效性能。


论文链接:https://arxiv.org/pdf/1806.09055.pdf

Github 链接:https://github.com/quark0/darts



Top 3. SNIPER





SNIPER 是一种高效的多尺度训练方法,可用于诸如目标检测,实例分割等图像识别任务。与图像金字塔处理图像中每个像素不同,SNIPER 是选择性地处理真实目标周围区域的像素。得益于其能在低分辨率的芯片上运行,这能够显着加速了多尺度训练进程。此外,高效的内存设计使得 SNIPER 在训练期间能够最大程度地受益于批量正则化方法 (BN),还能在单个 GPU 上实现更大批量的图像识别任务。因此,SNIPER 不需要跨 GPU 同步批量地处理统计数据,你可以像处理图像分类一样地训练你的目标检测器,简单而高效!


论文链接:https://arxiv.org/pdf/1805.09300.pdf

Github 链接:https://github.com/mahyarnajibi/SNIPER



Top 4. Mace





Mace 是一个用于移动端的、异构计算平台的深度学习推理框架。在运行期间,它通过结合NEON,OpenCL 和Hexagon 进行优化,并引入Winograd 算法来加速卷积计算,因此初始化过程也将更快地优化。此外,它能很好地支持图级内存分配优化和缓冲器重用过程,试图保持最小的外部依赖性以减少内存占用空间。它还能良好地覆盖高通(Qualcomm),联发科技(Media Tek),Pinecone 和其他基于ARM 的芯片,以CPU 运行时还能与大多数的POSIX 系统和性能有限的体系结构兼容。


Github 链接:https://github.com/XiaoMi/mace



Top 5. Robosat





Robosat 是一种端到端的特征提取方法,能够用于航空和卫星图像的目标特征提取,包括图像中的建筑物,停车场,道路,汽车等目标。该方法主要包括三部分内容:


  • 数据准备:为训练特征提取模型创建一个数据集。

  • 训练和建模:为图像特征提取训练一个分割模型。

  • 后处理:将图像分割结果转为干净而简单的几何形状。


Github 链接:https://github.com/mapbox/robosat



Top 6. DecaNLP





DecaNLP 是由Saleforce 提出的一个自然语言界的“十项全能”挑战,其涵盖了十项自然语言任务:问答,机器翻译,摘要,自然语言推理,情感分析,语义角色标记,零目标关系提取,目标导向对话,语义分析和常识代词解析等任务。每种任务都被视为是一种问答问题,可以通过我们提出的多任务问答模型框架(Multitask Question Answering Network) 来解决。该模型能够联合学习DecaNLP 挑战中的所有任务,而不需要在多任务设置下设定某个特定任务的模块或超参数。

论文链接:https://arxiv.org/abs/1806.08730

Github 链接:https://github.com/salesforce/decaNLP


Top 7. Magnitude






Magnitude 是一种快速高效的通用向量嵌入式实用程序包,含有功能丰富的Python 包和矢量存储文件格式,可用于在Plasticity 中以快速、高效而简单的方式将矢量嵌入用于机器学习模型。它主要是为Gensim 提供一种更简单快速的替代方案,但也可以作为一种通用的矢量存储方法应用于NLP 以外的领域。


Github 链接:https://github.com/plasticityai/magnitude



Top 8. Porcupine





Porcupine 是一种自助式的、高精度、轻量级文字检测引擎,它能够使开发人员构建语音应用程序平台。它具有以下几大优势:


  • 自助式服务:你可以在几秒内选择任何的唤醒词(wake word) 并构建模型。

  • 能够使用真实情况下训练的深度神经网络(即噪声和混响)。

  • 结构紧凑且计算效率高,能够适用于物联网应用。

  • 跨平台应用:以纯定点ANSIC 实现,目前可支持Raspberry Pi,Android,iOS,watchOS,Linux,Mac 和Windows 等平台。

  • 可扩展性强:它可以同时检测数十个唤醒词(wake word),而几乎不需要额外的CPU /内存占用。


Github 链接:https://github.com/Picovoice/Porcupine



Top 9. NCRF





NCRF 是一种神经条件随机场结构,能够将检测到的癌症转移到WSI 中。这种框架通过完全连接的条件随机场(CRF),将相邻补丁之间的空间相关性直接并入CNN 结构的顶层特征提取器,并采用标准的端到端训练方式,以反向传播法进行优化。实验结果表明这种框架能够获得更佳质量的预测概率图,并取得不错的平均FROC 分数。


论文链接:https://openreview.net/pdf?id=S1aY66iiM

Github 链接:https://github.com/baidu-research/NCRF



Top 10. DALI





DALI 是NVIDA 提出的一个数据加载库,它是一个高度优化的构建模块和执行引擎集合,可用于加速深度学习应用程序中输入数据的预处理过程。此外,DALI 还提供了不同数据的加速提供了足够的性能和灵活性,并可以轻松集成到不同的深度学习训练和推理程序中。它具有以下几大优势:


  • 能够直接从磁盘加速读取全数据,并为训练和推理过程做准备。

  • 通过可配置的图形和自定义操作实现足够的灵活性。

  • 支持图像分类和分段工作负载。

  • 直接通过框架插件和开源绑定轻松实现集成。

  • 具有多种输入格式的便携式训练工作流程,包括JPEG,LMDB,RecordIO,TFRecord 等格式。


Github 链接:https://github.com/NVIDIA/dali




Python 开源项目 Top 10



我们从过去一个月将近 250 个 Python 开源项目中筛选出最受关注的 10 大开源项目,GitHub 上 Stars 平均为1051。其中涵盖了终端 (Terminal),机器人,照片,图像大小调整,Instagram,短信(SMS),人工智能(AI),3D渲染,电报机器人(Telegram bot),验证码(CAPTCHA) 等主题。下面我们来一一介绍。


Top 1. Termtosvg





Termtosvg 是一个用Python 编写的Linux 终端记录器,它能将命令行会话呈现成独立的SVG 动画。这个项目目前在GitHub 获得了近六千 Stars。


Github 链接:https://github.com/nbedos/termtosvg



Top 2. PythonRobotics





PythonRobotics 是一个机器人算法的Python 代码集合,尤其适用于机器人自主导航。它具有以下几大特征:

  • 集合了一些广泛使用和实用算法。

  • 最低依赖性。

  • 易于阅读和理解每个算法背后的基本思想。


Github 链接:https://github.com/AtsushiSakai/PythonRobotics



Top 3. Cartoonify





Cartoonify 是一款基于Python 的应用程序,能够将照片变为卡通图片。该应用程序能够在桌面环境(OSX,Linux) 和raspberry pi 的嵌入式环境中运行。


Github 链接:https://github.com/danmacnish/cartoonify



Top 4. PyCAIR





PyCAIR 是一个基于内容感知的图像大小调整库,它具有以下几大特征:


  • 能够基于所提供的图像生成能量图和灰度图像格式。

  • Seam Carving 算法试图通过能量图获取最低能量值,以找到图像中一些无用区域。

  • 在动态编程和backtracking 的帮助下,Seam Carving 算法能够使用自上而下或自左往右的方法在图像上生成单独的接缝(取决于垂直或水平调整大小)。

  • 通过逐行遍历图像矩阵,针对每个条目计算所有可能接缝数的累积最小能量。通过将当前行像素与前一行相邻像素的最低值求和来计算最小能量值水平。

  • 从最后一行开始,在能量矩阵中找出成本最低的接缝并将其移除。迭代地重复该过程,直到根据用户指定的比率调整图像大小。


Github 链接:https://github.com/avidLearnerInProgress/pyCAIR



Top 5. Instagram-scraper





Instagram-scrapet 是受twitter-scraper 提出的一种scraper 方法。


Github 链接:https://github.com/meetmangukiya/instagram-scraper



Top 6. FootballNotifier


FootballNotifier 是一个基于Python 应用程序。顺应当下足球世界杯的热潮,这款应用程序能够当在你所支持的球队得分时向你发送SMS 短信提醒。


Github 链接:https://github.com/c-mnzs/footballNotifier



Top 7. Face-tracking-with-Anime-characters


Face-tracking-with-Anime-characters 是一个能够通过访问网络摄像头来直接凝视游戏doki doki 文学俱乐部的YURI 玩家灵魂的Python 项目。


Github 链接:https://github.com/Aditya-Khadilkar/Face-tracking-with-Anime-characters



Top 8. Pyray


Pyray 是一个基于Python 的3D 渲染库。现在,POV ray 是一个很棒的程序,但我们为什么不能在Python 中开发一个同样功能的应用程序,用于2D,3D 和更高维度的对象和场景渲染呢?在这个项目中我将用Python 展示POV ray 程序所能做的一切,包括渲染复杂的3D 对象、场景、动画等。


Github 链接:https://github.com/ryu577/pyray



Top 9. Moodbot


Moodbot 是基于Python 开发的一个电报机器人项目,可用于自我测试焦虑和抑郁情绪。


Github 链接:https://github.com/dizballanze/m00dbot



Top 10. NonoCAPTCHA


NonoCAPTCHA 是一个异步的Python 库,可通过设备中的音频来用于自动处理 ReCAPTCHA v2。它能够支持Mozilla 的DeepSpeech,PocketSphinx,Microsoft Azure 和Amazon 的Transcribe Speech-to-Text API 等多种设备。


Github 链接:https://github.com/mikeyy/nonoCAPTCHA



结束语


7月即将结束,大家可以通过今天的内容找到自己感兴趣或者有用的项目。

微信扫一扫
关注该公众号

文章被以下专辑收录
{{panelTitle}}
支持Markdown和数学公式,公式格式:\\(...\\)或\\[...\\]

还没有内容

关注微信公众号