Download Artificial Intelligence: Concepts, Applications, and Future Trends and more Lecture notes Artificial Intelligence in PDF only on Docsity!
AI NOTES
Unit-I
What is artificial intelligence (AI)?
Artificial intelligence is the simulation of human intelligence processes by
machines, especially computer systems. Specific applications of AI include expert
systems, natural language processing, speech recognition and machine vision.
How does AI work?
As the hype around AI has accelerated, vendors have been scrambling to promote
how their products and services use it. Often, what they refer to as AI is simply a
component of the technology, such as machine learning. AI requires a foundation
of specialized hardware and software for writing and training machine learning
algorithms. No single programming language is synonymous with AI, but Python,
R, Java, C++ and Julia have features popular with AI developers.
Ex :- ChatGTP , Alexa , Google assistance etc.
History of Artificial Intelligence
Artificial Intelligence is not a new word and not a new technology for researchers.
This technology is much older than you would imagine. Even there are the myths of
Mechanical men in Ancient Greek and Egyptian Myths. Following are some
milestones in the history of AI which defines the journey from the AI generation to till
date development.
Current Status of AI
The current status of AI is in the Theory of Mind State.
In Theory of Mind AI a machine is able to decide like any human. It seems that the
machine have a mind in it. It can think emotionally. Many data from the surrounding
is saved in the machine. Machine analyze these data and show a output in a certain
condition based on those data.
Summary of the Current Status of AI Technologies are more enhanced than previous time. Any technological solution is available to the industries. Voice assistants helps in many work such as in IT, automotive and retail industries. Chatbots are part of Current Status of AI. Which have reduced the hassle of replying huge common messages manually. AI technology has made to deploy any mobile devices and apps in one of the easiest ways across industries. Cloud Service has been more easier in the current status of AI. Emerging AI technologies include augmented intelligence such as some forms of face recognition, which seeks to enhance human intelligence and edge AI, where AI algorithms are processed locally without the need for an internet connection.
The future of Artificial Intelligence is bright in India, with many organizations opting
for AI automation. It is essential to understand the recent developments in AI to find
suitable job roles based on your competencies.
The scope of Artificial Intelligence is limited to domestic and commercial purposes as
the medical and aviation sectors are also using AI to improve their services. If AI is
outperforming human efforts, then opting for AI automation will reduce costs in the
long run for a business.
Automation in operational vehicles has created a buzz in the logistics industry as it is
expected that automated trucks/vehicles may soon be used.
Due to the bright scope of Artificial Intelligence in the future, the number of AI start-
ups is expected to increase in the coming years. Indicating the opportunities, the
number of AI start-ups in India has increased significantly.
Moreover, India's talent gap for specialist AI developers is huge, and AI experts are
needed by businesses more than ever. Businesses don't want to miss out on any
technology that can revolutionize their business processe.
Agents in Artificial Intelligence
An AI system can be defined as the study of the rational agent and its environment.
The agents sense the environment through sensors and act on their environment
through actuators. An AI agent can have mental properties such as knowledge, belief,
intention, etc.
What is an Agent?
An agent can be anything that perceiveits environment through sensors and act
upon that environment through actuators. An Agent runs in the cycle
of perceiving , thinking , and acting. An agent can be:
o Human-Agent: A human agent has eyes, ears, and other organs which work for sensors and hand, legs, vocal tract work for actuators. o Robotic Agent: A robotic agent can have cameras, infrared range finder, NLP for sensors and various motors for actuators. o Software Agent: Software agent can have keystrokes, file contents as sensory input and act on those inputs and display output on the screen.
Hence the world around us is full of agents such as thermostat, cellphone, camera,
and even we are also agents.
Before moving forward, we should first know about sensors, effectors, and actuators.
Sensor: Sensor is a device which detects the change in the environment and sends
the information to other electronic devices. An agent observes its environment
through sensors.
Actuators: Actuators are the component of machines that converts energy into
motion. The actuators are only responsible for moving and controlling a system. An
actuator can be an electric motor, gears, rails, etc.
Effectors: Effectors are the devices which affect the environment. Effectors can be
legs, wheels, arms, fingers, wings, fins, and display screen.
Intelligent Agents:
An intelligent agent is an autonomous entity which act upon an environment using
sensors and actuators for achieving goals. An intelligent agent may learn from the
environment to achieve their goals. A thermostat is an example of an intelligent
agent.
Following are the main four rules for an AI agent:
o Rule 1: An AI agent must have the ability to perceive the environment. o Rule 2: The observation must be used to make decisions. o Rule 3: Decision should result in an action. o Rule 4: The action taken by an AI agent must be a rational action.
2. Deterministic vs Stochastic: o If an agent's current state and selected action can completely determine the next state of the environment, then such environment is called a deterministic environment. o A stochastic environment is random in nature and cannot be determined completely by an agent. o In a deterministic, fully observable environment, agent does not need to worry about uncertainty. o 3. Episodic vs Sequential: o In an episodic environment, there is a series of one-shot actions, and only the current percept is required for the action. o However, in Sequential environment, an agent requires memory of past actions to determine the next best actions. o
4. Single-agent vs Multi-agent o If only one agent is involved in an environment, and operating by itself then such an environment is called single agent environment. o However, if multiple agents are operating in an environment, then such an environment is called a multi-agent environment. o The agent design problems in the multi-agent environment are different from single agent environment. o 5. Static vs Dynamic: o If the environment can change itself while an agent is deliberating then such environment is called a dynamic environment else it is called a static environment. o Static environments are easy to deal because an agent does not need to continue looking at the world while deciding for an action. o However for dynamic environment, agents need to keep looking at the world at each action. o Taxi driving is an example of a dynamic environment whereas Crossword puzzles are an example of a static environment. o
o Problem formulation Problem formulation is the process of deciding what actions and states to consider to go given goal. The process of looking for a sequence of actions that reaches the goal is called search. A search algorithm takes a problem as input and returns a solution in the form of an action sequence. Problem formulation is help to agent to reach goal from initial /starting state.
Review of Tree and Graph structure Tree:- A tree is a connected acyclic graph—every node has an edge to
another node, and no cycles exist. In a tree, the value or object
represented at a specific point is called a node. Trees typically have a
single root node with zero or more child nodes that could contain
subtrees.
Graph:- In AI, a graph typically refers to a mathematical representation of data
that shows the relationship between different objects or entities. A graph is a
collection of nodes (also called vertices) that are connected by edges (also called arcs
or links).
In machine learning, graphs are commonly used to represent data structures or
models, such as neural networks, decision trees, and Bayesian networks. Graphs are
useful for representing complex relationships between variables and for making
predictions or classifications based on those relationships.
For example, in a social network analysis, a graph can be used to represent the
connections between individuals in a network. Each person would be represented by
a node, and their connections to other people would be represented by edges
between the nodes. By analyzing the graph, it may be possible to identify key
influencers in the network, or to predict the spread of information or ideas through
the network.
State space representation/search
DFS:- DFS is travel through backtracking(pahle ye defth(niche) tak jata h fir prents node
check krta h).
Search Tree
A search tree is a data structure used in computer programming to contain and
organize a list of data. Each search tree is comprised of an ordered set of nodes.
These nodes can be connected to zero or more other nodes. The individual
nodes contain some data as well as links to any other nodes. The data that is
contained in the nodes of the tree is very often ordered in some way to allow
efficient algorithms to search for, insert and remove nodes with ease.
Types of search tree
1. Binary search tree
2. B-tree
3. (a,b)-tree
4. Ternary search tree
1. Binary search tree:-
A binary search tree follows some order to arrange the elements. In a Binary search
tree, the value of left node must be smaller than the parent node, and the value of
right node must be greater than the parent node. This rule is applied recursively to
the left and right subtrees of the root.
Let's understand the concept of Binary search tree with an example.
Advantages of Binary search tree:-
(a,b)-trees are a type of balanced tree data structure that are
used to store and retrieve ordered data.They are similar to other balanced
tree structures such as B-Trees, red-black trees and AVL trees, but they
have a more relaxed balance condition that allows them to have better
performance in
5. Ternary search tree:-
Ternary Search Tree is a trie data structure commonly used as a low-memory
alternative to trie in various applications such as spell check and looking for nearby
neighbors. To comprehend the ternary search tree, we must first grasp the concept
of the trie.
A trie, also known as a digital tree, radix tree, or prefix tree, is a type of search tree,
an ordered tree data structure used to hold a dynamic set or associative array using
strings as keys.
Representation of Ternary Search Trees
In the trie (standard) data structure, each node contains 26 pointers for its children,
but in a ternary search tree, each node contains only 3 pointers:
o The left pointer points to the node whose value is lower than the current node's value. o The equal pointer leads to a node whose value is the same as the current node's value.
o The right pointer leads to the node whose value exceeds the current node's value.
Unit-II
Rendom search
Random search is a hyperparameter tuning technique used in machine learning and
artificial intelligence to find the optimal values of hyperparameters for a given model.
Hyperparameters are the parameters of a model that are not learned from data, but
are set manually by the data scientist or researcher, such as learning rate, batch size,
regularization strength, and number of hidden layers in a neural network.
Random search involves randomly selecting values for each hyperparameter from a
specified range of values, and then evaluating the model's performance on a
validation set using each combination of hyperparameters. This process is repeated
for a specified number of iterations, and the combination of hyperparameters that
produces the best performance is selected as the optimal hyperparameters for the
model.
Random search can be more efficient than other hyperparameter tuning techniques,
such as grid search, because it explores the hyperparameter space more efficiently
and is less likely to get stuck in local optima. However, it may not be the best choice
for all models and datasets, and other techniques such as Bayesian optimization or
evolutionary algorithms may be more suitable in some cases.