본문 바로가기

유용 노트

(5)
[python] 정규식 정리 (re) - 스크랩 라이브러리 불러오기 import re 메타문자 [ ] 문자클래스 [ ] 사이의 문자들과 매치 - [From - To] ex) [a-zA-Z] = 알파벳 모두 [0-9] = 모든 숫자 \d 숫자 = [0-9] \D 숫자가 아닌 것 = [^0-9] \s 공백 = [ \n\t\r\f\v] \S 공백이 아닌 것 = [^ \n\t\r\f\v] \w 문자+숫자+_ = [a-zA-Z0-9_] \W 문자+숫자+_가 아닌 것 =[^a-zA-Z0-9_] \ 이스케이프 \와 함께 사용하면 일반 문자로 인식된다. . \n를 제외한 모든 문자 . = 모든 문자 [.] []안에 .을 넣을 경우 그냥 '.'으로 인식 [.] = 온점. | or ^ [] 바깥에 있을 경우 문자열의 시작과 매치 re.MULTILINE과 함께 쓰인다면 ..
[python] 헷갈리는 list comprehension, 자주 실수하는 dict 코딩테스트 문제를 풀다보면 list comprehension 문을 자주 사용하는데 조건문과 섞어 쓰다보면 오류가 날 때가 있다. if문만 쓸 때와 if, else 구문 쓸 때 오는 위치가 달라진다. 또 dict 다룰 때 내가 자주 실수하는 것 정리 ! 코드로 알아보자. 첫 번째 : dict 할 때 실수 id_list = ["muzi", "frodo", "apeach", "neo"] # dict.fromkeys로 dict를 만들 때 d_num = dict.fromkeys(id_list, 0) d_list = dict.fromkeys(id_list, []) d_num['muzi'] += 1 # {'muzi': 1, 'frodo': 0, 'apeach': 0, 'neo': 0} d_list['muzi'].ap..
[python] yield yield 명령어 제너레이터를 만드는데 사용 제너레이터는 여러 개의 데이터를 미리 만들어 놓지 않고 필요할 때마다 즉석에서 하나씩 만들어낼 수 있는 객체 코드로 살펴보기 def return_abc(): return list("ABC") def yield_abc(): yield "A" yield "B" yield "C" for s in return_abc(): print(s, end=' ') # A B C 출력 for s in yield_abc(): print(s, end=' ') # A B C 출력 # 같아 보이지만 yield_abc()는 제너레이터 반환 print(return_abc()) # ['A', 'B', 'C'] print(yield_abc()) # 제너레이터 코드로 이해하기 import tim..
model.eval() 과 with torch.no_grad() 차이 pytorch에서 inferance나 valid를 할 때 model.eval() 과 with torch.no_grad(): 를 사용하는데 왜 둘다 하는걸까?? 같은 역할을 하지 않을까?? 라는 궁금증에 차이점을 알아보았습니다. with torch.no_grad(): with torch.no_grad() statement에 코드를 포함 시키면 pytorch는 autograd engine을 꺼버린다. 자동으로 gradient를 트래킹하지 않는다는 말 backpropagation을 안하므로 autograd engine을 끔으로서 메모리 사용량과 연산속도를 높인다. model.eval() model.eval()의 역할은 약간 다르다. 모델에서 train과 eval시에 다르게 동작하는 layer가 존재(ex. D..
Imbalanced data 다루기 Introduction 대회나 프로젝트를 진행하다보면 Imbalaced data 를 자주 직면하게 됩니다. 특정 class가 다른 데이터보다 현저히 적은 경우 그 class 학습이 잘 안되는 경우가 발생합니다. 얼마전에 object detection 대회에 참여하였는데 10가지 class 중 한 가지 class를 아예 캐치하지 못하는 경우가 있었는데요. 이런 경우 실험 할 수 있는 것들을 정리해보았습니다. 1. 적절한 evaluation metrics 사용 Precision/Specificity: how many selected instances are relevant Recall/Sensitivity: how many relevant instances are seleted. F1 score: harmo..