AI Challenge for Industrial Control System Threat Detection

산업 | 국가보안기술연구소 | 인공지능 AI 활용 위협 탐지 알고리즘 | TaPR | 비지도학습

  • moneyIcon Prize : 총 2,000만원
  • 0명 마감


[Maximum number of submissions and maximum number of teams]

  • Maximum number of submissions : 3 times per day
  • Maximum number of a team : 5 persons


[Participation]

  • For an individual: Clicking the ‘Join Competition’ button, then agreeing with the terms completes the participation process. The individual submits results in the submission tab without using the 'Team' tab.
  • For a team: To join as a team, all team members should go through the same process as an individual, and the team leader adds members through the 'Team' tab. The team leader or team member can submit results. (Check for Team Merge Policy in 'Team' tab for details).
  • Cannot submit in duplicate both as an individual and as a member of a team.


[Dataset]

  • Only use the HAI dataset for the competition
  • Training set: Data collections in which the control system is operating normally.
  • Validation set: Data collections in which the control system was attacked, including attack labels for validation. 
  • Test set: Data collections in which the control system was attacked, not including attack labels.


[Competition Flow]

1. Downloading the dataset for the competition from the official homepage

2. Training the model using only the training set.

3. Validating the model with an evaluation tool (TaPR) and validation set.

  • See the "TaPR Manual" post in the discussion tab for a detailed description of the evaluation tool.
  • Evaluate using only the evaluation function, etapr.evaluate_haicon() (Refer to the baseline code in the code-sharing tab).

4. Submitting each detection result for the test set in the form “sample_submission.csv”

  • 1st column - time should match the time of each test set.
  • 2nd column - mark as 1 if there is an anomaly, and 0 if not.

5. Evaluating: 

  • Public Score System scores the portion(50%) of the detection results and the score is immediately updated on the leaderboard.
  • Private Score System scores the final test submission and the score will be published at the end of the competition.
  • You must select only one outcome for private scoring before the end of the competition.

6. Judging:

  • The top 15 teams in the private score are tested for disqualification through documents and presentations.
  • The winners are finally determined according to the private scores.
  • Special prizes are awarded in duplicate by evaluating qualitative excellence (creativity and sharing of failures, etc).


[Restrictions]

  • You should not use the validation or test data in model training.
  • e.g., a case of sampling normal data in the validation data and using it in model training
  • You should not use the future data beyond the prediction time in both model validation and evaluation(data leakage).


[Code and Documentation Submission]

  • Winner candidates (top 1st to 15th) should submit the source code and the documentation before the due date.
  • Source code submission:
  • The final result can be reproduced.
  • Include the list of all dependencies in a requirements.txt file
  • Include a file (README.txt) containing code descriptions and usage instructions.
  • Include data input/output path ('./data')
  • file extension: .R, .rmd, .py, .ipynb
  • encoding: UTF-8
  • Documentation submission:
  • Please refer to the separately provided documentation guide.


[Discussion/Question]

  • DACON support will answer questions directly related to operational issues for the competition and the potential data anomalies
  • Discuss any issues other than the above question with the other participants in the 'Talk' tab. For example: how to deal with missing values, how to configure models, Etc.
  • Please post inquiries in the 'Inquiry' tab to get answered by DACON.




Main Event Schedule


[Maximum number of submissions and maximum number of teams]

  • Maximum number of submissions : 3 times per day
  • Maximum number of a team : 5 persons


[Participation]

  • For an individual: Clicking the ‘Join Competition’ button, then agreeing with the terms completes the participation process. The individual submits results in the submission tab without using the 'Team' tab.
  • For a team: To join as a team, all team members should go through the same process as an individual, and the team leader adds members through the 'Team' tab. The team leader or team member can submit results. (Check for Team Merge Policy in 'Team' tab for details).
  • Cannot submit in duplicate both as an individual and as a member of a team.


[Dataset]

  • Only use the HAI dataset for the competition
  • Training set: Data collections in which the control system is operating normally.
  • Validation set: Data collections in which the control system was attacked, including attack labels for validation. 
  • Test set: Data collections in which the control system was attacked, not including attack labels.


[Competition Flow]

1. Downloading the dataset for the competition from the official homepage

2. Training the model using only the training set.

3. Validating the model with an evaluation tool (TaPR) and validation set.

  • See the "TaPR Manual" post in the discussion tab for a detailed description of the evaluation tool.
  • Evaluate using only the evaluation function, etapr.evaluate_haicon() (Refer to the baseline code in the code-sharing tab).

4. Submitting each detection result for the test set in the form “sample_submission.csv”

  • 1st column - time should match the time of each test set.
  • 2nd column - mark as 1 if there is an anomaly, and 0 if not.

5. Evaluating: 

  • Public Score System scores the portion(50%) of the detection results and the score is immediately updated on the leaderboard.
  • Private Score System scores the final test submission and the score will be published at the end of the competition.
  • You must select only one outcome for private scoring before the end of the competition.

6. Judging:

  • The top 15 teams in the private score are tested for disqualification through documents and presentations.
  • The winners are finally determined according to the private scores.
  • Special prizes are awarded in duplicate by evaluating qualitative excellence (creativity and sharing of failures, etc).


[Restrictions]

  • You should not use the validation or test data in model training.
  • e.g., a case of sampling normal data in the validation data and using it in model training
  • You should not use the future data beyond the prediction time in both model validation and evaluation(data leakage).


[Code and Documentation Submission]

  • Winner candidates (top 1st to 15th) should submit the source code and the documentation before the due date.
  • Source code submission:
  • The final result can be reproduced.
  • Include the list of all dependencies in a requirements.txt file
  • Include a file (README.txt) containing code descriptions and usage instructions.
  • Include data input/output path ('./data')
  • file extension: .R, .rmd, .py, .ipynb
  • encoding: UTF-8
  • Documentation submission:
  • Please refer to the separately provided documentation guide.


[Discussion/Question]

  • DACON support will answer questions directly related to operational issues for the competition and the potential data anomalies
  • Discuss any issues other than the above question with the other participants in the 'Talk' tab. For example: how to deal with missing values, how to configure models, Etc.
  • Please post inquiries in the 'Inquiry' tab to get answered by DACON.




Main Event Schedule