https://github.com/mikeroyal/machine-learning-guide
Machine learning Guide. Learn all about Machine Learning Tools, Libraries, Frameworks, Large Language Models (LLMs), and Training Models.
https://github.com/mikeroyal/machine-learning-guide
artificial-neural-networks aws-sagemaker deep-learning generative-ai gpt-3 gpt-4 gpt4all image-classification image-processing jax llms machine-learning-library machine-learning-models machinelearning machinelearning-python python pytorch scikit-learn scikitlearn-machine-learning support-vector-machines
Last synced: 8 months ago
JSON representation
Machine learning Guide. Learn all about Machine Learning Tools, Libraries, Frameworks, Large Language Models (LLMs), and Training Models.
- Host: GitHub
- URL: https://github.com/mikeroyal/machine-learning-guide
- Owner: mikeroyal
- Created: 2020-10-17T19:53:49.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-01-04T22:45:19.000Z (over 2 years ago)
- Last Synced: 2025-05-24T22:07:21.571Z (about 1 year ago)
- Topics: artificial-neural-networks, aws-sagemaker, deep-learning, generative-ai, gpt-3, gpt-4, gpt4all, image-classification, image-processing, jax, llms, machine-learning-library, machine-learning-models, machinelearning, machinelearning-python, python, pytorch, scikit-learn, scikitlearn-machine-learning, support-vector-machines
- Language: Python
- Homepage:
- Size: 1.05 MB
- Stars: 624
- Watchers: 11
- Forks: 53
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: Contributing.md
Awesome Lists containing this project
README
Machine Learning Guide


