Difference between revisions of "Libraries & Frameworks"
m |
|||
| (43 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| + | {{#seo: | ||
| + | |title=PRIMO.ai | ||
| + | |titlemode=append | ||
| + | |keywords=ChatGPT, artificial, intelligence, machine, learning, GPT-4, GPT-5, NLP, NLG, NLC, NLU, models, data, singularity, moonshot, Sentience, AGI, Emergence, Moonshot, Explainable, TensorFlow, Google, Nvidia, Microsoft, Azure, Amazon, AWS, Hugging Face, OpenAI, Tensorflow, OpenAI, Google, Nvidia, Microsoft, Azure, Amazon, AWS, Meta, LLM, metaverse, assistants, agents, digital twin, IoT, Transhumanism, Immersive Reality, Generative AI, Conversational AI, Perplexity, Bing, You, Bard, Ernie, prompt Engineering LangChain, Video/Image, Vision, End-to-End Speech, Synthesize Speech, Speech Recognition, Stanford, MIT |description=Helpful resources for your journey with artificial intelligence; videos, articles, techniques, courses, profiles, and tools | ||
| + | |||
| + | <!-- Google tag (gtag.js) --> | ||
| + | <script async src="https://www.googletagmanager.com/gtag/js?id=G-4GCWLBVJ7T"></script> | ||
| + | <script> | ||
| + | window.dataLayer = window.dataLayer || []; | ||
| + | function gtag(){dataLayer.push(arguments);} | ||
| + | gtag('js', new Date()); | ||
| + | |||
| + | gtag('config', 'G-4GCWLBVJ7T'); | ||
| + | </script> | ||
| + | }} | ||
| + | [https://www.youtube.com/results?search_query=ai+library+Libraries+framework YouTube] | ||
| + | [https://www.quora.com/search?q=ai%20library%20Libraries%20framework ... Quora] | ||
| + | [https://www.google.com/search?q=ai+library+Libraries+framework ...Google search] | ||
| + | [https://news.google.com/search?q=ai+library+Libraries+framework ...Google News] | ||
| + | [https://www.bing.com/news/search?q=ai+library+Libraries+framework&qft=interval%3d%228%22 ...Bing News] | ||
| + | |||
| + | * [[Libraries & Frameworks Overview]] ... [[Libraries & Frameworks]] ... [[Git - GitHub and GitLab]] ... [[Other Coding options]] | ||
| + | * [[Development]] ... [[Notebooks]] ... [[Development#AI Pair Programming Tools|AI Pair Programming]] ... [[Codeless Options, Code Generators, Drag n' Drop|Codeless]] ... [[Hugging Face]] ... [[Algorithm Administration#AIOps/MLOps|AIOps/MLOps]] ... [[Platforms: AI/Machine Learning as a Service (AIaaS/MLaaS)|AIaaS/MLaaS]] | ||
| + | * [[Python]] ... [[Generative AI with Python|GenAI w/ Python]] ... [[JavaScript]] ... [[Generative AI with JavaScript|GenAI w/ JavaScript]] ... [[TensorFlow]] ... [[PyTorch]] | ||
| + | * [[Processing Units - CPU, GPU, APU, TPU, VPU, FPGA, QPU|GPU]] | ||
| + | * [[Gaming]] ... [[Game-Based Learning (GBL)]] ... [[Games - Security|Security]] ... [[Game Development with Generative AI|Generative AI]] ... [[Metaverse#Games - Metaverse|Games - Metaverse]] ... [[Games - Quantum Theme|Quantum]] ... [[Game Theory]] ... [[Game Design | Design]] | ||
| + | * [https://github.com/THUNLP-MT Machine Translation open-source toolkits | Tsinghua Natural Language Processing Group] | ||
| + | * [https://www.dmoztools.net/Computers/Artificial_Intelligence/Machine_Learning/Software/ Machine Learning Software | DMOZtools.net] | ||
| + | |||
| + | A library and a framework are both code written by someone else that help you solve common problems in easier ways. However, they differ in how they control the flow of your application. | ||
| + | |||
| + | * <b>A library</b> is a collection of functions or classes that you can call from your own code to perform specific tasks. For example, if you want to manipulate strings, you can use a library that provides string functions. You are in charge of when and where to use the library functions. Some examples of AI-related libraries are TensorFlow, Theano, and PyTorch. | ||
| + | * <b>A framework</b> is a set of rules or guidelines that define the structure and behavior of your application. For example, if you want to build a web application, you can use a framework that provides templates, routing, authentication, etc. The framework calls your code at certain points, following the inversion of control principle. Some examples of AI-related frameworks are Angular, Vue, and Microsoft CNTK. | ||
| + | |||
| + | The main difference between a library and a framework is who is in control: you control the library, but the framework controls you. | ||
| + | |||
| + | |||
| + | === With pages at Primo.ai or not included in Wikipedia Deep learning comparison chart below === | ||
| + | |||
| + | * [[Python#scikit-learn|scikit-learn]] | ||
| + | * [[PyTorch]] | ||
| + | * [[ConvNetJS]] | [[Creatives#Andrej Karpathy |Andrej Karpathy]] | ||
| + | * [[Accord.Net Framework]] | ||
* [[Caffe / Caffe2]] | * [[Caffe / Caffe2]] | ||
| − | * [[Cognitive Toolkit (CNTK) | + | * [[Microsoft Cognitive Toolkit]] - was Cognitive Toolkit (CNTK) |
* [[gluon]] | * [[gluon]] | ||
* [[H20]] | * [[H20]] | ||
* [[MXNet]] | * [[MXNet]] | ||
* [[Neuroph]] | * [[Neuroph]] | ||
| − | |||
* [[neon]] | * [[neon]] | ||
| − | |||
| − | |||
| − | |||
* [[Deeplearning4j]] | * [[Deeplearning4j]] | ||
* [[theano]] | * [[theano]] | ||
| − | * [[ | + | * [[Spark MLlib]] |
| − | * [ | + | * [[Cloudera]] Oryx |
| − | * [ | + | * [[GoLearn]] |
| − | * [ | + | * [[Weka]] |
| − | * [ | + | * [[Apache Mahout]] |
| + | * [[Shogun]] | ||
| + | * [[Ray - UC Berkeley RISELab]] | ||
| + | * [https://en.wikipedia.org/wiki/MLPACK_(C%2B%2B_library) MLPACK (C++ library)] | ||
| + | * [https://en.wikipedia.org/wiki/Accord.NET Accord.NET] | ||
| + | * [[Python#OpenCV| OpenCV]] Open Computer Vision - work with images and/or videos and wish to add a variety of classical and state-of-the-art vision algorithms to their toolbox. | ||
| + | * [https://en.wikipedia.org/wiki/OpenCog OpenCog], a GPL-licensed framework for artificial intelligence written in C++, Python and Scheme. | ||
| + | * [https://en.wikipedia.org/wiki/RapidMiner RapidMiner], an environment for machine learning and [[data mining]], now developed commercially. | ||
| + | * [https://en.wikipedia.org/wiki/Weka Weka], a free implementation of many machine learning algorithms in Java. | ||
| + | |||
| + | {|<!-- T --> | ||
| + | | valign="top" | | ||
| + | {| class="wikitable" style="width: 550px;" | ||
| + | || | ||
| + | <youtube>XHyASP49ses</youtube> | ||
| + | <b>Jeremy Howard: Deep Learning Frameworks - TensorFlow, PyTorch, fast.ai | AI Podcast Clips | ||
| + | </b><br>This is a clip from a conversation with Jeremy Howard from Aug 2019. New full episodes every Mon & Thu and 1-2 new clips or a new non-podcast video on all other days. | ||
| + | |} | ||
| + | |<!-- M --> | ||
| + | | valign="top" | | ||
| + | {| class="wikitable" style="width: 550px;" | ||
| + | || | ||
| + | <youtube>SJldOOs4vB8</youtube> | ||
| + | <b>Deep Learning Frameworks 2019 | ||
| + | </b><br>[[Creatives#Siraj Raval|Siraj Raval]] Which deep learning framework should you use? In this video I'll compare 10 deep learning frameworks across a wide variety of metrics. [[PyTorch]], [[TensorFlow]], MXNet, Chainer, CNTK, Sonnet, DeepLearning4J, CoreML, ONNX, we've got a lot to cover in this video! Using code, programmatic features, and theory, I'll navigate this field ultimately coming to some clear conclusions. Enjoy! | ||
| + | |} | ||
| + | |}<!-- B --> | ||
| − | === | + | == Deep learning software by name== |
| − | + | {| class="wikitable sortable" style="text-align: center; font-size: 85%; width: auto; table-layout: fixed;" | |
| − | + | |- | |
| − | + | ! style="width: 12em" | Software | |
| − | + | ! Creator | |
| + | ! Software license{{efn|name="license"|Licenses here are a summary, and are not taken to be complete statements of the licenses. Some libraries may use other libraries internally under different licenses}} | ||
| + | ! Open source | ||
| + | ! Platform | ||
| + | ! Written in | ||
| + | ! Interface | ||
| + | ! [[OpenMP]] support | ||
| + | ! [[OpenCL]] support | ||
| + | ! [[CUDA]] support | ||
| + | !Parallel execution (multi node) | ||
| + | ! [[Automatic differentiation]]<ref>{{cite arXiv |author1=Atilim Gunes Baydin |author2=Barak A. Pearlmutter |author3=Alexey Andreyevich Radul |author4=Jeffrey Mark Siskind |eprint=1502.05767 |title=Automatic differentiation in machine learning: a survey |class=cs.LG |date=20 February 2015}}</ref> | ||
| + | ! Has pretrained models | ||
| + | ! [[Recurrent neural network|Recurrent net]]s | ||
| + | ! [[Convolutional neural network|Convolutional nets]] | ||
| + | ! [[Restricted Boltzmann machine|RBM]]/[[deep belief network|DBNs]] | ||
| + | ![[Metal (API)|Metal]] support | ||
| + | |- | ||
| + | |[https://roNNie.ai roNNie.ai] | ||
| + | |Kevin Lok | ||
| + | |[[MIT]] | ||
| + | |{{Yes}} | ||
| + | |Linux, macOS, Windows | ||
| + | |Python | ||
| + | |Python | ||
| + | | | ||
| + | | | ||
| + | |{{Yes}} | ||
| + | | | ||
| + | | | ||
| + | |{{Yes}} | ||
| + | |{{Yes}} | ||
| + | |{{Yes}} | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | |[[BigDL]] | ||
| + | |Jason Dai | ||
| + | |[[Apache License|Apache 2.0]] | ||
| + | |Yes | ||
| + | |Apache Spark | ||
| + | |Scala | ||
| + | |Scala, Python | ||
| + | | | ||
| + | | | ||
| + | | {{No}} | ||
| + | | | ||
| + | | | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | | [[Caffe / Caffe2]] | ||
| + | | Berkeley Vision and Learning Center | ||
| + | | {{Free|[[BSD licenses|BSD license]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]]<ref>{{cite web|url=https://github.com/Microsoft/caffe|title=Microsoft/caffe|work=GitHub}}</ref> | ||
| + | | [[C++]] | ||
| + | | [[Python (programming language)|Python]], [[MATLAB]], [[C++]] | ||
| + | | {{Yes}} | ||
| + | | {{Depends|Under development<ref>{{cite web|url=https://github.com/BVLC/caffe/tree/opencl|title=OpenCL Caffe}}</ref>}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>{{cite web|url=https://caffe.berkeleyvision.org/model_zoo.html|title=Caffe Model Zoo}}</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | {{Dunno}} | ||
| + | | | ||
| + | |- | ||
| + | | [[Deeplearning4j]] | ||
| + | | Skymind engineering team; Deeplearning4j community; originally [[Adam Gibson (computer scientist)|Adam Gibson]] | ||
| + | | {{Free|[[Apache 2.0]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]], [[Android (operating system)|Android]] ([[Cross-platform]]) | ||
| + | | [[C++]], [[Java (programming language)|Java]] | ||
| + | | [[Java (programming language)|Java]], [[Scala (programming language)|Scala]], [[Clojure (programming language)|Clojure]], [[Python (programming language)|Python]] ([[Keras]]), [[Kotlin (programming language)|Kotlin]] | ||
| + | | {{Yes}} | ||
| + | | {{Depends|On roadmap}}<ref>{{cite web|url=https://github.com/deeplearning4j/nd4j/issues/27|title=Support for Open CL · Issue #27 · deeplearning4j/nd4j|work=GitHub}}</ref> | ||
| + | | {{Yes}}<ref>{{cite web|url=https://nd4j.org/gpu_native_backends.html|title=N-Dimensional Scientific Computing for Java|publisher=}}</ref><ref>{{cite web|url=https://deeplearning4j.org/compare-dl4j-tensorflow-pytorch|title=Comparing Top Deep Learning Frameworks|publisher=Deeplearning4j}}</ref> | ||
| + | | {{Yes|Computational Graph}} | ||
| + | | {{Yes}}<ref>{{cite web|url=https://deeplearning4j.org/model-zoo|title=Deeplearning4j Models|author1=Chris Nicholson|author2= Adam Gibson|publisher=}}</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>{{cite web|url=https://deeplearning4j.org/spark|title=Deeplearning4j on Spark|author=Deeplearning4j|publisher=Deeplearning4j}}</ref> | ||
| + | | | ||
| + | |- | ||
| + | |[[Chainer]] | ||
| + | |Preferred Networks | ||
| + | | {{Free|[[MIT license]]}} | ||
| + | | {{Yes}} | ||
| + | |[[Linux]], [[macOS]], [[Microsoft Windows|Windows]] | ||
| + | | | ||
| + | |Python | ||
| + | | {{No}} | ||
| + | | {{No}}<ref>https://github.com/chainer/chainer/pull/2717</ref><ref>https://github.com/chainer/chainer/issues/99</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | |Darknet | ||
| + | |Joseph Redmon | ||
| + | | {{Free|[[Public Domain]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Cross-platform|Cross-Platform]] | ||
| + | | [[C (programming language)|C]] | ||
| + | | [[C (programming language)|C]], [[Python (programming language)|Python]] | ||
| + | | {{Yes}} | ||
| + | | {{No}}<ref>https://github.com/pjreddie/darknet/issues/127</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | |[[Dlib]] | ||
| + | |Davis King | ||
| + | | {{Free|[[Boost Software License]]}} | ||
| + | | {{Yes}} | ||
| + | |[[Cross-platform|Cross-Platform]] | ||
| + | |[[C++]] | ||
| + | |[[C++]] | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | |- | ||
| + | |[[DataMelt]] (DMelt) | ||
| + | | S.Chekanov | ||
| + | | {{Free|[[Freemium]]}} | ||
| + | | {{Yes}} | ||
| + | |[[Cross-platform|Cross-Platform]] | ||
| + | | [[Java (programming language)|Java]] | ||
| + | | [[Java (programming language)|Java]] | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | | ||
| + | |- | ||
| + | |DyNet | ||
| + | |Carnegie Mellon University | ||
| + | | {{Free|[[Apache 2.0]]}} | ||
| + | | {{Yes}} | ||
| + | |[[Linux]], [[macOS]], [[Microsoft Windows|Windows]] | ||
| + | | | ||
| + | |[[C++]], [[Python (programming language)|Python]] | ||
| + | | | ||
| + | | {{No}}<ref>https://github.com/clab/dynet/issues/405</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | | | ||
| + | |- | ||
| + | | Intel [[Data Analytics Acceleration Library]] | ||
| + | | Intel | ||
| + | | {{Free|[[Apache License 2.0]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] on [[Intel]] [[Central processing unit|CPU]]<ref name="intel-daal">[https://software.intel.com/intel-daal Intel® Data Analytics Acceleration Library (Intel® DAAL) | Intel® Software]</ref> | ||
| + | | [[C++]], [[Python (programming language)|Python]], [[Java]] | ||
| + | | [[C++]], [[Python (programming language)|Python]], [[Java]]<ref name="intel-daal"/> | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | |- | ||
| + | | Intel [[Math Kernel Library]] | ||
| + | | Intel | ||
| + | | {{Proprietary}} | ||
| + | | {{No}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] on [[Intel]] [[Central processing unit|CPU]]<ref>[https://software.intel.com/mkl Intel® Math Kernel Library (Intel® MKL) | Intel® Software]</ref> | ||
| + | | | ||
| + | | [[C (programming language)|C]]<ref>[https://software.intel.com/en-us/mkl-developer-reference-c-deep-neural-network-functions Deep Neural Network Functions]</ref> | ||
| + | | {{Yes}}<ref>[https://software.intel.com/en-us/articles/intel-math-kernel-library-intel-mkl-using-intel-mkl-with-threaded-applications Using Intel® MKL with Threaded Applications | Intel® Software]</ref> | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | {{Yes}}<ref name="intel-benchmark">[https://software.intel.com/en-us/articles/intel-xeon-phi-delivers-competitive-performance-for-deep-learning-and-getting-better-fast Intel® Xeon Phi™ Delivers Competitive Performance For Deep Learning—And Getting Better Fast | Intel® Software]</ref> | ||
| + | | {{Yes}}<ref name="intel-benchmark"/> | ||
| + | | | ||
| + | | {{No}} | ||
| + | | | ||
| + | |- | ||
| + | | [[Keras]] | ||
| + | | François Chollet | ||
| + | | {{Free|[[MIT license]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] | ||
| + | | [[Python (programming language)|Python]] | ||
| + | | [[Python (programming language)|Python]], [[R (programming language)|R]] | ||
| + | | {{Depends|Only if using Theano as backend}} | ||
| + | | {{Depends|Under development for the Theano backend (and on roadmap for the TensorFlow backend)}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://keras.io/applications/</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>[https://github.com/fchollet/keras/issues/2436 Does Keras support using multiple GPUs? · Issue #2436 · fchollet/keras]</ref> | ||
| + | | | ||
| + | |- | ||
| + | | [[MATLAB]] + Neural Network Toolbox | ||
| + | | [[MathWorks]] | ||
| + | | {{Proprietary}} | ||
| + | | {{No}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] | ||
| + | | [[C (programming language)|C]], [[C++]], [[Java (programming language)|Java]], [[MATLAB]] | ||
| + | | [[MATLAB]] | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Yes|Train with Parallel Computing Toolbox and generate CUDA code with GPU Coder}}<ref>{{cite web|title=GPU Coder - MATLAB & Simulink|url=https://www.mathworks.com/products/gpu-coder.html|website=MathWorks|accessdate=13 November 2017}}</ref> | ||
| + | | {{No}} | ||
| + | | {{Yes}}<ref name="NNT">{{cite web|title=Neural Network Toolbox - MATLAB|url=https://www.mathworks.com/products/neural-network.html|website=MathWorks|accessdate=13 November 2017}}</ref><ref>{{cite web|title=Deep Learning Models - MATLAB & Simulink|url=https://www.mathworks.com/solutions/deep-learning/models.html|website=MathWorks|accessdate=13 November 2017}}</ref> | ||
| + | | {{Yes}}<ref name="NNT"/> | ||
| + | | {{Yes}}<ref name="NNT"/> | ||
| + | | {{Yes}}<ref name="NNT"/> | ||
| + | | {{Yes|With Parallel Computing Toolbox}}<ref>{{cite web|title=Parallel Computing Toolbox - MATLAB|url=https://www.mathworks.com/products/parallel-computing.html|website=MathWorks|accessdate=13 November 2017}}</ref> | ||
| + | | | ||
| + | |- | ||
| + | | [[Microsoft Cognitive Toolkit]] | ||
| + | | [[Microsoft Research]] | ||
| + | | {{Free|[[MIT license]]}}<ref>{{cite web|url=https://github.com/Microsoft/CNTK/blob/master/LICENSE.md|title=CNTK/LICENSE.md at master · Microsoft/CNTK · GitHub|work=GitHub}}</ref> | ||
| + | | {{Yes}} | ||
| + | | [[Microsoft Windows|Windows]], [[Linux]]<ref name="Setup CNTK on your machine">{{cite web|url=https://github.com/Microsoft/CNTK/wiki/Setup-CNTK-on-your-machine|title=Setup CNTK on your machine|work=GitHub}}</ref> ([[macOS]] via Docker on roadmap) | ||
| + | | [[C++]] | ||
| + | | [[Python (programming language)|Python (]][[Keras]]), [[C++]], [[Command line]],<ref>{{cite web|url=https://github.com/Microsoft/CNTK/wiki/CNTK-usage-overview|title=CNTK usage overview|work=GitHub}}</ref> BrainScript<ref>{{cite web|url=https://github.com/Microsoft/CNTK/wiki/BrainScript-Network-Builder|title=BrainScript Network Builder|work=GitHub}}</ref> ([[.NET Framework|.NET]] on roadmap<ref>{{cite web|url=https://github.com/Microsoft/CNTK/issues/960|title=.NET Support · Issue #960 · Microsoft/CNTK|work=GitHub}}</ref>) | ||
| + | | {{Yes}}<ref>{{cite web|url=https://github.com/Microsoft/CNTK/issues/59#issuecomment-178104505|title=How to train a model using multiple machines? · Issue #59 · Microsoft/CNTK|work=GitHub}}</ref> | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://github.com/Microsoft/CNTK/issues/140#issuecomment-186466820</ref> | ||
| + | | {{Yes}}<ref name="cntk.ai">{{cite web|url=https://www.cntk.ai/|title=CNTK - Computational Network Toolkit|publisher=Microsoft Corporation}}</ref> | ||
| + | | {{Yes}}<ref name="cntk.ai" /> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>{{cite web|url=https://github.com/Microsoft/CNTK/wiki/Multiple-GPUs-and-machines|title=Multiple GPUs and machines|publisher=Microsoft Corporation}}</ref> | ||
| + | | | ||
| + | |- | ||
| + | | Apache [[MXNet]] | ||
| + | | Apache Software Foundation | ||
| + | | {{Free|[[Apache 2.0]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>{{cite web|url=https://github.com/dmlc/mxnet/releases|title=Releases · dmlc/mxnet|work=Github}}</ref><ref>{{cite web|url=https://mxnet.readthedocs.io/en/latest/how_to/build.html#building-on-windows|title=Installation Guide — mxnet documentation|work=Readthdocs}}</ref> [[Amazon Web Services|AWS]], [[Android (operating system)|Android]],<ref>{{cite web|url=https://mxnet.readthedocs.io/en/latest/how_to/smart_device.html|title=MXNet Smart Device|work=ReadTheDocs}}</ref> [[iOS]], [[File manager|JavaScript]]<ref>{{cite web|url=https://github.com/dmlc/mxnet.js|title=MXNet.js|work=Github}}</ref> | ||
| + | | Small [[C++]] core library | ||
| + | | [[C++]], [[Python (programming language)|Python]], [[Julia (programming language)|Julia]], [[Matlab]], [[JavaScript]], [[Go (programming language)|Go]], [[R (programming language)|R]], [[Scala (programming language)|Scala]], [[Perl (programming language)|Perl]] | ||
| + | | {{Yes}} | ||
| + | | {{Depends|On roadmap}}<ref>{{cite web|url=https://github.com/dmlc/mxnet/issues/621|title=Support for other Device Types, OpenCL AMD GPU · Issue #621 · dmlc/mxnet|work=GitHub}}</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://mxnet.readthedocs.io/</ref> | ||
| + | | {{Yes}}<ref>{{cite web|url=https://github.com/dmlc/mxnet-model-gallery|title=Model Gallery|work=GitHub}}</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>{{cite web|url=https://mxnet.readthedocs.io/en/latest/how_to/multi_devices.html|title=Run MXNet on Multiple CPU/GPUs with Data Parallel|work=GitHub}}</ref> | ||
| + | | | ||
| + | |- | ||
| + | | [[Neural Designer]] | ||
| + | | Artelnics | ||
| + | | {{Proprietary}} | ||
| + | | {{No}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] | ||
| + | | [[C++]] | ||
| + | | [[Graphical user interface]] | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Dunno}} | ||
| + | | {{Dunno}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Dunno}} | ||
| + | | | ||
| + | |- | ||
| + | | [[OpenNN]] | ||
| + | | Artelnics | ||
| + | | {{Free|[[GNU Lesser General Public License|GNU LGPL]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Cross-platform]] | ||
| + | | [[C++]] | ||
| + | | [[C++]] | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{Dunno}} | ||
| + | | {{Dunno}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Dunno}} | ||
| + | | | ||
| + | |- | ||
| + | |[https://github.com/plaidml/plaidml PlaidML] | ||
| + | |[https://vertex.ai Vertex.AI] | ||
| + | |[[AGPL 3|AGPL3]] | ||
| + | | {{Yes}} | ||
| + | |[[Linux]], [[macOS]], [[Windows]] | ||
| + | |[[C++]], [[Python (programming language)|Python]] | ||
| + | |Keras, Python, C++, C | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Dunno}} | ||
| + | | {{Yes}} | ||
| + | |- | ||
| + | | [[PyTorch]] | ||
| + | | Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan | ||
| + | | {{Free|[[BSD licenses|BSD license]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Windows]] | ||
| + | | [[Python (programming language)|Python]], [[C (programming language)|C]], [[CUDA]] | ||
| + | | [[Python (programming language)|Python]] | ||
| + | | {{Yes}} | ||
| + | | {{Depends|Via separately maintained package}}<ref>https://github.com/hughperkins/pytorch-coriander</ref><ref>https://github.com/pytorch/pytorch/issues/488</ref><ref>https://github.com/pytorch/pytorch/issues/488#issuecomment-273626736</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | |- | ||
| + | | [[Apache SINGA]] | ||
| + | | [[Apache Incubator]] | ||
| + | | {{Free|[[Apache 2.0]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]] | ||
| + | | [[C++]] | ||
| + | | [[Python (programming language)|Python]], [[C++]], [[Java (programming language)|Java]] | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{Dunno}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | |- | ||
| + | | [[TensorFlow]] | ||
| + | | [[Google Brain]] team | ||
| + | | {{Free|[[Apache 2.0]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html</ref> [[Android (operating system)|Android]] | ||
| + | | [[C++]], [[Python (programming language)|Python]], [[CUDA]] | ||
| + | | [[Python (programming language)|Python]] ([[Keras]]), [[C (programming language)|C]]/[[C++]], [[Java (programming language)|Java]], [[Go (programming language)|Go]], [[R (programming language)|R]]<ref>{{Citation|last=interface)|first=JJ Allaire (R|title=tensorflow: R Interface to TensorFlow|date=2017-05-26|url=https://cran.r-project.org/web/packages/tensorflow/index.html|last2=RStudio|last3=Eddelbuettel|last4=Golding|last5=Tang|last6=Tutorials)|first3=Dirk|first4=Nick|first5=Yuan|first6=Google Inc (Examples and|accessdate=2017-06-14}}</ref>, [[Julia (programming language)|Julia]] | ||
| + | | {{No}} | ||
| + | | {{Depends|On roadmap}}<ref name="tensorflow-roadmap">{{cite web|url=https://github.com/tensorflow/tensorflow/blob/master/tensorflow/docs_src/about/roadmap.md|title=tensorflow/roadmap.md at master · tensorflow/tensorflow · GitHub | work=GitHub | date=January 23, 2017 | access-date=May 21, 2017}}</ref> but already with [[SYCL]]<ref name="GitHub">{{cite web|url=https://github.com/tensorflow/tensorflow/issues/22|title=OpenCL support · Issue #22 · tensorflow/tensorflow|work=GitHub}}</ref> support | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://www.tensorflow.org/</ref> | ||
| + | | {{Yes}}<ref>https://github.com/tensorflow/models</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | |- | ||
| + | | [[TensorLayer]] | ||
| + | | Hao Dong | ||
| + | | {{Free|[[Apache 2.0]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>https://developers.googleblog.com/2016/11/tensorflow-0-12-adds-support-for-windows.html</ref> [[Android (operating system)|Android]] | ||
| + | | [[C++]], [[Python (programming language)|Python]], | ||
| + | | [[Python (programming language)|Python]] | ||
| + | | {{No}} | ||
| + | | {{Depends|On roadmap}}<ref name="tensorflow-roadmap">{{cite web|url=https://github.com/tensorflow/tensorflow/blob/master/tensorflow/docs_src/about/roadmap.md|title=tensorflow/roadmap.md at master · tensorflow/tensorflow · GitHub | work=GitHub | date=January 23, 2017 | access-date=May 21, 2017}}</ref> but already with [[SYCL]]<ref name="GitHub">{{cite web|url=https://github.com/tensorflow/tensorflow/issues/22|title=OpenCL support · Issue #22 · tensorflow/tensorflow|work=GitHub}}</ref> support | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://www.tensorflow.org/</ref> | ||
| + | | {{Yes}}<ref>https://github.com/tensorflow/models</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | |- | ||
| + | | [[Theano (software)|Theano]] | ||
| + | | [[Université de Montréal]] | ||
| + | | {{Free|[[BSD licenses|BSD license]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Cross-platform]] | ||
| + | | [[Python (programming language)|Python]] | ||
| + | | [[Python (programming language)|Python]] ([[Keras]]) | ||
| + | | {{Yes}} | ||
| + | | {{Depends|Under development<ref>{{cite web|url=https://deeplearning.net/software/theano/tutorial/using_gpu.html|title=Using the GPU — Theano 0.8.2 documentation|publisher=}}</ref>}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://deeplearning.net/software/theano/library/gradient.html</ref><ref>https://groups.google.com/d/msg/theano-users/mln5g2IuBSU/gespG36Lf_QJ</ref> | ||
| + | | {{Depends|Through Lasagne's model zoo<ref>{{cite web|url=https://github.com/Lasagne/Recipes/tree/master/modelzoo|title=Recipes/modelzoo at master · Lasagne/Recipes · GitHub|work=GitHub}}</ref>}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>[https://deeplearning.net/software/theano/tutorial/using_multi_gpu.html Using multiple GPUs — Theano 0.8.2 documentation]</ref> | ||
| + | | | ||
| + | |- | ||
| + | | [[Torch (machine learning)|Torch]] | ||
| + | | Ronan Collobert, Koray Kavukcuoglu, Clement Farabet | ||
| + | | {{Free|[[BSD licenses|BSD license]]}} | ||
| + | | {{Yes}} | ||
| + | | [[Linux]], [[macOS]], [[Microsoft Windows|Windows]],<ref>https://github.com/torch/torch7/wiki/Windows</ref> [[Android (operating system)|Android]],<ref>{{cite web|url=https://github.com/soumith/torch-android|title=GitHub - soumith/torch-android: Torch-7 for Android|work=GitHub}}</ref> [[iOS]] | ||
| + | | [[C (programming language)|C]], [[Lua (programming language)|Lua]] | ||
| + | | [[Lua (programming language)|Lua]], [[Lua (programming language)|LuaJIT]],<ref>{{cite web|url=https://ronan.collobert.com/pub/matos/2011_torch7_nipsw.pdf|title=Torch7: A Matlab-like Environment for Machine Learning}}</ref> [[C (programming language)|C]], utility library for [[C++]]/[[OpenCL]]<ref name=jtorch>{{cite web|url=https://github.com/jonathantompson/jtorch|title=GitHub - jonathantompson/jtorch: An OpenCL Torch Utility Library|work=GitHub}}</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Depends|Third party implementations<ref>{{cite web|url=https://github.com/torch/torch7/wiki/Cheatsheet#opencl|title=Cheatsheet|work=GitHub}}</ref><ref>{{cite web|url=https://github.com/hughperkins/distro-cl|title=cltorch|work=GitHub}}</ref>}} | ||
| + | | {{Yes}}<ref>{{cite web|url=https://github.com/torch/cutorch|title=Torch CUDA backend|work=GitHub}}</ref><ref>{{cite web|url=https://github.com/torch/cunn|title=Torch CUDA backend for nn|work=GitHub}}</ref> | ||
| + | | {{Yes|Through [[Twitter]]'s Autograd<ref>https://github.com/twitter/torch-autograd</ref>}} | ||
| + | | {{Yes}}<ref>{{cite web|url=https://github.com/torch/torch7/wiki/ModelZoo|title=ModelZoo|work=GitHub}}</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://github.com/torch/torch7/wiki/Cheatsheet#distributed-computing--parallel-processing</ref> | ||
| + | | | ||
| + | |- | ||
| + | | [[Wolfram Mathematica]] | ||
| + | | [[Wolfram Research]] | ||
| + | | {{Proprietary}} | ||
| + | | {{No}} | ||
| + | | [[Microsoft Windows|Windows]], [[macOS]], [[Linux]], [[Cloud computing]] | ||
| + | | [[C++]], [[Wolfram Language]], [[CUDA]] | ||
| + | | [[Wolfram Language]] | ||
| + | | {{Yes}} | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}}<ref>https://resources.wolframcloud.com/NeuralNetRepository</ref> | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Depends|Under Development}} | ||
| + | | | ||
| + | |- | ||
| + | |[https://ver.ai VerAI] | ||
| + | |VerAI | ||
| + | | {{Proprietary}} | ||
| + | | {{No}} | ||
| + | |[[Linux]], [[Web application|Web-based]] | ||
| + | |[[C++]],[[Python (programming language)|Python]], [[Go (programming language)|Go]], [[Angular (application platform)|Angular]] | ||
| + | |[[Graphical user interface]], [[Command-line interface|cli]] | ||
| + | | {{No}} | ||
| + | | {{No}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | {{Yes}} | ||
| + | | | ||
| + | |} | ||
Latest revision as of 11:51, 6 November 2024
YouTube ... Quora ...Google search ...Google News ...Bing News
- Libraries & Frameworks Overview ... Libraries & Frameworks ... Git - GitHub and GitLab ... Other Coding options
- Development ... Notebooks ... AI Pair Programming ... Codeless ... Hugging Face ... AIOps/MLOps ... AIaaS/MLaaS
- Python ... GenAI w/ Python ... JavaScript ... GenAI w/ JavaScript ... TensorFlow ... PyTorch
- GPU
- Gaming ... Game-Based Learning (GBL) ... Security ... Generative AI ... Games - Metaverse ... Quantum ... Game Theory ... Design
- Machine Translation open-source toolkits | Tsinghua Natural Language Processing Group
- Machine Learning Software | DMOZtools.net
A library and a framework are both code written by someone else that help you solve common problems in easier ways. However, they differ in how they control the flow of your application.
- A library is a collection of functions or classes that you can call from your own code to perform specific tasks. For example, if you want to manipulate strings, you can use a library that provides string functions. You are in charge of when and where to use the library functions. Some examples of AI-related libraries are TensorFlow, Theano, and PyTorch.
- A framework is a set of rules or guidelines that define the structure and behavior of your application. For example, if you want to build a web application, you can use a framework that provides templates, routing, authentication, etc. The framework calls your code at certain points, following the inversion of control principle. Some examples of AI-related frameworks are Angular, Vue, and Microsoft CNTK.
The main difference between a library and a framework is who is in control: you control the library, but the framework controls you.
With pages at Primo.ai or not included in Wikipedia Deep learning comparison chart below
- scikit-learn
- PyTorch
- ConvNetJS | Andrej Karpathy
- Accord.Net Framework
- Caffe / Caffe2
- Microsoft Cognitive Toolkit - was Cognitive Toolkit (CNTK)
- gluon
- H20
- MXNet
- Neuroph
- neon
- Deeplearning4j
- theano
- Spark MLlib
- Cloudera Oryx
- GoLearn
- Weka
- Apache Mahout
- Shogun
- Ray - UC Berkeley RISELab
- MLPACK (C++ library)
- Accord.NET
- OpenCV Open Computer Vision - work with images and/or videos and wish to add a variety of classical and state-of-the-art vision algorithms to their toolbox.
- OpenCog, a GPL-licensed framework for artificial intelligence written in C++, Python and Scheme.
- RapidMiner, an environment for machine learning and data mining, now developed commercially.
- Weka, a free implementation of many machine learning algorithms in Java.
|
|