UCSD Qualcomm Institute/AI Project

UCSD Qualcomm Institute AI Project 2주차

잔디🌿 2025. 1. 28. 08:54

2주차!

 

이번주는 선행논문 분석(피쳐선택을 중심으로)와 150개의 피쳐를 모두 분석하기를 했다.

 

아 이번주에 이슈가 하나 있었는데, 바로 노션의 무료버전으로는 더이상 새로운 블럭이 추가되지 않는다는 것이다..!

이걸 해결하기 위해 구글링해 본 결과 내가 페이지를 만들고 다른 팀원들을 게스트로 초대하면 된다는 것을 알게되었다

앞으로는 처음부터 이렇게 해야겠다.

 

선행논문 분석

우리는 관련 선행논문이 쫌 있는 편이다. 이 논문들이 어떻게 데이터 전처리를 했고, 피쳐의 중요도는 어떻게 선정했는지 알아보는 과정을 거쳤다.

 

전처리

  • 회원의 고유 id를 바탕으로 이들의 컬럼들을 join함
  • 다양한 자료형이 있어 이를 그대로 모델이 입력하면 범위차이로 인해 성능 저하 -> 라벨 인코딩
  • 범주가 너무 많으면 one hot encoding을 하여 여러개의 이진특성으로 변환
  • 정규화(Normalization)을 통해 동일한 스케일을 가지도록 함

결측값 처리

  • 결측값은 threwadhold를 결정하여, 결측값이 이 값을 넘는 피쳐는 제외
  • 또한 이 값을 넘지 않는 피쳐들에 결측값이 있는 row들은 제거
  • 중앙값으로 대체

피쳐 중요도 분석

  • 랜덤포레스트 기법 사용
  • EDA 사용

피쳐분석

이번 주는 거의 피쳐분석에 시간 투자를 많이 했다.

 

 

노션에 150개의 피쳐들을 토글로 만들고, 각각의 페이지에 피쳐의 의미, 타입, 단위, 데이터타입, 결측치 수와 비율, 이상치 수와 비율을 적었고, 

피쳐 시각화를 위해 box plot와 pie chart를 사용하였다.

 

pie chart 만들기

pie chart는 다음과 같이 만들었다. 

각 value별 빈도 수를 파이차트화 해야하기 때문에 value counter을 사용하였다.

하지만 Pie chart에서 ID는 하나의 피쳐로 인식하지 못해서 이 상태로는 작동을 하지 않는다.

따라서  RowID 노드를 써서 ID값을 가지는 id 피쳐를 하나 더 만들었다.

이렇게 가공한 데이터를 pie chart에 넣어 완성했다.

 

그리고 이상치는 위와 같이 측정하였다.

처음에 구글링을 통해 Numeric Outliers 노드가 이를 측정해준다는 것을 알게 되었지만, 아무리 돌려도 이상치가 나오지 않았다.

하지만, 이 내용은 port1에 있었다.. 앞으로는 특정 값이 안나오면 포트를 변경해보아야겠다.

 

여기도 앞에와 마찬가지로 math formula 노드를 통해서 이상치 비율을 분석하였다.

또한 Box plot 노드를 통해 이를 시각화하였다.

 

이렇게 준비해서 박사님과 미팅을 하였는데, 피쳐의 정확한 의미, 시점 등 생각보다 알아야 할 내용이 많았다.

인공지능 프로젝트를 하러왔지만 경제공부도 꽤 해야하는 상황이 되어버렸다ㅜㅜ

 

발표

나는 피쳐분석부분 발표를 맡았다. 이번에는 스크립트 없이 해야해서 걱정했는데, 오히려 스크립트 있을 때 보다 수월했던 것 같다.

발표 내용은 선행논문 분석, 피쳐분석 방법, 피쳐 소개로 나누어졌다. 피쳐소개는 제외할 피쳐, 중요한 피쳐에 대해서 설명하였다.

 

질문

Q. 공동 신청자 관련 피쳐는 중요해보이는데 왜 뺐나

A. 결측치가 95퍼센트 이상으로 상당히 많기 때문에 뺐다.

 

Q. fico 지수와 관련된 신용정보가 있는가?

A. 가지고 있는 신용통장 수 등의 정보가 있다. 참고해보겠다.