本周必看:7月ML&Python 最佳开源项目Top 10
【导读】七月就要结束了,在即将到来的 7 月最后一个周末,人工智能头条为大家整理了本月 ML 和 Python 最受欢迎的十大开源项目。就算放假在家也可以知道大家现在都在学些什么,学习放假两不误。这个周末我们一起过~~
作者 |Mybridge
译者 | Linstancy
编辑 | Jane
出品 | 人工智能头条(公众号ID:AI_Thinker)
(此前发布过多篇收藏党喜欢的文章,也是来自Mybridge:①Python 开源项目 Top 10 精选,平均star为1128!②从15000个Python开源项目中精选的Top30,Github平均star为3707,赶紧收藏!③我们从8800个机器学习开源项目中精选出Top30,推荐给你④5月Python好文TOP 10新鲜出炉⑤Keras、卷积神经网络、Pytorch 以及音频处理优秀文章推荐⑥机器学习 TOP 10 必读论文⑦Top 50机器学习项目实战总结)
机器学习开源项目 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
▌Top7.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
▌Top5.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月即将结束,大家可以通过今天的内容找到自己感兴趣或者有用的项目。
欢迎大家加入我们的读者群(添加小助手微信:cadnai),一起交流和分享!学习过程中的问题或者想学习的内容也可以反馈给我们,人工智能头条会继续分享实用有用的技术干货、更多更好的学习资源给大家!