Machine Learning

Deep Learning 서버 구축을 처음하다보니 Ubuntu 포맷만 10번 정도 한 것 같다...겨우겨우 구축을 완료하였고 다음에 혹시라도 하나하나 다 찾아보는 삽질을 안하기 위해 해당 글을 포스팅하기로 마음먹었다😭 ⚠️Version 호환성 확인 nvidia Driver, CUDA, cuDNN 버전 호환성 확인이 서버 구축을 하며 가장 중요한 부분이라고 생각한다. 해당 부분을 정확히 인지하지 않고 설치하면 GPU가 정상적으로 인식되지 않거나 DL 코드 실행 중 DNN library is not found(버전 호환성 에러)에러가 발생하지 않는다. 이번에 설치한 Ubuntu 환경 및 각 파일들의 버전은 아래와 같다. 우선, 사용하고자 하는 Tensorflow의 버전과 호환되는 CUDA, cuDNN 버전을..
최근, 연구실 내 세미나 준비 및 대외활동 프로젝트 진행으로 인해 Paper Review 및 악성코드 관련되어 포스팅을 거의 하지 못하였다.😭 지난 포스팅(Paper Review: Feature Selection For Malware Detection Based on Reinforce ment Learning)에 이어 2번째 Paper Review이지만, 앞으로는 이때까지 포스팅하지 못한 논문들과 악성코드(최근 동향 및 분석?)와 관련된 내용으로 포스팅하고자 한다. 이번에 분석한 논문은 Dynamic Prototype Network Based on Sample Adaptation For Few-Shot Malware Detection이며 2023년 5월 IEEE Transactions on Knowled..
1. Multi-Task Learning란? 일반적인 Machine Learning(ML) 및 Deep Learning(DL)은 1개의 모델에서 1개의 Task를 수행하는 Single Task Learning 방식으로 동작한다. 하지만, 기존의 ML 및 DL과는 다르게 Multi-Task Learning(이하 MTL)은 서로 연관성이 존재하는 Task를 동시에 학습하여 모든 Task의 성능을 전박적으로 향상시키고자 하는 학습 패러다임이다. Figure 1을 통해 일반적인 Single Task Learning(이하 STL)모델과 MTL의 차이를 보자. STL의 경우 각 Task마다 각각의 Training Data 및 Trained Mode가 존재하는 것을 볼 수 있다. 반면, MTL의 경우 1개의 모델에서..
1. Autoencoder 란? Autoencoder(오토인코더)는 대표적인 비지도 학습 중 하나로 Input Layer, Hidden Layer, Output Layer로 구성되어 있으며, Encoder과 Decoder 과정으로 나뉘어진다. Encoder 과정은 Input Layer에서 Hidden Layer로 이어지는 구간에서 데이터 압축이 이루어지는 구간을 의미하고 Decoder 과정은 Hidden Layer에서 Output Layer로 이어지는 구간에서 데이터 복원이 이루어지는 구간을 의미한다. 이때 Encoder 과정에서 추출한 의미있는 데이터(정보)를 Z로 표시하며 Latent Vector, Latent Variable, Feature 등 다양한 단어로 불린다. 구체적인 동작 과정은 다음과 같..