Chapter 18 Flashcards
"Artificial Intelligence"
A* Algorithm
adds an extra heuristic value on how far we have to go to reach the destination most efficiently/find the best route
A* algorithm steps
- start from source node
- calculate values of g (movement cost), heuristic values, and the sum of f (g+h) for each adjacent node
- select node with smallest f
- from f, calculate all values for adjacent nodes and choose the one with the smallest f
- repeat until the end goal is reached
(h values are not considered in further stages, but the movement costs are cumulative)
Dijkstra’s algorithm
An algorithm for finding the shortest path from one node to all other nodes, aiming to find the best route
Dijkstra’s algorithm steps
in physical working (this is marked)
* initialisation - setting base to 0
* setting the rest of the towns to infinity
* update the values at nodes when visiting - finding alternate paths
* show visited node(s)
in actual calculation:
* just calculate all possible routes from the node you are starting with to the node you want to go to
* pick the shortest one
* show alternative paths being considered
machine learning
where a system improves its performance through analysis of previous performance
types: supervised, unsupervised, reinforcement, deep
supervised learning
- type of machine learning.
- known input and associated ouputs are given // given labelled input data.
- trains the system to predict future outcomes based on past data
- uses regression analysis and classification of data - draw correlations
unsupervised learning
- type of machine learning.
- the system draws its own conclusions by identifying hidden patterns.
- only requires input data,
- uses unlabelled input data - (system is trained with no “right” output)
reinforcement learning
type of machine learning.
the system learns on the basis of reward and punishment.
- receives weighted rewards based on how effective the action was in relation to the achievement of the overall goal
- depending on the evaluation/feedback the policy the system uses will be adjusted
- to improve its performance in similar tasks
deep learning
- a specialised form of machine learning
- …that uses artificial neural networks that contain
- …many hidden layers,
- …and are modelled to function like the human brain.
- uses many layers to progressively extract higher level features from the input
reasons for using deep learning
- makes good use of unstructured data
- enable machines to process data with a nonlinear approach
- effective at drawing out complex hidden patterns
- more accurate outcome with many hidden layers
- especially effective when the data size is large
applications of machine learning
Self Driving Cars
Image Classification
Text Classification
Search Engine
Banking, Healthcare Domain
Logic game theory e.g. backgammon
labelled data
data that has a meaning attached
unlabelled data
data to which no meaning is attached
artificial neural networks in machine learning
- have an input layer, many hidden layers, and an output layer. neurons as nodes represented on a graph.
- intended to replicate the way human brains work
- weighted values for each connection between nodes
- data is input at the input layer and is analysed at each subsequent layer
- this process is repeated many times - reinforcement learning takes place
- decisions can be made without being specifically programmed
- back propagation of errors will be used to correct any errors that have been made
- results are outputted
reasons for having (multiple hidden layers in) an artificial neural network
(Q works both ways)
- enables deep learning
- problems of high complexity can be solved
- the neural network can learn and make decisions of its own
- improve the accuracy of the result