티스토리 뷰

SQL 코드카타

Q138. Weather Observation Station 6

1. 문제 링크: https://www.hackerrank.com/challenges/weather-observation-station-6/problem

2. 정답 코드:

SELECT DISTINCT CITY
FROM STATION
WHERE ((CITY like 'a%') OR (CITY like 'e%') OR (CITY like 'i%') OR (CITY like 'o%') OR (CITY like 'u%'));

 

Q139. Weather Observation Station 7

1. 문제 링크: https://www.hackerrank.com/challenges/weather-observation-station-7/problem

2. 정답 코드:

SELECT DISTINCT CITY
FROM STATION
WHERE ((CITY like '%a') OR (CITY like '%e') OR (CITY like '%i') OR (CITY like '%o') OR (CITY like '%u'));

 

Q149. The PADS

1. 문제 링크: https://www.hackerrank.com/challenges/the-pads/problem

2. 정답 코드:

SELECT CONCAT(NAME, "(", SUBSTR(Occupation, 1, 1), ")") AS NAME_OC
FROM OCCUPATIONS
ORDER BY NAME;

SELECT CONCAT("There are a total of ", COUNT(*), " ", LOWER(Occupation), "s.") AS occupation_count
FROM OCCUPATIONS
GROUP BY Occupation
ORDER BY COUNT(*), Occupation;
첫 번째 쿼리와 두 번째 쿼리의 출력 결과를 단순히 이어서 보여주기만 하면 되는 문제이기 때문에, 굳이 UNION을 사용할 필요 없이 각각의 쿼리를 독립적으로 작성하면 된다. 이때 첫 번째 쿼리가 끝났음을 명확히 하기 위해 ;로 구분해준다.

만약 이 문제에서 UNION을 사용한다면 구조가 불필요하게 복잡해질 수 있다.
그 이유는 UNION을 사용할 경우, 개별 쿼리마다 ORDER BY를 적용할 수 없고 전체 결과 집합의 마지막에서만 ORDER BY를 사용할 수 있기 때문이다. 즉, 각 쿼리 결과를 따로 정렬해야 하는 상황이라면 UNION은 오히려 제약이 된다.

Python 코드카타 (https://github.com/heeso0908/codekata.git)

Q47. K번쨰수

1. 문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/42748

2. 정답 코드:

def solution(array, commands):
    answer = []
    for n in commands:
        i, j, k = n
        temp = array[i-1:j]
        sorted_temp = sorted(temp)
        answer.append(sorted_temp[k-1])
    return answer
array = [1, 5, 2, 6, 3, 7, 4], commands = [[2, 5, 3], [4, 4, 1], [1, 7, 3]] 라고 가정하면,    
for 문을 사용해서 [2, 5, 3], [4, 4, 1], [1, 7, 3] 3개로 분리해서 언패킹을 사용해 i, j, k로 지정해준다!  
이때, i번째부터 j번째까지 슬라이싱 하려면 [i-1:j]이고, k번째도 [k-1] 이다!

라이브 세션) 통계 실습 5일차: 가설 검정, 비모수 검정, 카이제곱 검정

가설검정을 하는 이유?

: 분포 간의 비교를 하고 싶어서(분포를 대표하는 것이 평균이기 때문에 보통 모평균에 대한 검정을 한다라고 말함)

출처: 강의 자료


1) 단일표본 t-검정 (One-sample t-test)

: 표본 평균의 분포에 대한 t 값 계산

"하나의 표본 평균이 특정 값과 다른가?"


2) 독립표본 t-검정

(1) 두 집단의 분산이 동일할 때 : student's t 검정

(2) 두 집단의 분산이 다를 때 :  Welch's t-test 검정

  • 일반적으로 다르고, 같다하더라도 Welch's t-test검정으로 해도 큰 차이가 없음!
    현대 통계학에서는 무조건 Welch's t-test 검정을 한다!

    equal_var=False (등분산 X)

