본문 바로가기
CS/인공지능

기계학습 문제 풀이 - 결정 트리, 선형 회귀, 로지스틱 회귀, 소프트맥스 함수, 군집화, k-평균 알고리즘

by Renechoi 2024. 5. 20.

기계학습

 

 

1. 지도학습, 자율학습, 강화학습의 개념을 설명하라. 

 

지도학습은 학습표본이 입력과 그 입력에 대해 기대하는 출력(라벨)으로 구성된다. 학습 알고리즘은 입력에 대한 시스템의 출력이 기대하는 출력을 낼 수 있도록 시스템을 변화시키는 과정을 수행한다. 자율학습은 라벨이 지정되지 않고 입력값만으로 구성된 학습표본 집합을 대상으로 학습이 이루어진다. 자율학습은 학습 데이터 집합에 내재하는 구조를 알아내는 과정으로 볼 수 있다. 강화학습은 입력에 대한 출력정보를 제공하는 것이 아니라 선택한 행동에 대한 보상을 극대화하는 행동을 선택하는 방식의 학습을 수행한다.

 

 

2. 결정트리 학습의 개념을 설명하라.

결정트리는 분할정복 방식으로 입력공간을 분할하여 입력된 대상을 분류하거나 회귀분석을 하는 용도로 사용된다. 결정트리의 비단말노드는 검사항목을 나타내며, 단말노드는 그 노드에 도착했을 때 출력하게 될 값을 나타낸다. 결정트리 학습은 제시된 학습표본을 이용하여 지도학습 방식으로 주어진 문제에 대한 결정트리를 구성한다. 각각의 노드에서는 그 노드에 분류된 학습표본 부분집합에 대해 불순도검사를 한다. 학습표본 부분집합에 여러 클래스의 표본이 섞여 있으면 불순도는 높으며, 적절한 검사를 통해 이를 분할할 수 있는 비단말노드를 생성한다. 반면 불순도가 충분히 낮다면 그 노드에 분류되는 표본들에 해당되는 클래스를 출력하는 단말노드를 생성한다.

 

 

 

3. 선형 회귀와 로직스틱 회귀의 개념을 설명하라. 

 

회귀분석은 독립변수와 독립변수에 의해 영향을 받는 종속변수 사이의 상관관계를 추정하는 기법을 의미한다. 이때 독립변수와 종속변수의 관계를 선형함수로 모델링하는 경우의 회귀분석을 선형회귀라고 한다. \( d \)개의 독립변수 \( x_1, x_2, \ldots, x_d \)와 종속변수 \( y \)의 관계에 대한 선형회귀의 목표는 다음과 같은 선형가설 \( H_L(x_1, x_2, \ldots, x_d) \)를 구하는 것이다.

\[
H_L(x_1, x_2, \ldots, x_d) = w_0 + w_1 x_1 + w_2 x_2 + \cdots + w_d x_d
\]

반면 로지스틱 회귀는 독립변수의 값에 대한 종속변수의 값이 어떤 유형을 구분하는 값인 경우 이 관계를 추정하는 것이다. 로지스틱 회귀에서는 선형함수 \( H_L(x_1, x_2, \ldots, x_d) \)를 로지스틱 함수에 넣어 0과 1 사이의 값을 갖는 가설 \( H_S(x_1, x_2, \ldots, x_d) \)를 학습한다.

\[
H_S(x_1, x_2, \ldots, x_d) = \frac{1}{1 + e^{-(w_0 + w_1 x_1 + w_2 x_2 + \cdots + w_d x_d)}}
\]

 

 

 


 

 

1. 다음 중 교사에 의해 무엇을 할 것인지를 지시받는 것이라기보다는 보상을 통해 학습하는 방식을 의미하는 것은?

① 지도학습  
② 경쟁학습  
③ 강화학습  
④ 자율학습  
 

정답: 3
해설: 지도학습은 입력에 대한 시스템의 출력이 기대하는 출력과 같아지도록 시스템을 변화시키는 학습방법이고, 자율학습은 시스템에 대한 입력값만으로만 구성되며, 입력에 대한 라벨은 지정되지 않은 학습 데이터를 이용하여 학습 데이터 집합에 내재하는 구조를 알아내는 학습방법이다. 경쟁학습은 입력 데이터에 대해 반응하기 위한 권한을 다른 노드와 경쟁을 통해 얻어 내는 방식으로 학습한다.

 


