DS가 되기 위한 여정 👩‍💻
728x90
반응형

Projects 26

[몽고 연동 에러] 챗봇 연동.. 일주일 째임, 로직 재점검

?? 왜 연동이 끊길까 ?? 디버깅 찍어보면,몽고 컴파스 - 몽고 쉘 데이터 삽입 ok파이참 - 몽고 연동 ok- 뷰 ok- .......... chabot_core.py=> 얘가 save가 안되는 것 같은데 에러가 안 찍히니깐 원인을 못 찾겠음. ......코드가 어쩔 수 없이 컬렉션 3개 동시 연동에 [chat_history, chat_files, complaints]+ 카카오 위치 정보 넣고 => 무조건 받게 되어 있고+ 쓰레기통 위치 => 이거 그냥 연동 해야 할 듯 복잡해서 그런 거 같은데코드 수정이 너무 많았고 .. 하계속 수정을 미루고 있어서 이거 빨리 해야 해 얼른 끝내고 대시보드도 해야함. ==> 일단 추정상 위치를 못 받을 때 fe에서 끊어 버려서 그런 가 싶기도 하고지금 서울이 아니..

[팀원 축소] 노력하기 싫음 vs 나가기 왜 양자택일로 사는 것임

...........2달을 주제를 찾았고지난달에 해커톤도 신청하고본격적으로 프로젝트 들어간지 일주일만에 나가는게 도저히이해가 안 간다. .........작년 부트캠프 때부터 못 따라오는 분인 것은 알았지만,모두들 그렇게 발전해 간다. 나랑 첫 과제 팀원이었고, 다들 그만두거나 포기해서유일하기에 끝나고도 계속 스터디 하고 이번 프로젝트도 같이 하자고 했는데..... 그렇게 됐다. 작년 빌런들과 비교도 못할 정도로상냥하게 해주었건만결과를 가져오던가 같이 하기 어려울 거 같다는 말에 결국 나간다고 팀원들에게 공지도 없이 톡부터 나갔다. 팀장으로서 매번 이러니 열이 받다못해....팀원들에게 문제가 있냐고 물었으나, 본인들은 좋다고 하셔서 그냥 냅두기로 했다. 사실 전공상이상한 사람을 빠르게 탐지하고 분석하..

[trouble_shooting] 임베디드를 위한 경량화.. 작업 중

코멘토는 끝났지만,디벨롭 방향을 고민하다가 cctv 차량 객체 탐지를 위한 모델인데 임베디드를 위한 작업은 해본 적이 없어서 gpt의 추천과 함께 시도를 했다. 문제 1) 처음에는 GPT의 추천으로 동적 양자화를 시도했으나,계속 '모델'을 찾을 수 없다는 에러가 떴다. 모델 생성mport sysimport torch# yolov5의 경로를 sys.path에 추가sys.path.append('/Users/tasha/Desktop/comento/mywork/models/yolov5/yolov5/') # yolov5 디렉토리 경로# YOLOv5 모델 로드from models.experimental import attempt_load # YOLOv5 모델 로드 함수# 1. 학습한 모델 로드 (가중치 파일..

[trouble_shooting] streamlit에서 bbox 시각화 에러

++ 코멘토가 끝난지 벌써 2주일이 흘렀는데 프리랜서 일이 갑자기 들어와서 제대로 정리를 못했다. 마지막으로 주신 피드백이 streamlit에서 신뢰도 글씨가 코드에 font를 수정해도 커지지 않던 이유가 1. openCV가 아니라서 폰트의 크기가 제한이 걸릴 수 있을 것 같다고 하셨다. 그래서 그것을 사용해 보던가. 2. base64로 바꾸면 좋을 것 같다셨음.-> 분명히 잘 돌아가던 코드를 받았는데도 내 컴퓨터에서는 실시가 되지 않음... 문제) 이게 이전에도 계속 에러가 떴었는데 streamlit이 버전 문제로 (use_container_widtr=True)를 쓸 수 없다는 것이었다................아오.. 트러블 슈팅) GPT가 설명해주는 원인 요소는 3개였음. 1. ..

[trouble_shooting] tmux 사용을 위한 torch의 전역 설치가 계속 에러남.

.... ㅜㅜㅜ - 마지막 발표를 위해서 tmux를 돌리려고 하는데.. 안된다ㅜㅜ- 아니 분명히 3일 전에 됐는데.. 또 안 된다... 문제 - 그때는 캡처를 못 했는데 .. 명백하게 반복적으로 torch 에러가 뜬다   trouble shooting- 설치 리스트 확인하면 이미 설치되어 있음... - pip list | grep torch - 혹시나 싶어 재설치도 해보았으나..torch 버전은 저게 맞는데.. - 컴퓨터와 jupyter lab도 재실행했는 데 아직도 해결이 안 된다..   ......??? 분명히 됐었는데.. 데체 뭐가 어찌 되고 있는 걸까?? - 멘토님께도 여쭤봤는데 명확한 해결책이 없어서... 일단.. 보면서 계속 시도해봐야 겠다 ㅠㅠㅠ  ++ 해결되면 추가로 남겨야 겠다 ㅠ

