CoreML-Guide
Core ML Guide
https://github.com/mikeroyal/CoreML-Guide
Last synced: 1 day ago
JSON representation
-
C/C++ Learning Resources
- C - purpose, high-level language that was originally developed by Dennis M. Ritchie to develop the UNIX operating system at Bell Labs. It supports structured programming, lexical variable scope, and recursion, with a static type system. C also provides constructs that map efficiently to typical machine instructions, which makes it one was of the most widely used programming languages today.
- Embedded C - committee) to address issues that exist between C extensions for different [embedded systems](https://en.wikipedia.org/wiki/Embedded_system). The extensions hep enhance microprocessor features such as fixed-point arithmetic, multiple distinct memory banks, and basic I/O operations. This makes Embedded C the most popular embedded software language in the world.
- C & C++ Developer Tools from JetBrains
- Open source C++ libraries on cppreference.com
- C++ Graphics libraries
- C++ Libraries in MATLAB
- Google C++ Style Guide
- Introduction C++ Education course on Google Developers
- C++ style guide for Fuchsia
- Chromium C++ Style Guide
- C++ Core Guidelines
- C++ Style Guide for ROS
- Learn C++
- Learn C : An Interactive C Tutorial
- C++ Online Training Courses on LinkedIn Learning
- C++ Tutorials on W3Schools
- Learn C Programming Online Courses on edX
- Learn C++ with Online Courses on edX
- Learn C++ on Codecademy
- Coding for Everyone: C and C++ course on Coursera
- C++ For C Programmers on Coursera
- C++ Online Courses on Udemy
- Top C Courses on Udemy
- Basics of Embedded C Programming for Beginners on Udemy
- C++ For Programmers Course on Udacity
- C++ Fundamentals Course on Pluralsight
- C++ - platform language that can be used to build high-performance applications developed by Bjarne Stroustrup, as an extension to the C language.
- C++ Tools and Libraries Articles
- C++ Style Guide for ROS
-
C/C++ Tools and Frameworks
- Visual Studio - rich application that can be used for many aspects of software development. Visual Studio makes it easy to edit, debug, build, and publish your app. By using Microsoft software development platforms such as Windows API, Windows Forms, Windows Presentation Foundation, and Windows Store.
- Visual Studio Code
- ReSharper C++
- CLion - platform IDE for C and C++ developers developed by JetBrains.
- Code::Blocks
- Conan
- High Performance Computing (HPC) SDK
- Boost - edge C++. Boost has been a participant in the annual Google Summer of Code since 2007, in which students develop their skills by working on Boost Library development.
- Automake
- Cmake - source, cross-platform family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files, and generate native makefiles and workspaces that can be used in the compiler environment of your choice.
- GDB
- GCC - C, Fortran, Ada, Go, and D, as well as libraries for these languages.
- GSL - squares fitting. There are over 1000 functions in total with an extensive test suite.
- OpenGL Extension Wrangler Library (GLEW) - platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform.
- Libtool
- Maven
- TAU (Tuning And Analysis Utilities) - based sampling. All C++ language features are supported including templates and namespaces.
- Clang - C, C++ and Objective-C++ compiler when targeting X86-32, X86-64, and ARM (other targets may have caveats, but are usually easy to fix). Clang is used in production to build performance-critical software like Google Chrome or Firefox.
- OpenCV - time applications. Cross-Platform C++, Python and Java interfaces support Linux, MacOS, Windows, iOS, and Android.
- ANTLR (ANother Tool for Language Recognition)
- Oat++ - efficient web application. It's zero-dependency and easy-portable.
- Cython
- Infer - C, and C. Infer is written in [OCaml](https://ocaml.org/).
- Vcpkg
- CppSharp
- Thrust - level interface greatly enhances programmer productivity while enabling performance portability between GPUs and multicore CPUs. Interoperability with established technologies such as CUDA, TBB, and OpenMP integrates with existing software.
- JavaCPP
- Spdlog - only/compiled, C++ logging library.
-
Computer Vision Learning Resources
- Computer Vision
- OpenCV Courses
- Top Computer Vision Courses Online | Coursera
- Top Computer Vision Courses Online | Udemy
- Learn Computer Vision with Online Courses and Lessons | edX
- Computer Vision and Image Processing Fundamentals | edX
- Computer Vision Nanodegree program | Udacity
- Machine Vision Course |MIT Open Courseware
- Computer Vision Training Courses | NobleProg
- Visual Computing Graduate Program | Stanford Online
- Introduction to Computer Vision Courses | Udacity
- Computer Vision
- Computer Vision
- Computer Vision and Image Processing Fundamentals | edX
- Exploring Computer Vision in Microsoft Azure
- OpenCV Courses
- Exploring Computer Vision in Microsoft Azure
-
Computer Vision Tools, Libraries, and Frameworks
- Automated Driving Toolbox™ - eye-view plot and scope for sensor coverage, detections and tracks, and displays for video, lidar, and maps. The toolbox lets you import and work with HERE HD Live Map data and OpenDRIVE® road networks. It also provides reference application examples for common ADAS and automated driving features, including FCW, AEB, ACC, LKA, and parking valet. The toolbox supports C/C++ code generation for rapid prototyping and HIL testing, with support for sensor fusion, tracking, path planning, and vehicle controller algorithms.
- Image Processing Toolbox™ - standard algorithms and workflow apps for image processing, analysis, visualization, and algorithm development. You can perform image segmentation, image enhancement, noise reduction, geometric transformations, image registration, and 3D image processing.
- Computer Vision Toolbox™
- Statistics and Machine Learning Toolbox™
- Lidar Toolbox™ - camera cross calibration for workflows that combine computer vision and lidar processing.
- Mapping Toolbox™
- UAV Toolbox
- Parallel Computing Toolbox™ - intensive problems using multicore processors, GPUs, and computer clusters. High-level constructs such as parallel for-loops, special array types, and parallelized numerical algorithms enable you to parallelize MATLAB® applications without CUDA or MPI programming. The toolbox lets you use parallel-enabled functions in MATLAB and other toolboxes. You can use the toolbox with Simulink® to run multiple simulations of a model in parallel. Programs and models can run in both interactive and batch modes.
- Partial Differential Equation Toolbox™
- ROS Toolbox
- Robotics Toolbox™ - holonomic vehicle. The Toolbox also including a detailed Simulink model for a quadrotor flying robot.
- Deep Learning Toolbox™ - term memory (LSTM) networks to perform classification and regression on image, time-series, and text data. You can build network architectures such as generative adversarial networks (GANs) and Siamese networks using automatic differentiation, custom training loops, and shared weights. With the Deep Network Designer app, you can design, analyze, and train networks graphically. It can exchange models with TensorFlow™ and PyTorch through the ONNX format and import models from TensorFlow-Keras and Caffe. The toolbox supports transfer learning with DarkNet-53, ResNet-50, NASNet, SqueezeNet and many other pretrained models.
- Reinforcement Learning Toolbox™ - making algorithms for complex applications such as resource allocation, robotics, and autonomous systems.
- Deep Learning HDL Toolbox™ - built bitstreams for running a variety of deep learning networks on supported Xilinx® and Intel® FPGA and SoC devices. Profiling and estimation tools let you customize a deep learning network by exploring design, performance, and resource utilization tradeoffs.
- Model Predictive Control Toolbox™ - loop simulations, you can evaluate controller performance.
- Vision HDL Toolbox™ - streaming algorithms for the design and implementation of vision systems on FPGAs and ASICs. It provides a design framework that supports a diverse set of interface types, frame sizes, and frame rates. The image processing, video, and computer vision algorithms in the toolbox use an architecture appropriate for HDL implementations.
- Microsoft AirSim - source, cross platform, and supports [software-in-the-loop simulation](https://www.mathworks.com/help///ecoder/software-in-the-loop-sil-simulation.html) with popular flight controllers such as PX4 & ArduPilot and [hardware-in-loop](https://www.ni.com/en-us/innovations/white-papers/17/what-is-hardware-in-the-loop-.html) with PX4 for physically and visually realistic simulations. It is developed as an Unreal plugin that can simply be dropped into any Unreal environment. AirSim is being developed as a platform for AI research to experiment with deep learning, computer vision and reinforcement learning algorithms for autonomous vehicles.
- LRSLibrary - Rank and Sparse Tools for Background Modeling and Subtraction in Videos. The library was designed for moving object detection in videos, but it can be also used for other computer vision and machine learning problems.
- Image Processing Toolbox™ - standard algorithms and workflow apps for image processing, analysis, visualization, and algorithm development. You can perform image segmentation, image enhancement, noise reduction, geometric transformations, image registration, and 3D image processing.
- OpenCV - time computer vision applications. The C++, Python, and Java interfaces support Linux, MacOS, Windows, iOS, and Android.
-
Learning Resources for ML
- Machine Learning by Stanford University from Coursera
- Machine Learning Scholarship Program for Microsoft Azure from Udacity
- Microsoft Certified: Azure Data Scientist Associate
- Microsoft Certified: Azure AI Engineer Associate
- Azure Machine Learning training and deployment
- Learning Machine learning and artificial intelligence from Google Cloud Training
- JupyterLab
- Scheduling Jupyter notebooks on Amazon SageMaker ephemeral instances
- How to run Jupyter Notebooks in your Azure Machine Learning workspace
- Machine Learning Courses Online from Udemy
- Machine Learning Courses Online from Coursera
- Learn Machine Learning with Online Courses and Classes from edX
- Machine Learning Scholarship Program for Microsoft Azure from Udacity
- Learning Machine learning and artificial intelligence from Google Cloud Training
-
Metal Learning Resources
- Metal - level API that provides a platform-optimized, low-overhead API for developing the latest 3D pro applications and amazing games using a rich shading language with tighter integration between graphics and compute programs. To help you do more while managing ever more complex shader code, Metal adds an unparalleled suite of advanced GPU debugging tools to help you realize the full potential of your graphics code.
- MetalKit
- Metal Shading Language Specification
- Metal Performance Shaders
- Metal Sample code
- Metal plugin for TensorFlow
- Metal Developer discussions
- Metal Developer discussions
- MetalKit
- Using Metal Feature Set Tables
- Metal Performance Shaders
- Optimizing Performance with the GPU Counters Instrument
- Enabling Frame Capture
- Reducing the Memory Footprint of Metal Apps
- Metal Developer Tools for Windows
-
Metal Tools, Libraries, and Frameworks
-
ML Frameworks, Libraries, and Tools
- Amazon SageMaker
- Azure Databricks - 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.
- Apple CoreML - 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 MXNet
- AutoGluon - accuracy deep learning models on tabular, image, and text data.
- Jupyter Notebook - 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.
- XGBoost
- nGraph - of-use to AI developers.
- Cluster Manager for Apache Kafka(CMAK)
- Tensorman
- cuML - learn.
- Azure Databricks - 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.
- AutoGluon - accuracy deep learning models on tabular, image, and text data.
- TensorFlow - 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.
-
NLP Learning Resources
- Natural Language Processing With Python's NLTK Package
- Cognitive Services—APIs for AI Developers | Microsoft Azure
- Artificial Intelligence Services - Amazon Web Services (AWS)
- Google Cloud Natural Language API
- Top Natural Language Processing Courses Online | Udemy
- Introduction to Natural Language Processing (NLP) | Udemy
- Top Natural Language Processing Courses | Coursera
- Natural Language Processing | Coursera
- Natural Language Processing in TensorFlow | Coursera
- Learn Natural Language Processing with Online Courses and Lessons | edX
- Build a Natural Language Processing Solution with Microsoft Azure | Pluralsight
- Natural Language Processing (NLP) Training Courses | NobleProg
- Natural Language Processing with Deep Learning Course | Standford Online
- Advanced Natural Language Processing - MIT OpenCourseWare
- Certified Natural Language Processing Expert Certification | IABAC
- Natural Language Processing Course - Intel
- Natural Language Processing (NLP) - based modeling of human language with statistical, machine learning, and deep learning models.
- Natural Language Processing Course - Intel
- Cognitive Services—APIs for AI Developers | Microsoft Azure
- Natural Language Processing Course - Intel
-
NLP Tools, Libraries, and Frameworks
- PyTorch
- Apache OpenNLP - 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).
- Open Neural Network Exchange(ONNX) - in operators and standard data types.
- Anaconda
- Scikit-Learn
- NVIDIA cuDNN - 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/).
- Apache Spark - 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 PredictionIO
- BigDL
- Eclipse Deeplearning4J (DL4J) - 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.
- Chainer - 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.
- Natural Language Toolkit (NLTK) - to-use interfaces to over [50 corpora and lexical resources](https://nltk.org/nltk_data/) such as WordNet, along with a suite of text processing libraries for classification, tokenization, stemming, tagging, parsing, and semantic reasoning, wrappers for industrial-strength NLP libraries.
- Tensorflow_macOS - optimized version of TensorFlow and TensorFlow Addons for macOS 11.0+ accelerated using Apple's ML Compute framework.
- PlaidML
- Caffe
- Theano - dimensional arrays efficiently including tight integration with NumPy.
- Apache Spark Connector for SQL Server and Azure SQL - 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.
- Numba - 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.
- CoreNLP
- NLPnet - of-speech tagging, semantic role labeling and dependency parsing.
- Flair - of-the-art Natural Language Processing (NLP) models to your text, such as named entity recognition (NER), part-of-speech tagging (PoS), special support for biomedical data, sense disambiguation and classification, with support for a rapidly growing number of languages.
- Catalyst - trained models, out-of-the box support for training word and document embeddings, and flexible entity recognition models.
-
Objective-C Learning Resources
-
Objective-C Tools, Libraries, and Frameworks
- AppKit
- Instruments - 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 - C in your 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 - 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.
- Infer - C, and C.
- Mantle
- Quick - driven development framework for Swift and Objective-C.
- Nimbus
- Aspects - C and Swift.
- Hammerspoon
- Xcode
-
Python Frameworks, Libraries, and Tools
Programming Languages
Categories
C/C++ Learning Resources
29
C/C++ Tools and Frameworks
28
Python Frameworks, Libraries, and Tools
25
NLP Tools, Libraries, and Frameworks
22
NLP Learning Resources
20
Computer Vision Tools, Libraries, and Frameworks
20
Swift Learning Resources
20
Computer Vision Learning Resources
17
Swift Tools, Libraries, and Frameworks
15
Metal Learning Resources
15
Learning Resources for ML
14
ML Frameworks, Libraries, and Tools
14
Python Learning Resources
12
Objective-C Tools, Libraries, and Frameworks
11
Objective-C Learning Resources
7
License
1
Metal Tools, Libraries, and Frameworks
1
Sub Categories
Keywords
python
12
swift
10
objective-c
6
machine-learning
6
natural-language-processing
5
nlp
5
ios
5
cpp
5
carthage
5
c
4
deep-learning
4
neural-network
4
cocoapods
4
pytorch
3
cuda
3
xcode
3
http
3
named-entity-recognition
3
package-manager
2
parsing
2
rest
2
java
2
visual-studio
2
web-framework
2
cli
2
machine-learning-algorithms
2
data-science
2
performance
2
artificial-intelligence
2
ai
2
nvidia
2
compiler
2
gpu
2
tensorflow
2
cpp11
2
cplusplus
2
semantic-role-labeling
2
json
2
macos
2
server-side-swift
2
request
1
response
1
swift-package-manager
1
caffe2
1
performance-testing
1
urlrequest
1
urlsession
1
boilerplate
1
locust
1
load-tests
1