Qualificação universitária
A maior faculdade de Informática do mundo”
Apresentação
Este Master em Inteligência Artificial na Programação irá fornecer-lhe uma perspetiva holística sobre como a IA impacta e melhora todas as fases do desenvolvimento de software"
A importância da Inteligência Artificial na Programação assenta na sua capacidade de potenciar e automatizar processos, otimizando o desenvolvimento de software e melhorando a eficiência na resolução de problemas complexos. A sua capacidade de analisar grandes volumes de dados e encontrar soluções ideais levou a avanços significativos em domínios como a otimização de algoritmos, a criação de interfaces mais intuitivas e a resolução de problemas complexos em diferentes áreas.
É por isso que a TECH desenvolveu este Mestrado Próprio, que surge como uma solução estratégica para aumentar as oportunidades profissionais e o crescimento dos informáticos nas suas carreiras. Será abordada a melhoria da produtividade no desenvolvimento de software através da IA, explorando as técnicas e ferramentas que automatizam processos, otimizam o código e aceleram a criação de aplicações inteligentes.
Para além disso, o Master centrar-se-á no papel crucial da IA no âmbito do QA Testing, implementando algoritmos e métodos de IA para melhorar a qualidade, a precisão e a cobertura dos testes, detetando e corrigindo erros de forma mais eficiente. Será também aprofundada a integração da aprendizagem automática e das capacidades de processamento da linguagem natural no desenvolvimento da Web, criando sites inteligentes que se adaptam e oferecem experiências personalizadas aos utilizadores.
Também se aprofundará as técnicas de IA para melhorar a usabilidade, a interação e a funcionalidade das aplicações móveis, para criar aplicações inteligentes e preditivas que se adaptem ao comportamento do utilizador. Proceder-se-á também a uma análise aprofundada da arquitetura do software com IA, incluindo os vários modelos que facilitarão a integração de algoritmos de IA e a sua implantação em ambientes de produção.
Com o objetivo de qualificar especialistas em IA altamente competentes, a TECHconcebeu um MMasterabrangente baseado na metodologia exclusiva Relearning. Esta abordagem permitirá aos alunos consolidar a sua compreensão através da repetição de conceitos fundamentais.
Irá liderar projetos inovadores adaptados às exigências de um mercado tecnológico em constante evolução. Do que está à espera para se inscrever?"
Este Master em Inteligência Artificial na Programação conta com o conteúdo educativo mais completo e atualizado do mercado. As suas principais caraterísticas são:
- O desenvolvimento de casos práticos apresentados por especialistas em Inteligência Artificial na Programação
- Os conteúdos gráficos, esquemáticos e eminentemente práticos com os quais foi concebido fornecem informação científica e prática sobre as disciplinas que são essenciais para a prática profissional
- Exercícios práticos onde o processo de autoavaliação pode ser levado a cabo a fim de melhorar a aprendizagem
- A sua ênfase especial em metodologias inovadoras
- Lições teóricas, perguntas ao especialista, fóruns de discussão sobre questões controversas e atividades de reflexão individual
- A disponibilidade de acesso ao conteúdo a partir de qualquer dispositivo fixo ou portátil com ligação à Internet
Irá explorar os aspetos fundamentais da arquitetura de software, incluindo o desempenho, a escalabilidade e a manutenção, graças aos recursos multimédia mais inovadores"
O corpo docente do Master inclui profissionais do setor que trazem a sua experiência profissional, para além de especialistas reconhecidos de sociedades de referência e universidades de prestígio.
O seu conteúdo multimédia, desenvolvido com a mais recente tecnologia educativa, permitirá ao profissional uma aprendizagem situada e contextual, ou seja, um ambiente simulado que proporcionará uma preparação imersiva programada para praticar em situações reais.
A conceção deste Master baseia-se na Aprendizagem Baseada em Problemas, através da qual o profissional deverá tentar resolver as diferentes situações da atividade profissional que surgem ao longo do percurso académico. Para tal, contará com a ajuda de um sistema inovador de vídeo interativo desenvolvido por especialistas reconhecidos.
Pretende especializar-se em Inteligência Artificial? Com este Mestrado Próprio, irá dominar a otimização do processo de aplicação e a integração da IA na computação em nuvem"
Irá aprofundar a integração de elementos de IA no Visual Studio Code e a otimização do código com o ChatGPT, tudo através de um percurso académico abrangente"
Programa de estudos
Este Mastero emInteligência Artificial na Programação destaca-se pela sua abordagem integral, abrangendo não só a implementação de algoritmos inteligentes, mas também a melhoria da produtividade no desenvolvimento de software e a aplicação da IA em áreas-chave como QA Testing, projetos Web, aplicações móveis e arquitetura de software. A combinação de competências técnicas, ferramentas avançadas e a aplicação prática da IA em várias fases do desenvolvimento posiciona-o como líder, proporcionando aos profissionais uma compreensão completa e detalhada da aplicação da IA na Programação.
Irá explorar a aplicação prática da IA em projeto Web, incluindo o desenvolvimento de front-end e back-end"
Módulo 1. Fundamentos da Inteligência Artificial
1.1. História da Inteligência Artificial
1.1.1. Quando é que começámos a falar de inteligência artificial?
1.1.2. Referências no cinema
1.1.3. Importância da inteligência artificial
1.1.4. Tecnologias que permitem e apoiam a inteligência artificial
1.2. Inteligência Artificial em jogos
1.2.1. Teoria dos jogos
1.2.2. Minimax e poda Alfa-Beta
1.2.3. Simulação: Monte Carlo
1.3. Redes neuronais
1.3.1. Fundamentos teológicos
1.3.2. Modelo computacional
1.3.3. Redes neuronais supervisionadas e não supervisionadas
1.3.4. Perceptron simples
1.3.5. Perceptron multicamadas
1.4. Algoritmos genéticos
1.4.1. História
1.4.2. Base biológica
1.4.3. Codificação de problemas
1.4.4. Criação da população inicial
1.4.5. Algoritmo principal e operadores genéticos
1.4.6. Avaliação dos indivíduos: Fitness
1.5. Tesauros, vocabulários, taxonomias
1.5.1. Vocabulários
1.5.2. Taxonomias
1.5.3. Tesauros
1.5.4. Ontologias
1.5.5. Representação do conhecimento: web semântica
1.6. Web semântica
1.6.1. Especificações: RDF, RDFS e OWL
1.6.2. Inferência/razoabilidade
1.6.3. Linked Data
1.7. Sistemas periciais e DSS
1.7.1. Sistemas periciais
1.7.2. Sistema de apoio à decisão
1.8. Chatbots e Assistentes Virtuais
1.8.1. Tipos de assistentes: assistentes de voz e texto
1.8.2. Partes fundamentais para o desenvolvimento de um agente: Intenções, entidades e fluxo de diálogo
1.8.3. Integração: Web, Slack, Whatsapp, Facebook
1.8.4. Ferramentas para o desenvolvimento dos agentes: Dialog Flow, Watson Assistant
1.9. Estratégia e implantação de IA
1.10. Futuro da inteligência artificial
1.10.1. Compreendemos como detetar as emoções através de algoritmos
1.10.2. Criação de uma personalidade: linguagem, expressões e conteúdo
1.10.3. Tendências da Inteligência Artificial
1.10.4. Reflexão
Módulo 2. Tipos e Ciclo de Vida do Dado
2.1. A Estatística
2.1.1. Estatística: estatística descritiva, inferências estatísticas
2.1.2. População, mostra indivíduo
2.1.3. Variáveis: Definição de medição
2.2. Tipos de dados estatísticos
2.2.1. De acordo com o tipo
2.2.1.1. Quantitativos: dados contínuos e dados discretos
2.2.1.2. Qualitativo: dados binomiais, dados nominais, dados ordinais
2.2.2. De acordo com a sua forma
2.2.2.1. Numérico
2.2.2.2. Texto
2.2.2.3. Lógico
2.2.3. De acordo com a sua fonte
2.2.3.1. Primários
2.2.3.2. Secundários
2.3. Ciclo de vida dos dados
2.3.1. Etapas do ciclo
2.3.2. Marcos do ciclo
2.3.3. Princípios FAIR
2.4. Etapas iniciais do ciclo
2.4.1. Definição de metas
2.4.2. Determinação de recursos necessários
2.4.3. Diagrama de Gantt
2.4.4. Estrutura de dados
2.5. Recolha de dados
2.5.1. Metodologia de recolha
2.5.2. Ferramentas de recolha
2.5.3. Canais de recolha
2.6. Limpeza de dados
2.6.1. Fases de limpeza de dados
2.6.2. Qualidade dos dados
2.6.3. Manipulação de dados (com R)
2.7. Análise de dados, interpretação e avaliação dos resultados
2.7.1. Medidas estatísticas
2.7.2. Indicadores de relação
2.7.3. Mineração de dados
2.8. Armazém de dados (Datawarehouse)
2.8.1. Elementos incluídos
2.8.2. Design
2.8.3. Aspetos a considerar
2.9. Disponibilidade dos dados
2.9.1. Acesso
2.9.2. Utilidade
2.9.3. Segurança
2.10. Aspetos regulamentares
2.10.1. Lei da Proteção de Dados
2.10.2. Boas práticas
2.10.3. Outros aspetos regulamentares
Módulo 3. O dado na Inteligência Artificial
3.1. Ciência de dados
3.1.1. A ciência de dados
3.1.2. Ferramentas avançadas para o cientista de dados
3.2. Dados, informação e conhecimento
3.2.1. Dados, informação e conhecimento
3.2.2. Tipos de dados
3.2.3. Fontes de dados
3.3. Dos dados à informação
3.3.1. Análise de Dados
3.3.2. Tipos de análise
3.3.3. Extração de informação de um Dataset
3.4. Extração de informação através da visualização
3.4.1. A visualização como ferramenta de análise
3.4.2. Métodos de visualização
3.4.3. Visualização de um conjunto de dados
3.5. Qualidade dos dados
3.5.1. Dados de qualidade
3.5.2. Limpeza de dados
3.5.3. Pré-processamento básico de dados
3.6. Dataset
3.6.1. Enriquecimento do Dataset
3.6.2. A maldição da dimensionalidade
3.6.3. Modificação do nosso conjunto de dados
3.7. Desequilíbrio
3.7.1. Desequilíbrio de classes
3.7.2. Técnicas de mitigação do desiquilíbrio
3.7.3. Equilíbrio de um Dataset
3.8. Modelos sem supervisão
3.8.1. Modelo não supervisionado
3.8.2. Métodos
3.8.3. Classificação com modelos não supervisionados
3.9. Modelos supervisionados
3.9.1. Modelo supervisionado
3.9.2. Métodos
3.9.3. Classificação com modelos supervisionados
3.10. Ferramentas e boas práticas
3.10.1. Boas práticas para um cientista de dados
3.10.2. O melhor modelo
3.10.3. Ferramentas úteis
Módulo 4. Exploração de dados. Seleção, pré-processamento e transformação
4.1. A Inferência estatística
4.1.1. Estatística descritiva vs. Inferência estatística
4.1.2. Procedimentos paramétricos
4.1.3. Procedimentos não paramétricos
4.2. Análise exploratória
4.2.1. Análise descritiva
4.2.2. Visualização
4.2.3. Preparação de dados
4.3. Preparação de dados
4.3.1. Integração e limpeza de dados
4.3.2. Normalização de dados
4.3.3. Transformando atributos
4.4. Os valores perdidos
4.4.1. Tratamento de valores perdidos
4.4.2. Métodos de imputação de máxima verosimilhança
4.4.3. Imputação de valores perdidos utilizando a aprendizagem automática
4.5. O ruído dos dados
4.5.1. Classes de ruído e atributos
4.5.2. Filtragem de ruído
4.5.3. O efeito do ruído
4.6. A maldição da dimensionalidade
4.6.1. Oversampling
4.6.2. Undersampling
4.6.3. Redução de dados multidimensionais
4.7. De atributos contínuos a discretos
4.7.1. Dados contínuos versus dados discretos
4.7.2. Processo de discretização
4.8. Os dados
4.8.1. Seleção de dados
4.8.2. Perspetivas e critérios de seleção
4.8.3. Métodos de seleção
4.9. Seleção de instâncias
4.9.1. Métodos para a seleção de instâncias
4.9.2. Seleção de protótipos
4.9.3. Métodos avançados para a seleção de instâncias
4.10. Pré-processamento de dados em ambientes Big Data
Módulo 5. Algoritmo e complexidade na Inteligência Artificial
5.1. Introdução às estratégias de design de algoritmos
5.1.1. Recursividade
5.1.2. Divide e conquista
5.1.3. Outras estratégias
5.2. Eficiência e análise dos algoritmos
5.2.1. Medidas de eficiência
5.2.2. Medir o tamanho da entrada
5.2.3. Medir o tempo de execução
5.2.4. Caso pior, melhor e médio
5.2.5. Notação assintótica
5.2.6. Critérios de Análise matemática de algoritmos não recursivos
5.2.7. Análise matemática de algoritmos recursivos
5.2.8. Análise empírica de algoritmos
5.3. Algoritmos de ordenação
5.3.1. Conceito de ordenação
5.3.2. Ordenação da bolha
5.3.3. Ordenação por seleção
5.3.4. Ordenação por inserção
5.3.5. Ordenação por mistura (Merge_Sort)
5.3.6. Ordenação rápida (Quick_sort)
5.4. Algoritmos com árvores
5.4.1. Conceito de árvore
5.4.2. Árvores binárias
5.4.3. Caminhos de árvore
5.4.4. Representar expressões
5.4.5. Árvores binárias ordenadas
5.4.6. Árvores binárias equilibradas
5.5. Algoritmos com Heaps
5.5.1. Os Heaps
5.5.2. O algoritmo Heapsort
5.5.3. As filas de prioridade
5.6. Algoritmos com grafos
5.6.1. Representação
5.6.2. Busca em amplitude
5.6.3. Busca em profundidade
5.6.4. Ordenação topológica
5.7. Algoritmos Greedy
5.7.1. A estratégia Greedy
5.7.2. Elementos da estratégia Greedy
5.7.3. Câmbio de moedas
5.7.4. Problema do viajante
5.7.5. Problema da mochila
5.8. Pesquisa de caminhos mínimos
5.8.1. O problema do caminho mínimo
5.8.2. Arcos negativos e ciclos
5.8.3. Algoritmo de Dijkstra
5.9. Algoritmos Greedy sobre grafos
5.9.1. A árvore de extensão mínima
5.9.2. O algoritmo de Prim
5.9.3. O algoritmo de Kruskal
5.9.4. Análise de complexidade
5.10. Backtracking
5.10.1. O Backtracking
5.10.2. Técnicas alternativas
Módulo 6. Sistemas inteligentes
6.1. Teoria dos agentes
6.1.1. História do conceito
6.1.2. Definição de agente
6.1.3. Agentes na Inteligência Artificial
6.1.4. Agentes em Engenharia de Software
6.2. Arquiteturas de agentes
6.2.1. O processo de argumentação de um agente
6.2.2. Agentes reativos
6.2.3. Agentes dedutivos
6.2.4. Agentes híbridos
6.2.5. Comparativa
6.3. Informação e conhecimento
6.3.1. Distinção entre dados, informação e conhecimento
6.3.2. Avaliação qualidade dos dados
6.3.3. Métodos de recolha de dados
6.3.4. Métodos de aquisição de informação
6.3.5. Métodos de aquisição de conhecimento
6.4. Representação do conhecimento
6.4.1. A importância da representação do conhecimento
6.4.2. Definição da representação do conhecimento através das suas funções
6.4.3. Caraterísticas de uma representação do conhecimento
6.5. Ontologias
6.5.1. Introdução aos metadados
6.5.2. Conceito filosófico de ontologia
6.5.3. Conceito informático de ontologia
6.5.4. Ontologias de domínio e ontologias de nível superior
6.5.5. Como construir uma ontologia?
6.6. Linguagens para ontologias e Software para a criação de ontologias
6.6.1. Triples RDF, Turtle e N
6.6.2. RDF Schema
6.6.3. OWL
6.6.4. SPARQL
6.6.5. Introdução às diferentes ferramentas de criação de ontologias
6.6.6. Instalação e utilização do Protégé
6.7. A web semântica
6.7.1. O estado atual e futuro da web semântica
6.7.2. Aplicações da web semântica
6.8. Outros modelos de representação do conhecimento
6.8.1. Vocabulários
6.8.2. Visão global
6.8.3. Taxonomias
6.8.4. Tesauros
6.8.5. Folksonomias
6.8.6. Comparativa
6.8.7. Mapas mentais
6.9. Avaliação e integração das representações do conhecimento
6.9.1. Lógica de ordem zero
6.9.2. Lógica de primeira ordem
6.9.3. Lógica descritiva
6.9.4. Relação entre diferentes tipos de lógica
6.9.5. Prolog: programação baseada na lógica de primeira ordem
6.10. Raciocinadores semânticos, sistemas baseados no conhecimento e Sistemas Periciais
6.10.1. Conceito de raciocinador
6.10.2. Aplicações de um raciocinador
6.10.3. Sistemas baseados no conhecimento
6.10.4. MYCIN, história dos Sistemas Periciais
6.10.5. Elementos e Arquitetura dos Sistemas Periciais
6.10.6. Criação de Sistemas Periciais
Módulo 7. Aprendizagem automática e mineração de dados
7.1. Introdução aos processos de descoberta de conhecimentos e aos conceitos básicos da aprendizagem automática
7.1.1. Conceitos-chave dos processos de descoberta do conhecimento
7.1.2. Perspetiva histórica dos processos de descoberta do conhecimento
7.1.3. Etapas dos processos de descoberta do conhecimento
7.1.4. Técnicas utilizadas nos processos de descoberta do conhecimento
7.1.5. Caraterísticas dos bons modelos de aprendizagem automática
7.1.6. Tipos de informação de aprendizagem automática
7.1.7. Conceitos básicos de aprendizagem
7.1.8. Conceitos básicos de aprendizagem não supervisionado
7.2. Exploração e pré-processamento de dados
7.2.1. Tratamento de dados
7.2.2. Tratamento de dados no fluxo de análise de dados
7.2.3. Tipos de dados
7.2.4. Transformação de dados
7.2.5. Visualização e exploração de variáveis contínuas
7.2.6. Visualização e exploração de variáveis categóricas
7.2.7. Medidas de correlação
7.2.8. Representações gráficas mais comuns
7.2.9. Introdução à análise multivariada e à redução da dimensionalidade
7.3. Árvore de decisão
7.3.1. Algoritmo ID
7.3.2. Algoritmo C
7.3.3. Excesso de treino e poda
7.3.4. Análise dos resultados
7.4. Avaliação dos classificadores
7.4.1. Matrizes de confusão
7.4.2. Matrizes de avaliação numérica
7.4.3. Estatística Kappa
7.4.4. A curva ROC
7.5. Regras de classificação
7.5.1. Medidas de avaliação das regras
7.5.2. Introdução à representação gráfica
7.5.3. Algoritmo de sobreposição sequencial
7.6. Redes neuronais
7.6.1. Conceitos básicos
7.6.2. Redes neuronais simples
7.6.3. Algoritmo de Backpropagation
7.6.4. Introdução às redes neuronais recorrentes
7.7. Métodos bayesianos
7.7.1. Conceitos básicos de probabilidade
7.7.2. Teorema de Bayes
7.7.3. Naive Bayes
7.7.4. Introdução às redes bayesianas
7.8. Modelos de regressão e modelos de resposta contínua
7.8.1. Regressão linear simples
7.8.2. Regressão linear múltipla
7.8.3. Regressão logística
7.8.4. Árvores de regressão
7.8.5. Introdução às máquinas de suporte vetorial (SVM)
7.8.6. Medidas de adequação
7.9. Clustering
7.9.1. Conceitos básicos
7.9.2. Clustering hierárquico
7.9.3. Métodos probabilísticos
7.9.4. Algoritmo EM
7.9.5. Método B-Cubed
7.9.6. Métodos implícitos
7.10. Mineração de texto e processamento linguagem natural(PLN)
7.10.1. Conceitos básicos
7.10.2. Criação do corpus
7.10.3. Análise descritiva
7.10.4. Introdução à análise de sentimentos
Módulo 8. Redes neuronais, a base da Deep Learning
8.1. Aprendizagem Profunda
8.1.1. Tipos de aprendizagem profunda
8.1.2. Aplicações da aprendizagem profunda
8.1.3. Vantagens e desvantagens da aprendizagem profunda
8.2. Operações
8.2.1. Adição
8.2.2. Produto
8.2.3. Deslocalização
8.3. Camadas
8.3.1. Camada de entrada
8.3.2. Camada oculta
8.3.3. Camada de saída
8.4. Ligação de Camadas e Operações
8.4.1. Design de arquiteturas
8.4.2. Conexão entre camadas
8.4.3. Propagação para a frente
8.5. Construção da primeira rede neuronal
8.5.1. Design da rede
8.5.2. Estabelecer os pesos
8.5.3. Treino da rede
8.6. Treinador e Otimizador
8.6.1. Seleção do otimizador
8.6.2. Estabelecimento de uma função de perda
8.6.3. Estabelecimento de uma métrica
8.7. Aplicação dos Princípios das Redes Neuronais
8.7.1. Funções de ativação
8.7.2. Propagação para trás
8.7.3. Ajuste dos parâmetros
8.8. Dos neurónios biológicos aos neurónios artificiais
8.8.1. Funcionamento de um neurónio biológico
8.8.2. Transferência de conhecimentos para os neurónios artificiais
8.8.3. Estabelecer de relações entre os dois
8.9. Implementação do MLP (Perceptron Multicamadas) com o Keras
8.9.1. Definição da estrutura da rede
8.9.2. Compilação do modelo
8.9.3. Treino do modelo
8.10. Hiperparâmetros de Fine tuning de Redes Neuronais
8.10.1. Seleção da função de ativação
8.10.2. Estabelecer a Learning rate
8.10.3. Ajuste dos pesos
Módulo 9. Treino de redes neuronais profundas
9.1. Problemas de Gradientes
9.1.1. Técnicas de otimização de gradiente
9.1.2. Gradientes Estocásticos
9.1.3. Técnicas de inicialização de pesos
9.2. Reutilização de camadas pré-treinadas
9.2.1. Treino de transferência de aprendizagem
9.2.2. Extração de caraterísticas
9.2.3. Aprendizagem profunda
9.3. Otimizadores
9.3.1. Otimizadores estocásticos de gradiente descendente
9.3.2. Otimizadores Adam e RMSprop
9.3.3. Otimizadores de momento
9.4. Programação da taxa de aprendizagem
9.4.1. Controlo de taxa sobre aprendizagem automática
9.4.2. Ciclos de aprendizagem
9.4.3. Termos de suavização
9.5. Sobreajuste
9.5.1. Validação cruzada
9.5.2. Regularização
9.5.3. Métricas de avaliação
9.6. Orientações práticas
9.6.1. Design do modelo
9.6.2. Seleção de métricas e parâmetros de avaliação
9.6.3. Teste de hipóteses
9.7. Transfer Learning
9.7.1. Treino de transferência de aprendizagem
9.7.2. Extração de caraterísticas
9.7.3. Aprendizagem profunda
9.8. Data Augmentation
9.8.1. Transformações de imagem
9.8.2. Criação de dados sintéticos
9.8.3. Transformação de texto
9.9. Aplicação Prática de Transfer Learning
9.9.1. Treino de transferência de aprendizagem
9.9.2. Extração de caraterísticas
9.9.3. Aprendizagem profunda
9.10. Regularização
9.10.1. L e L
9.10.2. Regularização por entropia máxima
9.10.3. Dropout
Módulo 10. Personalização de Modelos e treino com TensorFlow
10.1. TensorFlow
10.1.1. Uso da biblioteca TensorFlow
10.1.2. Treino de modelos com o TensorFlow
10.1.3. Operações de gráfico no TensorFlow
10.2. TensorFlow e NumPy
10.2.1. Ambiente computacional NumPy para TensorFlow
10.2.2. Utilização das arrays NumPy com o TensorFlow
10.2.3. Operações NumPy para o TensorFlow gráficos do TensorFlow
10.3. Personalização de modelos e algoritmos de treino
10.3.1. Construir modelos personalizados com o TensorFlow
10.3.2. Gestão dos parâmetros de treino
10.3.3. Utilização de técnicas de otimização para o treino
10.4. Funções e gráficos do TensorFlow
10.4.1. Funções com o TensorFlow
10.4.2. Utilização de gráficos para treino de modelos
10.4.3. Otimização de gráficos com operações do TensorFlow
10.5. Carregamento e pré-processamento de dados com o TensorFlow
10.5.1. Carga de conjuntos de dados com o TensorFlow
10.5.2. Pré-processamento de dados com o TensorFlow
10.5.3. Utilizar de ferramentas do TensorFlow para a manipulação de dados
10.6. A API tfdata
10.6.1. Utilização da API tfdata para o processamento de dados
10.6.2. Construção de fluxo de dados com tfdata
10.6.3. Utilização da API tfdata para o treino de modelos
10.7. O formato TFRecord
10.7.1. Utilização da API TFRecord para a serialização de dados
10.7.2. Carregamento de arquivos TFRecord com TensorFlow
10.7.3. Utilização de arquivos TFRecord para o treino de modelos
10.8. Camadas de pré-processamento do Keras
10.8.1. Utilização da API de pré-processamento do Keras
10.8.2. Construção de pipelined de pré-processamento com o Keras
10.8.3. Utilização da API de pré-processamento do Keras para o treino de modelos
10.9. O projeto TensorFlow Datasets
10.9.1. Utilização de TensorFlow Datasets para o carregamento de dados
10.9.2. Pré-processamento de dados com o TensorFlow Datasets
10.9.3. Utilização TensorFlow Datasets para o treino de modelos
10.10. Construção de uma Aplicação de Deep Learning com TensorFlow
10.10.1. Aplicação Prática
10.10.2. Construção de uma aplicação de Deep Learning com TensorFlow
10.10.3. Treino de um modelo com o TensorFlow
10.10.4. Utilizar a aplicação para previsão de resultados
Módulo 11. Deep Computer Vision com Redes Neuronais Convolucionais
11.1. A Arquitetura Visual Cortex
11.1.1. Funções do córtex visual
11.1.2. Teoria da visão computacional
11.1.3. Modelos de processamento de imagens
11.2. Camadas convolucionais
11.2.1. Reutilização de pesos na convolução
11.2.2. Convolução D
11.2.3. Funções de ativação
11.3. Camadas de agrupamento e implantação de camadas de agrupamento com o Keras
11.3.1. Pooling e Striding
11.3.2. Flattening
11.3.3. Tipos de Pooling
11.4. Arquitetura CNN
11.4.1. Arquitetura VGG
11.4.2. Arquitetura AlexNet
11.4.3. Arquitetura ResNet
11.5. Implementação de uma CNN ResNet- usando Keras
11.5.1. Inicialização de pesos
11.5.2. Definição da camada de entrada
11.5.3. Definição da saída
11.6. Utilização de modelos pré-treinados do Keras
11.6.1. Caraterísticas dos modelos pré-treinados
11.6.2. Usos dos modelos pré-treinados
11.6.3. Vantagens dos modelos pré-treinados
11.7. Modelos pré-treinados para a aprendizagem por transferência
11.7.1. A Aprendizagem por transferência
11.7.2. Processo de aprendizagem por transferência
11.7.3. Vantagens do aprendizagem por transferência
11.8. Classificação e Localização em Deep Computer Vision
11.8.1. Classificação de imagens
11.8.2. Localização de objetos em imagens
11.8.3. Detenção de objetos
11.9. Deteção e seguimento de objetos
11.9.1. Métodos de deteção de objetos
11.9.2. Algoritmos de seguimento de objetos
11.9.3. Técnicas de seguimento e localização
11.10. Segmentação semântica
11.10.1. Aprendizagem profunda para a segmentação semântica
11.10.2. Deteção de bordas
11.10.3. Métodos de segmentação baseado sem regras
Módulo 12. Processamento de linguagem natural (PLN) com Redes Neurais Recorrentes (RNN) e Atenção
12.1. Criação de texto utilizando RNN
12.1.1. Treino de uma RNN para criação de texto
12.1.2. Criação de linguagem natural com RNN
12.1.3. Aplicações de criação de texto com RNN
12.2. Criação de conjuntos de dados de treino
12.2.1. Preparação dos dados para o treino de uma RNN
12.2.2. Armazenamento do conjunto de dados de treino
12.2.3. Limpeza e transformação dos dados
12.2.4. Análise de Sentimento
12.3. Classificação da opiniões com RNN
12.3.1. Deteção de temas nos comentários
12.3.2. Análise de sentimento com algoritmos de aprendizagem profunda
12.4. Rede codificadora-descodificadora para tradução automática neural
12.4.1. Treino de uma RNN para a tradução automática
12.4.2. Utilização de uma rede encoder-decoder para a tradução automática
12.4.3. Melhoria da precisão da tradução automática com RNNs
12.5. Mecanismos de atenção
12.5.1. Implantação de mecanismos de atenção em RNN
12.5.2. Utilização de mecanismos de atenção para melhorar a precisão dos modelos
12.5.3. Vantagens dos mecanismos de atenção nas redes neuronais
12.6. Modelos Transformers
12.6.1. Uso de modelos Transformers no processamento de linguagem natural
12.6.2. Aplicação de modelos Transformers na visão
12.6.3. Vantagens dos modelos Transformers
12.7. Transformers para a visão
12.7.1. Utilização de modelos Transformers para a visão
12.7.2. Pré-processamento de dados de imagem
12.7.3. Treino de modelos Transformers para visão
12.8. Biblioteca de Transformers de Hugging Face
12.8.1. Utilização da biblioteca Transformers de Hugging Face
12.8.2. Aplicação da biblioteca de Transformers de Hugging Face
12.8.3. Vantagens da biblioteca Transformers de Hugging Face
12.9. Outras Bibliotecas de Transformers. Comparativa
12.9.1. Comparação entre as diferentes bibliotecas de Transformers
12.9.2. Uso das outras bibliotecas de Transformers
12.9.3. Vantagens das outras bibliotecas de Transformers
12.10. Desenvolvimento de uma aplicação de PNL com RNN e Atenção. Aplicação Prática
12.10.1. Desenvolvimento de uma aplicação de processamento de linguagem natural com RNN e atenção
12.10.2. Utilização de RNN, mecanismos de atenção e modelos Transformers na aplicação
12.10.3. Avaliação da aplicação prática
Módulo 13. Autoencoders, GANs, e Modelos de Difusão
13.1. Representação de dados eficientes
13.1.1. Redução da dimensionalidade
13.1.2. Aprendizagem profunda
13.1.3. Representações compactas
13.2. Realização da PCA com um codificador automático linear incompleto
13.2.1. Processo de treino
13.2.2. Implantação em Python
13.2.3. Utilização de dados de teste
13.3. Codificadores automáticos empilhados
13.3.1. Redes neuronais profundas
13.3.2. Construção de arquiteturas de codificação
13.3.3. Utilização da regularização
13.4. Autoencodificadores convolucionais
13.4.1. Design do modelo convolucionais
13.4.2. Treino do modelo convolucionais
13.4.3. Avaliação dos resultados
13.5. Redução do ruído dos codificadores automáticos
13.5.1. Aplicação de filtros
13.5.2. Design de modelos de codificação
13.5.3. Utilização de técnicas de regularização
13.6. Codificadores automáticos dispersos
13.6.1. Aumento da eficiência da codificação
13.6.2. Minimizar o número de parâmetros
13.6.3. Utilização de técnicas de regularização
13.7. Codificadores automáticos variacionais
13.7.1. Utilização da otimização variacional
13.7.2. Aprendizagem profunda não supervisionada
13.7.3. Representações latentes profundas
13.8. Geração de imagens MNIST de moda
13.8.1. Reconhecimento de padrões
13.8.2. Criação de imagens
13.8.3. Treino de redes neuronais profundas
13.9. Redes generativas antagónicas e modelos de difusão
13.9.1. Criação de conteúdos a partir de imagens
13.9.2. Modelação de distribuições de dados
13.9.3. Utilização de redes contraditórias
13.10. Implantação dos Modelos
13.10.1. Aplicação Prática
13.10.2. Implantação dos modelos
13.10.3. Utilização de dados reais
13.10.4. Avaliação dos resultados
Módulo 14. Computação bioinspirada
14.1. Introdução à computação bioinspirada
14.1.1. Introdução à computação bioinspirada
14.2. Algoritmos de inspiração social
14.2.1. Computação bioinspirada baseada em colónias de formigas
14.2.2. Variantes dos algoritmos de colónias de formigas
14.2.3. Computação baseada em nuvens de partículas
14.3. Algoritmos genéticos
14.3.1. Estrutura geral
14.3.2. Implementações dos principais operadores
14.4. Estratégias de exploração do espaço para algoritmos genéticos
14.4.1. Algoritmo CHC
14.4.2. Problemas multimodais
14.5. Modelos de computação evolutiva
14.5.1. Estratégias evolutivas
14.5.2. Programação evolutiva
14.5.3. Algoritmos baseados em evolução diferencial
14.6. Modelos de computação evolutiva (II)
14.6.1. Modelos de evolução baseados na estimativa das distribuições (EDA)
14.6.2. Programação genética
14.7. Programação evolutiva aplicada a problemas de aprendizagem
14.7.1. A aprendizagem baseada em regras
14.7.2. Métodos evolutivos em problemas de seleção de exemplos
14.8. Problemas multiobjetivo
14.8.1. Conceito de dominância
14.8.2. Aplicação de algoritmos evolutivos a problemas multiobjetivos
14.9. Redes neuronais (I)
14.9.1. Introdução às redes neuronais
14.9.2. Exemplo prático com redes neuronais
14.10. Redes neuronais (II)
14.10.1. Casos de utilização de redes neuronais na investigação médica
14.10.2. Casos de utilização de redes neuronais na economia
14.10.3. Casos de utilização de redes neuronais na visão artificial
Módulo 15. Inteligência Artificial: Estratégias e aplicações
15.1. Serviços financeiros
15.1.1. As implicações da Inteligência Artificial (IA) nos serviços financeiros Oportunidades e desafios
15.1.2. Casos de utilização
15.1.3. Potenciais riscos relacionados com a utilização de IA
15.1.4. Potenciais desenvolvimentos/utilizações futuras da IA
15.2. Implicações da inteligência artificial no serviço de saúde
15.2.1. Implicações da IA no setor da saúde Oportunidades e desafios
15.2.2. Casos de utilização
15.3. Riscos relacionados com a utilização de IA no serviço de saúde
15.3.1. Potenciais riscos relacionados com a utilização de IA
15.3.2. Potenciais desenvolvimentos/utilizações futuras da IA
15.4. Retail
15.4.1. Implicações da IA no Retail Oportunidades e desafios
15.4.2. Casos de utilização
15.4.3. Potenciais riscos relacionados com a utilização de IA
15.4.4. Potenciais desenvolvimentos/utilizações futuras da IA
15.5. Indústria
15.5.1. Implicações da IA na Indústria. Oportunidades e desafios
15.5.2. Casos de utilização
15.6. Potenciais riscos relacionados com a utilização de IA na Indústria
15.6.1. Casos de utilização
15.6.2. Potenciais riscos relacionados com a utilização de IA
15.6.3. Potenciais desenvolvimentos/utilizações futuras da IA
15.7. Administração pública
15.7.1. Implicações da IA na Administração pública. Oportunidades e desafios
15.7.2. Casos de utilização
15.7.3. Potenciais riscos relacionados com a utilização de IA
15.7.4. Potenciais desenvolvimentos/utilizações futuras da IA
15.8. Educação
15.8.1. Implicações da IA na educação. Oportunidades e desafios
15.8.2. Casos de utilização
15.8.3. Potenciais riscos relacionados com a utilização de IA
15.8.4. Potenciais desenvolvimentos/utilizações futuras da IA
15.9. Silvicultura e agricultura
15.9.1. Implicações da IA na silvicultura e na agricultura. Oportunidades e desafios
15.9.2. Casos de utilização
15.9.3. Potenciais riscos relacionados com a utilização de IA
15.9.4. Potenciais desenvolvimentos/utilizações futuras da IA
15.10 Recursos Humanos
15.10.1. Implicações da IA nos Recursos Humanos. Oportunidades e desafios
15.10.2. Casos de utilização
15.10.3. Potenciais riscos relacionados com a utilização de IA
15.10.4. Potenciais desenvolvimentos/utilizações futuras da IA
Módulo 16. Melhoria da produtividade no desenvolvimento de software com IA
16.1. Preparar um ambiente de desenvolvimento adequado
16.1.1. Seleção de ferramentas essenciais para o desenvolvimento da IA
16.1.2. Configuração das ferramentas escolhidas
16.1.3. Implementação de condutas CI/CD adaptadas aos projetos de IA
16.1.4. Gestão eficaz das dependências e do controlo de versões nos ambientes de desenvolvimento
16.2. Extensões essenciais de IA para o Visual Studio Code
16.2.1. Exploração e seleção de extensões de IA para o Visual Studio Code
16.2.2. Integrando ferramentas de análise estática e dinâmica no IDE
16.2.3. Automatização de tarefas repetitivas com extensões específicas
16.2.4. Personalização do ambiente de desenvolvimento para melhorar a eficiência
16.3. Design No-code de Interfaces de Utilizador com Elementos de IA
16.3.1. Princípios do design No-code e sua aplicação a interfaces de utilizador
16.3.2. Incorporação de elementos de IA no design de interfaces visuais
16.3.3. Ferramentas e plataformas para a criação No-code de interfaces inteligentes
16.3.4. Avaliação e melhoria contínua de interfaces No-code com IA
16.4. Otimização de código utilizando o ChatGPT
16.4.1. Identificar código duplicado
16.4.2. Refatorar
16.4.3. Criar códigos legíveis
16.4.4. Compreender o que o código faz
16.4.5. Melhorar a designação de variáveis e funções
16.4.6. Criação de documentação automática
16.5. Gestão de repositórios com IA
16.5.1. Automatização dos processos de controlo de versões com técnicas de IA
16.5.2. Deteção e resolução automática de conflitos em ambientes de colaboração
16.5.3. Análise preditiva de alterações e tendências em repositórios de código
16.5.4. Melhoria da organização e categorização de repositórios através de IA
16.6. Integração da IA na gestão de bases de dados
16.6.1. Otimização das consultas e do desempenho utilizando técnicas de IA
16.6.2. Análise preditiva de padrões de acesso a bases de dados
16.6.3. Implementação de sistemas de recomendação para otimizar a estrutura da base de dados
16.6.4. Monitorização proativa e deteção de potenciais problemas na base de dados
16.7. Pesquisa de falhas e criação de testes unitários com IA
16.7.1. Geração automática de casos de teste utilizando técnicas de IA
16.7.2. Deteção precoce de vulnerabilidades e erros através de análise estática com IA
16.7.3. Melhoria da cobertura dos testes através da identificação de áreas críticas por IA
16.8. Pair Programming com GitHub Copilot
16.8.1. Integração e utilização eficiente do GitHub Copilot em sessões de Pair Programming
16.8.2. Melhoria na comunicação e colaboração entre programadores com o GitHub Copilot
16.8.3. Estratégias para tirar o máximo partido das sugestões de código geradas pelo GitHub Copilot
16.8.4. Estudos de caso e boas práticas em programação em Pair Programming assistida por IA
16.9. Tradução automática entre linguagens de programação
16.9.1. Ferramentas e serviços de tradução automática específicos de linguagens de programação
16.9.2. Adaptação dos algoritmos de tradução automática aos contextos de desenvolvimento
16.9.3. Melhoria da interoperabilidade entre diferentes línguas através da tradução automática
16.9.4. Avaliação e atenuação dos potenciais desafios e limitações da tradução automática
16.10. Ferramentas de IA recomendadas para melhorar a produtividade
16.10.1. Análise comparativa das ferramentas de IA para o desenvolvimento de software
16.10.2. Integração de ferramentas de IA em fluxos de trabalho
16.10.3. Automatização de tarefas de rotina com ferramentas de IA
16.10.4. Avaliação e seleção de ferramentas com base no contexto e nos requisitos do projeto
Módulo 17. Arquitetura do software com IA
17.1. Otimização e gestão do desempenho em ferramentas com IA
17.1.1. Análise e perfil do desempenho em ferramentas com IA
17.1.2. Estratégias de otimização para algoritmos e modelos de IA
17.1.3. Implementação de técnicas de caching e de paralelização para melhorar o desempenho
17.1.4. Ferramentas e metodologias para monitorização contínua do desempenho em tempo real
17.2. Escalabilidade em aplicações de IA
17.2.1. Design de arquiteturas escaláveis para aplicações de IA
17.2.2. Implementação de técnicas de partição e distribuição de carga
17.2.3. Gestão do fluxo de trabalho e da carga de trabalho em sistemas escaláveis
17.2.4. Estratégias de expansão horizontal e vertical em ambientes com procura variável
17.3. Manutenibilidade das aplicações com IA
17.3.1. Princípios de design para facilitar a manutenibilidade em projetos de IA
17.3.2. Estratégias de documentação específicas para modelos e algoritmos de IA
17.3.3. Implementação de testes unitários e de integração para facilitar a manutenção
17.3.4. Métodos de refatoração e melhoria contínua em sistemas com componentes de IA
17.4. Design de sistemas de grande escala
17.4.1. Princípios de arquitetura para a conceção de sistemas em grande escala
17.4.2. Decomposição de sistemas complexos em microsserviços
17.4.3. Implementação de padrões de design específicos para sistemas distribuídos
17.4.4. Estratégias para gerir a complexidade em arquiteturas de grande escala com componentes de IA
17.5. Armazenamento de dados de grande escala para ferramentas de IA
17.5.1. Seleção de tecnologias de armazenamento de dados escaláveis
17.5.2. Conceção de esquemas de bases de dados para o tratamento eficiente de grandes volumes de dados
17.5.3. Estratégias de partição e replicação em ambientes de armazenamento de dados em massa
17.5.4. Implementação de sistemas de gestão de dados para garantir a integridade e disponibilidade em projetos com IA
17.6. Estruturas de dados com IA
17.6.1. Adaptação de estruturas de dados clássicas para utilização em algoritmos de IA
17.6.2. Conceção e otimização de estruturas de dados específicas para modelos de aprendizagem automática
17.6.3. Integração de estruturas de dados eficientes em sistemas com processamento intensivo de dados
17.6.4. Estratégias para a manipulação e o armazenamento de dados em tempo real em estruturas de dados com IA
17.7. Algoritmos de programação para produtos com IA
17.7.1. Desenvolvimento e implementação de algoritmos específicos para aplicações com IA
17.7.2. Estratégias de seleção de algoritmos de acordo com o tipo de problema e os requisitos do produto
17.7.3. Adaptação de algoritmos clássicos para integração em sistemas de inteligência artificial
17.7.4. Avaliação e comparação do desempenho entre diferentes algoritmos em contextos de desenvolvimento de IA
17.8. Padrões de design para o desenvolvimento de IA
17.8.1. Identificação e aplicação de padrões de design comuns em projetos com componentes de IA
17.8.2. Desenvolvimento de padrões específicos para a integração de modelos e algoritmos em sistemas existentes
17.8.3. Estratégias de implementação de padrões para melhorar a reutilização e a manutenção em projetos de IA
17.8.4. Estudos de casos e melhores práticas na aplicação de padrões de design em arquiteturas de IA
17.9. Implementação de Clean Architecture
17.9.1. Princípios e conceitos fundamentais da Clean Architecture
17.9.2. Adaptação da Clean Architecture a projetos com componentes de IA
17.9.3. Implementação de camadas e dependências em sistemas com arquitetura limpa
17.9.4. Benefícios e desafios da implementação de uma Clean Architecture no desenvolvimento de software com IA
17.10. Desenvolvimento de software seguro em aplicações web com IA
17.10.1. Princípios de segurança no desenvolvimento de software com componentes de IA
17.10.2. Identificação e atenuação de potenciais vulnerabilidades em modelos e algoritmos de IA
17.10.3. Implementação de práticas de desenvolvimento seguro em aplicações web com funcionalidades de Inteligência Artificial
17.10.4. Estratégias de proteção de dados sensíveis e de prevenção de ataques em projetos com IA
Módulo 18. Projetos Web com IA
18.1. Preparar o Ambiente de Trabalho para o Desenvolvimento Web com IA
18.1.1. Configuração de ambientes de desenvolvimento Web para projetos com inteligência artificial
18.1.2. Seleção e preparação de ferramentas essenciais para o desenvolvimento web com IA
18.1.3. Integração de bibliotecas e frameworks específicos para projetos web com inteligência artificial
18.1.4. Implementação de boas práticas na configuração de ambientes de desenvolvimento colaborativo
18.2. Criação de Workspace para Projetos de IA
18.2.1. Design e organização eficaz de workspaces para projetos web com componentes de inteligência artificial
18.2.2. Utilização de ferramentas de gestão de projetos e de controlo de versões no workspace
18.2.3. Estratégias para a colaboração e a comunicação eficientes na equipa de desenvolvimento
18.2.4. Adaptação do workspace às necessidades específicas dos projetos web com IA
18.3. Padrões de Design em Produtos com IA
18.3.1. Identificação e aplicação de padrões de design comuns em interfaces de utilizador com elementos de inteligência artificial
18.3.2. Desenvolvimento de padrões específicos para melhorar a experiência do utilizador em projetos web com IA
18.3.3. Integração de padrões de design na arquitetura geral de projetos web com Inteligência Artificial
18.3.4. Avaliação e seleção de padrões de design apropriados de acordo com o contexto do projeto
18.4. Desenvolvimento Frontend com IA
18.4.1. Integração de modelos de IA na camada de apresentação de projetos web
18.4.2. Desenvolvimento de interfaces de utilizador adaptáveis com elementos de inteligência artificial
18.4.3. Implementação de funcionalidades de processamento de linguagem natural (NLP) no Frontend
18.4.4. Estratégias para otimização do desempenho no desenvolvimento Frontend com IA
18.5. Criação da Base de Dados
18.5.1. Seleção de tecnologias de bases de dados para projetos web com inteligência artificial
18.5.2. Conceção de esquemas de bases de dados para armazenar e gerir dados relacionados com IA
18.5.3. Implementação de sistemas de armazenamento eficientes para grandes volumes de dados gerados a partir de modelos com IA
18.5.4. Estratégias para a segurança e proteção de dados sensíveis em bases de dados de projetos web com IA
18.6. Desenvolvimento Backend com IA
18.6.1. Integração de serviços e modelos de IA na lógica comercial do Backend
18.6.2. Desenvolvimento de API e pontos de extremidade específicos para a comunicação entre os componentes do Frontend e da IA
18.6.3. Implementação da lógica de processamento de dados e de tomada de decisões no Backend com Inteligência Artificial
18.6.4. Estratégias para a escalabilidade e o desempenho no desenvolvimento Backend de projetos web com IA
18.7. Otimizar o Processo de Implantação na Sua Web
18.7.1. Automatizar o processo de criação e implantação de projetos Web com IA
18.7.2. Implementar pipelines CI/CD adaptados a aplicações Web com componentes de inteligência artificial
18.7.3. Estratégias para uma gestão eficiente de versões e atualizações em implantações contínuas
18.7.4. Monitorização e análise pós-implantação para melhoria contínua do processo
18.8. IA na Computação em Nuvem
18.8.1. Integração de serviços de inteligência artificial em plataformas de computação em nuvem
18.8.2. Desenvolvimento de soluções escaláveis e distribuídas usando serviços de nuvem habilitados para IA
18.8.3. Estratégias para uma gestão eficiente dos recursos e dos custos em ambientes de computação em nuvem com aplicações web com IA
18.8.4. Avaliação e comparação de fornecedores de serviços em nuvem para projetos web com Inteligência Artificial
18.9. Criação de um projeto de IA para Ambientes LAMP
18.9.1. Adaptação de projetos da Web com base no conjunto LAMP para incluir componentes de Inteligência Artificial
18.9.2. Integração de bibliotecas e frameworks específicos de IA em ambientes LAMP
18.9.3. Desenvolvimento de funcionalidades de IA que complementem a arquitetura LAMP tradicional
18.9.4. Estratégias de otimização e manutenção em projetos web habilitados para IA em ambientes LAMP
18.10. Criação de um projeto de IA para Ambientes MEVN
18.10.1. Integração de tecnologias e ferramentas do conjunto MEVN com componentes de Inteligência Artificial
18.10.2. Desenvolvimento de aplicações web modernas e escaláveis em ambientes MEVN com capacidades de IA
18.10.3. Implementação de funcionalidades de tratamento de dados e de aprendizagem automática em projetos MEVN
18.10.4. Estratégias para melhorar o desempenho e a segurança de aplicações web com capacidades de IA em ambientes MEVN
Módulo 19. Aplicações móveis com IA
19.1. Preparação do Ambiente de Trabalho para o Desenvolvimento Móvel com IA
19.1.1. Configuração de ambientes de desenvolvimento móvel para projetos com Inteligência Artificial
19.1.2. Seleção e preparação de ferramentas específicas para o desenvolvimento de aplicações móveis com IA
19.1.3. Integração de bibliotecas e frameworks de IA em ambientes de desenvolvimento móvel
19.1.4. Configuração de emuladores e dispositivos reais para testar aplicações móveis com componentes de inteligência artificial
19.2. Criação de um Workspace com Github copilot
19.2.1. Integração do GitHub Copilot em ambientes de desenvolvimento móvel
19.2.2. Utilização eficaz do GitHub Copilot para a geração de código em projetos com IA
19.2.3. Estratégias para a colaboração do programador ao utilizar o GitHub Copilot no workspace
19.2.4. Boas práticas e limitações no uso do GitHub Copilot no desenvolvimento de aplicações móveis com IA
19.3. Configuração do Firebase
19.3.1. Configuração inicial de um projeto Firebase para o desenvolvimento móvel
19.3.2. Integração do Firebase em aplicações móveis com funcionalidades de IA
19.3.3. Utilização dos serviços Firebase, como a base de dados, a autenticação e as notificações em projetos com IA
19.3.4. Estratégias para a gestão de dados e eventos em tempo real em aplicações móveis com o Firebase
19.4. Conceitos de Clean Architecture, DataSources, Repositories
19.4.1. Princípios fundamentais de Clean Architecture no desenvolvimento móvel com IA
19.4.2. Implementação das camadas DataSources e Repositories em arquiteturas limpas
19.4.3. Design e estruturação de componentes em projetos móveis com foco em arquitetura limpa
19.4.4. Benefícios e desafios da implementação da Clean Architecture aplicações móveis com IA
19.5. Criação do Ecrã de Autenticação
19.5.1. Design e desenvolvimento de interfaces de utilizador para ecrãs de autenticação em aplicações móveis com IA
19.5.2. Integração de serviços de autenticação com Firebase no ecrã de início de sessão
19.5.3. Utilização de técnicas de segurança e de proteção de dados no ecrã de autenticação
19.5.4. Personalização e adaptação da experiência do utilizador no ecrã de autenticação
19.6. Criação do Dashboard e Navegação
19.6.1. Design e desenvolvimento de Dashboards com elementos de Inteligência Artificial
19.6.2. Implementação de sistemas de navegação eficientes em aplicações móveis com IA
19.6.3. Integração de funcionalidades de IA no Dashboard para melhorar a experiência do utilizador
19.7. Criação do Ecrã com Listagem
19.7.1. Desenvolvimento de interfaces de utilizador para ecrãs com listagerm em aplicações móveis com IA
19.7.2. Integração de algoritmos de recomendação e filtragem no ecrã de listagem
19.7.3. Utilização de padrões de design para uma apresentação eficaz dos dados da listagem
19.7.4. Estratégias para o carregamento eficaz de dados em tempo real no ecrã de listagem
19.8. Criação do Ecrã de Detalhes
19.8.1. Design e desenvolvimento de interfaces de utilizador detalhadas para a apresentação de informações específicas
19.8.2. Integração de funcionalidades de IA para enriquecer o ecrã de detalhes
19.8.3. Implementação de interações e animações no ecrã de detalhes
19.8.4. Estratégias para a otimização do desempenho na visualização e carregamento de detalhes de aplicações móveis com IA
19.9. Criação do Ecrã de Settings
19.9.1. Desenvolvimento de interfaces de utilizador para configuração e ajuestes em aplicações móveis com IA
19.9.2. Integração de definições personalizadas relacionadas com componentes de inteligência artificial
19.9.3. Implementação de opções e preferências de personalização no ecrã de configuração
19.9.4. Estratégias de usabilidade e clareza na apresentação das opções no ecrã de settings
19.10. Criar Ícones, Splash e Recursos Gráficos para a Sua App com IA
19.10.1. Design e criação de ícones atrativos para representar a aplicação móvel com IA
19.10.2. Desenvolvimento de ecrãs iniciais (splash) com visuais impactantes
19.10.3. Seleção e adaptação de recursos gráficos que melhorem a estética da aplicação móvel
19.10.4. Estratégias de coerência e de branding visual nos elementos gráficos da aplicação com IA
Módulo 20. IA para QA Testing
20.1. Ciclo de vida do Testing
20.1.1. Descrição e compreensão do ciclo de vida do testing de desenvolvimento de software
20.1.2. Fases do ciclo de vida do testing e a sua importância para a garantia da qualidade
20.1.3. Integração da inteligência artificial nas diferentes fases do ciclo de vida do testing
20.1.4. Estratégias de melhoria contínua do ciclo de vida do testing através da utilização da IA
20.2. Test Cases e Deteção de Bugs
20.2.1. Conceção e redação eficazes de casos de teste no contexto do QA Testing
20.2.2. Identificação de bugs e erros durante a execução de casos de teste
20.2.3. Aplicação de técnicas de deteção precoce de erros através de análise estática
20.2.4. Utilização de ferramentas de inteligência artificial para a identificação automática de erros em casos de teste
20.3. Tpos de Testing
20.3.1. Exploração de diferentes tipos de testing no domínio da QA
20.3.2. Testes unitários, de integração, funcionais e de aceitação: caraterísticas e aplicações
20.3.3. Estratégias para a seleção e combinação adequada de tipos de testing em projetos com IA
20.3.4. Adaptação de tipos de testing convencionais a projetos com componentes de inteligência artificial
20.4. Criar um Plano de Testes
20.4.1. Design e estruturação de um plano de testes abrangente
20.4.2. Identificação de requisitos e cenários de teste em projetos com IA
20.4.3. Estratégias para o planeamento de testes manuais e automatizados
20.4.4. Avaliação e ajuste contínuo do plano de testes de acordo com o desenvolvimento do projeto
20.5. Deteção e Bugs Bugs com IA
20.5.1. Implementação de técnicas de deteção automática de bugs utilizando algoritmos de aprendizagem automática
20.5.2. Utilização de ferramentas de inteligência artificial para a análise dinâmica de códigos para procurar eventuais erros
20.5.3. Estratégias para a geração automática de relatórios pormenorizados sobre os bugs detetados pela IA
20.5.4. Colaboração eficaz entre as equipas de desenvolvimento e de garantia da qualidade na gestão dos erros identificados pela IA
20.6. Criação de Testes Automatizados com IA
20.6.1. Desenvolvimento de scripts de testes automatizados para projetos com componentes de inteligência artificial
20.6.2. Integração de ferramentas de automatização de testes baseadas em IA
20.6.3. Utilização de algoritmos de machine learning para a geração dinâmica de casos de teste automatizados
20.6.4. Estratégias para a execução eficiente e a manutenção de casos de teste automatizados em projetos com IA
20.7. API Testing
20.7.1. Conceitos fundamentais de API testing e sua importância em QA
20.7.2. Desenvolvimento de testes para a verificação de APIs em ambientes com componentes de Inteligência Artificial
20.7.3. Estratégias para validação de dados e resultados em API testing com IA
20.7.4. Utilização de ferramentas específicas para o testing de API em projetos com inteligência artificial
20.8. Ferramentas de IA para Web Testing
20.8.1. Exploração de ferramentas de inteligência artificial para automatização de testes em ambientes Web
20.8.2. Integração de tecnologias de reconhecimento de itens e de análise visual em Web testing
20.8.3. Estratégias para a deteção automática de alterações e problemas de desempenho em aplicações Web através da IA
20.8.4. Avaliação de ferramentas específicas para melhorar a eficiência no web testing com IA
20.9. Mobile Testing Através de IA
20.9.1. Desenvolvimento de estratégias de testing para aplicações móveis com componentes de inteligência artificial
20.9.2. Integração de ferramentas de testing específicas para plataformas móveis baseadas em IA
20.9.3. Utilização de algoritmos de aprendizagem automática para detetar problemas de desempenho das aplicações móveis
20.9.4. Estratégias para a validação de interfaces e funções específicas de aplicações móveis através da IA
20.10. Ferramentas de QA com IA
20.10.1. Exploração de ferramentas e plataformas de GQ que incorporem funcionalidades de Inteligência Artificial
20.10.2. Avaliação de ferramentas para a gestão e execução eficientes de testes em projetos de IA
20.10.3. Utilização de algoritmos de machine learning para a geração e otimização de casos de teste
20.10.4. Estratégias para a seleção e adoção eficaz de ferramentas de QA com capacidades de IA Módulo 1. Fundamentos da Inteligência Artificial
Posicione-se no mercado de trabalho com um Mestrado Próprio 100% online que se adapta às suas necessidades e permite uma aprendizagem imersiva e sólida"
"
Mestrado Próprio em Inteligência Artificial na Programação
A inteligência artificial na programação surgiu como um campo revolucionário que redefine a forma como concebemos e construímos software. Se pretende mergulhar na vanguarda da tecnologia, a TECH Universidade Tecnológica tem a opção ideal para si: o Mestrado Próprio em Inteligência Artificial na Programação. Este Mestrado Próprio, ministrado de forma 100% online, oferece-lhe o aprofundamento de técnicas avançadas de programação cognitiva e de conceção de sistemas inteligentes. Comece o seu percurso explorando os fundamentos essenciais da inteligência artificial e da programação. Este módulo estabelece as bases para a compreensão de conceitos-chave como a aprendizagem automática, o processamento de linguagem natural e a visão computacional. Aprenderá também a conceber algoritmos inteligentes que conduzem à tomada de decisões autónomas. Este módulo centra-se no desenvolvimento de modelos de aprendizagem de máquinas e técnicas avançadas de programação para criar sistemas capazes de aprender e adaptar-se.
Aprenda tudo sobre inteligência artificial na programação
Este Mestrado Próprio destaca-se não só por conter a informação mais completa e atualizada do mercado, mas também pelas suas aulas dinâmicas e interativas, ministradas online. Aqui, o aluno irá explorar como integrar a inteligência artificial em aplicações empresariais. Da análise preditiva à automatização de processos, este módulo aborda a implementação prática da IA para melhorar a eficiência e a tomada de decisões no ambiente empresarial. Finalmente, compreenderá a importância da ética no desenvolvimento de sistemas inteligentes. Este módulo destaca os desafios éticos associados à IA e como os profissionais podem programar de forma responsável, garantindo um impacto positivo na sociedade. Após a conclusão do Mestrado Próprio, tornar-se-á um especialista em inteligência artificial na programação, pronto para liderar a inovação no mundo da programação cognitiva. Junte-se a nós e faça a diferença na revolução tecnológica. Inscreva-se agora e eleve as suas competências ao mais alto nível!"