Introdução à Inteligência Artificial

Resultados de Aprendizagem

No final da unidade curricular o aluno ficará habilitado a:
1. Definir Inteligência Artificial. Reconhecer os principais marcos históricos da sua evolução. Classificar os
diferentes paradigmas existentes no contexto da Inteligência Artificial.
2. Identificar e comparar os vários tipos de agentes utilizados nesta tecnologia. Reconhecer os agentes
aprendizes. Explicar a constituição e funcionamento das redes neuronais.
3. Discutir o tratamento dos dados para posterior utilização por diferentes algoritmos. Sintetizar e
demonstrar a obtenção das principais medidas da estatística descritiva. Selecionar e usar testes no âmbito
da estatística inferencial.
4. Explicar em que consiste Machine Learning. Classificar os diferentes tipos de sistemas neste âmbito.
Selecionar e justificar a escolha de um modelo.
5. Identificar as principais características da aprendizagem supervisionada. Demonstrar a utilização dos
vários tipos de modelos deste tipo de aprendizagem.
6. Analisar as características mais importantes da aprendizagem não supervisionada. Demonstrar a utilização
dos vários tipos de modelos deste tipo de aprendizagem.
7. Comparar, escolher e demonstrar a utilização de diferentes modelos de Deep Learning.
8. Projetar, criar e modificar aplicações de software recorrendo a bibliotecas e algoritmos de Machine
Learning e Deep Learning.

Programa

1. Inteligência Artificial. Resenha histórica. Paradigmas computacional/simbólico, conexionista e biológico.
Agentes inteligentes e o futuro da IA.
2. Agentes. Tipos de agentes: agentes reactivos, agentes de procura, agentes baseados em conhecimento,
agentes adaptativos, e agentes aprendizes. Agentes Aprendizes. Redes neuronais. O perceptrão. Redes de
várias camadas e aprendizagem.
3. Análise de Dados. Formatação e normalização de dados. Estatística Descritiva. Medidas de tendência
central e de variância. Estatística Inferencial. Testes de Independência. Testes de Associação. Testes
Paramétricos. Testes Não Paramétricos.
4. Machine Learning. Tipos de sistemas: Supervisionada versus Não Supervisionada, Batch versus Online,
Instance-Based versus Model-Based. Escolha do modelo. Overfitting e Underfitting. Teste e validação.
Visualização dos dados.
5. Aprendizagem supervisionada. Regressão: Linear e não Linear. Classificação: K-Nearest Neighbors (KNN),
Árvores de Decisão, Regressão Logistica, Support Vector Machines (SVM).
6. Aprendizagem não supervisionada. Clustering: K-means, Clustering Hierarquico, Density-Based Spatial
Clustering of Applications with Noise (DBSCAN). Redução de Dimensionalidade: PCA, LDA.
7. Deep Learning: Restricted Boltzmann Machines, Deep Belief Networks (DBN), Convolutional Neural
Networks (CNN), Recurrent Neural Networks (RNN).
Página 3 de 3
8. Desenvolvimento de aplicações em linguagem Python recorrendo a algoritmos de Machine Learning e
Deep Learning.

Estágio(s)

NAO

Bibliografia

Burkov, A. (2019). The hundred-page machine learning book. Andriy Burkov.
Costa, E. (2015). Programação em python: Fundamentos e resolução de problemas. FCA.
Costa, E., & Simões, A. (2008). Inteligência artificial: Fundamentos e aplicações. FCA.
Geron, A. (2019). Hands-on machine learning with scikit-learn, keras, and tensorflow. O’Reilly.
Mckinney, W. (2017). Python for data analysis: Data wrangling with pandas, numpy, and ipython. O’Reilly.
Raschka, S., & Mirjalili, V. (2019). Python machine learning: Machine learning and deep learning with python,
scikit-learn, and tensorflow. Packt Publishing.
Russel, S., & Norvig, P. (2018). Artificial intelligence: A modern approach. Pearson Education Limited.