문제 해설

2조

실습

import numpy as np
arr=np.arange(100).reshape(10,10)
print(arr)  # 0~99 까지 정수를 포함하는 10x10 크기의 numpy 배열을 생성

arr2=arr[arr%2!=0]#배열에서 홀수값만 선택
print(arr2) # 새로운 배열 생성  # Q. 1차원 배열로 만드는 건가?

arr3=arr2[arr2%3==0] #새로운 배열에서 3의 배수만 선택
print(arr3) # 새로운 배열 생성

arr4=np.square(arr3) #각 요소의 제곱값 계산
print(arr4)

# 답에 대한 해설 
#

이론

넘파이를 사용하여 배열을 생성할 때, 배열의 형상(Shape)을 변경할 수 없다. X

행렬에서 열벡터를 행벡터로, 행벡터를 열벡터로 바꾼 행렬을 전치행렬이라고 한다. O

‘numpy.random.randint(0, 10, 5)’는 0에서 9사이의 무작위 정수 5개로 구성된 배열을 생성합니다. O

L1-norm과 L2-norm은 기계 학습의 목적에 따라 사용된다. O

수학에서의 내적을 구하기 위해서는 넘파이의 np.inner을 사용하여 내적을 구할 수 있다. O

(틀린이유>!넘파이의 np.inner은 i번째 행벡터와 j번째 행벡터사이의 내적을 성분으로 가지는 행렬을 계산한다. 수학에서 말하는 내적과 다르므로 주의해야한다. )

3조: 2와4 SAI

💡실습 arr=np.arange(0,100).reshape(10,10) print(arr)

odd=arr[arr%2==1] print(odd)

new_arr=odd[odd%3==0] print(new_arr) print(np.square(new_arr))

✏️ 이론 넘파이를 사용하여 배열을 생성할 때, 배열의 형상(Shape)을 변경할 수 없다. → ❌ reshape를 사용하면 변경할 수 있다. 행렬에서 열벡터를 행벡터로, 행벡터를 열벡터로 바꾼 행렬을 전치행렬이라고 한다. → ⭕ numpy.random.randint(0, 10, 5)는 0에서 9사이의 무작위 정수 5개로 구성된 배열을생성합니다. → ⭕ L1-norm과 L2-norm은 기계 학습의 목적에 따라 사용된다. → ⭕ 수학에서의 내적을 구하기 위해서는 넘파이의 np.inner을 사용하여 내적을 구할 수 있다. → ⭕

(틀린이유>!넘파이의 np.inner은 i번째 행벡터와 j번째 행벡터사이의 내적을 성분으로 가지는 행렬을 계산한다. 수학에서 말하는 내적과 다르므로 주의해야한다. )


4조: S4I