본문 바로가기
728x90
반응형
SMALL

딥러닝31

[Keras] 멀티모달 함의 분류 (2) 데이터 입력 파이프라인 구축 TensorFlow Hub는 다양한 BERT 계열의 모델을 제공한다. 각 모델에는 해당하는 전처리 계층이 함께 제공된다. 리소스에서 이러한 모델과 해당 전처리 계층에 대해 더 자세히 알 수 있다. 런타임을 짧게 하기 위해 원래 BERT 모델의 더 작은 변형을 사용한다. # Define TF Hub paths to the BERT encoder and its preprocessor bert_model_path = ( "https://tfhub.dev/tensorflow/small_bert/bert_en_uncased_L-2_H-256_A-4/1" ) bert_preprocess_path = "https://tfhub.dev/tensorflow/bert_en_uncased_pre.. 2024. 4. 2.
[Keras] 멀티모달 함의 분류 (1) 멀티모달 함의 분류 멀티모달 함의를 예측하기 위한 모델을 구축하고 훈련한다. Google Research에서 소개한 다중 모드 수반성 데이터 세트 multimodal entailment dataset를 사용한다. 멀티모달 함의란 소셜 미디어 플랫폼에서는 콘텐츠를 감사하고 중간 정도의 콘텐츠를 제공하기 위해 거의 실시간으로 다음 질문에 대한 답을 찾고자 할 수 있다. 주어진 정보는 다른 정보와 모순 (contradict) 되는지? 주어진 정보는 다른 정보를 의미 ( imply)하는지? 자연어 처리에서 이 작업은 텍스트 함의 분석이라고 한다. 이것은 정보가 텍스트 콘텐츠에서 나올 때만 해당된다. 실제로 사용 가능한 정보는 텍스트 콘텐츠뿐만 아니라 텍스트, 이미지, 오디오, 비디오 등의 멀티모달 조합에서 나오.. 2024. 3. 30.
[PyTorch] AssertionError: Torch not compiled with CUDA enabled 소제목 입력 torch와 cuda 버전이 맞지 않아 출력되는 에러이다. 따라서, 공식 홈페이지에서 가이드대로 설치를 진행한다. 현재 Windows의 PyTorch는 Python 3.8 ~ 3.11만 지원하고 Python 2.x는 지원되지 않으므로 torch 가상 환경으로 파이썬 버전을 설치한다. conda create --name torch python=3.9 torch 가상 환경을 활성화하고 CUDA 11.8 또는 12.1을 설치한다. pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 그 다음, GPU를 사용하는 확인하기 위해 device를 출력해 본다. import torch devic.. 2024. 3. 19.
Multiclass Classification Error Metrics Multiclass Classification Error Metrics 둘 이상의 결과를 예측하려면 둘 이상의 출력 뉴런이 필요하다. 하나의 뉴런이 두 가지 결과를 예측할 수 있기 때문에 출력 뉴런이 두 개인 신경망은 다소 드물다. 결과가 세 개 이상이면 출력 뉴런이 세 개 이상 필요하다. import pandas as pd from scipy.stats import zscore # Read the dataset df = pd.read_csv("https://data.heatonresearch.com/data/t81-558/jh-simple-dataset.csv", na_values=['NA', '?']) # Generate dummies for job df = pd.concat([df, pd.get_d.. 2024. 3. 6.
Keras에서 노이즈 제거 오토인코더 사용 Keras에서 노이즈 제거 오토인코더 사용 컴퓨터가 등장하고 머신러닝이라는 개념조차 생기기 훨씬 전부터 과학자들은 자연 관찰에 맞는 방정식을 만들어냈다. 과학자들은 관찰 사이의 상관 관계를 입증하기 위해 방정식을 찾는다. 예를 들어 질량, 가속도, 힘과 관련된 다양한 방정식이 있습니다. 복잡한 데이터를 살펴보고 방정식을 도출하는 데는 약간의 기술적 전문 지식이 필요하다. 함수 근사화의 목표는 이 과정에서 직관을 배제하고 대신 알고리즘에 의존하여 데이터를 설명하는 방정식을 자동으로 생성하는 것이다. 회귀 신경망이 이 작업을 수행한다. 회귀 함수를 차트화하는 데 사용할 함수를 만드는 것으로 시작한다. def chart_regression(pred, y, sort=True): t = pd.DataFrame({.. 2024. 3. 5.
[Windows] NVIDIA GPU 사용을 위한 WSL2에 Tensorflow 및 Keras 설치 NVIDIA Driver NVIDIA에서 제품에 맞는 드라이버를 설치한다. WSL2 설치 PowerShell에서 WLS2를 설치한다. wls --install PowerShell에서 nvidia-smi 명령으로 GPU 서버를 확인한다. nvidia-smi Miniconda 설치 Miniconda Windows 프로그램을 설치한다. 콘다 환경 만들기 다음 명령을 사용하여 tf 라는 새 conda 환경을 만든다. conda create --name tf python=3.9 가상 환경 활성화에서 에러가 발생한다면 PowerShell 실행 정책을 변경해야 한다. CommandNotFoundError: Your shell has not been properly configured to use 'conda acti.. 2024. 2. 15.
스타일, 콘텐츠 및 변형 손실 계산하기 스타일, 콘텐츠 및 변형 손실 계산하기 행렬에 전치를 곱하여 그램 행렬을 계산한다. 손실 함수의 두 부분을 계산하기 위해 VGG 네트워크의 여러 컨볼루션 레이어에서 출력된 그램 행렬을 가져온다. 스타일과 원본 이미지와의 유사성을 모두 결정하기 위해 이미지 픽셀을 직접 비교하는 대신 VGG의 컨볼루션 레이어 출력을 비교한다. 손실 함수의 세 번째 부분에서는 서로 가까운 픽셀을 직접 비교한다. VGG 네트워크의 여러 다른 레벨에서 컨볼루션 출력을 가져오기 때문에 그램 행렬은 이러한 레이어를 결합하는 수단을 제공한다. VGG 컨볼루션 레이어의 그램 행렬은 이미지의 스타일을 나타낸다. 알고리즘이 생성할 때 원본 이미지, 스타일 참조 이미지, 최종 출력 이미지에 대해 이 스타일을 계산한다. def gram_mat.. 2024. 2. 14.
Transfer Learning for Keras Style Transfer Transfer Learning for Keras Style Transfer 스타일 전송 기술은 두 개의 이미지를 입력으로 받아 세 번째 이미지를 생성한다. 첫 번째 이미지는 변형하고자 하는 기본 이미지이다. 두 번째 이미지는 소스 이미지에 적용하려는 스타일을 나타낸다. 마지막으로 알고리즘은 스타일 이미지가 특징인 스타일을 에뮬레이트하는 세 번째 이미지를 렌더링다. 이 기술을 스타일 전송이라고 한다. 제시된 코드는 François Chollet이 만든 Keras 문서의 스타일 전송 예제를 기반으로 했다. base_image_path : 스타일을 적용할 이미지 style_reference_image_path : 스타일을 복사할 이미지 먼저, 스타일을 적용할 기본 이미지를 업로드다. import os fro.. 2024. 2. 14.
StyleGAN을 위한 이미지 전처리 StyleGAN을 위한 이미지 전처리 dlib를 사용하여 눈 위치를 기준으로 소스 이미지와 대상 이미지를 중앙에 배치하고 자른다. 이 작업을 수행하기 위해 두 개의 함수를 만든다. 첫 번째는 dlib를 호출하여 인물의 눈 위치를 찾는다. 두 번째 함수는 눈 위치를 사용해 이미지의 중심을 눈 주위로 맞춘다. 정확히 중앙에 맞추지 않고 원래 StyleGAN 훈련 세트와 비슷하게 중앙에서 약간 오프셋을 둔다. 이 오프셋은 생성된 StyleGAN 얼굴의 눈을 감지하여 결정다. 눈 사이의 거리를 통해 얼굴이 얼마나 큰지 알 수 있으며, 이를 통해 이미지의 크기를 일관되게 조정할 수 있다. def find_eyes(img): gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) rects.. 2024. 2. 14.
Transfer Learning for Facial Points and GANs Transfer Learning for Facial Points and GANs 신경망을 사용하여 얼굴 특징, 특히 개인의 눈 위치를 감지하는 방법이 있다. 눈의 위치를 파악하면 인물 사진을 일관성 있게 자를 수 있다. GAN은 무작위 벡터를 사실적인 인물 사진으로 변환할 수 있다. 그 반대로 실제 사진을 숫자 벡터로 변환할 수도 있다. 두 이미지를 이러한 벡터로 변환하면 두 이미지 사이를 변환하는 비디오를 제작할 수 있다. NVIDIA는 눈이 항상 같은 위치에 있도록 일관되게 잘린 인물 사진을 대상으로 StyleGAN을 훈련했다. 이미지를 벡터로 성공적으로 변환하려면 NVIDIA가 크롭을 사용한 방식과 유사하게 이미지를 크롭해야 한다. 여기에 제시된 코드를 사용하면 시작 이미지와 끝 이미지를 선택하고 .. 2024. 2. 14.
728x90
반응형
LIST