# 마우스 효과 팅커벨
본문 바로가기 메뉴 바로가기

벼랑끝 바이오 매드 컴퓨터 사이언티스트

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

벼랑끝 바이오 매드 컴퓨터 사이언티스트

검색하기 폼
  • 분류 전체보기 (165)
    • Background (63)
      • Biology (8)
      • Math (42)
      • Statistics (8)
      • English (5)
    • Computer (76)
      • 백준 풀이 (7)
      • 이게 왜 안되지? (26)
      • 코딩 개꿀팁 (28)
      • 3B1B 따라잡기 with ManimLibrary (15)
    • Paper (6)
      • Bioinformatics (2)
      • CS (4)
    • Daily (18)
      • review (6)
      • etc (12)
  • 방명록

Computer (76)
[이왜안?] ImportError: cannot import name 'LRScheduler' from 'torch.optim.lr_scheduler'

[원인]torch 버전과 torch를 이용한 training을 최적화해주는 lightening 라이브러리 사이의 업데이트 사이에서 변경점이 서로 충돌하는 것이 원인이라고 생각된다. torch의 lr_scheduler.py파일은 버전에 따라서 class 이름이 LRScheduler인 것도 있지만 _LRScheduler로 언더바가 붙은 버전도 배포된 것으로 생각된다. [해결법].conda/envs/{ENV_NAME}/lib/python3.8/site-packages/lightning_fabric/utilities/types.py로 들어가서 lightening의 LRScheduler import 코드에 언더바를 붙여서 저장해주면 된다.

Computer/이게 왜 안되지? 2025. 8. 7. 19:18
[이왜안?] DiffAb 코드구현 에러발생 ValueError: invalid literal for int() with base 10: 'X'

https://github.com/luost26/diffab/issues/21#issuecomment-2350808489 在运行sabdab.py代码,发生报错 · Issue #21 · luost26/diffab在运行sabdab.py代码,发生报错,请问该如何解决呀 第一个错误:报ValueError: invalid literal for int() with base 10: 'V'异常, 第二个错误如图,请教这两个问题都是怎么合理解决的呀github.comDiffAb 학습을 위해서 train 코드를 돌려보았는데 전처리과정에서 다음과 같은 에러가 나온다.File "train.py", line 55, in train_dataset = get_dataset(config.dataset.train) File "/data..

Computer/이게 왜 안되지? 2025. 8. 5. 18:52
torch tensor 출력 갯수 늘리기 torch.set_printoptions

torch의 tensor를 사용하다보면 종종 출력이 대부분 ...으로 생략되어 내부의 값 확인이 어려운 경우가 있다.이럴때는 torch.set_printoptions()함수를 사용하면 된다.torch.set_printoptions(threshold=1000, edgeitems=10, linewidth=150)1. threshold은 default값은 1000이다. 이 값을 늘리면 텐서에 표시해야 할 값들이 threshold개수보다 많아질 경우에만 ... 형태의 생략을 표시하도록 한다. 10000정도를 줘버리면 아마 모든 텐서가 표시될 공산이 크다. 그러나 모든 텐서가 또 전부 표현되면 생략된것만 못한수준의 가독성 떨어지는 텐서가 될 가능성도 높으니 알아서 경험적으로 조절해서 사용하면 된다.2. edgei..

Computer/코딩 개꿀팁 2025. 7. 6. 22:22
벡터의 norm을 구하는 torch.linalg.norm

torch.linalg.norm함수는 N차원의 벡터의 norm값을 구하는 함수다.다음과 같이 사용한다. torch.linalg.norm(input, ord=2, dim, keepdim)v = torch.tensor([ [[3.0, 4.0, 5.0], [1.0, 2.0, 4.0]], [[0.0, 5.0, 5.0], [6.0, 8.0, 5.0]], [[5.0, 3.0, 9.0], [2.0, 1.0, 1.0]]]) # shape = (3, 2, 3) [BS, L, D]#### dim=0 (BS) ####print(torch.linalg.norm(v, ord=2, dim=0, keepdim=True))# tensor([[[ 5.8310, 7.0711, 11.4455..

Computer/코딩 개꿀팁 2025. 6. 27. 23:32
nvidia-smi에 쌓여있는 python 프로세스 한번에 처리하기

너 쌓여있잖아https://cryptosalamander.tistory.com/186 [Python / Linux] GPU 메모리 비우기, 프로세스 전부 종료하기GPU 메모리 비우기, 프로세스 전부 종료하기 pytorch나 tensorflow와 같은 인공지능 프레임워크를 사용하다보면, 중간에 예기치 않게 프로그램이 종료될 때가 있는데, 이 때 문제점이 data_loader의 num_worcryptosalamander.tistory.com본 포스팅은 해당 블로그의 글을 200% 참고하였습니다.그냥 내가 다시 구글링할 키워드 찾기가 어려울 것 같아서 코드 복붙합니다. Respect합니다.우선 프로세스가 쌓여있는 GPU Number를 확인해준다.주의) 다음 코드를 입력시 해당 GPU에 올라간 모든 python..

