머신러닝 11

이상탐지 분야 LOF 알고리즘

LOFLocal Outlier Factor는 데이터 분석 및 머신러닝에서 사용되는 비지도 학습 알고리즘으로, 데이터 포인트가 해당 포인트의 근처에 있는 다른 데이터 포인트와 비교하여 얼마나 이상적인지(또는 비정상적인지)를 평가합니다.import matplotlib.pyplot as pltimport numpy as npfrom sklearn.neighbors import LocalOutlierFactor# Generate sample datanp.random.seed(42)X_inliers = 0.3 * np.random.randn(100, 2)X_outliers = np.random.uniform(low=-4, high=4, size=(20, 2))X = np.r_[X_inliers + 2, X_inl..

이상치(Outlier), 이상(Abnormal) 비교

이상치(Outlier)- 데이터 노이즈- 데이터 범위에서 많이 벗어난 값- 오해를 발생할 수 있기 때문에 사전에 제거 필수- 분석 대상이 아님이상(Abnormal)- 이상치와 다르게 데이터 노이즈가 아님- 문제 해결의 관점으로 바라볼 수 있음- 정상적인 범주에 데이터라도 이상으로 정의- 문제 발생 가능성이 높음- 일반적으로 자주 발생하지 않는 패턴이 이상일 확률이 높음- Thresh Hold 필수이상 탐지(Anomaly Detection)- 이상이라고 정의한 사건 및 패턴을 탐지하는 분야- 기업에서 이상 탐지를 하는 목적1. Risk 사전 방지2. 비정상적인 거래 및 사기 방지 및 사후 보호3. 버그 유저 탐지 및 비정상 유저 탐지이상 탐지 종류데이터 유형에 따라 이상 탐지 종류는 다양합니다- Point..

Optuna 라이브러리에서 suggest_int 메서드

'suggest_int' 메서드는 범위 내에서 정수형 값을 제안하는 기능 하이퍼파라미터는 머신러닝 모델의 구성이나 학습 알고리즘을 조정하는 매개변수로, 모델의 성능에 큰 영향을 미칩니다.'trial.suggest_int' 메서드는 주어진 범위 내에서 정수값을 추천해주는 기능을 수행머신러닝 실험에서 사용할 하이퍼파라미터의 값을 자동으로 탐색하고 조정할 수 있게 해줌trial.suggest_int(name, low, high)name: 추천할 하이퍼파라미터의 이름low: 정수 값의 하한. 추천될 값은 이 값 이상high: 정수 값의 상한. 추천될 값은 이 값 이하 import optunadef objective(trial): x = trial.suggest_int('x', 1, 10) return..

데이터분석 프로젝트 프로세스

1. 문제해결 프로세스 단계를 먼저 수립하자. 데이터를 보기 전, [문제 해결 프로세스 단계]를 기획하고 분석에 들어가야 한다. 상급자, 동료들에게 알린 후 진행하자! 무슨 뜻인가? 현업의 문제를 데이터 분석을 활용하여 해결하는 과정 문제 제기 → 기대효과 → 솔루션 제시 → 우선순위 → 분석 전개 → 리포팅 → 운영 (단계 1) 문제 제기 - 현재 기업의 문제를 정의 함 - 문제를 데이터로 설명할 수 있어야 함 (단계 2) 기대효과 - 문제 해결시 나타나는 기대효과를 수치(정량)로 나타낼 수 있어야 함 (단계 3) 솔루션 제시 - 기대효과가 대단하다고 판단되면, 해결방안을 탐색해야 함 - 각종 통계분석, 알고리즘, 모델 제시 (단계 4) 우선순위 - 탐색한 방안에 대하여 우선순위를 정함 - 합리적이고 ..

기업이 데이터 분석하는 과정

현업에서 머신러닝 모델, 딥러닝(이미지 등) 요청이 들어옵니다. 요구 조건들을 들으면서 문제 인식을 기업이 진행합니다. 요구 조건과 문제가 기업이 처리할 수 있는 능력이 되면 PoC(Proof Of Concept, 개념 증명) 진행합니다.  PoC를 위해 알고리즘의 파라미터를 수정하거나, 알고리즘을 바꿔서 속도를 개선하는 방법이 있습니다. 높은 정확도를 가진 알고리즘과 파라미터를 설정하는데 충분한 시간이 소요됩니다. 이제 만들어진 모델을 바탕으로 현장에 프로그램 설치를 통하여 검증 과정을 진행합니다. 현장 개발 환경과 기업에서 모델을 만들 때 개발 환경이 다른경우도 존재합니다. 이런 경우 개발환경을 맞춰서 다시 진행해야합니다. 프로그램을 다시 설치하고 일정 시간동안 검증 과정을 진행합니다. 여기서 문제점..

머신러닝/기초 2023.06.28

머신러닝 공부

