반응형

프로그래밍 175

CUDA 버전 변경법

https://tw0226.tistory.com/79 [CUDA] 윈도우 환경에서 CUDA 버전 변경 어떤 github의 딥러닝 코드는 tensorflow 1.14 버전을 썼는데, 1.14 버전은 CUDA 11버전이 호환되지 않아서 1. python 버전 변경 2. tensorflow 재설치 3. CUDA 버전 번경 (11 -> 10) 의 절차가 필요하였다. 나의 상황 tw0226.tistory.com 위 링크에 자세히 나와 있다. 간략히 정리하자면 1. 원하는 버전의 CUDA를 설치한다. 2. 고급 시스템 설정 -> 환경변수에서 CUDA_PATH를 이용하고자 하는 버전으로 변경하고, Path 내에서도 사용하고 싶은 버전을 상위로 올린다. 3. 설정이 완료되면 cmd 창으로 nvcc -V 명령어로 cud..

실행 프로그램의 PyTorch가 CUDA를 인식하는 것에 대해서(+ 설치법 링크)

얼마 전 PyTorch와 CUDA를 사용해서 GPU를 사용하는 프로그램을 실행파일로 만들어서 내 로컬 컴퓨터에서 실행에 성공하고 피시방 컴퓨터에서도 실행에 성공하였다. 하지만 이후 의문이 들었다. 내 컴퓨터야 cuda 설치가 끝났는데 피시방 컴퓨터에서는 cuda 설치를 한 적이 없다. 피시방 컴퓨터에서 nvcc 명령어도 먹히지 않았다. 실행 프로그램을 컴파일할 때 cuda도 같이 컴파일 된 건가 했는데 챗gpt에게 물어보니 그럴 일은 없다고 하고 관련된 내용도 찾지 못했다. 데이터 사이언스 톡방에 여쭤보니 nvcc만 설치되어 있지 않거나 nvcc가 cuda 경로를 인식하지 못하는 것이고, 해당 컴퓨터에 cuda는 정상적으로 설치된 상태였을 거라고 한다. 그 cuda를 실행파일의 코드가 제대로 접근해서 사..

쿠키, 세션, 캐시 구별하기

https://www.youtube.com/watch?v=OpoVuwxGRDI 세션은 사이트 이용자들의 중요 정보를 총괄하는 곳이다. 세션을 사용하는 사이트에 접속을 하면 서버에서는 사용자를 구분하기 위한 기한이 짧은 임시키 하나를 브라우저에 보내서 쿠키로 저장한다. A라는 사용자가 사이트를 돌아다닐 때 사용자의 중요한 정보들은 이 사이트의 서버의 메모리나 데이터베이스에 저장된다. 브라우저가 이 사이트의 페이지에 접속할 때마다 http 요청에 이 키를 실어서 전송하고, 서버는 그 키를 보고 얘가 A 사용자구나 하고 인식해서 A의 정보들을 가공해서 응답으로 보내준다. 네이버에 한번 로그인하면 다른 네이버 페이지를 돌아다닐 때마다 로그인할 필요가 없는 것은 쿠키와 세션의 조합으로 내 컴퓨터에서 네이버에 로그..

라이브러리와 프레임워크의 차이점

https://www.youtube.com/watch?v=t9ccIykXTCM 라이브러리와 프레임워크의 차이점에 대해서 좀 더 정확히 알고 싶어서 공부했다. 기존에는 라이브러리와 프레임워크의 차이는 그냥 라이브러리가 여러개 모인게 프레임워크다 정도로 모호하게만 알고 있었다. 이 영상에서는 더 명확한 기준을 제시한다. 어떠한 기능을 구현할 때 호출하는 주체가 누구냐에 따라서 달라진다는 것이다. 내가 어떠한 기능을 구현할 때 필요한 라이브러리를 호출한다. 프레임워크는 어떠한 기능을 구현하고 싶으면 사용자에게 어디에 코드를 넣어야 하는지 등 규칙을 알려준다. 라이브러리는 나도 써봐서 알지만 GUI를 제작하고 싶으면 사용자가 알아서 tkinter나 PyQt를 호출해서 사용하고, YOLOv8을 파인튜닝하고 싶으면..