Computer/코딩 개꿀팁 2025. 6. 26. 22:49
nn.Module의 self.register_buffer에 대해 알아보자

종종 nn.Module을 상속한 class의 __init__에서 self.register_buffer라는 코드를 마주하게 되는데 몇번 공부하긴 했다만 매번 까먹어서 정리한다. self.register_buffer(name, tensor)self.register_buffer는 학습은 하지 않지만, 모델과 함께 저장/불러오기되는 텐서를 등록하는 코드이다.register_buffer에 등록된 파라미터들은 모델의 역전파가 되는 과정에서 학습되지 않지만 모델을 저장할 때, 예를들어 state_dict등에는 등록된다. 또한 .to(device)등을 이용해 CPU나 CUDA로 옮기는 기능도 정상적으로 작동한다.예를들어 class init 내부에 다음과 같은 코드가 있다면class MyClass(nn.Module): ..

Computer/코딩 개꿀팁 2025. 6. 26. 12:12
왜 torch 연산시에는 2의 배수를 사용할까?

코드를 공부하는데 다음과 같은 이해할 수 없는 코드가 있었다.if self.eight: max_length = math.ceil(max_length / 8) * 8이게뭐람? max length 를 8로 나누고 올림한 다음 다시 8을 곱해라? 뭐.. 뜬금없이 왜하는건지 모를 코드였는데 찾아보니 GPU연산 효율을 위해 8의 배수가 되도록 max_length를 맞추는 코드라고 한다.GPU 연산에 사용되는 CUDA는 8, 16, 32처럼 2의 배수로 align된 데이터에 대해서 연산 효율이 훨씬 좋다고 한다.특히 transform block이나 CNN에 대해서는 padding을 통해서 길이를 맞춰줄 경우 효율이 극대화 된다고 한다.그런 이유로 지금까지 MLP등의 모델에서 128, 256, 512등의 2의..

Computer/코딩 개꿀팁 2025. 6. 24. 19:57
torch DataLoader의 collate_fn에 대해 알아보자

약간 고급 코드로 들어가기 시작하면 DataLoader를 그냥 사용하는 경우가 드물어진다.보통은 DataLoader의 collate_fn이라는 메서드를 본인들의 데이터세트에 맞춰 직접 구현해서 사용하는 경우가 많아지는데 collate_fn을 지금까지 딱히 주의깊게 본 적은 없었다.나도 이제 슬슬 내 데이터를 직접 구현해서 추가하려고 하기 때문에 collate_fn의 동작 방식과 왜 사용하는지를 알고 있어야 할 것 같아서 정리해본다.DataLoader( train_dataset, batch_size=config.train.batch_size, collate_fn=PaddingCollate(), shuffle=True, num_workers..

Computer/코딩 개꿀팁 2025. 6. 24. 18:33
inf_iterator는 왜 쓰는걸까?

가끔보면 다음처럼 torch의 DataLoader를 inf_iterator라는 함수를 따로 만들어서 태우는 경우가 있다.def inf_iterator(iterable): iterator = iterable.__iter__() while True: try: yield iterator.__next__() except StopIteration: iterator = iterable.__iter__()train_iterator = inf_iterator(DataLoader( train_dataset, batch_size=config.train.batch_size, collate_fn=PaddingC..

Computer/코딩 개꿀팁 2025. 6. 24. 16:32
[이왜안] EOFError: EOF when reading a line

PyTorch의 DataLoader는 num_workers > 0일 때,데이터 로딩을 별도의 subprocess(자식 프로세스) 로 실행하는데그런데 그 subprocess에서는 input() 같은 interactivity가 불가능함DataLoader의 num_wokrers 옵션을 0이 아닌 값을 주고 data class의 내부에 input() 함수를 사용했다면 EOFError: EOF when reading a line에러를 보게된다. 해결은 간단하다 DataLoader 코드에 num_workers 옵션을 0을 주면 된다.

Computer/이게 왜 안되지? 2025. 6. 23. 13:54
이전 1 2 3 4 ··· 8 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • 벼랑끝 깃허브
  • 벼랑끝 강아지
TAG
  • eigenvector
  • kl divergence
  • 이왜안
  • elementry matrix
  • eigenvalue
  • 오일석기계학습
  • dataloader
  • 3B1B따라잡기
  • MorganCircularfingerprint
  • 나노바디
  • ai신약개발
  • 논문리뷰
  • 인공지능
  • 최대우도추정
  • 백준
  • MatrixAlgebra
  • 선형대수
  • marginal likelihood
  • 파이썬
  • MLE
  • manimtutorial
  • 3b1b
  • 베이즈정리
  • Matrix algebra
  • manim library
  • variational autoencoder
  • manim
  • Manimlibrary
  • 기계학습
  • nanobody
more
«   2025/08   »
일 월 화 수 목 금 토
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 29 30
31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바