Pular para o conteúdo

Serviço de Seleção do Pessoal da Marinha (SSPM) · Marinha do Brasil 2022

Questão 28 — Inteligência Artificial: Redes Neurais — Treinamento por Gradiente e Taxa de Aprendizado

Inteligência Artificial Redes Neurais — Treinamento por Gradiente e Taxa de Aprendizado

Serviço de Seleção do Pessoal da Marinha (SSPM) 2022

Marinha do Brasil · Quadro Técnico do Corpo Auxiliar da Marinha (CP-T) — Informática · Caderno Amarela

Questão anulada

Determinada topologia de Rede Neural Artificial profunda (RNA) foi treinada em diferentes funções escritas em linguagem Python. Cada uma das formas de treino foram parametrizadas nas funções treino1, treino2 e treino3, expressas no código abaixo.

def treino1(rede_neural, n0, learning_rate):

gradiente = 0
for amostra in lista_amostras:

saida = rede_neural.get_saida(amostra.valor)
erro = rede_neural.get_erro(saida, amostra.saida_esperada)
gradiente += rede_neural.backpropagation(erro)

rede_neural.update_weights(n0 * gradiente)
return rede_neural


def treino2(rede_neural, n0):

for amostra in lista_amostras:

saida = rede_neural.get_saida(amostra.valor)
erro = rede_neural.get_erro(saida, amostra.saida_esperada)
gradiente = rede_neural.backpropagation(erro)
rede_neural.update_weights(n0 * gradiente)

return rede_neural


def treino3(rede_neural, n0, fator_n):

n = n0
for amostra in lista_amostras:

saida = rede_neural.get_saida(amostra.valor)
erro = rede_neural.get_erro(saida, amostra.saida_esperada)
gradiente = rede_neural.backpropagation(erro)
rede_neural.update_weights(n * gradiente)
n *= fator_n

return rede_neural

Assim, "rede_neural" representa o modelo de Aprendizado de Máquina e possui os métodos get_saida, que calcula o valor previsto pela rede com base na entrada e o método get_erro, que calcula o erro com base no valor previsto e no valor de referência, respectivamente. Além disso, o objeto "rede_neural" armazena todos os parâmetros da rede, possui a função "backpropagation" para calcular o gradiente do erro em um hiperespaço vetorial, no qual cada dimensão corresponde a um peso e a função "update_weights" para somar aos pesos o valor fornecido em seu argumento. Assinale a opção correta tendo como base os códigos apresentados.
Selecione uma alternativa

Ver gabarito

Questão anulada pela banca.

Fonte: Gabarito preliminar: Gabarito final (após recursos) — página 6