Python
-
Python multiprocessing 속도 비교Python 2020. 1. 21. 16:39
연구가 끝난 코드들이 많은데 정리가 안되어있어서 요새 정리를 하고 있다. 그러던 와중 전에 작동하였던 python multiprocessing 코드가 작동하지 않아 버그를 수정하였고 속도도 비교하였다. code 1. 에러 IOError: [Errno 24] Too many open files: 'xxxxxxxx.raw'위와 같이 너무 많은 파일을 열었다고 에러가 난다. 구글링을 해보니 리눅스에서 열 수 있는 파일을 제한하고 있어서 그 수를 늘려주면 된다고 나온다. ulimit -aoutput(mac): core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited file size (blocks, -f) unlimited max lo..
-
PyTorch contiguous() 함수Python/PyTorch 2020. 1. 21. 16:31
torch.contiguous()에 대해 알아보자. 1. PyTorch documentation Returns a contiguous tensor containing the same data as self tensor. If self tensor is contiguous, this function returns the self tensor. 라는데... 그러면 contiguous tensor가 먼데...? 구글링을 시작했다. 2. Stack overflow 글 There are few operations on Tensor in PyTorch that do not really change the content of the tensor, but only how to convert indices in to t..
-
PyTorch nn.Sequential 알아보기Python/PyTorch 2020. 1. 21. 16:28
PyTorch 코드를 구경하다보면 종종 nn.Sequential 함수가 보인다. 그래서 알아보았다. 1. 그냥 구현 class CNN(nn.Module): def __init__(): super(CNN, self).__init__(): self.conv1 = nn.Conv2d(1, 32, kernel_size=(41, 11), stride=(2, 2), padding=(20, 5)) self.conv2 = nn.Conv2d(32, 32, kernel_size=(21, 11), stride=(2, 1), padding=(10, 5)) self.bn = nn.BatchNorm2d(32) self.act = nn.Hardtanh(0, 20, inplace=True), def forward(self, x): x..
-
파이썬의 *args와 **kwargsPython 2020. 1. 21. 16:26
파이썬 코드를 보다보니 함수 인자에 args와 *kwargs가 있는데 잘 몰라서 찾아보았다. 1. *args *args는 함수의 인자로 들어온 내용이 list에 담긴다고 생각하면 된다. def myFun(*args): for arg in args: print(arg) myFun('Hello', 'Welcome', 'to', 'HanSeokhyeon')output: Hello Welcome to HanSeokhyeon남은 인자를 싹 담는다. def myFun(arg1, *args): print("First: {}".format(arg1)) for arg in args: print("Next: {}".format(arg)) myFun('Hell..
-
파이썬 librosa 패키지로 스펙트럼 그리기Python/Librosa 2020. 1. 12. 01:00
프로젝트에서 파형의 스펙트럼을 그려서 분석할 일이 있어 코드를 작성해보았다. data load, normalization 내가 사용한 파일이 raw 파일이라 아래와 같은 방식으로 데이터를 읽었다. librosa 패키지는 함수의 입력으로 -1 ~ 1로 노말라이즈된 데이터를 사용하기 때문에 32767로 나누어주었다. data = np.fromfile("ANC_X_8k/boeing_FF.raw", dtype=np.int16) data = data.astype(np.float) / 32767 spectrogram, amplitude, dB librosa.stft()는 data의 스펙트로그램을 리턴한다. 여기서 n_fft로 FFT 사이즈를 설정할 수 있다. 스펙트로그램은 복소수로 리턴되므로 np.abs를 이용해서..
-
파이썬 pow 함수의 3번째 인자Python 2020. 1. 12. 00:57
알고리즘 문제를 풀던중 pow(x, y, z)와 같이 3번째 인자를 사용한 경우가 나와서 찾아보게 되었다. >>> pow(2, 4, 3) 1 >>> pow(2, 4) % 3 1파이썬 pow 함수의 3번째 인자는 모듈러연산이다. 아래 예제를 보면 알 수 있듯이 2의 4승인 16을 3으로 나눈 나머지 1이 출력된다. >>> pow(2, 4) 16 >>> 2 ** 4 16사실 내가 보통 파이썬 코드를 작성중엔 pow 함수보단 ** 연산자를 더 많이 이용한다. 출처: https://m.blog.naver.com/PostView.nhn?blogId=wideeyed&logNo=221137999832&proxyReferer=https%3A%2F%2Fwww.google.com%2F