기타 등등/학교 강의 관련 글들

기계학습 중간고사 정리

smile blog 2024. 10. 17. 17:51

강의 자료 문제

계산 공식 문제

정의 문제

실습코드 문제 (코드 채우기 문제)

: 라이브러리로 기계학습 모델 만드는 코드, 학습시키는 함수, 예측시키는 함수

 

수업시간에 풀어보라고 했던 알고리즘

학습 모델의 변천 과정

 

단답형 (부분점수 x)


Q1. W가 [1,0,5] 와 같을 때 주어진 학습률, x, y 를 이용해 경사하강법으로 W 한 번 개선 되었을 때 값 구하기 / 다음의 cost function 이 주어지고, 학습을 한 번 진행했을 때의 w의 값은?

2-1장 연습문제

 

Q2. Precision, recall, f1-score 문제/ 모델이 예측한 코로나 양성, 음성인 사람들의 수를 토대로 F1-Score를 계산하시오

from sklearn.metrics import confusion_matrix, classification_report, accuracy_score, f1_score, precision_score, recall_score

# 예시 데이터 (실제 값과 모델 예측 값)
# 실제 값: 1은 양성, 0은 음성
y_true = [0, 1, 1, 0, 1, 0, 1, 1, 0, 0]  # 실제 코로나 테스트 결과
y_pred = [0, 1, 0, 0, 1, 0, 1, 0, 1, 0]  # 모델의 예측 결과

# 혼동 행렬 출력
cm = confusion_matrix(y_true, y_pred)
print("Confusion Matrix:\n", cm)

# 개별 지표 계산
precision = precision_score(y_true, y_pred)
recall = recall_score(y_true, y_pred)
f1 = f1_score(y_true, y_pred)
accuracy = accuracy_score(y_true, y_pred)

print(f"Precision: {precision:.2f}")
print(f"Recall: {recall:.2f}")
print(f"F1-Score: {f1:.2f}")
print(f"Accuracy: {accuracy:.2f}")

# 또는 classification_report를 사용하여 모든 지표를 한 번에 출력 가능
print("\nClassification Report:\n", classification_report(y_true, y_pred))

 

[[TN  FP]
 [FN  TP]]

 

Confusion Matrix:
[[4 1]
 [2 3]]

 

Q3. decision tree 학습시키는 함수 이름, 예측하는 함수 이름

1. **학습시키는 함수 이름: decision_tree.fit(x_data, y_data)
2. **예측하는 함수 이름: decision_tree.predict(x_data)

 

 

Q6. sklearn.svm.???(kernel=???)

### 1. `sklearn.svm.SVC(kernel=???)`
- **설명**: 서포트 벡터 분류기(Support Vector Classifier)를 만듭니다. 분류 문제에 사용됩니다.
- **kernel 옵션**:
  - `linear`: 선형 SVM을 사용합니다.
  - `poly`: 다항식 커널을 사용합니다.
  - `rbf`: 방사형 기저 함수 커널을 사용합니다. 비선형 데이터를 처리할 때 주로 사용됩니다.
  - `sigmoid`: 시그모이드 커널을 사용합니다.
  
예시:

from sklearn.svm import SVC
model = SVC(kernel='linear')  # 선형 커널을 사용하는 SVM 분류기

 

 

Q9. 비터비 알고리즘을 수행하여 적합한 상태열을 나열하시오 / Viterbi 알고리즘 적용해서 HMM 모델 주어졌을 때 Output 구하기

5-1 화인문제

 

 

Q3. CRFs 정의 식으로 주어졌을때 무슨 모델인지 이름 쓰기

Q3의 CRFs 정의가 주어졌을 때, 해당 모델의 이름은 **조건부 확률장(Conditional Random Field, CRF)**입니다. 

CRFs는 시퀀스 또는 구조화된 예측 문제에서 자주 사용되는 확률 그래픽 모델로, 주어진 관측 값에 대한 조건부 확률을 모델링하는 데 사용됩니다.

 

Q4. 제약조건이 등식일 때 목적함수 최솟값 구하는 함수 이름

함수 이름은 **라그랑주 함수 (Lagrangian)** 입니다.