[trouble_shooting] 모델의 버전만 다르더라도 가상환경을 새로 생성할 것.

- 지난 라이브 세션 때도 멘토님이 모델의 버전만 달라져도 가상환경을 새로 생성하는 게 좋다고 하시긴 했는데 그냥 넘겼었다.- ... ㅎ 안일하게 살지 말자 우리.. ^^ 문제 - 어후.. 이게 fastapi만들고, tmux로 무중단 시도하니깐 전역으로 다시 설치해야 했는데자꾸 hub.py가 없다고 에러가 떴었다..- ..? 아니 있는데?- 왜 못잡지 ? 하면서, 반복적으로 폴더에 들어갔다가 나왔다가 하면서 확인하고 또 확인했다.  - 이 에러가 뜨다가 잡으면, 파이썬의 경로를 찾을 수 없다는 에러가 떴었다.- 이 부분은 캡처를 못했는데 2개가 계속 반복되었고, 지피티는 경로를 계속 확인하라고 했었는데.. 경로는 문제가 없었다니깐...ㅎ 해결- 처음에는 파이썬을 재설치 해야 하나? 생각했었다.. 자꾸 버..

[2주차 라이브세션 후기] 학습모델, 코드 등 다양하게 멘토링 해주심

다른 일이 있어서 지금 쓰고 있는데튜닝한 부분이랑 모델간 비교한 부분 코드도 리뷰해 주시고놓쳤던 지표들도 확인해 주셨다.  [train & val]- 버전 8, 11 에서 wandb의 결과값들이 계속 나타나지 않던 것은 ' tracker = wandb' 설정을 모델에 넣지 않아서 였음. - 이걸로 실시간으로 보면 되고, 만약에 계속 안 뜨면 그냥 결과값만 봐도 된다고 해주심.  - patience를 쓰려면 그냥 에폭 값을 높여도 알아서 멈춰주니깐 상관 없다는 것이랑- 학습률을 이번에는 고려하지 않았는 데 그것도 확인해볼 것 - seed=SEED 를 해야 시드 값이 고정됨 - 로스: 학습로스가 내려가는  밸리데이션 로스가 올라가면 과적합이라고 판단함.   - 로스가 증가되기 시작한 부분에서 멈춰야 함.  ..

[trouble_shooting] yolov5랑 8, 11은 wandb 결과 값이 다름. 굳이 같게 x

- 어제 계속 학습을 돌리고 또 돌리고.. 또 돌리고.. ... 1. wandb..... 결과가 5버전이랑 8,11 버전이 다름  - ^^ 그냥 yolo 5버전이 다른 만큼 결과도 다름..- 같게 뽑아보려고 했으나,,, 그냥 로스율을 train과 val 버전 별로 수집을 따로 하지 않고 전체로 함. - 5버전은 자세하게 나왔는데 내 것은 안 됐음. - 업그레이드도 해봤으나... 8, 11 버전은 안 됐음. # 울트라틱스 임포트 업그레이드#!pip install ultralytics --upgrade- 5버전은 간단히 그래프로 볼 수도 있었음. - 8, 11 버전은 이 정도로만 나왔음.  - 결과 값에서 위 처럼 해보려고 했는데.. 자세하게 안 나와서.. 포기했음. 그래도 필요한 정보들은 다 나오고, 이건..

[모델 학습] batch와 epoch // 맥북 에어 m1도 GPU 사용 가능!!

- 학습이 너무 느려서 멘토님께 여쭤봤다가 GPU 써보셨냐고 해서 안되는 줄 알았다니깐 가능하대서 바로 써봄. # 주피터에서 pytorch 설치 !pip install torch torchvision torchaudio # pytorch 버전 확인 필요!! PyTorch 1.12 이상 버전에서 M1의 GPU를 활용import torchprint(torch.__version__) # PyTorch 버전 확인# MPS는 M1 GPU에서 Metal API를 사용하는 PyTorch 백엔드입니다.print(torch.backends.mps.is_available()) # M1 GPU(Metal)가 사용 가능한지 확인# True 나와야 함#torch는 gpu를 기본값으로 쓰도록 설정 -> 이거 안하면 CPU가 ..

[학습 데이터 셋 분리] replace() 보다는 os.path.splitext()

- 데이터 셋을 분리하는 코드에 멘토님이 코드 리뷰를 해주셨는데, 현재는 확장자가 png 하나이지만, 나중에는 어떻게 될 지 모르기 때문에replace()로 단순히 대치 하는 것보다 다른 방법을 추천해 주셨다.  - 학습할 데이터 셋을 나누는 과정에서, 라벨 리스트를 따로 추출함. -> train 폴더에 있기 때문에 그냥 같은 제목으로 나눠도 되지만,    정확하게  각 img에 대응되는 txt인지 확인 하기 위해서 이 과정을 거침. => 이 부분이 사실 좀 이해가 안 갔었음. 어차피 퍼센트로 나눌 건데? 이런 느낌이었는데      이미지와 라벨 파일을 서로 연경하는 과정을 정확하게 트랙킹하기 위함이었다고 해서 이해가 감.  수정 전 all_labels = [img.replace(".png", ".txt..

728x90
반응형