'머신러닝' 태그의 글 목록
Data Analyst
300x250
300x250

머신러닝 10

머신러닝 전 데이터 전처리 방법

데이터 전처리는 데이터를 분석이나 머신러닝 모델에 적용하기 전에 데이터를 정리하고 가공하는 과정을 말합니다. 이를 통해 데이터의 품질을 향상시키고 모델의 성능을 향상시킬 수 있습니다. 아래는 데이터 전처리를 잘 할 수 있는 몇 가지 방법과 주의할 점을 제시합니다. 데이터 이해하기: 데이터의 특성과 분포를 잘 이해하는 것이 중요합니다. 이를 통해 어떤 전처리가 필요한지 판단할 수 있습니다. 데이터 누락 확인: 결측치(Missing values)를 확인하고 적절한 대체나 제거를 수행하세요. pandas 라이브러리를 사용하면 결측치 처리가 용이합니다. import pandas as pd # 결측치 확인 df.isnull().sum() # 결측치 대체 df.fillna(value, inplace=True) 이상..

머신러닝의 기초: 지도학습 개념 및 예시 코드

지도 학습은 기계 학습에서 가장 기본이 되는 학습 방법 중 하나로, 입력 데이터와 해당 데이터에 대한 정답(레이블)을 사용하여 모델을 학습시키는 방식입니다. 지도 학습은 주로 분류(Classification)와 회귀(Regression) 문제를 해결하는 데 사용됩니다. 1. 분류 (Classification): 분류는 주어진 입력 데이터를 미리 정의된 클래스 중 하나로 분류하는 문제입니다. 간단한 예로는 이메일이 스팸인지 아닌지를 예측하는 것이 있습니다. 예시: 이메일 스팸 분류 입력 데이터: 이메일의 텍스트 내용 레이블: 스팸 또는 정상 이메일 from sklearn.model_selection import train_test_split from sklearn.feature_extraction.text..

PySpark MLlib 활용법

머신 러닝은 대용량 데이터셋에서 유용한 정보를 추출하고 예측 모델을 구축하는 데에 핵심적인 도구입니다. 이번 글에서는 PySpark의 MLlib 라이브러리를 활용하여 대용량 데이터에 머신 러닝 알고리즘을 적용하는 방법을 알아보겠습니다. 1. 데이터 준비 우선, PySpark를 사용하여 데이터를 불러오고 전처리하는 방법을 살펴보겠습니다. 데이터를 로드하고, 특성을 선택하고 변환하는 과정을 다룰 것입니다. from pyspark.ml.feature import VectorAssembler # 데이터 로드 및 전처리 data = spark.read.csv('data.csv', header=True, inferSchema=True) assembler = VectorAssembler(inputCols=['feat..

Chat GPT의 친절한 설명 : Pyspark 란?

PySpark는 파이썬 언어를 기반으로 하는 Apache Spark의 파이썬 API입니다. Apache Spark는 대규모 데이터 처리를 위한 빠르고 유연한 오픈 소스 클러스터 컴퓨팅 시스템입니다. PySpark는 데이터 처리, 분석, 머신 러닝, 그래프 처리 등 다양한 작업을 수행하는 데 사용됩니다. PySpark는 다양한 기능을 제공하는데요, 주요 기능은 다음과 같습니다 RDD(Resilient Distributed Dataset): PySpark는 RDD를 통해 데이터를 나타내고, 분산하여 처리할 수 있습니다. RDD는 분산된 컴퓨팅 환경에서 안정적으로 데이터를 처리할 수 있도록 지원합니다. DataFrame 및 SQL 기능: PySpark는 DataFrame API를 제공하여 구조화된 데이터를 처..

Chat GPT의 친절한 설명 : 강화 학습이란?

강화 학습은 머신러닝의 한 분야로, 에이전트가 환경과 상호 작용하면서 보상을 최대화하도록 배우는 방법론입니다. 에이전트는 주어진 환경에서 특정한 상태(state)를 관찰하고, 그 상태에서 특정한 행동(action)을 선택함으로써 보상(reward)을 얻게 됩니다. 이러한 보상을 최대화하기 위해 에이전트는 시행착오를 통해 학습하고, 적합한 행동을 선택하게 됩니다. 주요 개념 에이전트(Agent): 의사 결정을 내리고 행동하는 주체입니다. 예를 들어, 게임에서의 플레이어, 로봇, 자율 주행 자동차 등이 될 수 있습니다. 환경(Environment): 에이전트가 상호 작용하는 외부 요소입니다. 에이전트는 환경에서 특정 상태를 관찰하고, 행동을 수행하여 보상을 얻습니다. 상태(State): 주어진 시간에 에이전..

Chat GPT의 친절한 설명 : 비지도학습이란?

