728x90

머신러닝 3

케라스(Keras)에서 모델 학습 중 loss가 nan으로 나오는 문제, 예측 값이 nan으로 나오는 문제

어떤 국내 논문 하나를 구현해보면서 Keras를 활용해서 선형 회귀(Linear Regression) 모델을 만들었다. 분명 다른 모델들을 만들 때도 이와 동일하게 만들어서 작성을 했는데도 loss가 nan이 나오고 예측 값도 nan이 나오는 문제가 있었다. 혹시나 싶어 np.mean을 사용해서 평균 값도 찍어봤는데, 이 역시도 nan이 나왔다. 데이터 타입이 혹시 다른 게 들어가서 그런 것인지, 중간에 무언가가 비었는지 체크해봤지만 아무 문제가 없었지만, 우우여곡절 끝에 해결 방법을 찾았다. astype을 사용해서 데이터 타입을 변경했다. X라는 데이터가 있으면 그냥 X=X.astype(float)로 변경해주면 해결됐다. 어디까지나 추정이지만, 오버플로우 같은 게 발생해서 나타난 문제 같다. 데이터 사..

판다스(Pandas) shift를 활용해서 Sliding Window 만들기

시계열 데이터를 활용해서 수치를 예측하는 모델을 만들 때 사용하는 다양한 방법 중에 Sliding Window를 활용해 과거 데이터를 feature로 사용하는 방법이 있다. 이 방법은 시계열 데이터를 활용한 예측에서 과거 데이터들을 바탕으로 예측을 수행하므로 과거 데이터들을 포함하는 feature를 만들어줘야 한다. 이렇게 feature로 사용할 과거 기간에 대해서 lookBack, lag, delay 등 다양한 명칭으로 부르는데, 통상적으로 lag이라는 명칭을 많이 사용하는 것 같다. 예시 코드에서는 lookBack으로 작성했다. 다양한 방법으로 lag을 줘서 Sliding Window를 만들 수 있지만, 손수 Sliding Window와 lag 개념을 넣으려면 거기에 맞게 행을 추가해줘야 하고, 데이..

머신러닝(Machine Learning) 관련한 프로젝트 아이디어와 관련 툴

머신 러닝(Machine Learning) 학습을 하고 나면 기존의 유명 데이터셋들(유방암, 붓꽃, 와인 등)만 사용하는 것이 아닌, 다른 데이터셋을 활용해서 그럴싸한 프로젝트를 시도해보고 싶어진다. 유명 데이터셋들에서 파생된 간단한 모델들이 존재하긴 하지만, 그보다 더 다양한 데이터셋과 머신러닝 모델을 만들어보고 싶다면, 참고할만한 github repository를 하나 공유하려고 한다. https://github.com/NirantK/awesome-project-ideas NirantK/awesome-project-ideas Curated list of Machine Learning, NLP, Vision, Recommender Systems Project Ideas - NirantK/awesome-..

728x90