'분류 전체보기' 카테고리의 글 목록 (2 Page)
Data Analyst
300x250
300x250

분류 전체보기 347

PostgreSQL 과 MySQL 큰 차이

PostgreSQL과 MySQL은 동일한 기능을 많이 제공합니다. 하지만, 관계형 데이터베이스 관리 시스템 (RDBMS)에는 큰 차이점이 있습니다. 빠르게 정리해보겠습니다. 1. MySQL 은 읽기 전용 명령을 관리하는데 선호됩니다. 동시성이 필요한 경우에는 선호되지 않습니다. 2. PostgreSQL 읽기와 쓰기 작업 가능하며, 대규모 데이터 세트 및 복잡한 쿼리를 관리하는 경우에 선호됩니다. 하지만, 읽기 전용 작업에는 선호되지 않습니다. 3. MySQL 은 PostgreSQL 보다 기능이 적지만, 읽기 전용 쿼리에서 가볍고 안정적이기 때문에 빠른 처리 속도를 유지할 수 있습니다. 4. PostgreSQL은 처음부터 ACID를 준수하도록 구축되어있으며, 동시 트랜잭션이 필요한 경우에 최적이지만 읽기..

[추천 시스템] Cold Start

Cold Start 란? 추천 시스템에서의 "Cold Start"는 새로운 사용자나 항목에 대한 추천을 만드는 과정에서 발생하는 문제를 의미합니다. 이것은 새로운 사용자나 항목에 대한 충분한 정보가 없어서 발생하는 도전적인 문제입니다. 즉, 시스템이 해당 사용자나 항목에 대한 행동 기록을 충분히 수집하지 못했기 때문에 발생합니다. Cold Start 문제는 추천 시스템의 성능을 저하시킬 수 있으며, 사용자 경험에 영향을 미칠 수 있습니다. Cold Start 문제 발생 원인 추천 시스템에서의 Cold Start 문제는 크게 두 가지 측면에서 발생합니다: 사용자(Cold User)와 항목(Cold Item)에 관련된 문제입니다. Cold User (사용자): 새로운 사용자: 추천 시스템은 사용자의 과거 행..

generate_series 함수

generate_series는 PostgreSQL에서 제공하는 함수로, 특정 범위 내의 연속된 값을 생성합니다. 이 함수는 일반적으로 날짜, 시간 또는 숫자와 같은 연속적인 값들을 만들 때 사용됩니다. select date(generate_series(start_at, end_at,'1 day')), start_at, end_at, goodsno from table_a 예를 들어, generate_series('2024-02-01'::date, '2024-02-10'::date, '1 day')와 같이 사용하면 '2024-02-01'부터 '2024-02-20'까지의 날짜를 일일 단위로 생성합니다. 이를 통해 일련의 날짜 값을 가지고 있는 테이블을 만들거나, 특정 날짜 범위에 대한 집계 또는 분석을 수행할..

협업 필터링과 Matrix Factorization: 추천 시스템의 기초

추천 시스템은 현대의 다양한 서비스에서 사용자에게 맞춤형 콘텐츠를 제공하는 핵심 기술 중 하나로 부상했습니다. 그 중에서도 협업 필터링과 Matrix Factorization(MF)은 많은 추천 시스템에서 활용되는 강력한 알고리즘입니다. 이번 글에서는 이 두 가지 알고리즘의 기본 개념에 대해 알아보겠습니다. 1. 협업 필터링의 이해 협업 필터링은 사용자들 간의 상호 작용 정보를 기반으로 아이템을 추천하는 기술입니다. 이는 사용자가 선호하는 아이템을 다른 유사한 사용자들의 선호도를 기반으로 예측하는 방식입니다. 주로 사용자 기반 협업 필터링과 아이템 기반 협업 필터링으로 나뉩니다. 사용자 기반 협업 필터링 유사한 사용자들끼리 그룹을 형성하고, 해당 그룹의 선호도를 기반으로 추천을 수행합니다. 예를 들어, ..

