인공지능이 깃허브에 올려진 소스들에서 자동으로 버그 수정
본격 프로그래머 밥그릇 깨트리기 시작.
dd(210.220)
2016-04-01 15:16
추천 0
댓글 6
다른 게시글
-
이게 unf 소켓이에얌 [1]ㅇㄷ(155.230) | 16.04.01추천 0
-
기업 채용 과정 중 결과 발표에 대한 의문점 [1]asd(119.192) | 16.04.01추천 0
-
가장 훌륭한 리눅스 데스크톱환경이 뭐라 생각하냐 [1]익명(203.128) | 16.04.01추천 0
-
아두이노 우노로 센서 리딩하기 좀 도와줘얌 [2]ㅇㄷ(155.230) | 16.04.01추천 0
-
윤성우 C++ VS Jumping into C++ [2]ㅇㅅㅇ(49.169) | 16.04.01추천 0
-
띠동갑 여자애를 짝사랑하고 있습니다 [3]에어로홍(aerohong) | 16.04.01추천 0
-
아프리카 해킹프로그램 안들키고 어떻게 파냐 [2]익명(222.233) | 16.04.01추천 0
-
형들 웹프로그래밍 강의 들을만한곳 어디 없음? [3]익명(125.142) | 16.04.01추천 0
-
순서도(flowchart) 만드는건데 순서도좀 만들어주라 ㅠㅠ [4]익명(61.74) | 16.04.01추천 0
-
요즘 프로그래밍 재밌어서 살 맛 난다 ㅋㅋ [2]익명(112.170) | 16.04.01추천 1
문서화 제대로 안해놓고 코드로 갑질하던 새끼들 다 짤라버릴 수 있음 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
http://people.csail.mit.edu/fanl/papers/prophet-popl16.pdf
원본 논문
10분정도 훑어봤는데 Patch Generation System이라는게 꾸준히 연구되던 시스템인 거 같음. 2007년에 만들어진 시스템도 있고...근데 Prophet은 처음으로 기계학습 기술이 적용된 패치생성시스템인 듯 ㅇㅇ 어떤 버그를 수정하는 패치가 올바른 패치인지(버그를 제대로 수정하는지)를 확인하는 방식에서 기계학습이 적용된 듯. 기본 원리는 Supervised Learning같고 과거의 올바른 패치(깃헙에 올라온 패치들)에서 공통된 특성을 추출해서 일단 패치를 존나 여러개 생성하고(Patch space) -> 과거의 올바른 패치들을 바탕으로 적당한 패치를 선택한다. 가 기본 알고리즘인 거 같음 ㅎㅎ 물론 존나 대충봐서 반만 믿으셈
그래서 이런 기술로는 문서화 제대로 안해놓고 코드로 갑질하던 새끼들을 다 짜르기는 불가능 할 거라고 생각...왜냐면 프로그램 버그라는게 프로그램이 구현하는 모델(명세)와 다른 동작을 하는 부분이잖아? 패치는 그런 버그를 다시 원래 명세대로 돌아가도록 하는 수정이고...원래의 명세라는건 기존의 프로그래머가 만든 거고 그 명세를 정확히 문서화하지 않았다면 해당 프로그래머 없이 코드만으로 명세를 파악해내기는 매우 어려울 것으로 생각함(다른 차원의 연구분야겠지). 명세를 파악하기 어려우니 버그에 대한 패치를 작성하기도 어려울 거고 그 패치가 올바른지 확인하는 기계학습 기술을 적용하기는 더더욱 어려울 것이라고 봄
설명충 ㄱㅅ