+ 등분산 검정

- Levene 검정: 정규성 가정이 필요 없음 (더 안전, 일반적으로 권장)


3) 대응표본 t-검정

"같은 대상의 전후 차이가 유의한가?"

 

사용 예시:

  • 다이어트 전후 체중 변화
  • 교육 프로그램 전후 점수 변화
  • 약물 복용 전후 혈압 변화
독립표본 vs 대응표본:
같은 사람의 전후 비교 → 대응표본,
서로 다른 사람 비교 → 독립표본

같은 사람의 전후 비교도 독립표본으로 할 수도 있지만 그렇게 되면 검정력이 떨어지니까 지양한다.

 


예제 1)

# 가설
print(f"\nH0: μd = 0 (프로그램 효과 없음)")
print(f"H1: μd < 0 (프로그램으로 체중 감소) → 좌측검정")

# TODO: 대응표본 t-검정
t_stat, p_value =  stats.ttest_rel(after, before) 

# 좌측 단측 검정 ->  체중이 감소한 경우 t 값이 음수가 나옴

print(t_stat, p_value) # -0.2613935364835901 0.7986185686922294

p_value  = p_value / 2 if t_stat < 0 else  1 - p_value / 2 # 양측 검정의 p값을 2로 나눠서 단측 검정의 p값으로 한다

alpha = 0.05
if  t_stat < 0  and p_value <= alpha :
    print(f'P_{p_value} H0 귀무가설 기각 : 다이어트 프로그램이 효과가 있다고 말 할 수 있다.')
else :
    print(f'P_{p_value} H0 귀무가설 지지 : 다이어트 프로그램이 효과가 없다고 말 할 수 있다.')

4) 효과크기 (Effect Size)

: p-value와 별개로, 실제 차이의 크기를 나타내는 표준화된 지표

 

(1) 효과크기가 필요한 이유?

p-value는 "차이가 있느냐/없느냐" 만 알려주고, "얼마나 큰 차이냐" 는 알려주지 않기 때문!

 


(2) Cohen's d

"평균 차이가 표준편차 몇 개분인가?"를 나타내는 지표이다. 모든 t-검정에서 사용!

[단일, 대응 표본]은 각 표본별로 대응 가능하기에 유사한 구조

[독립표본]은 각 표본별로 대응이 불가하기 때문에 합동 분산 개념을 사용해야 한다 (like 두 분산의 가중 평균에 루트를 씌운것?) 공분산과는 약간 다른 개념

s_pooled = np.sqrt(((n1 - 1) * var1 + (n2 - 1) * var2) / (n1 + n2 - 2))

 

(3) 효과 크기 해석

d 값 효과 크기
0.2 작은 효과
0.5 중간 효과
0.8 큰 효과
1.0+ 매우 큰 효과

5) 단측 검정 할 때

stats.ttest_1samp(bp_data, popmean= 130, alternative= "less") 이런 옵션도 있음 

  • alternative = "less" : 좌측 단측검정,
  • alternative = "greater" : 우측 단측검정
  • alternative default = two-sided (양측 검정)

statsmodels의 alternative 옵션은 effect_size의 부호 기준으로 방향을 잡는다.

  • d = +0.333 + alternative='larger' → 효과가 양의 방향으로 있다고 검정 → 검정력 계산 O
  • d = -0.333 + alternative='smaller' → 효과가 음의 방향으로 있다고 검정 → 같은 결과

두 가지 방법 모두 같은 검정력이 나온다.

 

검정력 계산에서는 좌측, 우측 단측이 방향만 맞으면 결과가 같기 때문에, 관례적으로 d를 양수로 넣고 'larger'를 쓰는 경우가 많다!


6) 검정력 (Power)

: 1 - β = H₁이 참일 때 올바르게 H₀를 기각할 확률

"진짜 효과가 있을 때, 그것을 탐지할 능력"

(도메인마다 다를 수 있음)

검정력 수준 평가
0.80 (80%) 최소 권장 수준 (Cohen, 1988)
0.90 (90%) 양호
0.95 (95%) 매우 좋음

 

(1) 검정력에 영향을 주는 요인

요인 검정력에 미치는 영향
표본크기 n ↑ 검정력 ↑ (가장 직접적이고 효과적인 방법)
효과크기 ↑ 검정력 ↑ (실제 차이가 클수록 탐지 쉬움)
유의수준 α ↑ 검정력 ↑ (하지만 1종 오류도 증가)
분산 σ² ↓ 검정력 ↑ (데이터가 깔끔할수록 탐지 쉬움)

 

(2) 검정력 실습

# ─────────────────────────────────────────────
# 라이브러리 검증: statsmodels TTestPower
# ─────────────────────────────────────────────
from statsmodels.stats.power import TTestPower

analysis = TTestPower()

# TODO: Cohen's d 계산 (|mu_1 - mu_0| / sigma)
d = abs(mu_1 - mu_0) / sigma # 효과 크기

# TODO: 표본크기별 수동 vs 라이브러리 검정력 비교
for n in [10, 20, 30, 50, 100, 200]:
    se = sigma / np.sqrt(n)
    df = n - 1

    # TODO: 기각역 계산 (좌측검정, t-분포: stats.t.ppf(alpha, df))
    t_crit = stats.t.ppf(alpha, df=df)
    
    # TODO: 기각 임계값 x_crit = mu_0 + t_crit * se
    x_crit = mu_0 + t_crit * se # 표본 평균의 기각 임계값
    
    # TODO: 검정력 계산: H1 하에서 기각역에 들어갈 확률
    power = stats.t.cdf(x_crit, df=df, loc=mu_1, scale=se)
    
    # 일반 t분포로 계산하지 않음,
    # 비중심 t-분포로 검저력을 더 정확하게 계산
    power_lib = analysis.solve_power(  # 공식문서 참고
        effect_size=d, #효과 크기
        nobs = n, # 표본 크기
        alpha = alpha, # 유의 수준
        alternative = 'larger' # 단측검정
    )
    # solve_power 함수 특징이 3개의 인자를 주면 나머지 하나를 역산
    # 4개 중에 3개를 입력하면 나머지 하나를 역산해줌 (effect_size, nobs, alpha, power 중 3개 입력 1개 역산)


    # TODO: 결과 출력
    print(f'{power:.2f}, {power_lib:.2f}')
0.23, 0.25
0.41, 0.42
0.55, 0.55
0.75, 0.75
0.95, 0.95
1.00, 1.00

7) 1종 오류 vs 2종 오류

출처: 강의 자료


1) 검정 방법 선택

(1) 주요 용어 정리

용어 영어 정의
모수 검정 Parametric Test 모집단이 특정 분포(예: 정규분포)를 따른다는 가정 하에 수행하는 검정
비모수 검정 Nonparametric Test 모집단 분포에 대한 가정 없이 수행하는 통계 검정
Q-Q Plot Quantile-Quantile Plot 데이터 분위수와 이론적 분위수를 비교하여 분포를 시각적으로 확인
카이제곱 검정 Chi-square Test 카이제곱 분포를 이용하여 범주형 데이터를 분석하는 검정 (적합도·독립성 등)
분산분석 Analysis of Variance (ANOVA) 3개 이상 집단의 평균 차이를 검정하는 방법
사후검정 Post-hoc Test ANOVA에서 유의한 결과가 나온 후 어떤 집단 쌍이 다른지 확인
사후분석 Post-hoc Analysis 카이제곱 검정에서 유의한 결과가 나온 후 어떤 셀이 기대와 다른지 확인 (잔차 분석)

 

+ 비모수 검정이 모수 검정에 비해 더 큰 규모


(2) 검정 선택 의사결정

- 연속형 변수

검정 정규성 확인 등분산 확인 모수 검정 (가정 만족) 등분산만 위반 비모수 검정 (정규성 위반) 사후검정 효과크기
단일표본 Q-Q Plot
Shapiro-Wilk
단일표본 t Wilcoxon signed-rank 모수 → Cohen's d
비모수 → rank-biserial r
대응표본 (전후) Q-Q Plot
Shapiro-Wilk
(차이값)
대응표본 t Wilcoxon signed-rank 모수 → Cohen's d
비모수 → rank-biserial r
독립 2집단 Q-Q Plot
Shapiro-Wilk
Levene Student's t Welch's t Mann-Whitney U 모수 → Cohen's d
비모수 → rank-biserial r
독립 3집단+ Q-Q Plot
Shapiro-Wilk
Levene One-way ANOVA Welch's ANOVA Kruskal-Wallis Tukey / GH* / Dunn** ANOVA → η² / ω²†
Welch → η² / ω²†
KW → η²_H
* GH = Games-Howell (Welch's ANOVA 사후검정)    ** Dunn = Dunn test (Kruskal-Wallis 사후검정)
실무 팁: 3집단+ 비교에서는 전체 효과크기(η²)보다 사후검정의 쌍별 Cohen's d가 실질적으로 더 중요하다.
참고: 정규성 위반 시 비모수 검정을 사용하며, 이 경우 등분산 확인은 불필요
† η² vs ω²: η²(에타제곱)은 집단 간 분산이 전체 분산에서 차지하는 비율이다. 다만 소표본에서 과대추정 경향이 있어, 편향을 보정한 ω²(오메가제곱) 를 논문에서는 권장한다. 표본이 커질수록 두 값은 수렴하므로 대표본에서는 차이가 미미하다.

 

- 범주형 변수

검정 기대빈도 조건 충족 기대빈도 조건 불충족 사후분석 효과크기
빈도 적합성 카이제곱 적합도 Monte Carlo 시뮬레이션 잔차 분석 Cohen's w
변수 독립성 (2×2) 카이제곱 독립성 Fisher 정확검정 오즈비 (필요 시) φ (phi)
변수 독립성 (R×C) 카이제곱 독립성 범주 병합 또는 Fisher-Freeman-Halton 잔차 분석 Cramér's V
Cochran 규칙: 기대빈도 < 5인 셀이 전체의 20%를 초과하거나, 기대빈도 < 1인 셀이 하나라도 있으면 카이제곱 근사가 부정확
적합도 검정: 정확검정이 없으므로 Monte Carlo 시뮬레이션이 유일한 대안
독립성 검정 (2×2): Fisher 정확검정을 사용한다
독립성 검정 (R×C): 범주 병합을 우선 시도하고, 병합이 부적절하면 Fisher-Freeman-Halton 검정(scipy.stats.fisher_exact(), scipy 1.7+)을 사용한다

범주 병합(collapsing categories): 기대빈도가 낮은 범주를 인접한 범주와 합쳐 기대빈도 조건을 충족시키는 방법
병합은 이론적으로 유사한 범주 간에만 수행해야 한다 (예: "매우 불만족"+"불만족" → "불만족 이하")
단순히 빈도를 채우기 위해 의미가 다른 범주를 합치면 해석이 왜곡된다
병합 후에도 조건이 충족되지 않으면 Fisher-Freeman-Halton 검정을 사용한다

(3) 정규성 검정

- Shapiro-Wilk 검정 (수치적 판단)

가장 널리 사용되는 정규성 검정! W 통계량이 1에 가까울수록 정규분포에 가깝다!

결과 해석 다음 단계
p > 0.05 정규성을 기각하지 못함 모수 검정 사용 고려
p ≤ 0.05 정규성 기각 비모수 검정 또는 변환 고려
주의: p > 0.05는 "정규분포가 맞다"는 뜻이 아니라 "정규분포를 기각할 근거가 부족하다"는 뜻

한계: 표본이 크면(n > 50) 사소한 편차에도 유의하게 나온다. 표본이 작으면(n < 20) 상당히 비정규적이어도 기각하지 못할 수 있다. 따라서 Q-Q Plot과 함께 판단하는 것이 중요!

 

- Q-Q Plot 해석 (시각적 판단)

Q-Q Plot (Quantile-Quantile Plot) 은 데이터의 분위수를 이론적 정규분포의 분위수와 비교하는 그래프
점들이 대각선 위에 놓이면 정규분포를 따르고, 벗어나는 방향과 패턴으로 분포 특성을 파악한다.

패턴 Q-Q Plot 모양 해석 대응 방법
Normal 직선 (⟋) 정규분포를 따릅니다 변환 불필요
Right-skew 위로 휨 (∪) 오른쪽 꼬리가 깁니다 (양의 왜도) log, sqrt 변환
Left-skew 아래로 휨 (∩) 왼쪽 꼬리가 깁니다 (음의 왜도) 제곱, 지수 변환
Light-tailed S자 (양끝 ↓) 꼬리가 정규분포보다 얇습니다 특별한 변환 불필요
Heavy-tailed 역S자 (양끝 ↑) 꼬리가 정규분포보다 두껍습니다 이상치 제거 또는 비모수
Bimodal 두 곡선 + 중간 갭 봉우리가 2개입니다 (두 군집) 군집 분리 후 분석
팁: Shapiro-Wilk(수치) + Q-Q Plot(시각)을 함께 사용!
두 결과가 불일치하면 Q-Q Plot을 우선 판단하기— 시각적 패턴이 더 정보가 풍부하기 때문에!

출처: 강의 자료


(4) 흔한 오해

"표본이 크면 정규성 검정 불필요하다?"

CLT(중심극한정리) 덕분에 평균 기반 검정(t-검정·ANOVA) 은 대표본에서 정규성 위반에 강건하다.
그러나 이것이 정규성 확인을 생략해도 된다는 뜻은 아니다!

 

- 대표본의 역설

  • Shapiro-Wilk 검정은 n이 클수록 과민해져서, 실질적으로 무의미한 작은 편차도 "비정규"로 판정한다.
  • 반면 t-검정·ANOVA는 대표본에서 정규성 위반에 강건하므로, Shapiro-Wilk가 유의해도 곧바로 비모수로 전환할 필요는 없다.

- 실무적 권장

  1. 항상 분포를 확인하되, 대표본에서는 Q-Q Plot(시각적 판단) 을 우선한다.
  2. Shapiro-Wilk가 유의하더라도 Q-Q Plot에서 대략 직선이면 → 모수 검정 사용 가능하다.
  3. Q-Q Plot에서도 심하게 벗어나면(극단적 왜도·이상치) → 비모수 검정으로 전환한다.
  4. 정규성과 별개로 등분산성·독립성 등 다른 전제 조건은 반드시 점검해야 한다.
주의: CLT의 강건성은 평균 기반 검정에 한정된다. 등분산 검정(Bartlett)이나 상관계수 검정 등은 대표본에서도 비정규성에 민감할 수 있다.

정규성을 만족하지 않으면, 등분산성 체크할 필요 없음 → 비모수 검정으로 넘어가기!

원칙적으로 할 필요없다. 정규성을 만족하지 않으면 무조건 비모수 검정으로 간다 → Mann-Whitney U
정규성을 만족하는데 등분산성을 만족하지 않은 경우 → Welch's
오해 진실
"비모수는 항상 모수보다 나쁘다" 가정 위반 시 비모수가 더 정확
"표본이 크면 비모수 불필요" 대표본에서도 극단적 이상치가 있으면 평균·분산이 왜곡되므로, 순위 기반 비모수 검정이 여전히 유용함
"비모수 = 평균 비교" 순위 기반 '분포 위치 비교'이며, 동일 분포 형태 가정 하에서만 중앙값 비교로 해석할 수 있다

2) 카이제곱 검정

(1) 카이제곱 검정의 핵심 개념

- 검정 통계량

z-score와 유사해 보임

  • Oi: 관측 빈도 (Observed Frequency)
  • Ei: 기대 빈도 (Expected Frequency)

기대 빈도는 각 범주형 변수가 독립이라는 전제 하에, (행 합계 * 열 합계) / 전체 수


- 자유도

  • 적합도 검정: df=k−1 (k: 범주 수)
  • 독립성 검정: df=(r−1)(c−1) (r: 행 수, c: 열 수)

- 카이제곱 검정은 언제 사용할까?

카이제곱 검정은 범주형 데이터의 빈도를 분석할 때 사용!

검정 유형 질문 예시
적합도 검정 관측 빈도가 이론적 비율과 일치할까? 주사위 각 면이 1/6 확률로 나오는가?
독립성 검정 두 범주형 변수가 서로 독립인가요? 성별에 따라 선호 SNS가 다른가?

 

연속형 변수는 t-검정/ANOVA, 범주형 변수는 카이제곱 검정

- 교차표(Cross-tabulation)란?

: 두 범주형 변수의 빈도를 행·열로 정리한 표

독립성 검정의 입력 데이터이며, "분할표(contingency table)"라고도 한다.

 

예시: "성별 × 선호 음료" 설문 조사 (80명)

  커피 주스 행 합계
남성 25 10 5 40
여성 15 15 10 40
열 합계 40 25 15 80
  • 각 셀: 해당 조합의 관측 빈도 (예: 남성이면서 커피 선호 = 25명)
  • 행 합계 / 열 합계: 주변합(marginal sum)
  • 카이제곱 독립성 검정은 이 교차표에서 "성별과 음료 선호가 독립인가?"를 검정한다
  • 독립이라면, 기대빈도 = (행 합계 × 열 합계) / 전체
쉽게 기억하기: 교차표 = 도수분포표의 2차원 확장이다!
도수분포표가 "커피를 좋아하는 사람이 몇 명?"이라면,
교차표는 "남성 중 커피를 좋아하는 사람은 몇 명? 여성 중에는?"까지 함께 본다.

- 기대빈도는 왜 이렇게 계산할까?

2회차에서 배운 조건부 확률과 독립 사건의 성질을 떠올려 보자.

 

· 곱셈 법칙 (교집합의 확률):

P(A∩B)=P(A)⋅P(B∣A)

 

두 사건이 독립이면 P(B∣A)=P(B)이므로:

P(A∩B)=P(A)⋅P(B)(독립일 때)

 

이 원리를 교차표에 적용해 보자. 전체 200명 중 남성이 100명(50%), Instagram을 선호하는 사람이 80명(40%)이라면,
독립 가정 하에서 "남성이면서 Instagram 선호"인 사람의 기대빈도는 다음과 같다.

 

이를 정리하면 N이 약분되어 다음 공식이 된다.

 

기대빈도 공식 (독립성 검정)

 

즉, 기대빈도란 "두 변수가 독립이라고 가정했을 때,
P(A∩B)=P(A)⋅P(B)로부터 계산한 빈도"

관측 빈도가 이 기대빈도와 크게 다르면,
독립 가정이 맞지 않다고 판단하는 것이 카이제곱 독립성 검정의 핵심

 

+ 관측 빈도와 기대 빈도의 차이가 0에 가까우면 독립이다?!


카이 제곱 검정을 하려고 하면 기대 빈도의 모든 셀이 5 이상이어야 한다!

출처: 강의 자료


(2) 카이제곱 검정의 사후분석 — 조정된 잔차 (Adjusted Residual)

검정 유형 사후분석 질문
적합도 검정 어떤 범주가 기대 빈도와 다른가?
독립성 검정 어떤 셀(행×열 조합) 이 기대와 다른가?

 

카이제곱 검정이 유의하면 "기대와 다르다" 는 것만 알 수 있다.

ANOVA의 사후검정처럼, 어떤 범주/셀이 기대와 다른지 확인하려면 조정된 잔차 분석이 필요!

 

조정된 잔차 값 해석
|잔차| > 2 해당 범주/셀이 기대빈도와 유의하게 다릅니다
|잔차| ≤ 2 해당 범주/셀은 기대빈도와 유의한 차이가 없습니다
잔차 > 0 (양수) 기대보다 많이 관측됨
잔차 < 0 (음수) 기대보다 적게 관측됨

2 기준으로 구분!!!


효과크기는 결국 관측빈도와 기대빈도의 차이의 크기를 나타내는 것, 근데 단위를 없애고 좀 정규화한 값!


라이브 세션) 머신러닝 이론 1일차: 개론

1) 머신러닝이란?

 

일차함수: y = ax + b

머신러닝: H(x) = wx + b

H(x) = 가설식, w = 가중치 , b = 편향(bias)

최적의 가중치를 구하는 걸 머신러닝이 한다!


2) 선형회귀

-경사하강법 매우 중요 : 기울기 보고 내려가기~(미분 사용)

얼마나 틀렸냐를 보는 것

손실비용 = 정답 - 계산값                         ,          손실비용 = (실제 - 예측)^2     ????

손실비용 그래프는 U모양으로 나오는데 0인 지점이 최적 w 값! (x축:w, y축: cost)

 

학습률 = 경사 내려가는 보폭!

학습률을 무조건 올리면 좋을까? X → 최적의 w 값을 지나칠 수도 있음

너무 학습률 작게 해도 한 세월 걸린다~

→ 그러니까 학습률 우리가 설정해 줘야 하는데 적절한 수치로 정해줘야 함 (튜닝 도구들이 있긴 함)


3) 다중 선형회귀


4) 분류

(1) Yes or No: 이중 분류

- 1과 0으로 분류

- 한계가 있어서 다중 분류가 생김!

 

(2) 다중 분류: 확률 기반으로 가장 가까운 것 찾기

- 확률 기반이기 때문에 항상 틀릴 수 있다! ← 한계

 

(3) 다항 선형 회귀(수치) vs 다항 로지스틱 회귀(범주)


5) 지도학습

: 정답이 있는 데이터 셋을 가지고 학습


6) 비지도학습

: 정답이 없는 데이터 셋을 가지고 학습

- 지도학습보다는 정확도가 낮아질 수 밖에 없음


7) 비지도학습 - 군집화(Clustering)


8) 강화학습

: 강아지 훈련과 유사!

- ChatGPT, 자율주행, 로봇공학, 재무 분석 등에서도 쓰임

- 시간이 오래 걸린다는 단점, 리워드/패널티 설계도 복잡, 환경에 따른 변수가 많음 → 아직도 연구 개발 활발

 

(1) 대립적 강화학습: AI vs AI (해킹 AI vs 보안 AI)



1~3번 과정을 계속 반복해야 함!


9) sklearn(사이킷런)



오늘은 가설검정, 비모수 검정, 카이제곱 검정에 대해 배웠고, 추가로 머신러닝 개론도 학습했다.
내용 자체는 쉽지 않았지만, 그동안 배웠던 개념들이 조금씩 머릿속에서 정리되는 느낌이 들어 의미 있는 시간이었다!
머신러닝은 아직 개론 수준이라 비교적 이해가 잘 되었는데 내일부터는 사이킷런을 더 깊이있게 다룬다고 하셔서 걱정이 된다,, 집중력을 잘 유지해서 흐름을 놓치지 않도록 신경 써야겠다.
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/05   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함