728x90 반응형 SMALL Data-driven Methodology98 [Resampling Methods] 무작위 오버샘플링에서 수축 요인 (shrinkage factor)의 영향 무작위 오버샘플링에서 수축 요인 (shrinkage factor)의 영향 RandomOverSampler를 사용하여 smoothed bootstrap (부트스트랩)을 생성하는 데 사용된 수축 계수의 효과를 보여준다. 먼저, 몇 개의 샘플만으로 분류 데이터 집합을 생성한다. 클래스 간의 비율은 불균형하다. import seaborn as sns from collections import Counter import matplotlib.pyplot as plt from sklearn.datasets import make_classification sns.set_context("poster") X, y = make_classification( n_samples=100, n_features=2, n_redunda.. 2024. 2. 3. 리샘플링 방법 (Resampling Methods) 리샘플링 방법 (Resampling Methods) 리샘플링 방법은 현대 통계학에서 없어서는 안 될 도구이다. 이 방법은 훈련 세트에서 샘플을 반복적으로 추출하고 각 샘플에서 관심 있는 모델을 재추출하여 추정된 모델에 대한 추가 정보를 얻는다. 예를 들어, 선형 회귀식의 변동성을 추정하기 위해 훈련 데이터에서 여러 샘플을 반복적으로 추출하고 각각의 새로운 샘플에 선형 회귀식을 적용한 다음 결과값이 어느 정도 다른지 조사할 수 있다. 이러한 접근 방식을 사용하면 원래 학습 샘플을 사용하여 모델을 한 번만 프팅하면 얻을 수 없는 정보를 얻을 수 있다. 리샘플링 접근 방식은 훈련 데이터의 다른 하위 집합을 사용하여 동일한 통계적 방법을 여러 번 수행해야 하므로 계산 비용이 많이 들 수 있다. 그러나 최근 컴퓨.. 2024. 1. 30. [Data Engineering] 데이터 파이프라인 빌드 데이터 파이프라인 빌드 Docker 및 PostgreSQL을 활용하여 ETL (추출, 변환, 로드) 프로세스를 위해 여러 개의 컨테이너를 실행시키는 어플리케이션을 정의하기 위한 docker-compose.yaml 파일을 생성한다. docker-compose.yaml 여러 Docker 컨테이너를 조정하는 데 사용되는 Docker Compose에 대한 구성이 포함되어 있다. 이는 세 가지 서비스를 정의한다. version: '3' services: source_postgres: image: postgres:15 ports: - "5433:5432" networks: - etl_network environment: POSTGRES_DB: source_db POSTGRES_USER: postgres POSTGR.. 2024. 1. 23. [Data Engineering] Docker Compose Docker Compose Docker Compose는 다중 컨테이너 애플리케이션을 정의하고 공유하는 데 도움이 되는 도구이다. Compose를 사용하면 YAML 파일을 생성하여 서비스를 정의할 수 있으며 단일 명령으로 모든 것을 가동하거나 해체할 수 있다. Compose 사용의 가장 큰 장점은 어플리케이션 스택을 파일로 정의하고 이를 프로젝트 저장소의 루트에 보관하며 (이제는 버전 제어됨) 다른 사람이 프로젝트에 쉽게 기여할 수 있도록 할 수 있다는 것이다. 누군가는 저장소를 복제하고 Compose를 사용하여 앱을 시작하기만 하면 된다. Compose 파일 생성 getting-started-app 디렉터리에 compose.yaml 파일을 만든다. 이제, compose.yaml 파일에서 서비스를 정의한다.. 2024. 1. 23. [Data Engineering] 다중 컨테이너 앱 다중 컨테이너 앱 어플리케이션 스택에 MySQL을 추가하게 된다. 여기서 MySQL은 어디에서 실행되는지, 동일한 컨테이너에 설치하거나 별도로 실행하는지의 의문이 생긴다. 일반적으로 각 컨테이너는 한 가지 일을 잘 수행해야 한다. 컨테이너를 별도로 실행하는 몇 가지 이유는 다음과 같다. API와 프런트엔드를 데이터베이스와 다르게 확장해야 할 가능성이 높다. 별도의 컨테이너를 사용하면 버전을 별도로 버전화하고 업데이트할 수 있다. 로컬에서 데이터베이스용 컨테이너를 사용할 수 있지만 프로덕션 환경에서는 데이터베이스용으로 관리형 서비스를 사용할 수 있다. 그러면 데이터베이스 엔진을 앱과 함께 제공하고 싶지 않을 것이다. 여러 프로세스를 실행하려면 프로세스 관리자 (컨테이너는 하나의 프로세스만 시작)가 필요하므.. 2024. 1. 23. [Data Engineering] 데이터베이스 유지 데이터베이스 유지 컨테이너를 시작할 때마다 to do 목록이 비어 있다. 컨테이너 파일 시스템 컨테이너가 실행되면 파일 시스템에 대한 이미지의 다양한 레이어를 사용한다. 또한, 각 컨테이너에는 파일을 생성/업데이트/제거하기 위한 자체 "스크래치 공간"이 있다. 동일한 이미지를 사용하더라도 다른 컨테이너에는 변경 사항이 표시되지 않는다. 1에서 10000 사이의 임의의 숫자로 ubuntu이름이 지정된 ./data.txt 파일을 생성하는 컨테이너를 시작한다. docker run -d ubuntu bash -c "shuf -i 1-10000 -n 1 -o /data.txt && tail -f /dev/null" 컨테이너의 터미널에 액세스하여 출력을 볼 수 있는지 확인한다. 이를 위해 CLI 또는 Docker .. 2024. 1. 23. [Data Engineering] 어플리케이션 업데이트 어플리케이션 업데이트 src/static/js/app.js 파일에서 새로운 빈 텍스트를 사용하도록 56행을 업데이트한다. - No items yet! Add one above! + You have no todo items yet! Add one above! docker build 명령을 사용하여 업데이트된 버전의 이미지를 빌드한다. docker build -t getting-started . 업데이트된 코드를 사용하여 새 컨테이너를 시작한다. docker run -dp 127.0.0.1:3000:3000 getting-started docker: Error response from daemon: driver failed programming external connectivity on endpoint p.. 2024. 1. 23. [Data Engineering] 도커 (Docker) 도커 (Docker) 신뢰할 수 있는 데이터 인프라 구축과 중복된 작업을 피하기 위해 데이터 엔지니어링은 필수이다. 모든 어플리케이션 및 패키징, 종속된 라이브러리를 어느 환경에서나 개발하기 위해서 쉽게 배포하고 안정적으로 구동할 수 있게 도와주는 도커를 사용한다. Dockerfile Dockerfile은 지정된 이미지를 빌드하는 데 필요한 모든 명령을 순서대로 나열한 텍스트 파일이다. Dockerfile은 Docker 빌드 명령에 의해 Docker 이미지를 생성하는 데 사용된다. Image 이미지는 읽기 전용이며 변경되지 않는다. Docker 이미지는 코드, 런타임, 라이브러리, 환경 변수, 구성 파일 등 소프트웨어를 실행하는 데 필요한 모든 것을 포함하는 경량의 독립 실행형 실행 패키지다. Conta.. 2024. 1. 22. [Spark] 스파크 클러스터 스파크 클러스터 실행 환경은 일반적으로 여러 시스템 (ex: 클러스터)에 분산된다. 실행을 위해 작업을 클러스터에 제출한다. Spark 자체는 Scala / Java로 작성되었다. 그러나 Python 인터페이스를 사용하면 데이터 과학 전문가가 이점을 누릴 수 있다. 배포 유형 자체 호스팅 클러스터 배포 (24시간 풀타임 엔지니어가 필요) 클라우드 솔루션 (ex: Google Cloud의 Cloud Dataproc 및 AWS의 EMR) 공급 업체 기반 배포 (ex: Databricks) 여기서 공급 업체는 GCP, AWS 및 Azure와 같은 IAAS 제공업체 위에 위치한다. 여러 데이터 과학 도구에 쉽게 액세스할 수 있다. Airflow 및 MLflow와 같은 워크플로 관리 도구와 통합된다. PySpar.. 2024. 1. 8. Apache Spark Apache Spark Apache Spark는 대규모 데이터 처리를 위한 분석 엔진이다. Spark에는 Cloud SQL, 스트리밍, 머신러닝, 그래프를 위한 라이브러리가 있다. Spark를 사용하면 여러 컴퓨터에서 데이터 작업 (전처리, 기능 엔지니어링, 훈련)을 실행할 수 있다. 스파크의 핵심 아이디어는 복원력 있는 분산 데이터 세트 (RDD)라는 개념이다. 이 핵심 아이디어를 사용하여 Spark는 내결함성과 규모를 관리할 수 있다. Spark에는 pandas 및 R과 유사한 dataframe 이라는 추상 데이터 유형도 있다. Spark 데이터프레임 인터페이스는 RDD 위에 위치하며 작업에 대한 보다 접근하기 쉬운 사양을 허용한다. 주로 일반적인 단일 시스템이 처리할 수 있는 것보다 훨씬 큰 데이터.. 2024. 1. 8. 이전 1 2 3 4 5 6 ··· 10 다음 728x90 반응형 LIST