머신러닝 with R
-
[데이터분석] 데이터 분석 기법, 회귀분석 (Regression Anaylysis)머신러닝 with R 2022. 10. 25. 20:29
회귀분석 회귀계수 추정 방법: 최소자승법, 최우도법, 베이지안법, 적률법 독립 변수가 하나일 때: 단순회귀분석 독립변수가 2개 이상 일 때: 다중회귀분석 종속변수가 이항형, 순서형으로 나타나는 경우 로지스틱 회귀분석을 이용함 회귀분석 기본 모형 및 가정 Yi = α + βXi + εi α: 상수항 β: 회귀계수 εi: 오차항 기대값은 0 : E(εi) = 0 모두 동일한 분산을 갖는다 서로 독립적이며 정규분포를 이룸 최소자승법 (Least Square Method) 잔차의 제곱합을 최소화시키는 방법으로 회귀계수를 추정하는 방법 추정된 회귀식은 Y = α + βXi 추정된 표본 회귀계수인 β는 모수 B와의 사이에 오차가 발생하므로, b의 정확성, 적합성, 유의성을 검토해야 하는데, β의 표준 오차와, 분산..
-
[R 데이터 분석/ 기초 통계] 확률변수, 확률질량함수, 누적분포함수, 이항분포, 포아송분포 (random variable, probability mass function, cumulative distribution function)머신러닝 with R 2020. 4. 25. 13:41
데이터 분석에 있어 데이터를 직접 생성하여 시뮬레이션을 할 경우가 있다. 그럴 때 우리는 난수를 생성하여 시뮬레이션을 하게 되는데, 난수들이 어떠한 분포를 따르게 될지 가정을 하고 생성을 하게 된다. 따라서 이때 필요한 몇가지 기초적인 개념들이 필요하다. 확률변수와 이산확률변수 확률변수 (random variable)란, 실험의 결과들을 수치에 대응시키는 변수들을 의미하며 여기서 '확률'은 실험을 하기 전에 어떤 값을 가질지 모르기 때문에 불확실성을 말한다. 확률 변수가 될 수 있는 값은 셀 수 있는 값을 가지거나 혹은 연속적인 값을 가질 수 있는데, 이때 셀 수 있는 값을 가지게 되는 확률변수를 이산확률변수(discrete)라고 하고, 연속적인 값(continuous)을 가지면 연속확률변수라고 한다. ..
-
머신러닝(machine learning)의 기본 개념과 원리 (인공지능 vs. 머신러닝 vs. 딥러닝)머신러닝 with R 2020. 2. 22. 18:34
인공지능 vs. 머신러닝 vs. 딥러닝 머신러닝에 대해 공부하다 보면 여러가지 알고리즘을 볼 수 있는데. 특히 초반에 딥러닝과 머신러닝의 개념이 섞여 있어 이것을 어떻게 구분해야 할지 헷갈리곤 했다. 내가 공부하는게 머신러닝인가 딥러닝인가... 결국 이렇게 구분하는게 큰 의미가 없다는 것을 깨달았지만! 그래도 이론적으로는 어느 정도 구분을 해두면 공부할 때 조금 더 도움이 되는 것 같기도 하다. 위 다이어그램 처럼 AI 라고 부르는 인공지능에서 머신러닝이라는 개념이 생겨나게 되었고 이를 더 발전시켜 성능을 업그레이드 시킨 개념을 딥러닝이라고 한다. 인공지능은 말 그대로 기계가 사람의 행동을 모방하게 하는 기술이다. 이는 어떻게 보면 뜬구름 잡기 같은 개념이기도 하다. 하지만 머신러닝을 통해 인공지능에 한..
-
[R 데이터 분석] 나이브 베이즈 분류 (Naive Bayes Classification)머신러닝 with R 2019. 11. 3. 14:16
베이즈 정리 나이브 베이즈 분류는 베이즈 정리를 이용한 확률 분포 모형이다. 조건부 확률을 기반으로 한다. 조건부 확률 P(A|B) : 사건 B가 발생한 경우 A가 발생할 확률을 의미 맑은 날인데 비가 왔을 때의 확률은? 비가 왔는가? 옴 안옴 합계 맑은날 2 8 10 흐린날 5 5 10 합계 7 13 20 전체 중 비가 안올 확률 P(비) = 7/20 전체 중 비가 안올 확률 P(~비) = 13/20 P(비 | 맑은날) = P(맑은날 | 비) * P(비) / P(맑은날) P(맑은날 | 비) = 2/7 P(비 | 맑은날) = 2/7 * 7/20 / 0.5 = 0.2 나이브 베이즈 분류 확률 값의 조합으로 목표 변수의 두 집단 중 높은 쪽으로 분류한다. 나이브: "단순한"의 의미로 여러 변수의 상호작용 생..
-
[R 데이터 분석] 분류모형, 서포트 벡터 머신 (SVM) 분석머신러닝 with R 2019. 9. 18. 17:38
서포트 벡터 머신 (Support Vector Machine, SVM)이란? 지도학습 알고리즘 중 하나로 데이터 분류를 위한 모형 확률(p)과 가정을 사용하지 X, 오직 공간상의 정보(선)으로만 이진 분류 두 클래스(○ & ■) 사이에 마진(margin)이 최대가 되는 선 "하이퍼플레인"을 그어 분류 ○ 와 ■ 를 어떻게 가장 잘 자를 것인가? margin을 최대화 하는 알고리즘! SVM의 특징 기하학적 모형 (거리 정보만 이용) 확률값을 제공하지 않는 Hard classification ! 확률로 계산하는 분류를 soft classification이라고 함. (정보를 더 많이 가지지만 만들기가 더 어려움) 커널 함수를 사용할 수 있어 비선형에도 적용 가능함. (확장성이 좋음) 하이퍼플래인(hyperpl..
-
[R 데이터 분석] 최근접 이웃 (K-Nearest Neighbor, KNN) 분석머신러닝 with R 2019. 9. 15. 19:49
최근접 이웃 분석이란? '유유상종' 의 의미를 연상하면 된다. 입력 변수간의 거리를 구하여 가장 가까운 k개의 데이터를 최근접 이웃으로 정하고, 이를 기반으로 목표변수의 범주를 정하는 알고리즘이다. KNN 분석은 어떻게 보면 k-means 분석과 비슷해 보일 수 있는데 둘은 완전 다른 알고리즘이다. k-means는 군집을 위한 알고리즘이고 KNN은 분류를 위한 알고리즘이라고 보면 된다. 군집분석을 통해서 우리가 알고 싶은 변수가 정확해진 후, 그것을 분류해 내는 것이 의미가 있다면, 그 때 카테고리 중 하나를 target으로 정의해서 이후 분류 알고리즘을 적용한다. 군집분석은 탐색적인 목적으로 분류 알고리즘을 사용하기 전에 어떤 데이터 집단이 있는지 확인할 때 많이 사용 된다. *** 군집 분석과 분류의..
-
[R 데이터 분석] 연관성 분석 (Association Rules), 장바구니 분석머신러닝 with R 2019. 9. 8. 15:40
연관성 분석이란? 장바구니 분석 (Market Basket Analysis)이라고 불리며, 데이터를 통해 어떤 상품과 어떤 상품이 함께 팔리는 가를 분석함으로써 경향성을 파악한다. 이러한 연관성 분석은 매장 상품의 배치를 변경하거나, 특정 상품에 대한 묶음 판매, 혹은 이벤트나 쿠폰 등을 발행할 때 활용할 수 있다. 온라인에서는 추천 상품을 노출하는 등 다양한 마케팅 전략으로 사용될 수 있다. 연관성 분석을 통해 "연관규칙"을 생성하는데 조건과 반응 (if-then) 형식으로 규칙을 생성한다. if-then 규칙은 쉽게 예를 들어, "라면을 구매하는 사람의 15%가 동시에 치즈를 구매한다"라는 규칙을 말한다. 사전에 target 변수를 선택하지 않는 비지도 학습이며, 판매된 상품에 대한 분석을 실시함으로..
-
[R 데이터 분석] 밀도기반 군집분석 (DBSCAN, Density-Based Spatial Clustering of Applications with Noise)머신러닝 with R 2019. 9. 6. 14:35
밀도기반 군집분석(DBSCAN) 이란? 데이터의 위치 정보를 사용하여 군집 생성 밀도기반의 의미? 점들이 밀집된 곳을 하나의 군집으로 보는 것 노이즈 (아무 군집에도 들어가지 않는 데이터, 필요없는 값)을 제외시킴 어떠한 Dataset에 적합한가? 1) 군집의 크기가 다른 원형 데이터 셋 2) 블록 형태가 아닌 (nonconvex) 데이터 셋 3) 모양도 각기 다르고 노이즈가 있는 데이터 셋 --> 데이터셋 1,2,3 모두에 적합함 즉, k-means에서 만들지 못한 군집을 만들 수 있다. 크기가 각각 다르거나, 작거나, 다양한 기하학적 형태의 군집도 잘 분류 할 수 있다. 주요 파라미터 ε- 거리(eps): 하나의 개체를 중심으로 eps 거리 내 몇개의 점이 있는지 파악. 이 숫자가 정해진 밀도보다 크..