자기개발/학부연구생

DeepXplore(딥러닝 White box Testing) 논문 읽기

시작하며

저는 2020-1학기부터 실시간 소프트웨어공학 연구실 에서 학부연구생을 하고 있습니다. 당시 소프트웨어 공학에 흥미가 많아서 최신 연구 동향을 알기 위해서, 또한 연구란 무엇인지 경험하기 위해서 들어가게 되었습니다.
현재 거창한 연구를 하고있진 않고 간단한 논문을 읽고 내용을 정리하여 발표하는 활동을 하고 있습니다.

2020-1학기에는 도메인 주도 개발에 대한 스터디를 진행하였고, 여름방학에는 DeepXplore 라는 논문을 읽고 내용을 정리하였습니다. 딥러닝 시스템의 White box teseting 관련 연구중에서 초창기에 나온 논문이라는 석사분의 추천으로 읽게 되었습니다.

이러한 내용을 정리해 .학교의 연구활동 발표대회 에 나가기도 하였습니다.

사실 논문에 대한 간단한 요약을 하려 했는데, 연구 결과는 위 이미지로 어느정도 정리 된 것 같네요.

그래서 이 글에서는 느낀 점 위주로 적어보자고 합시다.

느낀 점

논문에 대해서

  • 우선 논문을 하나 읽어봤다는 경험이 좋았습니다. 비록 다른 바쁜일이 있어서 제가 예상한 것 보다 시간이 오래 걸렸지만, 상당히 재미난 경험이었습니다.
    • 딥러닝에 대한 기본적인 이해가 있어서 이런 쪽에서 막히지 않았지만, 이러한 DL 시스템을 공격하는 다양한 기법에 대해서 알게 되었습니다.
    • 이런 문제를 해결하기 위해서 이러한 접근방식을 쓸 수 있다는 것에서 조금 신기했습니다.
    • 딥러닝은 경험적인 결과를 가지고 연구가 많이 진행된다고 알고 있는데, 이것도 이러한 가설을 세우고 진행했더니, 실제로 결과가 우리 예상처럼 나왔다. 는 식으로 논리가 전개됩니다. 테스팅에서도 똑같이 적용되는 점을 느꼈습니다.

개인적으로

  • 제가 생각해도 개선의 여지가 있겠다는 생각이 들었습니다. Threshold고 커버리지 정의고 발전의 가능성이 보였습니다. 아직은 이 분야가 굉장히 핫하다고 들었는데, 그 때문일지도 모르겠습니다.
  • 아직은 관련 주제를 더 읽어보고 싶다는 생각이 들었습니다.
  • 아직은 영어 리딩 실력이 부족하다는 생각이 들었습니다. 일본어처럼 자연스레 읽을 수는 없는 수준인 것 같습니다.

그 후

  • DeepXplore를 개선했다고 보여지는 .DeepGauge 라는 논문을 현재 읽고 있습니다. 이번주 랩실 세미나에서 정리해서 발표할 예정인데, 정리하게 되면 다시 글을 올리겠습니다.
  • 좀 읽다보니 빈출 영어단어가 많이 보여서 정리하면서 읽고 있습니다. 기술영어랑 같이 논문영어라는게 있나봅니다.