반응형

전체 글 1730

K-means

지난일에 공부한걸 여기다 정리해 두려고... K-means란?1) 비계층적 클러스터링 수법의 하나2) 자율학습법의 일종 3) 클러스터 수 K를 미리 정해두고, K개의 그룹으로 분류하는 수법4) 각각의 클러스터의 중심점을 기준으로 표현된다. Step 1 초기상태 각 점에 렌덤하게 클러스터를 할당한다.(여기서 K=2, 노드수=10) Step 2 각 그룹의 중심을 계산한다. 클러스타당 중심을 구한다. Step 3 제일 가까운 중심의 속성으로 노드의 속성을 변경한다. 각각의 중심점에 대한 속성으로 변경됨 Step 4 재계산 중심점 및 속성의 변화가 없어질때까지 Step 2와 3을 반복 하여 계산한다.

Genetic Algorithm

머리 정리 좀 하자.. 유전적 알고리즘 : 어떤 문제에 관한 최적해를 찾기 위한 일련의 수법, 복수의 해를 유전적으로 변화 시키면서 더 좋은해를 구하는 방법. 코딩 : 유전자 알고리즘에서 계산을 하기 위해 룰을 결정해서 유전자를 결정하는 것을 코딩이라 한다. 일차방정식 y= ax+b를 풀위해 x에 대한 y의 값이 최적이 되기위해 a,b를 조절하는 것. 여기서 a,b는 표현형으로 a=7, b=10 일때 a=0111 ,b=1010 이라고 표현한다. GA의 계산순서로는 아래와 같이 나타낼수 있다. ① 초기 모집단 생성 → 해의 집단 (개체군), 일반적으로 난수를 이용해서 생성되나, 다양성이 있는 패턴으로 시도하는 것이 중요함. ② 평가 → GA가 종료되기위한 조건으로 일정 조건을 만족시키면 종료된다. 평가항목..

확률로 원주율 계산하기 (몬테 카를로법)

몬테카를로 법(Monte Carlo method)이란, 컴퓨터 프로그래밍상으로 수치계산을 이용하는 대신 확률을 계산 함으로써 문제를 푸는 방법이다. 여기서는 확률을 이용하여서 원주율을 계산하는 방법을 복습삼아 정리한다. ・아래와 같이 각 변의 길이가 1인 정 사각형 안에 반지름이 1인 부채꼴이 들어가 있다고 생각한다.사각형 안에 점을 랜덤하게 찍을 경우에 부채꼴 안에 들어가게 될 확률은 π/4(부채꼴의 면적)가 된다.부채꼴의 면적과 사각형의 면적을 따져서 점이 들어갈 비율은 아래와 같다. π/4 : 1 = count : total_count count : 원안에 들어간 점의 수 total_count : 전채 점의 수 위 식을 정리해 보면 아래와 같이 나온다.π= 4 × count / total_count..

0~1까지의 난수의 생성

include double random_number(){return ((double)(rand()%RAND_MAX)/(double)RAND_MAX);// return (double)rand()/(double)RAND_MAX 을 해도 같은 결과가 나옴.} rand() : 0에서 RAND_MAX까지의 자연수를 랜덤하게 불러낸다. stdlib.h를 include로 불러낼 필요가 있음.RAND_MAX: Xcode에서 불러내본 결과 2147483647이 나왔다. int로 선언될 수 있는 최대값인데 시스템 마다 다를수도? ・srand(time(NULL)); //난수의 초기화난수의 생성이란 컴퓨터에 있는 난수표를 불러내는 것이기 때문에 난수표를 매번 다른것을 불러내지 않으면 고정된 값이 나올수가 있다. 따라서 현재 ..

반응형