본문 바로가기

분류 전체보기202

[python] loop문 말고 대세는? Vectorization?! 안녕하십니까. 오랜만에 글을 올립니다. 1. intro python에서 자주 사용되는 문법중 하나는 단언코 loop문일 것 입니다. 그런데 최근 이 loop문보다 효율적인 방법이 있다고 하여 정리해서 올려보자 합니다. loop문은 수많은 반복 (때에 따라서 수십만이상)을 할때 주로 사용할 수 있습니다. 그런데 loop문의 단점은 몇 시간동안 모든 반복을 마치고나서 결과가 잘못되었구나를 알아차리는 경우가 있습니다. 그렇기 때문에 loop를 일부 대체할 수 있는 Vectorization(백터화)의 소개는 중요하다고 생각이 듭니다. 2.백터화란? dataset에서 numpy에서 사용되는 array operation을 구현하는 기술입니다. for문보다는 모든 요소에 한번에 적용을 시킬 수가 있습니다. 2-1. .. 2024. 1. 2.
[Torch] RuntimeError DataLoader worker pids 15332 exited unexpectedly 에러가 나는 이유? 1. Introduction 딥러닝을 하다보면 다음과같은 에러가 발생할 때가 있다. RuntimeError : DataLoader worker pids * exited unexpectedly 구글에 찾아보면 dataloader에 num_workers = 0 으로 수정하면 된다는 포스팅이 보인다. 혹은 에러나는 부분의 구문을 삭제하라는등.. 이런 해결책이 보인다. dataloader에서 사용하고 있는 num_workers는 병렬로 처리해서 분석해주는 것이기 때문에 데이터가 클 때 빠르게 분석하고 싶다면 필수적으로 사용해야한다. 대신 무턱대로 숫자를 올리면 서버가 너무 느려지니 고려해야한다. 2. 이유가 뭔데? 에러의 이유는 다양하다. - 이것저것 많이 돌려서 메모리가 충분하지 않거나 - 데이터의 문제가 있.. 2023. 9. 26.
[ggplot2] barplot에서 갭 제거하기 (빈공간제거, 0부터 시작) 1. 서론 ggplot2를 이용하다가 가끔 원하는 그림이 나오지 않을때가 있습니다. 예를들어 barplot을 그리는데 있어서 자동으로 0 밑으로 마진이 생기는 경우가 그럴것입니다. 위 plot을 어떻게 해야 0 밑에를 제거하는지 그리고 좀더 나은 기능들이 무엇이 있는지 정리하고자 합니다. 2. 본론 일단 예시 데이터로 diamonds데이터를 이용하도록 하겠습니다. 아래와 같이 진행하게 되면 0 아래의 마진이 없어짐니다. ( y축도 동일하게 적용이 됩니다.) library(ggplot2) data(diamonds) ggplot(diamonds,aes(cut))+geom_bar()+ scale_y_continuous(limits = c(0,25000),expand=expansion(0,0)) # expand.. 2023. 5. 18.
[Pytorch] torch.hub.load를 사용 못하는 상황에서 로컬로 진행하기 일하는 곳이 병원이다 보니 시발 폐쇄망에서 서버를 돌리고 있습니다. 이게 단점이 외부에 접속해서 뭔가 다운이 안되는 단점이 있습니다. 우회로 로컬컴에서 다운받고 서버로 옮기는 것은 가능합니다. 이번에 SwinTransformer모델을 돌리게 되었는데, 제가 받은 코드에는 github에서 모델을 다운받아야 하는 코드였습니다. -> torch.hub.load 말입죠. 당연히 폐쇄망이기 때문에 다운이 안되어서 이런저런 방안을 찾다가 해결책을 찾아 포스팅합니다. 코드에서는 다음과 같이 사용하더군요. torch.hub.load('github의 모델','모델명',pretrained) 일단 SwinTransformer에서 모델을 사용하기 위해서 로컬컴퓨터에서 해당 github를 방문해줍니다. https://githu.. 2023. 4. 28.
[pytorch,smp] 모델 weights 경로 일하는 곳이 병원이다보니 민감한 데이터를 다루게 되고, 그에 따라 제한적으로 연구가 가능합니다. 너무 불편한점 중 하나가 분석하는 컴퓨터에 외부인터넷을 못하게 하는 단점이 있습니다. 그러다 보니 딥러닝 모델의 weights를 외부에서 따로 넣어줘야 하는데, 설명이 안 써져 있어서 많이 찾아보았습니다. 휴우... 결과는 뭐냐.. torch와 segmentation_models_pytorch 이 두 module다 같은 경로에서 model weights를 가져오더군요.. 윈도우 기준 C:\Users\사용자이름\.cache\torch\hub\checkpoints 우분투 기준 /home/사용자이름/.cache/torch/hub/checkpoints/ 여기다가 모델들 weights를 넣어주면 됩니다. ( 인터넷이 .. 2023. 3. 14.
[QSI] 단백질 시퀀싱 어떻게 이루어질까? 1. Introduction 최근 제가 주목하고 있고, 실제 주식으로 보유하고 있는 다양한 회사들 중에서 제 나름대로 가장 기대가 큰 기업인 Quantum-SI에 대해서 이야기해보고자 합니다. https://mopipe.tistory.com/170 [QSI] Quantum SI(QSI)에 투자하는 이유 (with. Jonathan M Rothberg) 1. Quantum si의 플랫폼은 중요하다. 단백질 sequencing의 경우 유전체분석에가 가장 중요합니다. 단백질은 실제 phenotype에 연관을 줄 정도로 중요합니다. 그러나 과학자들이 연구를 할때에는 대부분 mR mopipe.tistory.com 이전에 포스팅했던 부분에서 QSI의 가장 중요한 기술들이 Recognizer, Aminopeptide.. 2023. 2. 20.