처음엔 부담스러워 별로라고 생각했던 부석순의 '파이팅해야지'를 이제 하루에 두세번씩은 꼭 듣고있습니다.
힘내야지 뭐 어쩌겠어~
1-1. 코세라 <Understanding and Visualizing Data with Python>(미시간대학교 강의): https://www.coursera.org/learn/understanding-visualization-data
3주차
- 다변량Multivariate 데이터: 각 유닛마다 기록된 특성이 한 개보다 많은 경우.
- "Correlation does not imply Causation": 상관관계가 인과관계를 암시하지는 않는다.
- 심슨의 역설: Specialization과 Course모두 여성의 완강률이 더 높으나 이를 합쳐 보면 남성의 완강률이 더 높음
- 혼재Confounding 변수: 독립변수와 종속변수 모두에 영향을 미치며 잘못된 연관성을 유발하는 변수.
- df의 값을 바꿀 떄, 로우를 불인덱싱할 땐 loc이나 iloc를 써주어야 함
- 산점도는 관측치가 약 100개를 넘어가면 overplotting이 일어남: 중앙의 분포가 모호해지고 극단이 과장됨
- 관측치들의 density를 보거나(kde plot), 불투명도(alpha)를 설정해 해결할 수 있음
- categorical data와 quantitative data를 함께 보려면 박스/바이올린 플랏 사용
1-2. 데이터리안 세미나: https://bit.ly/3HR2FqM
데이터 분석 프로젝트 진행 순서: 데이터 찾기 -> 문제 정의 -> 분석 -> 보고서 작성
- 실무에서는 데이터와 풀어야 할 문제가 주어지지만, 회사 밖에서는 그렇지 않음: 데이터 찾기 -> 문제 정의 -> 분석 -> 포트폴리오 작성의 과정에서 상대적으로 난이도가 높은 '데이터 찾기'와 '문제 정의'를 직접 해결해야 함
- 데이터 찾기: 캐글, 공공데이터, Mode(SQL쿼리 사용가능), solvesql(SQL쿼리 사용가능), 공모전 / 혹은 기업에 직접 요청 / 혹은 수기로 직접 작성, 프로덕트(웹사이트) 만들어 (GA로)데이터 수집, 블로그 데이터 수집
- GA: Google Analytics. 사용자 행동 분석 도구를 사용하는 웹사이트 85.9%가 사용하고 있으며, 빅쿼리를 연결하면 SQL로 데이터를 추출해 볼 수도 있음
- 문제 정의하기: 채용시 프로젝트 이력을 보는 것은, 프로젝트에서의 문제정의/해결과정을 통해 "데이터를 보고 문제를 "어떻게" 해결하는 사람인지"를 보고자 하기 때문. 인사이트를 나열하는 것보다 "문제 해결의 근거"를 데이터에서 찾아 제시 하는 것이 좋다.
- 분석하기: 프로젝트에서 풀고싶은 문제 확인 -> 가설 수립 -> 가설 데이터로 확인(데이터를 쪼개거나, 분석 프레임워크 활용)
- 분석 프레임워크: 복잡한 문제를 구조화해 풀 수 있도록 돕는 것. AARRR, 퍼널분석, 코호트분석, 매출분석 등이 있음
- EDA: 탐색적 데이터 분석. 분석의 '결과'가 아닌 '과정'이므로 분석의 결론을 제시하며 이에 대한 근거로 첨부.
- 포트폴리오: 작업물 모음집. '분석 목표', '결과', '근거', '진행 과정', '데이터셋 설명'이 필요함.
1-3. 고객 데이터: https://yozm.wishket.com/magazine/detail/1859/
고객 데이터 자체의 가치가 높아야한다: 모든 기업의 데이터 확보가 높은 가치를 갖게 되는 게 아님
- 현재 수집하고 분석하고자 하는 데이터가 고객들의 구매 결정 요건과 연결되는지 먼저 판단하는 게 중요
데이터의 가치가 장기간 유지되어야하고, 타 제품이나 서비스에 분석 결과를 이식할 수 있어야하고, 분석 결과와 인사이트가 제품 품질 향상 및 네트워크 효과 형성으로 이어져야한다.
2. 개인 프로젝트
- 깨달음1: 내 프로젝트 데이터의 경우, '무지성으로' train_test_split을 썼어선 안 됐다. 몇몇 컬럼들은 같은 팀일 때 값이 같기 때문. True/False 여부로 갈리는 컬럼 또한 마찬가지이므로 이 둘을 해결해야 한다.
- 레드팀 탑, 정글, 미드, 원딜, 서폿 이후 블루팀 탑, 정글, 미드, 원딜, 서폿 순으로 데이터가 정렬되어 있기에 인덱스대로 나누는 것이 낫다고 판단. 비율은 train 6 : test 4
- true/false로 갈리는 컬럼은 아예 true만 남겨두고 삭제했다.
- 깨달음2: string(teamPosition컬럼값)은 sklearn의 모델학습과정에서 인식되지 않는다. 이에 인코딩이 필요하다.
- 이전의 분석에서는 귀찮아서 삭제했었지만, 이 경우 주요한 인사이트(가령, 탑의 KDA와 바텀의 KDA 무엇이 더 승리와의 상관관계가 높을지?)를 간과할 가능성이 생긴다. 살리는 것이 좋을 것 같다. 우선 pd.get_dummies()를 사용했다.
- 이후의 정규화 과정에서도 get_dummies()를 사용한 데이터에다 적용했다.
- 깨달음3: teamId값은 100 혹은 200인데 반해 다른 지표들은 10을 넘는 것이 거의 없다. 정규화가 필요하다
- Standard Scaler, MinMax Scaler, Robust Scaler 다 써봤다. 로지스틱회귀모델 기준 정확도는 0.99978, 0.9998, 0.99978. 랜덤포레스트 기준 정확도는 셋 다 동일한 0.99953, LightGBM기준 정확도도 셋 다 동일한 0.99872. 물론 여기서 사용한 모델 전부 파라미터를 아무것도 설정하지 않고 random_state설정만 했다.
- 0.99 이하로만 떨어져도 그 모델을 더 파 볼텐데, 다 저모양이니... 의욕이 1도 안 생긴다.
3. 공부했던 알고리즘들 개념위주 정리
이번 주는 .. 공부하지 못했습니다.
4. ICT 트렌드 7개: https://yozm.wishket.com/magazine/detail/1856/
메타버스와 NFT, 슈퍼 앱, 생성형 AI와 신뢰가능성, 적응형 AI, 모빌리티 영역 확장, 앰비언트 컴퓨팅, 지속가능성
- 슈퍼 앱: 여러 앱을 대체할 수 있도록, 여러 기능을 하나의 앱에 결합한 앱. 국내에선 토스, 네이버, 카카오 등이 해당될 것
- 생성형 AI: GAN. 데이터를 학습하고 그를 통해 스스로 데이터를 생성하는 AI모델.
- 적응형 AI: 실시간 피드백을 통해 학습과 행동을 조정, 즉 환경에 적응하는 AI모델.
- 앰비언트 컴퓨팅: ambient computing. 유비쿼터스 컴퓨팅에서 발전한 용어. IoT가 곳곳에 산재해 컴퓨터가 어디있는지 인지하는 것 조차 어려운 상태.
- ESG: 환경Environment, 사회Social, 지배구조Governance. 기업가치를 지속가능하게 만드는 것.
5. 제이림 프로젝트
- 혹시나 했던 병합 오류는 없었다. 원 데이터 자체에서 그렇게 갯수 차이가 난 것이었음. DataFrame_0파일의 경우 14만개+15만개+144만개 다 합쳐 189만 개 로우. 혹시나 하는 마음에 drop_duplicates를 사용해도 같다. DataFrame_1파일은 124만개+10개, 124만 개 로우.
- 저번 주에 이어서, 특정 대출을 받은 유저들의 IP value_counts()를 보고 값이 크지 않은 IP들로만 슬라이싱 했다. 저번 주에 본 유저들을 '비정상 유저'로, 이번 주의 유저들을 '정상 유저'로 간주하고 비교해보고자 함. 슬라이싱한 ip리스트를 셔플한 뒤 앞의 3개를 꺼내 로그를 하나씩 보았음.
- 정상 유저들은 체류시간이 최대 35분이었던 반면 비정상 유저들은 최소 1시간인 경향을 보였음: 두 배 이상 차이남
- 두 유저군 공통적으로 'PDF뷰어'와 '개인정보 입력'을 전체 대출 과정의 두 배 정도 경험함:: 간단하게 할 순 없을까?
- DataFrame_1파일의 124만개 로우 중 여신 관련 정보만 보고싶다. 처음에는 '대출'을 포함하는 값들(13만개 로우)을 찾았다가 DataFrame_0파일에서 찾았던 유저들 모두 대출을 '받은'유저였다는 것을 감안, '대출 실행'을 포함하는 값들(2900개 로우)을 찾았다. 시드는 총 1267개.
- 전체 DataFrame_1파일(=로그 액세스 파일)에서 대출을 '받은'유저들의 시드값만 인덱싱해 사용한다. 로우 1.8만개.
- 접속시간 기준으로 sort하니 유저의 로그가 어떤 식으로 기록되었는지에 대한 대강의 감을 잡을 수 있었다.
- 1267개 시드 중 3개를 뽑아 로그를 살펴봄.
- 뭔가 많이 하긴 했는데 앞에서 했던 것의 반복이라 전혀 새롭지 않다는 느낌이다. 사실 반복이 아니긴 한데... 나조차도 정리가 잘 되지 않는 느낌. 복잡하다.
6. 뉴진스에 대하여: https://stibee.com/api/v1.0/emails/share/_ckpvMKoZpTCErfpNQ1URupikYHtfYw=
https://maily.so/draft.briefing/posts/fc5a2821
- 뉴진스 관련 콘텐츠 종사자들은 모두 아이돌판과 거리가 있던 사람들, 그들이 던지는 메세지 또한 아이돌판과 거리가 있는 주제(팬과 아이돌의 '수평적'인 관계), 크리에이티브 리더(민희진)의 능력과 그에 대한 신뢰가 현재의 뉴진스를 있게 함: 케이팝, 아이돌판을 즐기지 않던 사람들도 뉴진스에 빠져들게 함
- 공식화되어있던 걸그룹에 대한 인식과 컨셉을 바꿔놓음: 이것이 뉴진스의 새로움의 정수.
'STUDY' 카테고리의 다른 글
취준로그 ver0.6 (0) | 2023.02.27 |
---|---|
패스트캠퍼스 데이터분석 부트캠프 학습일지1 (0) | 2023.02.24 |
취준로그 ver0.4 (0) | 2023.02.07 |
취준로그 ver0.3 (6) | 2023.02.01 |
취준로그 ver0.2 (3) | 2023.01.26 |