100% satisfaction guarantee Immediately available after payment Both online and in PDF No strings attached 4.2 TrustPilot
logo-home
Class notes

Class notes Knowledge Representation (800804-B-6)

Rating
5.0
(2)
Sold
6
Pages
17
Uploaded on
04-06-2021
Written in
2020/2021

Lecture notes for Knowledge Representation

Institution
Course










Whoops! We can’t load your doc right now. Try again or contact support.

Written for

Institution
Study
Course

Document information

Uploaded on
June 4, 2021
Number of pages
17
Written in
2020/2021
Type
Class notes
Professor(s)
Dr. gonzalo nápoles
Contains
All classes

Subjects

Content preview

Preliminary Concepts
Chapter 1

Modules in this course
- 1. theoretical Foundations
- 2. Symbolic Knowledge Representation
- forgotten AI-- basically the models and procedures to operate with symbols
- 3. Sub Symbolic Knowledge Representation


AI is not about replicating human intelligence; we need to imitate human intelligence in order
solve complex problems that we cannot solve ((FOR THIS COURSE))

- problem solving by means of computational methods in order to obtain insights from
data

reasoning is just the formal manipulation of symbols representing a collection of
propositions---- the idea here is to produce new knowledge

we have two approaches for artificial intelligence
- symbolic reasoning // manipulating symbols in order to produce new knowledge //
good old fashioned AI // ++ we can understand how the manipulation goes ++
- sub-symbolic reasoning // goal is pretty much the same but here we’re not just
manipulating symbols-- we can manipulate more complex structures eg. numbers //
-- we can not always understand how the process works / black box metaphor --

Leibniz’s Idea
- by convention we say numbers are special symbols because we have different rules
to operate these symbols

in the case of “pure” symbols we have the rules of logic in order to manipulate them to
produce new pieces of knowledge

When it comes to symbolic representations we have to fulfill two main properties;
1- we should represent the problem domain very accurately--using precise facts
2- we should clearly express how to obtain new knowledge


granularity: level of detail which we will represent the knowledge
we should select the proper granularity for particular situations

- propositions are just facts we want to investigate// they can be either true or false
- they’re abstract facts // they’re ideas we want to investigate
- sentences are the ways we have to manipulate and express those propositions

,Why do we need reasoning?
- if we’re able to encode very precisely the knowledge about a particular universe we
should be able to search the information we need----but this is not the way it works
- because the information we have and the encoding of the problem will be
limited so we cannot expect to encode every single detail of the universe
we’re operating with. Therefore, we need to complete the missing pieces of
knowledge and this is the main goal behind reasoning

Knowledge based systems
- choosing the proper granularity level is crucial
- a knowledge based system is just a reasoning system that uses this knowledge in
order to solve the problem
- we have two main sources of knowledge; - human beings, -historical data

Sub-Symbolic
- Sometimes we have data and we don’t know the knowledge properly formalized or
described. Therefore we can apply machine learning methods in order to learn the
knowledge from the data. So we can obtain the knowledge structures we need from
the data automatically. eg. by using decision trees or neural networks(even more
powerful)
- Those models are able to learn internal representations but they’re very
complex -- we’re not always able to understand what knowledge actually
represents. so we know the internal knowledge is in there however we cannot
establish a direct mapping with the problem domain
- we want to combine the transparency of some algorithms while
getting the resources and the accuracy of others #Hybrid AI



Logical Entailment
Chapter 2

recap
- structures can be encoded using symbols
- According to Leibniz’s idea, every computational method would be symbolic as
numbers are also symbolic representations of abstract quantities
- however we decided to establish a clear difference between numerical
quantities and symbolic structures
- the idea here is to discover the relationship between those symbols in order
to draw conclusions or perform the symbolic reasoning
- Therefore we need a procedure for thinking--logical entailment

We want to manipulate the symbols, the different relationships and also the
representations we have in order to solve problems

Logic allows us to deal with abstract ideas in terms of concrete symbols, so the
manipulation of those symbols mirrors the relations among the ideas.

, And the logical entailment procedure has a strong foundation on mathematical logic

In particular we’re going to implement the back chaining procedure which is the
computational implementation of the logical entailment


Representing Knowledge
- Available knowledge
- In symbolic AI, this knowledge must be as precise as possible while avoiding
redundancy
- We’ll use IF-THEN rules
- Atomic Sentences: basic sentences, facts
- conditional sentences: with the form
- variables--capitalized
- constants--uncapitalized

we’re not allowed to make any claims that cannot be supported
by the knowledge included in the knowledge base

- Back-chaining is a logical procedure used to establish whether an atomic sentence 𝑄
(called query) is entailed by the available knowledge or not




The Prolog Language
Chapter 3

- Prolog is invented by Colmerauer for the purpose of natural language parsing

- Declarative programming is a programming paradigm (style of building the structure
and elements of programs) that expresses the logic of computations without
describing its control flow
- Imperative programming languages such as Python need well-defined steps

- Declarative programming tries to minimize or eliminate side effects by describing
what the program must accomplish in terms of the problem domain, rather than
describing how to accomplish it as a sequence of the language primitives and
instructions
- It is powerful because it uses high-level clauses describing what the program
should accomplish
- Prolog has its roots in first-order logic and formal logic. Unlike many other
programming languages, Prolog is intended primarily as a declarative programming
language: the program logic is expressed in terms of relations, represented as facts
and rules.
- such that a computation (reasoning) is initiated by running a query over these
relations

Reviews from verified buyers

Showing all 2 reviews
3 year ago

3 year ago

5.0

2 reviews

5
2
4
0
3
0
2
0
1
0
Trustworthy reviews on Stuvia

All reviews are made by real Stuvia users after verified purchases.

Get to know the seller

Seller avatar
Reputation scores are based on the amount of documents a seller has sold for a fee and the reviews they have received for those documents. There are three levels: Bronze, Silver and Gold. The better the reputation, the more your can rely on the quality of the sellers work.
melisanver Tilburg University
Follow You need to be logged in order to follow users or courses
Sold
59
Member since
4 year
Number of followers
46
Documents
9
Last sold
3 weeks ago

4.3

3 reviews

5
2
4
0
3
1
2
0
1
0

Recently viewed by you

Why students choose Stuvia

Created by fellow students, verified by reviews

Quality you can trust: written by students who passed their tests and reviewed by others who've used these notes.

Didn't get what you expected? Choose another document

No worries! You can instantly pick a different document that better fits what you're looking for.

Pay as you like, start learning right away

No subscription, no commitments. Pay the way you're used to via credit card and download your PDF document instantly.

Student with book image

“Bought, downloaded, and aced it. It really can be that simple.”

Alisha Student

Frequently asked questions