Frameworks e bibliotecas de aprendizado de máquina, como TensorFlow, PyTorch, e scikit-learn, desempenham papéis cruciais no desenvolvimento e na implementação de modelos de inteligência artificial. Cada um oferece um conjunto único de ferramentas e funcionalidades, tornando-se mais adequado para certos tipos de tarefas. Por exemplo, TensorFlow e PyTorch são frequentemente escolhidos para projetos que exigem redes neurais profundas devido à sua capacidade de processamento paralelo e suporte a operações com tensores, enquanto scikit-learn é preferido para aprendizado de máquina tradicional devido à sua simplicidade e eficiência. A escolha do framework ou biblioteca adequado pode significativamente impactar a escalabilidade e eficiência do projeto.
Neste contexto, sobre a escolha de frameworks e bibliotecas de aprendizado de máquina, avalie as afirmativas a seguir:I. A escolha do framework ou biblioteca correto é indiferente, pois todos são capazes de executar qualquer tarefa de aprendizado de máquina com eficiência similar.
II. Frameworks como TensorFlow e PyTorch oferecem suporte avançado para cálculos com tensores e processamento paralelo, sendo preferenciais aprendizado profundo.
III. Scikit-learn é otimizado para aprendizado profundo, oferecendo as melhores ferramentas para treinamento e inferência de redes neurais profundas.
IV. A eficiência na execução de tarefas específicas de aprendizado de máquina pode ser drasticamente afetada pela escolha do framework ou biblioteca.
V. Todas as bibliotecas e frameworks de aprendizado de máquina requerem a mesma quantidade de recursos computacionais para treinar modelos.
Está correto o que se afirma em:
As primeiras tentativas de modelar o processo de aprendizagem do cérebro humano em máquinas levaram ao desenvolvimento de estruturas simples, como o perceptron e o adaline, que consistiam em um único neurônio artificial. Esses modelos foram pioneiros, mas logo se descobriu que sua capacidade era limitada a classificar apenas conjuntos de dados linearmente separáveis. Para superar essa limitação e abordar problemas mais complexos, pesquisadores começaram a explorar arquiteturas com múltiplas camadas de neurônios, inaugurando a era das redes neurais profundas. Essas redes com múltiplas camadas são capazes de modelar funções complexas e resolver problemas de classificação e regressão não linearmente separáveis.Com base na evolução das redes neurais, qual das seguintes opções melhor descreve a principal limitação dos modelos baseados em um único neurônio, como o perceptron e o adaline?
As árvores de decisão organizam o conhecimento extraído do conjunto de dados em uma hierarquia de decisões, que vão sendo refinadas sucessivamente até a obtenção da classificação final, em que um problema complexo é particionado de forma recursiva em problemas mais simples, sendo utilizada essa técnica sempre que há um novo particionamento.Em relação aos conceitos de “métodos simbólicos” e ao algoritmo de árvores de decisões, marque a alternativa correta.
No contexto de Aprendizado Supervisionado em Machine Learning, diversos conceitos e terminologias são utilizados para descrever os diferentes tipos de problemas e modelos preditivos. Dentre esses conceitos, estão os problemas de "regressão" e "classificação", além da noção de "estimadores". Associe corretamente os conceitos da Coluna A com suas definições na Coluna B.Coluna A:
A. Problemas de Regressão
B. Problemas de Classificação
C. Estimador
D. Algoritmo PreditivoColuna B:Tarefa que busca mapear entradas em categorias discretas, como rótulos ou classes.
Função construída a partir de um conjunto de pares conhecidos, que visa estimar o valor de uma função desconhecida para novas observações.
Tarefa que visa modelar uma função contínua a partir dos conjuntos de dados de entrada/saída fornecidos.
Aprendizado que resulta em um modelo capaz de prever saídas para novas entradas, baseando-se em dados rotulados.Assinale a alternativa que contém a associação correta:
Grande parte dos algoritmos de agrupamento são considerados particionais, com alguns sendo considerados hierárquicos, com um tipo de algoritmo podendo se enquadrar em mais de uma categoria. Os algoritmos hierárquicos são divididos em aglomerativos, com os clusters unitários sendo aglomerados em conjuntos maiores, e divisivos, com os clusters maiores se tornando clusters menores, com apenas um objeto.Em relação aos dois tipos de algoritmos de agrupamento hierárquico, aglomerativos e divisivos, marque a alternativa correta.
No aprendizado não supervisionado, da mesma forma que há regras a serem seguidas nas tarefas de associação de dados para mineração de padrões frequentes, quando tratamos de clusters, cada um resulta em uma característica de conexão que possa melhor representar um determinado conjunto de dados ou atributos.Em relação à análise de agrupamentos e os seus critérios de agrupamento, avalie as afirmações a seguir a respeito das categorias de critérios de agrupamento e as correlacione com os termos e o uso às quais se referem.Compactação.
Encadeamento.
Separação espacial.Esse critério busca a formação de cluster a partir da identificação de “vizinhos próximos”. É bom para formas arbitrárias, mas é ruim quando há pouca separação espacial.
Esse critério considera apenas a distância entre clusters, sendo normalmente utilizado em associação a outros critérios por alguns algoritmos.
Esse critério busca regiões com uma variação intracluster pequena, o que normalmente leva à formação de clusters esféricos ou bem separados. No entanto esse tipo de abordagem tende a falhar para formas mais complexas.Assinale a alternativa que correlaciona adequadamente os dois grupos de informação.
Na análise de dados, a representação e classificação dos atributos são fundamentais para a compreensão e tratamento dos conjuntos de dados. Os atributos podem ser quantitativos, assumindo valores numéricos, ou qualitativos, representados por símbolos ou nomes. Além disso, a escala de valores dos atributos pode variar, incluindo nominal, ordinal, intervalar e racional. Cada tipo de atributo e escala tem suas próprias características e aplicações na análise de dados. Com base nesse entendimento, assinale a alternativa correta em relação aos tipos de atributos e suas escalas na análise de dados?
Hoje em dia, muitas empresas de tecnologia utilizam o Apache Spark em seus ambientes e, principalmente, em computação em nuvem, pois é uma ação simples subir o sistema Spark no sistema em nuvem da AWS, por exemplo. Isso certifica o Spark a ser uma tendência nos grandes sistemas computacionais, necessitando, também, de mão de obra especializada em tal framework.Em uma plataforma Apache Spark, um node é um computador do cluster que se divide em master - que gerencia todo o cluster - e workers - responsáveis por executar os processos, em que o Spark driver é o principal programa. O Apache Spark, similar ao Hadoop, também foi desenvolvido para sistemas escaláveis e distribuídos.Com relação ao texto acima sobre Apache Spark, avalie as afirmativas a seguir.
I - Os RDDs são a unidade de dados do Hadoop e têm como principal característica a propriedade de serem flexíveis e adaptáveis.
II - O Hadoop foi desenvolvido apenas em Java, diferentemente do Spark, desenvolvido em Scala, Java, Python e R.
III - O Apache Spark pode acessar dados de diferentes fontes, por exemplo, do HDFS, o armazenamento distribuído no Hadoop.
IV - Os RDDs são particionados e divididos em todo o cluster, e o Hadoop constrói essas partições de forma manual.Está correto que se afirma em:
O OpenShift Container Platform é uma plataforma para desenvolver e executar aplicativos em contêineres. Ele foi projetado para permitir que os aplicativos e os data centers que os suportam se expandam de apenas algumas máquinas e aplicativos para milhares de máquinas que atendam a vários clientes. Com base no Kubernetes, o OpenShift Container Platform incorpora a mesma tecnologia que serve como mecanismo, por exemplo, para sistemas de telecomunicações, streaming de vídeo, jogos, serviços bancários e outros aplicativos.Com relação ao OpenShift Container Platform, assinale a alternativa correta.
O desempenho de uma solução computacional é a medida da capacidade de resposta de um sistema para determinar a eficiência com a qual ele atinge seus objetivos.Também podemos considerar que o desempenho de uma solução computacional determina, para uma aplicação específica, a eficiência de como esse sistema alcança as expectativas e as necessidades dos usuários e dos desenvolvedores de sistemas computacionais.Com relação ao desempenho de uma solução computacional, assinale a alternativa correta:
O Apache Hadoop é considerado uma ferramenta importante para o processamento de alta demanda de dados. Entre os benefícios de utilizá-lo, pode-se destacar:
I. Código aberto: todo projeto de software livre de sucesso tem por trás uma comunidade ativa.
II. Único nó mestre: a arquitetura do Hadoop tradicionalmente utiliza várias máquinas para o processamento e armazenamento dos dados tendo como vantagem a utilização de apenas um nó mestre.
III. Simplicidade: Hadoop retira do desenvolvedor a responsabilidade de gerenciar questões relativas à computação paralela, tais como tolerância a falhas, escalonamento e balanceamento de carga.
IV. Processamento de arquivos pequenos: trabalho pequeno é tarefa para ser executada com base em um arcabouço com foco em larga escala.
Na construção de sistemas distribuídos, a decisão entre adotar uma abordagem de programação paralela ou concorrente é essencial e tem implicações significativas no design, na eficiência e na escalabilidade do sistema. A programação paralela foca no uso simultâneo de recursos computacionais para acelerar a execução de tarefas, ideal para operações que podem ser divididas em sub-operações independentes. Já a programação concorrente lida com a execução de múltiplas tarefas ao mesmo tempo, em ambientes onde as tarefas podem compartilhar recursos, exigindo gerenciamento cuidadoso de acesso para evitar conflitos e garantir a consistência dos dados.Neste contexto, sobre a programação paralela e concorrente em sistemas distribuídos, observe as afirmativas a seguir:I. A programação paralela é sempre a escolha preferencial para sistemas distribuídos, pois maximiza a utilização dos recursos disponíveis.II. A programação concorrente é adequada para aplicações em que tarefas interagem com recursos compartilhados, requerendo mecanismos eficazes de sincronização.III. Sistemas construídos com programação paralela não exigem considerações de sincronização, já que as tarefas executadas são completamente independentes.IV. A adoção da programação concorrente pode introduzir desafios adicionais em termos de complexidade do código e potenciais condições de corrida que devem ser gerenciadas.V. A escolha entre programação paralela e concorrente não tem impacto significativo na escalabilidade do sistema ou na facilidade de manutenção do código.É correto o que se afirma em:
A implementação de clusters computacionais na nuvem oferece uma série de benefícios, incluindo escalabilidade elástica, redução de custos de infraestrutura e facilidade de gerenciamento. Entretanto, essa abordagem também apresenta desafios específicos, como questões de segurança e privacidade, dependência de provedores de serviços em nuvem, e potenciais problemas de latência e largura de banda. A decisão de migrar para clusters na nuvem ou manter clusters locais (on-premise) deve considerar esses fatores, além das necessidades específicas de desempenho e disponibilidade da aplicação.Qual das seguintes afirmações reflete um desafio enfrentado pela implementação de clusters computacionais na nuvem?
Sistemas computacionais de memória distribuída possuem uma rede de comunicação para interconectar os processadores, em que cada processador tem sua própria memória local. Uma interface de passagem de mensagens ou Message Passing Interface (MPI), um protocolo independente de linguagem, é usada para permitir que um processador acesse outros módulos de memória associados a outros processadores.Com relação aos sistemas computacionais de memória distribuída, assinale a alternativa correta.
A computação moderna frequentemente envolve conceitos de computação paralela e distribuída para lidar com grandes volumes de dados e complexidade de processamento. Ambos os conceitos dependem fortemente de transparência, permitindo aos usuários operar sem conhecimento da complexidade subjacente do sistema.Leia as seguintes afirmativas relacionadas ao tema de computação paralela e distribuída:I. Computação paralela envolve o uso de múltiplos processadores dentro de um único sistema para processar partes de uma tarefa simultaneamente.II. Em sistemas distribuídos, a transparência de recursos permite que os usuários visualizem e interajam com o sistema como se fosse uma única entidade coesa.III. A extensibilidade é uma vantagem da computação distribuída, onde novos computadores podem ser adicionados à rede sem interromper o funcionamento dos serviços existentes.IV. Computação paralela não pode ser implementada em um ambiente de computação distribuída, pois são conceitos exclusivos.V. Transparência para os sistemas em computação distribuída esconde a localização física e a distribuição dos recursos, melhorando a usabilidade e segurança. É correto o que se afirma em:
Na área de Tecnologia da Informação, é essencial entender os diferentes tipos de software e suas funções específicas. Softwares são classificados com base em sua utilidade e no papel que desempenham no sistema computacional. Por exemplo, há softwares que interagem diretamente com o hardware do computador, enquanto outros são projetados para realizar tarefas específicas para o usuário. Além disso, alguns softwares podem adicionar funcionalidades a outros programas ou operar dentro de dispositivos com propósitos específicos.Com base nessas categorias, associe os tipos de software listados na Coluna A com suas respectivas descrições na Coluna B.Coluna A
Coluna B
Software de sistema
A. Programas úteis para o funcionamento do sistema.
Software utilitário
B. Código que adiciona características específicas a outro software.
Software de aplicação
C. Coleção de programas que apoiam outros programas e têm contato direto com o hardware.
Software embarcado
D. Software frequentemente encontrado dentro de dispositivos de uso específico.
Assinale a alternativa que contém a associação correta:
Em uma aula de tecnologia da informação, o professor discute o conceito de protocolos de comunicação em redes de computadores. Ele explica que protocolos são conjuntos de regras que governam a transmissão de dados em uma rede, facilitando a comunicação eficiente entre dispositivos. Para ilustrar o ponto, ele menciona duas arquiteturas de rede distintas, explicando como elas dividem capacidades e responsabilidades entre os nós da rede. Uma das arquiteturas, a [preencher 1], é caracterizada por ter nós com capacidades e responsabilidades equivalentes, enquanto a outra, a arquitetura [preencher 2], destaca a presença de servidores dedicados a fornecer serviços a outros computadores. O professor pede aos alunos que identifiquem essas duas arquiteturas para entender melhor como os protocolos influenciam a estrutura e o funcionamento das redes.Complete as lacunas e assinale a alternativa correta:
Em relação ao escalonamento de CPU, é importante entender os diferentes algoritmos utilizados para determinar qual processo deve ser executado em um determinado momento. Um dos algoritmos comuns é o escalonamento round-robin, que distribui o tempo de processamento de forma equitativa entre os processos no estado pronto. O intervalo de tempo, também conhecido como quantum de tempo, é definido como [preencher 1] e determina quanto tempo cada processo pode utilizar a CPU antes de ser [preencher 2] e colocado de volta no estado pronto.Escolha a alternativa correta para preencher as lacunas:
Considere a estrutura e operação de um computador moderno, que é amplamente baseado no modelo de máquina de von Neumann. Nesse contexto, a Unidade de Controle desempenha um papel central, coordenando o processo de busca e execução de instruções. Ela utiliza dois registradores especiais: o Registrador de Instrução, que mantém a instrução atualmente em execução, e o Contador de Programa, que aponta para o endereço da próxima instrução. Paralelamente, a largura do barramento de um computador, que determina a quantidade de dados transferidos simultaneamente, é um fator crucial que influencia a eficiência do processamento. A Unidade de Controle usa o [preencher 1] para armazenar a instrução atual e o [preencher 2] para indicar a próxima instrução a ser executada.Com base no texto acima, escolha a opção correta que preencha as lacunas que completam o sentido sobre o funcionamento de um computador:
Na aula de Fundamentos de Computação, o professor introduziu o conceito de portas lógicas, explicando que cada uma executa uma função lógica elementar em um computador, processando sinais binários de entrada e produzindo um único sinal de saída. Ele explicou que os sinais são representados por níveis de voltagem, onde um sinal de voltagem baixa (0 a 2 volts) é interpretado como um 0 binário e um sinal de voltagem alta (2 a 5 volts) é interpretado como um 1 binário. Com base nessa explicação, o professor propôs o seguinte desafio: dado um circuito que consiste em uma série de portas lógicas.Qual das seguintes opções descreve corretamente o comportamento de uma porta OU Exclusivo (XOR)?
Em uma empresa de desenvolvimento de softwares, um novo projeto requer a implementação de um módulo de processamento de dados que utiliza aritmética binária. Durante uma sessão de treinamento, os programadores discutem sobre as características e diferenças entre as operações aritméticas binárias e decimais. Considere as seguintes afirmações sobre aritmética binária.I. Na soma binária, se dois dígitos 1 são somados, o resultado é 10, e o dígito 1 é levado para a próxima coluna, assim como na soma decimal.II. Na subtração binária, o empréstimo de uma coluna da esquerda não é necessário se o dígito a ser subtraído é maior do que o dígito da coluna correspondente.III. Na multiplicação binária, qualquer número multiplicado por 0 resulta em um valor diferente de zero.IV. Na divisão binária, se o dividendo é menor que o divisor, o dígito do quociente correspondente é sempre 1.É correto o que se afirma em:
Em um laboratório de pesquisa em computação, cientistas estão desenvolvendo um novo algoritmo que trabalha com grandes volumes de dados em binário. Eles perceberam que a conversão desses dados para a base octal facilitaria algumas análises e reduziria o espaço de armazenamento necessário. Durante um teste, o algoritmo produziu a sequência binária 110101011. O grupo de pesquisadores precisa converter essa sequência para a base octal. Qual é o resultado correto dessa conversão?
Os primeiros computadores de grande porte representam um marco importante na história da computação. Estes dispositivos, surgidos na primeira metade do século XX, destacaram-se pelo seu tamanho e capacidade de processamento para a época. Eram utilizados principalmente em ambientes acadêmicos e governamentais, devido ao seu alto custo e complexidade operacional. Considerando esse contexto histórico, identifique as seguintes afirmativas sobre os primeiros computadores de grande porte:I. Utilizavam válvulas eletrônicas, o que os tornava muito grandes e com necessidade de manutenção frequente.II. Eram capazes de realizar processamento de dados em tempo real e tinham uma interface gráfica avançada.III. Foram os primeiros a utilizar o sistema binário para processamento de dados.IV. Eram exclusivamente operados por especialistas devido à complexidade e aos conhecimentos específicos necessários.Assinale a alternativa correta:
O teorema de Taylor é uma ferramenta poderosa no cálculo para aproximar funções por meio de polinômios. Sua compreensão e aplicação são fundamentais em várias áreas da matemática e da física.Dada a função
, aplique o teorema de Taylor para encontrar a aproximação de segunda ordem para
em torno de
, ou seja, encontre o polinômio de grau menor ou igual a 2 que melhor aproxima
para
próximo de
Por meio das integrais, com intervalos definidos, conseguimos determinar a área das funções, ainda que o intervalo seja um valor pequeno ou decimal, como o caso de .Assim, desenvolva a área dada pela integral com os intervalos definidos e assinale a alternativa correta:
A determinação de primitivas de uma função é importante para várias áreas da Ciência e da Tecnologia. Quando temos a integral de uma função raiz, é útil reescrevermos essa função como função da forma xb, em que b é um número real. Eventualmente, esse número pode ser, em muitos casos, um número racional. Daí aplicamos a tabela de primitivas. Uma primitiva da integral
é dada pela alternativa:
Você trabalha em uma empresa que precisa determinar as áreas de contaminação de determinados agentes químicos em regiões de pastagem de gado para corte. A ferramenta matemática para se determinar áreas é a integral definida. Contudo, para se poder aplicar a integral definida, é necessário antes que se obtenha a integral indefinida da função em questão. Na sequência, apresentamos a definição de integral indefinida. Seja f(x) uma função e F(x) uma primitiva de f. Chama-se integral indefinida da função f(x) a expressão F(x) + C, e escrevemos Assinale a alternativa que apresenta uma expressão correta para a integral indefinida de .
Dada a função , é solicitado encontrar os pontos de máximo e mínimo locais, aplicando os conceitos de cálculo diferencial. Esse processo envolve derivar a função, determinar os pontos críticos e avaliar a concavidade do gráfico da função nesses pontos.Assinale a alternativa que contém os pontos de máximo e mínimo locais da função f(x).
Existem vários teoremas que facilitam o cálculo de derivadas. Se , com n um número natural então vale que . Outra regra de derivação importante é a derivada do quociente de duas funções. Considere as funções e deriváveis, com uma função não identicamente nula. Então vale que . Considere as funções e Sendo assim, assinale a alternativa correta que apresenta a derivada solicitada:
Considere a função de custo , onde q representa a quantidade de itens produzidos, podemos analisar como o custo total de produção varia com a mudança na quantidade produzida. A derivada dessa função, C′(q), nos dá a taxa de variação do custo em relação à quantidade de itens, conhecida como custo marginal. O custo marginal é um conceito econômico crucial que indica quanto custará aproximadamente para produzir uma unidade adicional.Calcule a derivada de C em q=10 para determinar a taxa de variação do custo com relação à quantidade produzida nesse ponto e o significado dessa derivada.