Skip to content

πŸšœκ±΄μ„€ ν˜„μž₯ 운용 νš¨μœ¨ν™”λ₯Ό μœ„ν•œ μž‘μ—…μžμ˜ μš΄μ „ μ„±ν–₯κ³Ό μˆ™λ ¨λ„μ— 영ν–₯을 받지 μ•Šκ³  μ •ν™•ν•œ μž‘μ—… μ€‘λŸ‰μ„ μ˜ˆμΈ‘ν•  수 μžˆλŠ” λͺ¨λΈμ„ κ°œλ°œν•˜λŠ” λŒ€νšŒπŸ₯‡(HD ν˜„λŒ€)

Notifications You must be signed in to change notification settings

jjuhyeok/HD-AI_CHALLENGE_FINAL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

HD-AI_CHALLENGE_FINAL

πŸ† Result

  • Leader Board Score(1st)




주졜 : HDν•œκ΅­μ‘°μ„ ν•΄μ–‘ AI Center

μ£Όκ΄€ : DACON

규λͺ¨ : 총 1320μ—¬λͺ… μ°Έκ°€ 쀑 μ΅œμ’… μƒμœ„ 11νŒ€ λ³Έμ„  μ§„μΆœ ν›„ μ§„ν–‰λœ λ³Έμ„  λŒ€νšŒ


==========================================================

✏️ λŒ€νšŒ λŠλ‚€μ 
이번 λ³Έμ„  λŒ€νšŒλŠ” μ•½ 3μΌκ°„μ˜ 짧은 κΈ°κ°„μœΌλ‘œ μ§„ν–‰λ˜μ—ˆλŠ”λ°
λ¨Όμ € λ“œλŠ” 생각은 정말 ν›„νšŒ 없이 μ—΄μ‹¬νžˆ ν–ˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.
λͺ¨λΈλ„ 3μΌμ΄λΌλŠ” μ‹œκ°„λ™μ•ˆ 총 400번 제좜이 κ°€λŠ₯ν–ˆλŠ”λ°
혼자 380번 이상을 μ œμΆœν–ˆμ—ˆμŠ΅λ‹ˆλ‹€.
정말 μ—΄μ‹¬νžˆ ν–ˆμ—ˆκ³  λ§ˆμ§€λ§‰λ‚ μ—λŠ” μ½”λ”©ν•˜λ‹€κ°€ 코피도 μ—¬λŸ¬λ²ˆ λ‚¬μ—ˆμŠ΅λ‹ˆλ‹€..
이번 λŒ€νšŒλŠ” λŒ€νšŒμ˜ 배경에 λ”°λ₯Έ κ°€μ„€ 섀정을 초점으둜 μ§„ν–‰ν–ˆμŠ΅λ‹ˆλ‹€.
λ”°λΌμ„œ μ„€μ •ν–ˆλ˜ κ°€μ„€λ‘œ λͺ¨λΈλ§μ„ μ§„ν–‰ν–ˆλŠ”λ°,
κ·Έ 가섀이 λ§žμ•˜κΈ° λ•Œλ¬Έμ— μ•„λ§ˆ λ¦¬λ”λ³΄λ“œ(λͺ¨λΈ 정확도) λž­ν‚Ήλ„ 1등이지 μ•Šμ•˜μ„κΉŒ 라고 μƒκ°ν•˜λ©°
λ³Έμ„  λ°œν‘œ 평가 λ•Œ μ‹¬μ‚¬μœ„μ›λΆ„λ“€κ»˜ 잘 섀득이 λ˜μ§€ μ•Šμ•˜λ‚˜ 라고 μƒκ°ν•©λ‹ˆλ‹€.