2. 다음 중 학습과 관련된 추론방법은 어느 것인가?

① 유도법  
② 귀납법  
③ 연역법  
④ 삭감법  

 

정답: 2
해설: 귀납법은 공통적인 내용을 표현하는 사실들로부터 일반적 규칙을 찾아내는 추론방법으로, 이러한 과정은 학습과 밀접한 관계가 있다.

 


3. 학습된 지식을 이용하여 어떠한 대상에 대한 식별을 했을 때 '거짓 양성'의 결과가 나왔다는 것은 어떤 의미인가?

① 식별 대상 클래스에 속하는데 속하지 않는 것으로 판단한 경우  
② 식별 대상 클래스에 속하지 않는데 속하는 것으로 판단한 경우  
③ 식별 대상 클래스에 속하는 패턴을 속하는 것으로 올바르게 판단한 경우  
④ 식별 대상 클래스에 속하지 않는 패턴을 속하지 않는 것으로 올바르게 판단한 경우  

 

정답: 2
해설: 거짓 양성의 경우 '참'이 아닌데 '참'으로 잘못 판단하는 경우이며 거짓 음성인 경우 '참'인데 '거짓'으로 잘못 판단하는 경우이다. 식별의 오류는 두 가지 유형 중 하나로 나타날 수 있다. 식별 대상 클래스에 속하지 않는데 속하는 것으로 판단한 경우를 '거짓 양성(false positive)'이라 하고, 식별 대상 클래스에 속하는데 속하지 않는 것으로 판단한 경우는 '거짓 음성(false negative)'이라고 한다.

 

 

 

4. 결정트리에 대한 올바른 설명은?

① 트리 생성과정에서 노드의 불순도검사 결과 불순도가 0이면 그 노드는 단말노드로 한다.  
② 자율학습 방식으로 학습한다.  
③ 어느 노드에서 엔트로피값이 크면 불순도는 낮은 것으로 한다.  
④ 결정트리의 깊이는 2이다.

 

정답: 1
해설: 결정트리란 불할정복 방식으로 입력공간을 분할하여 입력된 대상을 분류하거나 회귀분석을 하기 위한 트리이다. 노드의 불순도가 높다면 그 노드에 분류된 학습표본에 서로 다른 클래스의 표본이 섞여 있음을 의미하며, 0이면 한 클래스에 속하는 표본만 있다는 의미이다. 따라서 불순도가 높으면 노드를 분할하고, 그렇지 않으면 그 노드는 더 이상 분할하지 않고 단말노드가 된다.

 

엔트로피는 불순도검사의 척도로 사용될 수 있다. 엔트로피값은 데이터 집합이 가지고 있는 불확실성을 의미한다. 엔트로피가 클수록 불확실성이 높으며, 이는 서로 다른 표본이 섞여 있을을 의미하므로 불순도가 높은 것으로 볼 수 있다.

 


5. 다음 중 독립변수와 종속변수의 선형 관계를 표현하는 가설에 대한 학습을 나타내는 것은?

① 로지스틱 회귀  
② 최대가능도추정(MLE)  
③ 선형회귀  
④ k-평균 알고리즘

 

정답: 3
해설: 회귀분석은 독립변수와 독립변수에 의해 영향을 받는 종속변수 사이의 상관관계를 추정하는 기법을 의미하는데, 그중 독립변수와 종속변수의 관계를 선형함수로 모델링하는 것을 선형회귀라고 한다. 로지스틱 회귀는 독립변수 값에 대해 종속변수가 0과 1 사이의 값을 갖는 일부 유형 중 하나를 구분하는 목적으로 사용될 수 있다. 최대가능도추정(MLE)은 학습표본 집합을 바탕으로 모집단의 확률분포를 결정하는 매개변수를 결정하는 데 사용한다. k-평균 알고리즘은 학습표본 집합을 대표하는 k개의 평균클러스터를 찾는 알고리즘이다.

 


6. 다음 중 로지스틱 회귀를 경사하강법으로 해결하기 위해 가장 적합한 비용함수는 무엇인가?

① 표준화  
② 평균제곱오차(MSE)  
③ 유클리드 거리  
④ 교차 엔트로피

 

