machine learning(55)
-
[면접 대응] SBERT와 모바일넷 질문 답변
bert란? - 기존 RNN에서 문제가 되던 vanishing gradient 문제를 해결하기 위해 고안된 모델.- 특징- bidirectional로 단방향 학습이 아닌 양방향 학습을 진행- transformer encoder : self-attention 기법을 도입함으로써 gradient가 소실되는 문제를 막았다.- 또한 문장의 일부 단어를 가리고, 주변 단어를 통해 가려진 단어를 맞추는 연습을 진행하고, 두 문장을 나란히 놓고 두 번째 문장이 첫 번째 문장에 올 문장인지를 맞추도록 학습을 진행함. attention이란?- RNN의 경우 문장이 길면 길수록 앞부분에 나오는 정보의 중요도가 감소하는 문제가 발생함. (vanishing gradient)- 이를 해결하기 위해 매순간 각 토큰의 모든 중요도..
2026.02.03 -
[TENSORFLOW] serving memory leak??
아래의 docker hub를 통해 tensorflow serving 이미지를 다운 받는다. https://hub.docker.com/layers/tensorflow/serving/2.14.1-gpu/images/sha256-cdae1c60c07d1ffc94ebc086e0f1a4d7f1ecc52f3fec558f1f7b506dfd4edce2?context=explore Docker hub.docker.com $> docker pull tensorflow/serving:2.14.1-gpu model은 dockerhub git에 있는 예제 프로그램 대로 실행해본다.1. 우선은 git 받기 $> git clone https://github.com/tensorflow/serving 2. 환경 변수 정의하기$> TE..
2024.04.02 -
[PYTORCH] pytorch lightning으로 코드 변경하기
기존 pytorch로 작성한 모델을 pytorch lightning으로 변경하는 코드를 작성했다.pytorch lightning으로 변경 후의 코드는 훨씬 깔끔하고 가독성이 있어서 좋았다. 일단 아래의 pytorch 코드가 변경 전의 코드이다. def train(config): device = "cuda" if torch.cuda.is_available() else "cpu" print(f"Using {device} device") model = NeuralNetwork(config['input_size'], config['hidden1'], config['hidden2'], len(config['labels']), config['dropout..
2023.02.19 -
[DEEPLEARNING] 골빈해커의 3분 딥러닝 05_01_TensorBoard
텐서플로우로 만든 모델을 저장 및 로딩하고 모델 파라미터 값들을 tensorboard에 표현해 보자. data = np.loadtxt('../data/data.csv', delimiter=',', unpack=True, dtype='float32') x_data = np.transpose(data[0:2]) y_data = np.transpose(data[2:])data.csv 파일을 읽어서 앞의 두개의 데이터는 x_data로 나머지 데이터는 y_data에 저장하자.참고로 data.csv는 아래의 형태로 구성되어 있다.1 0 0 0 11 1 0 1 00 0 1 0 0x_data의 경우 transpose를 안해줄 경우 2x3 형태의 데이터 [[1 1 0] [0 1 0]] 로 저장이 되기 때문에 transp..
2019.06.07 -
[DEEPLEARNING] 골빈해커의 3분 딥러닝 04_03_Word2Vec
Word2Vec 모델을 deep learning을 이용해서 구현해 보자. import tensorflow as tf import matplotlib import matplotlib.pyplot as plt import numpy as nptensorflow와 matplotlib, numpy를 각각 import 한다. (각각 version : 1.13.0, 3.0.3, 1.16.3)matplotlib는 단어 -> 벡터로 변환 후 2차원 그래프 상에서 표시해주기 위한 용도로 사용된다. from matplotlib import font_manager, rc font_name = font_manager.FontProperties(fname="/usr/share/fonts/truetype/dejavu/guli..
2019.06.06 -
[DEEPLEARNING] 골빈해커의 3분 딥러닝 04_02_DeepNN
2019/06/04 - [machine learning] - [골빈해커의 3분 딥러닝] 04_01_classification [골빈해커의 3분 딥러닝] 04_01_classification골빈 해커님이 쓰신 3분 딥러닝을 코드 위주로 설명한 포스팅. 4장 01에서는 2개의 특징 데이터(털, 날개)를 가지고 [기타, 포유류, 조류]를 분류하는 모델을 설명하고 있으며, 전체 코드는 아래와 같다. step by..yujuwon.tistory.com 이전 포스팅에 이어 이번에는 layer를 2개를 만들어서 (Deep) 모델을 구현한 예제를 살펴보자.이전 포스팅과의 차이라면 layer 개수와 loss 함수를 tf에서 제공하는 함수를 썼다는 정도이다.전체 코드는 아래와 같다. 이전 포스팅과 차이점만 살펴보자.W1 ..
2019.06.05