Coding

Presentation Archive

linguana 2021. 5. 28. 11:33

GAN

AdaIN normalization (layer, instance normalization)

hhfq

[논문 review] AdaIN (dlehgo14.github.io)

NVlabs/ffhq-dataset: Flickr-Faces-HQ Dataset (FFHQ) (github.com)

tfa.layers.InstanceNormalization  |  TensorFlow Addons

음성 합성

43893.pdf (googleusercontent.com)

[AI 기술] 사람 같은 T map 안내 음성.. : 네이버블로그 (naver.com)

Val-acc 향상할 수 있는 기법

github.com/yu4u/mixup-generator

SVM after LSTM deep learning model for text classification (javacodemonk.com)


May. 28, 2021.

Semi-Supervised GAN (SGAN)
준지도 GAN
구별자를 잘 구하는 것이 목적임
Softmax & Sigmoid
클래스 구분과 진짜인지 구별하는 출력


CutMix (traindata augmentation)
특징이 잘 안 드러나는 부분도 볼 수 있도록 하는 기법들임
np.ones()를 도화지처럼 만들어주고
x, y 좌표에 대해서 랜덤으로 구하고 0으로 채우는 방식으로 마스크 생성
img * mask 하면 이미지에 마스크 입힐 수 있음
이미지뿐만 아니라 레이블도 섞어줘야 함 (비율제)
Mixup처럼 모든 이미지 섞어버리면 구별 능력에 기여도 낮음 (CutOut도 있음)
레이블링이 실수로 되는데 컴파일은 (activation=softmax; compile(loss=categorical_crossentropy))


Language Models are Multitask learners
GPT-2, 자연어 비지도학습 (생성, 번역, 요약 등)
PPl(Perplexity), ACC(Accuracy), BPB(Bits-per-byte), BPC(Bits-per-Character)
Decoder = FFNN + Masked Self-Attention(문맥 반영)


GAN, GPT-3, Object Detection 알아야 함.


June 1, 2021.

너의 목소리가 보여 (음성 기록 서비스)

음성 속 화자를 구분하여 텍스트를 기록하는 서비스. 문서 디지털화.

프로세스: 데이터 수집, 전처리, 모델링 (화자 구분 STT), 모델 평가, 웹 구현

Librosa 특성 추출, chroma_stft/cqt/cens; Mel-Spectrogram ZCR 등

전처리: 묵음 제거

GAN을 활용한 데이터 증강 (Vanilla GAN, DCGAN): Generator & Discriminator; 데이터 tanh을 위해 [-1, 1]로 정규화; LeakyReLU 사용; 위조 데이터를 의도적으로 1로 라벨링

generator 먼저 학습 시키기 위해 discriminator.trainable=False로 먼저 진행

DCGAN (CNN, Batch Normalization 훈련시 mini-batch단위로 평균0과 분산1을 정규화)

MasAbsScaler 사용함

generator (upsampling 사이즈가 *4 되기 때문에 입력의 사이즈는 /4로 설정)

discriminator (stride=2 로 pooling 진행)

음성 GAN을 위해서 RNN 계열의 디코더를 사용했으면 어땠을까하는 생각이 든다. Tacotron 같은 speech synthesis를 할 수 있는 것을 찾아보지 않아서 아쉽다.

cf> 말소리와 음성과학(Phonetics and Speech Sciences) (eksss.org)

Kakao Brain


GAN으로 실사영화의 애니매이션화

시도했던 모델들: PIX2PIX, Style GAN, Style Transfer, Deep Photo Style Transfer, White Box Cartoonization, Anime-GAN

Depthwise Convolution, Pointwise Convolution

Inverted residual block: 저차원 -> 고차원 -> 저차원 (저차원의 레이어에만 필요한 정보가 압축되어 저장되어 있다는 가정, 메모리 사용량 축소를 위함), lInear bottleneck (고차원의 채널은 저차원의 채널로 표현할 수 있다는 가정에서 시작) 채널이 많은 경우 ReLU를 사용해도 중요한 정보는 보존됨, Up conv block 픽셀의 겹침으로 인해서 인공적인 바둑판 모양이 나옴

Anime GAN의 Loss 3가지 = Content_loss, Style_loss (그레이스케일 입힘), Color_loss (Huber loss: threshold 안의 MSE, 밖이면 어쩌고), YUV (휘도, 청색 색차, 적색 색차: 영상이나 사진 등의 압축에 유용함), Ltv (한 장의 사진에 대해 색 대비를 조절함 낮을수록 뚜렷해짐), weight 같은 hyperparameter를 조절하면서 다른 결과물 출력 가능

Super Resolution: 저해상도 이미지를 고해상도 이미지로 만들어주는 기술, UNet 구조 (Encoder, Resblock, Decoder)


6 종로 봇

젯슨난노

이미지 히스토그램 활용한 Lane detection: (Chessboard calibrate (cv2.findchessboardcorners) 카메라 시점 왜곡 완화, cv2.calibrateCamera, cv2.undistort, cv2.createCLAHE(이미지의 전반적인 균일화), cv2.THRESH_BINARY, Bird-eye-view)

실선인지 점선인지를 구분하기 (이미지 히스토그램 라벨링의 단점) => Mask-RCNN 활용 예정

VIA (VGG Image Annotator -> .json)로 라벨링 함


빅데이터를 활용한 배달 수요 예측

데이터 전처리, 모델링, 전이학습

KT통신 빅데이터 플렛폼 => 336,917개의 데이터 확보

전처리: 결측값 처리, 이상치 처리 (boxplot, QQ-plot) 0인 데이터 모두 삭제, Time 2-8시 데이터 삭제 중 2-8시 데이터 삭제 택함

라벨링: One-hot encoding

머신러닝: CatBoost, GridSearchCV 5 folds

ResNet: Residual learning (element-wise addition), BottleNeck Block (1x1 layer; speed and accuracy tradeoff) 

DenseNet: ResNet의 장점을 살린 CNN 아키텍쳐 (channel-wise concatenation)

EfficientNet: Width, Depth, Higher resolution 세가지를 적절히 조합하여 만든 네트워크 (r = 1.0 denotes resolution 224x224 and r = 2.5 denotes resolution 560x560), SE: squeeze and excitation

FLOPS: FLoating points of Operations Per Second


OCR + TTS

from xml.etree.elementtree