일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- genetic epidemiology
- parrec
- nfiti
- non-parametric model
- 데코레이터
- TeCNO
- 모수적 모델
- TabNet
- 파이썬
- 코드오류
- tabular
- nibabel
- MICCAI
- Phase recognition
- paper review
- decorater
- words encoding
- MRI
- deep learning #segmentation #sementic #pytorch #UNETR #transformer #UNET #3D #3D medical image
- 확산강조영상
- 유전역학
- 비모수적 모델
- precision #정밀도 #민감도 #sensitivity #특이도 #specifisity #F1 score #dice score #confusion matrix #recall #PR-AUC #ROC-AUC #PR curve #ROC curve #NPV #PPV
- parer review
- parametric model
- monai
- PYTHON
- nlp
- 확산텐서영상
- Surgical video analysis
- Today
- Total
목록전체 글 (54)
KimbgAI
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dlXX6i/btrNT9t903d/K0mfIPHAHmNgZsjBlnCJpk/img.png)
U-Net(2015.05); Convolutional Networks for Biomedical Image Segmentation 원문: https://arxiv.org/abs/1505.04597 본 리뷰는 Semantic Segmentation의 기술 동향을 살펴보며, 핵심 아이디어와 Contributions을 정리하고, 간단한 코드 구현을 통해 살펴보고자 한다. 아래 그림과 같이 architecture의 형태가 U자 모양을 하고 있어 U-Net이라고 네이밍되었다. U-Net은 FCN과 마찬가지로 skip architecture로 구성하여 feature map의 위치정보를 활용하였다는 점에서 FCN과 전반적인 구조는 크게 다르지 않기 때문에 architecture에 대한 내용은 그림으로 대체한다. 하지..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dhH4rJ/btrNTePPlCy/9DdIxsZsDlRfh4C6HhP36k/img.png)
FCN(2014.11); Fully Convolutional Networks for Semantic Segmentation 원문: https://arxiv.org/abs/1411.4038 본 리뷰는 Semantic Segmentation의 기술 동향을 살펴보며, 핵심 아이디어와 Contributions을 정리하고, 간단한 코드 구현을 통해 살펴보고자 한다. 주요 Contribution은 다음과 같다. 1. Fully convolutionalization - ILSVRC(Imagenet Large Scale Visual Recognition Challenge, 이하 이미지넷)에서 좋은 성적을 보였던 기존 CNN기반 모델(VGG)을 Backbone으로 구성하여 목적에 맞게 변형시켰다. - 이 과정에서 기존 ..
tensorflow를 주로 사용하다가 요즘 pytorch를 사용하려다보니 기본적인 것에서부터 정리가 필요하다고 느껴 남겨놓는다. pytorch에서 제공해주는 CrossEntorpyLoss function에는 softmax가 기본적으로 결합되어있기 때문에 model의 logit에 softmax를 따로 설정해주지 않아도 된다. 즉, torch.nn.CrossEntropyLoss() 은 torch.nn.LogSoftmax() 과 torch.nn.NLLLoss() 의 결합이다. 코드로 살펴보자 # CrossEntropyLoss 사용 (Class=3) import torch.nn as nn import torch from torch.nn import functional as F criterion = nn.Cros..
scp란? SCP (Secure Copy Protocol) 는 네트워크를 이용하여 리눅스(유닉스) 시스템간의 안전하게 파일/폴더를 복사하는 네트워크 프로토콜 입니다. SCP는 SSH (Secure Shell) 연결을 통해 데이터가 복사되는 동안 파일과 패스워드를 암호화하여 보호합니다. 그러므로 중간에 트래픽이 중단되더라도, 정보는 여전히 암호화된 상태입니다. 사용법 (local에서 remote로 발신) 1. 단일 파일인 경우 scp () @: scp myfile1.txt root@192.168.000.000:/mypath 2. 여러개의 파일인 경우 scp () @: scp myfile1.txt myfile2.txt root@192.168.000.000:/mypath 3. 폴더인 경우 scp -r @: s..
틀림과 다름을 구분하는 고견을 환영하며, 다양한 생각을 존중합니다. :) AI와 로봇의 발전은 인류에게 다양한 형태로 보여지는 것 같다. 누군가에겐 인류의 삶이 좀더 윤택해질거라는 기대로, 누군가에겐 일자리를 잃을지 모르고, 때로는 인류 자체에 위협이 되는 두려움으로 다가오는 것 같다. 하지만 대개 이러한 두려움을 무지에서 비롯된다고 생각한다. 낮보다는 밤에 무서움을 느끼는 것처럼, 아무것도 보이지 않는 어두운 동굴에 쉽사리 들어가기 어려운 것처럼, 어떤 대상을 잘 알지 못하는 상태에서는 당연하게 우리는 어느 정도의 두려움을 가지고 경계를 한다. 페이스북에서 개발한 챗봇들이 서로 대화하던 중에 이상하고 반복적인 패턴의 알 수 없는 말을 하는 것을 보고, 그것들이 인간들을 말살시킬 어떤 계획을 꾸미고 있다..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/brMhRn/btrNdUM9c7j/1TvGwrATPONEgvloYmx2SK/img.png)
Segmentation task를 진행하던 중에 전처리 과정에서 디버깅 이슈가 있어 남기고자 한다. 문제는 resize하면서 dtype 뿐만 아니라 실제 value도 달라진다는 것! 별일은 아니고, label의 dtype이 int일때 resize을 하게되면 float형태로 변형되는 경우가 있어, 한번더 int로 바꿔주는 과정이 필요하다는 것이다. 발생 원인은 resize하면서 interpolation될때 smooth 과정 중에 float으로 변화되는 것 같다. 코드로 살펴보자 확인해보면 Annotation은 0, 1, 2의 값으로 잘 나타나있다. 아래는 resize한 결과이다. annotation의 unique 값을 보면 상당히 다채롭게(?) 되어있다 ㅎㅎ;; 해결방법은.. 아래와 같이 한줄 추가해주면 ..
가끔 외부에서 이미지 데이터를 받아서 폴더를 열어보면 이미지와 관련이 없어보이는 Thumbs.db 파일이 존재했다. glob 명령어로 해당 폴더에 모든 파일목록을 가져온다고 하면 쓸데없는 파일이 섞여들어오기 때문에 곤란한 일이 발생할 수 있다. 왜 존재하는지를 알고나니 마냥 귀찮은 정크파일에서 귀찮은 파일로 받아드릴수 있어 나름대로 성과(?)가 있었다. 이 파일은 이미지 미리보기를 위한 파일이다. 윈도우에서 폴더 내의 이미지 파일들을 작은 이미지로 따로 만들어놓고 미리보기를 위해서 썸네일처럼 만들어 저장해놓은 파일이다. 큰 원본 이미지를 작은 이미지 형식으로 만들어 속도 향상을 위한 기능이라고 한다. 그러고보니 썸네일(Thumbnail)의 Thumb이며 견본, 손톱 등의 의미를 담고 있다.
$conda env list -> 가상환경 목록 $conda env remove -n -> 가상환경 삭제 $conda remove -n -> 가상환경에서 특정 패키지 삭제 $conda list --explicit > -> 현재 활성화된 가상환경에 설치된 패키지 내보내기 $conda create -n python=3.7 -> python version 3.7로 설치하여 가상환경 생성 $conda create -n --clone -> 가상환경 복제하여 가상환경 생성 $conda create -n --file -> 가상환경을 새로 만들면서 requirement.txt 목록의 패키지 설치 $conda install $conda install -c conda-forge -> conda-forge 채널을 이용해서 ..
리눅스에는 다양한 압축방법이 있지만 자주 사용하는 명령어를 정리해보았다. [tar, zip] 사용 - tar는 말만 압축이지 용량이 줄어들진 않는다. 파일들을 단순히 하나로 그룹핑해주는거라.. - 반면, tar.gz는 압축되어 용량이 줄어든다. - zip은 용량압축이 가능하며, linux에서는 설치가 안된 상태일 수 있어 $apt install zip 으로 설치 가능하다. (압축하기) $tar -cvf $tar -zcvf $zip -r (압축풀기) $tar -xvf $tar -zxvf $unzip (옵션 설명) -c : 파일을 묶겠다 -v : 과정을 보여달라 -f : 대상이 되는 파일명을 명시하겠다. -z : gz(gzip) 형태를 사용하겠다.
본 내용은 내가 자주 사용하는 screen 명령어를 정리한 것. 보통 putty를 통해서 서버에 접근하는데, screen을 몰랐을때는 putty로 여러번 터미널을 열었던 기억이 있다. screen은 하나의 터미널을 여러 개의 가상 터미널로 다중화해주는 도구다. 터미널에서 해당 프로세스를 백그라운드로 작업하기 위해서는 Crtl+z 를 사용하지만, 작업을 모니터링하기 위해서는 번거로운 점이 있다. 하지만 screen을 사용하면 새로운 가상 터미널을 열면 그만이기 때문에 편리한 점이 많다. [screen 명령어] $screen -list : 스크린 세션 목록 확인 $sreen -S {MySession} : 세션에 이름을 지정하여 실행 $sreen -r {MySession} : Detached된 세션 재진입 $..
터미널 내에서는 운영체제 변수(환경변수)와 쉘 변수가 있다. 운영체제 변수는 nano, sudo 등과 같은 기본적으로 운영체제 위에서 작동하는 것이고, 쉘 변수는 사용자가 만드는 임의의 변수이다. $export 명령어를 통해 쉘 변수를 환경변수로 등록할 수 있고, $env 를 통해 등록된 환경변수를 확인할 수 있다. 하지만 터미널이 종료되면 환경변수는 사라지게 되기 때문에, 매번 자동으로 환경변수를 등록하고 싶다면, .bashrc 파일에 변수를 저장하면 된다. .bashrc는 보통 홈(~/) 경로에 있다. $nano ~/.bashrc 에서 아래와 같이 환경변수를 추가할 수 있다. export TORCH_CUDA_ARCH_LIST=8.6 (pytorch와 호환이 되는 CUDA의 compute capabil..
$pip install 했지만, import가 되지 않아 다시 $pip install 했지만 "package already installed" 라고 뜰때. 나같은 경우는 venv(가상환경)에서 이와같은 현상이 발생함. python -m pip install 하면 해당 venv에 설치가 된다. 발생하는 원인과 이유는 잘 모르겠만, pip 명령어의 install path에 문제가 있는 것으로 짐작됨..
1. 서버에서 $pip install kaggle 2. $kaggle competitions list 로 kaggle 명령어 입력 잘 되는지 확인 3. 캐글 홈페이지의 자신의 계정 account에서 'Create New API Token'을 받는다. - kaggle.json으로 되어있음 4. kaggle.json 파일을 ~/.kaggle 폴더에 넣어준다 - 없을수도 있어서 %mkdir ~/.kaggle 해서 만들어주면 됨 5. 캐글에서 해당 데이터셋의 "Copy API Download" 를 복사해서 원하는 폴더에서 붙여넣기 * 만약 다운로드가 되지 않는다면 해당 Competition 참여를 해야 다운로드가 가능한 경우도 있음