기타/Huggingface

기타/Huggingface

모델 레이어 수정

허깅페이스 transformers 라이브러리로 불러온 모델에 대해 약간의 수정이 필요한 경우가 있습니다. 저 같은 경우에는 diffusers의 controlnet의 조건부 이미지 입력값을 더 키워서 다양한 조건을 한번에 입력받게끔 테스트를 진행하고 있는데요. 간단하게 in_channels를 수정하면 될 줄 알았는데 모델 레이어 전체를 바꿔야만 에러 없이 돌아가는 걸 확인하여 까먹지 않고자 정리해봅니다.정리 중에 생각해보니까 in_channels만 수정한다고 weight가 생기지는 않을테니 당연한 내용이었네요. 간단하게 파라미터만 수정하는 경우아래와 같이 컨트롤넷을 정의하고 조건부 이미지 입력값만 변경해보겠습니다.controlnet = ControlNetModel()controlnet.controlnet_..

기타/Huggingface

[datasets] Dataset cache

HuggingFace의 datasets 라이브러리를 사용하여 데이터셋을 저장하고 사용하다보면 이상하게 디렉토리의 저장 용량이 점점 커지는 경우를 보실 수 있습니다. 이러한 이유는 데이터셋에 캐시 파일이 남아있기 때문입니다. 위의 사진처럼 cache-*.arrow 파일로 캐시가 떨어지게 되는데요. 여러가지 처리를 테스트하다보면 너무 많은 캐시가 쌓일 때가 있어서 가끔씩 지워줘야합니다. 직접 손으로 삭제해도 되지만, 코드 상에서도 간단하게 삭제할 수 있습니다. 데이터셋 객체에 대해 .cleanup_cache_files() 메서드를 사용하여 제거하시면 됩니다. dataset.cleanup_cache_files() 캐시를 비활성화하거나, 로드부터 메모리를 다 쓰는 방법 등은 공식 페이지에서 추가로 확인할 수 있..

새우까앙
'기타/Huggingface' 카테고리의 글 목록