![Intro to ML and AI | Embarcadero RAD Studio Delphi C++Builder Blogs intro to ml and ai](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/Intro-to-ML-and-AI-6955223-5004832.jpg?resize=960%2C540&ssl=1)
Machine Learning and Artificial Intelligence rocketed from the realm of science fiction becoming the most talked about topics in the tech and business world. Machine Learning (ML) is a subset of the computer science discipline of Artificial Intelligence (AI). Artificial Intelligence refers to the intelligence exhibited by machines capable of carrying out tasks that usually require human intelligence. Machine Learning uses algorithms to learn from data, find patterns in data, and make predictions about future events or outcomes. AI can be applied to many things like chatbots, virtual assistants, autonomous cars and so on. It can also be used for predictive analytics and other business purposes. Or even write the above description of the webinar.
In this webinar Jim McKeeth and Yılmaz Yörü introduce you to the how and why of getting started with machine learning and potentially using machine learning models. Learn the latest industry news, understand the technology, and discover examples and applications that can help your business right away.
Scroll down for useful links, slides, and the replay.
Table of Contents
Areas of Discussion
- General Discussion of Ideas and Principles
- Libraries and resources
- Current state of the art
- Business Impact
- What’s coming in the future?
- Ethics and safety considerations
blogs.embarcadero.com/?p=137201
![AI012504542 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 01 2504542](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-01-2504542-5449125.jpg?w=750&ssl=1)
Yılmaz Yörü
- Mechanical Engineer (MS BS PhD)
- Founder, CEO of Esenja Company
- Developer from 1988 ( C++ Builder, GNU C/C++, and 30+)
- Embarcadero MVP, C++ Builder Developer
- Author and presenter of posts on C++ at LearnCPlusPlus.org
- Developing AGI based ABRAINA AI Project
- Teaching innovations to kids, students and young people
- yyoru.com, esenja.com, abraina.com
![AI024881171 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 02 4881171](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-02-4881171-5311276.jpg?w=750&ssl=1)
Jim McKeeth
- Chief Developer Advocate & Engineer for Embarcadero
- Long time software developer
- Invented and patented pattern and swipe to unlock
- Built thought controlled drone with Google Glass and wireless EEG headset
- Contributor to Internet of Things and Data Analytics Handbook
![AI034736360 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 03 4736360](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-03-4736360-9289591.jpg?resize=750%2C424&ssl=1)
![AI087107888 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 08 7107888](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-08-7107888.png?resize=750%2C409&ssl=1)
![AI057620646 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 05 7620646](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-05-7620646-3103860.jpg?resize=750%2C424&ssl=1)
![AI069544391 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 06 9544391](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-06-9544391-2333938.jpg?resize=750%2C423&ssl=1)
![AI074929575 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 07 4929575](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-07-4929575-4418218.jpg?w=750&ssl=1)
AI Makes Writing Coding Easier
- There are a lot of opportunities for AI to make coding easier
- Specs will always change
- Even today there is a role for working between programmers and users!
- All professions will eventually be replaced by AI
commitstrip.com/en/2016/08/25/a-very-comprehensive-and-precise-spec/
![AI094316397 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 09 4316397](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-09-4316397-2948375.jpg?w=750&ssl=1)
Asimov’s Three Laws of Robotics
- Zeroth Law: A robot may not harm humanity, or, by inaction, allow humanity to come to harm.
- First Law: A robot may not injure a human being or, through inaction, allow a human being to come to harm.
- Second Law: A robot must obey the orders given it by human beings except where such orders would conflict with the First Law.
- Third Law: A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.
- Introduced in 1942 and later published in 1960’s I, Robot by Isaac Asimov.
- The first concept of AI and Robot safety and ethics. The book explores how these laws fail in practice.
- wikipedia.org/wiki/Three_Laws_of_Robotics
Hype Cycle for Artificial Intelligence, 2020 by Gartner
![AI107622363 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 10 7622363](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-10-7622363-5047618.jpg?resize=750%2C393&ssl=1)
AI , ML, DL
- Artificial Intelligence (AI) refers to the intelligence exhibited by machines capable of carrying out tasks that usually require human intelligence.
- Machine Learning (ML) uses algorithms to learn from data, find patterns in data, and make predictions about future events or outcomes.
- Deep learning (DL) is a neural network with layers and filters, attempts to simulate the behavior of the human brain allowing it to learn from large amounts of data.
- DL is a subset of ML. ML is a subset of AI. AI is a subset of CompSci.
More Vocab
- ANN – Artificial Neural Network – made up of neurons, modeled on biological brains. This was the original idea for AI, but hardware at the time was too slow, but thanks to advances in computing power today, especially GPUs, it is not very popular.
- GAN – Generative Adversarial Network – Two neural networks compete with each other in the form of a zero-sum game, where one agent’s gain is another agent’s loss. They train each other. A self driving car might use this method.
- SL – Supervised Learning – ML task of learning a function that maps an input to an output based on example input-output pairs. Can also be known as supervised machine learning.
- GPT – Generative Pre-Training – Language model by Alec Radford and used by OpenAI. Shows how a generative model of language acquires world knowledge from pre-training on a diverse corpus with long stretches of contiguous text. Utilizes training data.
- NLP – Natural Language Programming – concerned with the interactions between computers and human language, in particular how to program computers to process and analyze large amounts of natural language data.
- Data scientist – An analytical data expert who explores and solves complex problems using math, computer science, and trends in the real world. They can be AI experts and conduct AI research.
Artificial General Intelligence
![AI119513333 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 11 9513333](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-11-9513333-1894360.jpg?resize=744%2C364&ssl=1)
Theory of AI, also AGI and an AGI System
![AI126820912 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 12 6820912](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-12-6820912-3053916.jpg?w=750&ssl=1)
Artificial General Intelligence
Artificial Intelligence (AI) refers to the simulation of human intelligence in machines that are programmed to think like humans and mimic their actions. The term may also be applied to any machine that exhibits traits associated with a human mind such as learning and problem-solving. (ref: Investopedia).
Artificial General Intelligence (AGI) also called as Strong AI, is AGI is a subset or core kernel of AI. It is adaptive able to develop skills. There is also Artificial Biological Intelligence (ABI) term that attempts to emulate ‘natural’ intelligence.
“There is No AI yet, we have AI Technologies now” Joshua Tennenbaum
“There is No AGI”, this is the hard part
The nearest AGI examples AlphaGo Zero, IBM Watson, GPT-3
Simple ANN
![AI134287731 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 13 4287731](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-13-4287731-1364235.jpg?w=750&ssl=1)
Regressions & AI
![AI142411884 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 14 2411884](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-14-2411884-9245297.jpg?resize=750%2C376&ssl=1)
Which Programming Language is Good for AI?
![AI152686540 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 15 2686540](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-15-2686540-8448238.jpg?resize=750%2C261&ssl=1)
AI Frameworks, SDKs, Libs
Tensorflow (Python) Scalable ML Framework, Computation using data flow graphs
Microsoft CNTK (C++) Cognitive Tool Kit – Open source-deep learning toolkit
Caffe (C++, PyTorch) Fast, open framework for deep learning
Keras (Python) Open-source neural network library
Torch (Python) Open-source ML library
Accord.NET (C#) .NET machine learning framework for audio and image processing
Spark MLib (Scala) A scalable machine learning library
ML Pack (C++) Scalable ML Framework, Computation using data flow graphs
FANN (C & C++, C++Builder) Free Fast ANN Library
Theon (Python) Numerical computation library
Leading Names in AI
![AI165377697 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 16 5377697](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-16-5377697-2315175.jpg?resize=750%2C391&ssl=1)
Turing Award (2019)
![AI172083831 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 17 2083831](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-17-2083831-2039224.jpg?w=750&ssl=1)
- From left, Yann LeCun, Geoffrey Hinton and Yoshua Bengio.
- The researchers worked on key developments for neural networks, which are reshaping how computer systems are built.
- nytimes.com/2019/03/27/technology/turing-award-ai.html
AI & ML in Practice
- TensorFlow
- A free and open-source software library for machine learning and artificial intelligence. It can be used across a range of tasks but has a particular focus on training and inference of deep neural networks.
- Developed by the Google Brain team for internal Google use in research and production.
Tensorflow.org
Tensorflow.org/lite
github.com/tensorflow/tensorflow
en.wikipedia.org/wiki/TensorFlow
TensorFlow Lite & Delphi
- tensorflow.org/lite
- Designed for low power devices
- github.com/Embarcadero/TensorFlow-Lite-Delphi
- Examples include:
- Object Detection (Banana, Horse, etc.)
- Face Detection
- Digit Recognition
- tensorflow.org/lite/guide/build_cmake
OpenCV
OpenCV is a library of programming functions mainly aimed at real-time computer vision. Originally developed by Intel, it was later supported by Willow Garage then Itseez. The library is cross-platform and free for use under the open-source Apache 2 License. Starting with 2011, OpenCV features GPU acceleration for real-time operations.
- opencv.org
- en.wikipedia.org/wiki/OpenCV
- github.com/Laex/Delphi-OpenCV ← Also includes FFMPEG
Mitov Software Intelligence Lab
Build AI and classifier applications fast!
- Neural Networks
- Self-Organizing Map
- Naive Bayes
- K Nearest Neighbor
- Back Propagation
- Data Preparation
mitov.com/products/intelligencelab
Connect AI APIs With The REST and Restful Systems
![AI185782397 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 18 5782397](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-18-5782397-5417962.jpg?w=750&ssl=1)
REST (Representational State Transfer) is a connectivity method that allows to get and post data to create interactive applications that use Web Services. REST uses a subset of HTTP.
A Web service that uses this REST data transfer architecture is called a RESTful.
Connect to many AI API’s:
- GPT-3
- APILayer
- AWS (aka via Appercept)
- IBM Watson
Software 2.0 (AI Driven Development)
![AI194472977 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 19 4472977](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-19-4472977-2310781.jpg?w=750&ssl=1)
- Written in much more abstract
- Human unfriendly language such as the weights of a neural network
- No human is involved in writing codes
- A lot of weights
- Coding directly in weights is kind of hard
- Software 1.0: 0%-80% data | Software 2.0: 99% data
- databricks.com/session/keynote-from-tesla
DATA! DATA! DATA!
![AI204684641 | Embarcadero RAD Studio Delphi C++Builder Blogs ai 20 4684641](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-20-4684641-6942487.jpg?resize=699%2C247&ssl=1)
AI Ethics (Algorithms, DataMining…)
Algorithms, Datamining, …
Potential Harms Caused by AI Systems
- Bias and discrimination
- Denial of individual autonomy, recourse, and rights
- Non-transparent, unexplainable, or unjustifiable outcomes
- Invasions of privacy
- Isolation and disintegration of social connection
- Unreliable, unsafe, or poor-quality outcomes
Applied Ethics for the AI Systems
Singularity & AI (Singularity: A unique event with profound consequences)
![AI214999842 | Embarcadero RAD Studio Delphi C++Builder Blogs AI singularity](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-21-4999842-9287232.jpg?resize=686%2C309&ssl=1)
AI Movies, Series
![AI225821968 | Embarcadero RAD Studio Delphi C++Builder Blogs AI and machine learning media](https://i0.wp.com/blogs.embarcadero.com/wp-content/uploads/2022/03/AI-22-5821968.png?resize=664%2C531&ssl=1)
More Videos
- OpenAI’s Multi-Agent Hide and Seek – youtube.com/watch?v=kopoLzvh5jY
- Jeff Dean: AI isn’t as smart as you think — but it could be | TED – youtube.com/watch?v=J-FzHIQ7SOs
Useful Links
- Embarcadero AI & ML playlist
- GPT-3 Playlist
- 3Blue1Brown (YouTube)
- Two Minute Papers (YouTube)
- Coded Bias
- Should Computers Run the World?
- Humans Need Not Apply
- An Interview with GPT-3
- Mitov VisionLab & IntelligenceLab
- LearnCPlusPlus.org
- Great AI Podcasts
- ArXiv Open Papers
- AlphaGO
C++ & C++ Builder AI Examples
Introduction
Introduction to Artificial Intelligence in C++
A Simple Artificial Neuron Model in C++
How To Make Artificial Neuron Models in C++
Neuron Models
Very Simple Artificial Neural Network Example in C++
Structure Based Simple Artificial Neuron Model in C++
Array Based Simple Artificial Neuron Model in C++
Class Based Artificial Neuron Model in C++
Vector-Based Simple Artificial Neuron Model
Activation Functions
Identity Activation Function in Neural Networks
Sigmoid Functions In Neural Nets
Binary/Heaviside Step Functions In C++
Gaussian Error Linear Units in C++
Rectified Linear Unit Activation ANN Function
Hyperbolic Tangent Activation ANN Function
SELU Activation Function Works In A C++ App
Sigmoid Linear Unit (SiLU) In A Neural Network C++ App
Gaussian Activation Function In A Neural Network
ELU Artificial Neural Net Functions
Self Regularized Non-Monotonic (Mish) Activation Function
Basic AI Examples in C++
How To Import FANN Library For C++ Builder Windows Projects (This FANN is very friendly and good open library for beginner applications on engineering researches and data analyses)
A Simple But Powerful Chat Bot In C++
Brute Force Methods in C++
Minimum Edit Distance Method in Unicode Strings in C++
The SoftMax Function in Neural Networks
REST Examples to Connect AI APIs
What Is The C++ Builder REST Debugger And How Do We Use It?
How To Make A Simple REST Client In C++ And More
MORE ?
FORTHCOMING MORE AI EXAMPLES IN LEARNCPLUSPLUS.ORG
Two Main MIT Videos about DL, ML & AI Introduction
Deep Learning Basics: Introduction and Overview
MIT AGI: Artificial General Intelligence
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition
Where can I get the replay?
It will be available on the Embarcadero YouTube channel and announced in our social media channels as soon it is available. The YouTube channel can be found here: https://www.youtube.com/c/EmbarcaderoTechnologies
Reply and more links are available now!