Prévia do material em texto
Gabarito do Simulado Preparatório para Prova do 
1º Bimestre 
 
Questão 1 - Conceitos de Inteligência Artificial 
 
Em relação à aplicação adequada das técnicas de Inteligência Artificial, avalie as afirmações a seguir. 
 
I. Indução em Árvore de Decisão é utilizada para identificação de fraudes em cartões de crédito. 
 
II. Redes Neurais Artificiais são utilizadas no desenvolvimento de sistemas de análise de risco em aplicações 
financeiras. 
 
III. Sistemas Especialistas baseados em regras são utilizados no desenvolvimento de sistemas de diagnóstico de 
falhas em hardware. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I, apenas. 
 
B) 
III, apenas. 
 
C) 
I e II, apenas. 
 
D) 
II e III, apenas. 
 
E) 
I, II e III. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Questão 2 - Conceitos de Inteligência Artificial 
 
Grupos de cientistas e grandes corporações de todo o mundo têm buscado desenvolver sistemas computacionais 
inteligentes capazes de ajudar as pessoas a aprenderem. As possibilidades, os efeitos e as implicações éticas da 
aplicação da chamada Inteligência Artificial (IA) na educação são temas que vêm ganhando espaço nos debates na 
área de tecnologia educacional em todo o mundo. 
 
Disponível em: . Acesso em: 26 set. 2017 (adaptado). 
 
A respeito da adoção de técnicas de IA no processo educacional, avalie as asserções a seguir e a relação proposta 
entre elas. 
 
I. Algoritmos de IA adaptativos podem auxiliar a experiência de aprendizado da pessoa de acordo com o seu perfil. 
 
PORQUE 
 
II. Os sistemas com algoritmos de IA adaptativos analisam respostas anteriores, buscando determinados padrões 
que possam indicar pontos de dificuldade ou facilidade da pessoa em relação a determinado assunto. 
 
A respeito dessas asserções, assinale a opção correta. 
 
Alternativas 
A) 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I. 
 
B) 
 As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I. 
 
C) 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
 
D) 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
 
E) 
As asserções I e II são proposições falsas. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Questão 3 - Aprendizagem de redes neurais 
 
 
A Rede Neural Artificial (RNA) é uma abordagem utilizada para aprendizado computacional e possui motivação 
biológica na representação simbólica realizada pelo córtex cerebral, área rica em neurônios e é resposável por agir 
ou reagir frente a estímulos sensitivos, mecânicos ou cognitivos. Um dos modelos utilizados para representar esta 
abordagem é o Perceptron, criado em 1957 por Frank Rosenblatt. 
 
Sobre o Perceptron, avalie as afirmações a seguir. 
 
I. É um modelo recomendado para problemas onde existe uma classificação binária. 
 
II. Os ajustes aplicados para adequação do aprendizado são realizados nos valores de entrada da rede. 
 
III. As épocas representam os ciclos realizados durante o treinamento da rede. 
 
IV. Possui uma boa taxa de acurácia para classes não linearmente separáveis. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
I e III, apenas. 
 
C) 
I, II e III, apenas. 
 
D) 
I, III e IV, apenas. 
 
E) 
II, III e IV, apenas. 
 
 
Questão 4 - Sistema de aprendizagem de máquina 
 
 
O modelo de Árvore de Decisão é um exemplo que pode ser aplicado em aprendizado indutivo. Para isso, utiliza-se 
um conjunto prévio de dados classificados para treinamento e um outro conjunto para testar sua classificação. Em 
cada nó interno da árvore, há um teste sobre determinado atributo e, nas folhas, há as classes. 
 
Considerando os paradigmas existentes de aprendizado, a Árvore de Decisão é um modelo que é classificado como 
 
Alternativas 
A) 
evolutivo. 
 
B) 
 
 
conexionista. 
 
C) 
simbólico 
 
D) 
estatístico. 
 
E) 
baseado em exemplos. 
 
 
Questão 5 - Seleção de características 
 
 
Tratar imagens é um processo importante para possibilitar a classificação e a seleção de características relevantes 
de uma imagem. Aplicada na área de Processamento de Imagens Digitais (PDI), a resolução radiométrica é 
 
Alternativas 
A) 
uma técnica utilizada para transformar imagens coloridas em imagens pretas e brancas. 
 
B) 
uma técnica para a realização de cortes na imagem, com o objetivo de simplificar a identificação de pontos de 
interesse nela. 
 
C) 
uma forma de otimizar a variação de características de uma imagem, utilizando escala de cores RGB, totalizando 
mais de 16 milhões de variações de cores. 
 
D) 
uma técnica para variar as características de uma imagem, utilizando escala de variação da tonalidade cinza, 
totalizando 128 variações. 
 
E) 
uma forma de otimizar a variação de características de uma imagem, utilizando escala de variação da tonalidade 
cinza, totalizando 256 variações. 
 
 
Questão 6 - Aprendizagem supervisionada 
 
No ramo da Inteligência Artificial, existem diversas propostas para construção de classificadores sob a perspectiva da 
aprendizagem supervisionada. Sobre a aprendizagem supervisionada, julgue os itens a seguir. 
 
I. O conjunto de treinamento é utilizado como base para classificação de novos dados. 
II. A capacidade de se estabelecer a existência de classes é realizada por meio de um conjunto de dados 
apresentado ao modelo. 
III. As observações no treinamento possuem indicadores (em inglês, labels) para determinar a qual classe um 
indicador pertence. 
 
É CORRETO o que se afirma em 
 
 
 
Alternativas 
A) 
I, apenas. 
 
B) 
II, apenas. 
 
C) 
I e II, apenas. 
 
D) 
I e III, apenas. 
 
E) 
II e III, apenas. 
 
 
Questão 7 - Sistemas multiagentes 
 
 
Um software com uma comunidade de Agentes é chamado de Sistema Multiagente 
(SMA). Esses agentes podem trabalhar juntos para resolver uma tarefa ou mesmo 
competirem entre si. A plataforma de agentes FIPA (Foundation for Intelligent Physical 
Agents) define algumas especificações para desenvolvimento de SMA. 
 
Diante disso, avalie as assertivas a seguir, referentes a componentes arquiteturais 
necessários para se implementar um SMA. 
 
I. É obrigatório um serviço de comunicação entre agentes, de forma que eles possam 
comunicar diretamente entre si ou por meio de serviços disponibilizados em um 
catálogo (Páginas Amarelas). 
 
II. É obrigatório um gerenciamento do ciclo de vida dos agentes, para controlar os 
agentes que são criados, os que estão em execução e os que já terminaram a 
execução na plataforma. 
 
 
 
III. É obrigatório um componente que permita a interação com o ser humano, para que 
este possa gerenciar manualmente os agentes e a execução das tarefas. 
 
Está correto o que se afirma em: 
 
Alternativas 
A) 
I, apenas. 
 
B) 
I e II, apenas. 
 
C) 
I e III, apenas. 
 
D) 
II e III, apenas. 
 
E) 
I, II e III. 
 
 
 
 
 
Questão 8 - Web semântica: ontologias 
 
A internet tornou-se um enorme banco de dados com muitas informações de todas as áreas. Hoje, ao realizar uma 
busca, se não deixá-la muito bem refinada, torna-se difícil encontrar soluções para determinados assuntos devido ao 
grande volume de informações que virão como resultado. Para agilizar o processo de buscas e organizar este grande 
banco de dados, os sistemas de pesquisas estão cada vez mais trabalhando para que, ao ser realizada uma 
determinada busca por palavra-chave, o sistema possa retornar as informações para o usuário baseado no 
conhecimento da palavra-chave. Contudo, quando um usuário acessa um sistema de busca hoje e não mais digita uma 
palavra-chave e sim uma frase, como: “reservar hotel em fortaleza com valor abaixo de R$ 2.000,00”, o sistema de 
busca irá utilizar qual meio de tecnologia para trazer os resultados relevantes desta busca? 
 
Alternativas 
A) 
Sistemas Inteligentes em .NET. 
 
B) 
Realidade Aumentada. 
 
C) 
Web Semântica. 
 
D) 
XHTML. 
 
E) 
Princípios de buscas avançadas. 
 
 
Questão 9 - Web semântica: ontologiasOutras linguagens de 
programação utilizam inúmeras marcações, como ponto (.) ou ponto e vírgula (;), no fim de cada linha, além dos 
marcadores de início e fim de bloco como chaves ({ }) ou palavras especiais (begin/ end). Esses marcadores tornam 
os programas um tanto mais difíceis de ler e felizmente não são usados em Python. 
 
MENEZES, Nilo Ney Coutinho. Introdução à programação com Python: algoritmos e lógica de programação para 
iniciantes. São Paulo: Novatec, 2010. 
 
Tendo como base o texto lido, analise a situação hipotética a seguir. 
 
 
 
Paula, diretora de uma escola da rede privada no interior de Minas Gerais, precisa desenvolver um programa em 
Python para cadastrar alunos. O programa deve incluir uma funcionalidade que informa se o aluno é maior ou menor 
de idade. 
 
Considerando o contexto apresentado e a sintaxe e semântica da linguagem Python, assinale a alternativa que 
melhor representa a solução para o problema proposto. 
 
Alternativas 
A) 
 
idade = int(input("Informe a idade do aluno: ")) 
if idade >= 18: 
 print("O aluno é maior de idade.") 
else: 
 print("O aluno é menor de idade.") 
 
 
B) 
 
idade = int(input("Informe a idade do aluno: ")) 
if idade >= 18: 
 printf("O aluno é maior de idade.") 
elseif: 
 printf("O aluno é menor de idade.") 
 
 
 
 
C) 
 
idade = float(input("Informe a idade do aluno: ")) 
elif idade >= 18: 
 printf("O aluno é maior de idade.") 
if: 
 printf("O aluno é menor de idade.") 
 
 
D) 
 
idade = float(input("Informe a idade do aluno: ")) 
if idade >= 18: 
 print("O aluno é maior de idade.") 
if: 
 print("O aluno é menor de idade.") 
 
E) 
 
idade = float(print("Informe a idade do aluno: ")) 
Se idade >= 18: 
 print("O aluno é maior de idade.") 
Senao: 
 print("O aluno é menor de idade.") 
 
 
Questão 48 - machine learning 
 
