[Go/Golang] Go의 숫자형과 부동소수점 오류
2020. 8. 15. 18:40
Programming/Go
Go의 숫자형과 부동소수점 오류 Go는 매우 엄격한 문법을 갖고 있기 때문에 동일한 값을 지녀도 형이 다르다면 연산이 불가 Go 역시 부동소수점 오류를 갖기 때문에 연산을 위한 형변환 과정에서 주의가 필요 I. Go의 숫자형 1. 종류 uint unsigned integers 로 0 ~ max value 까지 표현 uint8/16/32/64 uint로 선언할 경우 32 or 64bit으로 설정 uint8은 byte와 동일한 값을 가짐 package main import ( "fmt"; "math" ) func main() { uint8_num := uint8(3) byte_num := byte(3) fmt.Println("uint8 : ", uint8_num, ", byte : ", byte_num) f..
[시계열/python]Python을 이용한 Dynamic Time Wraping(DTW)
2020. 8. 6. 15:32
Data/ML
DTW Dynamic time wraping(동적 시간 워핑)은 다른 속도, 움직임을 가진 서로 다른 신호의 시간축에 대한 파장의 유사성을 측정하는 알고리즘 그래픽, 비디오, 오디오 분야에서 자주 사용되며 의료분야에서 보행 유사성, 생체신호 분석 등에 자주 사용되기도 한다. 특히 자동 음성 인식기술 분야에서 가장 두각을 나타내는 알고리즘 I. DTW 의 특징과 개념 1. 일반적인 시계열 신호의 비교 일반적으로 시계열 신호간 유사성을 따질 때 유클리드 거리(Euclidean distance)를 이용 (각각 시간별 신호 간 MSE를 이용) 장점 계산이 용이 연산속도가 뛰어남 단점 신호의 떨림과 움직임이 심해질수록 결과가 어긋나는 현상 발생 길이가 다른 시계열 분석 불가 2. DTW를 이용한 시계열 신호 비교..
[Go/Golang]go 패키지(package)와 go init(초기화)
2020. 8. 1. 13:48
Programming/Go
Go package & Go init I. Import & Package 1. 패키지 package main 코드의 구조화(모듈화) 및 재사용성 제공 패키지 이름 == 디렉터리 명 같은 패키지 내에 있으면 소스파일들이 디렉터리명을 패키지 이름으로 사용 (단 main은 제외 => package main은 start point기 때문에 디렉토리 내에 단 하나만 존재해야 함) main이 아닌 패키지의 경우 main 메서드가 필요하지 않지만, 단독 실행은 불가 패키지 내의 함수가 소문자로 시작하면 Private, 대문자 시작 시 Public 독립적인 작은 패키지 단위로 제작하고 조합해 하나의 프로그램을 형성하는 것을 권고함 2. import package main import ( "fmt" "src/mypack..
[python]파이썬 동시성/비동기 프로그래밍 5. 활용 예시 Riss Crawler 만들어서 Riss 논문 데이터 다운로드 하기
2020. 7. 26. 22:48
Programming/Python
파이썬 동시성/비동기 프로그래밍 4. concurrent.futures [Python]파이썬 동시성/비동기 프로그래밍 4. concurrent.futures 파이썬 동시성/비동기 프로그래밍 3. GIL(Global interpreter Lock) [Python]파이썬 동시성/비동기 프로그래밍 3. GIL(Global interpreter Lock) 파이썬 동시성/비동기 프로그래밍 2. Asyncio [python]파이썬 동시.. leo-bb.tistory.com concurrent.futures.ThreadPool과 async I/O를 활용한 Riss Crawler I. 개요 과거에 Riss 논문 검색 데이터를 csv파일로 저장하기라는 게시물을 포스팅한 적이 있습니다. 파이썬의 비동기/동시성 프로그래밍을..
[Go/Golang]Go 제어문 - If/else, Switch, For
2020. 7. 25. 18:46
Programming/Go
Go 제어문 I. If 문 boolean 검사만 가능 (명시적으로 True/False가 나오도록 구현) 소괄호 사용 X 1. 기본 사용법 func main() { if 조건1 { 실행1 } else if 조건2 { 실행2 } else { 실행3 }2. 주의사항 괄호 줄 바꿈 금지 go는 바이트코드로 바꾸며 자동으로 세미콜론을 붙이는데, 이때 줄 바꿈을 하는 경우 if (조건); {실행} ; 과 같이 인식되기 때문 func main() { a := 10 if a > 10 { fmt.Println("10보다 크다") } } >>> go run main.go raise error 괄호 생략 불가 java등에서는 조건이 하나인 경우 괄호를 생략 가능한 경우가 있는데 go는 반드시 괄호가 포함돼야 함 func m..
[Python]파이썬 동시성/비동기 프로그래밍 4. concurrent.futures
2020. 7. 19. 17:45
Programming/Python
파이썬 동시성/비동기 프로그래밍 3. GIL(Global interpreter Lock) [Python]파이썬 동시성/비동기 프로그래밍 3. GIL(Global interpreter Lock) 파이썬 동시성/비동기 프로그래밍 2. Asyncio [python]파이썬 동시성/비동기 프로그래밍 2. Asyncio [python]파이썬 동시성/비동기 프로그래밍 1. 코루틴 [python]파이썬 동시성/비동기 프로그래밍 1. 코루틴 leo-bb.tistory.com concurrent.futures 기존에 파이썬에서 비동기 실행 환경을 만드는 데 있었던 어려움을 해결해준 패키지 ThreadPoolExecutor(), ProcessPoolExecutor()를 사용하여 다중 스레드/다중 프로세스를 구현 concur..
[Python]파이썬 동시성/비동기 프로그래밍 3. GIL(Global interpreter Lock)
2020. 7. 19. 14:54
Programming/Python
파이썬 동시성/비동기 프로그래밍 2. Asyncio [python]파이썬 동시성/비동기 프로그래밍 2. Asyncio [python]파이썬 동시성/비동기 프로그래밍 1. 코루틴 [python]파이썬 동시성/비동기 프로그래밍 1. 코루틴 코루틴 3.5 버전부터 지원(async/await 문법은 3.7 이상부터) 코루틴을 사용하면 CPU와 리소스 낭�� leo-bb.tistory.com GIL(Global Interpreter Lock) I. 파이썬의 구동방식 파이썬은 대표적인 인터프리터 언어입니다. 때문에 파이썬 실행 시 인터프리터가 메모리에 할당되고, 코드를 컴퓨터의 언어로 해석하여 CPU에 전달하면 CPU가 이를 받아 실행하는 순서로 진행됩니다.(마치 자바의 JVM 같은 것으로 파이썬이 "느린 언어"라..