정답: 4
해설: 가설에 의한 출력과 학습표본의 출력 사이의 차이를 줄이기 위해 평균제곱오차를 사용할 수 있지만, 로지스틱 회귀에서는 일반적으로 교차 엔트로피 비용함수가 더 적합하다. 교차 엔트로피는 확률 분포 간의 차이를 측정하여, 예측 확률과 실제 클래스 라벨 간의 불확실성을 최소화하는 데 사용된다.

 

 

 

7. 다음은 다항 로지스틱 회귀의 구조를 나타내는 그림이다. (ㄱ)에 넣을 적절한 함수는 무엇인가?



① 소프트맥스 함수  
② 로지스틱 함수  
③ 선형함수  
④ 로그 함수  

 

정답: 1
해설: 소프트맥스 함수는 실수값으로 구성된 \( N \)차원 벡터를 구성하는 각각의 값을 0부터 1 사이의 값으로 압축하는 역할을 한다. 압축된 값들의 총합은 1이 된다.

 


8. 다음 중 자율학습 방식의 군집화 알고리즘에 속하는 것은?

① \( k \)-NN 알고리즘  
② 결정트리  
③ 퍼셉트론  
④ \( k \)-평균 알고리즘  

 

정답: 4
해설: \( k \)-평균 알고리즘은 표본집합을 대표하는 \( k \)개의 평균벡터를 찾음으로써 특징공간을 \( k \)개의 영역으로 분할하는 군집화 알고리즘이다.

 


9. 다음은 \( k \)-평균 알고리즘이다. 공란 (가)에 넣을 적절한 처리는?

function kMeansClustering(x, k)
  // x[1..n]: 학습 표본 데이터 집합
  // m[1..k]: 평균벡터
  // c[1..k]: 가장 가까운 평균벡터 m[j]인 학습표본의 수
  m[1..k] 초기위치 선택;

repeat
    mOld = m;
    // x[1..N]을 k개의 군집에 분류
    for i = 1 to N do
        학습표본 x[i]에 대해 가장 가까운 평균벡터 m[1]을 선택;
        x[i]를 군집 j로 분류함;
    end-for;
    // m[1..k]를 새로운 군집의 평균으로 조정
    for j = 1 to k do
        (가);
    end-for;
until m == mOld;  // m에 변화가 없으면 마침
return m;
end-function;

 

 

① 군집 j의 학습표본들을 제거한다.  
② \( m[j] \) = 군집 j로 분류된 학습표본들의 평균  
③ \( m[j] = x[j] \)  
④ \( m[j] = mOld[j] \)  

 

정답: 2
해설: \( k \)-평균 알고리즘에서는 각각의 학습표본 벡터에 대해 \( k \)개의 평균벡터 중 가장 가까운 평균벡터를 구하여 그 평균벡터의 클러스터로 분류한 다음 각각의 평균벡터를 그 평균벡터에 분류된 학습표본 벡터의 평균으로 갱신하는 것을 반복한다.

 

 


 

 

 

1. 지도학습에 대한 올바른 설명은?

① 학습표본들은 입력 데이터 값만으로 구성된다.  
② 입력에 대한 시스템의 출력이 기대하는 출력과 같아지도록 시스템을 변화시킨다.  
③ 입력에 대한 직접적인 기대 출력이 아닌 보상을 제공하여 시스템을 변화시킨다.  
④ 군집화라고도 한다.

 

정답: 2
해설: 정답은 ② 입력에 대한 시스템의 출력이 기대하는 출력과 같아지도록 시스템을 변화시킨다이다. 지도학습은 입력 데이터와 그에 대응하는 기대 출력(라벨)을 사용하여 시스템이 올바른 출력을 내도록 학습시키는 방식이다. ①은 입력 데이터뿐만 아니라 출력 데이터도 필요하므로 틀리다. ③은 강화학습에 대한 설명이다. ④는 군집화는 비지도학습에 해당하므로 지도학습과는 다르다.



2. 다음 중 귀납적 학습에 대한 설명으로 올바른 것은?

① 식별을 위한 판단규칙을 사용자가 직접 입력한다.  
② 학습을 위한 예의 집합은 모든 가능한 경우를 포함한다.  
③ 학습과정에서 제시되지 않은 입력에 대해서도 정확하게 판단할 수 있도록 학습된다.  
④ 반복적인 관찰이나 경험을 기반으로 한 학습방법이다.

 


