전공공부/전자전기전공(19)
-
오디오 신호처리 for deep learning - FFT, STFT, spectrogram, scalogram
본 글에서는 오디오 신호처리의 전체적인 overview를 소개합니다. 자세한 내용은 다른 블로그나 논문을 참고해주시면 되겠습니다. 1. FFT FFT는 Fast Fourier Transform으로 divide and conquer algorithm을 활용해, 라이브러리에서 FT 이용시 FFT를 사용. FT의 의미는 x(t)와 phasor가 얼마나 유사한지 나타내줍니다. 그래서 시간에 대한 wave amplitude값을 사인파로 분해합니다. 즉 타임 도메인에서 주파수 도메인으로 매핑시켜주는 역할을 합니다. 하지만 FFT의 가장 큰 문제점은 시간도메인의 정보를 완전히 잃어버린다는 것입니다. 2. STFT - Spectrogram 그 문제를 해결하기 위해 STFT가 등장했습니다. STFT는 Short-Time..
2022.04.14 -
<딥러닝, 머신러닝> classify할 대상을 다양하게 train/test set에 넣고 싶다면?
Tensorflow의 경우, sklearn.model_selection.train_test_split 함수가 존재한다. 그렇기 때문에 수월하게 train, test를 나눌 수 있다. 그 중 stratify함수를 사용하면, 분류할 대상이 한쪽으로 쏠리지 않고 다양하게 분류할 수 있다. 즉 stratify = classify할 target(label)으로 넣으면 된다. https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.train_test_split.html sklearn.model_selection.train_test_split Examples using sklearn.model_selection.train_test_split..
2021.10.29 -
tf.keras.layers.Dense의 Args 분석 - TNT 스터디 중 몰랐던 것
tf.keras.layers.Dense | TensorFlow Core v2.6.0 Just your regular densely-connected NN layer. www.tensorflow.org Dense layer은 NN으로 다시 연결할 때 사용한다. output = activation(dot(input, kernel) + bias) kernel : layer에 주어진 weight matrix bias : layer에 정해진 bias vector로 model을 optimize하기 위해 사용된다. 1. kernel_initializer 그 중 kernel_initializer = 'he_normal'을 많이 사용하는데 0을 중심으로 정규분포 해당하는 kernel을 가중치로 가져온다. 이외에도 ReL..
2021.09.17 -
ConcatOp: Dimensions of inputs should match shape ... error가 나올 때
만약 에러가 train되는 마지막에 등장했다면 이 해법은 확실하다. batch를 활용해서 train하고 있을 때, 아마 마지막에 batch_size가 동일 하지 않기 때문에 발생된 에러이다. 예를 들어 dataset = Dataset().batch(batch_size) 이런 식으로 되어 있다면 이거를 dataset = Dataset().batch(batch_size, drop_remainder = True) 뒤에 단어를 추가해주면 간단하게 문제가 fix 된다. drop_remainder를 True로 설정하면 마지막 배치 크기를 무시하고 지정한 배치크기를 유지할 수 있다. 그래서 dimension과 관련된 에러없이 문제가 해결된다.
2021.09.17 -
TNT 스터디 2주차 몰랐던 것(1)
1. LIME & Attention LIME에 관한 간단한 설명 LIME과 관련한 스터디를 진행한 뒤, Attention이라는 새로운 method도 알게 되었다. 둘 다 모두 인간에게 NLP나 CNN이 어떻게 작동되는지 직관적인 뷰를 제공하는 툴이다. 즉 인공지능이 그렇게 판단한 이유를 보기 쉽게 설명한 다는 것이다. 위의 사진을 보면 I love you를 je t' aime로 통역한 이유를 알 수 있다. 진하게 표시한 부분이 가중치를 더 많이 준 것을 알 수 있다. 앞으로 task에서 많이 활용할 예정이다. 2. 데이터셋 뻘짓 데이터 모델에서 fft를 활용하려고 scipy.fftpack.fft()를 활용하려고 하였다. 하지만 이미 데이터셋 함수에서 from_tensor_slices를 활용해서 tenso..
2021.09.17 -
VScode, Colab에서 명령어가 입력 되지 않을 때 한가지 방법
바로바로 한컴입력기 땜에 그런것이다. 한글을 깔릴 때 같이 깔리나 보다... 1. 짜증나는 한컴 입력기 삭제(MS 오피스 한글 교정이 이상하거나 IDE 단축키가 오작동) www.lesstif.com 이분의 설명을 들으면 속이 시원해진다. 따라하면 번거로움 없이 코딩을 즐길 수 있다 ㅎ
2021.09.16