전체 글 27

[논문 리뷰] Autocorrelation-based time synchronous averaging for condition monitoring of planetary gearboxes in wind turbines (자기상관 기반 TSA 기법 탐구)

유성 기어박스 프로젝트를 진행하면서, 선행 연구를 진행하셨던 하종문 박사님의 논문인 J. M. Ha, B. D. Youn, H. Oh, B. Han, Y, Jung, and J. Park, “Autocorrelation-based time synchronous averaging for condition monitoring of planetary gearboxes in wind turbines,” Mech. Syst. Signal Process., vols. Mar. 2016 를 읽고 정리하였습니다. https://www.sciencedirect.com/science/article/pii/S0888327015004525?via%3Dihub

Study/PHM 2023.07.19

[2023 BDA 데이터 분석 공모전] Track2: 모델링 고도화 (1) - 예비 보고서 작성

연합 빅데이터분석 학회 BDA에서 개최한 공모전에 참가하였다. BDA 학회원 뿐만 아니라 타 대학 데이터분석 학회까지 포함하여 대학생 데이터분석 학회 연합 단위에서 이루어지는 공모전이다. BDA 6기 데이터 분석 중급반으로 활동하고 있었고, 운 좋게도 중간점검 당시 우수학회원으로 분류되어 참가자격이 주어졌다. 총 두개 분야로 이루어지며, track1은 데이터 시각화를 통하여 인사이트를 도출한 뒤, 이에 따른 마케팅 아이디어를 제시하는 분야 track2는 CJ 더마켓 프라임회원 여부를 예측하는 모델링 고도화하는 분야 처음에는 track2 분야가 더욱 흥미로워보였기 때문에 학회 내부 노션 페이지를 통하여 track2 팀매칭을 진행하였으나.. 팀원 모두가 열정덩어리었던 우리는 두 분야 모두 나가기로 결정했다...

[2023 BDA 데이터 분석 공모전] Track1: 시각화 인사이트 (4) - 최종 전략 제시

1차 심사가 끝이 나고 2주정도 결과 보고서를 작성할 시간이 있었다. 하지만 데이터의 양상이 요약 데이터와 다른 부분이 있어서 원래 기대했던 흐름에 맞춰서 분석을 진행하지 못해 막막한 부분이 있었다. 또한 track2의 ipynb 파일과 test.csv 파일 제출 기한이 1주일 뒤였기 때문에 처음 1주일은 track2에 전념한 후, 그 다음 1주일을 track2 track1과 track2를 동시 본선 진출한 우리 팀에게는 발표자료 제작과 동시에 track1 분석 및 최종자료 제작을 해야하는..... 극악무도한 일정이었다. track2 파일을 제출한 뒤 track1 자료는 눈에 들어오지도 않았다... 더군다나 아이디어의 비중이 더 큰 track1이었기에 막막한 느낌이 더 크게 다가왔다. 우리 팀원 총 4명..

시작 - 맥에서 가상환경 구축, VScode로 jupyter notebook 생성하기

학교의 PHM 랩실에서 인턴생활을 시작하게 되었다. 이전까지는 구글 드라이브에 데이터셋을 업로드해놓고, 코랩을 이용하여 데이터 분석을 진행하였다. 하지만 랩실에서 다루는 데이터는 용량이 매우 크기 때문에, 코랩으로 분석을 진행하기 어려운 부분이 있었다. 그래서 랩실에 있는 고사양 PC와 VScode를 활용하여 분석을 진행한다고 한다. 랩실에서의 분석을 시작하기 앞서 내 개인용 랩탑인 맥북에 동일한 환경을 만들어 주기로 했다. 진행하면서 또 구글을 뒤적여 가면서 시간을 많이 허비하여, 기록용으로 블로그에 남겨두기로 결정했다. 1. Anaconda 설치 Anaconda 홈페이지에 들어가서 MacOS에서 Installer을 골라 설치하면 된다. Free Download | Anaconda Anaconda's ..

Study/PHM 2023.07.09

[2023 BDA 데이터 분석 공모전] Track1: 시각화 인사이트 (3) - 고객 군집화 시도