Imagine que você tem um conjunto de dados com características de animais (como peso e altura) e deseja classificar 
novos animais como "gato" ou "cachorro" usando o algoritmo k-Nearest Neighbors (k-NN). Explique como você poderia 
fazer isso usando a biblioteca do Scikit-Learn. Em sua resposta, aborde: 
a. Passos Básicos: Quais são os passos principais que você seguiria para usar o k-NN com a Scikit-Learn 
nesse cenário? 
b. Treinamento e Previsão: Como você treinaria o modelo e utilizaria ele para classificar novos animais? 
c. Interpretação dos Resultados: O que significa quando o modelo diz que um novo animal é "mais parecido" 
com gatos ou cães? 
 
Passos Básicos com k-NN no Scikit-Learn 
1. Coleta e Preparação dos Dados 
o Montar um dataset com características numéricas dos animais (ex.: peso, altura, comprimento das 
orelhas etc.). 
o Criar o vetor de atributos (X) e o vetor de rótulos (y), onde cada rótulo indica se o animal é gato ou 
cachorro. 
2. Divisão do Conjunto de Dados 
o Separar os dados em treino e teste (ex.: 70% para treino, 30% para teste), usando train_test_split. 
3. Escolha do Modelo k-NN 
o Usar KNeighborsClassifier da biblioteca scikit-learn. 
o Definir o valor de k (número de vizinhos mais próximos a considerar). 
4. Treinamento do Modelo 
o Ajustar o modelo com os dados de treino. 
5. Avaliação do Modelo 
o Testar o modelo com o conjunto de teste e medir a acurácia ou matriz de confusão. 
 
Treinamento e Previsão 
Exemplo de código simples: 
from sklearn.model_selection import train_test_split 
from sklearn.neighbors import KNeighborsClassifier 
from sklearn.metrics import accuracy_score 
 
# Exemplo de dataset (peso e altura dos animais) 
X = [[4.5, 30], [5.0, 32], [20.0, 60], [22.0, 58]] # características 
 
 
y = ["gato", "gato", "cachorro", "cachorro"] # rótulos 
 
# Divisão em treino e teste 
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42) 
 
# Criar modelo k-NN com k=3 
knn = KNeighborsClassifier(n_neighbors=3) 
 
# Treinamento 
knn.fit(X_train, y_train) 
 
# Previsão para novos animais 
novo_animal = [[6.0, 35]] # exemplo: peso=6kg, altura=35cm 
classe_predita = knn.predict(novo_animal) 
 
print("O novo animal foi classificado como:", classe_predita[0]) 
 
# Avaliação no conjunto de teste 
y_pred = knn.predict(X_test) 
print("Acurácia:", accuracy_score(y_test, y_pred)) 
 
Interpretação dos Resultados 
• O k-NN funciona comparando o novo exemplo com os exemplos já conhecidos no conjunto de treino. 
• Quando o modelo diz que um animal é "gato", isso significa que a maioria dos k vizinhos mais próximos no 
espaço de características (peso, altura etc.) são gatos. 
• De forma análoga, se a maioria dos vizinhos for de cães, o animal será classificado como "cachorro". 
 
 
• Em outras palavras, a classificação depende da semelhança (distância euclidiana, geralmente) entre o novo 
ponto e os dados existentes. 
 
Questão 49 - machine 
 
Pedro tem um conjunto de dados de casas, com informações como área, número de quartos e localização, e deseja 
prever o preço das casas utilizando a Regressão Linear com a biblioteca Scikit-Learn. Explique como você poderia 
ajudar Pedro a fazer isso. Em sua resposta, aborde: 
Passos Básicos: Quais são os passos principais para utilizar a Regressão Linear com a Scikit-Learn nesse cenário? 
Treinamento e Previsão: Como você treinaria o modelo de Regressão Linear e utilizaria ele para prever o preço de 
novas casas? 
Passos Básicos para usar Regressão Linear 
1. Preparar os dados 
o Organizar o conjunto de dados em duas partes: 
▪ X: características (área, número de quartos, localização etc.). 
▪ y: variável alvo (preço da casa). 
2. Dividir em treino e teste 
o Separar o dataset em dados de treinamento (para ajustar o modelo) e de teste (para avaliar o 
desempenho). 
3. Escolher e criar o modelo 
o Usar a classe LinearRegression do Scikit-Learn. 
4. Treinar o modelo 
o Ajustar o modelo com os dados de treino usando .fit(X_train, y_train). 
5. Avaliar o modelo 
o Verificar a qualidade das previsões no conjunto de teste usando métricas como r2_score (coeficiente 
de determinação) e mean_squared_error (erro quadrático médio). 
 
Treinamento e Previsão 
Exemplo em Python: 
import numpy as np 
import pandas as pd 
from sklearn.model_selection import train_test_split 
from sklearn.linear_model import LinearRegression 
from sklearn.metrics import mean_squared_error, r2_score 
 
 
 
# Exemplo de dados de casas 
# Colunas: [área (m²), número de quartos, distância ao centro (km)] 
X = np.array([ 
 [80, 2, 10], 
 [120, 3, 5], 
 [200, 4, 2], 
 [60, 1, 15], 
 [150, 3, 7] 
]) 
y = np.array([200000, 300000, 500000, 150000, 350000]) # preços em R$ 
 
# 1. Dividir dados em treino e teste 
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) 
 
# 2. Criar o modelo 
modelo = LinearRegression() 
 
# 3. Treinar o modelo 
modelo.fit(X_train, y_train) 
 
# 4. Prever preços no conjunto de teste 
y_pred = modelo.predict(X_test) 
 
 
 
print("Preços reais:", y_test) 
print("Preços previstos:", y_pred) 
 
# 5. Avaliar desempenho 
print("R²:", r2_score(y_test, y_pred)) 
print("Erro quadrático médio:", mean_squared_error(y_test, y_pred)) 
 
# 6. Prever preço de uma nova casa 
nova_casa = np.array([[100, 3, 8]]) # área=100m², 3 quartos, 8km do centro 
previsao = modelo.predict(nova_casa) 
print("Preço previsto para a nova casa:", previsao[0]) 
 
Interpretação do Resultado 
• O modelo aprende uma equação linear na forma: 
Prec\co=a×Aˊrea+b×Quartos+c×Dista^ncia+dPreço = a \times Área + b \times Quartos + c \times Distância + dPrec\c
o=a×Aˊrea+b×Quartos+c×Dista^ncia+d 
onde os coeficientes (a, b, c) representam o quanto cada característica impacta no preço da casa. 
• Por exemplo: 
o Se o coeficiente da área for alto, significa que casas maiores tendem a ter preços mais altos. 
o Se o coeficiente da distância ao centro for negativo, casas mais distantes tendema ser mais baratas. 
 
 
 
 
 
 
 
 
Questão 49 - Perceptron 
 
 
Explique de forma simples o que é um Perceptron, ilustrado na Figura 1, e como ele funciona em termos de entradas, 
pesos e saída. Em sua resposta, aborde os seguintes pontos: 
a. Definição do Perceptron: O que é um Perceptron? 
b. Funcionamento Básico: Como o Perceptron processa as entradas para gerar uma saída? 
c. Papel dos Pesos e do Limite de Decisão: Como os pesos e o limite de decisão (função de ativação) 
influenciam a saída do Perceptron? 
 
Definição do Perceptron 
O Perceptron é um modelo matemático inspirado no funcionamento de um neurônio biológico. 
• Ele é considerado a unidade mais simples de uma rede neural artificial. 
• Sua função é receber sinais de entrada, processá-los e produzir uma saída que indica uma decisão (como 
“sim/não” ou “classe A/classe B”). 
 
Funcionamento Básico 
1. Cada entrada (x1,x2,...,xmx_1, x_2, ..., x_mx1,x2,...,xm) representa uma característica do problema (por 
exemplo: altura, peso, cor). 
2. Essas entradas são multiplicadas pelos pesos (wk1,wk2,...,wkmw_{k1}, w_{k2}, ..., w_{km}wk1,wk2,...,wkm), 
que determinam a importância de cada característica. 
 
 
3. O perceptron soma esses valores e adiciona um bias (bkb_kbk), que funciona como um ajuste extra. 
uk=∑i=1mxi⋅wki+bku_k = \sum_{i=1}^m x_i \cdot w_{ki} + b_kuk=i=1∑mxi⋅wki+bk 
4. O valor uku_kuk é passado para a função de ativação (φ\varphiφ), que decide se a saída (yky_kyk) será ativada 
(1) ou não ativada (0). 
 
Papel dos Pesos e do Limite de Decisão 
• Pesos (www): indicam o quanto cada entrada influencia a saída. 
o Se um peso é grande, aquela entrada tem mais impacto na decisão. 
o Se é pequeno ou próximo de zero, a entrada influencia pouco. 
• Função de ativação / Limite de decisão (φ\varphiφ): define a “fronteira” que separa os resultados. 
o Exemplo: se o somatório uku_kuk for maior que um certo valor (threshold), a saída é 1 (classe positiva). 
o Caso contrário, a saída é 0 (classe negativa).A internet tornou-se o principal veículo para busca de informações e respostas rápidas sobre diversos assuntos e em 
qualquer lugar com suas especificidades e regionalidades. Para proporcionar uma maior agilidade na busca para os 
usuários, os sistemas de buscas utilizam cada vez mais a websemântica para melhorar a experiência de respostas das 
buscas, trazendo mais assertividade referente ao assunto. Desse modo, a websemântica utiliza algumas tecnologias 
para atingir este objetivo. Então, quando dizemos que a tecnologia utiliza metadata para criar modelos para 
armazenamento de informações, fala-se da tecnologia 
 
Alternativas 
A) 
RDF (Resource Description Framework). 
 
B) 
Inteligência Artificial. 
 
C) 
XHTML. 
 
D) 
XML. 
 
E) 
HTML 5.0. 
 
 
Questão 10 - Computação evolutiva 
 
 
O termo inteligência artificial foi criado em 1956, mas só se popularizou hoje graças aos crescentes volumes de dados 
disponíveis, algoritmos avançados e melhorias no poder e no armazenamento computacionais. A inteligência artificial 
(IA) possibilita que máquinas aprendam com experiências, se ajustem a novas entradas de dados e executem tarefas 
como seres humanos. A maioria dos exemplos de IA sobre os quais se ouve falar hoje dependem de deep learning e 
processamento de linguagem natural. Com essas tecnologias, os computadores podem ser treinados para cumprir 
tarefas específicas ao processar grandes quantidades de dados e reconhecer padrões nesses dados. 
 
Disponível em: . Acesso em: 8 mar. 2019. 
 
 
Podem ser citados como atributos do comportamento inteligente 
 
 
I. pensar e raciocinar. 
 
 
II. adquirir e aplicar o conhecimento. 
 
 
III. demonstrar criatividade e imaginação. 
 
 
IV. utilizar raciocínio para resolução de problemas. 
 
 
V. lidar com informações incompletas, ambíguas e/ou incorretas. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
I, II e III, apenas. 
 