정답: 4
해설: 정답은 ④ 반복적인 관찰이나 경험을 기반으로 한 학습방법이다. 귀납적 학습은 관찰된 데이터로부터 일반적인 규칙이나 패턴을 추론하는 방식이다. ①은 규칙 기반 학습에 해당하며, 사용자가 직접 규칙을 입력한다. ②는 모든 가능한 경우를 포함하기 어려워 현실적이지 않다. ③은 귀납적 학습의 목표이지만, 제시되지 않은 입력에 대해 항상 정확하게 판단할 수는 없다.

 

 


3. 결정트리의 학습에서 어떠한 노드를 분할하는 경우는?

① 노드의 불순도가 높은 경우  
② 불순도가 0인 경우  
③ 불순도가 정해진 임계치 미만인 경우  
④ 노드에 분류된 학습표본의 수가 많은 경우

 


정답: 1
해설: 정답은 ① 노드의 불순도가 높은 경우이다. 결정트리는 불순도가 높은 노드를 분할하여 하위 노드의 불순도를 낮추려 한다. 불순도가 0인 경우에는 이미 순수한 노드이므로 분할할 필요가 없다. 불순도가 임계치 미만이면 충분히 순수한 상태이므로 분할하지 않는다. 노드에 분류된 학습표본의 수가 많더라도 불순도가 낮으면 분할할 이유가 없다.

 

 

 


4. 다음 중 선형회귀에 대한 적절한 설명은?

① 독립변수에 대한 종속변수의 관계가 3차 방정식으로 표현된다.  
② 오차 제곱의 평균이 최소가 되도록 선형가설을 학습한다.  
③ 로지스틱 함수로 가설을 표현한다.  
④ 종속변수는 두 유형 중 하나를 나타내는 값이다.

 


정답: 2
해설: 정답은 ② 오차 제곱의 평균이 최소가 되도록 선형가설을 학습한다이다. 선형회귀는 독립변수와 종속변수 간의 관계를 직선으로 표현하고, 그 직선이 데이터를 가장 잘 설명하도록 오차 제곱의 평균을 최소화한다. ①은 선형회귀가 아닌 다항회귀에 대한 설명이다. ③은 로지스틱 회귀에 관한 것이며, 로지스틱 회귀는 이진 분류 문제를 다룬다. ④는 분류 문제로, 선형회귀가 아니라 로지스틱 회귀에 해당한다.

 

 

 

5. 다항 로지스틱 회귀에서 선형 판별함수의 값을 0부터 1 사이의 값으로 압축하기 위해 사용하는 것은?

① 엔트로피  
② 교차 엔트로피  
③ 소프트맥스 함수  
④ 자연로그

 


정답: 3
해설: 정답은 ③ 소프트맥스 함수이다. 소프트맥스 함수는 선형 판별함수의 출력을 0부터 1 사이의 값으로 변환하여 확률로 해석할 수 있게 한다. 엔트로피와 교차 엔트로피는 손실 함수로 사용되며, 자연로그는 비선형 변환을 수행하지만 확률값으로 압축하지 않는다. 소프트맥스 함수는 분류 문제에서 각 클래스에 속할 확률을 계산할 때 유용하다.

 

 

 


6. \( k \)-평균 군집화 알고리즘에서 어떠한 표본 부분집합이 특정 평균벡터에 가장 가까운 것으로 분류되었을 때 어떠한 처리를 하는가?

① 학습표본들을 제거한다.  
② 그 평균벡터를 제거한다.  
③ 학습표본들을 평균벡터 방향으로 이동시킨다.  
④ 평균벡터의 위치를 그 표본 부분집합에 속하는 표본들의 평균위치로 업데이트한다.


정답: 4
해설: 정답은 ④ 평균벡터의 위치를 그 표본 부분집합에 속하는 표본들의 평균위치로 업데이트한다이다. \( k \)-평균 군집화 알고리즘에서는 각 반복 단계에서 평균벡터를 업데이트하여 클러스터의 중심을 점점 더 최적화한다. 학습표본들을 제거하거나 평균벡터를 제거하는 방식은 군집화 과정에 맞지 않는다. 학습표본들을 평균벡터 방향으로 이동시키는 것이 아니라, 평균벡터를 새로운 중심으로 조정하여 알고리즘을 반복한다.

 


 

 

1. 학습이란 무엇인가? 그 의의를 설명하라.

학습은 경험이나 데이터를 통해 지식을 습득하고 이를 기반으로 성능을 개선하는 과정이다. 기계학습에서는 입력 데이터와 출력 데이터를 사용하여 모델을 학습시켜, 새로운 데이터에 대해 정확한 예측을 할 수 있도록 한다.

 



