ML MIDTERM
문제 관리
← 분야 선택으로
NumPy
18문제 풀이
객관식은 정답을 모두 고르고, 주관식과 빈칸 채우기는 답을 입력한 뒤 채점하기를 눌러 주세요.
1번 문제
다음 코드의 결과로 옳은 것은 무엇인가요? np.array([1, 2, 3]) * 2
1.
[1, 2, 3, 1, 2, 3]
2.
[2, 4, 6]
3.
[1, 4, 9]
4.
오류 발생
2번 문제
shape가 (3, 4)인 2차원 배열의 원소 개수는 몇 개인가요?
1.
7개
2.
12개
3.
16개
4.
64개
3번 문제
arr = np.array([10, 20, 30, 40])일 때 arr[1:3]의 결과는 무엇인가요?
1.
[10, 20]
2.
[20, 30]
3.
[20, 30, 40]
4.
[30, 40]
4번 문제
다음 코드를 실행 할 경우 예상되는 결과값은? <문제> import numpy as np test_a = np.array([[4,8],[2,9]]) print(test_a * test_a)
1.
[[16 64] [4 81]]
2.
[[32 104] [26 97]]
3.
[[8 16] [4 18]]
4.
[[4 8] [2 9]]
5번 문제
다음 코드를 실행 할 경우 예상되는 결과값은? <문제> import numpy as np test_a = np.array([[5,5,5],[3,3,3]]) print(test_a ** 2)
1.
[[5 5 5 ] [3 3 3]]
2.
[[25 25 25 ] [9 9 9]]
3.
[[10 10 10] [6 6 6]]
4.
[[75 45] [45 27]]
6번 문제
A = np.array([[3,22,2],[3 1 5]]), B = np.array([[6,7,9],[2,1,3]])일때, 다음 중 연산이 실행되지 않고 오류가 발생하는 것은?
1.
A*B
2.
A.dot(B)
3.
A.T.dot(b)
4.
A.dot(B.T)
7번 문제
다음 수식을 나타내는 넘파이 코드를 작성하고자 한다. 다음 코드 중 결과가 다른 것을 하나 찾으시오. $$\sqrt{\frac{1}{N}\sum_{i=1}^{N} (y_i-\hat{y}_i)^2}$$ import numpy as np Y_true = np.array([1,1,0,1,1]) # Y Y_pred = np.array([0.23,0.5,0.99,0.69,0.4]) # y_hat
1.
np.sqrt(np.sum((Y_true - Y_pred)**2) / len(Y_true))
2.
diff = (Y_true - Y_pred) np.sqrt(diff ** 2 / len(Y_true))
3.
np.sqrt(np.sum(np.square((Y_true - Y_pred))) / len(Y_true))
4.
diff = (Y_true - Y_pred) np.sqrt(diff.T.dot(diff) / len(Y_true))
8번 문제
다음 코드를 실행 할 경우 예상되는 결과값은? import numpy as np test_a = np.arange(1,10).reshape(3,3) test_b = np.arange(6).reshape(2,3) test_a.dot(test_b.T)
1.
array([[ 30, 36, 42], [66, 81, 96], [102,126, 150]])
2.
array([[5, 14], [15, 50]])
3.
array([[18, 21, 24], [54, 66, 78]])
4.
array([[ 8, 26], [17, 62], [26, 98]])
9번 문제
다음 중 넘파이 배열의 특징으로 적합한 것을 모두 고르시오.
복수 정답 문제입니다. 정답을 모두 선택하세요.
1.
C의 데이터 타입을 기본으로 배열이 생성된다.
2.
동적 타이핑이 지원된다.
3.
하나의 데이터 타입만으로 배열이 생성된다.
4.
새로운 데이터를 할당할 때 메모리를 유연하게 사용하여 할당 속도가 빠르다
10번 문제
다음 코드를 실행 할 경우 예상되는 결과값은 무엇인가 import numpy as np arr = np.arange(16).reshape(4,4) print(arr.size - (arr.shape[0] * arr.ndim))
1.
4
2.
오류 발생
3.
8
4.
16
11번 문제
다음 코드를 실행할 경우 예상되는 결과값은 무엇인가? import numpy as np arr = np.arange(20).reshape(10,2) x,y = arr.shape print(arr.reshape(y,x).shape)
1.
(10, 2)
2.
(2, 10)
3.
(5, 4)
4.
오류 발생
12번 문제
다음 배열은 벡터이다. 이 배열을 4 X 6의 행렬로 바꾸려고 할 때, 빈칸에 알맞은 것을 고르시오 import numpy as np arr = np.arange(24) arr = arr. 빈칸
1.
reshape(4, 6)
2.
reshape(-1, 4)
3.
flatten(6, 4)
4.
flatten()
13번 문제
다음 코드를 실행 했을 때 결과값이 다른 하나를 고르시오 import numpy as np arr = np.arange(8)
1.
arr.flatten()
2.
arr.reshape(2, -2)
3.
arr.reshape(arr.size)
4.
arr
14번 문제
다음 코드를 실행할 경우 예상되는 결과값은? arr_1 =np.arange(4) arr_2 = np.arange(4, 0, -1) np.any(arr_1 < arr_2)
1.
False
2.
True
3.
array([True, True, False, False])
4.
array([0, 1, 2, 3])
15번 문제
다음 코드를 실행할 경우 예상되는 결과 값은? a = np.arrange(6).reshape(2,3) b = a>4 a[b]
1.
array([5])
2.
array([0,1,2])
3.
array([[False, False, False],[False, False, True]])
4.
array([3,4,5])
16번 문제
다음 find_nearest_value 함수는 벡터와 어떤 값을 입력하면 해당 벡터 값 중 입력된 값과 차이가 가장 작은 값이 반환된다. 해당 함수로 가장 적합한 코드를 찾으시오 import numpy as np X = np.array([1, 2, 3, 4, 5, 6, 7]) target_value = 4.3 find_nearest_value(X, target_value
1.
def find_nearest_value(X, target_value): result = X[np.argmax(np.abs(X - target_value))] return result
2.
def find_nearest_value(X, target_value): result = X[np.abs(X - target_value)] return result
3.
def find_nearest_value(X, target_value): result = X[np.argmin(np.abs(X - target_value))] return result
4.
def find_nearest_value(X, target_value): result = X[np.argmax((X - target_value))] return result
17번 문제
다음 코드를 실행 할 경우 예상되는 결과 값은? Z = np.array([6,6,6,4,7,9,1,8,8,7]) Z[Z.argsort()[:5]]=0 print(Z)
1.
array([6, 6, 6, 4, 7,9, 1, 8, 8, 4])
2.
array([6, 6, 6, 4, 7])
3.
array([6, 3, 9, 0, 1])
4.
[0 0 0 0 7 9 0 8 8 7]
18번 문제
다음 코드를 실행할 경우 예상되는 결과 값은? arr = np.array([[17,27,14,11], [8,24,25,26], [11,26,26,23], [3,30,4,25], [22,18,24,11]]) print(arr[[0,2,1]])
1.
[[17 27 14 11] [11 26 26 23] [ 8 24 25 26]]
2.
[[17 11 8] [27 26 24] [ 14 26 25] [11 23 26]]
3.
[0, 2, 1]
4.
[[17 27 14 11 ] [ 8 24 25 26] [11 26 26 23]]
채점하고 해설 보기