AutoML Vision – Part 1 (AI Adventures)

YUFENG GUO : 내가 물어 보는 최고 일 중 하나 AutoML입니다 이 두 부분으로 구성된 비디오에서 AutoML Vision을 사용하여 기계 학습 모델 구축 및 배포 다른 종류의 의자를 인식하는 좋은 측정을 위해 뿌려진 몇 가지 다른 항목과 함께

우리 모두 다하고 있어요 원시 데이터 수집에서 모든 방법으로 모델을 서비스하는 것, 그리고 그 사이의 모든 것 "AI Adventures"에 오신 것을 환영합니다 우리는 예술, 과학 및 기계 학습 도구를 탐구합니다 내 이름은 Yufeng Guo입니다

그리고이 에피소드에서 우리는 AutoML Vision, 현재 알파 상태이며 데이터를 가져옵니다 올바른 형식으로 입력하십시오 2 부에서는이 데이터를 사용하여 모델을 작성합니다 어떤 스타일의 의자가 그림에 있는지 감지 할 수 있습니다 AutoML을 매력적으로 만드는 요소 중 하나 맞춤 모델이 있습니다

Vision API와 같은 기존 모델 및 서비스는, 이 사진들이 의자들 그러나 당신이 당신의 자신의 의자를 만든 경우에, 그리고 카탈로그를 작성하는 방법이 필요하다고 귀하의 인벤토리에있는 다양한 의자의 다양한 브랜드? 맞춤형 Vision을 사용하는 것이 좋지 않을까요? API는 말하자면 다음을 인식합니다 너의 의자들? 이것이 우리가 AutoML Vision으로하려고하는 것입니다 AutoML Vision은 입력 로트 및 로트로 소요됩니다 라벨이 붙은 사진들

따라서 카메라를 꺼내 사진을 찍기 시작하십시오 얼마나 많은 사진을 물으십니까? 글쎄요, 이상적으로, 당신은 수백 물체 당 그림 그리고 그것은 좋을 것입니다 그리고 나서, 일단 그 셔터 옵션을 클릭하는 것에 지쳤다면, 어쩌면 네가 한 일을해볼거야 제비 뽑기와 많은 그림

AutoML의 데이터를보다 쉽게 ​​캡처 할 수 있도록, 나는 훈련 데이터를 수집하기로 결정했다 의자의 비디오를 캡처하여 그런 다음 ffmpeg 도구를 사용하여 해당 프레임을 추출합니다 Google Sunnyvale 캠퍼스에 다녀 왔습니다 나는 여러 가지 다른 야외 의자의 비디오를 찍었습니다 나는 또한 그들이 배치 된 테이블의 비디오를 찍었다

주변뿐만 아니라 자전거도 – 어 – 그냥 좀 더 재미있게 만들 수 있습니다 이제 그 영상물 중 일부를 살펴 보겠습니다 여기, 우리는 서로 다른 모양, 스타일, 및 색상 비디오 길이가 30 초를 초과하지 않습니다 그리고 테이블과 자전거가있는 짧은 클립이 있습니다

그것이 우리가 작업하게 될 데이터입니다 우리가 원하는 최종 상태는 CSV 파일입니다 이미지 당 하나의 행과 두 개의 열이 있습니다 Google Cloud에서 이미지의 첫 번째 위치 스토리지, 두 번째 레이블, 빨간 의자 또는 탁자 또는 파란 의자 같이 정리하기 쉽도록 각 비디오를 배치했습니다

자체 폴더에 그러면 각 비디오 파일에 대해 ffmpeg를 차례로 실행할 수 있습니다 그 폴더 안에 그런 식으로 일단 프레임이 추출되면, 당신은 레이블이 채워지는 한 폴더를 갖게 될 것입니다 그 라벨의 이미지들

이것은 이미지와 데이터를 정리하는 편리한 방법입니다 그리고 하나의 거대한 폴더를 갖는 것보다 간단합니다 모든 이미지가 혼합되어 있습니다 그런 다음 Google Cloud Storage에 이미지를 업로드 할 수 있습니다 gsutil을 사용하여 폴더 구조 복제 레이블 당 하나의 폴더

이제는 CSV 파일을 만드는 작업을해야 할 때입니다 원하는 각 이미지의 경로와 레이블을 나열합니다 내 데이터 세트에 포함합니다 자, 이것을 성취 할 수있는 방법이 많이 있습니다 하지만 나는 지역 Jupyter 노트를 뽑기로 결정했다

그리고 팬더 데이터 프레임을 만듭니다 CSV 파일로 내보내집니다 이제 그 코드를 살펴 보겠습니다 자, 이제 우리는 Jupyter 노트북에 있습니다 OS와 팬더를 가져 왔으므로 파일 시스템으로 작업 할 수 있습니다

