본문 바로가기

전체 글175

멀티 스레드(Multi-Thread ) 응용하기 with Python 블로그를 참고해서 멀티 스레드(Multi-Thread)를 응용하고자 한다. 멀티 스레드 응용하기 1. 싱글 스레드를 이용한이미지 다운로드 사용할 이미지는 Corey Schafer의 Python Threading Tutorial에서 가져온 15장 이미지를 사용한다. 주어진 이미지는 고해상도 이미지를 사용하며, 다운로드에 약간 시간이 소요된다. import time import os import requests img_urls = [ 'https://images.unsplash.com/photo-1516117172878-fd2c41f4a759', 'https://images.unsplash.com/photo-1532009324734-20a7a5813719', 'https://images.unsplash.co.. 2022. 5. 19.
멀티 스레드(Multi-Thread ) 시작하기 with Python 파이썬으로 멀티 스레드(Multi-Thread)를 구현하는 방법에 대해서 살펴보고자 한다. 1. 싱글 스레드 import time def do_something(): print('Sleeping 1 seconds') time.sleep(1) print('Done Sleeping...') if __name__ == '__main__': start = time.perf_counter() for _ in range(10): do_something() finish = time.perf_counter() print(f'Finished in {round(finish-start, 2)} second(s)') 위 코드는 do_something 함수를 10번 실행하는 코드이고 time.perf_counter() 함수를 .. 2022. 5. 19.
멀티 프로세스 vs 멀티 스레드 1. 프로세스 1) 프로세스란? 메모리에 적재되어 CPU 자원을 할당 받아 실행되는 프로그램. 2) 할당받는 시스템 자원 CPU 시간 주소 공간 Code, Data, Stack, Heap 구조로 된 독립된 메모리 영역 3) 프로세스 특징 프로세스는 각각 독립된 메모리영역(code, data, heap, stack)을 할당받으며, 다른 프로세스의 변수나 자료구조에 접근 불가하다. 다른 프로세스의 자원에 접근하려면 파이프, 파일, 소켓 등을 이용해 통신해야한다. 프로세스는 최소 1개의 메인 스레드를 갖고 있다. 2. 스레드 1) 스레드란? 프로세스의 작업단위. 2) 스레드 특징 프로세스 내에서 stack만 따로 할당받고, code, data, heap 영역은 공유한다. 한 스레드가 프로세스 자원을 변경하면,.. 2022. 5. 18.
시계열 분해란? (Time Series Decomposiotion) 시계열 데이터란? 시간에 순차적으로 관측한 값들의 집합이며, 예측 모델에서 시간을 변수로 사용하는 특징이 있다. 시계열 데이터 분석이란? 과거 데이터의 패턴을 분석하여 미래의 값을 예측하는 방법으로, 과거의 패턴이 미래에도 지속된다는 데이터의 안정성이 기본적인 가정으로 필요하다. 시계열 분해법이란? What is Time Series Decomposition? 시계열 데이터를 추세/순환/계절/불규칙 요소로 분해하는 기법이다. 추세(Trend)란? 데이터가 장기적으로 증가하거나 감소하는 것이며, 추세가 꼭 선형적일 필요는 없다. 순환(Cycle)이란? 경기변동과 같이 정치, 경제, 사회적 요인에 의한 변화로, 일정 주기가 없으며 장기적인 변화 현상이다. 계절성(Seasonal)이란? 주, 월, 분기, 반기.. 2022. 5. 12.