정보) 컴퓨터공학과 과목 맛보기 - 3. 인공지능(2)
1편에서는 어떤 내용을 배우나 살펴봤고
2편에서는 실제로 나왔던 과제에 대해 간단히 살펴보겠습니다.
------------------------------------------------
아무래도 인공지능에 대해 처음 공부하는 학생들이 많은 만큼,
간단한 분류 모델을 만들어보는 것이 과제였습니다.
이것도 3년 전에 했던 과제였던 만큼 지금 보면 많이 뒤쳐진 걸 수도 있습니다.
Chest X-ray Image가 모여있는 Dataset을
Bacterial Pneumonia / Viral Pneumonia / Normal으로 분류하는 게 미션입니다.
(이런 사진이 모여 있다고 생각하시면 됩니다.)
저도 왜 저게 저렇게 분류되는지는 모릅니다.
아마 의대 다니면 알게 되겠죠..
학습을 시킬 때는 균형 잡힌 학습이 중요합니다.
우리가 수능 공부를 할 때도 수1, 수2, 선택 과목 모두 골고루 하지 않습니까?
이 친구도 각 분류를 고루 학습해야 분류도 잘 할 수 있습니다.
과제에서 주어진 데이터셋을 까보니까 왼쪽처럼 불균형하더군요.
그래서 데이터가 적은 쪽의 사진을 좌/우를 반전시켜서 뻥튀기를 해줬습니다.
그리고 학습 시키기 전에 X-ray 사진의 크기를 통일해줍니다.
전부 제각각이면 이거로 학습을 할 수가 없거든요.
인공지능 학습에서는 알고리즘을 선택하는 것도 중요하지만
위와 같은 데이터 전처리(Preprocess) 과정도 중요합니다.
보통 이런 이미지 관련 문제는 CNN으로 해결합니다.
CNN은 진짜 간단히 말하면 사진에서 특징을 뽑아내서 학습을 하는 알고리즘입니다.
근데 전 CNN 말고 다른 건 없을까 싶더라고요. 도대체 무슨 깡이었는지
관련해서 논문을 읽다가 이런 걸 발견해서 한번 써봤습니다.
간단히 말하면 위에 CNN 구조에서 맨 마지막 단계인 FC Layer 대신에
다른 지도 학습 알고리즘을 갖다 쓴다는 내용입니다.
이렇게 해봤더니 정확도가 87.48% 나왔네요.
나쁘지는 않은데, 별로 좋지도 않은 결과가 나왔습니다.
역시 안 쓰는 이유가
그 다음으로는 그냥 CNN 써봤습니다.
저는 RTX 3060이라는 좋지도 나쁘지도 않은 그래픽카드를 사용 중이라서
그렇게 성능이 좋고, 구조가 복잡한 모델로 학습을 시키지는 못 했습니다.
그냥 간단한 ResNet이라는 모델을 갖다 사용해봤습니다.
NN에서는 Layer가 깊어질 수록 여러 역효과가 나타나는데,
Residual Block이라는 것을 통해 문제를 해결한 모델입니다.
이게 거의 10년 다 되어가니까.. 진짜 오래 된 모델이긴 합니다.
원래 그냥 만들어진 거 갖다 쓰면 되긴 한데 연습도 할 겸 그냥 만들어봤습니다.
학습을 진행할 때마다 Loss는 줄고, Accuracy는 증가하는 걸 볼 수 있습니다.
Loss는 정답에서 얼마나 벗어났는 지를 보여주는 지표라고 보시면 됩니다.
값이 작을 수록 좋겠죠?
2023학년도 수능 국어 '최소제곱법' 지문 아시죠?
인공지능의 학습이란 간단히 말해 이 '편차 제곱', 즉 Loss를 줄여나가는 거라고 보시면 됩니다.
(물론 손실 함수에는 Mean Squared Error 말고도 많이 있습니다.)
정확도가 93.11% 나왔군요.
ResNet 중에서도 제일 간단한 ResNet18을 갖다 써봤는데도 많이 올랐네요.
------------------------------------------------
이 과제는 진짜 처음 인공지능을 배우는 학생들에게
인공지능이 무엇인지 공부해보라는 취지로 내준 과제라고 생각이 듭니다.
이 과제하면서 의료 AI와 같은 쪽에 관심을 갖게 되었고
원래는 복학하면 관련 랩실에 들어가 볼까 했었는데
요런거 연구하는.. 홈페이지 (링크)
어쩌다 보니 의대에 와있군요.
역시 AI보다는 Domain Knowledge를 배우는게
영상이 제 성격에도 딱 맞을 거 같은데 초인기과이다 보니.. 쉽지 않겠죠
아무튼 오늘 글은 여기까지고요.
나중에 시간 날 때 다시 돌아오겠습니다.
제가 적은 글 (클릭하면 연결)
3. 컴퓨터공학과 과목 맛보기 - 2. 시스템프로그래밍(1)
4. 컴퓨터공학과 과목 맛보기 - 2. 시스템프로그래밍(2)
(현재 글) 6. 컴퓨터공학과 과목 맛보기 - 3. 인공지능(2)
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
설대 가능한곳이 있을까요..(문이과 상관없습니다..) 14
설대식 내신반영점수는 잘 모르는데 2점대니까 BB라고 가정하면 인문 396.8 자연...
-
안녕하세요:) 원서철 눈팅하다가 정보를 좀 얻고자하여 글을 작성하게 되었습니다!...
-
이분 똥싸고 튐.
-
점수가 있다는게 확실함? 뭐 오르비 찾아보니까 소수에게만 가산점 준다 이런 말도...
-
수능 직전 2주 동안 공부를 안 한다면 성적에 어느 정도 영향을 미칠까. 누군가...
-
서울대 사범 아까 지원했는데 면접있는거 방금 알았다 아 부모님한테 뭐라 말하지
-
문득 든 생각인데 좋은 대학의 기준이 뭘까요? 좋은 환경과 교수가 갖추어진 대학?...
-
첫날부터 썼는데 경쟁률 4.5대 나오네요...
-
최초합격발표일 언젠지 아시나요? 그리고 최조합격발표일에 예비번호도나오는거죠?
-
가즈아? 가즈아!!!!!!!!!! 성글경? 아니다 답은 설대 스나다 가즈아!!!!!
-
2주 고정표본은 2
가능성이두개밖에없지않나요? 1.이미 접수 완료 2.수시납치 2주고정표본이 빠질...
-
3월누백 3.5 4월누백 0.2 6월누백 0.65 서울대목표하구요 이번에 진짜...
-
설간호 0
면접보나요?
-
서울대 공대 9
고2인데 서울대 공대를 가고싶어서 과탐을 절하는데요 물1랑 지2또는 생2를 할려고...
-
서울대 가고 싶군요 13
ㅈㄱㄴ
-
원래는 설대 갈 맘이 없었는데 점수가 많이 오르다보니까 학교에서 담임선생님이...
-
서울대 기균 자기소개서 도움 좀 주세요!!! 선배님들~~ 0
안녕하세요.. 저는 이번에 3학년이 되는 남학생입니다..선생님께서 제게 기균을...
쓱 그림만 훑어봤는데 어질어질하네요
머신러닝 장점: 코딩한 노력에 비해 결과가 간지나서 뽕찬다
단…점? 데이터 구하고 전처리가 빡센데 안하면 결과가 간지나지 않는다
그니까 사이버춘식이를 만든다는거죠?
Convolution 맛있다
3060 ㄱㅁ
ㅇㅇㄱ
내년부터는요 저랑요! 의학공부를요! 같이해요!