-
Data Science Study -1-Hobby 2023. 1. 21. 22:43반응형
흘러가듯 들었던 말 중에 기억에 남는 말이 있다.
시장을 제대로 파악해야 비전을 제시할 수 있다.
사실 나는 이 말을 들었을 때 뭔 소리를 하나 싶었다.
왜냐하면 내 기준으로 바라보았을 때 [시장을 제대로 파악한다]는 말은 너무 추상적인데다 저 말을 할 수 있는 사람이 몇이나 될런지
의심하게 되기 때문에 ㅋㅋㅋㅋ
그렇기에 내가 이해할 수 있는 방식으로 적용?을 해볼까 한다.
나는 내가 종사하는 분야(업종)의 비전을 알고 싶고, 비전을 제시하려면 시장을 제대로 파악해야 한다고 하니 커리어를 제대로 이해할 필요가 있다고 생각한다.
우선, 현업 (전직장)에서 품질관련 업무를 하던 당시에 느꼈던 한계를 다시금 건드려볼 생각이다.
( *양산제품의 파손확률과 누적 고장률 분석 등 FMEA (Failure Mode Effectiveness Analysis) 진행 시 필드 클레임 데이터의 퀄리티가 낮은 문제점이 있었음. 그리고 이를 어떻게 개선해야할지 항상 고민이었다. )
관련 문헌을 찾아보았고, 2014년에 발행된 제품 신뢰성 분석에 대한 리뷰 논문을 찾을 수 있었다.
본 논문은 제품의 신뢰도 분석 시 데이터의 활용 현황에 대해 소개를 해주고 있으며, 신뢰도를 높이기 위한 통계적 기법을 소개 및 앞으로의 방향성에 대한 논의를 제시하고 있다.
특히 인상적이었던 부분은 이 방대한 데이터를 어떻게 다룰 것인지에 대한 부분이었는데,
자료가 워낙 방대한 경우가 많은 필드 데이터에 대해 기존의 처리 방식에서 탈피할 필요가 있음을 주장하고 있었다.
하기 글상자는 본 논문의 일부 내용을 발췌한 내용이다.
더보기In this article, reveiw some applications where field reliabilty data are used and explore some of the opportunities to use modern reliability data to provide stronger statistical methods to oeprate and predict the performance of systems in the field.
1. The Next Generation of relibility data
Further developments in sensors that will provide information about component or system oeprating/environmental ( or SOE ) data.
If there is no communications capability within a product, some SOE information is stored on board and can be retrieved during maintenance operations.
1.3 Distinguishing Featuer of Modern Field Reliability (SOE) Data
The common feature among these systems is that they can deliver periodically a potentially large vector of dynamic covariate values.
2. Warranty, maintenance, and Field-Tracking Data
Warranty data are the most common type of field data.
: Warranty DB were initially created for financial reporting purposes, but more and more companies are finding that their warranty DB is a rich source of reliability information.
2.1 Common Problems
: Two common problems with wawrranty data are that good failiure mode information is often not availiable.
1) Warranty Data
: warranty data are generally heavily censored.
Because information obtained after a product is out of warranty is limited.
2) Maintenance Data
: Maintenance data provide the second major source of filed reliability data.
Maintenance data may lack important engineering information because the reporting rules and data-based were designed for financial reporting rather than for answering engineering questions.
9. Practical concerns and Challenges
Dynamic covariate information, such binnign will be less effective in reducing the size of a data set.
Strategies will need to be developed to make analyses manageable.
- In some cases, especially when there is a huge number of observations, it might be possible tyo use a subset of the enire data set.결국 하고자 하는 말은, 품질관련해서 제품의 신뢰도를 높이기 위해 (1) 데이터 처리 방법을 깊이 고민할 필요가 있으며, 이를 위해 (2) 데이터 사이언스를 지속적으로 공부해볼 생각이다.
( *공부한 내용은 느낀점과 함께 포스팅 예정 )
하.. 그치만 나는 코딩 진짜 못하는데.. 걱정되네;
더보기회귀분석과 분류
: 예측 문서는 출력하고자 하는 데이터가 숫자 값인가 카테고리 값인가에 따라 사용하는 방법이 완전히 달라진다. 출력하고자 하는 값이 숫자인 경우를 회귀분석 ( regression analysis )라고 하며,
전통적인 통계분석에서 많이 사용하는 예측 방법이다.
반대로 출력하고자 하는 값이 카테고리 값인 경우 분류 ( Classification )이라고 부른다.
머신러닝 방법은 대부분이 이러한 분류 문제를 풀기위한 방법이다.
분류 문제는 우리가 푸는 시험문제 중 4지 선다형 객관식 문제와 같은 것으로 생각할 수 있다.
반대로 회귀분석은 답이 되는 숫자를 직접 써야하는 단답형 문제라고 할 수 있다.
예를 들어 이미지를 컴퓨터에 입력했을 때 "개"인지 "고양이"인지 판별하는 문제는 사실 내부적으로 분류 문제를 사용한다. 보통 1,000개 혹은 그 이상의 가능한 이미지 카테고리 목록을 준비하고 해당 이미지가 이 카테고리에서 어떤 것에 해당하는지를 찾아내는 1,000자 선다형 객관식 문제와 같은 것이다.
예측을 하기 위한 머신 학습임.
Clustering : Target 값이 없어도 유사한 데이터끼리 분류는 가능함. 이러한 작업을 클러스터링
비지도학습 : Unsupervised Learning
Imputation / Impainting
Statsmodels 패키지
statsmodels ( 스텟츠모델즈 ) 패키지는 추정 및 검정, 회귀분석,시계열분석 등의 기능을 제공하는 파이썬 패키지임. 기존에 R에서 가능했던 다양한 회귀분석과 시계열분석 방법론을 그대로 파이썬에서 이용할 수 있다.
scikit-learn 패키지
싸이킷런 패키지는 머신러닝 교육을 위한 최고의 파이썬 패키지임.
2.1 데이터 전처리 기초
데이터를 본격적으로 분석하기 이전에 다음과 같은 패키지를 사용하여 기초적인 전처리 하는 방법을 설명한다.
- misingno 패키지 : 결측 데이터 검색
- sklearn.impute 패키지 : 결측 데이터 대체
- patsy 패키지 : 데이터 선택, 변환, 추가, 스케일링 ( 변환 )
- sklearn.preprocessing 패키지 : 스케일링, 변환
1) Missingno 패키지
: 현실에서 데이터를 수집하다보면 데이터의 일부를 얻지 못하거나 누락되는 결측 ( missing ) 데이터가 생긴다. missingno 패키지는 pandas 데이터프레임에서 결측 데이터를 찾는 기능을 제공한다.
이 패키지를 사용하려면 데이터프레임에 결측 데이터가 NaN ( not a number ) 값으로 저장되어 있어야 한다.-> 결국 해당 데이터를 가지고 있어야 한다는 얘기.
주의할 점은 NaN 값은 부동소수점 실수 자료형에만 있는 값이므로
정수 자료를 데이터 프레임에 넣을 때는 Int64Dype 자료형을 명시해주어야 하고
시간 자료형을 넣을 때도 parse_dates 인수로 날짜 시간형 파싱을 해주어야 datetime64[ns] 자료형이 되어 결측 데이터가 NaT ( not a Time ) 값으로 표시된다.
대개의 경우, 누락 데이터의 경우 Isnull 같은 명령어를 이용해서 True / False로 구분한다.
데이터가 많은 경우에는 일일이 확인할 수 없으므로 sum() 메서드를 결합해서 결측 데이터의 갯수를 유추하는 것만 가능하다.
- df.isnull().sum()
하지만 missingno 패키지를 사용하면 대규모의 데이터에서도 결측 데이터에 대한 시각화를 쉽게 할 수 있다. matrix() 함수는 결측 데이터를 시각화하는 명령이다.
결측된 데이터는 흰색으로, 그렇지 않은 데이터는 검은색으로 나타난다.
가장 오른쪽에 있는 것은 스파크라인 (spark line )이라고 부르고, 각 행의 데이터 완성도를 표현한다.
대규모 데이터에서 missingno 패키지를 사용하는 방법.
-> matrix / bar chart or sth like that
결측된 데이터를 처리하는 방법은 두 가지다.
- 결측된 데이터가 너무 많은 경우 해당 데이터 열 전체를 삭제할 수 있다.
- 결측된 데이터가 일부인 경우 가장 그럴듯한 값으로 대체할 수 있다. ( 데이터의 품질을 낮추는 과정 )
이를 결측데이터 대체 ( imputation )이라고 한다.
판다스의 dropna() - 메서드를 사용하면 결측 데이터가 존재하는 행이나 열을 지울 수 있다.
데이터가 누락된 모든 열을 제거하게 된다면 가용 데이터가 거의 없어지는 문제가 생긴다.
이를 대비해서, drop 열 범위를 설정하기 위해서는 thrsh 인수를 사용한다.
thresh 인수를 사용하면 특정 갯수 이상의 비결측 데이터가 있는 행 또는 열만 남긴다.
In [11] :
df.dropna(thresh=7, axis = 1)
-> data가 7개 이상 있는 경우를 남겨라는 말임.
결측 데이터를 데체할 때는 해당 열의 비결측 데이터의 평균값 혹은 중앙값 등을 대체값으로 사용하여 결측된 데이터를 채운다. scikit-learn 패키지의 SimpleImputer 클래스를 사용하면 쉽게 결측 데이터를 대체할 수 있다.
Methods ( from 1 to 2 )
1. SImpleImputer 클래스 객체를 생성한다.
이때 strategy 인수를 "mean"으로 하면 중앙값 "median" 으로 하면 중앙값,
"most_frequent"로 하면 최빈값을 대체값으로 사용한다.
-> 실수값에서는 최빈값을 사용하면 안된다. 두 번이상 반복되는 경우가 적기 때문임.
2. fit_transform 메서드를 사용하여 대체값이 채워진 데이터프레임을 생성한다.
비대칭으로 나타나는 데이터의 특징 : 항상 양수인 경우
0 보다 작은 데이터가 없기 때문에, 비대칭인 경우가 만들어진다.
-> mean 보다는 median을 사용하는 편이 낫다.반응형'Hobby' 카테고리의 다른 글
[Python] 1. 사진에서 GPS 데이터 추출 (Exif, GPS info) (0) 2024.01.21