C) 
II, III e IV, apenas. 
 
D) 
I, III, IV e V, apenas. 
 
E) 
I, II, III, IV e V. 
 
 
 
 
 
https://www.sas.com/pt_br/insights/analytics/inteligencia-artificial.html
 
 
Questão 11 - Aprendizagem de redes neurais 
 
 
A Inteligência Artificial busca combinar grandes quantidades de dados com o processamento rápido e interativo e 
algoritmos inteligentes, permitindo ao software aprender automaticamente com padrões ou informações nos dados. A 
Inteligência Artificial é um campo de estudo amplo, que engloba muitas teorias, métodos e tecnologias, assim como os 
seguintes subcampos. Dentre estes campos, podem ser identificadas as áreas de Ciência Cognitiva, Robótica e 
Interface Natural. 
 
 
Disponível em: . Acesso em: 8 mar. 2019. 
 
 
 
Pode-se afirmar que são técnicas da área da Ciência Cognitiva 
 
 
I. Lógica Fuzzy. 
 
 
II. Redes Neurais. 
 
 
III. Algoritmos Genéticos. 
 
 
IV. Sistemas Especialistas. 
 
 
V. Sistemas de Aprendizagem. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
I, II e III, apenas. 
 
C) 
II, III e IV, apenas. 
 
D) 
I, III, IV e V, apenas. 
 
E) 
I, II, III, IV e V. 
 
 
 
 
https://www.sas.com/pt_br/insights/analytics/inteligencia-artificial.html
 
 
Questão 12 - Sistemas especialistas 
 
 
Um Sistema especialista caracteriza-se por reproduzir e explorar os conhecimentos fornecidos por especialistas em 
áreas de conhecimento específicas. Estes sistemas são capazes de resolver problemas difíceis, explicando os 
resultados obtidos, aprender e reestruturar o conhecimento, determinando as características relevantes. Os sistemas 
especialistas atuam em várias aplicações, promovendo maior agilidade, bem como soluções produtivas para as 
empresas. 
 
Considerando o que foi apresentado, os sistemas especialistas podem ser aplicados em quais das áreas a seguir? 
 
I. Projeto e configuração. 
II. Gerenciamento de Decisões. 
III. Seleção e classificação de processos. 
IV. Monitoração e controle de processos. 
 
Estão corretos os itens 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
III e IV, apenas. 
 
C) 
I, III e IV, apenas. 
 
D) 
II, III e IV, apenas. 
 
E) 
I, II, III e IV. 
 
 
Questão 13 - Sistemas especialistas 
 
 
 
Os sistemas especialistas são criados com base em conhecimento especializado, portanto, as respostas produzidas 
são restritas a áreas específicas, sem geração de novos conhecimentos. Para alguns autores, os sistemas 
especialistas são sistemas computacionais que tentam imitar especialistas humanos, aplicando metodologias sobre 
uma área específica. 
 
Considerando as vantagens no uso de sistemas especialistas, avalie as afirmações a seguir. 
 
I. Melhoria da produtividade e do desempenho dos usuários. 
II. Capacidade de tornar acessíveis as facilidades de tomada de decisão para muitas pessoas. 
III. Ferramentas adequadas para treinamento de grupos de pessoas, por meio da coleta de informações sobre 
desempenho. 
IV. Redução do grau de dependência que as organizações mantêm quando estão em situações críticas e em falta de 
especialistas. 
 
 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
III e IV, apenas. 
 
C) 
I, III e IV, apenas. 
 
D) 
II, III e IV, apenas. 
 
E) 
I, II, III e IV. 
 
 
Questão 14 - Aprendizado não supervisionado 
 
 
 
 
Fonte: Vida de Suporte. Disponível em . Acesso em: 21 de abr. de 2019. 
 
 
Quanto ao tema Inteligência Artificial e aprendizado de máquina, podemos categorizar este segundo item em: 
aprendizado supervisionado e aprendizado não supervisionado. 
 
Com relação a aprendizado supervisionado e aprendizado não supervisionado, avalie as asserções a seguir e a 
relação proposta entre elas. 
 
 
 
 
I. Via de regra, no aprendizado não supervisionado, o programador não sabe qual o tipo de resultado será 
apresentado pelo sistema, pois não existe uma lista de objetos de comparações. Para aprendizado não 
supervisionado não se utiliza técnicas de regressão e classificação. 
 
PORQUE 
 
II. Classificação e regressão são técnicas utilizadas em aprendizado supervisionado. Na regressão, por exemplo, 
procura-se prever resultados baseados em saídas discretas, enquanto na classificação, procura-se prever resultados 
baseados em uma saída contínua. 
 
 A respeito dessas asserções, assinale a opção correta. 
 
Alternativas 
A) 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I. 
 
B) 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. 
 
C) 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
 
D) 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
 
E) 
As asserções I e II são proposições falsas. 
 
 
Questão 15 - Aprendizado não supervisionado 
 
A arquitetura de uma rede neural artificial é um parâmetro importante a ser analisado, uma vez que ela restringe o 
tipo de problema que pode ser tratado pela rede. Redes com uma camada única de nodos MCP são casos em que 
só se consegue resolver problemas linearmente separáveis. As redes recorrentes, por sua vez, são utilizadas na 
resolução de problemas que envolvem processamento temporal. A arquitetura de uma rede neural artificial é 
composta pelos seguintes parâmetros: número de camadas da rede, número de nodos em cada camada, tipo de 
conexão entre os nodos e topologia da rede. 
 
Quanto aos tipos de camadas, podem ser listadas as 
 
 
I. redes de camada única, onde só existe um nó entre qualquer entrada e qualquer saída da rede. 
 
 
II. redes de tripla camada, onde existem dois neurônios entre alguma entrada e alguma saída da rede. 
 
 
III. redes de dupla camada, onde existem dois neurônios entre alguma entrada e alguma saída da rede. 
 
IV. redes de múltiplas camadas, onde existe mais de um neurônio entre alguma entrada e alguma saída da rede. 
 
É correto o que se apresenta emAlternativas 
A) 
I e II, apenas. 
 
B) 
I e IV, apenas. 
 
C) 
I, II e III, apenas. 
 
D) 
I, II e IV, apenas. 
 
E) 
I, II, III e IV. 
 
Questão 16 - Neurônio artificial 
 
 
O modelo de neurônio artificial MCP proposto por McCulloch e Pitts é muito similar ao que se conhece de um 
neurônio biológico. Este modelo resultou em n terminais de entrada e apenas um terminal de saída. Neste modelo, a 
ativação do neurônio é obtida por meio de uma função de ativação que ativa a saída com base na soma ponderada 
das entradas. O modelo de neurônio artificial supracitado pode ser visualizado na imagem abaixo. 
 
 
BRAGA, Antônio P., Caralho, André P. L. F., Ludemir, Teresa B. Redes Neurais Artificiais: Teoria e Aplicações. 2. 
ed. – Rio de Janeiro: LTC, 2007) 
 
Com base nas informações supracitadas nos aspectos da limitação do modelo de Neurônio Artificial MCP, avalie as 
afirmativas a seguir. 
 
I. O modelo de neurônio artificial foi proposto com pesos fixos e não-ajustáveis. 
II. Os pesos negativos do modelo são mais adequados na representação de disparos inibidores. 
III. O modelo de neurônio artificial produz apenas ligações cíclicas, transformando a rede em uma rede auto-
associativa. 
IV. As redes do modelo de neurônio artificial com apenas uma camada conseguem implementar somente 
funções linearmente separáveis. 
 
Está correto o que se afirma em 
 
 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
I e IV, apenas. 
 
C) 
I, II e III, apenas. 
 
D) 
I, II e IV, apenas. 
 
E) 
I, II, III e IV. 
 
 
Questão 17 - Sistemas especialistas 
 
A escolha de uma boa representação de conhecimento é tarefa fundamental na resolução de problemas que 
envolvem inteligência artificial. Acerca desse assunto, assinale a opção correta. 
 
Alternativas 
A) 
O encadeamento regressivo, por utilizar busca em largura para resolução de conflitos, é menos usado que o 
progressivo. 
 
B) 
O encadeamento progressivo utiliza busca gulosa para fazer a comparação entre os fatos armazenados na memória 
de trabalho do sistema e os antecedentes das regras a disparar. 
 
C) 
As redes semânticas, mecanismo mais expressivo que a lógica de primeira ordem, foram desenvolvidas para se 
superar uma dificuldade dos sistemas embasados em lógica de representar categorias. 
 
 
 
 
D) 
A representação de conhecimento frames é uma boa alternativa para esse tipo de problema, por incluir, além de um 
mecanismo de inferência semanticamente bem definido, mecanismos de encapsulamento e componentes, comuns 
ao paradigma orientado a objeto. 
 
E) 
Tanto redes semânticas quanto frames representam facilmente conhecimento estrutural, comportamental e 
procedural. 
 
Questão 18 - Web semântica: ontologias 
 
 
Nos órgãos públicos, o desafio da gestão do conhecimento é contribuir para a modernização da gestão pública no 
contexto de um Estado, de forma a garantir-se a participação de toda a sociedade nas atividades desenvolvidas por 
seus representantes no Executivo, Legislativo e Judiciário. 
 
Considere soluções de TI para a implementação de uma política pública cujo objetivo seja proporcionar maior 
transparência aos gastos de um órgão público e que, para tal, tenha-se optado por uma solução baseada em Web 
Semântica, sendo uma das fases para seu desenvolvimento a disponibilização dos dados referentes aos gastos do 
órgão. 
 
Considerando esse cenário, avalie as seguintes asserções e a relação proposta entre elas. 
 
I. A publicação de dados na forma de dados abertos vinculados (Linked Open Data - LOD) é apropriada para o uso 
generalizado dos dados no âmbito da Web Semântica. 
PORQUE 
II. Um dos papéis do formato LOD para a Web Semântica é facilitar a integração de dados quando houver 
ambiguidade de termos utilizados nos diferentes conjuntos de dados. 
 
A respeito dessas asserções, assinale a opção correta. 
 
 
 
Alternativas 
A) 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I 
 
B) 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I 
 
C) 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
 
D) 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
 
E) 
As asserções I e II são proposições falsas. 
 
