Escolar Documentos
Profissional Documentos
Cultura Documentos
Achiles Júnior
Super Resumo
Esta edição do Super Resumo é o arquivo 01 de uma série de 08 arquivos que cobrem todo o
conteúdo específico do edital conteúdo específico do edital de Analista Legislativo Atribuição:
Informática Legislativa da Câmara dos Deputados. Este arquivo cobre os assuntos “9 Ciência de
Dados - 9.2 Inteligência Artificial” do tópico de ARQUITETURA DE SISTEMAS DA INFORMAÇÃO.
Todo o conteúdo é focado no padrão de cobrança da banca FGV. Utilizamos uma abordagem concisa
e direta ao ponto para te ajudar a economizar tempo de estudo e ao mesmo tempo garantir pontos
importantes neste concurso.
Conheça nossa série de SUPER RESUMOS para a Reta Final – Câmara dos Deputados:
Conheça também nosso projeto de Questões Discursivas para a Câmara dos Deputados:
ARQUITETURA DE INFRAESTRUTURA DE
TECNOLOGIA DA INFORMAÇÃO E
COMUNICAÇÃO 4 Rede de Computadores. (Achiles) 6 12/10/2023
ARQUITETURA DE INFRAESTRUTURA DE
TECNOLOGIA DA INFORMAÇÃO E 5 Infraestrutura de Aplicações.
COMUNICAÇÃO (Achiles) 6 12/10/2023
ARQUITETURA DE INFRAESTRUTURA DE
TECNOLOGIA DA INFORMAÇÃO E
COMUNICAÇÃO 6 Banco de Dados. (Alexandre) 6 12/10/2023
ARQUITETURA DE INFRAESTRUTURA DE 7 Monitoramento de Infraestrutura
TECNOLOGIA DA INFORMAÇÃO E de Tecnologia da Informação e
COMUNICAÇÃO Comunicação. (Achiles) 6 12/10/2023
1 Sistemas de criptografia simétrica
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO e assimétrica. (Alexandre) 7 15/10/2023
2 Estruturas de gestão de riscos,
como NIST (National Institute of
Standards and Technology) RMF
(Risk Management Framework).
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO (Alexandre) 7 15/10/2023
3 Sistema de gestão de segurança
da informação, nos termos da
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO (Alexandre) 7 15/10/2023
4 Gerenciamento de Riscos em
Tecnologia da Informação e
Comunicação (TIC) de acordo com a
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO norma ISO/IEC 27005. (Alexandre) 7 15/10/2023
5 Avaliação de segurança em
produtos de Tecnologia da
Informação e Comunicação (TIC) de
acordo com a norma ISO/IEC 15408.
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO (Alexandre) 7 15/10/2023
6 Frameworks de segurança da
informação e segurança cibernética,
como MITRE ATT&CK, Cyber
Security Body Of Knowledge
(CyBOK) e NIST Cybersecurity
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO Framework. (Alexandre) 7 15/10/2023
7 Gestão de incidentes de
segurança, nos termos do NIST SP
800-61 e do SANS Incident
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO Handler’s Handbook. (Alexandre) 8 22/10/2023
8 Gestão de identidades e acesso;
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO (Alexandre) 8 22/10/2023
9 Múltiplos Fatores de Autenticação
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO (MFA). (Alexandre) 8 22/10/2023
10 Gestão de continuidade de
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO negócio. (Alexandre) 8 22/10/2023
11 Privacidade e segurança por
SEGURANÇA CIBERNÉTICA E DA INFORMAÇÃO padrão. (Alexandre) 8 22/10/2023
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Apresentação do Professor
Prof. Alexandre Martins
Telegram: t.me/profalexandremartins
Instagram: @prof_alexandremartins
Aprovações:
● Auditor Fiscal do Estado da Bahia (SEFAZ BA)
aprovado em 5º lugar na área de Tecnologia da Informação.
● Auditor Fiscal da Receita Estadual (SEFAZ MG)
aprovado em 44º lugar na área de Tecnologia da Informação.
@pratique.concursos
Você também pode nos enviar uma mensagem no Instagram @pratique.concursos e/ou um e-mail
para contato@pratiqueconcursos.com.br
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Sumário
1. Ciência de Dados ...................................................................................................... 8
2. Inteligência Artificial ................................................................................................. 8
2.1. Subcampos da Inteligência Artificial ..................................................................... 9
2.2. Considerações Éticas e Desafios na IA ............................................................... 9
2.3. Responsible AI (IA Responsável) ......................................................................... 9
2.4. Explainable AI (IA Explicável) .............................................................................10
2.5. Mapa Mental Inteligência Artificial .......................................................................10
3. Aprendizado de Máquina ........................................................................................ 11
3.1. Mapa Mental Aprendizado de Máquina ...............................................................12
4. Classificação ............................................................................................................12
4.1. Tipos de Classificação ........................................................................................12
4.2. Algoritmos de Classificação ................................................................................13
4.3. Mapa Mental Classificação .................................................................................14
4.4. Avaliação de Modelos de Classificação ..............................................................15
5. Regressão ................................................................................................................17
5.1. Regressão Linear ...............................................................................................18
5.2. Regressão Logística ...........................................................................................19
6. Regras de Associação .............................................................................................20
6.1. Algoritmos de Regra de Associação ...................................................................20
6.2. Métricas de Suporte e Confiança ........................................................................21
6.3. Algumas Aplicações e Limitações dos Algoritmos de Regras de Associação ......21
6.4. Diagrama Regras de Associação ........................................................................21
7. Agrupamento (Clusterização) .................................................................................22
7.1. Aplicações de Agrupamento (Clusterização).......................................................22
7.2. Principais Métodos de Agrupamento (Clusterização) ..........................................22
7.3. Tipos de Algoritmos de Agrupamento (Clusterização) .........................................23
7.4. Diagrama de Tipos de Algoritmos de Agrupamento (Clusterização) ....................23
7.5. Tabela Algoritmos de Agrupamento ....................................................................24
8. Redução de Dimensionalidade ...............................................................................25
8.1. Outras Técnicas de Redução de Dimensionalidade ............................................25
8.2. Tabela Redução de Dimensionalidade ................................................................26
9. Redes Neurais Artificiais .........................................................................................26
9.1. Arquitetura ..........................................................................................................26
9.2. Funções de Ativação ..........................................................................................27
9.3. Otimização..........................................................................................................27
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
1. Ciência de Dados
A ciência de dados é um campo interdisciplinar que utiliza métodos, processos, algoritmos e
sistemas para extrair conhecimento e insights a partir de dados estruturados e não estruturados. Ela
combina técnicas de estatística, análise de dados, aprendizado de máquina e visualização de dados
para ajudar a tomar decisões informadas e resolver problemas complexos. Algumas etapas do
processo de ciência de dados envolvem:
• Coleta de Dados: A coleta de dados é o processo de reunir informações relevantes para o
problema em questão. Isso pode envolver a obtenção de dados de várias fontes, como bancos
de dados, APIs, arquivos CSV, planilhas ou até mesmo a coleta manual de informações. A
qualidade dos dados coletados é fundamental para a eficácia da análise subsequente e a
tomada de decisões.
• Limpeza e Preparação de Dados: Uma vez coletados, os dados geralmente precisam ser
limpos e preparados para análise. Isso pode incluir a remoção de dados duplicados, a correção
de erros de digitação, a conversão de formatos de dados e a manipulação de dados ausentes.
A preparação de dados também pode envolver a engenharia de recursos, que é o processo de
criar novas variáveis a partir dos dados existentes para melhorar a análise e a modelagem.
• Análise Exploratória de Dados: A análise exploratória de dados é uma abordagem para
analisar conjuntos de dados para resumir suas características principais, geralmente com
métodos visuais. A AED é usada para identificar padrões, tendências e relações nos dados,
bem como para detectar anomalias e outliers. Isso pode envolver a criação de gráficos, como
histogramas, gráficos de dispersão e gráficos de caixa, e o cálculo de estatísticas descritivas,
como média, mediana, moda e desvio padrão.
• Aprendizado de Máquina: O aprendizado de máquina é um subcampo da inteligência artificial
que envolve o desenvolvimento de algoritmos que podem aprender a partir de e fazer previsões
ou tomar decisões com base em dados. Na ciência de dados, o aprendizado de máquina é
usado para criar modelos preditivos e classificatórios, bem como para identificar padrões e
estruturas nos dados. Existem três tipos principais de aprendizado de máquina:
o Aprendizado supervisionado: O algoritmo é treinado em um conjunto de dados
rotulado, onde a variável de interesse (ou "alvo") é conhecida. Exemplos de algoritmos
de aprendizado supervisionado incluem regressão linear, árvores de decisão e
máquinas de vetores de suporte.
o Aprendizado não supervisionado: O algoritmo é treinado em um conjunto de dados não
rotulado, onde a variável de interesse não é conhecida. Exemplos de algoritmos de
aprendizado não supervisionado incluem clustering (agrupamento), como o K-means,
e redução de dimensionalidade, como a análise de componentes principais (PCA).
o Aprendizado por reforço: O algoritmo aprende a tomar decisões com base em
recompensas e punições, a fim de maximizar algum objetivo de longo prazo. Exemplos
de algoritmos de aprendizado por reforço incluem Q-learning e Deep Q-Networks
(DQNs).
• Visualização de Dados: A visualização de dados é a representação gráfica de informações e
dados. Ela usa elementos visuais, como gráficos, mapas e gráficos, para exibir informações
complexas de maneira clara e intuitiva. A visualização de dados é uma parte importante da
ciência de dados, pois ajuda a comunicar os resultados da análise e a tomar decisões
informadas.
• Comunicação dos Resultados: A comunicação dos resultados permite que os tomadores de
decisão compreendam os insights obtidos a partir da análise e os apliquem em suas estratégias
e processos de negócios. O processo pode envolver a criação de relatórios, apresentações,
painéis interativos ou outras formas de comunicação visual. A comunicação eficaz dos
resultados requer habilidades de narrativa e design, bem como a capacidade de adaptar a
mensagem ao público-alvo.
2. Inteligência Artificial
8 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
A Inteligência Artificial (IA) é o ramo da ciência da computação que visa simular a capacidade
humana de raciocinar, perceber, aprender, comunicar e tomar decisões. Basicamente, a IA é a teoria
e o desenvolvimento de sistemas de computador capazes de executar tarefas que normalmente
requerem inteligência humana.
O livro "Artificial Intelligence: A Modern Approach", de Peter Norvig e Stuart Russell,
descreve quatro objetivos principais da IA:
• Criar sistemas que agem como humanos: Isso envolve automação de atividades associadas
ao pensamento humano, como tomada de decisão, resolução de problemas, aprendizado e
adaptação.
• Criar sistemas que pensam como humanos: Esta é a área do estudo da inteligência artificial
que se relaciona com a psicologia. Trata-se de construir sistemas que reproduzem a cognição
humana.
• Criar sistemas que agem racionalmente: Envolve a criação de sistemas que agem de
maneira ideal, ou seja, agem de forma a atingir o melhor resultado possível.
• Criar sistemas que pensam racionalmente: Este objetivo envolve a criação de sistemas que
são capazes de simular o pensamento lógico racional.
9 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
10 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
3. Aprendizado de Máquina
11 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
4. Classificação
A classificação é uma das tarefas fundamentais no aprendizado de máquina (machine
learning) e consiste em atribuir uma categoria ou classe a um objeto ou instância com base em suas
características. A classificação é um tipo de aprendizado supervisionado, o que significa que o
algoritmo de aprendizado é treinado com um conjunto de dados rotulados, onde cada instância possui
uma classe conhecida.
12 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
13 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
problemas de performance em
classificação não linear. conjuntos de dados
grandes.
Boa performance em
problemas de Pode sofrer com a
Modelo que encontra o hiperplano
classificação não linear, presença de outliers,
SVM que melhor separa os dados de
pode lidar com pode ser difícil de
diferentes classes.
conjuntos de dados interpretar.
grandes.
Boa performance em
Pode ser difícil de
Modelo que simula o funcionamento problemas de
Redes interpretar, pode sofrer
do cérebro humano para classificar classificação não linear
Neurais com a presença de
dados. e em conjuntos de
atributos irrelevantes.
dados grandes.
14 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
15 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
4.4.1. Acurácia
A acurácia é a proporção de previsões corretas em relação ao total de previsões feitas. Para
calcular a acurácia, usamos a fórmula:
4.4.2. Precisão
A precisão é a proporção de verdadeiros positivos em relação à soma de verdadeiros positivos
e falsos positivos. Para calcular a precisão, usamos a fórmula:
4.4.3. Recall
O recall, também conhecido como sensibilidade ou taxa de verdadeiros positivos, é a proporção
de verdadeiros positivos em relação à soma de verdadeiros positivos e falsos negativos. Para calcular
o recall, usamos a fórmula:
16 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
• Seleção de modelos:
5. Regressão
Regressão Linear e Regressão Logística são duas das técnicas de regressão. A seguir,
apresentamos detalhes sobre estas duas técnicas.
17 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
18 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
5.2.1. Conceitos-chave
A seguir, apresentamos alguns conceitos-chave relacionados a Regressão Logística.
f(x) = 1 / (1 + e^(-x))
A função logística é usada na regressão logística para transformar a saída do modelo linear em
uma probabilidade.
y = b0 + b1 * x1 + b2 * x2 + ... + bn * xn
19 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Onde p(y=1) é a probabilidade da variável dependente ser igual a 1, e os demais termos são
os mesmos que no modelo linear.
5.2.2. Otimização
A otimização dos coeficientes na regressão logística é geralmente feita usando o algoritmo
de Gradiente Descendente (Gradient Descent) ou alguma variação dele, como o Gradiente
Descendente Estocástico (Stochastic Gradient Descent) ou o Mini-Batch Gradient Descent.
Esses algoritmos atualizam iterativamente os coeficientes para minimizar a função de custo.
6. Regras de Associação
As regras de associação são um método popular de mineração de dados utilizado para
identificar padrões e relações entre itens ou eventos em grandes conjuntos de dados. Um exemplo de
utilização é a análise de cestas de compras, que visa descobrir quais produtos são frequentemente
comprados juntos.
As regras de associação são representadas na forma X ⇒ Y, onde X e Y são conjuntos de
itens. A regra indica que, quando os itens em X ocorrem juntos, os itens em Y também ocorrem
frequentemente. Por exemplo, uma regra de associação como {fraldas} ⇒ {cerveja} sugere que as
pessoas que compram fraldas também tendem a comprar cerveja.
A seguir, abordaremos os principais tópicos relacionados às regras de associação.
20 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
a necessidade de varrer o conjunto de dados várias vezes. O Eclat também utiliza a técnica
de interseção de transações para calcular o suporte, o que é mais eficiente do que contar as
ocorrências de conjuntos de itens.
O algoritmo FP-Growth é outra abordagem eficiente para encontrar conjuntos de itens
frequentes. Ele constrói uma estrutura de dados chamada FP-tree (Frequent Pattern tree) a partir do
conjunto de dados, que armazena informações sobre conjuntos de itens frequentes de forma compacta.
O algoritmo, então, explora a FP-tree para encontrar conjuntos de itens frequentes sem a necessidade
de varrer o conjunto de dados várias vezes ou gerar candidatos a conjuntos de itens, como no Apriori.
21 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
7. Agrupamento (Clusterização)
A Técnica de Agrupamentos, também conhecida como Clusterização, é uma técnica de
aprendizado não supervisionado utilizada em mineração de dados e inteligência artificial. Seu principal
objetivo é dividir um conjunto de dados em grupos (clusters) de forma que os elementos dentro de um
mesmo grupo sejam mais semelhantes entre si do que com os elementos de outros grupos. Essa
semelhança é geralmente medida por meio de uma função de distância, como a distância euclidiana,
manhattan ou outras. Observação: em concursos, ambos os termos (agrupamento e clusterização) são
amplamente utilizados.
22 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
23 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Constrói uma hierarquia de grupos, onde cada grupo é formado pela união de
Hierarchical grupos menores. Pode ser aglomerativo (começa com cada ponto como um
clustering grupo e une os mais próximos) ou divisivo (começa com todos os pontos em
um grupo e divide em grupos menores).
Encontra grupos densos de pontos, definidos por uma distância máxima entre
DBSCAN
eles. Pontos que não pertencem a nenhum grupo são considerados outliers.
24 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Algoritmo Descrição
Misturas Gaussianas Modela os dados como uma mistura de distribuições gaussianas, onde cada
(Gaussian Mixture distribuição representa um grupo. A probabilidade de cada ponto pertencer a
Models) cada grupo é calculada.
8. Redução de Dimensionalidade
A redução de dimensionalidade é um conjunto de técnicas que é usado para reduzir a
quantidade de dados a serem processados, minimizando a perda de informações. É especialmente útil
para modelagem preditiva e visualização de dados.
Conjunto de dados (datasets) grandes e complexos podem ter centenas ou mesmo milhares
de dimensões, tornando o processamento e a análise de dados desafiadores. Isso é conhecido como
a maldição da dimensionalidade. Reduzir o número de dimensões pode acelerar o processamento e
simplificar a visualização dos dados, além de poder ajudar a mitigar o overfitting.
Ao considerar a redução de dimensionalidade, é importante lembrar que, embora essas
técnicas possam melhorar a eficiência, também há um risco de perda de informações. Portanto, a
escolha da técnica de redução de dimensionalidade deve ser cuidadosamente feita, com base nas
características específicas do dataset e no objetivo da análise de dados.
Existem duas principais técnicas de redução de dimensionalidade: técnicas de seleção de
recursos e técnicas de extração de recursos.
• Seleção de Recursos: envolve escolher um subconjunto das variáveis de entrada originais.
As técnicas incluem:
o Métodos univariados (usando estatísticas para avaliar a importância de cada recurso
individualmente)
o Métodos recursivos (usando um modelo para avaliar a importância dos recursos e
eliminar os menos importantes)
o Métodos de regularização (usando um modelo que inclui um termo de penalidade para
reduzir a importância dos recursos)
• Extração de Recursos: envolve a transformação do espaço de entrada, criando um novo
subconjunto de recursos a partir dos recursos originais. As técnicas incluem:
o Análise de Componentes Principais (PCA): PCA é uma técnica de redução de
dimensionalidade linear que procura maximizar a variância e minimizar a perda de
informações. Ele transforma os recursos originais em um novo conjunto de recursos
chamados componentes principais.
o Análise de Discriminante Linear (LDA): LDA é uma técnica de redução de
dimensionalidade que é usada principalmente para problemas de classificação.
Diferentemente do PCA, que ignora a classe dos objetos, o LDA busca maximizar a
separação entre as classes.
o Mapeamento auto-organizável (SOM): SOM é uma técnica de redução de
dimensionalidade não linear que procura preservar as relações topológicas dos dados
originais.
25 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Análise
Busca encontrar um subespaço que maximize a Útil para problemas de
Discriminante
separação entre várias classes nos dados. classificação.
Linear (LDA)
9.1. Arquitetura
26 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
9.3. Otimização
Os métodos de otimização buscam ajustar os pesos da RNA de modo a minimizar o erro entre
as saídas previstas e as desejadas.
• Método do Gradiente: O método do gradiente atualiza os pesos em direção oposta ao
gradiente da função de custo com relação aos pesos, usando uma taxa de aprendizado fixa.
• Método do Gradiente Estocástico: No método do gradiente estocástico, os pesos são
atualizados a cada exemplo de treinamento, ao contrário do método do gradiente que usa todo
o conjunto de treinamento.
• Backpropagation: O backpropagation é um método utilizado para calcular o gradiente da
função de erro com respeito a cada peso da RNA. Ele propaga o erro da saída para trás, através
da rede, atualizando os pesos.
27 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
representações de dados. O termo "deep" refere-se à quantidade de camadas ocultas em uma rede
neural, que pode ser grande, permitindo que o modelo aprenda representações mais complexas e
abstratas dos dados.
O Deep Learning tem sido aplicado com sucesso em uma ampla variedade de problemas e
domínios, incluindo:
• Reconhecimento de imagem: Classificação de imagens, detecção de objetos e segmentação
semântica.
• Processamento de linguagem natural: Tradução automática, geração de texto e análise de
sentimentos.
• Reconhecimento de voz: Transcrição de áudio e assistentes virtuais.
• Previsão de séries temporais: Previsão de demanda e análise de tendências.
• Reforço de aprendizado: Controle de robôs e jogos.
28 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
A visão computacional tem uma ampla gama de aplicações em diversos campos, incluindo:
• Medicina: Análise de imagens médicas para diagnóstico e tratamento.
• Automóveis autônomos: Detecção e rastreamento de objetos, como pedestres e outros
veículos, para navegação segura.
• Robótica: Navegação e manipulação de objetos por robôs.
• Reconhecimento facial: Identificação e verificação de pessoas com base em suas
características faciais.
• Inspeção industrial: Detecção de defeitos e monitoramento de processos de fabricação.
• Análise de vídeo: Rastreamento de objetos e análise de comportamento em vídeos de
vigilância ou esportes.
29 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
o Filtragem: Aplicar filtros para suavizar a imagem, remover ruídos ou realçar bordas.
• Detecção de Características: o processo de identificar pontos de interesse ou padrões
distintos em uma imagem. Essas características podem ser usadas para comparar e
reconhecer objetos, bem como para rastrear seu movimento ao longo do tempo. Alguns
exemplos de características incluem:
o Pontos de interesse: Pontos na imagem que são facilmente detectáveis e têm uma
aparência única, como cantos ou pontos de interseção de bordas.
o Descritores de textura: Medidas estatísticas ou estruturais que descrevem a
aparência de uma região da imagem, como a rugosidade ou a orientação das bordas.
• Segmentação de Imagens: o processo de dividir uma imagem em várias regiões
homogêneas, geralmente com base em propriedades como cor, intensidade ou textura. O
objetivo é simplificar a representação da imagem e facilitar a análise posterior. Algumas
técnicas comuns de segmentação incluem:
o Limiarização: Separar os pixels da imagem com base em um valor de intensidade de
limiar.
o Segmentação baseada em região: Agrupar pixels com base em critérios de
similaridade, como cor ou textura.
o Segmentação baseada em borda: Detectar bordas entre regiões e usar essas bordas
para dividir a imagem.
• Reconhecimento de Objetos: a tarefa de identificar e classificar objetos em uma imagem.
Isso geralmente envolve a comparação de características extraídas da imagem com um
conjunto de modelos ou exemplos conhecidos. Algumas abordagens comuns para o
reconhecimento de objetos incluem:
o Correspondência de características: Comparar as características da imagem com
as características de objetos conhecidos e encontrar a melhor correspondência.
o Aprendizado de máquina: Treinar um modelo de classificação, como uma rede
neural, para reconhecer objetos com base em exemplos rotulados.
30 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
31 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
• Tradução automática: Traduz texto ou fala de um idioma para outro usando algoritmos de
aprendizado de máquina.
• Resumo automático: Gera um resumo conciso de um texto maior, mantendo as informações
mais importantes.
• Classificação de texto: Categoriza textos com base em seu conteúdo, como análise de
sentimentos ou detecção de spam.
• Reconhecimento de fala: Converte a fala humana em texto para que possa ser processado
por algoritmos de PLN.
• Síntese de fala: Transforma texto em fala para que possa ser reproduzido por um dispositivo
de áudio.
32 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
33 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
34 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
por uma nova camada que é adequada para o seu problema. Por exemplo, se você está
trabalhando em um problema de classificação binária, você pode substituir a última camada
por uma camada de saída com uma única unidade e uma função de ativação sigmóide.
• Treinamento do modelo: Finalmente, você precisa treinar o modelo no seu conjunto de dados.
No entanto, em vez de treinar todo o modelo, você geralmente só treina a última camada (ou
as últimas camadas) do modelo. Isso é porque as camadas anteriores do modelo já foram
treinadas para extrair características úteis dos dados, e você só precisa treinar a última camada
para mapear essas características para as suas classes de saída.
14. Python
Python é uma linguagem de programação de alto nível, interpretada, de script, imperativa,
orientada a objetos, funcional, de tipagem dinâmica e forte. Possui um modelo de desenvolvimento
comunitário, aberto e gerenciado pela organização sem fins lucrativos Python Software Foundation.
A linguagem é conhecida por sua sintaxe clara e legível, que torna a linguagem fácil de
aprender e usar. Suporta múltiplos paradigmas de programação, incluindo programação procedural,
orientada a objetos e funcional. Python também possui uma biblioteca padrão grande e
abrangente.
Python pode ser facilmente instalado em diferentes sistemas operacionais. A instalação padrão
inclui o interpretador Python e a biblioteca padrão. Para programadores que desejam um ambiente
de desenvolvimento mais robusto, existem várias IDEs (Integrated Development Environments)
disponíveis para Python, como PyCharm, Jupyter Notebook e VSCode.
A seguir, apresentamos uma tabela resumo com uma visão geral sobre a linguagem Python.
Aspecto Descrição
Python possui uma grande biblioteca padrão que inclui áreas como protocolos de
Bibliotecas internet, processamento de strings, interfaces de sistema operacional e interfaces de
usuário.
Python tem uma grande comunidade de desenvolvedores, o que significa que você
Comunidade
pode encontrar uma grande quantidade de recursos e ajuda online.
35 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
for i in range(5):
print(i) # Isso está identado
numero = 10
if numero > 5:
print("Maior que 5") # Identado sob o if
elif numero == 5:
print("Igual a 5") # Identado sob o elif
else:
print("Menor que 5") # Identado sob o else
def minha_funcao():
print("Olá, mundo!") # Identado sob a definição da função
minha_funcao()
for i in range(3):
for j in range(3): # Identado sob o primeiro loop for
print(i, j) # Identado sob o segundo loop for
for i in range(3):
print(i) # Erro! Deveria estar identado
36 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Armazenamento de coleções
list Lista ordenada e mutável lista = [1, 2, 3]
ordenadas
Soma x = 5 + 3 # Resultado: 8
Subtração x = 5 - 3 # Resultado: 2
Divisão x = 4 / 2 # Resultado: 2
Multiplicação x = 5 * 3 # Resultado: 15
37 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
Conversão em
Maiúsculas maiuscula = "Python".upper() # "PYTHON"
Conversão em
Minúsculas minuscula = "Python".lower() # "python"
idade = 18
if idade >= 18:
print("Adulto")
else:
print("Menor de idade")
for i in range(5):
print(i)
for i in range(5):
print(i)
# Saída:
# 0
# 1
# 2
# 3
# 4
38 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
contador = 0
while contador < 5:
print(contador)
contador += 1
for i in range(5):
if i == 3:
break
print(i)
for i in range(5):
if i == 3:
continue
print(i)
39 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
if True:
pass # Passar a execução para o próximo passo sem executar nada
class Pessoa:
def __init__(self, nome, idade):
self.nome = nome
self.idade = idade
class Pessoa:
def __init__(self, nome, idade):
self._nome = nome # Protegido
self.__idade = idade # Privado
14.8. Métodos
Os métodos são funções que são definidas dentro de uma classe. Eles são usados para definir
os comportamentos dos objetos. Os métodos são acessados usando a notação de ponto.
Em Python, uma função é um bloco de código reutilizável que realiza uma ação específica.
Python tem muitas funções integradas, como print() e len(), e também permite que os programadores
definam suas próprias funções.
class Pessoa:
def __init__(self, nome, idade):
self.nome = nome
self.idade = idade
def apresentar(self):
40 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
14.9. Herança
A herança é um recurso de programação orientada a objetos que permite que uma classe
herde atributos e métodos de outra classe. A classe que está sendo herdada é chamada de classe
base ou classe pai, e a classe que herda é chamada de classe derivada ou classe filha.
class Estudante(Pessoa):
def __init__(self, nome, idade, curso):
super().__init__(nome, idade)
self.curso = curso
14.10. Polimorfismo
O polimorfismo é um recurso de programação orientada a objetos que permite que um objeto
seja tratado de várias formas. Em Python, o polimorfismo permite que usemos uma única interface com
diferentes tipos de objetos.
class Animal:
def falar(self):
pass
class Cachorro(Animal):
def falar(self):
return "Au Au"
class Gato(Animal):
def falar(self):
return "Miau"
Neste exemplo, tanto Cachorro quanto Gato têm um método chamado falar, mas eles retornam
resultados diferentes. Isso é polimorfismo.
Para acessar elementos de um array, você pode usar o índice do elemento. Por
exemplo, a[1] retornará o segundo elemento do array a.
Para modificar um elemento de um array, você pode usar o índice do elemento. Por
exemplo, a[1] = 5.5 modificará o segundo elemento do array a para 5.5.
41 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
14.11.2. Lista
A Lista, por sua vez, é uma estrutura de dados que pode armazenar valores de diferentes tipos.
Para ordenar uma lista, você pode usar o método sort().
Por exemplo, se você tem a lista a = [3, 1, 4, 1, 5, 9], você pode ordená-la com a.sort(). Depois
disso, a será [1, 1, 3, 4, 5, 9].
O método sort() ordena a lista em ordem crescente por padrão. Se você quiser ordenar a lista
em ordem decrescente, você pode usar a.sort(reverse=True).
14.11.3. Dicionário
O dicionário, outra estrutura de dados, armazena pares de chave-valor.
Para criar um dicionário, você pode usar chaves {} ou a função dict(). Por exemplo, d =
{'nome': 'João', 'idade': 30} ou d = dict(nome='João', idade=30).
Para acessar um valor em um dicionário, você pode usar a chave correspondente. Por
exemplo, d['nome'] retornará 'João'.
Para modificar um valor em um dicionário, você pode usar a chave correspondente. Por
exemplo, d['idade'] = 31 modificará a idade de João para 31.
def fibonacci(n):
a, b = 0, 1
for i in range(n):
a, b = b, a + b
return a
Este código define uma função chamada fibonacci que aceita um número n e retorna o n-ésimo
número na sequência de Fibonacci. A função usa um loop for para iterar n vezes. Em cada iteração,
42 de 43
Super Resumo Câmara dos Deputados Prof. Alexandre Martins e Prof. Achiles Júnior
ela calcula o próximo número na sequência (a + b) e atualiza a e b para serem os próximos dois
números na sequência.
43 de 43