推荐:使用 NSDT场景编辑器快速搭建3D应用场景
1. Tensorflow
2. Hugging Face Transformers
3. Opencv
4. Pytorch
5. Keras
6. Stable Diffusion
7. Deepfacelab
8. Detectron2
9. Apache Mxnet
10. Fastai
11. Open Assistant
12. Mindsdb
13. Dall E Mini
14. Theano
15. Tflearn
16. Ivy
17. Yolo7
18. Fauxpilot
19. Paddlenlp
20. Deeppavlov
在本文中,我们将重点介绍正在塑造该领域未来的 20 大 AI 开源项目。这些项目涵盖了从计算机视觉到自然语言处理的广泛应用,并展示了开源软件在推进人工智能研发方面的力量。无论您是研究人员、开发人员,还是只是对人工智能的最新趋势感到好奇,这些项目都一定会激发灵感并提供信息。
出于以下几个原因,为 AI 开源项目做出贡献至关重要:
- 它允许创建高质量的工具和平台,供世界各地的开发人员和研究人员使用,无论他们的位置或财务资源如何。这些项目使尖端技术的获取民主化,使更多的人有可能参与人工智能的研究、开发和创新。
- 开源项目鼓励该领域专家之间的协作和知识共享。这种合作导致开发更复杂和更强大的人工智能解决方案,可以解决复杂的现实世界问题,从医疗保健到气候变化等等。
- 为开源项目做出贡献是提高人工智能技能和知识的好方法。通过与该领域的其他专家一起开展现实世界的项目,个人可以获得可用于其职业生涯的宝贵经验和知识。
- 开源项目有助于推进人工智能开发的道德和透明度。通过合作和同行评审,专家可以确保以负责任和合乎道德的方式开发人工智能系统,没有隐藏的偏见或意想不到的后果。
- 为人工智能开源项目做出贡献对于人工智能技术的民主化、该领域的进步、技能的提高以及道德和负责任的人工智能解决方案的开发至关重要。
以下是 TOP 20 AI 开源项目:
1. TensorFlow
TensorFlow是一个开源机器学习框架。
TensorFlow 是一个多功能的端到端开源平台,可促进机器学习。它提供了一个由工具、库和社区资源组成的全面而灵活的生态系统,使研究人员能够突破 ML 的界限,并使开发人员能够轻松构建和部署 ML 驱动的应用程序。
最初,TensorFlow是由Google Brain团队的研究人员和工程师在Google的机器智能研究组织内开发的,旨在推进机器学习和深度神经网络研究。但是,该系统的灵活性和适应性使其在其他各个领域也具有相关性。
TensorFlow拥有稳定的Python和C++ API,以及支持其他编程语言的非保证向后兼容API。
了解有关 TensorFlow 的更多信息:https://github.com/tensorflow/tensorflow
2. Hugging Face Transformers
Transformers 提供了大量预训练模型,可以有效地处理不同模式(如文本、视觉和音频)的各种任务。这些模型可以部署以执行与文本相关的任务,如文本分类、信息提取、问答、摘要、翻译和文本生成,支持 100 多种语言。它们还可以处理与图像相关的任务,如图像分类、对象检测和分割,以及与音频相关的任务,如语音识别和音频分类。此外,变压器模型可以对各种模式执行多任务处理,包括表格问答、光学字符识别、从扫描文档中提取信息、视频分类和视觉问答。
Transformers 提供了一个用户友好的界面,可以快速访问和利用文本上的预训练模型,使用自定义数据集对其进行微调,并通过我们的模型中心在社区内共享它们。此外,定义架构的每个python模块都是完全独立的,易于修改,以促进快速的研究实验。
Transformers由三个使用最广泛的深度学习库支持,即Jax,PyTorch和TensorFlow,它们之间无缝集成。这种集成允许使用一个库轻松训练模型,然后加载它们以使用另一个库进行推理。
了解有关拥抱面变压器的更多信息:https://github.com/huggingface/transformers
3. OpenCV
OpenCV或开源计算机视觉库是计算机视觉应用(包括视频,CCTV和图片分析)的强大工具。该库在 BSD 许可证下发布,可免费用于学术和商业用途。
OpenCV 库基于 C++,拥有超过 2,500 种最先进和经典的算法。这些算法能够检测图像或电影中的人脸,识别物体,并在视频中表征人类的情绪和行为。这个AI开源库还可用于检查电影和照片的所有组件,包括对象的运动轨迹,从这些对象中提取三维模型以及各种其他应用程序。
OpenCV 库包括 500 多个功能,涵盖广泛的视觉主题,例如工业产品检测、医学成像、安全、用户界面、相机校准、立体视觉和机器人技术。由于计算机视觉和机器学习经常交织在一起,OpenCV还包括一个全面的机器学习库(MLL)。此子库主要关注统计模式检测和聚类。虽然这个机器学习库对计算机视觉问题特别有效,但它也可以用于任何机器学习问题。
了解有关 OpenCV: https://github.com/opencv/opencv 的更多信息
4. PyTorch
PyTorch是一个Python包,它提供了两个主要的高级功能:类似于NumPy的张量计算,但具有强大的GPU加速,以及建立在基于磁带的autograd系统上的深度神经网络。该包可以无缝地整合用户首选的Python包,如NumPy,SciPy和Cython,以根据需要扩展PyTorch。
PyTorch 是一个包含各种组件的库,包括:
- torch,一个类似于 NumPy 的张量库,但具有强大的 GPU 支持。该库还包括torch.autograd,这是一个基于磁带的自动微分库,支持Torch中的所有可微张量操作。
- torch.jit,一个编译堆栈(TorchScript),从PyTorch代码生成可序列化和可优化的模型。
- Torch.nn,一个与Autograd深度集成的神经网络库,旨在提供最大的灵活性。
- torch.multiprocessing,它提供Python多处理功能,但跨进程共享Torch张量的神奇内存,使其对数据加载和Hogwild训练特别有用。
- torch.utils,包括DataLoader和其他实用程序功能,以方便用户。
PyTorch通常以以下两种方式之一使用。
- 作为NumPy的替代品,以利用GPU的强大功能
- 作为一个深度学习研究平台,提供最大的灵活性和速度。
了解有关 PyTorch 的更多信息:https://github.com/pytorch/pytorch
5.Keras
Keras是一个用Python实现的高级深度学习API,建立在流行的机器学习平台TensorFlow之上。Keras 旨在促进快速实验,同时提供卓越的开发人员体验。
Keras 旨在为开发人员在构建机器学习驱动的应用程序时提供优势。它通过以下特征实现这一点:
- 简单性:Keras旨在减少开发人员的认知负担,并允许他们专注于手头问题的基本方面。Keras 强调易用性、简洁性、代码优雅性、调试速度、可维护性和可部署性(通过 TFServing、TFLite、TF.js)。
- 灵活性:Keras 遵循逐步披露复杂性的原则,其中简单的工作流程既简单又快捷,而更高级的工作流程可以通过基于前面学习的概念的清晰路径来实现。
- 强大:Keras提供行业级的性能和可扩展性,NASA、YouTube和Waymo等领先组织的采用就证明了这一点。Keras支持各种功能,包括YouTube推荐系统和世界上最先进的自动驾驶汽车。
Keras 提供了一个强大而灵活的深度学习平台,专注于简化开发人员体验,允许快速实验,并提供卓越的性能和可扩展性。
了解有关 Keras 的更多信息:https://github.com/keras-team/keras
6. Stable Diffusion
稳定扩散是一种利用高级计算资源的尖端潜在文本到图像扩散模型。该模型使用潜在扩散模型和 5x512 图像在 LAION-512B 数据库的一个子集上进行训练,这要归功于 Stability AI 的慷慨计算捐赠和 LAION 的支持。与谷歌的Imagen类似,该模型利用冻结的CLIP ViT-L/14文本编码器来调节文本提示。尽管具有强大的功能,但该模型相对轻巧,具有860M UNet和123M文本编码器,并且需要至少具有10GB VRAM的GPU。有关更多详细信息,请参阅以下部分和型号卡。
稳定扩散 v1 是一种特定的模型配置,扩散模型采用 860M UNet 和 CLIP ViT-L/14 文本编码器,并带有降采样因子 8 自动编码器。该模型在 256x256 图像上进行了预训练,随后在 512x512 图像上进行了微调。
了解有关稳定扩散的更多信息:https://github.com/CompVis/stable-diffusion
7. DeepFaceLab
DeepFaceLab是用于创建深度伪造的领先开源软件。
利用深度学习创建、修改或合成的深度伪造是指经过操纵的图像和视频。一个突出的例子是在现有的图像或视频中替换名人或政治家的脸,通常出于幽默的目的,但有时出于恶意。基于Python的开源DeepFaceLab代表了一种强大的deepfake技术,能够替换媒体中的面部,以及去除皱纹和其他衰老标志物。
了解有关 DeepFaceLab: https://github.com/iperov/DeepFaceLab 的更多信息.
8. Detectron2
Detectron2 是来自 Facebook AI Research 的最先进的库,为计算机视觉项目提供尖端的检测和分割算法。它建立在前身Detectron和maskrcnn-benchmark的成功基础上,旨在支持Facebook内部的研究和生产应用程序。Detectron的早期版本由Caffe提供支持,由于随后的代码修改将Caffe2和PyTorch合并到一个存储库中,这使得它难以使用。为了回应开源社区的反馈,Facebook AI发布了Detectron2,作为原始软件系统的更新,用户友好版本。
Detectron2提供一系列先进的对象识别算法,包括DensePose,全景特征金字塔网络以及FAIR开创性的Mask R-CNN模型系列的各种变体。它支持使用框和实例分割掩码进行对象检测,以及类似于 Detectron的人体姿势预测。此外,Detectron2还支持语义分割和全景分割,它们结合了语义和实例分割,可以更精确地检测和分割图像和视频中的对象。
了解有关 Detectron2: https://github.com/facebookresearch/detectron2 的更多信息
9. Apache MXNet
Apache MXNet 是一个高效灵活的深度学习框架,使开发人员能够混合符号和命令式编程,以实现最大的生产力。MXNet 的核心是动态依赖调度程序,可实时并行化符号和命令式操作,以及图形优化层,可提高符号执行速度和内存效率。作为一种便携式轻量级工具,MXNet 可以跨多个 GPU 和机器进行扩展。
除了技术能力之外,MXNet还代表了一个渴望使AI民主化的社区。它提供了构建深度学习系统的指南和蓝图,并与黑客分享了有关深度学习系统的有趣见解。
MXNet的功能包括一个类似NumPy的编程接口,该接口与新的且易于使用的Gluon 2.0接口集成,使希望深入研究深度学习的NumPy用户可以访问它。此外,自动混合以传统符号编程的速度提供命令式编程。该框架是轻量级的,内存效率高的,并且通过ARM上的本机交叉编译支持以及TVM,TensorRT和OpenVINO等生态系统项目移植到智能设备。
MXNet 还可以通过 ps-lite、Horovod 和 BytePS 扩展到具有自动并行性的多 GPU 和分布式设置。其可扩展的后端允许与自定义加速器库和内部硬件进行完全自定义和集成,而无需维护分叉。此外,MXNet支持多种编程语言,包括Python,Java,C++,R,Scala,Clojure,Go,Javascript,Perl和Julia。它也是云友好的,并与AWS和Azure兼容。
了解有关 MXNet: https://github.com/apache/mxnet 的更多信息
10. Fastai
Fastai 是一个全面的深度学习库,旨在支持从业者快速轻松地在标准深度学习领域获得最先进的结果,并为研究人员提供开发新方法的灵活性。它通过分层架构实现这一点,该架构采用解耦抽象来表达深度学习和数据处理技术的常见底层模式。这些抽象通过Python语言的动态性和PyTorch库的灵活性简洁明了地表达出来。
Fastai具有用于Python的新型类型调度系统,以及用于张量的语义类型层次结构。其GPU优化的计算机视觉库可以在纯Python中扩展。此外,它还提供了一个优化器,将现代优化器的通用功能重构为两个基本部分,允许在几行代码中实现优化算法。还包括一个新颖的 2 路回调系统,可以访问数据、模型或优化器的任何部分,并在训练期间随时更改它。新的数据块API以及许多其他功能进一步区分fastai。
Fastai 的架构围绕两个主要设计目标构建:平易近人和高效,同时又可破解和可配置。这是通过利用提供可组合构建块的较低级别 API 的层次结构来实现的。因此,想要修改高级 API 或添加特定行为以满足其需求的用户不需要学习最低级别的 API。
了解有关法泰的更多信息:https://github.com/fastai/fastai
11. Open Assistant
Open Assistant 是一个有远见的项目,旨在使对基于聊天的特殊大语言模型的访问民主化。作为 ChatGPT 的开源替代品,它旨在刺激语言创新的革命。我们的愿景是促进语言的突破性进步,就像稳定扩散改变了艺术和图像的创作一样。通过创建Open Assistant,我们希望促进语言能力的进步,最终为改善整个社会做出贡献。
了解有关 Open Assistant: https://github.com/LAION-AI/Open-Assistant 的更多信息
12. MindsDB
MindsDB是一个有前途的开源平台,旨在使开发人员能够构建AI驱动的应用程序。它为顶级机器学习框架提供了一种自动化和集成的方法,将它们无缝地整合到数据堆栈中。MindsDB提供了一个直观的界面,可以在数据库中将模型训练和部署为AI表,从而简化了机器学习过程,并使不同技能水平的开发人员更容易访问。
MindsDB为开发人员提供了多种用例来构建AI模型,包括用于检测金融交易和电子商务平台中的欺诈活动的欺诈检测。销售预测,利用历史销售数据来预测未来的销售并做出明智的决策。客户细分,用于根据客户的行为、偏好和其他因素对客户进行细分,从而实现个性化营销。情绪分析,利用预先训练的模型(如 GPT-3 和 HuggingFace 模型)来分析文本,例如客户评论。最后,预测性维护,促进模型的开发以预测设备或机械故障,实现主动维护并最大限度地减少停机时间。
了解更多: https://github.com/mindsdb/mindsdb
13.DALL·E Mini
DALL-E mini是一个在线文本到图像生成器,最近在社交媒体平台上经历了激增。该应用程序通过将文本短语(如“山日落”、“月球上的埃菲尔铁塔”或“奥巴马建造沙堡”)转换为图像表示来发挥作用。
该应用程序最初是由德克萨斯州计算机工程师鲍里斯·戴马(Boris Dayma)提交的编码竞赛的,其名称源于其基于OpenAI强大的DALL-E人工智能技术。然而,DALL-E mini(现在应母公司的要求更名为Craiyon)以更易于访问的Web应用程序格式利用了类似的技术。
虽然OpenAI的模型仅限于大多数用户,但Dayma的模型可供互联网上的任何人使用。该模型的开发是通过与Twitter和GitHub上的AI研究社区合作完成的。
了解更多关于DALL·E 迷你:https://github.com/borisdayma/dalle-mini
14. Theano
Theano是由加拿大魁北克省蒙特利尔市蒙特利尔大学的MILA小组开发的开源人工智能项目。它是一个Python库,有助于使用NumPy或SciPy对多维数组进行数学运算。Theano能够利用GPU来加速处理,并且可以自动生成用于梯度计算的符号图。
Theano最初是为实现尖端的深度学习算法而设计的,现已成为深度学习研究和开发的行业标准。虽然它拥有卓越的计算性能,但其用户对不直观的用户界面和无用的错误消息表示担忧。因此,Theano通常与更用户友好的包装器(如Keras,Lasagne和Blocks)一起使用,它们是用于快速原型设计和模型测试的高级框架。尽管如此,许多数据科学家仍然认为Theano因其简单性和成熟性而具有吸引力。
Theano简化了各种数学过程的定义,优化和评估。此外,Theano 自动计算多个点的梯度,为模型训练启用梯度下降。
了解有关Theano的更多信息:https://github.com/Theano/Theano
15. TFLearn
TFlearn是一个建立在Tensorflow之上的深度学习库,旨在提供更高级别的API,以促进和加速深度学习实验,同时保持与Tensorflow的完全透明和兼容性。
TFlearn 提供用户友好且易于理解的高级 API,用于开发深度神经网络,以及广泛的内置模块化神经网络层、正则器、优化器和用于快速原型设计的指标。此外,TFlearn提供了Tensorflow的完全透明度,允许用户独立利用两个库的优势。
TFlearn 还具有一组强大的辅助函数来训练任何 Tensorflow 图,并且它可以轻松、全面地可视化深度学习模型,其中包含有关权重、梯度、激活等的详细信息。此外,TFlearn 支持使用多个 CPU/GPU 的轻松设备放置。
TFlearn的高级API支持各种深度学习模型,包括卷积,LSTM,BiRNN,BatchNorm,PReLU,残差网络和生成网络等。TFlearn的目标是在未来与最新的深度学习技术保持同步。请注意,最新版本的TFlearn(v0.5)仅与Tensorflow v2.0及更高版本兼容。
了解有关TFLearn的更多信息:https://github.com/tflearn/tflearn
16.Ivy
Ivy是一个最先进的ML框架,目前支持JAX,TensorFlow,PyTorch和Numpy。我们很高兴邀请您体验其卓越的功能。
我们的路线图包括集成所有框架之间的自动代码转换,以及以最少的代码修改为所有开源库提供即时多框架支持。请参阅以下子页面,以了解有关 Ivy 的目的、用途、即将推出的功能和贡献机会的更多信息。
为了指示功能的当前状态,我们使用它来表示正在进行的开发并表示实现完成。此外,我们还为Google Colabs提供交互式演示,以便进一步探索。
请注意,常春藤仍处于开发的早期阶段。因此,在接下来的几周内,在即将发布的版本 1.2.0 之前,预计可能会发生重大更改和限制。
我们欢迎有关各方提供意见。请参阅我们的贡献者指南并仔细阅读开放任务以获取有关如何开始的更多信息。
了解有关常春藤的更多信息:https://github.com/unifyai/ivy
17. YOLO7
YOLOv7 是用于计算机视觉任务的最快、最准确的实时对象检测模型。
实时物体检测是自动驾驶汽车、机器人和辅助设备等各种应用的关键领域,对人工智能提出了复杂的挑战。准确识别图像中的物体对于确保这些技术收集和传达精确的环境信息至关重要。
在开源对象检测工具中,YOLOv7 是最有效和最精确的选项之一。通过提供一组包含物体的图像,该工具可以快速准确地识别它们,从而为观察到的场景提供有价值的见解。
了解有关 YOLO7: https://github.com/WongKinYiu/yolov7 的更多信息
18. FauxPilot
FauxPilot 通过培训现有生产代码并利用其知识提供结构化反馈和建议,为寻求支持的程序员提供编码帮助。该项目的灵感来自GitHub Copilot,但通过允许用户选择特定的存储库进行培训而与众不同。
这种增加的控制级别使个人能够避免使用来自未获得批准的来源的代码片段,确保获得的帮助和代码片段是可靠的,并且没有潜在的法律问题。通过仔细选择培训源并将其限制为具有适当权限和许可证的人员,程序员可以增加获得值得信赖和可信的编码支持的可能性。
了解有关 FauxPilot 的更多信息: https://github.com/fauxpilot/fauxpilot
19. PaddleNLP
PaddleNLP是一个著名的NLP库,它利用了PaddlePaddle框架,为各种NLP任务提供了一个易于访问且强大的工具集。其令人印象深刻的预训练模型动物园支持研究和工业应用,使用户能够完成文本分类、神经搜索、问答、信息提取、文档智能、情感分析和扩散 AIGC 系统等任务。
随着自然语言处理 (NLP) 引擎变得越来越复杂,它们可以执行神经搜索、情感分析,并为人类和机器用户提取重要信息。尽管偶尔会出现故障,但这项技术用途广泛,适用于不同的领域和用例,例如亚马逊的Alexa。使用开源NLP库PaddleNLP,用户可以无缝收集搜索情绪并识别基本实体。
了解有关 PaddleNLP 的更多信息: https://github.com/PaddlePaddle/PaddleNLP
20.DeepPavlov
DeepPavlov是一个复杂的开源对话AI库,使用PyTorch框架构建。其主要目的是促进高级聊天机器人和复杂对话系统的开发。此外,该图书馆还支持自然语言处理(NLP)领域的研究活动,特别关注对话系统。
许多企业和大型组织正在采用聊天机器人作为客户服务前线的替代品。因此,机器越来越有能力参与对话。DeepPavlov集成了基本的机器学习工具,如TensorFlow,Keras和PyTorch,以提供能够增强用户学习体验的聊天机器人。所取得的成果往往是非常规的、不寻常的,偶尔,通过适当的培训,可以证明是有价值的。
了解有关DeepPavlov的更多信息:https://github.com/deeppavlov/DeepPavlov
原文链接:https://www.mvrlink.com/top-20-ai-open-source-projects-in-2023/