**접근법** 이 λŒ€νšŒλŠ” 건섀 ν˜„μž₯μ—μ„œ ν”Œλ¦Ώ λ§€λ‹ˆμ§€λ¨ΌνŠΈ μ†”λ£¨μ…˜μ˜ ν•„μš”μ„±μ— 맞좰 μ΅œμ ν™”λœ μž₯λΉ„ 쑰합을 μ°ΎλŠ” 것이 λͺ©ν‘œμ˜€μŠ΅λ‹ˆλ‹€. μž₯λΉ„μ˜ μž‘μ—…λŸ‰μ„ μ˜ˆμΈ‘ν•˜λŠ” κ³Όμ •μ—μ„œ, μž‘μ—…μžλ§ˆλ‹€ 데이터 νŒ¨ν„΄μ΄ 달라 λ…Έμ΄μ¦ˆκ°€ λ°œμƒν–ˆλŠ”λ°, μ΄λŠ” μž‘μ—…μžμ˜ μ„±ν–₯, 예λ₯Ό λ“€μ–΄ μ†λ–¨λ¦Όμ΄λ‚˜ νŠΉμ • μŠ΅κ΄€ 등에 μ˜ν•œ 것이라고 νŒλ‹¨ν–ˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ 영ν–₯을 받지 μ•ŠλŠ” λͺ¨λΈμ„ κ°œλ°œν•˜κΈ° μœ„ν•΄ μ—¬λŸ¬ Step Sizeλ₯Ό ν™œμš©ν•΄ μΌλ°˜ν™” μ„±λŠ₯을 λ†’μ˜€μŠ΅λ‹ˆλ‹€. 이 μ•„μ΄λ””μ–΄λŠ” μ‹œκ³„μ—΄ λͺ¨λΈμ—μ„œ μœˆλ„μš° μ‚¬μ΄μ¦ˆλ₯Ό ν†΅ν•œ 앙상블 νš¨κ³Όμ™€ λΆ€νŠΈμŠ€νŠΈλž˜ν•‘ 기법을 μ μš©ν•œ κ²ƒμž…λ‹ˆλ‹€. λ°μ΄ν„°λŠ” λΉ„μ‹λ³„ν™”λ˜μ–΄ μžˆμ—ˆμ§€λ§Œ, EDAλ₯Ό 톡해 이λ₯Ό ꡴착기둜 κ°€μ •ν•˜κ³  도메인에 κΈ°λ°˜ν•œ Feature Engineering을 톡해 λͺ¨λΈμ˜ 예츑 정확도λ₯Ό κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€. κ·Έ κ²°κ³Ό, μž‘μ—…μžμ˜ 영ν–₯을 μ΅œμ†Œν™”ν•˜λ©΄μ„œλ„ μ •ν™•ν•œ μž‘μ—…λŸ‰μ„ μ˜ˆμΈ‘ν•  수 μžˆλŠ” λͺ¨λΈμ„ κ°œλ°œν–ˆκ³ , 예츑 정확도 그리고 μ΅œμ’… 1μœ„μ˜ μ„±κ³Όλ₯Ό κ±°λ‘μ—ˆμŠ΅λ‹ˆλ‹€.

1. λŒ€νšŒ κ°œμš” 및 λͺ©ν‘œ

  • 주제: κ±΄μ„€κΈ°κ³„μ˜ μ„Όμ„œ 데이터λ₯Ό ν™œμš©ν•˜μ—¬ μž‘μ—… μ€‘λŸ‰μ„ μ •ν™•ν•˜κ²Œ μ˜ˆμΈ‘ν•˜λŠ” AI λͺ¨λΈ 개발
  • λ°°κ²½: 효율적인 μžμ› κ΄€λ¦¬λŠ” 건섀 ν˜„μž₯μ—μ„œ λΉ„μš© 절감과 생산성 ν–₯상에 ν•„μˆ˜μ μž…λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μž‘μ—…μžμ˜ μˆ™λ ¨λ„λ‚˜ μš΄μ „ μ„±ν–₯은 μ„Όμ„œ 데이터에 영ν–₯을 미쳐 λͺ¨λΈ 예츑의 Noise둜 μž‘μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • λͺ©ν‘œ:
    • μž‘μ—…μžμ˜ κ°œλ³„μ μΈ 영ν–₯λ ₯을 μ΅œμ†Œν™”ν•˜κ³ , λ‹€μ–‘ν•œ μ„Όμ„œ 데이터λ₯Ό 톡합 λΆ„μ„ν•˜μ—¬ μ •ν™•ν•œ μž‘μ—… μ€‘λŸ‰ 예츑 λͺ¨λΈμ„ ꡬ좕
    • 이λ₯Ό 톡해 Fleet Management μ†”λ£¨μ…˜κ³Ό 같은 ν˜„μž₯ μžλ™ν™” μ‹œμŠ€ν…œμ— 적용 κ°€λŠ₯

2. 문제 μ •μ˜

