GAN (Generative Adversarial Network)
2022. 6. 14. 20:29
💡 AI/토이 프로젝트
GAN (Generative Adversarial Network) GAN은 Data를 만들어내는 Generator와 만들어진 Data를 평가하는 Discriminator가 서로 대립(Adversarial)적으로 학습해가며 성능을 점차 개선해 나가자는 개념이다. 여기서 GAN의 목표는 Generator 를 잘 학습시키는 것이다. ML은 input이 데이터, output은 label 인 정형화된 틀이 있다. 그러나 input이 노이즈, output이 data 인 것도 있다. 그게 바로 GAN이다. 두 개의 네트워크가 경쟁을 해가면서 학습을 한다? 그 당시에 존재하지 않았던 개념이다. 딥러닝의 아버지라고도 불리우는 Yann Lecun 교수는 GAN을 가리켜 최근 10년 동안 머신러닝 분야에서 가장 혁신적인 아..
Kaggle - Home Credit Default Risk
2022. 6. 9. 00:53
💡 AI/Dacon | Kaggle
https://www.kaggle.com/competitions/home-credit-default-risk/data Home Credit Default Risk | Kaggle www.kaggle.com 데이터 모델 설명 메인 테이블 : application_{train|test}.csv 고객의 정보와 현재 대출에 대한 정보를 제공한다. 1이면 미납자, 0이면 성실한 사람 SK_ID_CURR 과거 대출 이력 : previous_application.csv 고객의 현재 대출 이전의 과거 대출 정보를 제공한다. SK_ID_PREV, SK_ID_CURR 타사 대출 이력 : bureau.csv 고객의 현재 대출 이전의 타사 대출 정보를 제공한다. SK_ID_BUREAU, SK_ID_CURR 타사 대출 월별 잔..
DL - tech interview
2022. 4. 11. 09:33
💡 AI/DL
목차 딥러닝은 무엇인가요? 딥러닝과 머신러닝의 차이는? Cost Function과 Activation Function은 무엇인가요? Data Normalization은 무엇이고 왜 필요한가요? 알고있는 Activation Function에 대해 알려주세요. (Sigmoid, ReLU, LeakyReLU, Tanh 등) 오버피팅의 경우 어떻게 대처해야 할까요? 하이퍼 파라미터는 무엇인가요? Weight Initialization 방법에 대해 말해주세요. 그리고 무엇을 많이 사용하나요? 볼츠만 머신은 무엇인가요? TF, PyTorch 등을 사용할 때 디버깅 노하우는? Neural Network의 가장 큰 단점은 무엇인가? 이를 위해 나온 One-Shot Learning은 무엇인가? 1. 딥러닝은 무엇인가요?..
ML - interview
2022. 4. 11. 09:11
💡 AI/ML
목차 알고 있는 metric에 대해 설명해주세요. (ex. RMSE, MAE, recall, precision ...) 정규화를 왜 해야할까요? 정규화의 방법은 무엇이 있나요? Local Minima와 Global Minima에 대해 설명해주세요. 차원의 저주에 대해 설명해주세요. Dimension reduction 기법으로 보통 어떤 것들이 있나요? PCA는 차원 축소 기법이면서, 데이터 압출 기법이기도 하고, 노이즈 제거 기법이기도 합니다. 왜 그런지 설명 해주실 수 있나요? PCA, LSA, LDA, SVD 등의 약자들이 어떤 뜻이고 서로 어떤 관계를 가지는지 설명할 수 있나요? Markov Chain을 고등학생에게 설명하려면 어떤 방식이 제일 좋을까요? SVM은 왜 반대로 차원을 확장시키는 방식으..
💣 배틀그라운드 리뷰 자연어처리
2022. 3. 29. 17:36
💡 AI/토이 프로젝트
목차 Sentence Transformer 설치 및 실행 Clustering 예제 배틀그라운드 리뷰 크롤링 전처리 배틀그라운드 리뷰 임베딩 Clustering 워드클라우드 만들기 BERT : 문장의 문맥을 양방향으로 이해해서 숫자의 형태로 바꿔주는 딥러닝 모델 Bidirectional : 양방향 Encoder : 입력값을 숫자 형태로 바꾸는 Representations from Transformers : 인코더 디코더 모델을 지닌 딥러닝 모델 SBERT : BERT의 문장 임베딩의 성능을 개선시킨 모델, BERT의 문장 임베딩을 응용하여 BERT를 fine tuning 한다. Sentence Transformer 설치 및 실행 !pip install -q -U sentence-transformers Pr..
kaggle notebook의 첫 코드는 뭘까?
2022. 3. 27. 11:01
💡 AI/Dacon | Kaggle
new kaggle notebook을 누르면 가장 먼저 나오는 코드이다. 무엇을 하는 코드일까? 먼저 + Add data를 통해서 데이터를 불러와보자. 그러면 Input에 데이터가 생성된다. 불러오긴 했는데 이 데이터를 불러오고 싶고 이 데이터가 어디에 저장되어 있는지 알고 싶다. 그걸 알려주는 코드가 바로 아래의 코드이다. import numpy as np # linear algebra import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv) import os for dirname, _, filenames in os.walk('/kaggle/input'): for filename in filenames: print(os.path.jo..
🤬 Speech-to-text(STT)를 이용한 욕설 필터링 프로그램
2022. 2. 22. 20:21
💡 AI/토이 프로젝트
목차 STT(Speech-To-Text)란? STT 연결 및 동작 확인 코드 및 설명 느낀점 STT(Speech-To-Text)란? Google AI 기술로 지원되는 API를 사용하여 음성을 텍스트로 변환하는 기술 Google Cloud Platform(GCP)의 Cloud Speech API를 이용 기존의 Google Assistant API와는 다름 Key 발급을 통해 쉽게 사용할 수 있는 Cloud API 적당히 조용한 환경에서의 인식률은 DeepSpeech와 겨루지만, 노이즈 환경에서는 부족함 STT 연결 및 동작확인 빠른시작 페이지를 참고하여 API활성화 후 다음 코드를 실행한다 과정 요약 GC에서 프로젝트 생성 프로젝트 결제 사용 설정(신용카드 등록) - 60분 이내 무료 프로젝트내에 서비스 ..
😷 마스크 탐지 인공지능
2022. 2. 15. 20:13
💡 AI/토이 프로젝트
마스크를 썼는지 안썼는지 실시간으로 확인하는인공지능을 구현해보자. 목차 Load dataset Training model Labeling Construct model Training Use pre-trained model Result Load Dataset 마스크 쓴 사람과 마스크 안쓴 사람의 데이터로 학습이 끝난 마스크 classifier를 활용한 마스크 detector로 진행이 됩니다. 아래와 같이 마스크 안 쓴사람의 이미지를 구해서, Face detection을 한번 하고, 잘라낸 face 에서 랜드마크 detection을 합니다. 그 다음에 배경이 투명한 마스크 이미지를 구해서 랜드마크를 기준으로 마스크를 씌워줍니다. 요런 식으로 해서 마스크를 안쓴 이미지에서 마스크를 쓴 이미지를 만들었습니다. ..
LSTM 이란?
2022. 2. 8. 19:08
💡 AI/토이 프로젝트
목차 빈칸에 들어갈 단어는? (he, she) 간단한 RNN 구조 좀더 간략화한 RNN 구조 Gradient descent weight optimization Error3 derivative caculation Gradient Vanishing Gradient Exploding Long sequence에 대한 해결책 : LSTM (Long Short Term Memory) LSTM : RNN에 memory cell 도입 LSTM cell LSTM cell : forget mechanism LSTM cell : input mechanism LSTM cell : output mechanism 아래의 빈칸에 들어갈 단어는? (He/She) 정답 : He 빈칸의 이전 문장에서 John에 대한 이야기를 하고 있기..
📈 LSTM을 이용한 TSLA 주식 예측
2022. 2. 1. 12:18
💡 AI/토이 프로젝트
간단한 코드로 테슬라, 삼전 주식을 예측해보자. 목차 Load Dataset Compute Mid Price Create Windows Normalize Data Build a Model Training Prediction Load Dataset import pandas as pd # csv 파일 로드 import numpy as np # 행렬 연산 import matplotlib.pyplot as plt # 데이터 시각화 from keras.models import Sequential # deep learning model from keras.layers import LSTM, Dropout, Dense, Activation import datetime https://finance.yahoo.com 야..
🧙 해리포터 투명망토 만들기
2022. 1. 24. 18:06
💡 AI/토이 프로젝트
투명 망토 만들기 특정 색깔을 뽑아서 마스크를 만든다. 미리 찍어놓은 background 이미지에 마스크를 입힌다. (res1) 지금 카메라(또는 비디오)에서 들어온 이미지를 마스크만큼 뺀다. (res2) 두 개를 합친다. (res1 + res2) 파란색 HSV range 수정 lower_blue = np.array([105,120,70]) upper_blue = np.array([135,255,255]) mask1 = cv2.inRange(hsv, lower_blue, upper_blue) import cv2 import numpy as np import time, argparse parser = argparse.ArgumentParser() # 인자값을 받을 수 있는 인스턴스 parser.add_ar..
Image Super Resolution
2022. 1. 24. 10:46
💡 AI/토이 프로젝트
Image Super Resolution Super Resolution (초고해상도) : 주로 모델로 생성된 이미지를 의미 High Resolution (고해상도) : 주로 Output 이미지를 의미 Low Resolution (저해상도) : 주로 Input 이미지를 의미 Image Super Resolution의 정의 저해상도 이미지를 고해상도로 변환시키는 문제 미디어, 의료, 보안 등 다양한 산업 분야에서 중요한 문제로 대두되고 있다. Image Super Resolution 문제의 어려움 Image Super Resolution은 유일한 정답이 존재하지 않는 ill-posed problem이 존재한다. 저해상도 이미지를 고해상도로 복원할 때 정답이 단 1개만 존재하지 않는다. Computer Vis..
🖕 뻐큐 모자이크 알고리즘 만들기
2022. 1. 18. 16:50
💡 AI/토이 프로젝트
https://google.github.io/mediapipe/ MediaPipe MediaPipe란 구글에서 제공하는 AI 프레임워크로써, 비디오 형식 데이터를 이용한 다양한 비전 AI 기능을 파이프라인 형태로 손쉽게 사용할 수 있도록 제공됩니다. AI 모델 개발 및 수많은 데이터셋을 이용한 학습도 마친 상태로 제공되므로 라이브러리를 불러 사용하듯이 간편하게 호출하여 사용하기만 하면 되는 형태로, 비전 AI 기능을 개발할 수 있습니다. 제공되는 여러가지 모델 MediaPipe는 오픈소스 프로젝트로서 소스가 공개되기 때문에 원하는 부분을 수정하여 추가 개발할 수도 있습니다. 또한 솔루션 별로 상세한 기술자료 및 예제 등이 풍부하게 제공되고 있습니다. 학습모델을 범위나 용도별에 따라 구분하여 사용할 수 있..
🍊 내 얼굴로 어노잉 오렌지 만들기
2022. 1. 11. 19:25
💡 AI/토이 프로젝트
1. 환경설정 아나콘다 가상환경에서 작업 cmake, dlib, imutils 필요한 라이브러리 설치 $ conda activate swc $ pip install cmake $ pip install opencv-contrib-python dlib $ pip install imutils 2. 코드 import cv2 # opencv : 이미지 합성 import dlib # 얼굴 영역 탐지, 랜드마크 탐지 from imutils import face_utils, resize # import numpy as np orange_img = cv2.imread('orange.jpg') # 이미지를 opencv로 읽어와서 orange_img에 저장 orange_img = cv2.resize(orange_img, d..