목록전체 글 (772)
컴공생의 다이어리
베이즈 정리(Bayes Theorem) 베이즈 정리는 새로운 정보를 토대로 어떤 사건이 발생했다는 주장에 대한 신뢰도를 갱신해 나가는 방법이다. 베이즈 정리 증명 서로 영향을 끼칠 때의 두 사건에 대한 조건부 확률을 사용해 베이즈 정리를 증명할 수 있다. 다음과 같이 식을 정리하다보면 결과적으로 A가 일어났을 때의 B의 확률(P(B|A))를 구할 수 있다. 문제 적용 이제 free라는 메일이 와있을 때(A) 그것이 스팸메일인지(B) 아닌지를 구분해야 하는 문제에 나이브 베이즈 문제를 적용시켜보자. 10개의 메일 중에, 3개는 스팸메일이다. 그리고 그와 상관없이 free라는 단어를 포함하는 메일이 4개가 있다. 기본적으로 필요한 요소는 3가지 이다. P(spam) : 스팸메일의 확률 = 3/10 P(fre..
확률(Probability) 아래와 같이 사과 2개와 바나나 1개가 있을 때 사과를 집을 확률과 바나나를 집을 확률은 각각 아래와 같다. 조건부 확률(Conditional Probability) 어떠한 상황이 주어졌을 때, 그 상황 속에서 다른 상황이 일어날 확률이다. 조건부 확률의 두가지 경우 1. 서로 영향을 끼치지 않을 때 예시 : 녹색 셔츠를 입었을 때 잭팟이 터질 확률 2. 서로 영향을 끼칠 때 예시 : 비가 오는 날에는 우산 장사가 더 잘 될 것이다. www.inflearn.com/course/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D%EC%9D%B4%EB%A1%A0-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%8B%A4%EC%8A%B5/lecture/9538..
위와 같이 8개의 사진 중 겨울 가족 여행사진을 찾으라고 했을 때의 엔트로피와 정보이득을 구해보자. 엔트로피 총 8개의 사진에서 1개의 사진만 겨울 가족여행 사진이고 나머지 7장은 아닐 때의 엔트로피를 Entropy([1+,7-])라고 나타낼 수 있다. p(+)의 경우 1/8, p(-)의 경우 7/8을 Entropy식에 대입해보면 0.543이라는 결과가 나온다. 따라서 엔트로피는 0.543이다. 정보이득(Information Gain) 정보이득은 주어진 상황에서 하나의 속성을 잡았을 때의 엔트로피를 빼면 된다. Information Gain(winter family photo), cartoon)은 cartoon을 속성으로 잡았을 때이다. E(winter family photo)는 앞서 구한 0.543이다..
불순도(Impurity) 불순도란 다양한 범주(Factor)들의 개체들이 얼마나 포함되어 있는가를 의미한다. 쉽게 말하면 여러 가지의 클래스가 섞여 있는 정도를 말한다. 반대로 순수도(purity)는 같은 클래스끼리 얼마나 많이 포함되어 있는지를 말한다. 예를 들어, 아래와 같이 항아리 3개가 있을 때, 1번과 3번 항아리는 순도 100%라 할 수 있으며, 2번 항아리는 불순도가 높은 상태라 할 수 있다. 이 불순도를 수치화한 지표로 엔트로피(Entropy), 지니계수(Gini Index) 등이 있는데, 불순도를 엔트로피로 계산한 알고리즘이 ID3이며, 지니계수로 계산한 알고리즘이 CART알고리즘이다. 엔트로피(Entropy) 엔트로피란 데이터의 분포의 순수도(purity)를 나타내는 척도이며, 데이터의..
의사결정트리(Decision Tree) 의사결정트리는 분류와 같은 의사결정을 수행할 때, 나무와 같이 가지치기를 하면서 분류하는 방법이다. 이는 과거에 수집된 데이터들을 분석하여 이들 사이에 존재하는 패턴을 속성의 조합으로 나타내는 분류 모형이다. 의사결정트리 분류절차 새로운 데이터 분류(classification) 해당 범주 값 예측 트리 구조의 일반화된 지식 추출 의사결정트리의 두가지 데이터 유형 범주형 연속형 분류나무(Classification Tree) 회귀나무(Regression Tree) 범주형은 분류나무로써 의사결정트리를 구성하며, 연속형은 회귀나무로 의사결정트리를 구성한다. 하지만, 의사결정트리는 회귀모델의 정확도가 낮기 때문에 주로 분류의 목적으로 사용된다. 의사결정트리 구성 의사결정트리..
Mod 함수 엑셀 : Mod(수, 2)=1 => 홀수 cf) 액세스 : 수 mod 2 =1 2로 나누었을 때 나머지가 1이라면 모두 홀수 엑셀 : Mod(수, 2)=0 => 짝수 cf) 액세스 : 수 mod 2 =0 2로 나누었을 때 나머지가 0이라면 모두 짝수 배열수식 사용법 =계산함수(IF(조건,계산범위)) =계산함수((조건)*(계산범위)) 조건이 and일 때는 (조건1)*(조건2) 조건이 or일 때는 (조건1)+(조건2) 개수를 구할 땐 계산 범위를 1로 주면 된다. 콤보(목록)상자에 목록값을 입력하는 법 개체명.Addition "국어" 개체명.Addition "영어" 개체명.Addition "수학" 개체명.Rowsource = "A1:A5" 입력행의 위치 구하는 식 입력행=range("표의 첫셀"..
고급필터를 사용해 학생 지도가 전체 평균 이상에 해당하는 자료만을 표시하라고 조건이 나온다면 아래와 같이 조건을 입력한다. 학생 지도 =">="&AVERAGE(학생 지도 영역) 일반식 / 논리식 구분 일반식 논리식 필드명이 일치해야 함 필드명이 일치하면 안됨 식에 첫 행의 셀 주소가 없음 식에 첫 행의 셀 주소가 포함 And, or 사용불가 And, or 사용가능 시트 보호 / 통합 문서 보호 시트 보호 통합 문서 보호 한 시트 내의 내용을 수정하지 못하도록 막음 [구조] 시트삽입, 시트삭제, 시트 이름 바꾸기 막음 [창] 창의 크기나 위치를 수정하지 못하게 막음 cf) 21년 이후로는 엑셀2016 버전을 사용함으로 [창]은 사용되지 않음 배열 수식 사용법 =계산함수(IF(조건, 계산범위)) =계산함수(..
kNN 알고리즘이란? kNN 알고리즘은 데이터로부터 거리가 가까운 'k'개의 다른 데이터의 레이블을 참조하여 분류하는 알고리즘으로 거리를 측정할 때 유클리디안 거리 계산법을 사용한다. kNN 알고리즘은 간단하지만 이미지 처리, 영상에서 글자 인식과 얼굴 인식, 영화나 음악, 상품 추천에 대한 개인별 선호 예측, 의료, 유전자 데이터의 패턴 인식 등 많은 분야에서 응용되어 사용된다. 개념 새로운 데이터가 입력되었을 때, 기존의 데이터와 새로운 데이터를 비교함으로써 새로운 데이터와 가장 인접한 데이터 k개를 선정한다. 이어서, k값에 의해 결정된 분류를 입력된 데이터의 분류로 확정한다. 즉, 새로 입력된 데이터와 기존 데이터를 비교함으로써 새로운 데이터를 유사하게 판단된 기존 데이터로 분류한다. cf) k는..
STL(Standard Template Library) STL은 템플릿을 사용해서 만들어진 클래스와 함수들의 모임이다. 링크드 리스트 클래스, 동적 배열 클래스, 정렬 함수, 검색 함수 등 일반적으로 많이 사용하는 클래스와 함수들이 포함된다. STL의 장점 개발자들 모두 동일한 코드를 사용한다는 점(표준)과 전문가들이 제작해 효율적이고 안전하다는 등의 장점이 있다. STL 컨테이너 STL 컨테이너는 다수의 정보를 담는 역할을 하는 클래스이다. 자주 사용하는 STL의 컨테이너 클래스는 아래의 표와 같다. 클래스 내용 vector 동적인 배열(동적으로 원소의 개수를 조절할 수 있는 배열) list 링크드 리스트 deque 배열과 링크드 리스트의 장점을 모아놓은 클래스 배열만큼 원소에 접근하는 시간이 빠른 동..
클래스 템플릿(Class Template) 함수를 템플릿으로 정의했듯이 클래스도 템플릿으로 정의가 가능하다. 그리고 이렇게 정의된 템플릿을 가리켜 클래스 템플릿이라고 하며, 이를 기반으로 컴파일러가 만들어 내는 클래스를 가리켜 템플릿 클래스라 한다. 클래스 템플릿은 객체 생성 시 명시적으로 결정하고자 하는 자료형을 선언해야 한다. #include using namespace std; template class Data{ T data; public: Data(T num) { data=num; } void setData(T num) { data=num; } T getData(void) { return data; } }; int main(){ Data a(0);//T를 int로 간주하고 객체 생성 a.setD..