여행을 사랑하는 직장인의 개발이야기

[인공지능 AI 기초다지기] Quiz 5 딥러닝 핵심 기초 본문

IT/BoostCourse 부스트코스

[인공지능 AI 기초다지기] Quiz 5 딥러닝 핵심 기초

CTHY 2022. 2. 26. 11:49
Q1. 다음과 같은 numpy array가 주어져 있을 때, 다음 명령어 출력으로 알맞은 것은?
import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr.shape, arr.ndim)

a. (3, 3) 2

b. (2, 2) 3

c. (3, 3) 3

d. (2, 2) 2

 

Q2. 다음과 같이 2개의 Tensor가 있을 때, 계산 결과로 올바른 것은?
torch_tensor_1 = torch.FloatTensor([1, 2, 3])
torch_tensor_2 = torch.FloatTensor([[4], [5], [6]])

print(torch_tensor_1 + torch_tensor_2)

a. tensor([[5., 6., 7.], [6., 7., 8.], [7., 8., 9.]])

b. tensor([[5., 7., 9.]])

c. tensor([[5.], [7.], [9.]])

 

Q3. 다음과 같이 텐서가 주어져있을 때, 계산 결과로 올바른 것은?
import torch

torch_tensor = torch.FloatTensor([[[1], [2], [3]], [[4], [5], [6]], [[7], [8], [9]]])
print(torch_tensor.squeeze(), torch_tensor.squeeze().shape)

a. tensor([1., 2., 3., 4,. 5., 6,. 7,. 8., 9.]) torch.Size([9 , 1])

b. tensor([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]]) torch.Size([3, 3])

c. tensor([[[1.], [2.], [3.]], [[4.], [5.], [6.]], [[7.], [8.], [9.]]]) torch.Size([3, 3, 1])

 

Q4. 다음과 같은 연산이 있을 때, 계산 결과로 올바른 것은?
torch_tensor = torch.FloatTensor([[1, 2, 3, 4], [5, 6, 7, 8]])
torch_tensor = torch_tensor.view([-1, 2])

print(torch_tensor)

a. tensor([[1., 2.], [3., 4.], [5., 6.], [7., 8.]]

b. tensor([[1., 2., 3., 4.], [5., 6., 7., 8.]])

 

Q5. 다음과 같은 형태로 Tensor가 주어져 있을 때, 계산 결과로 올바른 것은?
torch_tensor_1 = torch.FloatTensor([[1, 2, 3, 4]])
torch_tensor_2 = torch.FloatTensor([[5, 6, 7, 8]])

print(torch.cat([torch_tensor_1, torch_tensor_2], axis = 0))

a. tensor([[1.], [2.], [3.], [4.], [5.], [6.], [7.], [8.]])

b. tensor([[1., 2., 3., 4., .5, .6, 7., 8.]])

c. tensor([[1., 2., 3., 4.], [5., 6., 7., 8.]])

 

Q6. 다음과 같은 형태로 linear regression을 위한 가설(모델)을 준비하는 경우, 적절한 코드로 알맞은 것은?
x_train = torch.FloatTensor([[1], [2], [3]])
y_train = torch.FloatTensor([[2], [4], [6]])

w = torch.zeros(1, requires_grad = True)
b = torch.zeros(1, requires_grad = True)

hypothesis = # TODO

a. y_train * w

b. x_train * w + b

c. x_train + b

d. y_train + b

 

Q7. 위에서 작성한 가설(모델)을 이용해 예측한 값과 실제 정답값의 제곱을 이용해 데이터셋의 전체 Loss를 구하는 코드로 알맞은 것은?

a. cost = torch.stack((hypothesis - y_train) ** 2)

b. cost = torch.concat(hypothesis - y_train) ** 2

c. cost = torch.add((hypothesis - y_train) ** 2)

d. cost = torch.mean((hypothesis - y_train) ** 2)

 

Q8. 아래와 같은 학습 데이터가 사용된다면, 가설(모델)의 가중치의 shape으로 알맞은 것은?
x_train = torch.FloatTensor([[73, 80, 75, 77],
							[93, 88, 93, 95],
                            [89, 91, 90, 89],
                            [96, 98, 100, 97],
                            [73, 66, 70, 68]])
                    
w = torch.zeros(# _Q8_, requires_grad = True)
print(w.shape)

a. torch.Size([4])

b. torch.Size([4, 1])

c. torch.Size([4, 4])

d. torch.Size([1, 1])

 

Q9. sigmoid 함수에 대한 설명으로 옳지 않은 것은?

a. 함수 값이 (0, 1) 사이이다.

b. 미분이 불가능하다.

c. 매우 큰 값이 입력일 경우 함수 값은 1에 가까워지며, 매우 작은 값이면 0에 가까워진다.

d. 중간 값은 1/2을 가진다.

 

Q10. softmax 함수에 대한 설명으로 옳지 않은 것은?

a. 함수에 각각 입력된 값은 0~1 사이 값으로 출력된다.

b. softmax 출력의 총합은 1이다.

c. softmax 함수를 적용해도 입력 값의 대소 관계는 변하지 않는다.

d. softmax를 이용해 이진분류 모델을 구성할 수 없다.

Comments