진동데이터 활용 충돌체 탐지 AI 경진대회

알고리즘 | 정형 | 회귀 | 산업 | MSPE

  • moneyIcon Prize : 총 600만원
  • 835명 마감

※ 2020.06.10 20:30 외부데이터 규칙 변경


1. 평가

- 평가 지표

import numpy as np

def kaeri_metric(y_true, y_pred):
    '''
    y_true: dataframe with true values of X,Y,M,V
    y_pred: dataframe with pred values of X,Y,M,V
    
    return: KAERI metric
    '''
    
    return 0.5 * E1(y_true, y_pred) + 0.5 * E2(y_true, y_pred)


### E1과 E2는 아래에 정의됨 ###

def E1(y_true, y_pred):
    '''
    y_true: dataframe with true values of X,Y,M,V
    y_pred: dataframe with pred values of X,Y,M,V
    
    return: distance error normalized with 2e+04
    '''
    
    _t, _p = np.array(y_true)[:,:2], np.array(y_pred)[:,:2]
    
    return np.mean(np.sum(np.square(_t - _p), axis = 1) / 2e+04)


def E2(y_true, y_pred):
    '''
    y_true: dataframe with true values of X,Y,M,V
    y_pred: dataframe with pred values of X,Y,M,V
    
    return: sum of mass and velocity's mean squared percentage error
    '''
    
    _t, _p = np.array(y_true)[:,2:], np.array(y_pred)[:,2:]
    
    
    return np.mean(np.sum(np.square((_t - _p) / (_t + 1e-06)), axis = 1))

- 가채점 순위 (Public Score) : test 데이터의 30% 데이터로 채점

- 최종 순위 (Private Score) : Public Score에서 사용하지 않은 나머지 70% 데이터로 채점. 리더보드 운영 기간 중에는 확인할 수 없으며, 대회 종료 후 공개.

- 최종 순위는 선택된 파일 중에서 채점되므로, 참가자는 제출 창에서 자신이 최종적으로 채점 받고 싶은 파일을 선택

- 리더보드 운영 종료 이후 Private Score 랭킹이 가장 높은 참가자 10팀은 양식에 맞는 코드와 함께 코드 내용을 설명하는 PPT 제출. (대회 종료 후 dacon@dacon.io를 통해 안내 예정)

- 대회 직후 공개되는 Private Score 랭킹은 최종 순위가 아니며 코드 검증 후 최종 수상자가 결정.


2. 외부 데이터

- 오직 대회용 데이터셋만을 활용해야 함

- Pre-trained 모델은 사용 가능하지만 아래의 제약 조건을 준수해야 함

  - 공공(public) 데이터만을 활용하여 사전 학습(pretrain) 되어야 함 (자체 생산한 in-house 데이터 사용 금지)

  - 공공(public) 데이터 중 시뮬레이션을 통해 생성된 충격신호 데이터 사용 불가 

  - 사전 학습한 모델은 사용에 법적인 제약이 없어야 함



3. 참가 방법

- 개인 참가 방법 : 팀 신청 없이, 자유롭게 제출 창에서 제출 가능  

- 팀 참가 방법 : 팀 배너에서 가능, 상세 내용은 팀 배너에서 팀 병합 정책 확인

* 하나의 대회에는 하나의 팀으로만 등록이 가능

* 팀의 수상 요건 충족 시 팀의 대표가 수상


4. 코드 및 PPT

- 입상자는 데이콘에서 안내한 양식에 맞추어 코드 제출

- R user는 R or .rmd. Python user는 .py or .ipynb로 제출

- 코드에 ‘/data’ 데이터 입/출력 경로 포함

- 전체 프로세스를 가독성 있게 정리하여 주석 포함 하나의 파일로 제출

- 제출 코드는 리더보드 점수를 복원할 수 있어야 함

- 모든 코드는 오류 없이 실행되어야 함 (라이브러리 로딩 코드 포함)

- 코드와 주석의 인코딩은 UTF-8 사용




Main Event Schedule

  1. 06.01

    대회 시작

  2. 06.26

    팀 병합 마감

  3. 07.10

    17:59 대회 종료

  4. 07.11

    코드 제출 시작

  5. 07.17

    코드 제출 마감

  6. 07.24

    최종 수상자 발표