(1) Overpred

  • 문제 μ„€λͺ…:
    • 예츑된 μž‘μ—… μ€‘λŸ‰μ΄ μ‹€μ œ μ€‘λŸ‰λ³΄λ‹€ 크게 예츑될 경우, 이후 μž₯λΉ„ λ°°μΉ˜μ™€ μž‘μ—… κ³„νšμ— λ¬Έμ œκ°€ λ°œμƒ
    • μ‹€μ œλ‘œ ν•„μš”ν•œ μž₯비보닀 더 λ§Žμ€ μž₯λΉ„κ°€ λ°°μΉ˜λ˜μ–΄ λΉ„νš¨μœ¨μ  운용과 μžμ› λ‚­λΉ„λ₯Ό 초래
  • ν•΄κ²° λ°©ν–₯:
    • 예츑 λͺ¨λΈμ΄ κ³ΌλŒ€ 예츑(Overprediction) 문제λ₯Ό μ΅œμ†Œν™”ν•˜λ„λ‘ 손싀 ν•¨μˆ˜λ₯Ό μ„€κ³„ν•˜κ³ , λͺ¨λΈμ˜ 평가 μ§€ν‘œμ— 반영

(2) μž‘μ—…μž 영ν–₯λ ₯ 문제

  • 문제 μ„€λͺ…:
    • λ™μΌν•œ μ„Όμ„œ 데이터에도 λΆˆκ΅¬ν•˜κ³ , μž‘μ—…μžμ˜ μš΄μ „ μ„±ν–₯에 따라 λ‹€λ₯Έ 행동 νŒ¨ν„΄μ΄ λ‚˜νƒ€λ‚˜ Noise둜 μž‘μš©
    • μž‘μ—…μžμ˜ μˆ™λ ¨λ„ μ°¨μ΄λŠ” λͺ¨λΈμ΄ νŒ¨ν„΄μ„ μΌλ°˜ν™”ν•˜λŠ” 데 어렀움을 쀌
  • ν•΄κ²° λ°©ν–₯:
    • Window Transform 기법을 μ‚¬μš©ν•΄ μž‘μ—…μžμ˜ 영ν–₯을 μ΅œμ†Œν™”ν•˜κ³ , κ³ μ •λœ 길이의 μ‹œκ³„μ—΄ 데이터λ₯Ό μƒμ„±ν•˜μ—¬ λͺ¨λΈμ˜ ν•™μŠ΅ μ•ˆμ •μ„±μ„ λ†’μž„

3. 데이터 뢄석 (EDA)

(1) λΉ„μ‹λ³„ν™”λœ μ„Όμ„œ 데이터 뢄석 및 κ°€μ„€ μ„€μ •

  • 비식별화 문제: 제곡된 λ°μ΄ν„°λŠ” λΉ„μ‹λ³„ν™”λœ μ„Όμ„œ λ°μ΄ν„°λ‘œ, μž₯λΉ„ μœ ν˜•μ΄λ‚˜ μ„Όμ„œμ˜ 역할이 λͺ…ν™•νžˆ μ œκ³΅λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.
  • κ°€μ • μ„€μ •: 데이터λ₯Ό λΆ„μ„ν•˜κΈ° μœ„ν•΄ 비식별화 λ°μ΄ν„°μ˜ μ „λ°˜μ μΈ νŠΉμ„±μœΌλ‘œ λ¨Όμ € κ΅΄μ°©κΈ° λ°μ΄ν„°λ‘œ 가섀을 μ„€μ •ν•˜μ˜€μœΌλ©°, 일반적인 ꡴착기의 μ„Όμ„œ ꡬ성에 따라 λ‹€μŒκ³Ό 같은 가섀을 μ„Έμ› μŠ΅λ‹ˆλ‹€:
    • Sensor A: Boom
    • Sensor B: Body
    • Sensor C: Bucket
    • Sensor D: Arm

(2) κ°€μ„€ 검증

  • 검증 κ³Όμ •: PCA 뢄석과 μ‹œκ°ν™”λ₯Ό 톡해 각 μ„Όμ„œμ˜ 데이터 νŠΉμ„±κ³Ό κ²½ν–₯성을 λΆ„μ„ν–ˆμŠ΅λ‹ˆλ‹€.
    • κ²°κ³Ό: Sensor A와 CλŠ” μ€‘λŸ‰ μ˜ˆμΈ‘μ— μ€‘μš”ν•œ 역할을 ν•˜λ©°, Boomκ³Ό Bucket의 μ›€μ§μž„κ³Ό 관련성이 λ†’μ•˜μŠ΅λ‹ˆλ‹€.
    • Sensor B와 DλŠ” Body와 Arm의 μ›€μ§μž„μ„ λ°˜μ˜ν•˜λ©°, λ°˜λŒ€ κ²½ν–₯성을 보여 초기 가정이 μœ νš¨ν•¨μ„ ν™•μΈν–ˆμŠ΅λ‹ˆλ‹€.