(작업형2) 연습문제¶1. 아래는 가상 온라인 축구게임(FIFA)에 등장하는 축구 선수의 주요 특징과 신체 정보에 대한 일부 데이터이다.¶  연습문제1 Solution¶  STEP1. 데이터셋 불러오기¶ In [1]:import pandas as pdX_train = pd.read_csv('data/연습문제/FIFA_X_train.csv', encoding = 'cp949')X_test = pd.read_csv('data/연습문제/FIFA_X_test.csv', encoding = 'cp949')y_train = pd.read_csv('data/연습문제/FIFA_y_train.csv', encoding = 'cp949')  STEP2. 데이터셋 확인하기¶  STEP2-1. 데이터셋 일부 확인¶ In [2..

머신러닝 엔지니어 로드맵 (주니어, 신입)

머신러닝 엔지니어를 꿈꾸고 있습니다. 통계학과 입학 후, 학부생 도중 군대를 다녀온 후 학과가 데이터과학부로 통합되어서 자연스럽게 데이터 분야에 관한 공부를 하게되었습니다.머신러닝 직군을 선택하기 위해 필요한 로드맵을 유튜브나 블로그를 보면서 간단히 요약해 보았습니다 엔지니어링의 뜻?기술을 활용하여 문제를 해결하고 가치를 만드는 작업 주어진 문제가 가치있는 문제인가?? 한번 확인해 보자가치 + 기술을 활용해야합니다. 머신러닝 엔지니어가 커리어를 위한 회사 선택 기준은?? 핵심 고려사항 1회사의 핵심 역량이 머신러닝인가?회사가 머신러닝을 이용하여 수익을 내는 곳인가? 핵심 고려사항 2핵심 모델을 지속적으로 개선할 데이터가 있나? 핵심 고려사항 3회사는 머신러닝 엔지니어링의 가치를 인식하고 있는지 중요하다 ..

모형의 적합성 평가 및 실험설계

모형의 적합성을 평가하는 방법- MSE는 낮을수록 좋다.- 복잡한 모형일수록 과적합 일어남. 학습데이터는 잘 맞음. 데이터 분할- 과적합을 방지하기 위해 전체 데이터를 학습, 검증, 테스트 데이터로 나눔. 보통 5:3:2> 학습 데이터 : 모형 f를 추정하는데 필요> 검증 데이터 : 추정한 모형 f가 적합한지 검증함> 테스트 데이터 : 최종적으로 선택한 모형의 성능을 평가 K-Fold 교차검증(K-Fold Cross Validation)- 모형의 적합성을 보다 객관적으로 평가하기 위한 방법- 데이터를 k(주로 5 또는 10)개 부분으로 나눈 뒤, 그 중 하나를 검증 집합,  나머지를 학습 집합으로 분류- 위 과정을 k번 반복하고 k개의 성능 지표를 평균하여 모형의 적합성을 평가 LOOCV(Leave-On..

머신러닝/기초 2022.03.20

머신러닝의 종류

선형 회귀분석(Linear Regression)- 독립변수와 종속변수가 선형적인 관계가 있다라는 가정하에 분석- 직선을 통해 종속변수를 예측하기 때문에 독립변수의 중요도와 영향력을 파악하기 쉬움의사결정나무(Decision Tree)- 독립 변수의 조건에 따라 종속변수를 분리 (비가 내린다 -> 축구를 하지 않는다)- 이해하기 쉬우나 overfitting이 잘 일어남- 오버피팅(overfitting): 과적합, 훈련데이터에 너무 잘 맞아서 훈련데이터를 통한 정확도는 높으나, 테스트데이터에서 정확도가 낮게 나오는 현상 KNN(K-Nearest-Neighbor)- 새로 들어온 데이터의 주변 k개의 데이터의 class로 분류하는 기법- k는 사람이 지정, 사람이 지정해 줘야하는 것 -> 하이퍼파라미터 Neura..

머신러닝/기초 2021.12.19

지도학습과 비지도학습

지도 학습(supervised learning)Y = f(X)에 대하여 입력 변수 (X)와 출력 변수 (Y)의 관계에 대하여 모델링하는것(Y에 대하여 예측 또는 분류하는 문제)- 회귀 (regression): 입력 변수 X에 대해서 연속형(실수) 출력 변수 Y를 예측- 분류 (classificaion): 입력 변수 X에 대해서 이산형(성별, 여부) 출력 변수 Y(class)를 예측- 예: 주식가격 예측, 공정 불량 여부 탐지비지도 학습(unsupervised learning)- 출력 변수(Y)가 존재하지 않고, 입력 변수(X)간의 관계에 대해 모델링 하는 것- 군집 분석 - 유사한 데이터끼리 그룹화- PCA - 독립변수들의 차원을 축소화- 예: 고객 segmentation강화학습(reinforcement..

머신러닝/기초 2021.12.19