2. 학습을 위한 방법에는 어떤 것이 있는가?

학습 방법에는 지도학습, 자율학습, 강화학습 등이 있다. 지도학습은 입력과 출력 데이터 쌍을 사용하여 모델을 학습시키고, 자율학습은 입력 데이터만을 사용하여 데이터의 구조를 학습한다. 강화학습은 보상을 통해 최적의 행동을 학습하는 방식이다.

 



3. 독립변수 \(\mathbf{x}\)와 종속변수 \(y\)가 다음 표와 같은 6개의 표본이 주어졌을 때 로지스틱 회귀의 결과를 구하라.

\[
\begin{array}{ccc}
i & \mathbf{x}^{(i)} & y^{(i)} \\
1 & (1, 3) & 0 \\
2 & (2, 3) & 0 \\
3 & (1, 2) & 0 \\
4 & (2, 1) & 1 \\
5 & (3, 2) & 1 \\
6 & (3, 1) & 1 \\
\end{array}
\]

 

 

 

로지스틱 회귀의 결과를 구하려면 먼저 로지스틱 회귀 모델을 설정하고, 주어진 표본 데이터에 대해 모델을 학습해야 한다. 로지스틱 회귀는 주어진 데이터를 사용하여 각 표본의 확률을 추정하는 모델이다.

1. 로지스틱 회귀 모델 수식:
   \[
   h_{\theta}(\mathbf{x}) = \frac{1}{1 + e^{-(\theta_0 + \theta_1 x_1 + \theta_2 x_2)}}
   \]
   여기서 \( \mathbf{x} = (x_1, x_2) \)는 독립변수이고, \( \theta = (\theta_0, \theta_1, \theta_2) \)는 회귀 계수이다.

2. 비용 함수:
   \[
   J(\theta) = -\frac{1}{m} \sum_{i=1}^{m} \left[ y^{(i)} \log h_{\theta}(\mathbf{x}^{(i)}) + (1 - y^{(i)}) \log (1 - h_{\theta}(\mathbf{x}^{(i)})) \right]
   \]
   여기서 \( m \)은 표본의 수이다.

3. 모델 학습:
   비용 함수를 최소화하는 \( \theta \) 값을 찾기 위해 경사 하강법이나 다른 최적화 알고리즘을 사용할 수 있다.

표본 데이터는 다음과 같다:

\[
\begin{array}{ccc}
i & \mathbf{x}^{(i)} & y^{(i)} \\
1 & (1, 3) & 0 \\
2 & (2, 3) & 0 \\
3 & (1, 2) & 0 \\
4 & (2, 1) & 1 \\
5 & (3, 2) & 1 \\
6 & (3, 1) & 1 \\
\end{array}
\]

계산 과정:
1. 특성 행렬 \(\mathbf{X}\)와 타겟 벡터 \(\mathbf{y}\) 설정:
   \[
   \mathbf{X} = \begin{bmatrix}
   1 & 1 & 3 \\
   1 & 2 & 3 \\
   1 & 1 & 2 \\
   1 & 2 & 1 \\
   1 & 3 & 2 \\
   1 & 3 & 1 \\
   \end{bmatrix}, \quad \mathbf{y} = \begin{bmatrix}
   0 \\
   0 \\
   0 \\
   1 \\
   1 \\
   1 \\
   \end{bmatrix}
   \]

2. 초기 \(\theta\) 설정 및 최적화 알고리즘 사용:
   경사 하강법을 사용하여 \(\theta\) 값을 최적화하면 된다. 

import numpy as np
from sklearn.linear_model import LogisticRegression

# 데이터 설정
X = np.array([
    [1, 3],
    [2, 3],
    [1, 2],
    [2, 1],
    [3, 2],
    [3, 1]
])
y = np.array([0, 0, 0, 1, 1, 1])

# 모델 학습
model = LogisticRegression()
model.fit(X, y)

# 회귀 계수와 절편
theta_0 = model.intercept_[0]
theta_1, theta_2 = model.coef_[0]

print("회귀 계수:", theta_1, theta_2)
print("절편:", theta_0)

# 예측 확률
probabilities = model.predict_proba(X)[:, 1]
print("예측 확률:", probabilities)

 

실행 결과: 

 