Questão 19 - Programação orientada a objetos em Python 
Na linguagem de programação Python, os objetos são criados a partir das classes por meio de atribuição, sendo uma 
instância delas, com suas características próprias. Objetos são abstrações computacionais que representam 
entidades, com as qualidades (atributos) e as ações (métodos) que elas podem realizar. Ao criar um deles, executa-
se o construtor da classe, que é um método especial, denominado __new__(), utilizado na programação orientada a 
objetos. Assim sendo, após a chamada do construtor, o método __init__() também é chamado para inicializar uma 
nova instância. 
 
Considerando as características da POO na linguagem Python, pode-se afirmar que 
 
 
 
 
(I) os tipos e classes podem ser unificados ou não. 
(II) as classes são abertas, menos para os tipos builtins. 
(III) os operadores são, na verdade, chamados para métodos especiais. 
(IV) quase tudo é objeto, mesmo os tipos básicos, como números inteiros. 
 
É correto o que se apresenta em 
 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
I e III, apenas. 
 
C) 
I, II e IV, apenas. 
 
D) 
II, III e IV, apenas. 
 
E) 
I, II, III e IV. 
 
 
 
 
 
 
 
Questão 20 - Operadores em Python 
 
No desenvolvimento de algoritmos, os operadores são símbolos que podem ser utilizados na escrita de expressões, 
sendo essenciais para o desenvolvimento de algoritmos em qualquer linguagem de programação. Vale lembrar que 
algumas linguagens possuem ordens de prioridade para execução dos operadores. Os operadores de atribuição 
possuem o papel de atribuir um determinado valor a uma variável. Já os operadores aritméticos consistem em 
operações matemáticas básicas, que podem ser aplicadas a variáveis numéricas. 
 
Na avaliação de uma expressão aritmética, é importante lembrar que alguns operadores serão avaliados antes dos 
outros. Na linguagem Python, a ordem de prioridade começa 
 
Alternativas 
A) 
nos operadores de módulo (%), de potência (*) e de resto da parte inteira (//). 
 
B) 
nos operadores de potência (*), de módulo (%) e de resto da parte inteira (//). 
 
C) 
nos operadores de potência (*), de resto da parte inteira (//) e de módulo (%). 
 
D) 
nos operadores de resto da parte inteira (//), de módulo (%) e de potência (*). 
 
E) 
nos operadores de potência (*), de módulo (//) e de resto da parte inteira (%). 
 
 
 
 
 
Questão 21 - Matrizes em Python 
 
Para obter uma informação de tamanho, continência, contagem ou extremos de uma matriz, existem os métodos in, 
not in, count(), len(), max() e min(). Por meio de tais comandos, a busca por alguma informação específica na matriz 
é extremamente simples. Todos esses métodos podem ser facilmente criados com um algoritmo simples, usando 
estruturas de repetição, como o comando FOR. Porém, esses comandos são nativos da linguagem de programação 
Python. A maior vantagem disso é que os comandos nativos são otimizados para uma melhor performance. 
 
Built-in Types. In: Python Software Foundation. Documentation – The Python Standard Library. Wilmington, 2019. 
 
Nesse contexto, a verificação de continência de uma linha em uma matriz, ou de uma coluna dentro de uma linha 
específica, pode ser realizada por meio 
 
Alternativas 
A) 
dos comandos in e not in. 
 
B) 
dos comandos len() e min(). 
 
C) 
dos comandos not in e max(). 
 
D) 
dos comandos count(), len(). 
 
E) 
dos comandos max() e min(). 
 
 
Questão 22 - Matrizes em Python 
 
 
Matrizes são utilizadas em diversas aplicações, como na navegação de dispositivos móveis usados na robótica, na 
criação de objetos 2D e 3D na computação gráfica, na representação de imagensdigitais, na implementação de redes 
neurais artificiais, entre outras. A linguagem Python é bastante utilizada para solucionar problemas dessas áreas, seja 
no desenvolvimento de jogos, na programação de robôs, na análise de dados em Data Science, etc. Esta linguagem 
oferece ferramentas para manipular matrizes, proporcionando flexibilidade e versatilidade para trabalhar com esse tipo 
de estrutura sequencial. As matrizes são utilizadas para correlacionar informações em alguns casos, podendo 
armazenar dados de diversos tipos. Nesse contexto, como uma matriz é uma lista de listas, o acesso a um grupo de 
elementos de uma matriz é construído por partes. 
 
Com base no que foi exposto, é possível acessar a um conjunto de elementos da matriz 
 
I. indicando apenas a linha que se deseja acessar, por meio do comando nome_da_matriz[linha]. 
 
II. indicando apenas a coluna que se deseja acessar, por meio do comando nome_da_matriz[coluna]. 
 
III. indicando um intervalo de linhas da matriz, por meio do comando nome_da_matriz[linhainicial:linhafinal]. 
 
IV. indicando um intervalo de colunas da matriz, por meio do comando nome_da_matriz[colunainicial:colunafinal]. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
II e IV, apenas. 
 
B) 
I e III, apenas. 
 
C) 
I, II e IV, apenas. 
 
D) 
I, II e III, apenas. 
 
E) 
I, II, III e IV. 
 
 
Questão 23 - Matrizes em Python 
 
 
Uma matriz pode ser compreendida como um conjunto de dados, números e/ou símbolos estruturados em duas ou 
mais dimensões. A estrutura matricial mais comum é a matriz bidimensional, ou seja, com duas dimensões, que tem 
sua estrutura em forma de tabela, com os elementos organizados em linhas e colunas. Dessa forma, a linguagem de 
programação Python permite, além de acessar individualmente um elemento dessas matrizes para ler ou alterar o 
seu conteúdo, utilizar operadores para manipulação das mesmas. 
 
Nesse contexto, pode-se afirmar sobre os operadores utilizados em matrizes na linguagem Python que 
 
 
 
I. o operador de adição “+” é utilizado para concatenar matrizes. 
II. o operador de divisão “/” é utilizado para diminuir as linhas das matrizes em "x" vezes. 
III. o operador multiplicativo “*” é utilizado para aumentar as linhas das matrizes em "x" vezes. 
IV. o operador de busca “in” é utilizado para procurar se um determinado conteúdo pertence a uma lista. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
III e IV, apenas. 
 
C) 
I, III e IV, apenas. 
 
D) 
I, II e III, apenas. 
 
E) 
I, II, III e IV. 
 
 
Questão 24 - Listas em Python 
 
Quando se trata de linguagens de programação, uma lista armazena seus dados organizados sequencialmente e 
permite o acesso individual a cada um de seus elementos ou o acesso a um grupo de elementos. Nas listas, é 
possível percorrer todos os elementos de forma implícita; sendo assim, elas podem ser utilizadas como estruturas 
iteráveis. A localização dos elementos em uma lista é indicada por um índice x (coluna), que indica a posição do 
elemento, iniciando a contagem sempre pelo valor 0 (zero). Desta forma, o primeiro elemento está na posição coluna 
0 (zero), o segundo elemento está na posição coluna 1 (um) e assim por diante. 
 
RAMALHO, L. Python fluente. São Paulo: Novatec, 2015. 
 
Nesse contexto, o acesso a um grupo de elementos de uma lista é feito determinando-se o intervalo de elementos 
desejado, por meio de algumas formas, dentre as quais: 
 
I. Indicando os elementos da lista por meio do comando: nome _ da _ lista[x:y] 
 
II. Indicando um intervalo de colunas da lista por meio do comando: nome _ da _ lista[colinicial:colfinal] 
 
 
 
III. Utilizando o sinal de “:” entre os colchetes, indicando o acesso a todos os elementos de uma lista por meio do 
comando: nome _ da _ lista[:] 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I, apenas. 
B) 
II, apenas. 
C) 
I e III, apenas. 
D) 
II e III, apenas. 
E) 
I, II e III. 
 
Questão 25 - Listas em Python 
 
 
Durante a programação de algoritmos na linguagem Python é necessário tomar cuidado quando se copia os elementos 
de uma lista para outra. Assim como ocorre com as variáveis, no momento em que uma lista é declarada, ela faz 
referência a um objeto. Desta forma, o sinal de atribuição “=” faz com que as duas listas referenciem ao mesmo objeto, 
ou seja, ao mesmo endereço de memória. Sendo assim, utilizar o sinal de atribuição “=” para copiar o conteúdo de uma 
lista para outra pode gerar um resultado inesperado. Neste sentido, faz-se necessária a utilização de métodos para 
tais ações, visando evitar mais de uma lista com referência a um mesmo objeto. 
 
RAMALHO, L. Python fluente. São Paulo: Novatec, 2015. 
 
Nesse contexto, para evitar alterações indesejadas no conteúdo de uma lista, é necessário cloná-la, criando assim, 
uma nova referência na memória. Tal ação pode ser executada, por exemplo, quando se deseja copiar a lista 
minha_lista para a lista chamada nova_lista através do comando 
 
Alternativas 
 
 
A) 
nova_lista = minha_lista.clone(). 
 
 
B) 
nova_lista = minha_lista.copy(). 
 
 
C) 
nova_lista = minha_lista.xcopy(). 
 
 
D) 
nova_lista = minha_lista.xclone(). 
 
 
E) 
nova_lista = minha_lista.sclone(). 
 
 
Questão 26 - Funções em Python 
 
 
Ao abrir um arquivo em um sistema computacional, existem alguns modos de abertura. O modo de abertura é uma 
configuração que se deve especificar para informar ao sistema operacional qual é o nível de controle necessário 
sobre o arquivo. Para apenas ler o conteúdo de um arquivo, basta abri-lo em modo de leitura. Para abrir um arquivo 
modificando seu conteúdo, seja escrevendo novas linhas no final do arquivo, seja alterando alguma linha existente, 
basta abri-lo em modo de escrita. O mesmo pode ser aplicado à linguagem Python, que usa formas diferentes para 
abertura de arquivos. 
 
 
Sobre os principais modos de abertura de arquivos da linguagem Python, julgue os itens a seguir. 
 
 
I. ‘b’ abre o arquivo como um arquivo binário. 
 
II. ‘t’ abre o arquivo como um arquivo de texto. 
 
III.‘r’ abre o arquivo somente para a leitura do seu conteúdo. 
 
IV. ‘a’ abre o arquivo para escrita a partir do início do arquivo. 
 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
II e IV, apenas. 
 
 
 
C) 
III e IV, apenas. 
 
D) 
I, II e III, apenas. 
 
