성능 향상 (변수 선택) 변수 선택 (Feature Selection)이란 머신러닝 모형이 최적의 성능을 보이도록 유의미한 독립변수들을 선별하는 과정이다. 변수 선택은 일변량 통계기반의 선택, 모형기반의 선택, 그리고 반복적 선택 방법 등을 통해 수행한다. 1) 일변량 통계기반 선택 일변량 통계기반 변수 선택은 독립변수와 종속변수 간의 통계적 관계가 존재하는지 일변량 통계량에 기초하여 판단하고 유의미한 독립변수들을 선별하는 방법이다. 모형으로 예측하려는 주제가 분류 문제일 경우는 카이스퀘어(x2) 값을, 수치 예측 문제에는 피어슨 상관계수(r)와 같은 일변량 통계량을 사용하고, p값에 기초하여 높은 p값을 갖는 변수들을 순차적으로 제거하면서 최적의 변수를 선택하게 된다. Scikit-Learn 라이브러리에서 주로 사용하는 일변량.. 모형 평가 (교차 검증) 모형에 따라 적합한 평가 지표를 사용한다고 해도 어떠한 평가 데이터를 사용하느냐에 따라 모형 평가의 객관성이 달라질 수 있다. 모형의 성능을 더 엄격하고, 객관적으로 평가하기 위해 단일 평가 데이터가 아닌 서로 다른 복수 개의 평가 데이터를 사용하여 테스트하는 방법을 교차검증 (Cross Validation)이라고 한다. 교차검증은 전체 데이터를 평가용 데이터 세트에 사용할 수 있기 때문에 단일 평가 데이터 분할을 통해 나타날 수 있는 우연한 성능 수준을 회피할 수 있다. 교차검증에는 다양한 방법이 존재하지만, 일반적으로 수치 예측 모형에는 기본 K-겹 교차검증을, 분류 모형에는 층화 K-겹 교차검증을 주로 사용한다. 1) K-겹 교차검증 K-겹 교차검증 (K-Fold Cross Validation)은 .. 모형 평가 (성능 평가 지표) 머신러닝 모형의 성능 평가 방법은 모형의 특징과 비즈니스 문제에 따라 달라질 수 있다. 특히, 지도학습 모형의 경우 크게 분류 모형을 위한 평가 지표와 수치 예측 모형을 위한 평가 지표로 구분해서 사용해야 한다. 1) 분류 모형 평가 지표 지도학습 모형에서 분류 목적의 머신러닝 모형은 오차 행렬 (Confusion Matrix)을 기반으로 정확도, 정밀도, 재현율, F1 스코어 등의 지표를 계산하여 성능을 평가할 수 있다. 오차 행렬이란 아래와 같이 실제 결과와 분류 모형이 예측한 결과를 축으로 하여 정분류/오분류의 현황을 표로 나타낸 것이다. 예측 결과 양성 (True) 음성 (False) 실제 결과 양성 (True) 참 양성 (True Positive, TP) 거짓 음성 (False Negative,.. 프로세스 머신러닝 프로젝트를 수행하는 전체 프로세스는 다음과 같다. 머신러닝 프로세스 각 단계는 하나의 파트 별로 기술해도 될 만큼 중요한 내용이지만, 내 블로그는 분석과 해석 실무에 초점이 맞춰져 있으므로 단계마다 간략한 개념 정도만 언급하고 넘어가도록 하겠다. [그림 1] 머신러닝 프로세스 [1] 문제 정의 머신러닝 프로세스의 첫 번째 단계는 머신러닝으로 해결하고자 하는 문제가 무엇인지 정의하는 단계이다. 해결하려는 문제는 무엇인지, 어떤 형태의 결론이 이에 대한 답이 되는지, 그리고 그 결론이 파급하는 효과는 무엇일지 등이 가급적 명확하게 표출되어야 한다. [2] 데이터의 수집 문제를 정의했다면 해당 문제를 해결하기 위해 필요한 데이터를 수집해야 한다. 머신러닝은 소위 빅 데이터 (Big Data)를 분석하.. 모형 분류 머신러닝은 학습하는 방법에 따라 크게 지도학습과 비지도학습으로 구분할 수 있다. [1] 지도학습 모형 지도학습 (Supervised Learning)이란 명시적인 지도 (Supervision)를 통해 모형이 학습하는 방법을 의미하며, 학습 데이터에 이미 정답이 주어진 상태에서 시스템을 학습시키는 방법이다. 예를 들어, 나이, 성별, 구매빈도와 같은 독립변수에 의해 이탈여부와 같은 종속변수(결과변수)를 예측한다고 했을 때, 예측모형이 형성되는 과정에서 종속변수에 의해 예측의 옳고 그름을 지도해줌으로써 시스템을 학습시키는 것이다. 지도학습 머신러닝 모형은 크게 대상을 목적에 따라 구분하는 분류 (Classification) 모형과 특정 값을 예측하는 수치 예측 (Regression, 회귀) 모형으로 구분할 .. 개념 [1] 인공지능과 머신러닝, 딥러닝 인공지능 (Artificial Intelligence)이란 기계 혹은 시스템에 의해 만들어진 지능을 의미한다. 예를 들어 구글 알파고, IBM 왓슨 등과 같이 지능적인 행동을 하는 프로그램과 사진을 보고 사물을 판단하는 소프트웨어 등이 인공지능에 포함된다. ‘인공지능’이라는 용어에서 알 수 있듯이 인간이 지닌 지적 능력을 인공적으로 구현한 것은 모두 인공지능이라고 할 수 있다. 머신러닝 (Machine Learning), 우리 말로 기계학습은 인공지능의 하위 분야로 명시적인 프로그래밍 없이 데이터를 통해 컴퓨터가 학습할 수 있도록 하는 알고리즘과 기술을 말한다. 머신러닝은 기계가 직접 데이터를 학습함으로써 그 속에 숨겨진 일련의 규칙성을 찾고, 이를 기반으로 새 데이터.. 이전 1 2 3 4 5 다음