회귀 계수: 2.19735686 -2.19735686
절편: -0.55073470
예측 확률: [0.21583478 0.47019622 0.35035217 0.71429764 0.76324952 0.94460889]

 

 

1. 회귀 계수는 \( \theta_1 \approx 2.197 \), \( \theta_2 \approx -2.197 \)로 추정된다. 이는 \( x_1 \)과 \( x_2 \)의 기여도를 나타낸다.
2. 절편은 \( \theta_0 \approx -0.551 \)로 추정된다. 이는 모델의 기준선을 조정하는 역할을 한다.
3. 예측 확률은 주어진 데이터에 대해 각 표본이 클래스 1에 속할 확률을 나타낸다. 예를 들어, 첫 번째 표본 \([1, 3]\)에 대한 예측 확률은 약 21.6%이다.



4. 군집화란 무엇이고, 왜 필요한가?

군집화는 주어진 데이터 집합을 유사한 특성을 가진 그룹으로 분류하는 비지도 학습 방법이다. 군집화를 통해 데이터의 구조를 이해하고, 데이터 분석, 패턴 인식, 데이터 압축 등 다양한 응용 분야에서 활용할 수 있다. 이는 데이터의 숨겨진 패턴을 발견하고, 데이터 처리의 효율성을 높이는 데 필수적이다.

 

 

 

 


 

 

1. 지도학습에 대한 올바른 설명은?

 

1) 학습표본들은 입력 데이터 값만으로 구성된다.
2) 입력에 대한 시스템의 출력이 기대하는 출력과 같아지도록 시스템을 변화시킨다.
3) 입력에 대한 직접적인 기대 출력이 아닌 보상을 제공하여 시스템을 변화시킨다.
4) 군집화라고도 한다.

 

정답: 2

해설 : 입력과 이에 대해 기대하는 출력을 학습 데이터로 제시하여 입력에 대한 시스템의 출력이 기대하는 출력과 같아지도록 시스템을 변화시키는 학습 방법이다. ①, ④는 자율학습, ③은 강화학습에 대한 설명이다.

 

 

2. 다음 중 귀납적 학습에 대한 설명으로 올바른 것은?

 

1) 식별을 위한 판단 규칙을 사용자가 직접 입력한다.
2) 학습을 위한 예의 집합은 모든 가능한 경우를 포함한다.
3) 반복적인 관찰이나 경험을 통해 일반화된 지식을 습득하는 학습 방법이다.

4) 학습 과정에서 제시된 학습 표본과 정확히 일치하는 입력에 대해서만 판단을 내릴 수 있도록 학습하는 것이다.

 

정답: 3

해설 : 반복적인 관찰이나 경험을 기반으로 해서 논리를 이끌어 내는 추론방법이다. 학습은 제공된 학습 표본들을 대상으로 이루어지는데, 이를 일반화하는 형태로 학습을 함으로써 입력이 학습에 사용된 표본 중 일치하는 것이 없더라도 적절한 판단을 내릴 수 있다.

 

 

3. 결정트리의 학습에서 어떠한 노드를 분할하는 경우는?

 

1) 노드의 불순도가 높은 경우
2) 불순도가 0인 경우
3) 불순도가 정해진 임계치 미만인 경우

4) 노드에 분류된 학습표본의 수가 많은 경우

 

정답: 1

해설 : 불순도는 어떠한 노드에 서로 다른 클래스에 속하는 학습표본들이 얼마나 섞여 있는가를 나타내는 것으로, 불순도가 낮을수록 특정 클래스에 속하는 학습표본들이 집중적으로 들어 있음을 나타낸다.

 

 

4. 결정트리 학습에 대한 설명으로 올바른 것은?

1) 불순도가 높아지는 방향으로 노드를 분할한다.
2) 루트 노드의 불순도는 0이다.
3) 불순도가 큰 값을 갖는 노드는 단말노드가 된다.
4) 엔트로피나 지니 지수 등이 불순도 계산에 사용된다.

 

정답: 4

해설 : 결정트리는 분할정복 방식으로 특징공간을 분할한다. 이때 어떠한 노드에 분류되는 표본 부분집합의 불순도가 높으면, 즉, 여러 클래스의 표본이 섞인 정도가 높으면 노드를 분할한다. 불순도의 계산에는 엔트로피나 지니 지수 등이 활용될 수 있다. 이러한 분할 과정을 반복하면 리프로 갈수록 불순도가 낮아지며, 리프는 불순도가 0(또는 정해진 임계치 미만)이다. 루트 노드의 불순도가 0이면 모든 학습 표본이 하나의 클래스만 있는 경우며, 일반적인 분류 문제에서는 불순도가 0이 되지 않는다. 다수의 클래스로 분류하는 문제의 경우 루트는 전체 특징공간을 포괄하므로 불순도가 높다.

 

 

 


 

