전체 글 89

[ML] 지도학습 - 분류모델 (로지스틱 회귀)

로지스틱 회귀란?로지스틱 회귀 (Logistic Regression) 은 머신러닝에서 이진 분류 문제를 해결하는 데 사용되는 통계적 모델종속 변수가 이진형일때(즉, 결과가 두가지 중 하나일 때) 사용되는 통계 기법선형 회귀와 달리 결과값이 0 과 1사이에 위치하게 하기 위해 시그모이드 함수(Sigmoid Function)을 사용 왜 회귀라는 이름이 붙어있는데 분류모델인가요??선형 회귀와 비슷하지만 출력 값이 확률로 변환되어 0 과 1 사이의 값을 가진다따라서 사건 발생 여부 를 예측하는데 활용 된다.시그모이드 함수 (Sigmoid Function)선형 결합의 결과인 z 값은 시그모이드 함수에 의해 변환된다.시그모이드 함수는 입력 값 z 를 0과 1 사이의 확률로 매핑한다. 수식은 다음과 같다여기서 e 는..

AI/ML 2024.12.29

[ML] 지도학습 - 회귀 모델 (선형, 다항, 리지, 라쏘)

회귀 모델이란?회귀 모델은 머신러닝의 지도학습 중 하나로, 연속적인 수치 데이터를 예측하는데 사용된다.즉, 입력데이터(feature) 에 따라 연속적인 출력 값(lable) 을 예측하는 모델이다예를들어 주택가격예측, 주식시장의 변동 예측, 기온 예측 등이 회귀 문제에 해당회귀 모델의 주요 특징연속 데이터 예측 : 출력값은 이산적인 아닌 연속적인 값이다.입출력 관계 : 독립변수(입력)와 종속변수(출력) 간의 관계를 수학적으로 모델링손실 함수 : 일반적으로 예측 값과 실제 값 간의 차이를 최소화 하기 위해 평균제곱오차(MSE) 또는 평균절대오차(MAE) 를 사용한다회귀 모델의 평가 지표1. 평균 제곱 오차 (MSE)예측 값과 실제 값의 차이를 제곱하여 평균을 구함 2. 평균 절대 오차 (MAE)절대 오차를 ..

AI/ML 2024.12.28

[ML] 머신러닝 이란? ( Machine Learning )

머신러닝 이란? ( Machine Learning )머신러닝은 컴퓨터가 명시적인 프로그래밍 없이 데이터에서 학습하고, 그 학습을 바탕으로 새로운 데이터에 대해 예측하거나 결정을 내리는 인공지능(AI) 의 한 분야이다. 머신러닝은 수학, 통계학, 컴퓨터 과학 등을 기반으로 하며, 데이터의 패턴을 찾고 이를 모델로 만들어 활용한다.쉽게 얘기하자면H(x) = wx + bH : 가설 w : 가중치b : 편향잘 학습을 시키며 적절한 가중치를 찾아 최적의 가설식을 세우는것을 말한다.머신러닝의 주요 구성 요소데이터:머신러닝 모델은 데이터를 기반으로 학습합니다. 데이터의 품질과 양이 모델의 성능에 큰 영향을 미칩니다.구조화된 데이터: 테이블 형식의 데이터 (예: CSV 파일)비구조화된 데이터: 텍스트, 이미지, 오디오..

AI/ML 2024.12.28

[Pandas] 인코딩 ( Encoding )

인코딩 ( Encoding ) 이란?범주형 데이터를 수치형 데이터로 변환하는 과정 많은 머신러닝 모델은 수치형 데이터만 처리할 수 있기에, 범주형 데이터를 인코딩하는 것이 필수적1. 라벨 인코딩 ( Label Encoding )각 범주를 고유한 숫자로 변환하는 방식 ex) '빨강', '파랑', '초록' 이 있을경우 각각 0, 1, 2 로 변환주의할점 : 수치간에 순서가 있는 것으로 해석될 수 있다예를 들어, "빨강" = 0, "파랑" = 1, "초록" = 2로 변환되면 "파랑"이 "빨강"보다 크다는 의미로 잘못 해석될 수 있습니다.from sklearn.preprocessing import LabelEncoder# 데이터categories = ["빨강", "파랑", "초록", "파랑", "빨강"]# 라벨..

Python/Pandas 2024.12.26

[Pandas] 데이터 정규화 와 표준화

데이터 정규화데이터의 범위를 0 과 1 사이로 변환하는 과정서로 다른 범위를 가진 데이터를 동일한 스케일로 맞추어 비교하기 쉽게 만듬 Min - Max 정규화import pandas as pdfrom sklearn.preprocessing import MinMaxScaler# 예시 데이터프레임 생성data = { '특성1': [10, 20, 30, 40, 50], '특성2': [1, 2, 3, 4, 5]}df = pd.DataFrame(data)# Min-Max 정규화scaler = MinMaxScaler()normalized_df = pd.DataFrame(scaler.fit_transform(df), columns=df.columns)print(normalized_df) 특성1 특성2..