E) 
I, II, III e IV. 
 
 
Questão 27 - Funções em Python 
 
 
Na linguagem Python, para acessar e efetuar a leitura de um arquivo csv, é preciso, antes de tudo, que o arquivo seja 
aberto. Para isso, é possível usar o mesmo comando usado para abrir um arquivo de texto, que é o comando open. 
Um arquivo csv pode ser identificado como um arquivo de texto. Desta forma, o modo de abertura do arquivo deve ser 
especificado da mesma forma como para os arquivos texto. Para a maioria das situações, o arquivo csv será aberto no 
modo padrão, que é ‘rt. O módulo csv presente na linguagem Python facilita o processo de leitura e interpretação dos 
campos separados por vírgulas. Para usar esse módulo, é preciso informar que será utilizado esse módulo antes de 
digitar os comandos. 
 
Disponível em: https://www.python.org/psf/. Acesso em: 03 set. 2019 (adaptado). 
 
 
Neste contexto, para efetuar a leitura do arquivo csv, o comando reader pode ser utilizado para 
 
Alternativas 
A) 
especificar a forma como o arquivo deve ser aberto. 
 
B) 
alterar caracteres específicos nas linhas do arquivo csv. 
 
C) 
criar um objeto capaz de ler e interpretar cada linha do arquivo csv. 
 
D) 
ler linha por linha do arquivo e a imprimir o conteúdo lido na tela. 
 
E) 
especificar qual é o caractere que será usado como delimitador de campos. 
 
 
 
 
 
 
 
 
 
 
 
https://www.python.org/psf/
 
 
Questão 28 - Funções em Python 
 
 
Na linguagem Python, assim como em um sistema computacional, antes de armazenar qualquer informação em um 
arquivo de texto, é necessário abrir o mesmo. Após sua abertura, deve-se gravar o dado desejadoe fechar o arquivo 
logo após seu uso. Para tais ações, é necessária a utilização de métodos pré-definidos por esta linguagem. Estes 
métodos englobam funções para manipular o arquivo desde sua abertura, passando por funções de edição e conclusão. 
A exemplo, para abrir um arquivo é necessário que o programador informe através da linguagem Python onde está o 
arquivo no disco. A maneira que os arquivos são localizados no disco é definida através do seu caminho (path). Para 
isso, pode-se pensar em nome_arquivo como o primeiro nome do arquivo e o caminho como seu nome completo. 
 
 
Sobre os métodos usados pela linguagem Python para manipulação de arquivos, julgue os itens a seguir. 
 
I. O método write() escreve um texto específico no arquivo de texto. 
 
II. O método open() serve para abrir o arquivo indicando o modo de acesso. 
 
III. O método close() serve para fechar o arquivo que foi aberto anteriormente. 
 
IV. O método seek() posiciona o cursor no N-ésimo caractere contado a partir do início do arquivo. 
 
V. O método writelines() escreve no arquivo de texto uma sequência de strings contidas em uma matriz. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I, II e IV, apenas. 
 
B) 
II, III e V, apenas. 
 
C) 
I, III e V, apenas. 
 
D) 
I, II, III e IV, apenas. 
 
E) 
I, IV e V, apenas. 
 
 
 
 
Questão 29 - Funções em Python 
 
 
A linguagem Python fornece métodos simples e de fácil entendimento para manipular arquivos do tipo CSV. Com ela, 
os métodos podem ser utilizados nas funções para manipulação de arquivos. Dentre eles, pode-se citar o método 
writer(), capaz de criar um objeto writer, que permite escrever as linhas de um arquivo CSV, formatando a sequência 
de valores inserida no mesmo. Para gravar dados em um arquivo CSV é necessário abrir o arquivo para escrita (modo 
‘w’). O método csv.writer recebe como parâmetro um ponteiro para este arquivo aberto. Desta forma, é possível ainda, 
alterar o delimitador de campos padrão. Neste contexto, o método writerow escreve uma linha de dados no arquivo 
CSV de saída, no entanto, sempre que se usa o comando writer(), é necessário instanciá-lo a um objeto. 
 
RAMALHO, L. Python fluente. São Paulo: Novatec, 2015. 
 
 
 
Sobre os parâmetros para o método writer, julgue os itens a seguir. 
 
 
I. O argumento csvfile é o nome do objeto instanciado com o arquivo. 
 
II. O argumento csvshow é usado para exibir o objeto instanciado pelo método. 
 
III. O argumento fmtparams pode ser usado para sobrescrever parâmetros formatados. 
 
IV. O argumento dialect define o conjunto de parâmetros específicos a um dialeto CSV em particular. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
II e III, apenas. 
 
C) 
I, III e IV, apenas. 
 
D) 
III e IV, apenas. 
 
E) 
I, II, III e IV. 
 
 
 
 
 
 
 
 
 
 
 
 
Questão 30 - Estrutura condicional em Python 
 
Na programação, a escolha entre duas ou mais opções ocorre quando o programa lê os dados de um arquivo e realiza 
uma ação, tomando como base os dados lidos ou a entrada de um usuário. No ambiente Python, essa escolha é feita 
a partir de uma instrução IF, pela qual a condição é avaliada. Caso a condição seja verdadeira, serão realizadas as 
instruções apontadas. Se não for verdadeira, verificam-se as instruções após a instrução IF. Em casos onde houver a 
necessidade de testes com mais de uma condição, será necessário o uso do comando ELIF. Este comando pode ser 
utilizado inúmeras vezes, para testar quantas condições forem necessárias. Caso nenhuma delas seja verdadeira, o 
bloco de comandos ELSE será executado. 
 
 
LEE, K. D. Fundamentos da programação Python. New York: Dordrecht; Heidelberg; London: Springer, 2011 
(adaptado). 
 
O comando IF é um comando condicional que pode ser utilizado para a execução de códigos que comparam 
condições. Nesse sentido, analise a imagem a seguir, que trata de um conjunto de funções responsáveis por mover 
um dispositivo com base em cliques efetuados em botões direcionais, além de imprimir na tela do usuário que 
comando está sendo enviado e a direção que está sendo acionada. 
 
 
 
Com base na imagem, assinale a alternativa que apresenta a forma correta de utilização para o comando IF. 
 
Alternativas 
 
 
A) 
if frente(): 
 print("FRENTE") 
 self.output = 1 
 print(self.output) 
if re(): 
 print("RÉ") 
 self.output = 2 
 print(self.output) 
if direita(): 
 print("DIREITA") 
 self.output = 3 
 print(self.output) 
if esquerda(): 
 print("ESQUERDA") 
 self.output = 4 
 print(self.output) 
if centro(): 
 print("CENTRO") 
 self.output = 5 
 print(self.output) 
 
 
 
B) 
if frente(): 
 print("FRENTE") 
 self.output = 1 
 print(self.output) 
elif re(): 
 print("RÉ") 
 self.output = 2 
 print(self.output) 
elif direita(): 
 print("DIREITA") 
 self.output = 3 
 print(self.output) 
elif esquerda(): 
 print("ESQUERDA") 
 self.output = 4 
 print(self.output) 
elif centro(): 
 print("CENTRO") 
 self.output = 5 
 print(self.output) 
 
 
 
 
 
C) 
if frente(): 
 print("FRENTE") 
 self.output = 1 
 print(self.output) 
else re(): 
 print("RÉ") 
 self.output = 2 
 print(self.output) 
else direita(): 
 print("DIREITA") 
 self.output = 3 
 print(self.output) 
else esquerda(): 
 print("ESQUERDA") 
 self.output = 4 
 print(self.output) 
else centro(): 
 print("CENTRO") 
 self.output = 5 
 print(self.output) 
 
 
 
D) 
if frente(): 
 print("FRENTE") 
 self.output = 1 
 print(self.output) 
else if re(): 
 print("RÉ") 
 self.output = 2 
 print(self.output) 
else if direita(): 
 print("DIREITA") 
 self.output = 3 
 print(self.output) 
else if esquerda(): 
 print("ESQUERDA") 
 self.output = 4 
 print(self.output) 
else if centro(): 
 print("CENTRO") 
 self.output = 5 
 print(self.output) 
 
 
 
 
 
E) 
if frente(): 
 print("FRENTE") 
 self.output = 1 
 print(self.output) 
elif re(): 
 print("RÉ") 
 self.output = 2 
 print(self.output) 
elif direita(): 
 print("DIREITA") 
 self.output = 3 
 print(self.output) 
elif esquerda(): 
 print("ESQUERDA") 
 self.output = 4 
 print(self.output) 
else centro(): 
 print("CENTRO") 
 self.output = 5 
 print(self.output) 
 
Questão 31 - Estrutura condicional em Python 
 
 
Na programação, assim como na linguagem Python, pode-se determinar algo que contenha duas respostas, ou seja, 
duas instruções: uma para o caso de a condição ser verdadeira e outra para o caso de a condição ser falsa. O 
comando condicional else possibilita fazer algo quando a condição é avaliada como falsa. Nesse caso, a resposta 
poderá ser "não", "falso" ou até mesmo 0. Ao utilizar os comandos if e else, a condição é avaliada. Se for verdadeira, 
as instruções if são executadas; se for falsa, as instruções else são executadas. 
 
 
Neste contexto, pode-se ter um ou mais comandos com o uso das estruturas condicionais if e else desde que 
 
Alternativas 
A) 
seja observada a mesma indentação. 
 
B) 
a condição faça uso de variáveis para comparação. 
 
C) 
a condição esteja dentro de uma estrutura de repetição. 
 
D) 
 
 
estes comandos estejam alocados em uma função à parte. 
 
E) 
estes comandos sejam utilizados para mais de uma condição. 
 
 
Questão 32 - Estruturas de repetição em Python 
 
 
Na linguagem Python, as estruturas ou laços de repetição são muito utilizadas quando se tem a necessidade de 
repetir uma mesma instrução mais de uma vez. Dentre essas estruturas, pode-se destacar o comando FOR. Esse 
comando faz uso de dois tipos de variáveis que são muito importantes para seu perfeito funcionamento, sendo elas 
as variáveis contadoras e as acumuladoras. As variáveis contadoras são aquelas nas quais cada interação do 
comando FOR é incrementada com base em algum critério. Já as variáveis acumuladoras são aquelas nas quais o 
seu valor é acumulado a cada iteraçãodo comando FOR. 
 
Assim sendo, ao realizar um teste de mesa que envolva uma variável acumuladora é de suma importância que seja 
 
Alternativas 
A) 
implementado um ambiente de testes. 
 
B) 
anotado o seu valor a cada interação. 
 
C) 
criada uma variável secundária para comparação. 
 
D) 
utilizada uma variável contadora em paralelo. 
 