1. 다음 중 선형회귀에 대한 적절한 설명은?

 

1) 독립변수에 대한 종속변수의 관계가 3차 방정식으로 표현된다.
2) 오차 제곱의 평균이 최소가 되도록 선형가설을 학습한다.
3) 로지스틱 함수로 가설을 표현한다.
4) 종속변수는 두 유형 중 하나를 나타내는 값이다.

 

정답: 2

해설 : 선형회귀는 독립변수에 대한 종속변수의 관계를 선형(1차) 방정식으로 표현한다. 오차 제곱의 평균(MSE)이 최소가 되도록 경사하강법을 적용하여 학습을 진행할 수 있다. ③과 ④는 로지스틱 회귀에 대한 것이다.

 

 

2. 경사하강법으로 비용함수를 최소화하도록 학습시키는 과정에 대한 올바른 설명은?

 

1) 학습률은 큰 값일수록 좋다.
2) 계수를 항상 일정한 방향으로 변화시킨다.
3) 비용함수 기울기의 음의 방향으로 계수를 변화시킨다.
4) 여러 번 반복하여 학습하지 않고 한 번에 학습이 완료된다.

 

정답: 3

해설 : 경사하강법은 비용함수가 최소가 되도록 하기 위해 비용함수의 기울기 방향의 반대 방향으로 변화하도록 계수를 변화시킨다. 이때 급격한 계수의 변화로 학습이 올바른 값으로 수렴하지 못하는 것을 방지하기 위해 작은 크기의 학습률을 지정하여 서서히 목표에 수렴하도록 한다.

 

 

3. 다음 중 로지스틱 회귀를 이용하여 학습할 수 있는 것은?

 

1) 독립변수와 종속변수 사이의 관계를 2차 함수로 나타낸다.
2) 독립변수에 따라 군집화를 한다.
3) 일련의 행동에 따른 보상이 최대화되도록 학습을 한다.
4) 독립변수의 값에 따라 종속변수가 0 또는 1이라는 값을 낼 수 있는 가설을 학습한다.

 

정답: 4

해설 : 로지스틱 회귀는 독립변수에 따라 종속변수가 두 클래스 중 하나의 유형을 나타내는 값을 낼 수 있도록 한다. 만일 3개 이상의 클래스로 구분하려고 할 때는 다항 로지스틱 회귀를 사용한다.

 

 

4. 다항 로지스틱 회귀에서 선형 판별함수의 값들을 0부터 1 사이의 값으로 압축하기 위해 사용하는 것은?

 

1) 엔트로피
2) 교차 엔트로피
3) 소프트맥스 함수
4) 자연로그

 

정답: 3

해설 : 소프트맥스 함수는 로지스틱 함수를 일반화한 것으로, N개의 입력 값을 각각 0부터 1 사이이며 총 합이 1인 값으로 변환한다. 교차 엔트로피는 로지스틱 회귀 등의 학습에서 비용함수로 사용된다.

 

5. k-평균 군집화 알고리즘에서 어떠한 표본 부분집합이 특정 평균벡터에 가장 가까운 것으로 분류되었을 때 어떠한 처리를 하는가?

 

1) 평균벡터의 위치를 그 표본 부분집합에 속하는 표본들의 평균위치로 업데이트한다.
2) 그 평균벡터를 제거한다.
3) 학습표본들을 평균벡터 방향으로 이동시킨다.
4) 학습표본들을 제거한다.

 

 

정답: 1

해설 : k-평균 군집화에서는 학습표본 집합 내의 각각의 학습표본을 k개의 평균벡터 중 가장 가까운 것으로 분류한다. 그 다음 각각의 평균벡터에 대해 그 평균벡터와 가장 가까운 것으로 분류된 학습표본들의 평균을 구하고, 이 값으로 평균벡터를 업데이트한다. 이 과정을 평균벡터가 적절한 위치에 수렴할 때까지 반복한다.

 


 

 

참고 자료: 

- 인공지능 (이광형,이병래 공저 | 한국방송통신대학교출판문화원 | 2018)

 

반응형