(3) μ‹œκ³„μ—΄ λ°μ΄ν„°μ˜ ν•œκ³„ 뢄석

  • 문제 1: 짧은 Time Stamp 길이
    • μ‹œκ³„μ—΄ λͺ¨λΈμ€ κΈ΄ μ‹œν€€μŠ€μ—μ„œ νŒ¨ν„΄μ„ ν•™μŠ΅ν•˜λ„λ‘ μ„€κ³„λ˜μ—ˆμ§€λ§Œ, 이 λ°μ΄ν„°λŠ” 짧은 μ‹œν€€μŠ€λ‘œ 인해 λ³΅μž‘ν•œ 쒅속성을 ν•™μŠ΅ν•˜κΈ° 어렀움
  • 문제 2: μ‹œμž‘ μ‹œμ μ˜ 변동성
    • 데이터 μƒ˜ν”Œμ˜ μ‹œμž‘ μ‹œμ μ΄ μΌμ •ν•˜μ§€ μ•Šμ•„, μ‹œκ°„μ  μ»¨ν…μŠ€νŠΈκ°€ μƒμ‹€λ˜μ–΄ λͺ¨λΈ μ„±λŠ₯이 μ €ν•˜λ  κ°€λŠ₯μ„±
  • 문제 3: λΆ€μ‘±ν•œ ν›ˆλ ¨ 데이터셋
    • μ œν•œλœ μ–‘μ˜ ν•™μŠ΅ λ°μ΄ν„°λ‘œ 인해, λͺ¨λΈμ΄ μΌλ°˜ν™”ν•˜κΈ° μ–΄λ €μš΄ 상황 λ°œμƒ

4. λͺ¨λΈλ§ μ ‘κ·Ό 방법

(1) 데이터 ꡬ쑰 λ³€ν™˜ 및 λ¨Έμ‹ λŸ¬λ‹ λͺ¨λΈ 적용

  • μ‹œκ³„μ—΄ 데이터 λ³€ν™˜:
    • Transpose 적용: μ‹œκ³„μ—΄ ν˜•μ‹μ˜ 데이터λ₯Ό transposeν•˜μ—¬, μ‹œκ°„μ  정보가 κ°œλ³„ 인덱슀의 ν”Όμ²˜λ‘œ ν¬ν•¨λ˜λ„λ‘ λ³€ν™˜ν–ˆμŠ΅λ‹ˆλ‹€.
    • 효과: μ‹œκ°„ μˆœμ„œμ— μ˜μ‘΄ν•˜μ§€ μ•Šκ³ , λͺ¨λ“  μ‹œκ°„ 정보λ₯Ό κ°œλ³„ ν”Όμ²˜λ‘œ 닀루어, μ‹œκ³„μ—΄ λͺ¨λΈ λŒ€μ‹  일반적인 λ¨Έμ‹ λŸ¬λ‹ λͺ¨λΈμ—μ„œ ν•™μŠ΅ν•  수 μžˆλ„λ‘ 함

(2) λ¨Έμ‹ λŸ¬λ‹ λͺ¨λΈ (Machine Learning)

  • λͺ¨λΈ 선택: Random Forest, LightGBM, CatBoost λ“± λ‹€μ–‘ν•œ λͺ¨λΈμ„ μ‚¬μš©ν•΄ 앙상블
    • Ensembling & Stacking: λ‹€μ–‘ν•œ λͺ¨λΈμ„ κ²°ν•©ν•˜κ³ , Stacking 기법을 톡해 μ„±λŠ₯ κ·ΉλŒ€ν™”

5. ν”Όμ²˜ μ—”μ§€λ‹ˆμ–΄λ§ (Feature Engineering)

(1) Dynamic Features: μ„Όμ„œ λ³€ν™”μœ¨ 및 가속도

  • 가속도 계산: μ„Όμ„œ κ°’μ˜ λ³€ν™”μœ¨μ„ 뢄석해, 동적 λΆ€ν•˜μ˜ λ³€ν™”λ₯Ό 반영
  • νšŒμ „ 토크: Boomκ³Ό Arm의 각도 λ³€ν™”μœ¨μ„ κ³„μ‚°ν•˜μ—¬, μ€‘λŸ‰ μ˜ˆμΈ‘μ— μ€‘μš”ν•œ νšŒμ „μ  힘의 효과 반영