E) 
criado um diagrama de blocos para comparação do código. 
 
 
Questão 33 - Estruturas de repetição em Python 
 
 
Durante o desenvolvimento dos algoritmos, é necessário que sejam realizados testes no intuito de certificar que o 
funcionamento corresponde ao esperado. O teste que é realizado durante a fase de desenvolvimento do algoritmo é 
conhecido como teste de mesa. Ele é realizado geralmente à mão, para cada interação do comando for. É muito 
importante observar o valor atribuído a cada variável durante cada interação, dessa forma é possível acompanhar a 
evolução da variável sob análise. Os testes de mesa podem ser utilizados para avaliar o funcionamento de estruturas 
de repetição mesmo quando há presença de variáveis acumuladoras ou contadoras. 
 
SCHACH, Stephen R. Engenharia de software: os paradigmas clássico & orientado a objetos. 7. ed. São Paulo: 
McGraw-Hill, 2009. 
 
Neste contexto, para se testar um laço de repetição que contenha uma variável contadora é importante avaliar o 
número de 
 
Alternativas 
 
 
A) 
interações que o laço realiza. 
 
B) 
variáveis utilizadas pelo laço. 
 
C) 
estruturas condicionais presentes. 
 
D) 
encadeamentos presentes no laço. 
 
E) 
instruções presentes no laço de repetição. 
 
 
 
 
Questão 33 - Bibliotecas em Python 
 
Na linguagem python, um aplicativo muito utilizado para baixar e instalar pacotes é o pip, que pode ser definido como 
um gerenciador de pacotes python. A partir da versão 3.4 de python, o pip passou a ser incluído como padrão para o 
gerenciamento de pacotes. Os pacotes gerenciados pelo pip são repositórios que contêm todos os arquivos 
necessários em um módulo do python. Já os módulos são bibliotecas de código python que podem ser incluídas nos 
projetos da linguagem, facilitando a implementação de programas. Por se tratar de um repositório, o pip também auxilia 
desenvolvedores python a encontrar e instalar programas de software desenvolvidos na linguagem. Por este motivo, 
os desenvolvedores python costumam utilizar o pip para distribuir o código-fonte de seus respectivos programas de 
software. 
 
TONSIG, S. L. Engenharia de software: análise e projeto de sistemas. 2. ed. Rio de Janeiro: Ciência Moderna, 2008. 
 
Com base no texto exposto, por se tratar de um gerenciador de pacotes, caso o usuário tenha interesse em baixar e 
instalar no sistema operacional o pacote opencv-python 4.2.0.32, que é uma biblioteca de visão computacional muito 
utilizada por desenvolvedores em conjunto com a linguagem python, basta executar o comando 
 
Alternativas 
A) 
pip install opencv-python. 
 
B) 
pip --upgrade opencv-python. 
 
C) 
pip install opencv-python 4.2.0.32. 
 
D) 
pip --upgrade opencv-python 4.2.0.32. 
 
E) 
pip --upgrade opencv-python --version 4.2.0.32. 
 
 
Questão 33 - Coleções em Python 
 
 
Na linguagem Python, não existe uma palavra-chave específica para declarar variáveis. Para criar uma variável, é 
necessário apenas atribuir um valor para um identificador válido, e aquela variável é criada. Uma vez criada, pode-se 
usar a instrução “del” para deletar a variável. Assim, ela deixa de existir. Outra característica importante da linguagem 
Python é que é possível fazer várias atribuições de variáveis em uma mesma linha. Desta forma, basta separar os 
identificadores por vírgula do lado esquerdo da atribuição e manter a mesma ordem no lado direito. Tal função se 
relaciona com os chamados tipos nativos, que armazenam a categoria coleções com o tipo conjunto (set), que utiliza 
o delimitador chaves { }. Pode-se identificar, com base na tabela a seguir, os tipos que fazem parte da categoria 
coleções da linguagem Python. 
 
 
Disponível em: https://docs.python.org/3/library/stdtypes.html. Acesso em: 06 mar. 2020. 
 
Um set é uma estrutura disponível de forma nativa em Python, utilizada para representar coleções desordenadas de 
elementos únicos. Desta forma, caso o desenvolvedor tenha a necessidade de trabalhar com este tipo de conjunto, 
faz-se necessário entender que 
 
Alternativas 
A) 
os conjuntos, em alguns casos, podem ser implementados usando colchetes [ ] ou parênteses ( ). 
 
 
B) 
os conjuntos podem ter seus elementos separados por meio do sinal de pontuação dois pontos (:). 
 
 
C) 
os conjuntos são imutáveis, ou seja, não podem receber elementos novos, nem excluir elementos existentes. 
 
 
D) 
os conjuntos não contêm elementos repetidos, e estes, por sua vez, não são armazenados em uma ordem 
específica. 
 
 
E) 
os conjuntos podem ter seus elementos unidos a elementos de outros conjuntos por meio da implementação da 
coleção do tipo tuple. 
 
 
 
 
 
 
Questão 33 - Ambientes de Desenvolvimento em Python 
 
 
A linguagem de programação Python foi criada pelo matemático Guido van Rossum, entre o final da década de 1980 
e o início da década de 1990. Ela foi elaborada como uma linguagem de scripts para o sistema operacional Amoeba, 
sendo uma evolução da linguagem de programação ABC, que era voltada para físicos, engenheiros e outros. O 
Python foi criado para ser uma linguagem de programação utilizada para o ensino da programação, trabalhada por 
leigos no assunto, com o objetivo de ser produtiva e legível para desenvolvedores, ou seja, o propósito de sua 
criação era o desenvolvimento de software com um código de fácil leitura, que proporcionasse uma manutenção 
igualmente fácil e rápida. 
 
SILVA, D. M. Python: história e ascendência. Revista Programar, Lisboa, ed. 59, p. 96-99, fev. 2018. 
 
PYSCIENCE-BRASIL. Python: o que é? Por que usar? (2019). Disponível em: http://pyscience-
brasil.wikidot.com/python:python-oq-e-pq. Acesso em: 10 out. 2019. 
 
O Python é uma linguagem de alto nível, orientada a objetos e gratuita. Ela possui uma sintaxe simples, legível, limpa 
e elegante, sendo indicada como uma linguagem ideal para desenvolver aplicações de forma rápida. Para fazer uso 
dessa linguagem, uma ferramenta muito utilizada são os ambientes de desenvolvimento (IDE). Os mesmos 
proporcionam um ambiente mais amigável, além de oferecer diversas funcionalidades que facilitam o 
desenvolvimento. Existem, atualmente, no mercado, diversas ferramentas, sendo as mesmas divididas entre 
gratuitas e pagas. 
 
Nesse contexto, julgue as afirmações a seguir, que podem ser levadas em conta para um usuário que tem interesse 
em utilizar apenas ferramentas gratuitas durante o desenvolvimento com a linguagem Python. 
 
I. PyPE é um editor para Python, desenvolvido em Python, que, apesar de ser simples e funcional, apresenta muitos 
recursos importantes, além de ser multiplataforma. 
 
II. Spyder é uma ferramenta que consiste em um ambiente de desenvolvimento completo e interativo para Python, 
com recursos de edição avançada, testes interativos embutidos, recursos de depuração e introspecção. 
 
III. PyCharm é uma das IDEs mais ricas em recursos, propiciando um desenvolvimento eficiente, além de recursos 
importantes para o desenvolvimento profissional para Web, suporte para diversos sistemas de controle de versão. 
 
 
 
IV. PythonWin é uma IDE que vem acompanhando as extensões PyWin32, que são as extensões Win32 para 
Python, e oferece o autocompletar e o debugador, além de recursos interessantes, voltados à programação com 
sistema Windows. 
 
V. NINJA-IDE é uma IDE multiplataforma de desenvolvimento integrado, podendo ser executada em sistemas 
Windows, Linux e Mac OS, proporcionando aos desenvolvedores a criação de aplicações que podem ser utilizadas 
para diversos fins. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I e III, apenas. 
 
B) 
II e IV, apenas. 
 
C) 
II, III e V, apenas. 
 
D)I, II, IV e V, apenas. 
 
E) 
I, II, III, IV e V. 
 
 
 
 
Questão 34 - Técnica de agrupamento: clustering 
Na busca por dados cada vez mais precisos, a criação de um modelo de mineração faz parte de um processo de 
perguntas sobre os dados com modelos de respostas e a implantação de um modelo. Dentre os algoritmos mais 
utilizados no processo de data mining, estão as técnicas de associação, classificação, padrões sequenciais, árvores 
de decisão e clustering. 
 
Com base nas informações supracitadas, pode-se afirmar que o clustering é 
 
Alternativas 
A) 
uma técnica em que vários atributos podem ser utilizados para a identificação de uma classe específica de itens. 
 
B) 
uma técnica para identificar elementos que tenham a presença de outros elementos em uma mesma operação, 
encontrando relacionamentos ou padrões entre o conjunto de dados. 
 
C) 
uma técnica que agrupa registros semelhantes, ou seja, grupos de elementos que possuem as mesmas 
propriedades, a fim de que o usuário final possa, entre outras coisas, saber o que está ocorrendo no banco de dados. 
 
D) 
uma técnica que identifica tendências ou a ocorrência de eventos parecidos, sendo geralmente utilizada para 
entender comportamentos de usuários em relação às compras, de tal forma que os donos de lojas, a partir da análise 
dos dados, tomem decisões sobre quais produtos irão apresentar para os clientes. 
 
E) 
uma técnica utilizada para categorização ou previsão de dados que geralmente se inicia com uma pergunta que 
tenha duas ou mais respostas, e uma delas direciona para uma questão que será utilizada para classificar ou 
identificar dados que serão categorizados. 
 
 
 
 
Questão 36 - Aprendizado supervisionado 
 
 
 
 
Disponível em: . Acesso em: 21 abr. 2019. 
 
Inteligência Artificial é um assunto que tem ganhado notoriedade a cada dia que passa e já não se trata mais de um 
tema futurístico, mas de algo que vivenciamos em nosso dia a dia. Uma das metodologias que envolve o tema é o 
aprendizado de máquina (machine learning), que consiste em estruturar algoritmos que criem memórias artificiais, 
possibilitando sistemas tomarem decisões baseadas em eventos passados. 
 
Podemos dividir o aprendizado de máquina em duas categorias: aprendizado supervisionado e não supervisionado. 
O primeiro trata-se 
 
Alternativas 
A) 
https://vidadesuporte.com.br/suporte-a-serie/pensamento%3E%3C/a%3E
 
 
de analisar e elencar os dados que trafegarão pelo algoritmo de aprendizado de máquina, ditando as diretrizes que 
formarão as memórias artificiais do sistema. 
 
