Join us for an enlightening session on AI/ML by Jeevanshi Sharma, an MS graduate from the University of Alberta with accolades from Outreachy'22 and MITACS GRI'21. Delve into cutting-edge advancements, applications, and ethical considerations. Learn basic steps to start your ML journey and explore industry applications, advancements, and associated careers.
5. Why patterns are formed?
Algebra: repeating patterns of the seasons or the growth patterns of certain plants.
Calculus: way plants optimize the use of resources by adjusting growth rates or the way animals navigate their
environments.
Combinatorial game theory: Animals engage in strategic behaviors during mating rituals or territorial disputes,
which can be analyzed using principles akin to combinatorial game theory.
Cryptography: Animals often use camouflage or mimicry to conceal themselves from predators or prey.
Differential equations: The growth of populations, such as the proliferation of bacteria in a petri dish or the
spread of a disease within a community, can be described by differential equations.
Partial differential equations: Natural phenomena like the propagation of waves in water or the spread of heat
through a material.
Ordinary differential equation: The movement of celestial bodies like planets and moons
Graph theory: food webs or social interactions, connections among species.
Linear algebra: balance of forces within an ecosystem or the tension in a spider's web
Probability: Animals exhibit behaviors such as the likelihood of finding food in certain areas or the chance of
encountering predators.
Statistics: weather patterns or animal migrations, inherently involve statistical analysis to understand variability
and trends.
6. patterns in human psychology
Analytical Psychology and Archetypal Patterns:
In analytical psychology, founded by Carl Jung, mathematical concepts are employed to explore archetypal
patterns and symbols in the collective unconscious. Jungian psychologists use mathematical symbolism and
geometrical shapes to interpret dreams, myths, and cultural symbols, revealing deeper insights into the
human psyche.
Bayesian inference is a statistical method used to update beliefs and make decisions in the presence of
uncertainty. In cognitive science, Bayesian models are employed to study human decision-making
processes, including perception, judgment, and reasoning.
Computational linguistics employs mathematical and computational methods to study language
structure, semantics, and usage. Techniques such as probabilistic models, machine learning algorithms, and
syntactic parsers are used in natural language processing (NLP) tasks, such as speech recognition,
sentiment analysis, machine translation, and text generation.
7. Why patterns are formed?
Is it Random?
natural selection
the way chemicals diffuse
8. What exactly is a pattern?
we think of patterns as something that just repeats again and again throughout space in an identical way, sort
of like a wallpaper pattern.
But many patterns that we see in nature aren't quite like that.
We sense that there is something regular or at least not random about them
regular != identical
Zebra's stripes. Everyone can recognize that as a pattern, but no stripe is like any other stripe.
clouds in the sky, but no cloud is like any other cloud.
trees in the game, seems smiliar, but no tree is similar to each other. (perlin noise).
I think we can make a case for saying that anything that isn't purely random has a kind of pattern in it, some
kind of regularity.
There must be something in that system that has pulled it away from that pure randomness or at the other
extreme, from pure uniformity.
Ps: nature following noise
Perlin noise for the eye color. ¬ Uniform noise spreads values equally across a fixed range.
Gaussian noise implements a normal distribution, where generated values tend toward a certain average value (called the mean), with more or
less random variation around the mean determined by the standard deviation.
9. what is programming about? What is at the core of every program — big or
small?
Abstractions.
Is process of abstraction specific to programming only?
What about computers then? They are also tools that deal with abstractions. There are 3 fundamental
parts to every computer:
Internal clock — a computer’s way to abstract time
1.
Memory — a computer’s way to abstract space
2.
Processing unit —a computer’s way to perform logical operations
3.
Example of adopting nature pattern in computer science:
Strategy Pattern
The strategy pattern is a behavioral design pattern that allows you to define a family of algorithms,
encapsulate them in separate classes, and make them interchangeable at runtime. The strategy can vary
the behavior of an object, without changing its structure or interface. This pattern is similar to how nature
adapts to different environments, challenges, or opportunities, by selecting the best strategy for survival
and reproduction. For example, a plant may use different strategies for photosynthesis, depending on the
availability of light, water, or nutrients.
10. Traditional computer programming involves writing explicit instructions (algorithms) for a computer to
follow to perform a specific task or solve a problem.
The behavior of a program is deterministic, meaning it produces the same output for a given input every
time.
Programs are limited by the programmer's understanding and ability to anticipate all possible scenarios.
To deal with uncertainties, complex or non-linear problems, we use
Artificial Intelligence (AI) which is a vast field with several subfields, approaches, and techniques.
Example: Finance Risk Management, Power Grid Optimization, Route Planning, etc.
Branches:
Machine Learning (Supervised, Unsupervised, Reinforcement Learning)
Deep Learning
Soft Computing
Expert Systems
Rule-based Systems (Knowledge Representation and Learning)
Evolutionary Algorithms
Swarm Intelligence
11. Soft Computing:
provide approximate solutions to complex problems where exact solutions may be difficult or impossible to find.
encompasses techniques such as fuzzy logic systems, neural networks, genetic algorithms, and evolutionary
algorithms.
Example: By using fuzzy logic in ABS systems, vehicles can effectively adapt to changing road conditions and
driver inputs, improving overall safety and stability during emergency braking situations.
For instance, in logistics, genetic algorithms can optimize delivery routes considering factors like traffic conditions,
delivery deadlines, and vehicle capacities, providing near-optimal solutions in situations
Machine Learning: Machine learning is a subset of AI that focuses on developing algorithms and
statistical models that allow computers to perform tasks without being explicitly programmed.
Deep Learning: Deep learning is a specialized subset of machine learning that utilizes artificial neural
networks with multiple layers to learn complex patterns in large amounts of data.
Swarm Intelligence: Swarm intelligence is a collective behavior observed in decentralized, self-organized
systems.
Rule-based Systems: Rule-based systems use a declarative approach to problem-solving, where
knowledge is represented explicitly in the form of rules. These rules encode domain-specific expertise or
heuristics, allowing the system to make decisions or draw conclusions based on input data or
observations.
12. How to start with Machine Learning?
Requirements:
Programming (Object Oriented Programming)
Mathematics (Statistics, Probability, Linear Algebra and
Calculus)
Data Tackling (Data Structure, Databases, Web Scraping)
Machine Learning (Stanford CS229)
Practical Deep Learning (FastAI)
Natural Language Processing with Deep Learning (CS224N)
Awesome ML Courses (github)
13. Approaches:
Bottom-Up (Anxious and Time Tacking, Fruitful)
Top-Down (Dangerous and Interative, Fun)
Top-Down
Don’t start with precursor math.
Don’t start with machine learning theory.
Don’t code every algorithm from scratch.
Refine Later. Have connections for this abstract knowledge.
Start by learning how to work through very simple predictive
modeling problems using a fixed framework with free and easy-
to-use open source tools.
Practice on many small projects and slowly increase their
complexity.
14. Tools to Start
Kaggle, Python Notebooks, Weka Workbench
Explore small Open-Source Datasets (Kaggle)
Practice Machine Learning Workflow (Data Gathering,
Feature Engineering, choosing ml models, making ML APIs)
Learn Basic Command Line and setting up Environment,
handling dependency issues
jupyter
numpy
scikit-learn
matplotlib
tensorflow
keras
15. Tools to Start Deep Learning
Keras, Pytorch, TensorFlow, MXNet
Other Popular Tools
Model Evaluation and Hyperparameter Tuning: MLflow, HyperOpt, Optuna
Version Control and Collaboration: Git, Github, GitLab
Deployment and Model Serving: Docker, Kubernetes, TFServing
Cloud Platforms: AWS, GCP, Azure
16. How to start a Career?
Research/Academia
Corporate/Industries
Academia
Research Scientist (MSc, PhD, Programming Knowledge, Domain
Knowledge, Research and Experimentation)
Professor
Industry
ML Engineer
Data Scientist
Business Analyst
Product Manager
AI Solutions Architect
Pre-Sales
AI Consultant
Data Engineer
Gen AI Enginner
Devrel Roles
17. Building Portfolio
End-to-End Projects
Domain Specific Impactful Projects
Intersection Projects (Neuroscience, Social Science)
Hackathons
Research Papers
Internships
Open-source Contributions