728x90
반응형

전체 글 192

[시계열 데이터 이미지 인코딩] 2. Markov Transition Field(MTF) 개념 및 적용

1. Markov Transition Field(MTF)란?Markov Transition Field (MTF) 알고리즘은 이산화한 시계열 데이터의 전이 확률을 나타내는 알고리즘이다.N개의 Time Series 데이터가 있다고 가정한다.Time Series 데이터를 분위수를 활용하여 Q+1 bin으로 이산화한다.아래 과정을 통해 상태 전이 행렬을 구한다. 즉, Markov model은 상태 전이 행렬(state transition matrix)을 만들기 위한 것이다.상태 전이 행렬은 어떤 상태가 시간에 따라 어떻게 변화하는지 나타낸 것$w_{ij} = P(x_t = j | x_{t-1} = i)$i 상태로부터 j 상태로 전이하는 확률을 $W_{ij}$라고 한다.위 확률을 최대우도추정법(maximum li..

AI/Time series 2024.11.25

[시계열 데이터 이미지 인코딩] 1. Gramian Angular Field (GAF) 개념 및 적용

1. Gramian Angular Field (GAF) 이란?Gram Matrix: 각 시점 간의 시간적 상관관계를 극좌표를 기반으로 표현하는 알고리즘 ($G = X^TX$)서로 다른 모든 벡터들에 대해 유사도를 나타내는 행렬이라고 볼 수 있다.cosine similarity와 비슷하게 값이 1에 가까우면 유사도가 높고, 0이면 유사도가 없고, -1이면 정반대의 유사도를 가진다.극좌표 기반 행렬은 시계열 데이터를 이미지로 변경할 때 시간 상관관계를 보존할 수 있다는 장점이 있다. 1. Time Series 데이터를 -1~1까지로 정규화를 한다.시계열 데이터의 작거나 큰 다양한 범위들을 [-1, 1] 혹은 [0, 1] 구간으로 정규화시킨다.2. 정규화된 Time Series 값을 극좌표계(poloar co..

AI/Time series 2024.11.24

ClickHouse에 NATS 엔진 설정 방법

개요NATS로 publish한 메세지들이 바로 Clickhouse의 테이블에 추가될 수 있도록 NATS 엔진 설정 방법을 알아본다.1. NATS 메시징 시스템 구축1.1 NATS 설치# nats-server 설치$ curl -L https://github.com/nats-io/nats-server/releases/download/v2.10.18/nats-server-v2.10.18-linux-amd64.zip -o nats-server.zip$ unzip nats-server.zip -d nats-server$ sudo cp nats-server/nats-server-v2.10.18-linux-amd64/nats-server /usr/bin/ # nats 설치$ curl -sf https://binari..

Database/Clickhouse 2024.11.23

Tensorflow에서 multi GPU 사용 방법

1. GPU 확인보유하고 있는 gpu 정보와 해당 gpu 번호 확인from tensorflow.python.client import device_libdevice_lib.list_local_devices()아래 결과를 통해 gpu가 2개 있는 것을 확인할 수 있다. MirroredStrategy2. 사용 가능한 모든 GPU 병렬처리MirroredStrategy 인스턴스 생성 시 아무것도 지정하지 않으면 multi GPU에 대해 분산처리되어 동작함.마찬가지로 with mirrored_strategy.scope() 블럭 내에서는 모델 생성 및 학습 모델 설계 관련 구현하고, with 구문 내에서 model이 compile되어야함.import tensorflow as tfmirrored_strategy = t..

AI/딥러닝 2024.11.22

Opensearch 유사도 검색

이전 게시글앞서 PDF 문서를 Text로 변환하여 Custom analyzer 적용하여 인덱싱하였음.https://daeunnniii.tistory.com/206 Opensearch Tokenizer, Analyzer와 Custom Analyzer 적용1. Opensearch AnalyzerOpensearch에 텍스트 입력 시 필드를 인덱싱하고 Documents화 할 때 Lucene 엔진에 의해 텍스트가 분석되어 입력됨.이때 텍스트를 분석하는 엔진을 Analyzer라고 함.Lucene 에서 제공하는 Andaeunnniii.tistory.com Opensearch 유사도 검색1. More like this 쿼리More Like This (MLT) 쿼리는 입력으로 주어진 document 집합과 비슷한 doc..

Database/Opensearch 2024.11.21

Opensearch Tokenizer, Analyzer와 Custom Analyzer 적용

1. Opensearch AnalyzerOpensearch에 텍스트 입력 시 필드를 인덱싱하고 Documents화 할 때 Lucene 엔진에 의해 텍스트가 분석되어 입력됨.이때 텍스트를 분석하는 엔진을 Analyzer라고 함.Lucene 에서 제공하는 Analyzer는 하나의 Tokenizer와 다수의 Filter로 구성1.1 Filter의 종류CharFilter와 TokenFilter 2가지가 존재CharFilter는 입력된 문자열에서 불필요한 문자를 normalization하기 위해 사용TokenFIilter는 tokenizer에 의해 분해된 token에 대한 Filter 처리를 함.기본적으로 CharFilter에 의해 공백 콤마 등의 문자를 삭제하며, 예시로 문서의 유형이 xml일 경우 의 문자열들..

Database/Opensearch 2024.11.20

Opensearch Ingest pipeline으로 로그파일 전처리

1. Opensearch Ingest Pipeline1.1 Opensearch Ingest Pipeline이란?Ingest pipeline은 데이터를 전처리하는 방법으로 데이터를 색인하기 전에 데이터를 변환하거나 필터링해준다.Ingest Node: Opensearch에 데이터를 인덱싱하기 전에 다양한 전처리를 할 수 있는 메커니즘을 제공하는 노드 타입Ingest pipeline을 설정하기 위해서는 Ingest Node가 활성화되어있어야 한다.Ingest Pipeline을 설정하기 위한 형식은 다음과 같다.PUT _ingest/pipline/{pipline name}{ "description" : "...", "processors" : [ ... ]}1.2 Processorgrok 프로세서란?grok ..

Database/Opensearch 2024.11.19

Opensearch 개념과 사용법 정리

Documentdocument는 텍스트 또는 구조화된 데이터 등의 정보를 저장하는 단위이다.Opensearch에서 문서는 JSON 형식으로 저장된다.IndexIndex는 document의 모음이다.Index는 여러가지 방법으로 생각할 수 있다.학생 데이터베이스에서 인덱스는 데이터베이스의 모든 학생을 나타냄.정보를 검색할 때는 인덱스에 포함된 데이터를 쿼리함.인덱스는 기존 데이터베이스의 데이터베이스 테이블을 나타냄.Cluster와 NodeOpensearch는 분산 검색 엔진으로 설계되었으며, 하나 이상의 노드에서 실행될 수 있음.즉, 데이터를 저장하고 검색 요청을 처리하는 서버이다.ShardsOpensearch는 Index를 Shard로 분할함.각 샤드는 다음 이미지에서 볼 수 있듯이 인덱스에 있는 모든 ..

Database/Opensearch 2024.11.18

Clickhouse에서의 Sharding

1. ClickHouse에서의 샤딩1.1 샤딩(Sharding)이란?샤딩은 동일한 스키마를 가지고 있는 여러대의 데이터베이스 서버들에 데이터를 작은 단위로 나누어 분산 저장하는 기법이다. 이때, 작은 단위를 샤드(shard)라고 부른다.어떻게 보면 샤딩은 수평 파티셔닝의 일종이다.차이점은 파티셔닝은 모든 데이터를 동일한 컴퓨터에 저장하지만, 샤딩은 데이터를 서로 다른 컴퓨터에 분산한다는 점이다.물리적으로 서로 다른 컴퓨터에 데이터를 저장하므로, 쿼리 성능 향상과 더불어 부하가 분산되는 효과까지 얻을 수 있다. 즉, 샤딩은 데이터베이스 차원의 수평 확장(scale-out)인 셈이다.1.2 샤딩의 장단점샤딩의 장점1) 데이터 처리 속도: 노드에 가해지는 데이터 부하는 작아지고 데이터 처리 속도는 향상된다.2..

Database/Clickhouse 2024.11.16

Clickhouse 개요 및 Docker로 Multi node 구성

1. ClickHouse 개요1.1 ClickHouseClickHouse는 OLAP을 위한 고성능, 컬럼 지향형 SQL DBMS이다.기존 데이터베이스보다 100~1000배 더 빠르게 작동하고 초당 수억에서 수십억 행과 수십 기가바이트의 데이터를 처리한다.오픈소스로 무료이고, ClickHouse에서 클라우드로 제공해주는 서비스는 유료이다.1.2 OLAP (Online analytical processing)OLAP란 OnLine Analytical Processing의 약자로 다양한 관점에서 비지니스 데이터를 분석하는 데에 사용할 수 있는 소프트웨어 기술이다.온라인 분석 처리(OLAP)는 다음과 같은 특성을 가진 복잡한 분석 쿼리에 대해 대규모 데이터 세트에 대한 실시간 응답이 필요하다.데이터 세트는 수십..

Database/Clickhouse 2024.11.16
728x90
반응형