B) 
de apresentar uma gama de dados classificados sobre os quais já se conhece a saída correta - que precisa ser 
necessariamente semelhante ao conjunto apresentado, criando um elo entre entrada e saída. 
 
C) 
de manter, mesmo que a intervalos controlados, uma equipe de apoio para monitorar os dados que trafegam pelo 
algoritmo, direcionando a linha do aprendizado de máquina de um sistema. 
 
D) 
de analisar os logs gerados pelo algoritmo de aprendizado de máquina, possibilitando assim gerar memórias 
artificiais de maior consistência e próximas do objeto final esperado. 
 
E) 
de fazer o cruzamento das memórias artificiais que seriam armazenadas e algum banco de dados (ou arquivo de log) 
que contenha possíveis saídas de dados, gerando assim um aprendizado direcionado aos objetivos esperados. 
 
 
Questão 37 - Aspectos na aprendizagem de árvores de decisão 
 
 
As árvores de decisão são modelos computacionais de classificação que atuam sobre o paradigma bottom-up, em 
que a obtenção do modelo de classificação se dá pela identificação de relacionamentos entre variáveis dependentes 
e independentes em bases de dados rotuladas. Nesse contexto, o classificador utilizado é induzido por mecanismos 
de generalização fundamentados em exemplos específicos. 
 
Sobre as árvores de decisão, considere os itens a seguir. 
 
 
 
I. As árvores de decisão têm classes discretas e classes contínuas. 
II. A classificação precisa ser implementada com base em regras de decisão. 
III. Para garantir a aplicação de testes estatísticos, é necessária uma maior quantidade de objetos do que de 
classes. 
IV. Toda informação sobre um objeto a ser classificado deve poder ser expressa em termos de uma coleção fixa 
de propriedades ou atributos. 
 
Podem ser definidas como condições para aplicação de uma árvore de decisão de forma a garantir melhor 
aprendizado as informações apresentadas em 
 
Alternativas 
A) 
I e II, apenas. 
 
B) 
I e IV, apenas. 
 
C) 
I, II e III, apenas. 
 
D) 
I, II e IV, apenas. 
 
E) 
I, II, III e IV. 
 
 
 
 
 
 
 
 
 
Questão 38 - Perceptron 
 
"O Modelo Perceptron foi desenvolvido nas décadas de 1950 e 1960 pelo cientista Frank Rosenblatt, inspirado em 
trabalhos anteriores de Warren McCulloch e Walter Pitts. Hoje, é mais comum usar outros modelos de neurônios 
artificiais, mas o Perceptron permite uma compreensão clara de como funciona uma rede neural em termos 
matemáticos, sendo uma excelente introdução". 
 
Fonte: Deep Learning Book. Disponível em . Acesso em 23 
de Abr. de 2019. 
 
Considerando o Perceptron - uma das mais simples arquiteturas de redes neurais existentes - podemos afirmar que 
ele é 
 
Alternativas 
A) 
uma função nativa, na maioria das linguagens de programação, implantada a partir da década de 1980 para leitura de 
redes neurais artificiais. 
 
B) 
um modelo matemático que pode receber múltiplas entradas (inputs) e fornecer apenas uma saída binária (output) 
baseada nos cálculos das entradas. 
 
C) 
uma função matemática que trabalha com o conceito de multidimensionalidade para prever resultados de uma rede 
neural. 
 
D) 
uma camada de abstração presente na maioria das arquiteturas de redes neurais, sendo a base para 
implementações mais complexas. 
 
 
 
E) 
uma camada matemática contida dentro da linguagem Python, utilizada prioritariamente para analisar resultados de 
entrada da rede neural. 
 
Questão 39 - Aprendizagem Não Supervisionada 
 
 
Para que uma Inteligência Artificial possa aprender, é necessário que ela receba diferentes dados e possa analisá-los 
separadamente, compreendendo assim as particularidades, similaridades e diferenças de um dado em relação a 
outros. Além disso, existem três diferentes tipos de abordagens para realizar o aprendizado de máquina, sendo eles: 
a Aprendizagem Supervisionada, a Aprendizagem não Supervisionada e a Aprendizagem por Reforço. Cada um 
desses tipos tem sua devida aplicação e a escolha da abordagem mais adequada pode variar de acordo com o tipo 
de projeto. 
 
Com base nessas informações, analise o seguinte cenário: 
 
Uma grande rede de supermercados está utilizando novos recursos de tecnologia, experimentalmente, para prever 
cenários futuros e também para dispor de forma mais estratégica os produtos nas prateleiras e corredores dos 
estabelecimentos. Nesse sentido, a rede precisa conhecer o perfil de consumo de seus clientes para, então, testar 
novas disposições dos produtos e analisar os resultados. 
 
Diante desse cenário, Marlon, chefe do departamento de Tecnologia da Informação da rede de supermercados, ficou 
responsável por analisar as melhores ferramentas e os recursos de computação para realizar essa tarefa de análise. 
Ele já soube que deveria utilizar o Machine Learning (aprendizado de máquina), ou simplesmente ML, para coletar 
dados quanto ao comportamento dos consumidores, gerando, assim, um relatório com as possíveis disposições mais 
adequadas de itens nos corredores dos estabelecimentos pertencentes à rede. 
 
Considerando o cenário apresentado, as características, os respectivos tipos e as derivações do Aprendizado de 
Máquina, avalie as asserções a seguir e a relação proposta entre elas. 
 
I. A equipe de desenvolvimento que trabalhará comMarlon deverá utilizar o Aprendizado Não Supervisionado nessa 
estrutura de ML, pois o Aprendizado Supervisionado não é muito útil nesse tipo de situação, em que não se tem 
dados prévios para alimentar a função de inferência. 
 
 
 
PORQUE 
 
II. A abordagem de Aprendizado Supervisionado alimenta a inteligência artificial com dados que já foram 
classificados anteriormente e já possuem uma resposta esperada, a qual é analisada para compará-la com a saída 
de uma análise. 
 
A respeito dessas asserções, assinale a opção correta. 
 
Alternativas 
A) 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I. 
 
B) 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. 
 
C) 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
 
D) 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
 
E) 
As asserções I e II são proposições falsas. 
 
 
 
 
 
 
 
Questão 40 - Aprendizagem Não Supervisionada 
 
Por meio do uso de Inteligência Artificial, é possível desenvolver softwares que conseguem aprender e “raciocinar” com 
base nas suas experiências passadas e, assim, serem mais precisos e versáteis em suas funcionalidades e escolhas. 
Esse “raciocínio” é puramente matemático, ou seja, com base em uma série de cálculos probabilísticos e estatísticos, 
sistemas inteligentes tomam decisões nos mais diversos cenários. Para que isso ocorra, é necessário utilizar um 
algoritmo de Aprendizado de Máquina, que pode ser feito utilizando diferentes abordagens, como o Aprendizado por 
Reforço, o Aprendizado Supervisionado e o Aprendizado não Supervisionado, pois existem diferentes maneiras de se 
ensinar uma Inteligência Artificial. 
 
Considerando essas informações, analise o cenário a seguir. 
 
Uma grande livraria na capital observou que existe uma baixa procura por determinadas categorias de livros e, por 
isso, pretende investir em tecnologia para que esse cenário seja alterado, fazendo com que a procura por livros de 
categorias até então pouco buscadas aumente e, por consequência, os lucros também sofram impactos positivos. 
Diante disso, Mário, com sua empresa de tecnologia, a IA Tech, especializada em Ciência de Dados e Aprendizado 
de Máquina, foi contratado para prestar uma consultoria e propor uma solução viável para a situação. 
 
Com relação às características do Aprendizado de Máquina e ao cenário apresentado, avalie as asserções a seguir e 
a relação proposta entre elas. 
 
I. Para desenvolver, por exemplo, um programa de classificação de livros por meio de suas palavras em comum, 
Mário poderá utilizar um algoritmo de Aprendizagem Não Supervisionada, levando em consideração a classificação 
prévia do catálogo da livraria. 
 
PORQUE 
 
II. Quando se utiliza o Aprendizado de Máquina Não Supervisionado, a fonte de dados baseia-se na identificação de 
pontos semelhantes, ou mesmo na ausência de similaridade no domínio do conjunto de dados analisados. 
 
A respeito dessas asserções, assinale a opção correta. 
 
Alternativas 
 
 
A) 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I. 
 
B) 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. 
 
C) 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
 
D) 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
 
E) 
As asserções I e II são proposições falsas. 
 
Questão 41 - Sistema de aprendizagem de máquina 
 
As técnicas de aprendizado de máquinas empregam um princípio de inferência denominado indução, no qual é possível 
obter conclusões genéricas a partir de um conjunto particular de exemplos. Estas técnicas de aprendizados indutivos 
podem ser divididas em dois principais tipos: os supervisionados e os não supervisionados. No aprendizado 
supervisionado é fornecida uma referência do objetivo a ser alcançado, isto é, um treinamento com o conhecimento do 
ambiente. Diferentemente do aprendizado supervisionado, o não supervisionado não utiliza referências, ou seja, não 
ocorre um treinamento com o conhecimento do ambiente. 
 
PELLUCCI P. R. S. et al. Utilização de técnicas de aprendizado de máquina no reconhecimento de entidades 
nomeadas no português. Belo Horizonte. E-xacta, v. 4, n. 1, p. 73-81, 2011 (adaptado). 
 
Considerando as informações do texto, avalie as afirmações a seguir. 
 
 
 
I. A regressão linear é um exemplo de modelo baseado no aprendizado supervisionado. 
II. A diferença entre a saída desejada e a saída gerada é o valor do erro de um aprendizado não supervisionado. 
III. O aprendizado não supervisionado é mais utilizado quando o entendimento dos dados é feito por meio de 
reconhecimento de padrões. 
IV. O aprendizado supervisionado é capaz de tomar decisões precisas ao receber novos dados a partir de um 
treinamento com dados conhecidos. 
É correto apenas o que se afirma em 
 
Alternativas 
A) 
I e III. 
 
B) 
II e III. 
 
C) 
II e IV. 
 
D) 
I, II e IV. 
 
E) 
I, III e IV. 
 
 
 
 
 
 
Questão 42 - Machine Learning 
 
 
O machine learning apresenta algoritmos de computador que são capazes de aprender com o ambiente ao redor para 
otimizar a solução para a tarefa em questão. Ele se baseia em conhecimentos de diversos campos, como inteligência 
artificial, probabilidade e estatística, ciência da computação, teoria da informação e neuropsicologia cognitiva. Os 
algoritmos de machine learning podem ser categorizados em diferentes classes de acordo com a natureza dos dados, 
o processo de aprendizado e o tipo de modelo. 
 
