기업 연계형 프로젝트 개발을 위한 Repository 입니다.
- 사출기 결과물의 양불 판정을 위한 이상치 검출을 위한 GUI 분석 프로그램 개발
기능 | 구현 여부 | 설명 |
---|---|---|
데이터 불러오기(Local) | O | 자신의 컴퓨터(Local)에 존재하는 .csv 형식의 파일 데이터를 불러올 수 있다. |
데이터 불러오기(API) | O | 회사 내 데이터베이스(DB)에 존재하는 사출기 결과에 대한 데이터를 불러올 수 있다.(주기적으로 업데이트 됨.) |
데이터 기본정보 표시 | O | 불러온 데이터 결과(RESULT)를 기반으로 데이터에 대한 기본 정보를 표시한다.(Dataframe, Bar plot, 양/불 개수) |
데이터 부분 선택 | O | 불러온 대량의 데이터 중 사용자가 부분적으로 보고자하는 데이터 feature 종류와 개수 등을 직접 설정하여 필요한 부분 데이터만 표시할 수 있다. |
데이터 시각화 | O | 불러온 데이터를 기반으로 다양한 플롯(Plot)을 사용하여 데이터 시각화가 가능하다. 사용자가 보고 싶은 플롯(Plot)을 선택할 수 있으며 특징(Feature)의 개수에 따라 1D, 2D로 나뉜다. |
데이터 분석 | O | 총 5단계로 나누어 데이터 분석을 진행한다. 이상/결측치 제거, Object type 제거, 선형 회귀 분석, 정규화 검정, 독립 T 검정 단계가 순차적으로 진행된다. |
데이터 분석 결과 도출 | O | 총 5단계의 데이터 분석을 통해 전체 데이터에 대한 결과를 도출해낼 수 있다. 이를 그래프와 결과 설명으로 사용자에게 제공된다. |
데이터 학습 및 예측 | O | 양/불 판정을 위해 Anomaly Dectection 기반 딥러닝 모델을 사용하여 사용자가 제공하는 데이터에 대해서 학습 및 예측을 진행한다. |
GUI 프로그래밍 | O | GUI 프로그래밍을 통해 사용자가 좀 더 효과적으로 데이터 분석 과정을 확인할 수 있고 쉽게 이해할 수 있다. |
이상치 검출 알고리즘 개발 및 정확도 향상 | △ | 딥러닝 모델(XGBoost Classifier)을 활용한 이상치 검출 알고리즘을 통해 사출기 결과물의 양품과 불량을 판정하는 알고리즘을 개발하고 높은 정확도를 달성하기 위해 다양한 실험을 진행 중이다. |
👉 실행 흐름
1. 프로그램 시작
2. 메인화면
3. 데이터 파일 불러오기(.csv)
4. 데이터 부분 선택(option), 데이터 기본정보 출력
5. 4가지 기능 중 1가지 선택하여 수행(데이터 분석, 데이터 시각화(1D), 데이터 시각화(2D), 학습)
6. 메인화면에서 창 닫기
⦁ Main(메인화면)
- 프로그램의 실행과 함께 실행되며 사용자가 데이터를 불러올 수 있고 다양한 분석 기능을 수행할 수 있도록 제공한다.
⦁ Data_analysis(데이터 분석)
- 총 5단계의 데이터 분석이 이루어지며 step-by-step 방식으로 사용자가 분석 진행 과정을 직접 볼 수 있도록 설명을 제공한다.
⦁ Analysis_1d(데이터 시각화(1D))
- 사용자가 1개의 feature와 그래프 유형을 선택하여 해당 데이터에 대한 결과를 시각적으로 확인할 수 있도록 기능을 제공한다.
⦁ Analysis_2d(데이터 시각화(2D))
- 사용자가 2개의 feature와 그래프 유형을 선택하여 해당 데이터에 대한 결과를 시각적으로 확인할 수 있도록 기능을 제공한다.
⦁ Learning(학습)
- 사용자가 학습 데이터를 제공하면 내부 구현되어 있는 딥러닝 모델 학습과정에 따라 Anomaly detection 학습을 진행한다.
그 후, 예측을 수행하여 사용자에게 데이터에 대한 예측 정확도를 보여주어 얼마나 학습이 잘 되었는지 지표를 제공해준다.
데이터에 대한 기본정보를 사용자에게 제공하기 위해서 데이터에 관해 표현할 수 있는 기본 구조가 제공되어 있다.
데이터를 불러온 후, 데이터에 대한 기본정보를 보여주는 화면이다. 데이터프레임을 통해 .csv 파일 내에 존재하는 정보들을 테이블 형태로
표시해주며 결과 값에 대한 유형들과 샘플의 개수 등이 표시된다.
데이터 분석의 초기화면이다. 총 5단계로 데이터 분석이 이루어진다. 단계별로 버튼이 활성화되며 순차적으로 누르게 되면 필요 없는
feature들은 자동으로 제거되며 최종 데이터 분석 시작 버튼을 통해 데이터 분석 결과를 알아볼 수 있다.
최종 데이터 분석 결과를 보여주는 화면이다. 100개의 feature 중 데이터 분석 과정을 통해 최종적으로 남은 feature들의 목록을
보여주며 양품과 불량에 대한 범위, 서로 중복되지 않는 값들, 최빈값 등을 보여준다. 이를 통해 각각의 분포도를 알 수 있으며 그래프의
종류 변경을 통해 다양한 관점에서 분석이 가능하다.
전체 데이터에 대하여 사용자가 선택한 feature에 해당하는 데이터만을 그래프로 시각화하여 보여주는 화면이다.
그래프의 유형은 약 7가지가 있으며 다양한 관점에서 전체 데이터를 시각화하여 볼 수 있도록 제공한다.
사용자가 2가지 feature와 그래프 유형을 선택하면 그에 관한 상관관계를 분석할 수 있도록 제공해 주는 기능이다.
데이터 시각화(1D)와 달리 2가지 feature를 선택하여야 하는 차이가 있으며 그래프의 유형도 1D와는 다르기 때문에
다양한 방법으로 분석이 가능하도록 한다.
내부 구현되어 있는 딥러닝 모델에게 학습시킬 데이터를 로드한 후, 학습 시작을 클릭하게 되면 모델이 양/불에 대한
Anomaly Detection 과정을 수행한다. 그 후, 결과를 성능 지표를 통해 사용자에게 보여준다.
학습 데이터와 테스트 데이터의 비율은 7:3 으로 나누어 진행하였다.
※ 아직 실험 단계에 있으며 추후 세부적인 딥러닝 모델 개발과 함께 GUI 기능을 추가할 예정
- 기업 연계형 프로젝트를 통해 사출기 결과물의 양불 판정을 위한 이상치 검출을 위한 GUI 분석 프로그램 개발을 개발하였다.
- 이러한 분석 프로그램을 통해 다양한 관점에서 이상 데이터를 분석을 가능토록 하였다.(데이터 시각화, 통계적 검정 분석 등)
- 추후 양/불 판정을 위한 이상치 검출 모델 정확도를 향상시키는 데에 노력을 기울일 예정이다. 이는 이전의 딥러닝 프로젝트와 연계하여 연구를 진행할 예정이다.
-
J. Jeong, M. Jeong, J. Si and S. Kim, "Development of Data Analysis System for Determining Product Quaility of Injection Molding Machine Results", Proc. Of Korean Institute of Information Technology Conference, pp.329-330, Dec. 2022.
-
J. Si, J. Jeong, M, Jeong, and S. Kim, "Anomaly Detection of Injection Molding Using Statistics-Based Feature Selection and Generative Adversarial Learning", Journal of Korean Institute of Information Technology(JKIIT), Accepted