일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- 데이크루
- 금융상식
- 디지털용어
- 디지털직무
- 은행채용
- IT용어
- 과소완전
- dacrew
- 은행
- 금융
- IT
- 직무역량평가
- 디지털
- jupyternotebook
- 데이터분석
- 사전학습
- 주피터노트북
- 데이콘
- 비지도학습
- 지도학습
- Jupyter Notebook
- 일반상식
- Python
- 군집분석
- 파이썬
- 머신러닝
- 파이썬문법
- 금융권
- 과대완전
- Today
- Total
반응형
목록수업 & 스터디 (8)
Ming's blog
1. 도입 무식하게 푼다 = 컴퓨터의 빠른 계산 능력을 이용해 가능한 경우의수를 일일이 나열하면서 답을 찾는 방법 완전 탐색 : 가능한 방법을 전부 만들어 보는 알고리즘 2. 재귀 호출과 완전 탐색 1) 재귀 호출 재귀 함수 : 자신이 수행할 작업을 유사한 형태의 여러 조각으로 쪼갠 뒤, 그 중 한 조각을 수행하고 나머지를 자기 자신을 호출해 실행하는 함수 모든 재귀 함수는 더이상 쪼개지지 않는 최소한의 작업에 도달했을 때 답을 곧장 반환하는 조건문을 포함해야 합니다. 이때, 쪼개지지 않는 가장 작은 작업들을 재귀 호출의 기저 사례라고 합니다.
Q. 알고리즘이란? A. 어떤 작업이 주어졌을 때, 컴퓨터가 이 작업을 해결하는 방법 Q. 알고리즘의 평가 기준? A. 알고리즘이 사용하는 시간 + 알고리즘이 사용하는 공간 1. 도입 Q. 알고리즘의 수행시간측정 기준은? A. 반복문이 지배한다. 즉, 반복문이 수행되는 횟수로 측정가능하다. 2. 선형 시간 알고리즘 ex) 다이어트 현황 파악 - 이동평균 계산하기 Q. M-이동평균이란? A. 마지막 M개의 관찰 값의 평균! Q. 선형 시간 알고리즘이란? A. 입력의 크기에 대비해 걸리는 시간을 그래프로 나타내면 정확히 선형(직선)형태를 가진다. 3. 선형 이하 시간 알고리즘 ex) 성현 전 사진 찾기 - 이진탐색 Q. 선형 이하 시간 알고리즘이란? A. 입력의 크기가 커지는 것보다 수행시간이 느리게 증가하..
1. 좋은 코드를 짜기 위한 원칙 1) 간결한 코드 작성 ex) 전역 변수 사용 2) 코드 재사용 ex) 함수, 클래스 생성 3) 표준 라이브러리 공부 4) 같은 형태로 프로그램 작성 5) 일관적이고 명료한 명명법 사용 6) 자료 정규화하여 저장 7) 코드와 데이터 분리 2. 자주 하는 실수 1) 산술 오버플로 - 계산 과정에서 변수의 표현 범위를 벗어나는 값을 사용하는 것 2) 배열 범위 밖 원소에 접근 3) 일관되지 않은 범위 표현 방식 사용 -> 반 열린 구간 사용! ex) [a,b) 4) off-by-one 오류 - 큰 줄기는 맞지만 하나가 모자라거나 많아서 틀리는 코드의 오류 5) 상수 오타 6) 스택 오버플로 - 사용하는 환경의 스택 허용량에 대해 미리 숙지 7) 다차원 배열 인덱스 순서 바꿔..
1. Description 지난 포스팅에서 소개한 EM 알고리즘을 이용하여 나방의 색을 결정하는 각 유전자를 가지고 있는 나방의 개체 수를 알아보고자 합니다. 나방의 색은 C, I, T라는 세 개의 대립유전자에 의해 결정된다고 알려져 있습니다. 이때, 유전자 타입은 유전자형과 표현형으로 나뉘어져 있는데 CC, CI, CT와 같은 형태를 유전자형, C, I, T와 같은 형태를 표현형이라고 합니다. 혈액형을 예시로 들면, AO, BO, OO,와 같은 형태를 유전자형, O, A, B, AB와 같은 형태를 표현형이라 부릅니다. 나방의 유전자의 경우, C가 I보다, I가 T보다 우위에 있다고 알려져 있습니다.(C > I > T) 즉, 유전자형이 CC, CI, CT와 같은 경우는 표현형이 C로 나타나게 되며 유전자..
1. What is EM-algorithm? EM 알고리즘이란 expectation maximization이라는 의미로 반복 시행을 통해 MLE값을 추정하는 방법을 의미합니다. 특히나 missing value 상황에서 빛을 바란다고 알려져 있는데, missing value 상황이란 log-likelihood가 완전하지 않을 때 혹은 mle 값이 존재하지 않을 때를 의미합니다. EM알고리즘은 완전한 log-likelihood를 알지 못할 때, 특히나 missing value가 있는 경우에도 MLE 추정이 가능하다고 알려져 있습니다. 즉, EM 알고리즘이란 latent variable이 존재하는 모델의 MLE를 구하기 위한 알고리즘 중 하나입니다. * latent variable : 본래 가지고 있는 ran..
5. 분할 군집화 분석 1) K-means clustering K-menas clustering의 절차는 다음과 같은 형태입니다. 1. 무작위로 k개의 centroids를 선택 후, 각 데이터들을 거리가 가장 가까운 중심에 배정합니다. 2. 군집 안에 있는 모든 데이터의 평균을 구하고 이를 중심값으로 다시 재 설정합니다. 3. 데이터들을 자신과 가장 가까운 중심에 재 배정해줍니다. 4. 이러한 과정을 중심이 더 이상 변화하지 않을 때까지 반복합니다. 2) Paritioning around medoids(PAM) Paritioning around medoids(PAM) 방법 역시 k-means 와 비슷한 방법이지만 이 방법의 경우, 총비용을 계산하여 이 값이 작을 때에만 그룹의 medoid를 바꿔준다는 차..
4. 계층적 군집분석 1) 계층적 군집분석의 절차 계층적 군집분석의 절차는 다음과 같은 형태입니다. 1. 각 관측치를 군집으로 정의하여 데이터 수만큼의 군집을 지정합니다. 2. 각 군집과 군집 간 거리들을 모두 계산합니다. 3. 가장 작은 거리를 갖는 두 개의 군집을 찾아 이를 하나의 군집으로 결합합니다. 4. 모든 관측치를 포함하는 하나의 군집이 형성될 때까지 앞의 두 단계를 계속 반복합니다. 2) 계층적 군집분석 예시 예시를 통해서 계층적 군집분석 알고리즘을 다시 한번 살펴보겠습니다. 다음과 같이 5쌍의 x, y 데이터가 있을 때, 이를 그래프로 나타내면 아래와 같은 형태입니다. 각각의 데이터끼리의 거리를 구해보면 아래와 같습니다. 이때, 가장 거리가 가까운 점은 P1과 P2이므로 이 두 점을 하나의..
1. 군집분석(clustering analysis)이란? 군집분석이란, 많은 수의 관측치를 훨씬 적은 수의 군집이나 유형으로 축소시켜주는 기법입니다. 이때, 우리는 유사한 혹은 동질의 데이터끼리 하나의 군집으로 묶어주게 됩니다. 2. 군집분석의 용도 - Summarization of large date - Data organization - Outlier detection - Clustering for classification 먼저, 많은 수의 관측치를 요약하기 위해서 클러스터링을 사용하게 됩니다. 데이터를 조직화하기 위해서, 또는, 많은 데이터들 중에서 outlier을 판별해 내기 위해서 사용하기도 합니다. 마지막으로, 많은 양의 데이터를 classification을 하기 위한 전 단계의 작업으로 이..