EL NAQA, Issam; MURPHY, Martin J. What Is Machine Learning? In: EL NAQA, Issam; LI, Ruijiang; MURPHY, Martin 
J. (eds.). Machine Learning in Radiation Oncology: Theory and Applications. New York: Springer, 2015 
(adaptado). 
 
Diante disso, leia a situação a seguir. 
 
Diego é engenheiro e está desenvolvendo um projeto em conjunto com sua colega médica, para fazer o uso do machine 
learning na área da saúde. Diego e sua sócia devem apresentar a sua ideia aos potenciais investidores; assim, Diego 
deve explicar sobre o machine learning. 
 
Em relação ao machine learning, no contexto da situação apresentada, julgue as afirmações a seguir. 
 
I. Diego pode explicar que o machine learning é uma ferramenta de algoritmos para compreender a estrutura de dados 
existentes e gerar regras de predição, assim, modelos preditivos podem ser utilizados para estimar riscos à saúde dado 
um conjunto de características. 
 
II. Diego pode ressaltar que os resultados fornecidos pelo machine learning na área da saúde, em conjunto com 
políticas públicas na área, podem promover redução de custos, maior efetividade nas intervenções, tratamentos e 
ações preventivas. 
 
III. Diego pode mencionar que, com o machine learning, é possível conhecer o risco de um desfecho baseado em 
dados reais, podendo ser utilizado para rastreamento, diagnóstico e escolha do tratamento adequado em intervenções 
na saúde. 
 
 
 
Está correto o que se afirma em 
 
Alternativas 
A) 
I, apenas. 
 
B) 
II, apenas. 
 
C) 
I e III, apenas. 
 
D) 
II e III, apenas. 
 
E) 
I, II e III. 
 
 
 
 
 
 
 
 
 
 
Questão 43 - Machine Learning 
 
O aprendizado supervisionado é a tarefa de machine learning de aprender uma função que mapeia uma entrada para 
uma saída com base em exemplos de dados de entrada e saída. Ele infere uma função de dados de treinamento 
rotulados que consistem em um conjunto de exemplos de treinamento. As Árvores de Decisão são gráficos para 
representar escolhas e seus resultados em forma de árvore. Os nós no gráfico representam um evento ou escolha e 
as arestas do gráfico representam as regras ou condições de decisão. Cada árvore consiste em nós e ramos. 
 
MAHESH, Batta. Machine learning algorithms-a review. International Journal of Science and Research, [s. l.], v. 9, p. 
381-386,2020 (adaptado). 
 
Diante disso, analise a imagem a seguir. 
 
 
MAHESH, Batta. Machine learning algorithms-a review. International Journal of Science and Research, [s. l.], v. 9, p. 
381-386, 2020 (adaptado). 
 
Em relação às técnicas usadas em machine learning, julgue os itens a seguir. 
 
 
 
I. A árvore de decisão, como exemplificado na imagem, é uma técnica em machine learning para classificar grandes 
volumes de dados, mas exige um treinamento com dados pré-rotulados para funcionar, por esse motivo pode ser 
definida como uma técnica supervisionada. 
 II. Na figura apresentada, observa-se uma árvore de decisão que pode ser empregada em restaurantes e comércios 
que lidam com diferentes tipos de clientes para entender as preferências dos clientes com base em seus pedidos 
passados, que podem ser utilizados como dados para treinamento do algoritmo. 
 III. Em machine learning, as árvores de decisão podem ter diferentes aplicações, mas todas utilizam de conceitos de 
classificação e regressão para seu uso; no exemplo da figura, a estrutura da árvore permite classificar dados de 
acordo com as respostas em cada nó. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I, apenas. 
 
B) 
III, apenas. 
 
C) 
I e II, apenas. 
 
D) 
II e III, apenas. 
 
E) 
I, II e III. 
 
 
 
Questão 44 - Aquisição do conhecimento 
 
Atualmente, diversas empresas utilizam sistema baseado em conhecimento (SBC). Esses sistemas são programas de 
computador que utilizam uma base de conhecimento para resolver inúmeros problemas complexos, fornecendo 
informações relevantes aos usuários por meio da aplicação de um raciocínio humano heurístico. Esses sistemas 
utilizam diferentes técnicas e mecanismos específicos para simular a tomada de decisão e inferências humanas em 
contextos específicos. Nesses sistemas, é muito importante que a base de conhecimento esteja em constante 
atualização para maior eficácia. Entre as inúmeras áreas nas quais o SBC pode ser utilizado, estão: gestão, jurídica, 
educação, saúde, finanças e engenharia; sempre lidando com grandes volumes de dados. 
 
Considerando o texto lido, analise a situação hipotética a seguir. 
 
Rodolfo, diretor de transformação digital da empresa Alfa do ramo da saúde, está realizando um treinamento sobre 
sistemas baseados em conhecimento. Ele explicou que um sistema baseado em conhecimento consiste em um 
programa no qual o conhecimento do assunto é considerado um conjunto de fatos e regras que podem ser 
questionados e manipulados para fornecer uma solução inferida ou explicação para um determinado problema. Rodolfo 
afirmou que, para a organização ser bem-sucedida, será preciso fazer uso do sistema baseado em conhecimento, 
possibilitando bons resultados e grandes diferenciais na área da saúde. 
 
Diante do exposto, sabendo-se que os sistemas que a empresa precisa implementar devem apresentar algumas 
características, avalie as afirmações a seguir sobre o que Rodolfo pode mencionar em relação a essas características. 
 
I. Rodolfo pode afirmar que os sistemas devem ter alguma base de conhecimento explícita e identificável, uma vez que 
o desenvolvedor deve ter a capacidade de desenvolver textos ou objetos e reivindicar que eles são o conhecimento. 
 II. Ele pode mencionar que os processos de conhecimento e raciocínio devem ser qualitativos em alguma parte, ou 
seja, devem lidar com objetos semânticos que precisam de definição. 
 III. Rodolfo pode dizer, em seu treinamento, que os sistemas devem executar pelo menos algumas das inferências 
com base em mudanças dinâmicas no conhecimento. 
 É correto o que se afirma em 
 
Alternativas 
A) 
I, apenas. 
 
 
 
B) 
II, apenas. 
 
C) 
I e III, apenas. 
 
D) 
II e III, apenas. 
 
E) 
I, II e III. 
 
Questão 45 - Sistemas especialistas 
 
 
Inteligência artificial (IA) não é um conceito novo, já existindo há muitas décadas, pois não é de hoje que IA consegue 
ganhar do melhor jogador de xadrez. Contudo, nos últimos anos, o campo de pesquisa sobre IA tem crescido muito, 
permitindo criar máquinas modernas que simulam o pensamento dos seres humanos. Muitas pessoas ainda têm medo 
da IA e de todo o seu potencial, mas a IA está ganhando força para ajudar os seres humanos no trabalho e no cotidiano. 
 
Com base no texto apresentado, analise a situação hipotética a seguir. 
 
Miguel, dono de uma empresa de viagens, deseja implantar um sistema especialista com IA para auxiliar os clientes 
da empresa em suas viagens. Em uma reunião com os funcionários, ele explicou as vantagens da utilização da IA e 
descreveu alguns conceitos relacionados. 
 
Diante do exposto e considerando os conceitos explicados por Miguel em relação à IA, avalie as afirmações a seguir. 
 
 
 
I. Miguel esclareceu que a IA está presente no dia a dia das pessoas, por exemplo, no atendimento eletrônico das 
operadoras de telefonia, na previsão do tempo, nos mecanismos de segurança do Internet Banking, entre outros 
campos. 
 II. Ele afirmou que o machine learning, ou aprendizagem de máquina, tem o objetivo de compreender a estrutura dos 
dados utilizados e adaptá-los a modelos conhecidos, facilitando a interpretação, a análise e a predição de 
informações por meio de algoritmos. 
 III. Miguel salientou que a IA permitiu que outras formas de conhecimento e de aprendizagem fossem adquiridas, 
sendo uma delas o deep learning, ou aprendizagem profunda, compondo a parte avançada do machine learning. 
 
É correto o que se afirma em 
 
Alternativas 
A) 
I, apenas. 
 
B) 
II, apenas. 
 
C) 
I e III, apenas. 
 
D) 
II e III, apenas. 
 
E) 
I, II e III. 
 
 
Questão 46 - Sistemas especialistas 
 
A Inteligência Artificial (IA) vem sendo trazida como uma tecnologia inovadora que vai transformar a vida no planeta e 
todas as relações humanas existentes mediante a utilização de máquinas, tecnologias e robôs. Contudo, a IA não 
surgiu recentemente, ela já existe há anos. Ela é uma ferramenta importante de colaboração com profissionais e 
estudantes, por exemplo, e tem evoluído muito. Seu crescimento se deve às novas técnicas de machine learning, à 
análise de dados em larga escala (big data), entre outros avanços. 
 
Com base no texto lido, analise a situação hipotética a seguir. 
 
Miguel é diretor da empresa ABC e responsável por criar sistemas inteligentes com IA que podem apoiar milhões de 
clientes. Esses sistemas utilizam a engenharia do conhecimento, que permite simular o conhecimento dos profissionais 
que dominam sua área de atuação. Visando vender os produtos para um grupo de clientes, Miguel agendou uma 
reunião para explicações. 
 
Considerando o cenário apresentado e os diversos aspectos da engenharia do conhecimento, avalie as asserções a 
seguir e a relação proposta entre elas. 
 
I. Miguel pode afirmar que os sistemas inteligentes podem ajudar as organizações ao realizar atividades para a 
resolução de problemas, armazenando e recuperando de forma eficiente um grande volume de informações que 
auxiliam na tomada de decisões, por exemplo. 
 
PORQUE 
 
II. Os sistemas inteligentes utilizam e manipulam o conhecimento e a informação com o intuito de resolver problemas 
que precisam de conhecimento humano, podendo estar em áreas como medicina, engenharias, negócios, ciências, 
educação, comercial, entre outras. 
 
A respeito dessas asserções, assinale a opção correta. 
 
Alternativas 
A) 
 
 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I. 
 
B) 
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. 
 
C) 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
 
D) 
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. 
 
E) 
As asserções I e II são proposições falsas. 
 
Questão 47 - Estrutura condicional em Python 
 
Uma grande vantagem de Python é a legibilidade dos programas escritos nessa linguagem.