Home
Archive
Cancel

Pydantic RootModel의 설계 의도와 v2에서의 올바른 타입 매핑

서론 Pydantic은 Python에서 데이터 검증과 설정 관리를 위한 핵심 라이브러리로 자리잡았습니다. 그 중에서도 RootModel(또는 v1의 __root__ 필드)은 특별한 용도로 설계된 기능입니다. 하지만 많은 개발자들이 이 기능을 자동 타입 매핑 용도로 활용하면서, v2에서의 변경사항과 함께 혼란이 생겨났습니다. 이 글에서는 Roo...

NumPy 1.24 이후 np.float 타입 제거 및 대응 전략

NumPy를 사용하다 보면 가끔 예상치 못한 버전 업데이트 변경점에 당황할 때가 있습니다. NumPy 1.24 버전에서 np.float와 같은 일부 타입들이 완전히 제거된 것이 바로 그런 경우입니다. 많은 기존 코드에 영향을 줄 수 있는 이 변화는 사실 NumPy의 타입 시스템을 더 명확하게 만들고, 오랜 기간 존재했던 혼란을 해결하기 위한 중요...

Airflow DAG 파싱 주기 설정 시 주의할 점과 최적화 전략

서론 Airflow를 운영하다 보면 DAG 변경사항이 언제 반영되는지 답답할 때가 많습니다. 파일을 수정했는데 UI에서 바로 확인이 안 되고, “도대체 언제 반영되는 거야?” 싶어 F5를 연타한 경험, 다들 있으실 거예요. 저도 처음에는 단순히 “파싱 주기만 짧게 하면 되겠지”라고 생각했는데, 무작정 적용했다가는 또 다른 문제가 터질 수 있습...

git 브랜치명에 언더바를 잘 안 쓰는 이유

Git을 사용하다 보면 브랜치명을 어떻게 지어야 할지 고민하는 경우가 많습니다. 특히 브랜치명에서 단어를 구분할 때 하이픈-과 언더바_ 중 무엇을 써야 할지 고민이 되는데, 실제로 오픈소스 프로젝트나 실무에서는 하이픈-을 압도적으로 많이 사용하고, 언더바_는 거의 사용하지 않습니다. 이번 글에서는 왜 git 브랜치명에 언더바를 잘 안 쓰는지, ...

파이썬 개발자가 가져야 할 자세

서론 파이썬은 지속적으로 발전하는 프로그래밍 언어로, 버전 업그레이드마다 새로운 기능과 변경사항이 도입됩니다. 이러한 변화는 기존 코드의 동작에 대한 영향을 매우 크게 강요하는 경우도 꽤나 흔합니다. 특히 이전 글에서 설명한 Python 3.11에서 str과 Enum의 동작 변경은 많은 개발자들에게 주의가 필요한 단적인 예시입니다. 목차 ...

Python 3.10에서 3.11로 마이그레이션 시 str, Enum 문자열 출력 동작 변경과 대응 전략

서론 Python 3.11에서는 str, Enum 다중상속 클래스의 문자열 출력 동작이 크게 변경되었습니다. 이 변화는 열거형 클래스의 일관성을 높이기 위한 의도적인 수정이지만, 이미 작성된 코드 호환성에 직접적인 영향을 주므로 주의가 필요합니다. 목차 1. Python 3.10과 3.11의 차이점 2. 영향받는 코드 3. 해결책:...

FFT 압축 결과는 왜 Latent Vector가 아닐까?

서론 FFT(Fast Fourier Transform) 기반 압축과 Latent Vector는 모두 데이터를 효율적으로 표현한다는 공통점이 있지만, 그 메커니즘과 목적에서 근본적인 차이가 있습니다. 마치, FFT 압축을 수행한 이미지를 쭉 나열하면 Latent Vector로써 기능할 수 있을 것 같은 착각을 불러옵니다. 이 글에서는 두 방법의 ...

Embedding과 Latent Vector, 헷갈리는 개념 정리

서론 머신러닝과 딥러닝에서 embedding, embedding vector, latent vector는 종종 혼용되거나 모호하게 사용되는 개념입니다. 이 세 용어는 서로 연관되어 있지만 엄밀히는 다른 의미를 가지며, 혼동할 경우 모델 해석이나 구현에 실수가 발생할 수 있습니다. 이 글에서는 각 개념의 정의와 차이를 명확히 정리해보겠습니다. ...

깃허브 블로그 테마 변경!

어제(2022.06.22) 깃허브 블로그의 테마를 변경했다. Jekyll을 활용한 정적 블로그인 점은 그대로고, Minimal Mistakes에서 Chirpy로 테마만 변경했다. Minimal Mistakes는 별다른 고민 없이 구글에 깃허브 블로그 만드는 법해서 제일 위에 있던 테마로 설정했었다. 그렇다 보니 테마가 그리 맘에 들진 않았었다. ...

Boostcamp AI Tech 3기 이미지 분류 대회 후기

Repository Link 대회 목표 모델의 성능 개선 효율 좋은 dataset, model, loss…etc 코드 작성 고민해본 문제들 Task 분해에 대한 고민 해당 문제는 독립적으로는 18개의 class를 분류하는 문제이지만, Age, Gender, Mask 각각에 대한 분류 문제로 생각할 수 있다. 하지만, ...