Apache Airflow Best Practices 및 유용한 팁: 데이터 파이프라인 운영의 성공 비결

Apache Airflow를 사용하여 데이터 파이프라인을 운영하는 것은 강력하고 유연한 도구를 활용하는 데 있어 매우 중요합니다. 이번 글에서는 Airflow를 효과적으로 활용하기 위한 모범 사례와 유용한 팁에 대해 알아보겠습니다. 1. DAG 분리 및 모듈화: 1.1 단일 DAG 원칙: 각 DAG는 특정한 작업 흐름을 나타내어야 합니다. 여러 작업 흐름이 하나의 DAG에 들어가면 가독성이 떨어질 수 있습니다. 1.2 모듈화: 관련된 작업들은 별도의 모듈로 분리하여 재사용성을 높이고 유지보수를 용이하게 합니다. # my_dag.py from my_module import create_tasks dag = DAG('my_dag', ...) tasks = create_tasks(dag) 2. 성능 최적화: ..

Apache Airflow DAG 작성과 예약: 데이터 파이프라인의 스케줄링 마법

Apache Airflow에서 DAG(Directed Acyclic Graph)를 작성하고 예약하는 것은 데이터 파이프라인을 정의하고 관리하는 핵심적인 단계입니다. 이번 글에서는 Airflow에서 DAG를 작성하고 작업을 예약하는 방법에 대해 자세히 알아보겠습니다. 1. DAG 정의: 1.1 Python 스크립트 작성: DAG를 정의하려면 Python 스크립트를 작성해야 합니다. 이 스크립트는 각 작업을 DAG 객체에 추가하고 작업 간의 의존성을 설정하는 역할을 합니다. from airflow import DAG from airflow.operators.python_operator import PythonOperator from datetime import datetime, timedelta # DAG ..

Apache Airflow 소개 및 기본 개념: 데이터 파이프라인의 주역

데이터 과학 및 엔지니어링 분야에서 Apache Airflow는 데이터 파이프라인을 효과적으로 관리하고 예약하며 모니터링하는 데 필수적인 오픈 소스 도구로 자리 잡고 있습니다. 이 글에서는 Apache Airflow의 기본 개념과 왜 데이터 전문가들이 이를 사용하는지에 대해 알아보겠습니다. 1. Apache Airflow의 핵심 개념: 1.1 Directed Acyclic Graphs (DAGs): Airflow에서 작업들은 Directed Acyclic Graphs (DAGs)로 표현됩니다. DAG는 여러 작업들이 의존성을 가지며 비순환적인 구조를 갖는 데이터 흐름을 나타냅니다. 1.2 작업과 Operator: DAG 내에서 실행되는 개별 작업들을 Operator라고 부릅니다. Operator는 특정 ..

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

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

비지도 학습: 데이터의 숨은 패턴을 찾다

지도 학습은 정답이 주어진 데이터에서 모델을 학습하는 반면, 비지도 학습은 데이터의 숨은 구조나 패턴을 찾아내는 방법입니다. 이번 글에서는 비지도 학습의 핵심 개념과 장점, 다양한 응용 사례에 대해 살펴보겠습니다. 1. 비지도 학습의 기본 개념: 비지도 학습은 라벨이 없는 데이터를 기반으로 모델을 학습시키는 방식입니다. 주요한 비지도 학습 기법으로는 군집화, 차원 축소, 자기 지도 학습 등이 있습니다. 군집화 (Clustering): 비슷한 특성을 갖는 데이터들을 그룹화하는 기법입니다. 예시: 고객 세그먼테이션, 이미지 분할 차원 축소 (Dimensionality Reduction): 고차원 데이터의 특성을 줄여 새로운 표현을 만드는 기법입니다. 예시: 주성분 분석 (PCA), t-SNE 자기 지도 학습..

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

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

300x250
300x250