비지도 학습(Unsupervised Learning)은 머신러닝의 한 분야로, 라벨 또는 정답 데이터 없이 입력 데이터의 패턴, 구조, 특성 등을 발견하는 데 사용됩니다. 이것은 데이터의 숨겨진 구조를 찾거나 클러스터링(Clustering), 차원 축소(Dimensionality Reduction), 이상치 탐지(Anomaly Detection) 등의 작업을 수행하는 데 활용됩니다. 데이터의 구조 발견을 통한 인사이트 도출 비지도 학습은 데이터에 대한 사전 지식이 없는 상황에서도 유용합니다. 이를 통해 데이터 내에 숨겨진 패턴이나 특징을 발견할 수 있어, 신규한 정보와 인사이트를 얻을 수 있습니다. 예를 들어, 소셜 미디어의 사용자 행동 데이터를 클러스터링하여 비슷한 행동 패턴을 가진 그룹을 발견하거나,..

Chat GPT의 친절한 설명 : 지도학습이란?

지도 학습은 머신러닝의 한 유형으로, 입력 데이터와 그에 대응하는 정답 데이터(라벨 또는 타겟)가 쌍으로 제공되며, 컴퓨터 모델이 입력 데이터로부터 출력을 예측하고 정답과 비교하여 학습하는 방법입니다. 지도 학습은 주어진 입력에 대한 출력을 예측하는 모델을 학습하는 데 사용됩니다. 주로 분류(Classification)와 회귀(Regression) 작업에 적용됩니다. 분류(Classification): 범주형 또는 이산적인 결과를 예측합니다. 예를 들어, 스팸 메일 필터링, 이미지 분류(강아지 vs 고양이), 질병 진단 등이 이에 해당합니다. 이진 분류(두 개의 클래스로 분류)와 다중 클래스 분류(여러 클래스로 분류)로 나뉩니다. 회귀(Regression): 연속적인 값을 예측합니다. 예를 들어, 주택 ..

Chat GPT의 친절한 설명 : 머신러닝이란?

머신러닝은 컴퓨터가 데이터로부터 학습하고 패턴을 인식하여 작업을 수행할 수 있는 인공 지능(AI)의 한 분야입니다. 주어진 데이터를 사용하여 컴퓨터가 규칙이나 명시적인 프로그래밍 없이 학습하고 문제를 해결하도록 하는 기술입니다. 기본적으로 머신러닝은 다음과 같은 세 가지 유형으로 나눌 수 있습니다: 지도 학습 (Supervised Learning): 입력 데이터와 정답 데이터(라벨)가 함께 제공되며, 모델은 입력 데이터와 정답 사이의 매핑을 학습합니다. 분류(Classification)와 회귀(Regression) 문제에 사용됩니다. 비지도 학습 (Unsupervised Learning): 라벨이 없는 입력 데이터만을 이용하여 패턴이나 구조를 발견하거나 데이터를 클러스터링합니다. 군집화(Clusterin..

train_test_split - (1)

모델링 과정에서 가장 먼저 알아볼 것은 바로 train_test_split() 메소드입니다. train_test_split() 메소드는 데이터 셋을 train_set과 test_set으로 손쉽게 분리할 수 있게 도와주는 메소드입니다. train / test 데이터 셋을 분리하는 이유 먼저, train/test를 분리하는 목적에 대해 정확히 이해해야 합니다. 용어를 정확히 하자면 train/test가 아니라 train/validation이 맞는 표현입니다. 머신러닝 모델에 train 데이터를 학습 시킨 후 test 데이터를 모델로 예측했을 경우 성능이 생각보다 낮게 나오는 경우가 발생합니다. 이러한 현상을 보통 Overfitting 되었다고 합니다. 이미지 출처 : educative.io 즉, 현재 모델이..

Lv3 | 전처리 | 원-핫 인코딩 OneHotEncoder()

컴퓨터는 문자로 된 데이터를 학습할 수 없다. 그래서 type 같은 피쳐들은 컴퓨터가 읽어서 학습 할 수 있도록 인코딩을 해주어야 한다. 그래서 인코딩의 방법 중 하나인 'One-Hot Encoding' 에 대해 알아보겠다. 'One-Hot Encoding' 은 말 그대로, 하나만 Hot하고 나머지는 Cold한 데이터를 의미한다. 즉, 자신에게 맞는 것은 1로, 나머지는 0으로 바꾸어 준다. 예를 들어서 아래의 '출신 지역' 이라는 변수는 문자로 되어있기 때문에. 컴퓨터가 이해할 수 없다. 그래서 컴퓨터가 이해할 수 있도록 숫자로 바꿔줘야 한다. 자신에 해당 되는 값은 1인 "Hot"한 값을 주고, 나머지는 0인 "Cold"한 값을 주는 방법입니다. # "OneHotEncoder"를 "encoder"라는..

300x250
300x250