※ 2020.06.10 20:30 외부데이터 규칙 변경


1. 평가

- 평가 지표

import numpy as np

def kaeri_metric(y_true, y_pred):
    '''
    y_true: dataframe with true values of X,Y,M,V
    y_pred: dataframe with pred values of X,Y,M,V
    
    return: KAERI metric
    '''
    
    return 0.5 * E1(y_true, y_pred) + 0.5 * E2(y_true, y_pred)


### E1과 E2는 아래에 정의됨 ###

def E1(y_true, y_pred):
    '''
    y_true: dataframe with true values of X,Y,M,V
    y_pred: dataframe with pred values of X,Y,M,V
    
    return: distance error normalized with 2e+04
    '''
    
    _t, _p = np.array(y_true)[:,:2], np.array(y_pred)[:,:2]
    
    return np.mean(np.sum(np.square(_t - _p), axis = 1) / 2e+04)


def E2(y_true, y_pred):
    '''
    y_true: dataframe with true values of X,Y,M,V
    y_pred: dataframe with pred values of X,Y,M,V
    
    return: sum of mass and velocity's mean squared percentage error
    '''
    
    _t, _p = np.array(y_true)[:,2:], np.array(y_pred)[:,2:]
    
    
    return np.mean(np.sum(np.square((_t - _p) / (_t + 1e-06)), axis = 1))

- 가채점 순위 (Public Score) : test 데이터의 30% 데이터로 채점

- 최종 순위 (Private Score) : Public Score에서 사용하지 않은 나머지 70% 데이터로 채점. 리더보드 운영 기간 중에는 확인할 수 없으며, 대회 종료 후 공개.

- 최종 순위는 선택된 파일 중에서 채점되므로, 참가자는 제출 창에서 자신이 최종적으로 채점 받고 싶은 파일을 선택

- 리더보드 운영 종료 이후 Private Score 랭킹이 가장 높은 참가자 10팀은 양식에 맞는 코드와 함께 코드 내용을 설명하는 PPT 제출. (대회 종료 후 dacon@dacon.io를 통해 안내 예정)

- 대회 직후 공개되는 Private Score 랭킹은 최종 순위가 아니며 코드 검증 후 최종 수상자가 결정.


2. 외부 데이터

- 오직 대회용 데이터셋만을 활용해야 함

- Pre-trained 모델은 사용 가능하지만 아래의 제약 조건을 준수해야 함

  - 공공(public) 데이터만을 활용하여 사전 학습(pretrain) 되어야 함 (자체 생산한 in-house 데이터 사용 금지)

  - 공공(public) 데이터 중 시뮬레이션을 통해 생성된 충격신호 데이터 사용 불가 

  - 사전 학습한 모델은 사용에 법적인 제약이 없어야 함



3. 참가 방법

- 개인 참가 방법 : 팀 신청 없이, 자유롭게 제출 창에서 제출 가능  

- 팀 참가 방법 : 팀 배너에서 가능, 상세 내용은 팀 배너에서 팀 병합 정책 확인

* 하나의 대회에는 하나의 팀으로만 등록이 가능

* 팀의 수상 요건 충족 시 팀의 대표가 수상


4. 코드 및 PPT

- 입상자는 데이콘에서 안내한 양식에 맞추어 코드 제출

- R user는 R or .rmd. Python user는 .py or .ipynb로 제출

- 코드에 ‘/data’ 데이터 입/출력 경로 포함

- 전체 프로세스를 가독성 있게 정리하여 주석 포함 하나의 파일로 제출

- 제출 코드는 리더보드 점수를 복원할 수 있어야 함

- 모든 코드는 오류 없이 실행되어야 함 (라이브러리 로딩 코드 포함)

- 코드와 주석의 인코딩은 UTF-8 사용




Main Event Schedule

  1. 06.01

    대회 시작
  2. 06.26

    팀 병합 마감
  3. 07.10

    17:59 대회 종료
  4. 07.11

    코드 제출 시작
  5. 07.17

    코드 제출 마감
  6. 07.24

    최종 수상자 발표