Python/Pandas 2024.12.26

[Pandas] 이상치 탐지와 처리

이상치 탐지 기술 통계 기반 이상치 탐지 -  describe()  describe()  함수를 통해 기본 통계량을 확인하고, 이상치를 의심import pandas as pd# 예시 데이터프레임 생성data = { '이름': ['철수', '영희', '민수', '지수', '상수'], '나이': [25, 30, 22, 35, 120], # 120은 이상치로 의심됨 '점수': [90, 85, 95, 80, 88]}df = pd.DataFrame(data)# 기술 통계량 확인print(df['나이'].describe()) - 결과count 5.000000mean 46.400000std 41.892848min 22.00000025% 25.0000..

Python/Pandas 2024.12.26

[Pandas] 결측치 탐지와 처리

결측치 탐지 Pandas 에서 결측치를 탐지하는 기본적인 함수는  isnull()  과  notnull()  이다. isnull()  : 결측치가 있는지 확인. 결측치인 경우 True , 아닌경우 False 를 반환 notnull()  : 결측치가 아닌 값을 확인. 결측치가 아닌 경우 True , 맞는경우 False  를 반환 null  과  na  를 변경해  isna()  ,  notna()  로 표현도 가능- 예시import pandas as pd# 예시 데이터프레임 생성data = { '이름': ['철수', '영희', '민수', '지수'], '나이': [25, 30, None, 35], '직업': ['학생', '회사원', '학생', None]}df = pd.DataFrame(dat..

Python/Pandas 2024.12.26

[Redis] redis 스터디 - WebSocket 을 이용해 채팅기능을 구현하기

redis 스터디의 3번째 목표는 채팅기능 구현이었다. 채팅의 핵심은 실시간 양방향 통신인데 다른분들은 RESTAPI 도 사용하고, redis 의 Pub/Sub 을 활용하여 다양한 방식으로 구현하셨고 소켓대신  gRPC 를 이용하신분도 있었다. 하지만 나같은초보는 하나라도 제대로못해보고 이것저것 하지말고 하나라도 제대로 완성해보기로 마음을먹었고 소켓을 이용해보기로 하였다.REST 방식은 포스트맨으로 내가 제대로한것인가 확인을 하였지만 채팅같은경우는 내두는으로 확인을 하고싶어 브라우저에서 탭을 여러개 띄워두고 새로고침하면서 확인을 하기로하였다. 이와 관련해서 프론트작업을 해야하지만 나는 몰?루? 기에 역시나 지피티의 도움을 받았다. 먼저 코드부터 살펴보자파일이름은 chat.py 이다from fastapi ..

DB 2024.12.22

[Redis] redis 스터디 - DB를 redis 로 이용한 ToDo리스트 만들기

redis 스터디 2번째로 각자 DB 를 Redis 를 이용하여 간단한 ToDo리스트 만들기로 했다. 주 목적이 Redis 를 이용해보자 라는 것이었기 때문에 FastAPI 를 사용해 간단하게  만들고 나머지는 지피티의 도움을 받아서 완성 시켰다.먼저 Redis 를 다운을 받아야 했다. 다운을 받은후 $ redis-server명령어를 통해 입력하였지만 환경변수 설정을 안해서 레디스가 있는 폴더로 경로변경을 해야만 실행이 가능했다. 이과정이 너무 귀찮아서 바로 저 명령어로만 실행되게 환경변수 설정을 해주었고  이렇게 6379 포트로 서버가 실행된걸 볼 수 있었다.종료할거면 Ctrl + C 로 종료할 수 있다. 그후$ redis-cli명령어를 통해 서버에 연결할수 있었다.redis-server : 6379번..

DB 2024.12.22

[Redis] redis 스터디 - redis 맛보기

DB의 종류에는 여러가지가 있다. 그중 redis 라는 DB를 같이 공부해보자는 스터디를 진행하기로 해서 관련내용들을 정리해보고자 한다. 이 포스팅은 다른글과 다르게 제대로 알아보거나 학습할 시간이 부족하여 다소 퀄리티가 떨어질수가 있다. 하지만 스터디의 취지는 완벽한 학습이 아닌 추후에 사용해보기위해어색함을 줄이고 기초사용법을 익히는 것이라 기록용으로 남겨두고자 한다. 먼저 우리는 https://www.youtube.com/playlist?list=PLtUgHNmvcs6qoVrxB5jzZ4meINz_KL-Bl [인프런] 비전공자도 이해할 수 있는 Redis 입문/실전풀버전 강의는 아래 링크를 참고해주세요😊 ✔️ https://inf.run/Puponwww.youtube.com이 강의를 기반으로 레디스..

DB 2024.12.22