이번 track1에서 내가 주도적으로 맡은 부분은 고객 군집화를 위해 클러스터링 기법을 시도한 것이었다. 군집화가 잘 이루어지면, 고객 별 특성에 맞는 마케팅 전략을 제시할 수 있기 때문이다. 하지만 대부분의 변수가 범주형 변수였기 때문에, 거리 기반의 k-means 클러스터링을 진행하는 것은 부적합하다고 판단했다. 따라서 최빈값을 기반으로 비유사도가 낮은 군집을 만들어내는 k-modes 클러스터링을 시도해 보았다. 데이터 전처리 - 변수 추출 총 29개의 변수 중에서 클러스터링에 활용에 필요한 컬럼 15개를 추출해준다. drop_list = ['Unnamed: 0', '거래처', '거래처주문번호', '주문일', '출고예정일', '운송장등록일자', '상품순번', '상품코드', '덤상품수량', '자재코드'..

[2023 BDA 데이터 분석 공모전] Track1: 시각화 인사이트 (2) - 본선 데이터 분석

사실 1차 심사를 통과한 뒤 실제 데이터를 받고 요약 데이터와는 너무나 다른 데이터셋에 놀랐다. 컬럼도 두배정도 양이 되었을 뿐더러... 상품명이 실제 판매 페이지에 올라가 있는 실제 텍스트로 되어있었기 때문에 똑같은 햇반이더라도 햇반 200g x 2, 햇반 200g * 2, 햇반 200g x 2개, 햇반200g x2 등 논리적으로 같은 상품임에도 불구하고 통계 분석을 할 때 다른 데이터로 분류되게 된다. 따라서 이것을 같은 상품으로 묶어 주는 전처리 작업이 필요했고, 이 과정에서 가장 많은 시간을 소요했다. 전처리 brand = ['BYO', 'CJ', 'EXCYCLE', 'VIPS', '계절밥상', '고메', '다담', '다시다', '닥터뉴트리', '더건강한', '딜라이트', '리턴업', '맛밤', ..

[2023 BDA 데이터 분석 공모전] Track1: 시각화 인사이트 (1) - 예비 분석 보고서 작성

연합 빅데이터분석 학회 BDA에서 개최한 공모전에 참가하였다. BDA 학회원 뿐만 아니라 타 대학 데이터분석 학회까지 포함하여 대학생 데이터분석 학회 연합 단위에서 이루어지는 공모전이다. BDA 6기 데이터 분석 중급반으로 활동하고 있었고, 운 좋게도 중간점검 당시 우수학회원으로 분류되어 참가자격이 주어졌다. 총 두개 분야로 이루어지며, track1은 데이터 시각화를 통하여 인사이트를 도출한 뒤, 이에 따른 마케팅 아이디어를 제시하는 분야 track2는 CJ 더마켓 프라임회원 여부를 예측하는 모델링 고도화하는 분야 처음에는 track2 분야가 더욱 흥미로워보였기 때문에 학회 내부 노션 페이지를 통하여 track2 팀매칭을 진행하였으나.. 팀원 모두가 열정덩어리었던 우리는 두 분야 모두 나가기로 결정했다...

[백준/파이썬] 1193 분수찾기 : 계차수열의 일반항 구하기

문제 무한히 큰 배열에 다음과 같이 분수들이 적혀있다. 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … … 3/1 3/2 3/3 … … … 4/1 4/2 … … … … 5/1 … … … … … … … … … … … 이와 같이 나열된 분수들을 1/1 → 1/2 → 2/1 → 3/1 → 2/2 → … 과 같은 지그재그 순서로 차례대로 1번, 2번, 3번, 4번, 5번, … 분수라고 하자. X가 주어졌을 때, X번째 분수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. 출력 첫째 줄에 분수를 출력한다. 위와 같이 그림을 그려 분수를 나타내고 보았다. 나는 분자와 분모를 나누어서 각각의 규칙을 찾는 방법을 이용했다. 분자를 순서대로 쭉 ..

Study/백준 2023.03.01

[백준/파이썬] 1316 그룹 단어 체커 : enumerate, 한줄 for, if문

문제 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에 그룹 단어이지만, aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다. 단어 N개를 입력으로 받아 그룹 단어의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 단어의 개수 N이 들어온다. N은 100보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 단어가 들어온다. 단어는 알파벳 소문자로만 되어있고 중복되지 않으며, 길이는 최대 100이다. 출력 첫째 줄에 그룹 단어의 개수를 출력한다. N = int(input()) lst = [] sum = 0 f..

Study/백준 2023.03.01

[2022 빅콘테스트] 앱 사용성 데이터를 통한 대출신청 예측분석 - 한계 및 보완

먼저 데이터 분석에 대해 무지했던 상태로 공모전에 뛰어든 나 자신을 칭찬하면서 또 반성한다. 베이스가 없었던 내게는 이번 경험을 통해 데이터 분석의 전체적인 흐름, 실전에 필요한 과정 등을 여과 없이 느껴볼 수 있는 기회였기 때문에 엄청난 성장을 거둘 수 있었다. 하지만 그저 흐름을 쫓아 배우기만 했을 뿐 팀을 위해 공헌한 것이 없는것 같았다. 데이터 분석의 기본부터 다시 차근차근 쌓아나아가고 싶은 마음이 들었다. 대출 신청 여부라는 것은 단순히 고객의 신용데이터만 가지고 예측하기에는 정보가 부족한 점이 없지않아 있었던 것 같다. 고객의 정량적 데이터 뿐만 아니라 매수심리와 같은 정성적 데이터, 주변 환경을 변수로서 다룰 수 있다면 더욱 좋은 결론을 낼 수 있었을 것 같다. 해결책으로는 user_spec..