(2) Time-Based Features: μ‹œκ°„ 기반 ν”Όμ²˜ 생성

  • Window Transform: 5초 λ‹¨μœ„μ˜ κ³ μ •λœ μœˆλ„μš°λ‘œ λ³€ν™˜ν•˜μ—¬, μž‘μ—…μžμ˜ μš΄μ „ μ„±ν–₯에 독립적인 데이터λ₯Ό 생성
  • Seasonality Features: μ‹œκ°„μ  νŒ¨ν„΄μ„ λ°˜μ˜ν•˜κΈ° μœ„ν•΄, sin 및 cos λ³€ν™˜μ„ μ‚¬μš©ν•΄ 주기성을 포착

6. λͺ¨λΈ 해석 및 κ²°κ³Ό

  • μ„Όμ„œ 해석:
    • Sensor A, C: μ€‘λŸ‰μ΄ λ†’μ•„μ§ˆμˆ˜λ‘ 값이 λ†’κ²Œ λ‚˜νƒ€λ‚˜λ©°, Boomκ³Ό Bucket의 μ›€μ§μž„κ³Ό μ—°κ΄€
    • Sensor B, D: λ°˜λŒ€μ˜ κ²½ν–₯을 보이며, 주둜 Armκ³Ό Body의 μ›€μ§μž„μ„ 반영
  • λͺ¨λΈ 평가: Overpred 문제λ₯Ό μ΅œμ†Œν™”ν•˜κ³ , μ‹€μ œ μž‘μ—… μ€‘λŸ‰κ³Ό 높은 상관관계λ₯Ό λ³΄μ΄λŠ” 예츑 κ²°κ³Ό λ„μΆœ

7. ν™œμš© λ°©μ•ˆ 및 κΈ°λŒ€ 효과

(1) Fleet Management μ†”λ£¨μ…˜

  • 예츑 λͺ¨λΈμ„ 톡해 μž₯λΉ„ 운용의 νš¨μœ¨μ„±μ„ κ·ΉλŒ€ν™”ν•˜κ³ , μž‘μ—… κ³„νš μˆ˜λ¦½μ— κΈ°μ—¬
  • 이상 탐지 κΈ°λŠ₯: μ„Όμ„œ 데이터λ₯Ό 톡해 κΈ°κ³„μ˜ 이상 μ—¬λΆ€λ₯Ό 사전에 κ°μ§€ν•˜μ—¬, μœ μ§€λ³΄μˆ˜ λΉ„μš© 절감

(2) μžλ™ν™” κ΅΄μ°©κΈ° 개발

  • μ •ν™•ν•œ μ€‘λŸ‰ μ˜ˆμΈ‘μ„ 톡해, AI 기반 μžλ™ν™” κ΅΄μ°©κΈ° 개발 κ°€λŠ₯μ„± μ œμ‹œ
  • μ•ˆμ „μ„± ν–₯상: μ€‘λŸ‰ μ˜ˆμΈ‘μ„ ν†΅ν•œ μž‘μ—…μ˜ μ•ˆμ „μ„±μ„ κ°•ν™”ν•˜κ³ , 사고 μœ„ν—˜μ„ μ€„μž„



===========================================================================

Data Info


  • train.csv 각 μš΄μ „μžμ˜ μž‘μ—… μ€‘λŸ‰ 정보가 μ΄λ¦„μœΌλ‘œ 주어진 csv 16개(0, 100, 200, 300... 902 kg)
    -> λΉ„μ‹λ³„ν™”λœ μ„Όμ„œ 및 μ‹œκ·Έλ„ 데이터

  • test.csv
    μ•½ 4000μ—¬ μš΄μ „μžμ˜ μ„Όμ„œ 및 μ‹œκ·Έλ„ 데이터

  • sample_submission.csv
    각 μš΄μ „μžμ— λŒ€ν•œ μž‘μ—… μ€‘λŸ‰ 예츑


About

πŸšœκ±΄μ„€ ν˜„μž₯ 운용 νš¨μœ¨ν™”λ₯Ό μœ„ν•œ μž‘μ—…μžμ˜ μš΄μ „ μ„±ν–₯κ³Ό μˆ™λ ¨λ„μ— 영ν–₯을 받지 μ•Šκ³  μ •ν™•ν•œ μž‘μ—… μ€‘λŸ‰μ„ μ˜ˆμΈ‘ν•  수 μžˆλŠ” λͺ¨λΈμ„ κ°œλ°œν•˜λŠ” λŒ€νšŒπŸ₯‡(HD ν˜„λŒ€)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published