일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 혼공머신
- 정수와유리수
- 데이터베이스
- SQL
- 중학1-1
- 코딩테스트
- C++
- 텍스트마이닝
- 연습문제
- 딥러닝
- JSP/Servlet
- numpy/pandas
- pandas
- 컴퓨터구조
- 머신러닝
- 컴퓨터비전
- 데이터분석
- html/css
- 운영체제
- 중학수학
- 자바
- CSS
- 파이썬라이브러리
- 자바 실습
- 데이터입출력구현
- 파이썬
- CNN
- 영어공부
- 정보처리기사필기
- 정보처리기사실기
- Today
- Total
목록딥러닝 (64)
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
어제 저녁에 이 단원과 영어 공부를 하려고 했는데 피곤하기도 하고 그냥 쉬고 싶었다. 역시 난 외부 활동을 하면 에너지가 많이 소진되는 걸 느낀다. 하지만 정말 가길 잘했다는 생각이 들었다. 오늘도 행사가 있지만 그냥 집에서 밀린 공부를 할 생각이다. 오늘까지 꼭 CNN을 마쳐야 이번주 일요일까지 RNN까지 진도를 나가 딥러닝 공부를 마칠 수 있을 것 같다.더이상 진도가 밀리면 다음 일정에 차질이 생길 테니까.평소보다 늦게 일어났지만 이제부터 다시 열심히 공부해볼 것이다. 객체 탐지에 대하여Object Detection 문제는 객체 탐지 또는 객체 검출이라고 번역하여 사용된다. 이미지를 인식하는 컴퓨터 비전 AI 기술이 가장 많이 응용되는 분야라고 말할 수 있다. 가장 대표적인 응용 분야로는 자율주행차를..
이이서 가위 바위 보 객체 탐지하는 실습을 진행해 보겠다. 아침 공부할 시간이 이제 30분도 남지 않아서 서둘러야겠다. YOLO v8 객체 탐지 실습해보기이제 불러온 가위 바위 보 객체 탐지 모델을 학습시킬 차례이다. data의 경로를 yaml에 가서 붙여 넣는데 줄이 너무 길기에 상대경로로 점을 찍어서 앞의 부분을 지우면 된다. 이 모델을 가져오는데 10분 정도 걸린다.너무 긴 관계로 일부만 캡처해 보았다. 모델 학습에 붙여 넣을 경로 runs에 가면 train에 이러한 파일이 들어있다. weights에 들어가면 이러한 파일이 들어있는데 베스트 모델을 담아놓은 것이 best.pt이다. 이 안에 있는 weights 안의 best.pt의 경로를 복사하여 괄호 안에 넣는다. ..
AICON 행사에 가려면 아침에 공부할 시간이 1시간 반밖에 남지 않았다. 그래도 수업 한 시간 분량은 공부할 수 있을 것 같아 객체 탐지 공부를 이어서 하려고 한다.그리고 행사 끝나고 나서 집에 와서 저녁에 영어 공부 마치고 나서 하면 분명 오늘 객체 탐지 단원까지는 마칠 수 있을 것 같다. 시간이 남으면 책 학습을 하고 아니면 내일 새벽에 하면 된다. YOLO v8 객체 탐지 실습해 보기지난 시간에는 YOLO v6 버전으로 객체를 탐지하는 실습을 진행했다. 이번에는 조금 업그레이드된 v8 버전으로 학습을 진행해 볼 것이다. 지난번에 했던 것처럼 경로를 현재 위치로 가져온다. YOLO 모델 가져와서 코드 붙여 넣기 가위 바위 보 객체 탐지 모델 다운로드 yolov7_rock_paper_sci..
이어서 라벨링한 데이터의 코드를 수정하는 작업을 진행해 보겠다. data.yaml 파일 수정하기 그리고 이 폴더 안에 들어가면 이미지가 있는데 이상하게도 이미지에 라벨이 표시되어 있지 않다. 그 이유는 라벨은 좌표이기 때문이다. 사진 안에는 없지만 lables에 들어가면 좌표가 찍혀 있다. 이제 다시 코랩으로 돌아와서 이미지 학습을 시킬 텐데 그전에 한 가지 주의 사항이 있다. labes 폴더에 들어가 보면 다음과 같은 텍스트 파일을 볼 수 있다. data.yaml은 데이터가 들어있는 경로를 저장해 주는 파일이다. 이 파일은 지금 상대경로로 되어 있는데 이것을 절대경로로 변경하여 저장할 것이다. images 폴더 밑에 있는 test, train, valid의 경로를 복사하여 이..
오늘은 새벽에 일어나기도 귀찮고 공부도 하기가 싫은 마음이 많았지만 그래도 책상 앞에 앉아 공부를 진행해 보기로 했다. 난 누군가를 가르치는 사람 위치에 있는 사람은 말과 행동이 일치되고 인격이 되어야 한다고 생각하는데 이렇게 본이 되는 사람을 만나는 건 하늘의 별 따기처럼 어렵다는 걸 알게 되었다. 그저 어떤 과목에 대해서 일정 기간 동안 지식을 나누어주는 사람으로만 바라보기로 했다.사람이라는 존재는 정말 믿을 게 못 된다. 어쨌든 무척 화가 나는 일이 있지만 원래 그런 사람이려니 하며 여기기로 했다. 대신 한 가지 좋은 팁을 얻기도 했으니 인생은 새옹지마라는 말이 딱 맞다. 이제 공부를 시작해 볼 것이다. roboflow에서 모델 가져오기이 사이트에 들어가서 친칠라 사진을 첨부한 후 이 사진을 ..
앞서 다룬 예제들은 케라스 또는 텐서플로 데이터셋을 로드해 사용한 것이다. 하지만 실제 업무 또는 AI 경진 대회 참가 등의 상황에서는 파일 형태의 데이터셋을 분석에 활용해야 한다.이 경우 고성능 GPU가 탑재된 워크스테이션이나 PC에 데이터셋을 저장하고 이 데이터를 텐서플로 분석 환경으로 읽어오는 과정이 필요하다. 하지만 실무에서 주로 다루는 이미지 파일은 용량이 크거나 파일 개수가 많아서 컴퓨터 메모리 또는 그래픽 카드 메모리가 부족한 상황이 자주 발생한다. 이런 문제를 해결하려면 이미지 데이터셋을 32장, 64장, 128장 등 배치 단위로 나눈 다음, 배치 한 개를 읽어와 딥러닝 모델에 주입하면 메모리 부담 없이 학습할 수 있다. 전체 데이터셋을 전부 모델에 입력할 때까지 배치 단위로 읽어오고 주입..
이어서 위성 이미지 분류 학습을 진행해 보겠다. 데이터 증강(Data Augmentation)앞서 배운 과대적합을 해소하는 기법인 배치 정규화, Dropout 등을 적용했음에도 과대적합이 발생하였다. 이미지 분류 문제에서 관대적합을 해소하고, 모델의 일반화된 Robust한 성능을 확보하는 기법으로 데이터 증강 기법을 소개한다.이미지 데이터에 여러 가지 변형을 주어 훈련 데이터의 다양성을 확보하는 방식으로, 모델이 새로운 데이터에 대한 예측력을 강화하도록 하는 개념이다.먼저 EuroSAT 데이터셋 중에서 하나의 샘플 이미지를 선택하여 시각화한다. 샘플 이미지에 변화를 주기 전과 후의 이미지를 비교할 수 있는 시각화 함수를 정의한다. tf.image 모듈의 flip_left_right 함수를 사..
이번 단원도 무척 길어서 두 개의 포스트로 나누어 작성할 예정이다. 단순한 모델 생성도 많이 어려웠는데 이번에는 복잡한 모델을 생성해 볼 것이다.텐서플로 케라스의 Functional API를 사용하면 Sequential API로 구현할 수 없는 복잡한 구조의 모델을 정의할 수 있다. 예를 들면, 각 레이어를 기준으로 입력이 2개 이상이거나 출력이 2개 이상인 모델을 만들 수 있다. 또는 중간에 있는 레이어들을 건너뛰고 뒤쪽에 있는 레이어로 출력 텐서를 전달하는 방식으로 직접 연결하는 방법도 가능하다. 데이터셋 준비필요한 라이브러리와 mnist 데이터셋을 불러와서 훈련 데이터셋과 검증 데이터셋으로 구분하여 저장한다. 원본 mnist 데이터셋은 0~9까지 숫자를 손글씨로 쓴 이미지(x)와 정답(y) 숫..
이제 CNN을 활용한 개, 고양이를 분류하는 실습을 진행해보려고 한다. 개와 고양이를 분류하는 실습 해보기 먼저 데이터 폴더에 압축 파일 형태로 선생님이 올려주신 파일을 업로드했다. 여기서 압축 파일 형태로 저장하는 이유는 넘파이로 저장하면 용량이 커지기 때문에 압축 파일에서 npz 파일로 변환하는 작업을 진행한다.압축 파일 형태이기 때문에 코드로 압축을 해제할 수 있다. 압축을 해제한 다음에는 크기 조정도 한다. 그 이유는 딥러닝 모델에서는 이미지 크기가 제각각이라 크기를 동일하게 조정해 준다. 그런 다음 이 이미지를 넘파이 배열인 숫자 형태로 변환한 후 다시 npz 형식으로 저장한다. 구글 드라이버는 클라우드 형태로 저장되기 때문에 이것을 내 작업 공간으로 옮기는 작업이 필요하다. 절대 ..
조금 늦은 아침을 먹고 이이서 딥러닝 실습을 시작해 보겠다. 합성곱 신경망 실습해 보기 라이브러리와 손글씨 데이터를 불러온 다음, 훈련 데이터와 테스트 데이터로 나눈다. 데이터의 크기를 확인하면 이와 같다. 이미지 색상은 어떻게 작성할 수 있을까? 0부터 9까지의 숫자가 출력된다. 이미지 분석을 할 때 특징을 추출하는 층을 넣어준다. Maxpooling 과정에서 특징이 아닌 부분을 삭제하는 과정을 거친다. 이렇게 CNN 층을 구성했다. 모델이 저장된 폴더의 경로를 복사해서 붙여 넣고 뒤에 에포크와 정확도도 표시해 준다. 그리고 모델 객체를 생성한다. 오류가 많아서 코드를 정말 많이 수정했다. 수업을 들으면서 코드를 작성하니 틀리게 적는 부분이 정말 많았다..