그리고 팬더를로드하면 CSV를 내보낼 수 있습니다 내가 원하는 모든 폴더를 나열했습니다 데이터를 가져 오는 데 사용합니다 여기에 명시 적으로 나와 있습니다 아마도 다른 시나리오에서, 이 폴더 중 일부만 사용하도록 선택할 수 있습니다

다른 교육 세트를 만들 수 있습니다 그래서 우리는 여기에 우리의 폴더 이름 사전 해당 폴더에 대한 모든 파일 배열로 매핑합니다 그래서 그렇게하려면 먼저, 모든 파일 이름의 배열 배열을 만들 수 있습니다 각 내부 배열은 하나의 폴더의 모든 파일 이름입니다 그리고 바깥 쪽 배열은 각 폴더에 대한 것입니다

여기에서는 모든 파일을 나열하고 있습니다 폴더에 그래서 우리의 데이터 폴더가 여기 있습니다 그리고 우리는 그것을 포착 할 수 있도록 배열로 포장합니다 그리고 우리는 볼 수 있습니다, 여기, 나는 인쇄했습니다

각 폴더에 하나의 값, 하나의 이미지 샘플 그리고 우리는 그들이 모두 다르다는 것을 알 수 있습니다 그래서 우리가 좋은 모습 인 것처럼 보입니다 그래서 우리는 그 두 가지를 취할 수 있습니다 – 우리의 폴더 이름과 모든 파일 그 이름들을 함께 모으고 사전을 작성하기 위해 전달하십시오 이를 기본 Google Cloud Storage 경로를 사용하여 우리는이 두 가지를 함께 붙일 수 있습니다

GCS 또는 Google 클라우드 스토리지 경로를 미리 설정하려는 경우, 최종 출력 그래서 우리가 원하는 것은 이런 것입니다 Google Cloud Storage 디렉토리 경로가있는 곳, jpeg 이름과 쉼표 다음에 오는 모든 길 레이블의 이름을 입력하십시오

그래서이 경우 아마 우리는 콤마를 가질 것입니다 그런 다음 chair_black 그렇게하기 위해 사전 전체를 반복합니다 파일 이름 배열의 각 파일에 대해 그 사전에 우리가 합칠거야 기본 Google Cloud Storage 경로, 폴더 이름 및 파일 이름과 함께, 그 레이블뿐입니다

자, 이제 우리와 우리는 쌍의 배열을 가지고 있습니다 각 쌍에는 해당 경로와 레이블이 있습니다 그래서 우리는이 어레이를 가져 와서 그냥 넘겨 줄 수 있습니다 곧바로 데이터 프레임을 만듭니다 판다는 그 형식을 받아 들여 새로운 데이터를 만든다

처음부터 프레임 그리고 우리의 데이터 프레임은 우리가 기대했던 것과 똑같습니다 우린 모든 길과 라벨을 가지고있어 이제 CSV로 내보낼 준비가되었습니다 이 특별한 경우에 우리는 그러한 수출을 원한다

index를 false로, header를 false로 사용합니다 이것은 중요하며 실제로 당신을 위로 끌 수 있습니다 너가 이것을 잊는다면 왜냐하면 기본값을 그대로두면 index – true이고, header – true, 출력 된 CSV 파일의 헤더 행은 0과 1이됩니다 또한 색인 열이 있습니다

다른 모든 것보다 먼저 오는 것입니다 0, 1, 2, 3, 4, 5가 되십시오 그래서 우리는 그 어떤 것도 원하지 않습니다 우리는 단지 파일 경로를 원한다 그리고 레이블, 다른 건 없어요

그래서 우리는 index-false와 header-false를 사용합니다 따라서 폴더 구조를 같은 방법으로 구성하면 내 것이 좋다,이 노트를 가져 가라 그리고 몇 가지 최소한의 변화로, 귀하의 유스 케이스에 맞게 조정하십시오 그래서 저는이 노트북과 링크를 확실히 출판 할 것입니다 아래의 동영상 설명에서 좋습니다

이제 CSV 파일이 있습니다 모든 이미지의 위치 및 레이블 설명 우리의 데이터 세트에서 우리는 모델을 훈련 할 준비가되었습니다 이 에피소드의 2 부에서 나와 함께하십시오 그리고 우리는이 모델이 얼마나 잘 수행되는지를 볼 것입니다

"Cloud AI Adventures"에피소드를 시청 해 주셔서 감사합니다 그리고 그것을 즐긴다면 아래에있는 좋아하는 버튼을 누르십시오 최신 업데이트를 모두 받으려면 구독하십시오 그들이 나올 때 그리고이 비디오의 두 번째 부분으로 넘어가는 동안, 나는 이것을 먹을거야

– 사과 [음악 재생]