Ambiente de Ensino e Aprendizagem a Distância

Carga Horária: 10

Professor: Dr. Rafael. Ales Paes de Oliveira

Objetivos: Proporcionar aos estudantes uma compreensão dos fundamentos e práticas relacionados ao EaD e aos Ambientes de Ensino e Aprendizagem a Distância (AVEA's), focando em uma compreensão abrangente dos recursos e ferramentas do AVEA Moodle.

Programa: Conceitos básicos de EaD. Estratégias instrucionais eficazes para ambientes virtuais. Ferramentas de comunicação síncrona e assíncrona. Recursos multimídia e interativos. Introdução aos principais AVEA's existentes. Recursos e ferramentas do AVEA Moodle.

Referencias Bibliográficas:


Linguagem de Programação para Ciência de Dados

Carga Horária: 20

Professor: Dr. Yuri Kaszubowski Lopes

Objetivos: Desenvolver habilidades em Python para Ciência de Dados, abrangendo instalação do ambiente, fundamentos da linguagem, tipos de dados, manipulação de strings, eficiência de código, e introdução a bibliotecas como Pandas, Matplotlib, NumPy. Capacitar os alunos a criarem algoritmos, manipular dados tabulados, visualizar dados graficamente e acessar bancos de dados com Python.

Programa: Apresentar a linguagem de programação Python. Importância/popularização da linguagem de programação Python. Instalação e preparação de ambiente de programação para a linguagem Python. Elementos básicos da linguagem Python, estrutura sequencial, de decisão e de repetição. Tipos de dados em Python: tipos básicos, tuplas, listas, mutação e dicionários. Funções. Manipulação de strings. Recursão, busca e ordenação. Eficiência, estilo de programação e documentação interna. Introdução às bibliotecas Pandas, colab, spyder, Matplotlib e NumPy. Desenvolvimento de algoritmos utilizando Python. Carregar dados em dados tabulados (csv, planilhas eletrônicas) com Pandas, realizar filtros pelas colunas, usar pivot, gerar gráficos a partir de DataFrames. Criar gráficos com matplotlib (linha, dispersão, barras e pizza), utilizar elementos como título e rótulos, alterar ticks, usar múltiplos eixos (subplots). Acessar banco de dados com Python.

Referencias Bibliográficas:


Banco de Dados Relacional

Carga Horária: 30

Professor: Dr. Evandro Miguel Kuszera

Objetivos: Apresentar a visão geral do gerenciamento e projeto de banco de dados relacionais, com foco em técnicas para modelagem conceitual, lógica e física. Introdução a conceitos de administração e gerenciamento de banco de dados.

Programa: Introdução ao conceito de Banco de Dados Relacional. Introdução aos Sistemas Gerenciadores de Banco de Dados. Definição da importância do gerenciamento e administração de banco de dados relacional na ciência de dados. Projeto de banco de dados relacional: modelagem conceitual, lógica e física. Modelo entidade-relacionamento (MER) e a construção de diagramas entidade-relacionamento. Demonstração das linguagens de programação usadas em um SGBD e sua importância na ciência de dados. Utilização de um SGBD: instalação, configuração, usuários (permissões) e funcionalidades principais. Construção do esquema físico de um banco de dados relacional. Linguagem de definição de dados (DDL): criação, remoção e alterações estruturais de bjetos. Linguagem de manipulação de dados (DML): inserção, remoção, alteração e recuperação de dados. Introdução a Otimização do desempenho de consultas.

Referencias Bibliográficas:


Introdução a Ciência de Dados

Carga Horária: 30

Professores: Dra. Alinne Cristinne Corrêa Souza & Dr. Francisco Carlos Monteiro

Objetivos: Proporcionar uma compreensão dos conceitos fundamentais e das etapas do processo de Ciência de Dados. Desenvolver as habilidades essenciais para um cientista de dados, capacitando os alunos a resolverem problemas reais e tomar decisões baseadas em dados.

Programa: Demonstração do Ecossistema de ciência de dados (etapas). Descrever as capacidades exigidas de um cientista de dados. Coleta e aquisição de dados. Fontes de dados: estruturados e não estruturados. Técnicas de coleta de dados. Problemas comuns na coleta de dados e soluções. Definição dos conceitos de Big Data e Inteligência de Negócio. Processo de mineração de dados: seleção, préprocessamento, transformação, modelagem e avaliação. Apresentar e discutir técnicas para coleta, integração, pré-processamento e análise de dados, classificação e visualização de resultados. Definição e objetivos da mineração de dados. Limpeza de dados: tratamento de dados ausentes, ruídos e outliers. Transformação de dados: normalização, discretização, e redução de dimensionalidade. Métricas de Avaliação de resultados na Ciência de Dados. Visualização de Dados.

Referencias Bibliográficas:


Introdução ao Big Data

Carga Horária: 20

Professores: Ms. Francisco Pereira Junior & Dra. Rosangela de Fátima Pereira Marquesone

Objetivos: Introduzir conceitos fundamentais acerca de Big Data e sua importância na ciência de dados. Contrastar os diferentes tipos de modelos de dados NoSQL existentes, comparando com os modelos de dados relacionais. Construir soluções de gerenciamento de dados utilizando como base os banco de dados NoSQL. Aplicar técnicas para melhorar o processamento massivo de dados presentes em banco de dados NoSQL, culminando nos princípios de computação paralela e distribuída de dados. Desenvolver aplicações para ciência de dados utilizando conceitos de Big Data e NoSQL.

Programa: Conceitos básicos sobre Big Data e seus elementos principais: características dos Vs do Big Data. Conceitos sobre NoSQL e sua importância na ciência de dados. Paradigma BASE e suas diferenças em relação ao paradigma ACID. Modelos de dados para NoSQL e Big Data: orientado a documentos, orientado a chave e valor, orientado a coluna, orientado a linha e orientado a grafo. Banco de dados NoSQL: aplicações, desenvolvimento e suas linguagens de consulta. Preparação de ambiente para utilização de um sistema NoSQL. Conectividade de sistemas NoSQL utilizando uma linguagem de programação para ciência de dados. Técnicas de otimização de consultas para Big Data usando ferramentas NoSQL. Introdução ao processamento massivo de grandes volumes de dados: combinando NoSQL e Sistemas Gerenciadores de Dados tradicionais com sistemas distribuídos de dados.

Referencias Bibliográficas:


Arquitetura de Dados

Carga Horária: 20

Professor: Ms. Weslley G. de Moura

Objetivos: Entender os conceitos de Data Warehouse, Data Mesh e Data Lake, incluindo suas arquiteturas, modelos de dados, projeto, implementação e como eles se relacionam com a gestão e análise de dados empresariais

Programa: Definição e diferenças de Data Warehouse, Data Mesh e Data Lake. Modelagem e Design de Data Warehouse. Estratégias de modelagem dimensional, Desenvolvimento de esquemas de estrela e floco de neve, Implementação de processos ETL (Extract, Transform, Load). Princípios fundamentais do Data Mesh. Arquitetura e componentes essenciais de um Data Lake. Integração de dados heterogêneos no ambiente do Data Lake. Governança e segurança em ambientes de Data Lake. Tecnologias de Armazenamento. Tecnologias de Processamento.

Referencias Bibliográficas:


Gestão e Governança de Dados

Carga Horária: 20

Professor: Ms. Eduardo Armelin

Objetivos:Capacitar os alunos para liderar e gerenciar de forma eficaz todas as etapas do ciclo de vida dos dados dentro das organizações. Proporcionar uma compreensão abrangente das melhores práticas, ferramentas e estratégias para coleta, armazenamento, análise, segurança e governança de dados, alinhando esses processos às necessidades estratégicas e operacionais do negócio.

Programa: Conceitos e frameworks de Gerenciamento de dados. Atividades, Técnicas, Ferramentas, Diretrizes de implementação e Métricas de Governança de Dados. Atividades, Ferramentas, Diretrizes de Implementação e Governança de Arquitetura de Dados. Conceitos de Ética no Tratamento de Dados, Governança do Projeto e Modelagem de dados, Armazenamento e operações de dados, Segurança de Dados, Integração e interoperabilidade de dados, Gerenciamento de Documentos e Conteúdo, Dados Mestre e de Referência, Data Warehousing e Business Intelligence, Gerenciamento de Metadados, Qualidade de dados, Big Data e Ciência de Dados, Avaliação de maturidade em gerenciamento de dados, Organização do gerenciamento de dados e expectativas de função, Gerenciamento de dados e gerenciamento de mudanças organizacionais.

Referencias Bibliográficas:


Aprendizado de Máquina

Carga Horária: 20

Professor: Dr. Marlon Marcon

Objetivos: Proporcionar uma compreensão sólida dos conceitos básicos de aprendizado de máquina, incluindo tipos de aprendizado (supervisionado, não supervisionado, por reforço) e principais algoritmos.

Programa: Visão do reconhecimento de padrões e sua importância na ciência de dados. Modelos e métodos para aprendizagem supervisionada. Modelos e métodos para aprendizagem não supervisionada. Implementação de soluções algorítmicas de reconhecimento de padrões. Visão geral de quais tipos de modelos e métodos de aprendizagem supervisionado e não supervisionado a serem aplicados para resolver problemas em ciência e dados. Validação de modelo: holdout, cross-validation, problemas com overfitting e underfitting. Aplicação de métricas para avaliação de resultados. Definição de Machine Learning Automatizado (AutoML).

Referencias Bibliográficas:


Redes Neurais e Deep Learning

Carga Horária: 20

Professor: Dr. Rafael. G. Mantovani

Objetivos: Proporcionar aos alunos uma compreensão profunda dos conceitos fundamentais das redes neurais e do deep learning. Capacitar os alunos a implementarem, treinar e avaliar modelos de redes neurais utilizando bibliotecas e frameworks.

Programa: História e evolução das redes neurais. Conceitos básicos e terminologia de Redes Neurais. Fundamentos Matemáticos de Redes Neurais Artificiais. MultiLayer Perceptron (MLP). Backpropagation. Modelos de Aprendizagem Profunda. Rede Neural Convolucional. Autoencoders (AEs). Redes Neurais Recorrentes (RNNs)

Referencias Bibliográficas:


Processamento de Linguagem Natural e Análise de Séries Temporais

Carga Horária: 20

Professor: Dr. André Roberto Ortoncelli

Objetivos: Desenvolver uma compreensão profunda dos princípios e métodos fundamentais do reconhecimento de padrões, com foco específico em textos e séries temporais. Capacitar os alunos a aplicar técnicas avançadas de reconhecimento de padrões em textos e séries temporais, utilizando ferramentas e algoritmos modernos

Programa: Introdução ao Processamento de Linguagem Natural (PLN). Tokenização, stemming e lematização. Normalização de textos e técnicas de pré-processamento de texto. Modelos de representação de texto. Redes Neurais para classificação de textos. Classificação de textos usando Transformers. Pré-processamento de dados textuais e séries temporais. Conceitos de Tendência e Sazonalidade. Importância de séries temporais e regras de associação. Predição de valores numa série temporal com métodos estatísticos e baseados em AM. Redução de dimensionalidade para séries temporais. Análise de estudos de caso reais. Novas tendências e desafios no reconhecimento de padrões.

Referencias Bibliográficas:


Visão Computacional

Carga Horária: 20

Professor: Dr. Marlon Marcon

Objetivos: Apresentar aos alunos conceitos de Processamento Digital de Imagens e Visão Computacional. Expandir o entendimento dos alunos sobre os conceitos e técnicas de Deep Learning especificamente voltados para aplicações em visão computacional. Desenvolver habilidades práticas para abordar e resolver problemas reais em áreas como reconhecimento de imagens, detecção de objetos e segmentação de imagens.

Programa: Fundamentos de Processamento de Imagens. Técnicas básicas de processamento de imagens. Filtros e transformações. Revisão de CNNs e suas arquiteturas. Treinamento e otimização de CNNs. Algoritmos clássicos e modernos para detecção de objetos. Técnicas de segmentação de imagens. Segmentação semântica e de instâncias. Técnicas avançadas de reconhecimento e classificação de imagens. Transfer Learning e Fine-tuning de modelos pré treinados. GANs (Generative Adversarial Networks) e aplicações em visão computacional. Ferramentas de anotação e preparação de datasets. Tendências e desafios atuais na visão computacional.

Referencias Bibliográficas:


Gestão da Inovação em Ciência de Dados

Carga Horária: 20

Professor: Dr. Rafael Alves Paes de Oliveira

Objetivos: Capacitar os alunos a compreenderem os processos de gestão da inovação e aplicar estratégias e técnicas para promover a inovação de forma eficaz no contexto da ciência de dados. A disciplina visa desenvolver habilidades para identificar oportunidades de inovação, gerenciar projetos de ciência de dados orientados para a inovação, e promover uma cultura organizacional que favoreça a experimentação, a criatividade e o desenvolvimento contínuo de soluções inovadoras baseadas em dados.

Programa: Conceitos Fundamentais de Gestão da Inovação. Papel da inovação na ciência de dados e na transformação digital. Identificação e Seleção de Oportunidades de Inovação. Análise de mercado e tendências. Métodos de ideação e brainstorming. Cultura e Liderança para Inovação. Papel dos líderes na promoção da inovação. Gestão da mudança em projetos de ciência de dados. Parcerias estratégicas e open innovation. Co-criação com stakeholders internos e externos. Ecossistema de startups e comunidades de inovação em ciência de dados. Aspectos Éticos e Legais em Projetos de Ciência de Dados

Referencias Bibliográficas:


Engenharia de Software para Ciência de Dados

Carga Horária: 30

Professores: Dra. Alinne Cristinne Corrêa Souza & Dr. Francisco Carlos Monteiro

Objetivos: Capacitar os alunos a aplicarem princípios de engenharia de software de forma eficaz no contexto da ciência de dados, fornecendo-lhes habilidades e conhecimentos para desenvolver e manter sistemas de software robustos, escaláveis e de alta qualidade para análise e aplicação de dados

Programa: Introdução à Engenharia de Software. Importância da engenharia de software na ciência de dados. Ciclo de vida de desenvolvimento de software (SDLC) no contexto de projetos de dados. Planejamento de projetos de ciência de dados. Estimativas, cronogramas e alocação de recursos. Gestão de risco e controle de qualidade. Considerações éticas no desenvolvimento de software. Especificação de sistemas de software inteligentes.

Referencias Bibliográficas:


Planejamento e Implementação de Algoritmos para Ciência de Dados

Carga Horária: 20

Professor: Dr. Yuri Kaszubowski Lopes

Objetivos: Preparar o aluno para planejar estratégias eficientes para resolução de problemas com Ciência de Dados. A disciplina apresenta os fundamentos de análise de algoritmos para que o aluno consiga escolher/implementar algoritmos mais rápidos para cada tipo de problema. A disciplina também apresenta aos alunos algoritmos baseados em busca e a computação evolucionária. Como objetivo geral a disciplina tem o objetivo de preparar o aluno para Criar soluções algorítmicas para problemas complexos utilizando princípios da ciência de dados e selecionando métodos adequados (considerando as estratégias apresentadas na disciplina e também os métodos previamente apresentados no curso).

Programa: Fundamentos de análise de complexidade de algoritmos. Técnicas de projeto de algoritmos: Divisão e Conquista, Programação Dinâmica, Algoritmos Gulosos. Resolução de problemas baseada em busca. Computação Evolucionária: Algoritmos Genéticos e Programação Genética. Utilização de métodos e modelos avançados na resolução de problemas: computação evolucionária (algoritmos genéticos e programação genética) e métodos Ensemble.

Referencias Bibliográficas:


Introdução ao MLOPS

Carga Horária: 20

Professor: Ms. Weslley G. de Moura

Objetivos: Introduzir os alunos a uma variedade de ferramentas e tecnologias usadas em MLOps, incluindo frameworks de automação, plataformas de gerenciamento de modelos, infraestrutura de computação escalável e sistemas de monitoramento

Programa: Definição e contexto da MLOps. Desafios na implantação de modelos de aprendizado de máquina em ambientes de produção. Benefícios da abordagem MLOps. Integração Contínua (CI) para Machine Learning. Entrega Contínua (CD) para Modelos. Ambientes e Infraestrutura para MLOps Configuração de ambientes replicáveis para treinamento e inferência. Monitoramento e Manutenção de Modelos em Produção. Colaboração eficaz entre equipes de ciência de dados, desenvolvimento e operações.

Referencias Bibliográficas:


Processamento de Grandes Volumes de Dados

Carga Horária: 20

Professores: Ms. Francisco Pereira Junior & Dra. Rosangela de Fátima Pereira Marquesone

Objetivos: Relacionar o ecossistema da computação paralela e distribuída com o processamento massivo de grandes volumes de dados presente na ciência de dados. Apresentar e discutir os modelos e linguagens de programação para o processamento massivo de grandes volumes de dados. Comparar métodos de processamento analítico, paralelo e distribuído de dados. Criar soluções algorítmicas para problemas complexos utilizando sistemas paralelos e distribuídos. Classificar os conceitos acerca da computação em nuvem.

Programa: Principais elementos, ecossistema e a arquitetura de ambientes de computação paralela e distribuída. Paradigma de programação MapReduce na resolução de problemas com computação paralela e distribuídos. Sistemas paralelos e distribuídos: Apache Hadoop e Apache Spark. Linguagens de programação e de consultas para ambientes Hadoop e Spark (pySpark). Extensões do Apache Hadoop e Apache Spark. Conceitos fundamentais sobre computação em nuvem: Software como Serviço (SaaS), Plataforma como um Serviço (PaaS) e Infraestrutura como Serviço (IaaS). Ambientes de computação em nuvem: AWS, Azure, entre outros.

Referencias Bibliográficas:


Projeto Integrador

Carga Horária: 20

Professores: Dr. André Roberto Ortoncelli

Objetivos: Integrar os conhecimentos das demais disciplinas do curso em um único projeto

Programa: Redação de Projetos de Ciência de Dados. Planejamento de projetos em Ciência de Dados. Habilidades de comunicação eficazes para apresentar resultados aos diferentes públicos. Técnicas para apresentação de projetos de Ciência de Dados. Integração dos conhecimentos das demais disciplinas do curso.

Referencias Bibliográficas: