python61 [ML] 교차 검증 (CV, Cross Validation) -목차- 1. 교차 검증이란? 2. 교차 검증의 장점과 단점 3. 교차 검증 기법 종류 3.1 K-Fold Cross Validation ( k-겹 교차 검증) 3.2 Stratified K-Fold Cross Validation ( 계층적 k-겹 교차 검증 ) 4. GridSearchCV 구현 코드 : Cross_Validation 1. 교차 검증이란? 보통은 train set 으로 모델을 훈련, test set으로 모델을 검증한다. 여기에는 한 가지 약점이 존재한다. 고정된 test set을 통해 모델의 성능을 검증하고 수정하는 과정을 반복하면, 결국 내가 만든 모델은 test set 에만 잘 동작하는 모델이 된다. 즉, test set에 과적합(overfitting)하게 되므로, 다른 실제 데이터를.. 2022. 2. 21. 합병 정렬(Merge Sort) [Python / 파이썬] -목차- 1. 합병 정렬(Merge Sort) 2. 합병 정렬의 시간 복잡도 3. 합병 정렬의 특성 1. 합병 정렬(Merge Sort) 합병 정렬 또는 병합 정렬(merge sort)은 O(n log n) 비교 기반 정렬 알고리즘이다. 일반적인 방법으로 구현했을 때 이 정렬은 안정 정렬에 속하며, 분할 정복 알고리즘의 하나이다. 합병 정렬은 아래와 같은 알고리즘으로 동작한다. 배열을 원소가 하나밖에 남지 않을 때까지 계속 둘로 쪼갠다. 더 이상 쪼갤 수 없는 각각의 배열을 합병하며 정렬한다 이때 크기 순으로 재배열하며 힙병이 이루어진다. 이해를 돕기 위해 예제를 통해 자세한 동작 원리를 알아보자. 예를 들어, 아래와 같이 1부터 8까지 총 8개의 숫자가 들어있는 배열에 있다고 가정해보자. [6, 5, .. 2022. 2. 17. Duck Typing 1. Ducl Typing 이란? Duck typing이란 특히 동적 타입을 가지는 프로그래밍 언어에서 많이 사용되는 개념으로, 객체의 실제 타입보다는 객체의 변수와 메소드가 그 객체의 적합성을 결정하는 것을 의미한다. Duck typing이라는 용어는 흔히 duck test라고 불리는 한 구절에서 유래됐다. If it walks like a duck and it quacks like a duck, then it must be a duck. 만일 그 새가 오리처럼 걷고, 오리처럼 꽥꽥거린다면 그 새는 오리일 것이다. 동적 타입 언어인 파이썬은 메소드 호출이나 변수 접근시 타입 검사를 하지 않으므로 duck typing을 넒은 범위에서 활용할 수 있다. 다음은 간단한 duck typing의 예시다. cla.. 2022. 2. 17. property (함수/데코레이터)[파이썬/python] -목차- 1. 필드명 2. Getter/Setter 3. Property() 함수 4. @Property 데코레이터 5. @Property 데코레이터 활용 1. 필드명 사람의 이름, 성, 나이 데이터를 담기 위한 간단한 클래스를 하나 작성해보자. 아래 Person 클래스는 이름 first_name, last_name, age 이렇게 3개의 필드로 이루어져 있다. class Person: def __init__(self, first_name, last_name, age): self.first_name = first_name self.last_name = last_name self.age = age Person 클래스의 인스턴스를 생성 후에, 현재 필드 값을 읽거나 새로운 필드 값 쓰는 것은 매우 자유롭다... 2022. 2. 17. 이전 1 ··· 6 7 8 9 10 11 12 ··· 16 다음