#### A guide covering Machine Learning including the applications, libraries and tools that will make you better and more efficient with Machine Learning development.
**Note: You can easily convert this markdown file to a PDF in [VSCode](https://code.visualstudio.com/) using this handy extension [Markdown PDF](https://marketplace.visualstudio.com/items?itemName=yzane.markdown-pdf).**

**Machine Learning/Deep Learning Frameworks.**
# Table of Contents
1. [Learning Resources for ML](https://github.com/mikeroyal/Machine-Learning-Guide#learning-resources-for-ML)
- [Developer Resources](https://github.com/mikeroyal/Machine-Learning-Guide#developer-resources)
- [Courses & Certifications](https://github.com/mikeroyal/Machine-Learning-Guide#courses--certifications)
- [Books](https://github.com/mikeroyal/Machine-Learning-Guide#books)
- [YouTube Tutorials](#youtube-tutorials)
2. [ML Frameworks, Libraries, and Tools](https://github.com/mikeroyal/Machine-Learning-Guide#ML-frameworks-libraries-and-tools)
- [LLMs Training Frameworks](#llm-training-frameworks)
- [Tools for deploying LLMs](#tools-for-deploying-llm)
- [Running Large Language Models (LLMs) Locally](#running-llms-locally)
3. [Algorithms](https://github.com/mikeroyal/Machine-Learning-Guide#Algorithms)
4. [PyTorch Development](https://github.com/mikeroyal/Machine-Learning-Guide#pytorch-development)
5. [TensorFlow Development](https://github.com/mikeroyal/Machine-Learning-Guide#tensorflow-development)
6. [Core ML Development](https://github.com/mikeroyal/Machine-Learning-Guide#core-ml-development)
7. [Deep Learning Development](https://github.com/mikeroyal/Machine-Learning-Guide#Deep-Learning-Development)
8. [Reinforcement Learning Development](https://github.com/mikeroyal/Machine-Learning-Guide#Reinforcement-Learning-Development)
9. [Computer Vision Development](https://github.com/mikeroyal/Machine-Learning-Guide#computer-vision-development)
10. [Natural Language Processing (NLP) Development](https://github.com/mikeroyal/Machine-Learning-Guide#nlp-development)
11. [Bioinformatics](https://github.com/mikeroyal/Machine-Learning-Guide#bioinformatics)
12. [CUDA Development](https://github.com/mikeroyal/Machine-Learning-Guide#cuda-development)
13. [MATLAB Development](https://github.com/mikeroyal/Machine-Learning-Guide#matlab-development)
14. [C/C++ Development](https://github.com/mikeroyal/Machine-Learning-Guide#cc-development)
15. [Java Development](https://github.com/mikeroyal/Machine-Learning-Guide#java-development)
16. [Python Development](https://github.com/mikeroyal/Machine-Learning-Guide#python-development)
17. [Scala Development](https://github.com/mikeroyal/Machine-Learning-Guide#scala-development)
18. [R Development](https://github.com/mikeroyal/Machine-Learning-Guide#r-development)
19. [Julia Development](https://github.com/mikeroyal/Machine-Learning-Guide#julia-development)
# Learning Resources for ML
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
[Machine Learning](https://www.ibm.com/cloud/learn/machine-learning) is a branch of artificial intelligence (AI) focused on building apps using algorithms that learn from data models and improve their accuracy over time without needing to be programmed.

### Developer Resources
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
- [Natural Language Processing (NLP) Best Practices by Microsoft](https://github.com/microsoft/nlp-recipes)
- [The Autonomous Driving Cookbook by Microsoft](https://github.com/microsoft/AutonomousDrivingCookbook)
- [Azure Machine Learning - ML as a Service | Microsoft Azure](https://azure.microsoft.com/en-us/services/machine-learning/)
- [How to run Jupyter Notebooks in your Azure Machine Learning workspace](https://docs.microsoft.com/en-us/azure/machine-learning/how-to-run-jupyter-notebooks)
- [Machine Learning and Artificial Intelligence | Amazon Web Services](https://aws.amazon.com/machine-learning/)
- [Scheduling Jupyter notebooks on Amazon SageMaker ephemeral instances](https://aws.amazon.com/blogs/machine-learning/scheduling-jupyter-notebooks-on-sagemaker-ephemeral-instances/)
- [AI & Machine Learning | Google Cloud](https://cloud.google.com/products/ai/)
- [Using Jupyter Notebooks with Apache Spark on Google Cloud](https://cloud.google.com/blog/products/gcp/google-cloud-platform-for-data-scientists-using-jupyter-notebooks-with-apache-spark-on-google-cloud)
- [Machine Learning | Apple Developer](https://developer.apple.com/machine-learning/)
- [Artificial Intelligence & Autopilot | Tesla](https://www.tesla.com/AI)
- [Meta AI Tools | Facebook](https://ai.facebook.com/tools/)
- [PyTorch Tutorials](https://pytorch.org/tutorials/)
- [TensorFlow Tutorials](https://www.tensorflow.org/tutorials)
- [JupyterLab](https://jupyterlab.readthedocs.io/)
- [Stable Diffusion with Core ML on Apple Silicon](https://machinelearning.apple.com/research/stable-diffusion-coreml-apple-silicon)
### Courses & Certifications
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
- [Machine Learning by Stanford University by Andrew Ng | Coursera](https://www.coursera.org/learn/machine-learning)
- [AWS Training and Certification for Machine Learning (ML) Courses](https://aws.amazon.com/training/learning-paths/machine-learning/)
- [Machine Learning Scholarship Program for Microsoft Azure | Udacity](https://www.udacity.com/scholarships/machine-learning-scholarship-microsoft-azure)
- [Microsoft Certified: Azure Data Scientist Associate](https://docs.microsoft.com/en-us/learn/certifications/azure-data-scientist)
- [Microsoft Certified: Azure AI Engineer Associate](https://docs.microsoft.com/en-us/learn/certifications/azure-ai-engineer)
- [Azure Machine Learning training and deployment](https://docs.microsoft.com/en-us/azure/devops/pipelines/targets/azure-machine-learning)
- [Learning Machine learning and artificial intelligence from Google Cloud Training](https://cloud.google.com/training/machinelearning-ai)
- [Machine Learning Crash Course for Google Cloud](https://developers.google.com/machine-learning/crash-course/)
- [Machine Learning Courses Online | Udemy](https://www.udemy.com/topic/machine-learning/)
- [Machine Learning Courses Online | Coursera](https://www.coursera.org/courses?query=machine%20learning&)
- [Learn Machine Learning with Online Courses and Classes | edX](https://www.edx.org/learn/machine-learning)
### Books
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
* [Introduction To Machine Learning (PDF)](https://ai.stanford.edu/~nilsson/MLBOOK.pdf)
* [Artificial Intelligence: A Modern Approach by Stuart J. Russel and Peter Norvig](https://www.amazon.com/Artificial-Intelligence-A-Modern-Approach/dp/0134610997/ref=sr_1_1?dchild=1&keywords=artificial+intelligence+a+modern+approach&qid=1626728093&sr=8-1)
* [Deep Learning by Ian Goodfellow, Yoshoua Bengio, and Aaron Courville](https://www.deeplearningbook.org/)
* [The Hundred-Page Machine Learning Book by Andriy Burkov](https://themlbook.com/wiki/doku.php)
- [Hundred-Page Machine Learning Book on GitHub](https://github.com/aburkov/theMLbook)
* [Machine Learning by Tom M. Mitchell](https://www.cs.cmu.edu/~tom/NewChapters.html)
* [Programming Collective Intelligence: Building Smart Web 2.0 Applications by Toby Segaran](https://www.amazon.com/Programming-Collective-Intelligence-Building-Applications/dp/0596529325/ref=sr_1_1?crid=8EI42XMXESGB&keywords=Programming+Collective+Intelligence%3A+Building+Smart+Web+2.0+Applications&qid=1654318595&sprefix=programming+collective+intelligence+building+smart+web+2.0+applications%2Caps%2C194&sr=8-1)
* [Machine Learning: An Algorithmic Perspective, Second Edition](https://www.amazon.com/Machine-Learning-Algorithmic-Perspective-Recognition/dp/1466583282/ref=sr_1_8?crid=2RIQ8OMMASS3&keywords=Pattern+Recognition+and+Machine+Learning&qid=1654318681&sprefix=pattern+recognition+and+machine+learning%2Caps%2C184&sr=8-8)
* [Pattern Recognition and Machine Learning by Christopher M. Bishop](https://www.amazon.com/Pattern-Recognition-Learning-Information-Statistics/dp/1493938436/ref=sr_1_4?crid=2RIQ8OMMASS3&keywords=Pattern+Recognition+and+Machine+Learning&qid=1654318681&sprefix=pattern+recognition+and+machine+learning%2Caps%2C184&sr=8-4)
* [Natural Language Processing with Python by Steven Bird, Ewan Klein, and Edward Loper](https://www.amazon.com/Natural-Language-Processing-Python-Analyzing/dp/0596516495/ref=sr_1_1?crid=O4XSCF3CNIBN&keywords=Natural+Language+Processing+with+Python&qid=1654318757&sprefix=natural+language+processing+with+python%2Caps%2C285&sr=8-1)
* [Python Machine Learning: A Technical Approach to Machine Learning for Beginners by Leonard Eddison](https://www.amazon.com/Python-Machine-Learning-Technical-Beginners/dp/1986340872/ref=sr_1_1?crid=1W5X2WV05GDQK&keywords=Python+Machine+Learning%3A+A+Technical+Approach+to+Machine+Learning+for+Beginners&qid=1654318782&sprefix=python+machine+learning+a+technical+approach+to+machine+learning+for+beginners%2Caps%2C212&sr=8-1)
* [Bayesian Reasoning and Machine Learning by David Barber](https://www.amazon.com/Bayesian-Reasoning-Machine-Learning-Barber/dp/0521518148/ref=sr_1_1?crid=1J054T5MUCD20&keywords=Bayesian+Reasoning+and+Machine+Learning&qid=1654318807&sprefix=bayesian+reasoning+and+machine+learning%2Caps%2C179&sr=8-1)
* [Machine Learning for Absolute Beginners: A Plain English Introduction by Oliver Theobald](https://www.amazon.com/Machine-Learning-Absolute-Beginners-Introduction-ebook/dp/B08RWBSKQB/ref=sr_1_1?crid=1JBS4KEHTY6I5&keywords=Machine+Learning+for+Absolute+Beginners%3A+A+Plain+English+Introduction&qid=1654318861&sprefix=machine+learning+for+absolute+beginners+a+plain+english+introduction%2Caps%2C168&sr=8-1)
* [Machine Learning in Action by Ben Wilson](https://www.amazon.com/Machine-Learning-Engineering-Action-Wilson/dp/1617298719/ref=sr_1_1?crid=6S9F2MJHAQX1&keywords=Machine+Learning+in+Action&qid=1654318897&sprefix=machine+learning+in+action%2Caps%2C174&sr=8-1)
* [Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems by Aurélien Géron](https://www.amazon.com/Hands-Machine-Learning-Scikit-Learn-TensorFlow/dp/1492032646/ref=sr_1_6?crid=2RIQ8OMMASS3&keywords=Pattern+Recognition+and+Machine+Learning&qid=1654318681&sprefix=pattern+recognition+and+machine+learning%2Caps%2C184&sr=8-6)
* [Introduction to Machine Learning with Python: A Guide for Data Scientists by Andreas C. Müller & Sarah Guido](https://www.amazon.com/Introduction-Machine-Learning-Python-Scientists/dp/1449369413/ref=sr_1_1?crid=3SGFHBBU06GB6&keywords=Introduction+to+Machine+Learning+with+Python%3A+A+Guide+for+Data+Scientists&qid=1654318969&sprefix=introduction+to+machine+learning+with+python+a+guide+for+data+scientists%2Caps%2C181&sr=8-1)
* [Machine Learning for Hackers: Case Studies and Algorithms to Get you Started by Drew Conway and John Myles White](https://www.amazon.com/Machine-Learning-Hackers-Studies-Algorithms/dp/1449303714/ref=sr_1_1?crid=2PQABQ4T9B8K5&keywords=Machine+Learning+for+Hackers%3A+Case+Studies+and+Algorithms+to+Get+you+Started&qid=1654318629&sprefix=machine+learning+for+hackers+case+studies+and+algorithms+to+get+you+started%2Caps%2C162&sr=8-1)
* [The Elements of Statistical Learning: Data Mining, Inference, and Prediction by Trevor Hastie, Robert Tibshirani, and Jerome Friedman](https://www.amazon.com/Elements-Statistical-Learning-Prediction-Statistics/dp/0387848576/ref=sr_1_1?crid=1HOK9M9GFHTK9&keywords=The+Elements+of+Statistical+Learning%3A+Data+Mining%2C+Inference%2C+and+Prediction&qid=1654318661&sprefix=the+elements+of+statistical+learning+data+mining%2C+inference%2C+and+prediction+%2Caps%2C215&sr=8-1)
* [Distributed Machine Learning Patterns](https://github.com/terrytangyuan/distributed-ml-patterns) - Book (free to read online) + Code
* [Real World Machine Learning](https://www.manning.com/books/real-world-machine-learning) [Free Chapters]
* [An Introduction To Statistical Learning](https://www-bcf.usc.edu/~gareth/ISL/) - Book + R Code
* [Elements of Statistical Learning](https://web.stanford.edu/~hastie/ElemStatLearn/) - Book
* [Think Bayes](https://greenteapress.com/wp/think-bayes/) - Book + Python Code
* [Mining Massive Datasets](https://infolab.stanford.edu/~ullman/mmds/book.pdf)
* [A First Encounter with Machine Learning](https://www.ics.uci.edu/~welling/teaching/273ASpring10/IntroMLBook.pdf)
* [Introduction to Machine Learning](https://alex.smola.org/drafts/thebook.pdf) - Alex Smola and S.V.N. Vishwanathan
* [A Probabilistic Theory of Pattern Recognition](https://www.szit.bme.hu/~gyorfi/pbook.pdf)
* [Introduction to Information Retrieval](https://nlp.stanford.edu/IR-book/pdf/irbookprint.pdf)
* [Forecasting: principles and practice](https://otexts.com/fpp2/)
* [Introduction to Machine Learning](https://arxiv.org/pdf/0904.3664v1.pdf) - Amnon Shashua
* [Reinforcement Learning](https://www.intechopen.com/books/reinforcement_learning)
* [Machine Learning](https://www.intechopen.com/books/machine_learning)
* [A Quest for AI](https://ai.stanford.edu/~nilsson/QAI/qai.pdf)
* [R Programming for Data Science](https://leanpub.com/rprogramming)
* [Data Mining - Practical Machine Learning Tools and Techniques](https://cdn.preterhuman.net/texts/science_and_technology/artificial_intelligence/Data%20Mining%20Practical%20Machine%20Learning%20Tools%20and%20Techniques%202d%20ed%20-%20Morgan%20Kaufmann.pdf)
* [Machine Learning with TensorFlow](https://www.manning.com/books/machine-learning-with-tensorflow)
* [Machine Learning Systems](https://www.manning.com/books/machine-learning-systems)
* [Foundations of Machine Learning](https://cs.nyu.edu/~mohri/mlbook/) - Mehryar Mohri, Afshin Rostamizadeh, and Ameet Talwalkar
* [AI-Powered Search](https://www.manning.com/books/ai-powered-search) - Trey Grainger, Doug Turnbull, Max Irwin -
* [Ensemble Methods for Machine Learning](https://www.manning.com/books/ensemble-methods-for-machine-learning) - Gautam Kunapuli
* [Machine Learning Engineering in Action](https://www.manning.com/books/machine-learning-engineering-in-action) - Ben Wilson
* [Privacy-Preserving Machine Learning](https://www.manning.com/books/privacy-preserving-machine-learning) - J. Morris Chang, Di Zhuang, G. Dumindu Samaraweera
* [Automated Machine Learning in Action](https://www.manning.com/books/automated-machine-learning-in-action) - Qingquan Song, Haifeng Jin, and Xia Hu
* [Distributed Machine Learning Patterns](https://www.manning.com/books/distributed-machine-learning-patterns) - Yuan Tang
* [Managing Machine Learning Projects: From design to deployment](https://www.manning.com/books/managing-machine-learning-projects) - Simon Thompson
* [Causal Machine Learning](https://www.manning.com/books/causal-machine-learning) - Robert Ness
* [Bayesian Optimization in Action](https://www.manning.com/books/bayesian-optimization-in-action) - Quan Nguyen
* [Machine Learning Algorithms in Depth](https://www.manning.com/books/machine-learning-algorithms-in-depth)) - Vadim Smolyakov
* [Optimization Algorithms](https://www.manning.com/books/optimization-algorithms) - Alaa Khamis
* [Practical Gradient Boosting](https://www.amazon.com/dp/B0BL1HRD6Z) by Guillaume Saupin
### YouTube Tutorials
[Back to the Top](#table-of-contents)
[](https://www.youtube.com/watch?v=5p248yoa3oE)
[](https://www.youtube.com/watch?v=3ihjz7g1OQM)
[](https://www.youtube.com/watch?v=4RixMPF4xis)
[](https://www.youtube.com/watch?v=q6kJ71tEYqM)
[?")](https://www.youtube.com/watch?v=ZXiruGOCn9s)
[](https://www.youtube.com/watch?v=aircAruvnKk)
[](https://www.youtube.com/watch?v=I2ZK3ngNvvI)
[](https://www.youtube.com/watch?v=PeMlggyqz0Y)
[](https://www.youtube.com/watch?v=KEB-w9DUdCw)
[](https://www.youtube.com/watch?v=V_xro1bcAuA)
[](https://www.youtube.com/watch?v=IA3WxTTPXqQ)
[](https://www.youtube.com/watch?v=5sLYAQS9sWQ)
[?")](https://www.youtube.com/watch?v=iR2O2GPbB0E)
[](https://www.youtube.com/watch?v=zizonToFXDs)
[](https://www.youtube.com/watch?v=UU1WVnMk4E8)
# ML Frameworks, Libraries, and Tools
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
[TensorFlow](https://www.tensorflow.org) is an end-to-end open source platform for machine learning. It has a comprehensive, flexible ecosystem of tools, libraries and community resources that lets researchers push the state-of-the-art in ML and developers easily build and deploy ML powered applications.
[Keras](https://keras.io) is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.It was developed with a focus on enabling fast experimentation. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, R, Theano, or PlaidML.
[PyTorch](https://pytorch.org) is a library for deep learning on irregular input data such as graphs, point clouds, and manifolds. Primarily developed by Facebook's AI Research lab.
[Amazon SageMaker](https://aws.amazon.com/sagemaker/) is a fully managed service that provides every developer and data scientist with the ability to build, train, and deploy machine learning (ML) models quickly. SageMaker removes the heavy lifting from each step of the machine learning process to make it easier to develop high quality models.
[Azure Databricks](https://azure.microsoft.com/en-us/services/databricks/) is a fast and collaborative Apache Spark-based big data analytics service designed for data science and data engineering. Azure Databricks, sets up your Apache Spark environment in minutes, autoscale, and collaborate on shared projects in an interactive workspace. Azure Databricks supports Python, Scala, R, Java, and SQL, as well as data science frameworks and libraries including TensorFlow, PyTorch, and scikit-learn.
[Microsoft Cognitive Toolkit (CNTK)](https://docs.microsoft.com/en-us/cognitive-toolkit/) is an open-source toolkit for commercial-grade distributed deep learning. It describes neural networks as a series of computational steps via a directed graph. CNTK allows the user to easily realize and combine popular model types such as feed-forward DNNs, convolutional neural networks (CNNs) and recurrent neural networks (RNNs/LSTMs). CNTK implements stochastic gradient descent (SGD, error backpropagation) learning with automatic differentiation and parallelization across multiple GPUs and servers.
[Apple CoreML](https://developer.apple.com/documentation/coreml) is a framework that helps integrate machine learning models into your app. Core ML provides a unified representation for all models. Your app uses Core ML APIs and user data to make predictions, and to train or fine-tune models, all on the user's device. A model is the result of applying a machine learning algorithm to a set of training data. You use a model to make predictions based on new input data.
[Apache OpenNLP](https://opennlp.apache.org/) is an open-source library for a machine learning based toolkit used in the processing of natural language text. It features an API for use cases like [Named Entity Recognition](https://en.wikipedia.org/wiki/Named-entity_recognition), [Sentence Detection](), [POS(Part-Of-Speech) tagging](https://en.wikipedia.org/wiki/Part-of-speech_tagging), [Tokenization](https://en.wikipedia.org/wiki/Tokenization_(data_security)) [Feature extraction](https://en.wikipedia.org/wiki/Feature_extraction), [Chunking](https://en.wikipedia.org/wiki/Chunking_(psychology)), [Parsing](https://en.wikipedia.org/wiki/Parsing), and [Coreference resolution](https://en.wikipedia.org/wiki/Coreference).
[Apache Airflow](https://airflow.apache.org) is an open-source workflow management platform created by the community to programmatically author, schedule and monitor workflows. Install. Principles. Scalable. Airflow has a modular architecture and uses a message queue to orchestrate an arbitrary number of workers. Airflow is ready to scale to infinity.
[Open Neural Network Exchange(ONNX)](https://github.com/onnx) is an open ecosystem that empowers AI developers to choose the right tools as their project evolves. ONNX provides an open source format for AI models, both deep learning and traditional ML. It defines an extensible computation graph model, as well as definitions of built-in operators and standard data types.
[Apache MXNet](https://mxnet.apache.org/) is a deep learning framework designed for both efficiency and flexibility. It allows you to mix symbolic and imperative programming to maximize efficiency and productivity. At its core, MXNet contains a dynamic dependency scheduler that automatically parallelizes both symbolic and imperative operations on the fly. A graph optimization layer on top of that makes symbolic execution fast and memory efficient. MXNet is portable and lightweight, scaling effectively to multiple GPUs and multiple machines. Support for Python, R, Julia, Scala, Go, Javascript and more.
[AutoGluon](https://autogluon.mxnet.io/index.html) is toolkit for Deep learning that automates machine learning tasks enabling you to easily achieve strong predictive performance in your applications. With just a few lines of code, you can train and deploy high-accuracy deep learning models on tabular, image, and text data.
[Anaconda](https://www.anaconda.com/) is a very popular Data Science platform for machine learning and deep learning that enables users to develop models, train them, and deploy them.
[PlaidML](https://github.com/plaidml/plaidml) is an advanced and portable tensor compiler for enabling deep learning on laptops, embedded devices, or other devices where the available computing hardware is not well supported or the available software stack contains unpalatable license restrictions.
[OpenCV](https://opencv.org) is a highly optimized library with focus on real-time computer vision applications. The C++, Python, and Java interfaces support Linux, MacOS, Windows, iOS, and Android.
[Scikit-Learn](https://scikit-learn.org/stable/index.html) is a Python module for machine learning built on top of SciPy, NumPy, and matplotlib, making it easier to apply robust and simple implementations of many popular machine learning algorithms.
[Weka](https://www.cs.waikato.ac.nz/ml/weka/) is an open source machine learning software that can be accessed through a graphical user interface, standard terminal applications, or a Java API. It is widely used for teaching, research, and industrial applications, contains a plethora of built-in tools for standard machine learning tasks, and additionally gives transparent access to well-known toolboxes such as scikit-learn, R, and Deeplearning4j.
[Caffe](https://github.com/BVLC/caffe) is a deep learning framework made with expression, speed, and modularity in mind. It is developed by Berkeley AI Research (BAIR)/The Berkeley Vision and Learning Center (BVLC) and community contributors.
[Theano](https://github.com/Theano/Theano) is a Python library that allows you to define, optimize, and evaluate mathematical expressions involving multi-dimensional arrays efficiently including tight integration with NumPy.
[nGraph](https://github.com/NervanaSystems/ngraph) is an open source C++ library, compiler and runtime for Deep Learning. The nGraph Compiler aims to accelerate developing AI workloads using any deep learning framework and deploying to a variety of hardware targets.It provides the freedom, performance, and ease-of-use to AI developers.
[NVIDIA cuDNN](https://developer.nvidia.com/cudnn) is a GPU-accelerated library of primitives for [deep neural networks](https://developer.nvidia.com/deep-learning). cuDNN provides highly tuned implementations for standard routines such as forward and backward convolution, pooling, normalization, and activation layers. cuDNN accelerates widely used deep learning frameworks, including [Caffe2](https://caffe2.ai/), [Chainer](https://chainer.org/), [Keras](https://keras.io/), [MATLAB](https://www.mathworks.com/solutions/deep-learning.html), [MxNet](https://mxnet.incubator.apache.org/), [PyTorch](https://pytorch.org/), and [TensorFlow](https://www.tensorflow.org/).
[Huginn](https://github.com/huginn/huginn) is a self-hosted system for building agents that perform automated tasks for you online. It can read the web, watch for events, and take actions on your behalf. Huginn's Agents create and consume events, propagating them along a directed graph. Think of it as a hackable version of IFTTT or Zapier on your own server.
[Netron](https://netron.app/) is a viewer for neural network, deep learning and machine learning models. It supports ONNX, TensorFlow Lite, Caffe, Keras, Darknet, PaddlePaddle, ncnn, MNN, Core ML, RKNN, MXNet, MindSpore Lite, TNN, Barracuda, Tengine, CNTK, TensorFlow.js, Caffe2 and UFF.
[Dopamine](https://github.com/google/dopamine) is a research framework for fast prototyping of reinforcement learning algorithms.
[DALI](https://github.com/NVIDIA/DALI) is a GPU-accelerated library containing highly optimized building blocks and an execution engine for data processing to accelerate deep learning training and inference applications.
[MindSpore Lite](https://github.com/mindspore-ai/mindspore) is a new open source deep learning training/inference framework that could be used for mobile, edge and cloud scenarios.
[Darknet](https://github.com/pjreddie/darknet) is an open source neural network framework written in C and CUDA. It is fast, easy to install, and supports CPU and GPU computation.
[PaddlePaddle](https://github.com/PaddlePaddle/Paddle) is an easy-to-use, efficient, flexible and scalable deep learning platform, which is originally developed by Baidu scientists and engineers for the purpose of applying deep learning to many products at Baidu.
[GoogleNotebookLM](https://blog.google/technology/ai/notebooklm-google-ai/) is an experimental AI tool using the power of language models paired with your existing content to gain critical insights, faster. Similar to a virtual research assistant that can summarize facts, explain complex ideas, and brainstorm new connections based on the sources you select.
[Unilm](https://github.com/microsoft/unilm) is a large-scale Self-supervised Pre-training Across Tasks, Languages, and Modalities.
[Semantic Kernel (SK)](https://aka.ms/semantic-kernel) is a lightweight SDK enabling integration of AI Large Language Models (LLMs) with conventional programming languages. The SK extensible programming model combines natural language semantic functions, traditional code native functions, and embeddings-based memory unlocking new potential and adding value to applications with AI.
[Pandas AI](https://github.com/gventuri/pandas-ai) is a Python library that integrates generative artificial intelligence capabilities into Pandas, making dataframes conversational.
[NCNN](https://github.com/Tencent/ncnn) is a high-performance neural network inference framework optimized for the mobile platform.
[MNN](https://github.com/alibaba/MNN) is a blazing fast, lightweight deep learning framework, battle-tested by business-critical use cases in Alibaba.
[MediaPipe](https://mediapipe.dev/) is an optimized for end-to-end performance on a wide array of platforms. See demos Learn more Complex on-device ML, simplified We've abstracted away the complexities of making on-device ML customizable, production-ready, and accessible across platforms.
[MegEngine](https://github.com/MegEngine) is a fast, scalable, and user friendly deep learning framework with 3 key features: Unified framework for both training and inference.
[ML.NET](https://dot.net/ml) is a machine learning library that is designed as an extensible platform so that you can consume other popular ML frameworks (TensorFlow, ONNX, Infer.NET, and more) and have access to even more machine learning scenarios, like image classification, object detection, and more.
[Ludwig](https://ludwig.ai/) is a [declarative machine learning framework](https://ludwig-ai.github.io/ludwig-docs/latest/user_guide/what_is_ludwig/#why-declarative-machine-learning-systems) that makes it easy to define machine learning pipelines using a simple and flexible data-driven configuration system.
[MMdnn](https://github.com/microsoft/MMdnn) is a comprehensive and cross-framework tool to convert, visualize and diagnose deep learning (DL) models. The "MM" stands for model management, and "dnn" is the acronym of deep neural network. Convert models between Caffe, Keras, MXNet, Tensorflow, CNTK, PyTorch Onnx and CoreML.
[Horovod](https://github.com/horovod/horovod) is a distributed deep learning training framework for TensorFlow, Keras, PyTorch, and Apache MXNet.
[Vaex](https://vaex.io/) is a high performance Python library for lazy Out-of-Core DataFrames (similar to Pandas), to visualize and explore big tabular datasets.
[GluonTS](https://ts.gluon.ai/) is a Python package for probabilistic time series modeling, focusing on deep learning based models, based on [PyTorch](https://pytorch.org/) and [MXNet](https://mxnet.apache.org/).
[MindsDB](http://mindsdb.com/) is a ML-SQL Server enables machine learning workflows for the most powerful databases and data warehouses using SQL.
[Jupyter Notebook](https://jupyter.org/) is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. Jupyter is used widely in industries that do data cleaning and transformation, numerical simulation, statistical modeling, data visualization, data science, and machine learning.
[Apache Spark](https://spark.apache.org/) is a unified analytics engine for large-scale data processing. It provides high-level APIs in Scala, Java, Python, and R, and an optimized engine that supports general computation graphs for data analysis. It also supports a rich set of higher-level tools including Spark SQL for SQL and DataFrames, MLlib for machine learning, GraphX for graph processing, and Structured Streaming for stream processing.
[Apache Spark Connector for SQL Server and Azure SQL](https://github.com/microsoft/sql-spark-connector) is a high-performance connector that enables you to use transactional data in big data analytics and persists results for ad-hoc queries or reporting. The connector allows you to use any SQL database, on-premises or in the cloud, as an input data source or output data sink for Spark jobs.
[Apache PredictionIO](https://predictionio.apache.org/) is an open source machine learning framework for developers, data scientists, and end users. It supports event collection, deployment of algorithms, evaluation, querying predictive results via REST APIs. It is based on scalable open source services like Hadoop, HBase (and other DBs), Elasticsearch, Spark and implements what is called a Lambda Architecture.
[Cluster Manager for Apache Kafka(CMAK)](https://github.com/yahoo/CMAK) is a tool for managing [Apache Kafka](https://kafka.apache.org/) clusters.
[BigDL](https://bigdl-project.github.io/) is a distributed deep learning library for Apache Spark. With BigDL, users can write their deep learning applications as standard Spark programs, which can directly run on top of existing Spark or Hadoop clusters.
[Eclipse Deeplearning4J (DL4J)](https://deeplearning4j.konduit.ai/) is a set of projects intended to support all the needs of a JVM-based(Scala, Kotlin, Clojure, and Groovy) deep learning application. This means starting with the raw data, loading and preprocessing it from wherever and whatever format it is in to building and tuning a wide variety of simple and complex deep learning networks.
[Tensorman](https://github.com/pop-os/tensorman) is a utility for easy management of Tensorflow containers by developed by [System76]( https://system76.com).Tensorman allows Tensorflow to operate in an isolated environment that is contained from the rest of the system. This virtual environment can operate independent of the base system, allowing you to use any version of Tensorflow on any version of a Linux distribution that supports the Docker runtime.
[Numba](https://github.com/numba/numba) is an open source, NumPy-aware optimizing compiler for Python sponsored by Anaconda, Inc. It uses the LLVM compiler project to generate machine code from Python syntax. Numba can compile a large subset of numerically-focused Python, including many NumPy functions. Additionally, Numba has support for automatic parallelization of loops, generation of GPU-accelerated code, and creation of ufuncs and C callbacks.
[Chainer](https://chainer.org/) is a Python-based deep learning framework aiming at flexibility. It provides automatic differentiation APIs based on the define-by-run approach (dynamic computational graphs) as well as object-oriented high-level APIs to build and train neural networks. It also supports CUDA/cuDNN using [CuPy](https://github.com/cupy/cupy) for high performance training and inference.
[XGBoost](https://xgboost.readthedocs.io/) is an optimized distributed gradient boosting library designed to be highly efficient, flexible and portable. It implements machine learning algorithms under the Gradient Boosting framework. XGBoost provides a parallel tree boosting (also known as GBDT, GBM) that solve many data science problems in a fast and accurate way. It supports distributed training on multiple machines, including AWS, GCE, Azure, and Yarn clusters. Also, it can be integrated with Flink, Spark and other cloud dataflow systems.
[cuML](https://github.com/rapidsai/cuml) is a suite of libraries that implement machine learning algorithms and mathematical primitives functions that share compatible APIs with other RAPIDS projects. cuML enables data scientists, researchers, and software engineers to run traditional tabular ML tasks on GPUs without going into the details of CUDA programming. In most cases, cuML's Python API matches the API from scikit-learn.
[Emu](https://calebwin.github.io/emu) is a GPGPU library for Rust with a focus on portability, modularity, and performance. It's a CUDA-esque compute-specific abstraction over WebGPU providing specific functionality to make WebGPU feel more like CUDA.
[Scalene](https://github.com/plasma-umass/scalene) is a high-performance CPU, GPU and memory profiler for Python that does a number of things that other Python profilers do not and cannot do. It runs orders of magnitude faster than many other profilers while delivering far more detailed information.
[MLpack](https://mlpack.org/) is a fast, flexible C++ machine learning library written in C++ and built on the [Armadillo](https://arma.sourceforge.net/) linear algebra library, the [ensmallen](https://ensmallen.org/) numerical optimization library, and parts of [Boost](https://boost.org/).
[Netron](https://netron.app/) is a viewer for neural network, deep learning and machine learning models. It supports ONNX, TensorFlow Lite, Caffe, Keras, Darknet, PaddlePaddle, ncnn, MNN, Core ML, RKNN, MXNet, MindSpore Lite, TNN, Barracuda, Tengine, CNTK, TensorFlow.js, Caffe2 and UFF.
[Lightning](https://github.com/Lightning-AI/lightning) is a tool that builds and trains PyTorch models and connect them to the ML lifecycle using Lightning App templates, without handling DIY infrastructure, cost management, scaling, etc..
[OpenNN](https://www.opennn.net/) is an open-source neural networks library for machine learning. It contains sophisticated algorithms and utilities to deal with many artificial intelligence solutions.
[H20](https://h2o.ai/) is an AI Cloud platform that solves complex business problems and accelerates the discovery of new ideas with results you can understand and trust.
[Gensim](https://github.com/RaRe-Technologies/gensim) is a Python library for topic modelling, document indexing and similarity retrieval with large corpora. Target audience is the natural language processing (NLP) and information retrieval (IR) community.
[llama.cpp](https://github.com/ggerganov/llama.cpp) is a Port of Facebook's LLaMA model in C/C++.
[hmmlearn](https://github.com/hmmlearn/hmmlearn) is a set of algorithms for unsupervised learning and inference of [Hidden Markov Models](https://en.wikipedia.org/wiki/Hidden_Markov_model).
[Nextjournal](https://nextjournal.com/) is a notebook for reproducible research. It runs anything you can put into a Docker container. Improve your workflow with polyglot notebooks, automatic versioning and real-time collaboration. Save time and money with on-demand provisioning, including GPU support.
[IPython](https://ipython.org/) provides a rich architecture for interactive computing with:
- A powerful interactive shell.
- A kernel for [Jupyter](https://jupyter.org/).
- Support for interactive data visualization and use of [GUI toolkits](https://ipython.org/ipython-doc/stable/interactive/reference.html#gui-event-loop-support).
- Flexible, [embeddable](https://ipython.org/ipython-doc/stable/interactive/reference.html#embedding-ipython) interpreters to load into your own projects.
- Easy to use, high performance tools for [parallel computing](https://ipyparallel.readthedocs.io/en/latest/).
[Veles](https://github.com/Samsung/veles) is a Distributed platform for rapid Deep learning application development currently devloped by Samsung.
[DyNet](https://github.com/clab/dynet) is a neural network library developed by Carnegie Mellon University and many others. It is written in C++ (with bindings in Python) and is designed to be efficient when run on either CPU or GPU, and to work well with networks that have dynamic structures that change for every training instance. These kinds of networks are particularly important in natural language processing tasks, and DyNet has been used to build state-of-the-art systems for syntactic parsing, machine translation, morphological inflection, and many other application areas.
[Ray](https://github.com/ray-project/ray) is a unified framework for scaling AI and Python applications. It consists of a core distributed runtime and a toolkit of libraries (Ray AIR) for accelerating ML workloads.
[whisper.cpp](https://github.com/ggerganov/whisper.cpp) is a high-performance inference of OpenAI's Whisper automatic speech recognition (ASR) model.
[ChatGPT Plus](https://openai.com/blog/chatgpt-plus/) is a pilot subscription plan(**$20/month**) for ChatGPT, a conversational AI that can chat with you, answer follow-up questions, and challenge incorrect assumptions.
[Auto-GPT](https://github.com/Significant-Gravitas/Auto-GPT) is an "AI agent" that given a goal in natural language, can attempt to achieve it by breaking it into sub-tasks and using the internet and other tools in an automatic loop. It uses OpenAI's GPT-4 or GPT-3.5 APIs, and is among the first examples of an application using GPT-4 to perform autonomous tasks.
[Chatbot UI by mckaywrigley](https://github.com/mckaywrigley/chatbot-ui) is an advanced chatbot kit for OpenAI's chat models built on
top of Chatbot UI Lite using Next.js, TypeScript, and Tailwind CSS. This version of ChatBot UI supports both GPT-3.5 and GPT-4 models. Conversations are stored locally within your browser. You can export and import conversations to safeguard against data loss. See a [demo](https://twitter.com/mckaywrigley/status/1636103188733640704).
[Chatbot UI Lite by mckaywrigley](https://github.com/mckaywrigley/chatbot-ui-lite) is a simple chatbot starter kit for OpenAI's chat model using Next.js, TypeScript, and Tailwind CSS. See a [demo](https://twitter.com/mckaywrigley/status/1636103188733640704).
[MiniGPT-4](https://minigpt-4.github.io/) is an enhancing Vision-language Understanding with Advanced Large Language Models.
[GPT4All](https://github.com/nomic-ai/gpt4all) is an ecosystem of open-source chatbots trained on a massive collections of clean assistant data including code, stories and dialogue based on [LLaMa](https://github.com/facebookresearch/llama).
[GPT4All UI](https://github.com/nomic-ai/gpt4all-ui) is a Flask web application that provides a chat UI for interacting with the GPT4All chatbot.
[Alpaca.cpp](https://github.com/antimatter15/alpaca.cpp) is a fast ChatGPT-like model locally on your device. It combines the [LLaMA foundation model](https://github.com/facebookresearch/llama) with an [open reproduction](https://github.com/tloen/alpaca-lora) of [Stanford Alpaca](https://github.com/tatsu-lab/stanford_alpaca) a fine-tuning of the base model to obey instructions (akin to the [RLHF](https://huggingface.co/blog/rlhf) used to train ChatGPT) and a set of modifications to [llama.cpp](https://github.com/ggerganov/llama.cpp) to add a chat interface.
[llama.cpp](https://github.com/ggerganov/llama.cpp) is a Port of Facebook's LLaMA model in C/C++.
[OpenPlayground](https://github.com/nat/openplayground) is a playfround for running ChatGPT-like models locally on your device.
[Vicuna](https://vicuna.lmsys.org/) is an open source chatbot trained by fine tuning LLaMA. It apparently achieves more than 90% quality of chatgpt and costs $300 to train.
[Yeagar ai](https://github.com/yeagerai/yeagerai-agent) is a Langchain Agent creator designed to help you build, prototype, and deploy AI-powered agents with ease.
[Vicuna](https://vicuna.lmsys.org/) is created by fine-tuning a LLaMA base model using approximately 70K user-shared conversations gathered from ShareGPT.com with public APIs. To ensure data quality, it convert the HTML back to markdown and filter out some inappropriate or low-quality samples.
[ShareGPT](https://sharegpt.com/) is a place to share your wildest ChatGPT conversations with one click. With 198,404 conversations shared so far.
[FastChat](https://github.com/lm-sys/FastChat) is an open platform for training, serving, and evaluating large language model based chatbots.
[Haystack](https://haystack.deepset.ai/) is an open source NLP framework to interact with your data using Transformer models and LLMs (GPT-4, ChatGPT and alike). It offers production-ready tools to quickly build complex decision making, question answering, semantic search, text generation applications, and more.
[StableLM (Stability AI Language Models)](https://github.com/Stability-AI/StableLM) is StableLM series of language models and will be continuously updated with new checkpoints.
[Databricks’ Dolly](https://github.com/databrickslabs/dolly) is an instruction-following large language model trained on the Databricks machine learning platform that is licensed for commercial use.
[GPTCach](https://gptcache.readthedocs.io/) is a Library for Creating Semantic Cache for LLM Queries.
[AlaC](https://github.com/gofireflyio/aiac) is an Artificial Intelligence Infrastructure-as-Code Generator.
[Adrenaline](https://useadrenaline.com/) is a tool that lets you talk to your codebase. It's powered by static analysis, vector search, and large language models.
[OpenAssistant](https://open-assistant.io/) is a chat-based assistant that understands tasks, can interact with third-party systems, and retrieve information dynamically to do so.
[DoctorGPT](https://github.com/ingyamilmolinar/doctorgpt) is a lightweight self-contained binary that monitors your application logs for problems and diagnoses them.
[HttpGPT](https://github.com/lucoiso/UEHttpGPT/releases) is an Unreal Engine 5 plugin that facilitates integration with OpenAI's GPT based services (ChatGPT and DALL-E) through asynchronous REST requests, making it easy for developers to communicate with these services. It also includes Editor Tools to integrate Chat GPT and DALL-E image generation directly in the Engine.
[PaLM 2](https://ai.google/discover/palm2) is a next generation large language model that builds on Google’s legacy of breakthrough research in machine learning and responsible AI. It includes an advanced reasoning tasks, including code and math, classification and question answering, translation and multilingual proficiency, and natural language generation better than our previous state-of-the-art LLMs.
[Med-PaLM](https://sites.research.google/med-palm/) is a large language model (LLM) designed to provide high quality answers to medical questions. It harnesses the power of Google’s large language models, which we have aligned to the medical domain with a set of carefully-curated medical expert demonstrations.
[Sec-PaLM](https://cloud.google.com/blog/products/identity-security/rsa-google-cloud-security-ai-workbench-generative-ai) is a large language models (LLMs), that accelerate the ability to help people who are responsible for keeping their organizations safe. These new models not only give people a more natural and creative way to understand and manage security.
### LLM Training Frameworks
[Back to the Top](#table-of-contents)
- [Alpa](https://alpa.ai/index.html) is a system for training and serving large-scale neural networks.
- [BayLing](https://github.com/ictnlp/BayLing) - an English/Chinese LLM equipped with advanced language alignment, showing superior capability in English/Chinese generation, instruction following and multi-turn interaction.
- [BLOOM](https://huggingface.co/bigscience/bloom) - BigScience Large Open-science Open-access Multilingual Language Model [BLOOM-LoRA](https://github.com/linhduongtuan/BLOOM-LORA)
- [Cerebras-GPT](https://www.cerebras.net/blog/cerebras-gpt-a-family-of-open-compute-efficient-large-language-models/) - A Family of Open, Compute-efficient, Large Language Models.
- [DeepSpeed](https://www.deepspeed.ai/) is a deep learning optimization library that makes distributed training and inference easy, efficient, and effective.
- [FairScale](https://fairscale.readthedocs.io/en/latest/what_is_fairscale.html) is a PyTorch extension library for high performance and large scale training. This library extends basic PyTorch capabilities while adding new SOTA scaling techniques.
- [GLM](https://github.com/THUDM/GLM)- GLM is a General Language Model pretrained with an autoregressive blank-filling objective and can be finetuned on various natural language understanding and generation tasks.
- [OpenFlamingo](https://github.com/mlfoundations/open_flamingo) is an open-source framework implementation of DeepMind's [Flamingo](https://www.deepmind.com/blog/tackling-multiple-tasks-with-a-single-visual-language-model) for training large multimodal models.
- [OPT](https://arxiv.org/abs/2205.01068) - Open Pre-trained Transformer Language Models.
- [StarCoder](https://huggingface.co/blog/starcoder) - Hugging Face LLM for Code
- [UltraLM](https://github.com/thunlp/UltraChat) - Large-scale, Informative, and Diverse Multi-round Chat Models.
- [UL2](https://arxiv.org/abs/2205.05131v1) - a unified framework for pretraining models that are universally effective across datasets and setups.
### Tools for deploying LLM
[Back to the Top](#table-of-contents)
- [Agenta](https://github.com/agenta-ai/agenta) - Easily build, version, evaluate and deploy your LLM-powered apps.
- [BentoML](https://bentoml.com/) for LLMs-based applications.
- [CometLLM](https://github.com/comet-ml/comet-llm) - A open-source LLMOps platform to log, manage, and visualize your LLM prompts and chains. Track prompt templates, prompt variables, prompt duration, token usage, and other metadata. Score prompt outputs and visualize chat history all within a single UI.
- [FastChat](https://github.com/lm-sys/FastChat) - A distributed multi-model LLM serving system with web UI and OpenAI-compatible RESTful APIs.
- [Embedchain](https://github.com/embedchain/embedchain) - Framework to create ChatGPT like bots over your dataset.
- [IntelliServer](https://github.com/intelligentnode/IntelliServer) - simplifies the evaluation of LLMs by providing a unified microservice to access and test multiple AI models.
- [Haystack](https://haystack.deepset.ai/) - an open-source NLP framework that allows you to use LLMs and transformer-based models from Hugging Face, OpenAI and Cohere to interact with your own data.
- [Langroid](https://github.com/langroid/langroid) - Harness LLMs with Multi-Agent Programming.
- [LangChain](https://github.com/hwchase17/langchain) - Building applications with LLMs through composability.
- [LiteChain](https://github.com/rogeriochaves/litechain) - Lightweight alternative to LangChain for composing LLMs .
- [Magentic](https://github.com/jackmpcollins/magentic) - Seamlessly integrate LLMs as Python functions.
- [Promptfoo](https://github.com/typpo/promptfoo) - Test your prompts. Evaluate and compare LLM outputs, catch regressions, and improve prompt quality.
- [OpenLLM](https://github.com/bentoml/OpenLLM) is an open platform for operating large language models (LLMs) in production. Fine-tune, serve, deploy, and monitor any LLMs with ease.
- [Serge](https://github.com/serge-chat/serge) - a chat interface crafted with llama.cpp for running Alpaca models. No API keys, entirely self-hosted!
- [SkyPilot](https://github.com/skypilot-org/skypilot) - Run LLMs and batch jobs on any cloud. Get maximum cost savings, highest GPU availability, and managed execution -- all with a simple interface.
- [Text Generation Inference](https://github.com/huggingface/text-generation-inference) - A Rust, Python and gRPC server for text generation inference. Used in production at [HuggingFace](https://huggingface.co/) to power LLMs api-inference widgets.
- [vLLM](https://github.com/vllm-project/vllm) - A high-throughput and memory-efficient inference and serving engine for LLMs.
### Running LLMs Locally
[Back to the Top](#table-of-contents)
* [A comprehensive guide to running Llama 2 locally](https://replicate.com/blog/run-llama-locally)
* [Leaderboard by lmsys.org](https://chat.lmsys.org/?leaderboard)
* [LLM-Leaderboard](https://github.com/LudwigStumpp/llm-leaderboard)
* [Open LLM Leaderboard by Hugging Face](https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard)
* [Holistic Evaluation of Language Models (HELM)](https://crfm.stanford.edu/helm/latest/?groups=1)
* [TextSynth Server Benchmarks](https://bellard.org/ts_server/)
[LocalAI](https://localai.io/) is a self-hosted, community-driven, local OpenAI-compatible API. Drop-in replacement for OpenAI running LLMs on consumer-grade hardware with no GPU required. It's an API to run ggml compatible models: llama, gpt4all, rwkv, whisper, vicuna, koala, gpt4all-j, cerebras, falcon, dolly, starcoder, and many others.
[llama.cpp](https://github.com/ggerganov/llama.cpp) is a Port of Facebook's LLaMA model in C/C++.
[ollama](https://ollama.ai/) is a tool to get up and running with Llama 2 and other large language models locally.
[LocalAI](https://localai.io/) is a self-hosted, community-driven, local OpenAI-compatible API. Drop-in replacement for OpenAI running LLMs on consumer-grade hardware with no GPU required. It's an API to run ggml compatible models: llama, gpt4all, rwkv, whisper, vicuna, koala, gpt4all-j, cerebras, falcon, dolly, starcoder, and many others.
[Serge](https://github.com/serge-chat/serge) is a web interface for chatting with Alpaca through llama.cpp. Fully self-hosted & dockerized, with an easy to use API.
[OpenLLM](https://github.com/bentoml/OpenLLM) is an open platform for operating large language models (LLMs) in production. Fine-tune, serve, deploy, and monitor any LLMs with ease.
[Llama-gpt](https://github.com/getumbrel/llama-gpt) is a self-hosted, offline, ChatGPT-like chatbot. Powered by Llama 2. 100% private, with no data leaving your device.
[Llama2 webui](https://github.com/liltom-eth/llama2-webui) is a tool to run any Llama 2 locally with gradio UI on GPU or CPU from anywhere (Linux/Windows/Mac). Use `llama2-wrapper` as your local llama2 backend for Generative Agents/Apps.
[Llama2.c](https://github.com/karpathy/llama2.c) is a tool to Train the Llama 2 LLM architecture in PyTorch then inference it with one simple 700-line C file ([run.c](https://github.com/karpathy/llama2.c/blob/master/run.c)).
[Alpaca.cpp](https://github.com/antimatter15/alpaca.cpp) is a fast ChatGPT-like model locally on your device. It combines the [LLaMA foundation model](https://github.com/facebookresearch/llama) with an [open reproduction](https://github.com/tloen/alpaca-lora) of [Stanford Alpaca](https://github.com/tatsu-lab/stanford_alpaca) a fine-tuning of the base model to obey instructions (akin to the [RLHF](https://huggingface.co/blog/rlhf) used to train ChatGPT) and a set of modifications to [llama.cpp](https://github.com/ggerganov/llama.cpp) to add a chat interface.
[GPT4All](https://github.com/nomic-ai/gpt4all) is an ecosystem of open-source chatbots trained on a massive collections of clean assistant data including code, stories and dialogue based on [LLaMa](https://github.com/facebookresearch/llama).
[MiniGPT-4](https://minigpt-4.github.io/) is an enhancing Vision-language Understanding with Advanced Large Language Models
[LoLLMS WebUI](https://github.com/ParisNeo/lollms-webui) is a the hub for LLM (Large Language Model) models. It aims to provide a user-friendly interface to access and utilize various LLM models for a wide range of tasks. Whether you need help with writing, coding, organizing data, generating images, or seeking answers to your questions.
[LM Studio](https://lmstudio.ai/) is a tool to Discover, download, and run local LLMs.
[Gradio Web UI](https://github.com/oobabooga/text-generation-webui) is a tool for Large Language Models. Supports transformers, GPTQ, llama.cpp (ggml/gguf), Llama models.
[OpenPlayground](https://github.com/nat/openplayground) is a playfround for running ChatGPT-like models locally on your device.
[Vicuna](https://vicuna.lmsys.org/) is an open source chatbot trained by fine tuning LLaMA. It apparently achieves more than 90% quality of chatgpt and costs $300 to train.
[Yeagar ai](https://github.com/yeagerai/yeagerai-agent) is a Langchain Agent creator designed to help you build, prototype, and deploy AI-powered agents with ease.
[KoboldCpp](https://github.com/LostRuins/koboldcpp) is an easy-to-use AI text-generation software for GGML models. It's a single self contained distributable from Concedo, that builds off llama.cpp, and adds a versatile Kobold API endpoint, additional format support, backward compatibility, as well as a fancy UI with persistent stories, editing tools, save formats, memory, world info, author's note, characters, and scenarios.
# Algorithms
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
[Fuzzy logic](https://www.investopedia.com/terms/f/fuzzy-logic.asp) is a heuristic approach that allows for more advanced decision-tree processing and better integration with rules-based programming.
**Architecture of a Fuzzy Logic System. Source: [ResearchGate](https://www.researchgate.net/figure/Architecture-of-a-fuzzy-logic-system_fig2_309452475)**
[Support Vector Machine (SVM)](https://web.stanford.edu/~hastie/MOOC-Slides/svm.pdf) is a supervised machine learning model that uses classification algorithms for two-group classification problems.
**Support Vector Machine (SVM). Source:[OpenClipArt](https://openclipart.org/detail/182977/svm-support-vector-machines)**
[Neural networks](https://www.ibm.com/cloud/learn/neural-networks) are a subset of machine learning and are at the heart of deep learning algorithms. The name/structure is inspired by the human brain copying the process that biological neurons/nodes signal to one another.
**Deep neural network. Source: [IBM](https://www.ibm.com/cloud/learn/neural-networks)**
[Convolutional Neural Networks (R-CNN)](https://stanford.edu/~shervine/teaching/cs-230/cheatsheet-convolutional-neural-networks) is an object detection algorithm that first segments the image to find potential relevant bounding boxes and then run the detection algorithm to find most probable objects in those bounding boxes.
**Convolutional Neural Networks. Source:[CS231n](https://cs231n.github.io/convolutional-networks/#conv)**
[Recurrent neural networks (RNNs)](https://www.ibm.com/cloud/learn/recurrent-neural-networks) is a type of artificial neural network which uses sequential data or time series data.
**Recurrent Neural Networks. Source: [Slideteam](https://www.slideteam.net/recurrent-neural-networks-rnns-ppt-powerpoint-presentation-file-templates.html)**
[Multilayer Perceptrons (MLPs)](https://deepai.org/machine-learning-glossary-and-terms/multilayer-perceptron) is multi-layer neural networks composed of multiple layers of [perceptrons](https://en.wikipedia.org/wiki/Perceptron) with a threshold activation.
**Multilayer Perceptrons. Source: [DeepAI](https://deepai.org/machine-learning-glossary-and-terms/multilayer-perceptron)**
[Random forest](https://www.ibm.com/cloud/learn/random-forest) is a commonly-used machine learning algorithm, which combines the output of multiple decision trees to reach a single result. A decision tree in a forest cannot be pruned for sampling and therefore, prediction selection. Its ease of use and flexibility have fueled its adoption, as it handles both classification and regression problems.
**Random forest. Source: [wikimedia](https://community.tibco.com/wiki/random-forest-template-tibco-spotfirer-wiki-page)**
[Decision trees](https://www.cs.cmu.edu/~bhiksha/courses/10-601/decisiontrees/) are tree-structured models for classification and regression.
***Decision Trees. Source: [CMU](http://www.cs.cmu.edu/~bhiksha/courses/10-601/decisiontrees/)*
[Naive Bayes](https://en.wikipedia.org/wiki/Naive_Bayes_classifier) is a machine learning algorithm that is used solved calssification problems. It's based on applying [Bayes' theorem](https://www.mathsisfun.com/data/bayes-theorem.html) with strong independence assumptions between the features.
**Bayes' theorem. Source:[mathisfun](https://www.mathsisfun.com/data/bayes-theorem.html)**
# PyTorch Development
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
## PyTorch Learning Resources
[PyTorch](https://pytorch.org) is an open-source deep learning framework that accelerates the path from research to production, used for applications such as computer vision and natural language processing. PyTorch is developed by [Facebook's AI Research](https://ai.facebook.com/research/) lab.
[Getting Started with PyTorch](https://pytorch.org/get-started/locally/)
[PyTorch Documentation](https://pytorch.org/docs/stable/index.html)
[PyTorch Discussion Forum](https://discuss.pytorch.org/)
[Top Pytorch Courses Online | Coursera](https://www.coursera.org/courses?query=pytorch&page=1)
[Top Pytorch Courses Online | Udemy](https://www.udemy.com/topic/PyTorch/)
[Learn PyTorch with Online Courses and Classes | edX](https://www.edx.org/learn/pytorch)
[PyTorch Fundamentals - Learn | Microsoft Docs](https://docs.microsoft.com/en-us/learn/paths/pytorch-fundamentals/)
[Intro to Deep Learning with PyTorch | Udacity ](https://www.udacity.com/course/deep-learning-pytorch--ud188)
[PyTorch Development in Visual Studio Code](https://code.visualstudio.com/docs/datascience/pytorch-support)
[PyTorch on Azure - Deep Learning with PyTorch | Microsoft Azure](https://azure.microsoft.com/en-us/develop/pytorch/)
[PyTorch - Azure Databricks | Microsoft Docs](https://docs.microsoft.com/en-us/azure/databricks/applications/machine-learning/train-model/pytorch)
[Deep Learning with PyTorch | Amazon Web Services (AWS)](https://aws.amazon.com/pytorch/)
[Getting started with PyTorch on Google Cloud](https://cloud.google.com/ai-platform/training/docs/getting-started-pytorch)
## PyTorch Tools, Libraries, and Frameworks
[PyTorch Mobile](https://pytorch.org/mobile/home/) is an end-to-end ML workflow from Training to Deployment for iOS and Android mobile devices.
[TorchScript](https://pytorch.org/docs/stable/jit.html) is a way to create serializable and optimizable models from PyTorch code. This allows any TorchScript program to be saved from a Python process and loaded in a process where there is no Python dependency.
[TorchServe](https://pytorch.org/serve/) is a flexible and easy to use tool for serving PyTorch models.
[Keras](https://keras.io) is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.It was developed with a focus on enabling fast experimentation. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, R, Theano, or PlaidML.
[ONNX Runtime](https://github.com/microsoft/onnxruntime) is a cross-platform, high performance ML inferencing and training accelerator. It supports models from deep learning frameworks such as PyTorch and TensorFlow/Keras as well as classical machine learning libraries such as scikit-learn, LightGBM, XGBoost, etc.
[Kornia](https://kornia.github.io/) is a differentiable computer vision library that consists of a set of routines and differentiable modules to solve generic CV (Computer Vision) problems.
[PyTorch-NLP](https://pytorchnlp.readthedocs.io/en/latest/) is a library for Natural Language Processing (NLP) in Python. It’s built with the very latest research in mind, and was designed from day one to support rapid prototyping. PyTorch-NLP comes with pre-trained embeddings, samplers, dataset loaders, metrics, neural network modules and text encoders.
[Ignite](https://pytorch.org/ignite) is a high-level library to help with training and evaluating neural networks in PyTorch flexibly and transparently.
[Hummingbird](https://github.com/microsoft/hummingbird) is a library for compiling trained traditional ML models into tensor computations. It allows users to seamlessly leverage neural network frameworks (such as PyTorch) to accelerate traditional ML models.
[Deep Graph Library (DGL)](https://www.dgl.ai/) is a Python package built for easy implementation of graph neural network model family, on top of PyTorch and other frameworks.
[TensorLy](http://tensorly.org/stable/home.html) is a high level API for tensor methods and deep tensorized neural networks in Python that aims to make tensor learning simple.
[GPyTorch](https://cornellius-gp.github.io/) is a Gaussian process library implemented using PyTorch, designed for creating scalable, flexible Gaussian process models.
[Poutyne](https://poutyne.org/) is a Keras-like framework for PyTorch and handles much of the boilerplating code needed to train neural networks.
[Forte](https://github.com/asyml/forte/tree/master/docs) is a toolkit for building NLP pipelines featuring composable components, convenient data interfaces, and cross-task interaction.
[TorchMetrics](https://github.com/PyTorchLightning/metrics) is a Machine learning metrics for distributed, scalable PyTorch applications.
[Captum](https://captum.ai/) is an open source, extensible library for model interpretability built on PyTorch.
[Transformer](https://github.com/huggingface/transformers) is a State-of-the-art Natural Language Processing for Pytorch, TensorFlow, and JAX.
[Hydra](https://hydra.cc) is a framework for elegantly configuring complex applications.
[Accelerate](https://huggingface.co/docs/accelerate) is a simple way to train and use PyTorch models with multi-GPU, TPU, mixed-precision.
[Ray](https://github.com/ray-project/ray) is a fast and simple framework for building and running distributed applications.
[ParlAI](http://parl.ai/) is a unified platform for sharing, training, and evaluating dialog models across many tasks.
[PyTorchVideo](https://pytorchvideo.org/) is a deep learning library for video understanding research. Hosts various video-focused models, datasets, training pipelines and more.
[Opacus](https://opacus.ai/) is a library that enables training PyTorch models with Differential Privacy.
[PyTorch Lightning](https://github.com/williamFalcon/pytorch-lightning) is a Keras-like ML library for PyTorch. It leaves core training and validation logic to you and automates the rest.
[PyTorch Geometric Temporal](https://github.com/benedekrozemberczki/pytorch_geometric_temporal) is a temporal (dynamic) extension library for PyTorch Geometric.
[PyTorch Geometric](https://github.com/rusty1s/pytorch_geometric) is a library for deep learning on irregular input data such as graphs, point clouds, and manifolds.
[Raster Vision](https://docs.rastervision.io/) is an open source framework for deep learning on satellite and aerial imagery.
[CrypTen](https://github.com/facebookresearch/CrypTen) is a framework for Privacy Preserving ML. Its goal is to make secure computing techniques accessible to ML practitioners.
[Optuna](https://optuna.org/) is an open source hyperparameter optimization framework to automate hyperparameter search.
[Pyro](http://pyro.ai/) is a universal probabilistic programming language (PPL) written in Python and supported by PyTorch on the backend.
[Albumentations](https://github.com/albu/albumentations) is a fast and extensible image augmentation library for different CV tasks like classification, segmentation, object detection and pose estimation.
[Skorch](https://github.com/skorch-dev/skorch) is a high-level library for PyTorch that provides full scikit-learn compatibility.
[MMF](https://mmf.sh/) is a modular framework for vision & language multimodal research from Facebook AI Research (FAIR).
[AdaptDL](https://github.com/petuum/adaptdl) is a resource-adaptive deep learning training and scheduling framework.
[Polyaxon](https://github.com/polyaxon/polyaxon) is a platform for building, training, and monitoring large-scale deep learning applications.
[TextBrewer](http://textbrewer.hfl-rc.com/) is a PyTorch-based knowledge distillation toolkit for natural language processing
[AdverTorch](https://github.com/BorealisAI/advertorch) is a toolbox for adversarial robustness research. It contains modules for generating adversarial examples and defending against attacks.
[NeMo](https://github.com/NVIDIA/NeMo) is a a toolkit for conversational AI.
[ClinicaDL](https://clinicadl.readthedocs.io/) is a framework for reproducible classification of Alzheimer's Disease
[Stable Baselines3 (SB3)](https://github.com/DLR-RM/stable-baselines3) is a set of reliable implementations of reinforcement learning algorithms in PyTorch.
[TorchIO](https://github.com/fepegar/torchio) is a set of tools to efficiently read, preprocess, sample, augment, and write 3D medical images in deep learning applications written in PyTorch.
[PySyft](https://github.com/OpenMined/PySyft) is a Python library for encrypted, privacy preserving deep learning.
[Flair](https://github.com/flairNLP/flair) is a very simple framework for state-of-the-art natural language processing (NLP).
[Glow](https://github.com/pytorch/glow) is a ML compiler that accelerates the performance of deep learning frameworks on different hardware platforms.
[FairScale](https://github.com/facebookresearch/fairscale) is a PyTorch extension library for high performance and large scale training on one or multiple machines/nodes.
[MONAI](https://monai.io/) is a deep learning framework that provides domain-optimized foundational capabilities for developing healthcare imaging training workflows.
[PFRL](https://github.com/pfnet/pfrl) is a deep reinforcement learning library that implements various state-of-the-art deep reinforcement algorithms in Python using PyTorch.
[Einops](https://github.com/arogozhnikov/einops) is a flexible and powerful tensor operations for readable and reliable code.
[PyTorch3D](https://pytorch3d.org/) is a deep learning library that provides efficient, reusable components for 3D Computer Vision research with PyTorch.
[Ensemble Pytorch](https://ensemble-pytorch.readthedocs.io/) is a unified ensemble framework for PyTorch to improve the performance and robustness of your deep learning model.
[Lightly](https://github.com/lightly-ai/lightly) is a computer vision framework for self-supervised learning.
[Higher](https://github.com/facebookresearch/higher) is a library which facilitates the implementation of arbitrarily complex gradient-based meta-learning algorithms and nested optimisation loops with near-vanilla PyTorch.
[Horovod](http://horovod.ai/) is a distributed training library for deep learning frameworks. Horovod aims to make distributed DL fast and easy to use.
[PennyLane](https://pennylane.ai/) is a library for quantum ML, automatic differentiation, and optimization of hybrid quantum-classical computations.
[Detectron2](https://github.com/facebookresearch/detectron2) is FAIR's next-generation platform for object detection and segmentation.
[Fastai](https://docs.fast.ai/) is a library that simplifies training fast and accurate neural nets using modern best practices.
# TensorFlow Development
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
## TensorFlow Learning Resources
[TensorFlow](https://www.tensorflow.org) is an end-to-end open source platform for machine learning. It has a comprehensive, flexible ecosystem of tools, libraries and community resources that lets researchers push the state-of-the-art in ML and developers easily build and deploy ML powered applications.
[Getting Started with TensorFlow](https://www.tensorflow.org/learn)
[TensorFlow Tutorials](https://www.tensorflow.org/tutorials/)
[TensorFlow Developer Certificate | TensorFlow](https://www.tensorflow.org/certificate)
[TensorFlow Community](https://www.tensorflow.org/community/)
[TensorFlow Models & Datasets](https://www.tensorflow.org/resources/models-datasets)
[TensorFlow Cloud](https://www.tensorflow.org/cloud)
[Machine learning education | TensorFlow](https://www.tensorflow.org/resources/learn-ml)
[Top Tensorflow Courses Online | Coursera](https://www.coursera.org/courses?query=tensorflow)
[Top Tensorflow Courses Online | Udemy](https://www.udemy.com/courses/search/?src=ukw&q=tensorflow)
[Deep Learning with TensorFlow | Udemy](https://www.udemy.com/course/deep-learning-with-tensorflow-certification-training/)
[Deep Learning with Tensorflow | edX](https://www.edx.org/course/deep-learning-with-tensorflow)
[Intro to TensorFlow for Deep Learning | Udacity ](https://www.udacity.com/course/intro-to-tensorflow-for-deep-learning--ud187)
[Intro to TensorFlow: Machine Learning Crash Course | Google Developers](https://developers.google.com/machine-learning/crash-course/first-steps-with-tensorflow/toolkit)
[Train and deploy a TensorFlow model - Azure Machine Learning](https://docs.microsoft.com/en-us/azure/machine-learning/how-to-train-tensorflow)
[Apply machine learning models in Azure Functions with Python and TensorFlow | Microsoft Azure](https://docs.microsoft.com/en-us/azure/azure-functions/functions-machine-learning-tensorflow?tabs=bash)
[Deep Learning with TensorFlow | Amazon Web Services (AWS)](https://aws.amazon.com/tensorflow/)
[TensorFlow - Amazon EMR | AWS Documentation](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-tensorflow.html)
[TensorFlow Enterprise | Google Cloud](https://cloud.google.com/tensorflow-enterprise/)
## TensorFlow Tools, Libraries, and Frameworks
[TensorFlow Lite](https://www.tensorflow.org/lite/) is an open source deep learning framework for deploying machine learning models on mobile and IoT devices.
[TensorFlow.js](https://www.tensorflow.org/js) is a JavaScript Library that lets you develop or execute ML models in JavaScript, and use ML directly in the browser client side, server side via Node.js, mobile native via React Native, desktop native via Electron, and even on IoT devices via Node.js on Raspberry Pi.
[Tensorflow_macOS](https://github.com/apple/tensorflow_macos) is a Mac-optimized version of TensorFlow and TensorFlow Addons for macOS 11.0+ accelerated using Apple's ML Compute framework.
[Google Colaboratory](https://colab.sandbox.google.com/notebooks/welcome.ipynb) is a free Jupyter notebook environment that requires no setup and runs entirely in the cloud, allowing you to execute TensorFlow code in your browser with a single click.
[What-If Tool](https://pair-code.github.io/what-if-tool/) is a tool for code-free probing of machine learning models, useful for model understanding, debugging, and fairness. Available in TensorBoard and jupyter or colab notebooks.
[TensorBoard](https://www.tensorflow.org/tensorboard) is a suite of visualization tools to understand, debug, and optimize TensorFlow programs.
[Keras](https://keras.io) is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.It was developed with a focus on enabling fast experimentation. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, R, Theano, or PlaidML.
[XLA (Accelerated Linear Algebra)](https://www.tensorflow.org/xla) is a domain-specific compiler for linear algebra that optimizes TensorFlow computations. The results are improvements in speed, memory usage, and portability on server and mobile platforms.
[ML Perf](https://mlperf.org/) is a broad ML benchmark suite for measuring performance of ML software frameworks, ML hardware accelerators, and ML cloud platforms.
[TensorFlow Playground](https://playground.tensorflow.org/#activation=tanh&batchSize=10&dataset=circle®Dataset=reg-plane&learningRate=0.03®ularizationRate=0&noise=0&networkShape=4,2&seed=0.04620&showTestData=false&discretize=false&percTrainData=50&x=true&y=true&xTimesY=false&xSquared=false&ySquared=false&cosX=false&sinX=false&cosY=false&sinY=false&collectStats=false&problem=classification&initZero=false&hideText=false) is an development environment to tinker around with a neural network in your browser.
[TPU Research Cloud (TRC)](https://sites.research.google/trc/) is a program enables researchers to apply for access to a cluster of more than 1,000 Cloud TPUs at no charge to help them accelerate the next wave of research breakthroughs.
[MLIR](https://www.tensorflow.org/mlir) is a new intermediate representation and compiler framework.
[Lattice](https://www.tensorflow.org/lattice) is a library for flexible, controlled and interpretable ML solutions with common-sense shape constraints.
[TensorFlow Hub](https://www.tensorflow.org/hub) is a library for reusable machine learning. Download and reuse the latest trained models with a minimal amount of code.
[TensorFlow Cloud](https://www.tensorflow.org/cloud) is a library to connect your local environment to Google Cloud.
[TensorFlow Model Optimization Toolkit](https://www.tensorflow.org/model_optimization) is a suite of tools for optimizing ML models for deployment and execution.
[TensorFlow Recommenders](https://www.tensorflow.org/recommenders) is a library for building recommender system models.
[TensorFlow Text](https://www.tensorflow.org/text) is a collection of text- and NLP-related classes and ops ready to use with TensorFlow 2.
[TensorFlow Graphics](https://www.tensorflow.org/graphics) is a library of computer graphics functionalities ranging from cameras, lights, and materials to renderers.
[TensorFlow Federated](https://www.tensorflow.org/federated) is an open source framework for machine learning and other computations on decentralized data.
[TensorFlow Probability](https://www.tensorflow.org/probability) is a library for probabilistic reasoning and statistical analysis.
[Tensor2Tensor](https://github.com/tensorflow/tensor2tensor) is a library of deep learning models and datasets designed to make deep learning more accessible and accelerate ML research.
[TensorFlow Privacy](https://www.tensorflow.org/responsible_ai/privacy) is a Python library that includes implementations of TensorFlow optimizers for training machine learning models with differential privacy.
[TensorFlow Ranking](https://github.com/tensorflow/ranking) is a library for Learning-to-Rank (LTR) techniques on the TensorFlow platform.
[TensorFlow Agents](https://www.tensorflow.org/agents) is a library for reinforcement learning in TensorFlow.
[TensorFlow Addons](https://github.com/tensorflow/addons) is a repository of contributions that conform to well-established API patterns, but implement new functionality not available in core TensorFlow, maintained by [SIG Addons](https://groups.google.com/a/tensorflow.org/g/addons). TensorFlow natively supports a large number of operators, layers, metrics, losses, and optimizers.
[TensorFlow I/O](https://github.com/tensorflow/io) is a Dataset, streaming, and file system extensions, maintained by SIG IO.
[TensorFlow Quantum](https://www.tensorflow.org/quantum) is a quantum machine learning library for rapid prototyping of hybrid quantum-classical ML models.
[Dopamine](https://github.com/google/dopamine) is a research framework for fast prototyping of reinforcement learning algorithms.
[TRFL](https://deepmind.com/blog/trfl/) is a library for reinforcement learning building blocks created by DeepMind.
[Mesh TensorFlow](https://github.com/tensorflow/mesh) is a language for distributed deep learning, capable of specifying a broad class of distributed tensor computations.
[RaggedTensors](https://www.tensorflow.org/guide/ragged_tensor) is an API that makes it easy to store and manipulate data with non-uniform shape, including text (words, sentences, characters), and batches of variable length.
[Unicode Ops](https://www.tensorflow.org/tutorials/load_data/unicode) is an API that Supports working with Unicode text directly in TensorFlow.
[Magenta](https://magenta.tensorflow.org/) is a research project exploring the role of machine learning in the process of creating art and music.
[Nucleus](https://github.com/google/nucleus) is a library of Python and C++ code designed to make it easy to read, write and analyze data in common genomics file formats like SAM and VCF.
[Sonnet](https://github.com/deepmind/sonnet) is a library from DeepMind for constructing neural networks.
[Neural Structured Learning](https://www.tensorflow.org/neural_structured_learning) is a learning framework to train neural networks by leveraging structured signals in addition to feature inputs.
[Model Remediation](https://www.tensorflow.org/responsible_ai/model_remediation) is a library to help create and train models in a way that reduces or eliminates user harm resulting from underlying performance biases.
[Fairness Indicators](https://www.tensorflow.org/responsible_ai/fairness_indicators/guide) is a library that enables easy computation of commonly-identified fairness metrics for binary and multiclass classifiers.
[Decision Forests](https://www.tensorflow.org/decision_forests) is a State-of-the-art algorithms for training, serving and interpreting models that use decision forests for classification, regression and ranking.
# Core ML Development
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
## Core ML Learning Resources
[Core ML](https://developer.apple.com/documentation/coreml) is an Apple framework for integrating machine learning models into apps running on Apple devices (including iOS, watchOS, macOS, and tvOS). Core ML introduces a public file format (.mlmodel) for a broad set of ML methods including deep neural networks (both convolutional and recurrent), tree ensembles with boosting, and generalized linear models. Models in this format can be directly integrated into apps through Xcode.
[Introduction to Core ML](https://coremltools.readme.io/docs)
[Integrating a Core ML Model into your App](https://developer.apple.com/documentation/coreml/integrating_a_core_ml_model_into_your_app)
[Core ML Models](https://developer.apple.com/machine-learning/models/)
[Core ML API Reference](https://apple.github.io/coremltools/index.html)
[Core ML Specification](https://apple.github.io/coremltools/mlmodel/index.html)
[Apple Developer Forums for Core ML](https://developer.apple.com/forums/tags/core-ml)
[Top Core ML Courses Online | Udemy](https://www.udemy.com/topic/Core-ML/)
[Top Core ML Courses Online | Coursera](https://www.coursera.org/courses?query=core%20ml)
[IBM Watson Services for Core ML | IBM](https://www.ibm.com/watson/stories/coreml)
[Generate Core ML assets using IBM Maximo Visual Inspection | IBM](https://developer.ibm.com/technologies/iot/tutorials/ibm-maximo-visual-inspection-apple-devices/)
## Core ML Tools, Libraries, and Frameworks
[Core ML tools](https://coremltools.readme.io/) is a project that contains supporting tools for Core ML model conversion, editing, and validation.
[Create ML](https://developer.apple.com/machine-learning/create-ml/) is a tool that provides new ways of training machine learning models on your Mac. It takes the complexity out of model training while producing powerful Core ML models.
[Tensorflow_macOS](https://github.com/apple/tensorflow_macos) is a Mac-optimized version of TensorFlow and TensorFlow Addons for macOS 11.0+ accelerated using Apple's ML Compute framework.
[Apple Vision](https://developer.apple.com/documentation/vision) is a framework that performs face and face landmark detection, text detection, barcode recognition, image registration, and general feature tracking. Vision also allows the use of custom Core ML models for tasks like classification or object detection.
[Keras](https://keras.io) is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.It was developed with a focus on enabling fast experimentation. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, R, Theano, or PlaidML.
[XGBoost](https://xgboost.readthedocs.io/) is an optimized distributed gradient boosting library designed to be highly efficient, flexible and portable. It implements machine learning algorithms under the Gradient Boosting framework. XGBoost provides a parallel tree boosting (also known as GBDT, GBM) that solve many data science problems in a fast and accurate way. It supports distributed training on multiple machines, including AWS, GCE, Azure, and Yarn clusters. Also, it can be integrated with Flink, Spark and other cloud dataflow systems.
[LIBSVM](https://www.csie.ntu.edu.tw/~cjlin/libsvm/) is an integrated software for support vector classification, (C-SVC, nu-SVC), regression (epsilon-SVR, nu-SVR) and distribution estimation (one-class SVM). It supports multi-class classification.
[Scikit-Learn](https://scikit-learn.org/stable/index.html) is a simple and efficient tool for data mining and data analysis. It is built on NumPy,SciPy, and mathplotlib.
[Xcode](https://developer.apple.com/xcode/) includes everything developers need to create great applications for Mac, iPhone, iPad, Apple TV, and Apple Watch. Xcode provides developers a unified workflow for user interface design, coding, testing, and debugging. Xcode is built as an Universal app that runs 100% natively on Intel-based CPUs and Apple Silicon. It includes a unified macOS SDK that features all the frameworks, compilers, debuggers, and other tools you need to build apps that run natively on Apple Silicon and the Intel x86_64 CPU.
[SwiftUI](https://developer.apple.com/documentation/swiftui) is a user interface toolkit that provides views, controls, and layout structures for declaring your app's user interface. The SwiftUI framework provides event handlers for delivering taps, gestures, and other types of input to your application.
[UIKit](https://developer.apple.com/documentation/uikit) is a framework provides the required infrastructure for your iOS or tvOS apps. It provides the window and view architecture for implementing your interface, the event handling infrastructure for delivering Multi-Touch and other types of input to your app, and the main run loop needed to manage interactions among the user, the system, and your app.
[AppKit](https://developer.apple.com/documentation/appkit) is a graphical user interface toolkit that contains all the objects you need to implement the user interface for a macOS app such as windows, panels, buttons, menus, scrollers, and text fields, and it handles all the details for you as it efficiently draws on the screen, communicates with hardware devices and screen buffers, clears areas of the screen before drawing, and clips views.
[ARKit](https://developer.apple.com/augmented-reality/arkit/) is a set set of software development tools to enable developers to build augmented-reality apps for iOS developed by Apple. The latest version ARKit 3.5 takes advantage of the new LiDAR Scanner and depth sensing system on iPad Pro(2020) to support a new generation of AR apps that use Scene Geometry for enhanced scene understanding and object occlusion.
[RealityKit](https://developer.apple.com/documentation/realitykit) is a framework to implement high-performance 3D simulation and rendering with information provided by the ARKit framework to seamlessly integrate virtual objects into the real world.
[SceneKit](https://developer.apple.com/scenekit/) is a high-level 3D graphics framework that helps you create 3D animated scenes and effects in your iOS apps.
[Instruments](https://help.apple.com/instruments/mac/current/#/dev7b09c84f5) is a powerful and flexible performance-analysis and testing tool that’s part of the Xcode tool set. It’s designed to help you profile your iOS, watchOS, tvOS, and macOS apps, processes, and devices in order to better understand and optimize their behavior and performance.
[Cocoapods](https://cocoapods.org/) is a dependency manager for Swift and Objective-C used in Xcode projects by specifying the dependencies for your project in a simple text file. CocoaPods then recursively resolves dependencies between libraries, fetches source code for all dependencies, and creates and maintains an Xcode workspace to build your project.
[AppCode](https://www.jetbrains.com/objc/) is constantly monitoring the quality of your code. It warns you of errors and smells and suggests quick-fixes to resolve them automatically. AppCode provides lots of code inspections for Objective-C, Swift, C/C++, and a number of code inspections for other supported languages.
# Deep Learning Development
[Back to the Top](https://github.com/mikeroyal/Machine-Learning-Guide#table-of-contents)
## Deep Learning Learning Resources
[Deep Learning](https://www.ibm.com/cloud/learn/deep-learning) is a subset of machine learning, which is essentially a neural network with three or more layers. These neural networks attempt to simulate the behavior of the human brain,though, far from matching its ability. This allows the neural networks to "learn" from large amounts of data. The Learning can be [supervised](https://en.wikipedia.org/wiki/Supervised_learning), [semi-supervised](https://en.wikipedia.org/wiki/Semi-supervised_learning) or [unsupervised](https://en.wikipedia.org/wiki/Unsupervised_learning).
[Deep Learning Online Courses | NVIDIA](https://www.nvidia.com/en-us/training/online/)
[Top Deep Learning Courses Online | Coursera](https://www.coursera.org/courses?query=deep%20learning)
[Top Deep Learning Courses Online | Udemy](https://www.udemy.com/topic/deep-learning/)
[Learn Deep Learning with Online Courses and Lessons | edX](https://www.edx.org/learn/deep-learning)
[Deep Learning Online Course Nanodegree | Udacity](https://www.udacity.com/course/deep-learning-nanodegree--nd101)
[Machine Learning Course by Andrew Ng | Coursera](https://www.coursera.org/learn/machine-learning?)
[Machine Learning Engineering for Production (MLOps) course by Andrew Ng | Coursera](https://www.coursera.org/specializations/machine-learning-engineering-for-production-mlops)
[Data Science: Deep Learning and Neural Networks in Python | Udemy](https://www.udemy.com/course/data-science-deep-learning-in-python/)
[Understanding Machine Learning with Python | Pluralsight ](https://www.pluralsight.com/courses/python-understanding-machine-learning)
[How to Think About Machine Learning Algorithms | Pluralsight](https://www.pluralsight.com/courses/machine-learning-algorithms)
[Deep Learning Courses | Stanford Online](https://online.stanford.edu/courses/cs230-deep-learning)
[Deep Learning - UW Professional & Continuing Education](https://www.pce.uw.edu/courses/deep-learning)
[Deep Learning Online Courses | Harvard University](https://online-learning.harvard.edu/course/deep-learning-0)
[Machine Learning for Everyone Courses | DataCamp](https://www.datacamp.com/courses/introduction-to-machine-learning-with-r)
[Artificial Intelligence Expert Course: Platinum Edition | Udemy](https://www.udemy.com/course/artificial-intelligence-exposed-future-10-extreme-edition/)
[Top Artificial Intelligence Courses Online | Coursera](https://www.coursera.org/courses?query=artificial%20intelligence)
[Learn Artificial Intelligence with Online Courses and Lessons | edX](https://www.edx.org/learn/artificial-intelligence)
[Professional Certificate in Computer Science for Artificial Intelligence | edX](https://www.edx.org/professional-certificate/harvardx-computer-science-for-artifical-intelligence)
[Artificial Intelligence Nanodegree program](https://www.udacity.com/course/ai-artificial-intelligence-nanodegree--nd898)
[Artificial Intelligence (AI) Online Courses | Udacity](https://www.udacity.com/school-of-ai)
[Intro to Artificial Intelligence Course | Udacity](https://www.udacity.com/course/intro-to-artificial-intelligence--cs271)
[Edge AI for IoT Developers Course | Udacity](https://www.udacity.com/course/intel-edge-ai-for-iot-developers-nanodegree--nd131)
[Reasoning: Goal Trees and Rule-Based Expert Systems | MIT OpenCourseWare](https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-034-artificial-intelligence-fall-2010/lecture-videos/lecture-3-reasoning-goal-trees-and-rule-based-expert-systems/)
[Expert Systems and Applied Artificial Intelligence](https://www.umsl.edu/~joshik/msis480/chapt11.htm)
[Autonomous Systems - Microsoft AI](https://www.microsoft.com/en-us/ai/autonomous-systems)
[Introduction to Microsoft Project Bonsai](https://docs.microsoft.com/en-us/learn/autonomous-systems/intro-to-project-bonsai/)
[Machine teaching with the Microsoft Autonomous Systems platform](https://docs.microsoft.com/en-us/azure/architecture/solution-ideas/articles/autonomous-systems)
[Autonomous Maritime Systems Training | AMC Search](https://www.amcsearch.com.au/ams-training)
[Top Autonomous Cars Courses Online | Udemy](https://www.udemy.com/topic/autonomous-cars/)
[Applied Control Systems 1: autonomous cars: Math + PID + MPC | Udemy](https://www.udemy.com/course/applied-systems-control-for-engineers-modelling-pid-mpc/)
[Learn Autonomous Robotics with Online Courses and Lessons | edX](https://www.edx.org/learn/autonomous-robotics)
[Artificial Intelligence Nanodegree program](https://www.udacity.com/course/ai-artificial-intelligence-nanodegree--nd898)
[Autonomous Systems Online Courses & Programs | Udacity](https://www.udacity.com/school-of-autonomous-systems)
[Edge AI for IoT Developers Course | Udacity](https://www.udacity.com/course/intel-edge-ai-for-iot-developers-nanodegree--nd131)
[Autonomous Systems MOOC and Free Online Courses | MOOC List](https://www.mooc-list.com/tags/autonomous-systems)
[Robotics and Autonomous Systems Graduate Program | Standford Online](https://online.stanford.edu/programs/robotics-and-autonomous-systems-graduate-program)
[Mobile Autonomous Systems Laboratory | MIT OpenCourseWare](https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-186-mobile-autonomous-systems-laboratory-january-iap-2005/lecture-notes/)
## Deep Learning Tools, Libraries, and Frameworks
[NVIDIA cuDNN](https://developer.nvidia.com/cudnn) is a GPU-accelerated library of primitives for [deep neural networks](https://developer.nvidia.com/deep-learning). cuDNN provides highly tuned implementations for standard routines such as forward and backward convolution, pooling, normalization, and activation layers. cuDNN accelerates widely used deep learning frameworks, including [Caffe2](https://caffe2.ai/), [Chainer](https://chainer.org/), [Keras](https://keras.io/), [MATLAB](https://www.mathworks.com/solutions/deep-learning.html), [MxNet](https://mxnet.incubator.apache.org/), [PyTorch](https://pytorch.org/), and [TensorFlow](https://www.tensorflow.org/).
[NVIDIA DLSS (Deep Learning Super Sampling)](https://developer.nvidia.com/dlss) is a temporal image upscaling AI rendering technology that increases graphics performance using dedicated Tensor Core AI processors on GeForce RTX™ GPUs. DLSS uses the power of a deep learning neural network to boost frame rates and generate beautiful, sharp images for your games.
[AMD FidelityFX Super Resolution (FSR)](https://www.amd.com/en/technologies/radeon-software-fidelityfx) is an open source, high-quality solution for producing high resolution frames from lower resolution inputs. It uses a collection of cutting-edge Deep Learning algorithms with a particular emphasis on creating high-quality edges, giving large performance improvements compared to rendering at native resolution directly. FSR enables “practical performance” for costly render operations, such as hardware ray tracing for the AMD RDNA™ and AMD RDNA™ 2 architectures.
[Intel Xe Super Sampling (XeSS)](https://www.youtube.com/watch?v=Y9hfpf-SqEg) is a temporal image upscaling AI rendering technology that increases graphics performance similar to NVIDIA's [DLSS (Deep Learning Super Sampling)](https://developer.nvidia.com/dlss). Intel's Arc GPU architecture (early 2022) will have GPUs that feature dedicated Xe-cores