Loading...
2024. 3. 17. 22:08

FastAPI에서 return할 때 ValueError: TypeError("'numpy.float32' object is not iterable") 해결하기

print는 잘 되는걸 보면 값이 정상인데 프론트로 return할려면 에러가 난다 FastAPI에서 numpy.* 데이터 타입을 지원하지 않기 때문에 에러가 난다 문제가 되는 numpy value에서 *.item()으로 python value로 가져와서 저장하고 그러면 정상적으로 return할 수 있다

reproducibility를 위한 random seed

1. 필요성 모델의 재현성 cross validation의 경우 실행할 때마다 매번 다르게 sampling되어 model의 성능이 매번 다르다 반복해서 실행했을 때 동일한 조건에서 동일하게 sampling되어야 정확하게 model 성능 측정이 가능함 머신러닝 모델도 random하게 작동하므로 작업 복원을 위해서라도 반드시 필요함 어떤 가설을 설정하고, 그것이 맞는지 실험할려고 하는데 재현이 안된다면 가설에 의한 변화 때문에 성능이 바뀐건지, 다른 원인이 있는건지 파악할 수 없음 2. seed 모델의 랜덤성 때문에 풀고자 하는 문제에 대하여 데이터가 매번 바뀌면 모델 성능 측정시 내가 만든 feature나 전처리 방식이 효과적인지 확인이 어렵다 랜덤성을 제거하기 위한 seed를 고정 feature engi..

2023. 3. 6. 02:33

pytorch tensor 다루기 재활치료 1편 -tensor, broadcasting, max, argmax -

1. 벡터, 행렬, 텐서 차원이 없는 값을 스칼라 1차원으로 구성된 값을 벡터(vector) 2차원으로 구성된 값을 행렬(matrix) 3차원 이상으로 구성된 값은 텐서(tensor) 인간은 3차원 세상에 살고 있다보니 4차원 이상부터는 머리로 상상하기 어렵다. 데이터사이언스에서는 3차원 이상의 텐서는 다차원 행렬이나 배열로 간주할 수 있다. 또한 주로 3차원 이상을 텐서라고 하며, 1차원 벡터나 2차원 행렬도 텐서라고 표현하기도 한다. 1차원 벡터 = 1차원 텐서, 2차원 행렬 = 2차원 텐서, ...... 2. tensor의 shape를 표현하는 방법? 2-1) 2차원 tensor 2차원 텐서의 크기를 (batch size * dim)으로 표현할 수 있다 훈련 데이터 하나의 크기를 256이라고 하자...

2023. 2. 13. 21:33

docker에서 nodejs + python-shell 사용할때 배운 docker 기본기와 개발 기본기

다음과 같이 dockerfile이 작성되었고 FROM python:3.8 WORKDIR /SubPjt2/backend/ RUN pip install --upgrade pip RUN pip install matplotlib RUN pip install tensorflow RUN pip install CMake RUN pip install dlib RUN pip install torch RUN pip install torchvision FROM node:16.18 WORKDIR /SubPjt2/backend/ COPY --from=0 . . COPY . . RUN npm install EXPOSE 3001 CMD ["npm", "start"] 이렇게 구성된 dockerfile에서 다음과 같은 python-s..

2022. 11. 3. 17:59

머신러닝 관점에서 information transmission

1. introduction 모든 network는 기본적으로 graph로 나타낼 수 있다. C가 작성만 하면 컴퓨터가 이해하는 것이 아니고 compile 과정을 거쳐서 기계어로 최종 번역되어야 이해할 수 있다. network도 마찬가지로 그냥 GPU에서 돌아가는 것이 아니라 graph lowering 과정을 거쳐야 hardware에서 이해할 수 있다. 이러한 역할을 해주는 것이 deep learning compiler 지금까지 software측면에서 network만 주로 공부했지만 실제로 network가 CPU,GPU 같은 hardware 환경에서 돌아가기까지 생각보다 많은 일이 있다. 2. acceleration 시간에 따른 거리의 변화량이 속도이고 속도의 변화량이 가속도(acceleration) 2-..

2022. 3. 25. 02:38

데이터프레임에서 행별로 이상치 판단하기 (코딩테스트 복기)

1. 예시 데이터 생성 import pandas as pd import numpy as np a = ['xdjwew1235453kdrew',75,np.nan,np.nan] b = ['jgierw0548323kgfe',54,36,89] c = ['hjeir3058372jdkw',23,85,np.nan] d = ['gjewoe02853klfw',98,94,92] e = ['guehrwenk29584034kgneiew',np.nan,np.nan,55] df = pd.DataFrame([a,b,c,d,e]) 여기서 소소한 팁으로 np.nan으로 NaN값을 넣을 수 있다 'NaN'이나 nan이나 NaN이나 이런거 안됨 2. 행의 값들을 가져오는 방법 df.values하면 데이터프레임의 행들을 numpy array..