파이썬 딥러닝 실무 프로젝트 강좌의 맛보기 강의입니다.
데이터 준비를 한번 해보도록 하겠습니다 먼저 이미지 수집이 제일 처음에 이루어져야 되겠죠 그래서 저는 이제 CNN 이미지 분류 뭘 할까 하다가 저희가 그 요리 이미지를 저는 주제를 선택했어요 그래서 요리 이미지를 여러 이미지가 있지만 피자 약간 구분되지 빨간 게 좀 들어가서 어쩔 줄 모르겠는데 피자 스파게티 스시 스시는 조금 다른 거니까 세 종류의 요리 이미지를 제가 수집해서 분석해보고자 합니다 그러면 다중분류가 되겠죠 0인지 1인지 2인지 피자가 0이고 스파게티가 1이고 스시가 2가 되는 그래서 다중분류 문제로 저희가 이미지를 분류해 볼 건데요 그러면 각각 피자나 스파게티나 스시 최소한 정도의 최소 개의 정도의 뭐가 필요하죠 이미지를 수집을 해야 되죠 그래서 그 이미지를 수집하는 여러 가지 방법이 있는데 물론 여러분이 직접 파이썬은 워낙 크롤러를 잘 짤 수 있는 도구이긴 하니까요 직접 크롤러를 짜셔도 되는데 이번에는 API를 이용해 볼게요 API는 무료로 사용할 수 있는 API인 거고요 이미지를 많이 모아놓은 사이트가 있는데 Flickr라는 사이트가 있어요 이 API를 제공하고 있고요 그래서 저희가 이것을 파이썬 모듈을 깔아야 되는데 파이썬 모듈을 까는 연습도 해볼 거고요 그래서 모듈을 깔아서 여기 있는 API를 이용해서 저희는 요리를 자동으로 수집하게 한번 해볼게요 저희가 사진에 제목만 주면 되는 거니까요 이미 데이터를 3개, 피자, 스파게티, 스시 세 종류의 데이터를 놓을 거고 요리당 한 100개 정도만 저희가 모을게요 그래서 100개 이상의 사진을 일단 수집하고 전처리를 조금 할 거예요 눈으로 전처리를 하시는 거예요 요리 사진인데 요리 사진 뒷배경이 너무 강하거나 요리를 딱 보고 아 이거는 피자네 우리가 눈에 보기도 이건 스파게티네 이건 스시네 이렇게 가려야 되는데 사람들이 많이 나오는 사람들이 먹는 과정 먹는 그 이미지가 나오면 안 되겠죠 그래서 그런 이미지를 눈으로 일단 추리셔야 돼요 다 컴퓨터가 추리면 좋겠지만 지금까지 우리 지금 아직은 우리는 그런 기능이 없기 때문에 눈으로 일단은 최소 100장이 될 수 있도록 할 거예요 그래서 이 100장에 대해 각각 100장 피자 100장, 스파게티 100장, 스시 100장 이렇게 데이터를 잘 추려서 그걸 통해서 학습을 시킬 거다 이렇게 보시면 되겠습니다 그래서 일단은 정리를 해볼 건데 그러면 사이트를 어떻게 하냐 여기 한번 가볼게요 여기 회원가입도 하셔야 되고 회원가입에 해당되는 부분을 아이디와 패스워드를 여러분이 갖고 접근하셔야 되기 때문에 Flickr 사이트를 이용해 보도록 하겠습니다. 한번 들어가 볼까요? www.flickr.com 이거든요. 이 사이트로 들어가 보도록 하겠습니다. 저희가 원하는 이미지를 수집하기 위해서 Flickr 사이트로 이동할 거고요. 주소창에다가 넣어주시고 가입을 한번 해 볼게요. 이 가입을 개별적으로 하셔야 되는 이유는 API를 하나씩 받으셔서 프로그램 하셔야 되는 부분이 있어서 그렇습니다. 그래서 저는 이렇게 써보도록 하겠습니다. 이렇게 넣어볼까요? 자 그러면 메일로 2단계로 전송을 했다 그러니까 여러분이 전송한 거 한번 다시 보도록 하겠습니다 자 이렇게 그 본인이 등록한 지메일을 이용해서 그 계정 확인을 하면 그 메일에 그 계정 확인 메시지가 들어와 있을 거예요 메시지를 클릭하게 되면 어 이제 로그인이 된 거죠 그래서 어 로그인을 다시 한번 해주시면 될 것 같고요 자 이렇게 회원가입이 다 끝나고 나서 그 메뉴를 보시면 나라는 메뉴가 있는데 여러분이 직접 올린 사진 같은 것도 뭘 올렸는지 볼 수가 있고요 저희는 이제 둘러보기를 볼 거예요 최근 사진 내지는 뭐 여러 가지 볼 텐데 최근 사진으로 한번 클릭을 해서 사진으로 검색을 해 볼 건데 피자를 한번 검색해 보죠 우리가 요리의 그림이기 때문에 피자 넣으시고 사진 검색을 눌러 볼게요 사진 검색을 누르시면 피자에 해당되는 사진들이 쭉 사람들이 올려준 사진이 있죠 이 사진들이 떠요 그래서 이런 사진을 저희가 100장을 자동으로 다운받게 Flickr가 제공하고 있는 API를 통해서 해보겠다는 얘기예요 아주 먹음직스럽네요 이런 피자 사진을 가지고 저희가 공부를 시키는 거죠 이건 피자야 이 그림을 보여주면서 그 그림 크기가 사람들이 개별적으로 올린 그림이라 정확하게 사이즈가 다 동일하지 않으니까 이미지 전체를 해서 사이즈를 똑같이 자르는 작업도 좀 해보셔야 될 것 같습니다 사진 검색을 해보도록 하겠습니다 스시라고 하면 스시 사진은 더군다나 이제 사람들이 요런 것도 스시의 모양이 이쁜 모양 올리니까 그렇지만 사람들이 뜨기도 해요 그래서 사진들을 그 아무리 제가 음식 사진 지금 사진이라고 올렸잖아요 사진을 보긴 하지만 요런 거는 뭐 좋은 그림일 수 있으나 보시면 요렇게 스시로 먹으러 간 좋은 행복한 모습들이 올라온 것 같고요 요런 사진은 저희가 이제 걸러내야 되겠죠 눈으로 걸러낼 수 있는 사진이어야 되기 때문에 이렇게 사진을 자동으로 다운받은 다음에 눈으로 걸러내는 작업을 하고 이 사진은 스시야라고 정답을 알려주는 작업을 하겠습니다 이렇게 해서 이제 Flickr 사이트로 구경을 했고요 구경하고 나서 저희가 이제 해줘야 되는 작업은 뭐냐면 API를 신청하셔야 돼요 개별적인 물론 제 거를 잠깐 사용하셔도 상관없지만 여러분 API를 이용하셔서 작업을 하시는 게 이제 여러분 거가 되는 거니까요 여러분 API를 한번 만들어 보도록 하겠습니다 Flickr가 제공하고 있는 API 계정을 만들기 위한 사이트를 여기에 있는 사이트를 이동을 한번 해 볼게요 주소창에다가 방금 제가 드린 사이트 주소 API 키를 만들 수 있는 사이트 주소로 들어가 보시면 API 키를 만들 수 있게 되어 있는 창이 있고요 제가 링크를 걸어서 아예 드렸기 때문에 앱 키를 만들 수 있는 부분이 보일 거예요 그래서 저희가 API 키를 설정하기 때문에 요 중에 API 키를 선택하세요 API를 선택하시고 선택하면 API 키에 관한 화면이 뜨는데 여기 보시면 다른 키 가져오기 라는 클릭 버튼이 있어요 얘를 클릭해 보시면 비상업용 버전이 있고 그렇지 않은 버전이 있는데 저희는 비상업용 버전, 학습용이니까요. 비상업용 버전을 선정을 할 겁니다. 그리고 여기에다가 저희가 이제 왜 이거를 앱 이름이 뭔지 이렇게 써야 되는데 테스트 앱 간단히 이렇게 써보도록 하고요. 테스트 앱 용도입니다. 이런 식으로 써보도록 하겠습니다. 그리고 나서 여기 체크를 좀 해 주셔야 되겠죠 소유하고 있는 여러 가지들 어그리 동의를 해 주시고 등록 버튼을 누르시면 되겠습니다 등록 버튼을 누르시면 이게 보이는 여러분의 API 키 방금 받은 API 키하고 그다음에 비밀번호거든요 그래서 이거를 저희가 복사를 해 놓으셔야 돼요 이거를 복사를 해서 메모장을 하나 열어서 하나 여러분이 저장해 보시면 좋을 것 같은데요 저희가 시작 단추에서 노트패드 메모장을 열어봅니다. 메모장 안에 API 키를 넣습니다. 패스워드도 가지고 있어야 합니다. API 키로 로그인을 정상적으로 했고, 그 키에서 비밀번호, 패스번호, 아이디, API 키랑 비번을 받은 것이 있습니다. 요거를 통해서 저희가 이제 접근해야 되는 거기 때문에 요거를 기록하셔야 돼요 저장해 놓으시면 좋겠죠 그래서 저장해 놓고 저희가 저장을 일단 해 볼까요 혹시 모르니까 파이썬에다가 저장을 해 볼게요 파이썬 폴더 안에다가 저장을 해 놓고 쓰도록 하겠습니다 지금은 저희가 딥러닝 실무 프로젝트라는 소스코드로 들어가서 작업을 할 거니까요 실무 프로젝트 안에다가 저희가 여기다가 API 키 이렇게 저장해 놓겠습니다 여러분들 저장해 놓으세요 이미지 데이터 수집이 굉장히 자동으로 이루어지는 것이 편리하고 좋기 때문에 기억을 해주셔야 될 거예요 이렇게 하면 다 끝났어요 저희가 발급을 받았기 때문에 소스코드로 들어가서 진행을 해보도록 하겠습니다 지금까지 저희가 Flickr API를 만들었어요. 개별적으로 여러분 걸 다 만드셨고 메모장으로 간단히 저장해 놓으셨죠. 그래서 요리 이미지 3개를 내려 받을 건데요. 저는 피자, 스파게티, 스시 이렇게 해서 3개의 폴더를 만들고 각각 폴더에다가 한 300장 정도의 사진을 내려 받을게요. 자동으로 내려 받을 거고요. 그리고 300장 중에 저희가 이제 좋은 거를 좀 추려내는 작업을 할 거예요 추려낸 작업을 눈으로 좀 만드셔서 피자 제가 이제 추린 작업 다운받은 작업 이렇게 보이시는데 이렇게 폴더별로 사진이 들어가는 거 확인하시고 눈으로 이미지를 100개 정도만 잘 된 거 그래서 대상이 크게 나오고 대상이라는 것은 저희 이제 요리 사진이겠죠 크게 나오고 다른 물체가 안 나와야 돼요 사람이 나오거나 또 색이 선명한 거 위주로 하셔야 아무래도 딥러닝을 시킬 때 공부가 잘 되겠죠 필터를 너무 심하게 적용해서 색상이 이상하거나 또 흑백 이미지 같은 것들은 제거를 해주시는 게 좋아요 그래서 이미지 클렌징 작업까지 저희가 소스코드로 진행해 보도록 하겠습니다
