반응형

2024/05 6

[Machine Learning][머신러닝] XGBoost의 개념과 예제 코드

XGBoost(Extra Gradient Boost)XGBoost란Gradient Boost 알고리즘을 기반으로 개선해서 나온 모델.캐글 경진대회에서 상위에 입상한 데이터 과학자들이 사용한 것을 알려저 유명해짐.Gradient Boost의 단점인 느린수행시간을 해결하고 과적합을 제어할 수 있는 규제를 제공하여 성능을 높임.두가지 개발 방법Scikit-learn  XGBoost 모듈 사용파이썬 XGBoost 모듈 사용XGBoost의 장점높은 성능 (실제로 Kaggle에서 XGboost가 상위권을 다수 차지)효율성, 유연성 ,휴대성이 뛰어남여러 파라미터를 조절해 가며 최적의 Model을 만들 수 있음과적합 방지신경망에 비해 시각화가 쉽고, 직관적임자원이 많으면 더 빠르게 학습시킬 수 있음Cross Valid..

[Machine Learning][머신러닝] 릿지/라쏘/엘라스틱넷 (정규화 회귀분석)

릿지/라쏘/엘라스틱넷 (정규화 회귀분석) 모델링을 하다보면 과적합될때가 많은데 이때 과적합을 막는 방법은 모델에 규제를 가하는 것이다. 보통 선형회귀 모델링에서는 모델의 가중치를 제한함으로써 규제를 하는데, 이번 포스팅에서는 모델의 가중치를 제한하는 회귀분석인 릿지, 라쏘, 엘라스틱넷에 대해 알아본다.  정규화 방법론Regularized Method, Penalized Method, Contrained Least Squares선형회귀 계수(Weight)에 대한 제약 조건을 추가함으로써 모형이 과도하게 최적화되는 현상, 즉 과최적화를 막는 방법과최적화는 계수 크기를 과도하게 증가하는 경향이 있기에, 정규화 방법에서의 제약 조건은 일반적으로 계수의 크기를 제한하는 방법규제 (Regularization)선형..

[Hadoop/Spark] YARN의 구성요소와 작동방식

YARN세부 리소스 관리가 가능한 범용 컴퓨팅 프레임웍각 Application (MapReduce, HBase 등) 실행에 필요한 Resource(Cpu, Memory, Disk)를 할당하고 모니터링MapReduce의 단점을 극복하기 위해 하둡 2.0부터 제공CF) MapReduce란 : https://ysyblog.tistory.com/347 [Hadoop] 맵리듀스(MapReduce) Programming맵리듀스 프로그래밍 특징 큰 데이터를 처리할 수 있는데에 목표 데이터 셋의 포맷도 하나로 단순화하였고, 변경 불가 데이터 셋의 포멧은 Key, Value의 집합이며 변경 불가(immutable) 데이터 조작은ysyblog.tistory.com YARN의 구성요소ClusterJob 수행을 위해 여러 대..

[Spark] Spark 소개 및 Spark관련 정보 모음 (Spark 구성요소, 작동방식 등)

Spark 란버클리 대학의 AMPLab에서 아파치 오픈소스 프로젝트대규모 데이터를 처리하기 위한 클러스터 컴퓨팅 프레임워크 Java로 개발되었으며 Python, Sql, Scala등의 언어들을 지원하여, 어떤 언어로 개발하든 성능에 큰 이슈 없도록 설계Hadoop와 달리 MapReduce 로직중 Map를 메모리에서 처리하기에 Hadoop보다 속도가 빠름빅데이터 처리 관련 다양한 기능 제공https://spark.apache.org/releases/spark-release-3-5-0.html Spark Release 3.5.0 | Apache SparkSpark Release 3.5.0 Apache Spark 3.5.0 is the sixth release in the 3.x series. With sig..

[Spark] Spark Action의 구성요소(Job, Stages, Tasks)와 Spark의 연산 (Transformations /Actions / Lazy Execution)

Job, Stages, TasksAction -> Job -> 1+ Stages -> 1+ Tasks (큰 순서대로) Action Job을 하나 만들어내고 코드가 실제로 실행됨Lazy Execution Job 하나 혹은 그 이상의 Stage로 구성됨 Stage는 Shuffling이 발생하는 경우 새로 생김 Stage Stage는 기본적으로 Shuffling없이 실행될 수 있는 Narrow Dependencies Task들의 집합DAG의 형태로 구성된 Task들 존재 여기 Task들은 파티션 수 만큼 병렬 실행이 가능 Task 가장 작은 실행 유닛으로 Executor에 의해 실행됨 Lazy Execution /Transformations /ActionsSpark의 연산은 Transformation과 Act..

[Spark] Spark 프로그램 구조 (Driver, Executor), Spark Cluster Manager

Spark 프로그램 실행 환경개발/테스트/학습 환경 (Interactive Clients)노트북 (주피터, 제플린)Spark Shell프로덕션 환경 (Submit Job)spark-submit (command-line utility): 가장 많이 사용됨데이터브릭스 노트북:노트북 코드를 주기적으로 실행해주는 것이 가능REST API:Spark Standalone 모드에서만 가능API를 통해 Spark job 실행실행코드는 미리 HDFS등의 파일 시스템에 적재되어 있어야함Spark 프로그램의 구조1. Driver실행되는 코드의 마스터 역할 수행 (YARN의 Application Master)컨테이너를 하나 잡아서 돌게됨.사용자 코드를 실행하며 실행 모드(client, cluster)에 따라 실행되는 곳이 달..

반응형