pip freeze로 의존성 패키지들을 기록해 개발환경 복구할 수 있게 하기.

내 개발환경에서 개발하다가 다른 곳에서 개발해야할 때 의존성 패키지들을 제대로 설치해주지 않으면 프로젝트에 에러가 생긴다. 이때 프로젝트에 requirements.txt를 생성하고 해당 텍스트파일에 의존성 패키지들을 기록해두면 편하게 패키지들을 설치해 개발 환경을 복구할 수 있다. pip3 freeze > requirements.txt 프로젝트 폴더에서 requirements.txt를 생성하고 프로젝트 폴더의 터미널에서 해당 명령어를 입력하면 requirements.txt에 해당 프로젝트 실행에 필요한 의존성 패키지들이 기록된다. requirements.txt에 기록된 패키지들을 한번에 설치하려면 pip install -r requirements.txt 위 명령어를 입력하면 패키지들이 자동으로 설치된다...

ultralytics 패키지를 pyinstaller로 설치파일 만들 때 AttributeError: 'NoneType' object has no attribute 'encoding' 오류 발생, 해결

https://github.com/ultralytics/ultralytics/issues/7393 Error compiling python scripts to executable file · Issue #7393 · ultralytics/ultralytics Search before asking I have searched the YOLOv8 issues and found no similar bug report. YOLOv8 Component Other Bug I am having a problem when compiling python scripts (main.py) to executable. I tra... github.com ultralytics 패키지가 포함된 파일을 pyinstaller로 설치파..

If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0.

If this call came from a _pb2.py file, your generated code is out of date and must be regenerated with protoc >= 3.19.0. If you cannot immediately regenerate your protos, some other possible workarounds are: 1. Downgrade the protobuf package to 3.20.x or lower. 2. Set PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (but this will use pure-Python parsing and will be much slower). More information: ..

pyinstaller 사용법 공부

출처: https://www.youtube.com/watch?v=Es1fQqqxIFQ 사용을 위해서는 일단 pip3 install pyinstaller 로 해당 패키지를 설치해야한다. 패키지 실행은 터미널에 명령어를 입력해서 수행한다. 기본 사용법 pyinstaller ./practice.py 프로젝트 폴더의 practice.py를 exe 파일로 생성한다. 생성된 exe파일은 프로젝트 내에 생성된 dist 폴더 안에 존재한다. exe 파일은 터미널 상에서 수행된다. 하나의 파일로 생성하기 pyinstaller -F ./practice.py -F(대문자) 옵션을 넣으면 하나의 실행파일로 생성한다. GUI 사용하기 pyinstaller -w ./practice.py -w(소문자) 옵션을 넣으면 창 모드로 실..

yaml 파일 수정의 두가지 방법

import yaml # 아래는 Roboflow에서 생성한 데이터셋의 yaml 파일의 예시이다. # names: # - car # - large_bus # - large_truck # - medium_truck # - small_bus # - small_truck # nc: 6 # roboflow: # license: BY-NC-SA 4.0 # project: car_bus_truck_detection_2 # url: https://universe.roboflow.com/cardetection2/car_bus_truck_detection_2/dataset/3 # version: 3 # workspace: cardetection2 # test: ../test/images # train: car_bus_tr..

error: OpenCV(4.8.0) D:\a\opencv-python\opencv-python\opencv\modules\highgui\src\window.cpp:1255: error: (-2:Unspecified error) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian,..

잘 되던 opencv-python이 갑자기 오류가 생겼다. 구글링을 해보니 해당 오류는 꽤 잦은 오류였고 특정 경우가 아니라면 해결법은 쉬웠다. 1. 관리자 권한으로 파워셸 등 터미널 열기 2. 아래의 코드 작성 pip uninstall opencv-python-headless pip uninstall opencv-python pip install opencv-python 3. 프로그램 재실행 위의 코드를 작성하여 실행 후 vscode를 닫고 다시 시작하였더니 정상적으로 수행이 되었다. 원인은 구글링 해보니 아마 opencv-python이 의존하는 opencv의 버전 문제 같은데 opencv의 버전이 변할 때 종종 이런 오류가 생기는 것 같다.

반응형