출처: 초보자를 위한 코틀린(Kotlin) 200제 / 엄민석 지음 | 정보문화사 | 2018년 05월 20일 출간

package com.practice003

fun main(args: Array<String>): Unit
{
	// var: 변수 키워드, total: 변수이름(식별자), Int: 변수의 타입
	// var total: Int =0 //처럼 한줄로 선언하고 초기화도 가능하다.
	// 아래 구문은 var 키워드로 total이라는 식별자가 변수를 뜻하고,
    // 그 타입이 Int라고 컴파일러에게 알림	
	var total: Int
	total = 0
	
	// var 는 일반 변수 이고, val은 final 변수로 생각하면 된다.	
	val a: Int = 10 + 53 - 7
	println(a)
	
	val b: Int = 43 + 75 + a
	println(b)
	
	total = a+b
	println(total)
}

변수Variable: 값을 저장해놓은 메모리 공간 

식별자Identifier: 위 코드의 total 처럼 임의로 지어낸 이름. 

        (영문자, 숫자, 언더스코어 _로만 가능, 단 숫자는 맨 앞 금지)

 

변수 선언의 다음 형태를 기억

var total : Int

var : 변수 키워드

total : 변수 이름 (식별자)

Int 변수 타입

 

val 키워드: val 로 선언된 변수는 한번 값을 저장하면 나중에 값을 수정할 수 없다.(자바의 final 변수)

var 키워드: 값 수정이 가능하다. (자바의 일반변수)

 

출처: 초보자를 위한 코틀린(Kotlin) 200제 / 엄민석 지음 | 정보문화사 | 2018년 05월 20일 출간

package com.practice002

fun main(args: Array<String>): Unit
{
	// java와 다르게 단독 표현식  허용
	// 리터럴(Literal): 숫자 자체를 나타내는 부분: 53, 62, 126
	// 연산자Operator: +, -, *, /, %
	//53+62-126
	println(53+62-126)
}

리터럴Literal: 53, 62, 126과 같이 숫자 값 자체를 나타내는 부분

연산자Operator : + 와 - 처럼 계산을 수행하는 기호

피연산자Operand: 각 연산자 양 옆의, 계산을 수행하기 위한 재료가 되는 부분

즉 53, 62, 126은 리터럴이면서 피연산자.

 

표현식Expression: 53+62-126 처럼 피연산자와 연산자로 이루어진 덩어리가 하나의 값으로 되는 것

출처: 초보자를 위한 코틀린(Kotlin) 200제 / 엄민석 지음 | 정보문화사 | 2018년 05월 20일 출간

package com.practice001   
// fun: function의 약자, 함수를 의미 
// main: 함수의 이름 의미 
// java 와 다르게 끝에 ; 세미콜론을 기입하지 않는다. 
fun main(args: Array<String>):Unit
{ 
	println("Hello, Kotlin!!")    
}

 fun : function의 약자로 함수를 나타내는 키워드 

main: 프로그램의 기본 실행이 되는 단위인 main 함수

println: 화면에 텍스트를 출력하는 '함수'

개요

Google 클라우드 플랫폼 (GCP)는 Google의 인프라에서 호스팅 클라우드 서비스의 모음입니다. 컴퓨팅 및 스토리지에서 데이터 분석, 머신 러닝 및 네트워킹에 이르기까지 GCP는 개인 또는 엔터프라이즈 급의 클라우드 컴퓨팅 애플리케이션 또는 프로젝트와 통합 할 수있는 다양한 서비스 및 API를 제공합니다.

이 입문 실습에서는 Google Cloud 서비스에 액세스하고 관리 할 수있는 브라우저 내부 UI 인 Google Cloud Platform 콘솔을 사용하여 실습을 통해 GCP를 시작 합니다. GCP의 주요 기능을 식별하고 Qwiklabs 환경의 기능을 익힐 것입니다. 클라우드 컴퓨팅을 처음 사용하거나 GCP 및 Qwiklabs에 대한 개요를 찾고 있다면 올바른 위치에 있습니다. 이 실습의 세부 사항과 실습 영역에 대해 자세히 알아보십시오.

무엇을 배울 것인가

이 실습에서는 다음을 수행합니다.

  • Qwiklabs 플랫폼에 대해 알아보고 실험실 환경의 주요 기능을 식별하십시오.
  • Qwiklabs 크레딧에 대해 배우고 구입하여 랩 인스턴스를 시작하십시오.
  • 특정 자격 증명으로 GCP 콘솔에 액세스하는 방법에 대해 알아보십시오.
  • GCP 프로젝트에 대해 배우고이를 둘러싼 일반적인 오해를 식별하십시오.
  • GCP 탐색 메뉴를 사용하여 GCP 서비스 유형을 식별하는 방법에 대해 알아 봅니다.
  • 기본 역할에 대해 학습하고 Cloud IAM 서비스를 사용하여 특정 사용자가 사용할 수있는 조치를 검사하십시오.
  • Cloud Shell에 대해 학습하고 gcloud툴킷 을 사용하는 명령을 실행하십시오 .
  • API 라이브러리에 대해 배우고 주요 기능을 조사하십시오.
  • 클라우드 셸에서 미리 설치와 같은 명령을 실행할 수있는 툴을 사용 touch, nano및 cat파일의 내용을 생성, 편집, 출력 할 수 있습니다.

전제 조건

 실습  실습 수준의 실습실이며 GCP 또는 Qwiklabs에 익숙하지 않은 경우 가장 먼저 수행해야 할 실습실입니다. Qwiklabs 및 Google Cloud Platform 콘솔에 이미 경험이있는 경우 다음 실습을 확인하십시오 (실습하기로 결정한 경우 지금 실습  종료하십시오 ).

 

Catalog | Qwiklabs

Qwiklabs provides real cloud environments that help developers and IT professionals learn cloud platforms and software, such as Firebase, Kubernetes and more.

google.qwiklabs.com

Qwiklabs 기초

기능 및 구성 요소

주제 또는 전문 지식 수준에 관계없이 모든 Qwiklabs는 공통 인터페이스를 공유합니다. 이 실습은 다음과 매우 유사합니다.

참고 : 위에 표시된 "가상 머신 생성"랩을 사용하지 않고 Qwiklabs에서 공통 기능을 강조하기위한 예제로만 사용됩니다.

다음 실습 구성 요소 정의를 읽고 인터페이스의 오른쪽 상단에서 찾으십시오.

실습 시작 (버튼)

이를 클릭하면 필요한 모든 서비스와 자격 증명이 활성화 된 임시 GCP 환경이 만들어 지므로 실험실 자료를 통해 실습을 시작할 수 있습니다. 클릭하면 실험실 단계를 완료하는 데 필요한 시간을 제공하는 카운트 다운 타이머가 시작됩니다. 타이머가에 도달하면 00:00:00랩 환경과 임시 자격 증명이 삭제됩니다.

신용

실험실 가격. 1 학점은 일반적 으로 1 미국 달러 (구입 한 학점이 많을수록 더 많은 할인 혜택을받습니다)와 동일합니다. 기초 실습실 (이와 같은)은 1 학점, 기본 수준 5, 고급 7, 전문가 비용 9 학점입니다. 보다 전문화 된 실험실은 더 많은 컴퓨팅 작업이 필요하고 더 많은 GCP 리소스를 요구하기 때문에 비용이 더 많이 듭니다.

시각

실습을 완료해야하는 시간을 지정합니다. 앞에서 언급했듯이 "실험실 시작"버튼을 클릭하면 타이머가에 도달 할 때까지 카운트 다운됩니다 00:00:00. 그렇게되면 임시 GCP 환경과 리소스가 삭제됩니다. 랩을 완료하는 데 충분한 시간이 주어 지지만 랩이 실행되는 동안 다른 작업을 수행하지 않도록하십시오. 모든 노력을 잃을 위험이 있습니다!

점수

대부분의 랩은 아니지만 점수가 포함되어 있습니다. 이 기능을 "활동 추적"이라고하며 실험실에서 지정된 단계를 완료 할 수 있습니다. 활동 추적 기능이있는 랩을 통과하려면 모든 단계 를 순서대로 완료해야합니다 (그러면 완료 학점을 받게됩니다).

구매 크레딧

아직 시작 하지 않았다면 지금 실습 시작 버튼을 클릭하십시오 . "액세스 코드"(전문가 수준에 관계없이 단일 랩 비용을 충당하는 쿠폰)가 있거나 이미 크레딧을 구매 한 경우 다음 섹션 "랩 시작"으로 건너 뛸 수 있습니다. 그렇지 않으면 신용장 구입을 클릭하십시오 . 다른 신용 패키지를 제공하는 새 페이지로 이동합니다.

구매하려는 크레딧 금액을 입력 하고 신용 카드로 지불을 클릭하십시오 . 그러면 신용 카드 정보를 입력하라는 보안 패널이 나타납니다.

신용 카드 정보를 입력하고 지불을 클릭하십시오 . 당신은 이것과 다른 Qwiklabs를 가져갈 준비가되었습니다! 오른쪽 상단에있는 프로필 아이콘을 클릭하고 '크레딧 구매'를 선택하면 언제든지 더 많은 크레딧을 구매할 수 있습니다. 또한 실습을 시작하고 새로운 실습을 시작하려고하면 추가 구매 메시지가 표시됩니다.

랩 시작

실습의 주요 기능과 구성 요소를 이해 했으므로 오른쪽 상단 모서리에있는 실습 시작 버튼을 클릭하십시오 . 액세스 코드가있는 경우 지금 입력 하고 액세스 코드로 실행을 클릭하십시오 . 그렇지 않으면 1 크레딧으로 실행을 클릭하십시오 .

GCP 환경과 자격 증명이 표시 되려면 다소 시간이 걸릴 수 있습니다. 잠시만 기다려주세요. 오른쪽 상단의 타이머가 작동하기 시작하고 실습 시작 버튼이 실습 종료 버튼으로 바뀌면 모든 것이 제자리에 있으며 모두 Google Cloud Platform 콘솔에 로그인하도록 설정되었습니다.

필요한 모든 작업을 완료 할 때까지 실험실 종료 버튼을 클릭하지 마십시오 . 클릭하면 임시 자격 증명이 무효화되어 실험실 전체에서 수행 한 작업에 더 이상 액세스 할 수 없습니다. 끝 부분에 도달하고 필요한 모든 단계를 완료 한 경우에만 실험실 종료 단추를 클릭하십시오 . 완료하면이 버튼을 클릭해야합니다. 그렇지 않으면 나중에 다른 실습을 수행 할 수 없습니다 (Qwiklabs는 동시 등록을 방지하는 보호 기능을 갖추고 있습니다).

GCP 콘솔에 액세스

핵심 용어

랩 인스턴스가 시작되어 왼쪽에있는 Connection Details (연결 세부 정보) 패널을 살펴보십시오. Google 콘솔 열기 버튼과 사용자 이름, 비밀번호 및 GCP 프로젝트 ID 필드로 채워 져야합니다.

참고 : 자격 증명은 비슷하지만 위와 일치하지 않습니다. 랩 인스턴스마다 새로운 임시 자격 증명이 생성됩니다.

더 진행하기 전에 이러한 각 구성 요소를 살펴 보겠습니다.

Google 콘솔을 엽니 다

웹 콘솔 및 GCP의 중앙 개발 허브 인 Google Cloud Platform 콘솔 로 이동하는 버튼입니다 . GCP에서 작업을 시작하면이 인터페이스에서 대부분의 작업을 수행하게됩니다. 모든 GCP Qwiklabs는 어떤 형태로든 콘솔을 사용합니다.

GCP 프로젝트 ID

GCP 프로젝트는 귀하의 Google 클라우드 자원에 대한 조직 엔티티입니다. 여기에는 종종 리소스와 서비스가 포함됩니다. 예를 들어 가상 머신 풀, 데이터베이스 세트 및 서로 연결되는 네트워크가있을 수 있습니다. 프로젝트에는 보안 규칙과 누가 어떤 리소스에 액세스 할 수 있는지를 지정하는 설정 및 권한도 포함됩니다.

GCP 프로젝트 ID는 특정 프로젝트에 GCP 자원 및 API를 연결하는 데 사용되는 고유 식별자입니다. 프로젝트 ID는 GCP에서 고유하므로 하나의 qwiklabs-gcp-xxx .... 만있을 수 있으므로 전 세계적으로 식별 할 수 있습니다.

사용자 이름과 비밀번호

GCP 자격 증명 및 액세스 관리 (IAM) 서비스에서 액세스 권한 (역할 또는 역할)이있는 자격 증명으로, 할당 된 프로젝트에서 GCP 리소스를 사용할 수 있습니다. 이 자격 증명은 일시적 이며 랩 액세스 시간 동안 만 작동합니다. 즉, 타이머가 0에 도달하면 해당 자격 증명으로 더 이상 GCP 프로젝트에 액세스 할 수 없습니다.

GCP에 로그인

Connection Details (연결 세부 정보) 패널을 더 잘 이해 했으므로 이제 포함 된 세부 정보를 사용하여 GCP 콘솔에 로그인하겠습니다. Google 콘솔 열기 버튼을 클릭하십시오 . 새 브라우저 탭에서 GCP 로그인 페이지가 열립니다.

이제 다음과 유사한 페이지에 있어야합니다.

Gmail과 같은 Google 애플리케이션에 로그인 한 경우이 페이지가 익숙해 보일 것입니다. 콘솔에 로그인하려면 연결 세부 사항에서 사용자 이름  복사 하여 "이메일 또는 전화"필드에 붙여넣고 Enter 키를 누르십시오.

기다림! 개인 또는 회사 이메일 주소가 아닌 googlexxxxxx_student@qwiklabs.net 이메일을 사용하여 로그인했는지 확인하십시오!

Qwiklabs 랩 페이지의 프로비저닝 된 자격 증명에서 비밀번호  복사하여 "비밀번호"필드의 GCP 사인에 붙여넣고 Enter 키를 누릅니다.

googlexxxxxx_student@qwiklabs.net과 유사한 사용자 이름은 Qwiklabs 학생으로 사용하기 위해 생성 된 Google 계정입니다. 특정 도메인 이름 ( "qwiklabs.net")이 있으며 프로비저닝 된 GCP 프로젝트에 액세스 할 수있는 IAM 역할이 할당되었습니다.

로그인에 성공하면 페이지는 다음과 유사합니다.

계속해서 동의  클릭 하면 Google 서비스 약관 및 개인 정보 취급 방침에 대한 귀하의 인정을 나타냅니다. 그러면 "계정 보호"페이지가 나타납니다. 이 계정은 임시 계정이므로 복구 전화 번호 또는 이메일 업데이트에 대해 걱정하지 마십시오. 완료를 클릭하십시오 .

이제 "서비스 약관 업데이트"페이지로 이동합니다. 향후 공지에 관한 이메일 업데이트는 아니오 상자를 선택하십시오. Google Cloud Platform의 서비스 약관에 동의 하려면  확인란을 선택합니다.

Qwiklabs 자격 증명을 사용하여 Google Cloud Platform 콘솔에 성공적으로 액세스했습니다! 이제 페이지가 다음과 유사해야합니다.

GCP 콘솔의 프로젝트

연결 세부 사항 패널의 구성 요소를 조사 할 때 앞서 GCP 프로젝트에 대해 살펴 보았습니다. 다시 한 번 정의는 다음과 같습니다.

GCP 프로젝트는 귀하의 Google 클라우드 자원에 대한 조직 엔티티입니다. 여기에는 종종 리소스와 서비스가 포함됩니다. 예를 들어 가상 머신 풀, 데이터베이스 세트 및 서로 연결되는 네트워크가있을 수 있습니다. 프로젝트에는 보안 규칙과 누가 어떤 리소스에 액세스 할 수 있는지를 지정하는 설정 및 권한도 포함됩니다.

콘솔의 왼쪽 상단을 보면 프로젝트 정보 라는 패널이 표시 되며 다음과 유사합니다.

보시다시피 프로젝트에는 이름 , ID  번호가 있습니다. 이러한 식별자는 GCP 서비스와 상호 작용할 때 자주 사용됩니다. GCP의 특정 서비스 또는 기능을 실습 할 수 있도록 하나의 프로젝트에서 작업하고 있습니다.

아마 눈치 채지 못했지만 실제로 둘 이상의 GCP 프로젝트에 액세스 할 수 있습니다. 실제로 일부 랩에서는 할당 된 작업을 수행하기 위해 둘 이상의 프로젝트가 제공 될 수 있습니다. 프로젝트 이름으로 드롭 다운 메뉴를 클릭하고 ALL을 선택 하면 "Qwiklabs Resources"프로젝트도 볼 수 있습니다.

이 시점에서 Qwiklabs 리소스 프로젝트로 전환하지 마십시오! 그러나 나중에 다른 실습에서 사용할 수 있습니다.

대기업이나 숙련 된 GCP 사용자가 수십에서 수천 개의 GCP 프로젝트를하는 것은 드문 일이 아닙니다. 조직은 다른 방식으로 GCP를 사용하므로 프로젝트는 클라우드 컴퓨팅 서비스 (예 : 팀 또는 제품별로)를 분리하는 좋은 방법입니다.

"Qwiklabs Resources"는 특정 랩에 대한 파일, 데이터 세트 및 머신 이미지를 포함하는 프로젝트이며 모든 GCP 랩 환경에서 액세스 할 수 있습니다. "Qwiklabs 리소스"는 모든 Qwiklabs 사용자와 공유 (읽기 전용)되므로 삭제하거나 수정할 수 없습니다.

실습 중이고 이름이 비슷한 GCP 프로젝트 qwiklabs-gcp-xxx...는 일시적입니다 . 즉, 실습이 종료되면 프로젝트 및 프로젝트에 포함 된 모든 항목이 삭제됩니다. 새로운 실습을 시작할 때마다 하나 이상의 새로운 GCP 프로젝트에 액세스 할 수 있으며 모든 실습 단계를 실행할 수있는 곳 ( "Qwiklabs 리소스"가 아님)이 있습니다

탐색 메뉴 및 서비스

왼쪽 상단에 다음과 유사한 3 줄 아이콘이 있습니다.

이를 클릭하면 GCP의 핵심 서비스를 가리키는 탐색 메뉴 가 표시되거나 숨겨 집니다. 메뉴가 표시되지 않으면 지금 아이콘을 클릭하고 스크롤하여 제공되는 서비스 유형을 확인하십시오.

탐색 메뉴는 GCP 콘솔의 중요한 구성 요소이며, 플랫폼 서비스에 빠르게 액세스 할 수 있으며 제품의 개요도 제공합니다. 메뉴를 스크롤하면 7 가지 범주의 GCP 서비스가 있음을 알 수 있습니다.

  • 컴퓨팅 : 모든 유형의 워크로드를 지원하는 다양한 머신 유형을 수용합니다. 다양한 컴퓨팅 옵션을 사용하면 무엇보다도 운영 세부 사항 및 인프라와의 관계를 결정할 수 있습니다.
  • 스토리지 : 구조적 또는 비 구조적, 관계형 또는 비 관계형 데이터를위한 데이터 스토리지 및 데이터베이스 옵션.
  • 네트워킹 : 애플리케이션 트래픽의 균형을 유지하고 보안 규칙을 제공하는 서비스입니다.
  • Stackdriver : 크로스 클라우드 로깅, 모니터링, 추적 및 기타 서비스 안정성 도구 모음입니다.
  • 도구 : 배포 및 응용 프로그램 빌드 파이프 라인을 관리하는 개발자를위한 서비스입니다.
  • 빅 데이터 : 대규모 데이터 세트를 처리하고 분석 할 수있는 서비스입니다.
  • 인공 지능 : Google Cloud 플랫폼에서 특정 인공 지능 및 기계 학습 작업을 실행하는 API 제품군입니다.

이 링크를 통해 관심이있는 경우 이러한 각 범주를 자세히 설명하는 문서로 이동합니다.

역할 및 권한

앞서 우리는 클라우드 컴퓨팅 서비스 외에도 누가 어떤 리소스에 액세스 할 수 있는지를 정의하는 권한 및 역할 모음도 포함하고 있다고 언급했습니다. 우리는 사용할 수있는 클라우드 ID 및 액세스 관리 (IAM) 검사와 같은 역할 및 권한을 수정하는 서비스.

닫혀 있으면 탐색 메뉴를 엽니 다. 그런 다음 상단 근처에서 IAM & admin을 클릭하십시오 . 특정 계정에 부여 된 권한 및 역할을 지정하는 사용자 목록이 포함 된 페이지로 이동합니다. 이것들을 살펴보고 로그인 한 "@qwiklabs"사용자 이름을 찾으십시오.

비슷한 것을 찾아야합니다.

멤버 필드와 (당신이에 로그인 한 사용자 이름과 일치) "google23396_student@qwiklabs.net"로 설정되어 이름 필드가 "google23396_student@qwiklabs.net 학생"로 설정됩니다. 역할 필드가 GCP에서 제공하는 3 가지 기본 역할 중 하나 인 "편집기"로 설정되어 있음을 알 수 있습니다. 기본 역할은 프로젝트 수준 권한을 설정하며 달리 지정하지 않는 한 모든 GCP 서비스에 대한 액세스 및 관리를 제어합니다.

다음 표는 역할 문서 에서 정의를 가져와 뷰어, 편집기 및 소유자 역할 권한에 대한 간략한 개요를 제공합니다.

역할 이름

권한

역할 / 시청자

기존 리소스 또는 데이터보기 (수정은 안 됨)와 같이 상태에 영향을 미치지 않는 읽기 전용 작업에 대한 권한

역할 / 편집자

모든 뷰어 권한과 기존 리소스 변경과 같이 상태를 수정하는 작업에 대한 권한

역할 / 소유자

다음 작업에 대한 모든 편집자 권한 및 권한 :

  • 프로젝트 및 프로젝트 내의 모든 리소스에 대한 역할 및 권한을 관리합니다.
  • 프로젝트에 대금 청구를 설정하십시오.

따라서 편집자로서 GCP 리소스를 생성, 수정 및 삭제할 수 있습니다. 그러나 GCP 프로젝트에서 회원을 추가하거나 삭제할 수 없습니다.

API 및 서비스

Google Cloud API는 Google Cloud Platform의 핵심 부분입니다. 서비스와 마찬가지로 비즈니스 관리에서 기계 학습에 이르기까지 200 개 이상의 API는 모두 GCP 프로젝트 및 애플리케이션과 쉽게 통합됩니다.

API는 직접 또는 클라이언트 라이브러리를 통해 호출 할 수있는 "응용 프로그래밍 인터페이스"입니다. 클라우드 API는 Google API 디자인 가이드에 설명 된대로 리소스 지향 디자인 원칙을 사용합니다 .

Qwiklabs는 랩 인스턴스에 대해 새로운 GCP 프로젝트를 프로비저닝 할 때 대부분의 API를 백그라운드에서 지원하므로 랩의 작업을 바로 수행 할 수 있습니다. Qwiklabs 외부에서 자체 GCP 프로젝트를 생성 할 때는 특정 API를 직접 활성화해야합니다.

대부분의 Cloud API는 트래픽 수준, 오류율 및 지연 시간을 포함하여 프로젝트의 API 사용에 대한 자세한 정보를 제공하므로 Google 서비스를 사용하는 애플리케이션의 문제를 신속하게 심사 할 수 있습니다. 탐색 메뉴를 열고 API 및 서비스 > 라이브러리를 클릭하여이 정보를 볼 수 있습니다 .

"CATEGORY"헤더가있는 왼쪽 메뉴를 보면 제공되는 모든 범주 유형이 표시됩니다. API 검색 표시 줄에서 Dialogflow를 입력하고 Dialogflow API를 선택하십시오 . 이제 다음 페이지에 있어야합니다.

Dialogflow API를 사용하면 기본 기계 학습 및 자연어 이해 스키마에 대해 걱정할 필요없이 풍부한 대화 형 응용 프로그램 (예 : Google Assistant)을 구축 할 수 있습니다.

이제 사용을 클릭 하십시오 . 새 페이지로 이동하고 브라우저에서 뒤로 버튼을 누르면 API가 활성화 된 것을 확인할 수 있습니다.

이제이 API 사용해보기를 클릭하십시오 . 그러면 새 대화 상자가 열리고 Dialogflow API 설명서가 표시되고 사용 가능한 방법이 지정됩니다. 이 중 일부를 검사하고 완료되면 탭을 닫으십시오.

API에 대해 더 배우고 싶다면 Google Cloud의 새로운 실습 도구 인 APIs Explorer를 참조하십시오 . 또한 간단한 예제를 사용하여 도구에 대한 실습 환경을 제공 하는 랩 API 탐색기 : Qwik Start  만들었습니다 .

탐색 메뉴를 열고   클릭 하여 GCP 콘솔의 기본 페이지로 돌아갑니다

 

클라우드 쉘

이제 GCP 및 콘솔의 주요 기능을 이해 했으므로 Cloud Shell을 통해 실습을 수행 할 수 있습니다. Cloud Shell은 터미널 프롬프트에서 명령을 입력하여 GCP 프로젝트의 리소스 및 서비스를 관리 할 수있는 브라우저 내 명령 프롬프트 실행 환경입니다.

Cloud Shell을 사용하면 콘솔을 떠나지 않고도 모든 셸 명령을 실행할 수 있으며 사전 설치된 명령 줄 도구와 함께 제공됩니다.

콘솔의 오른쪽 상단에서 Cloud Shell 활성화 버튼을 클릭 한 후 프롬프트가 표시되면 Cloud Shell 시작 을 클릭 하십시오 .

콘솔 하단에 다음과 유사한 메시지 및 프롬프트가 표시된 새로운 검은 창이 나타납니다.

 

Welcome to Cloud Shell! Type "help" to get started. 
Your Cloud Platform project in this session is set to qwiklabs-gcp-76ad0f1342e20013. 
Use "gcloud config set project [PROJECT_ID]" to change to a different project. 
gcpstaging23396_student@cloudshell:~ (qwiklabs-gcp-76ad0f1342e20013)$

이제 Cloud Shell 세션이 시작되어 실행 중입니다. Cloud Shell에 다음을 복사하여 붙여 넣거나 입력하고 Enter 키를 누릅니다.

gcloud auth list

ACTIVE ACCOUNTGCP IAM 자격 증명 ( gcpstagingxxxxx_student@qwiklabs.net)으로 설정된 유사한 출력이 표시되어야합니다 .

Credentialed Accounts ACTIVE ACCOUNT * gcpstaging23396_student@qwiklabs.net 
To set the active account, 
run: $ gcloud config set account `ACCOUNT`

앞에서 언급했듯이 Cloud Shell에는 특정 명령 줄 도구가 사전 설치되어 있습니다. 기본 GCP 툴킷은 리소스 관리 및 사용자 인증과 같은 플랫폼의 많은 작업에 사용되는 gcloud 입니다.

인증 된 계정을 GCP 프로젝트에 나열 하는 gcloud명령 ( auth list)  실행했습니다 . 이 계정 이름은 이전에 콘솔에 로그인 한 Qwiklabs 사용자 이름과 일치합니다.

Cloud Shell에는 사전 설치된 툴킷 외에도 표준 unix CLI (명령 줄 인터페이스) 도구 및 nano 와 같은 텍스트 편집기가 함께 제공됩니다 . Cloud Shell에서 바로 파일을 만들고 편집 할 수 있습니다.

다음 touch 명령  실행하여 다음 파일을 작성하십시오 test.txt.

touch test.txt

touch출력을 생성하지 않습니다. unix 명령 ls  실행하여 현재 디렉토리의 파일을 나열하십시오.

ls

다음과 같은 결과가 나타납니다.

README-cloudshell.txt test.txt

 test.txt파일이 작업 디렉토리에 추가 된 것을 볼 수 있습니다. 앞서 언급 한 나노 텍스트 편집기를 사용하여 편집 해 봅시다. 파일을 편집하려면 nanoCloud Shell에서 편집 할 파일 이름을 입력 한 다음 입력 하십시오.

nano test.txt

Nano 텍스트 편집기로 빈 파일을 엽니 다.

다음과 같이 메시지를 입력하십시오.

GCP and Qwiklabs are the best!

입력 한 후에는 CNTRL + X 키를 길게 누르십시오 . 그런 다음 Y를 입력 하고 Enter 키 를 눌러 새 메시지와 함께 파일을 저장하십시오.

또 다른 유용한 명령은 cat 이며, 파일의 내용을 출력합니다. 다음 명령을 실행하여 파일이 올바르게 업데이트되었는지 확인하십시오.

cat test.txt

Cloud Shell 세션에 다음 출력이 표시되어야합니다.

GCP and Qwiklabs are the best!

마찬가지로 브라우저에서 나가지 않고도 Cloud Shell에서 파일의 내용을 모두 생성, 편집 및 출력 할 수있었습니다.

 

실습 종료

실습을 마쳤으므로 이 페이지 상단의 실습 종료 버튼을 클릭 하십시오.

2019년 하반기 [머신러닝 통합반] 코세라 & 퀵랩

AutoML Vision을 사용하여 클라우드에서 클라우드 이미지 분류

개요

AutoML Vision은 ML 전문 지식이 부족한 개발자가 고품질 이미지 인식 모델을 교육하는 데 도움이됩니다. AutoML UI에 이미지를 업로드하면 사용하기 쉬운 REST API를 통해 예측을 생성하기 위해 GCP에서 즉시 사용할 수있는 모델을 학습 할 수 있습니다.

이 실습에서는 이미지를 Cloud Storage에 업로드하고이를 사용하여 다양한 유형의 구름 (적운, 적란운 등)을 인식하도록 사용자 지정 모델을 학습합니다.

당신이 배울 것

  • 라벨이 지정된 데이터 세트를 Google Cloud Storage에 업로드하고 CSV 라벨 파일을 사용하여 AutoML Vision에 연결합니다.

  • AutoML Vision으로 모델을 교육하고 정확도를 평가하십시오.

  • 훈련 된 모델에서 예측을 생성합니다.

Google Cloud Shell 활성화

Google Cloud Shell은 개발 도구가로드 된 가상 머신입니다. 영구적 인 5GB 홈 디렉토리를 제공하며 Google 클라우드에서 실행됩니다. Google Cloud Shell은 GCP 리소스에 대한 명령 줄 액세스를 제공합니다.

  1. GCP 콘솔의 오른쪽 상단 툴바에서 Open Cloud Shell 버튼을 클릭합니다.

  2. 계속을 클릭하십시오 . 

환경을 프로비저닝하고 연결하는 데 약간의 시간이 걸립니다. 연결되면 이미 인증되었으며 프로젝트는 PROJECT_ID 로 설정됩니다 . 예를 들면 다음과 같습니다.

gcloud 는 Google Cloud Platform 용 명령 줄 도구입니다. Cloud Shell에 사전 설치되어 제공되며 탭 완성을 지원합니다.

이 명령으로 활성 계정 이름을 나열 할 수 있습니다.

gcloud auth list

AutoML Vision 설정

AutoML Vision은 이미지 분류 모델을 훈련시키고 예측을 생성하는 모든 단계에 대한 인터페이스를 제공합니다. Cloud AutoML API를 활성화하여 시작하십시오.

탐색 메뉴를 열고 API 및 서비스 > 라이브러리를 선택하십시오 . 검색 창에 "Cloud AutoML API"를 입력하십시오. 온 클릭 클라우드 AutoML의 API의 결과 다음 클릭 사용 .

1 분 정도 걸릴 수 있습니다. 이제 다음 페이지에 있어야합니다 (활성화 상태가 Enabled 로 설정되어 있는지 확인하십시오 ).

진행 상황 확인을 클릭 하여 목표를 확인하십시오

이제 새 탭을 열고 AutoML UI로 이동하십시오 . 랩 자격 증명을 선택하고 허용  클릭 하여 로그인합니다.

Chrome 사용자를위한 참고 사항 : 이 페이지가 표시되지 않으면 현재 Chrome 사용자 프로필에서 로그 아웃 한 후 다시 열어보십시오.

Google Cloud 프로젝트를 지정하라는 메시지가 표시됩니다. 드롭 다운 메뉴에서 Qwiklabs 프로젝트 ID를 선택하고 계속을 클릭하십시오 .

지금 설정 버튼을 클릭하십시오 . 시간이 조금 걸립니다.

GCP 콘솔로 돌아갑니다. Cloud Shell에서이 명령을 복사하여 프로젝트 ID 및 Qwiklabs Username에 대한 환경 변수를 작성 <QWIKLABS_USERNAME>하고 실험실에 로그인 한 사용자 이름으로 바꾸십시오.

export PROJECT_ID=$DEVSHELL_PROJECT_ID
export QWIKLABS_USERNAME=<QWIKLABS_USERNAME>

다음 명령을 실행하여 AutoML 권한을 부여하십시오.

gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member="user:$QWIKLABS_USERNAME" \
    --role="roles/automl.admin"
gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member="serviceAccount:custom-vision@appspot.gserviceaccount.com" \
    --role="roles/ml.admin"
gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member="serviceAccount:custom-vision@appspot.gserviceaccount.com" \
    --role="roles/storage.admin"

이제 다음을 실행하여 스토리지 버킷을 생성하십시오.

gsutil mb -p $PROJECT_ID \
    -c regional    \
    -l us-central1 \
    gs://$PROJECT_ID-vcm/

Google Cloud Storage에 교육 이미지 업로드

구름의 이미지를 분류하기 위해 모델을 훈련 시키려면 모델이 다른 유형의 구름과 관련된 이미지 기능에 대한 이해를 개발할 수 있도록 레이블이 지정된 훈련 데이터를 제공해야합니다. 이 예제에서 모델은 3 가지 다른 유형의 구름, 권운, 적운 및 적란운을 분류하는 방법을 배웁니다. AutoML Vision을 사용하려면 훈련 이미지를 Google Cloud Storage에 넣어야합니다.

GCP 콘솔에서 탐색 메뉴를 열고 저장소 > 브라우저를 선택하십시오 .

일단 거기에 도달하면 마지막 단계에서 생성 한 버킷이 표시됩니다.

클라우드 이미지를 추가하기 전에 Cloud Shell에서 다음 명령을 실행하고 아래 명령에서 버킷 이름으로 바꾸어 버킷 이름으로 환경 변수를 생성 YOUR_BUCKET_NAME하십시오.

export BUCKET=YOUR_BUCKET_NAME

교육 이미지는 Cloud Storage 버킷에서 공개적으로 사용할 수 있습니다. gsutilCloud Storage 용 명령 줄 유틸리티를 사용하여 교육 이미지를 버킷에 복사하십시오.

gsutil -m cp -r gs://automl-codelab-clouds/* gs://${BUCKET}

이미지 복사가 완료되면 Cloud Storage 브라우저 상단의 새로 고침 버튼을 클릭하십시오 . 그런 다음 버킷 이름을 클릭하십시오. 분류 할 3 ​​가지 서로 다른 클라우드 유형 각각에 대해 3 개의 사진 폴더가 표시되어야합니다.

각 폴더에서 개별 이미지 파일을 클릭하면 각 클라우드 유형에 대해 모델을 학습하는 데 사용할 사진을 볼 수 있습니다.

데이터 세트 만들기

교육 데이터가 Cloud Storage에 있으므로 AutoML Vision에서 액세스 할 수있는 방법이 필요합니다. 각 행에 학습 이미지의 URL과 해당 이미지의 관련 레이블이 포함 된 CSV 파일을 만듭니다. 이 CSV 파일은 귀하를 위해 작성되었습니다. 버킷 이름으로 업데이트하면됩니다.

다음 명령을 실행하여 파일을 Cloud Shell 인스턴스에 복사하십시오.

gsutil cp gs://automl-codelab-metadata/data.csv .

그런 다음 프로젝트의 파일로 CSV를 업데이트하십시오.

sed -i -e "s/placeholder/${BUCKET}/g" ./data.csv

이제이 파일을 Cloud Storage 버킷에 업로드 할 준비가되었습니다.

gsutil cp ./data.csv gs://${BUCKET}

해당 명령이 완료되면 버킷 새로 고침 버튼을 클릭하십시오 . data.csv버킷에 파일 이 있는지 확인하십시오 .

AutoML Vision 탭으로 다시 이동 하십시오. 여전히 "Google 클라우드 프로젝트 설정 완료"상태 인 경우 다시 확인을 클릭하십시오 .

이제 페이지가 다음과 유사해야합니다.

이전 버전 일 수 있으니 아래 이미지 참고

 

콘솔 상단에서 + NEW DATASET을 클릭하십시오 .

데이터 세트 이름으로 "clouds"를 입력하십시오.

Cloud Storage에서 CSV 파일 선택을 선택하고 방금 업로드 한 파일의 URL에 파일 이름을 추가하십시오 gs://your-project-name-vcm/data.csv.

이 실습에서는 "다중 라벨 분류 사용"을 선택하지 마십시오. 자신의 프로젝트에서 다중 클래스 분류를 수행하는 경우이 확인란을 선택하고 싶을 수 있습니다 .

데이터 세트 작성을 선택 하십시오 .

이미지를 가져 오는 데 약 2 분이 걸립니다. 가져 오기가 완료되면 데이터 세트의 모든 이미지가 포함 된 페이지가 나타납니다.

진행 상황 확인을 확인

이미지 검사

가져 오기가 완료되면 이미지 탭으로 이동합니다.

왼쪽 메뉴에서 다른 레이블 (예 : 적운 클릭)로 필터링하여 교육 이미지를 검토하십시오.

참고 : 프로덕션 모델을 구축하는 경우 높은 정확도를 보장하기 위해 
레이블 당 최소 100 개의 이미지가 필요합니다. 
이것은 단지 데모 일 뿐이므로 20 개의 이미지 만 사용되므로 모델을 빠르게 학습 할 수 있습니다.

이미지에 잘못 레이블이 지정된 경우 이미지를 클릭하여 레이블을 전환하거나 학습 세트에서 이미지를 삭제할 수 있습니다.

각 라벨에 몇 개의 이미지가 있는지에 대한 요약을 보려면 LABEL STATS를 클릭하십시오 . 브라우저 왼쪽에 다음이 표시됩니다.

참고 : 아직 레이블이 지정되지 않은 데이터 세트로 작업중인 경우 
AutoML Vision은 사내 휴먼 레이블링 서비스를 제공합니다.

모델 훈련

모델 훈련을 시작할 준비가되었습니다! AutoML Vision은 모델 코드를 작성할 필요없이 자동으로이를 처리합니다.

당신의 구름 모델을 학습하기 위해, 이동 기차 탭을 클릭 시작 훈련 .

모델 이름을 입력하거나 기본 자동 생성 이름을 사용하십시오.

남겨 클라우드 호스팅 을 선택하고 클릭 시작 훈련 .

이는 작은 데이터 세트이므로 완료하는 데 약 5 분이 걸립니다.

모델 평가

에서 평가 탭, 당신은 모델의 정밀도 및 호출에 대한 정보를 볼 수 있습니다. 다음과 유사해야합니다.

당신은 또한 점수 임계 값으로 놀 수 있습니다 :

마지막으로 아래로 스크롤하여 Confusion 매트릭스를 봅니다.

이 모든 것은 모델 정확도를 평가하고 교육 데이터를 개선 할 수있는 위치를 확인할 수있는 일반적인 머신 러닝 메트릭을 제공합니다. 이 실습에서는 정확도에 중점을 두지 않았으므로 예측 섹션에 대한 다음 섹션으로 넘어갑니다. 직접 정확도 측정 항목을 찾아보세요.

 

예측 생성

이제 가장 중요한 부분이되었습니다 : 이전에는 보지 못한 데이터를 사용하여 훈련 된 모델에 대한 예측 생성.

AutoML UI에서 예측 탭으로 이동 하십시오.

예측을 생성하는 몇 가지 방법이 있습니다. 이 실습에서는 UI를 사용하여 이미지를 업로드합니다. 모델이이 두 이미지를 분류하는 방법을 볼 수 있습니다 (첫 번째는 권운, 두 번째는 적란운입니다).

이 이미지들을 각각 마우스 오른쪽 버튼으로 클릭하여 로컬 컴퓨터로 다운로드하십시오.

AutoML Vision UI로 돌아가서 이미지 업로드를 클릭 하고 클라우드를 온라인 예측 UI에 업로드하십시오. 예측 요청이 완료되면 다음과 같은 내용이 표시됩니다.

진행 상황 확인 - pedictions를 실행 

매우 멋지다-모델은 각 구름 유형을 올바르게 분류했습니다!

축하합니다!

웹 UI를 통해 사용자 정의 기계 학습 모델을 학습하고 예측을 생성하는 방법을 배웠습니다. 이제 자신의 이미지 데이터 세트에서 모델을 훈련하는 데 필요한 것을 얻었습니다.무엇을 다루 었는가

  • Cloud Storage에 교육 이미지를 업로드하고 이러한 이미지를 찾기 위해 AutoML Vision 용 CSV를 생성하십시오.
  • AutoML Vision UI에서 라벨 검토 및 모델 교육
  • 새로운 클라우드 이미지에 대한 예측 생성

 

 

2019년 하반기 [머신러닝 통합반] 코세라 & 퀵랩

개요

Google Cloud Speech API를 사용하면 Google 음성 인식 기술을 개발자 응용 프로그램에 쉽게 통합 할 수 있습니다. Speech API를 사용하면 서비스에서 오디오를 보내고 텍스트를받을 수 있습니다 (자세한 내용은 Google Cloud Speech API 란 무엇입니까? 참조).

당신이 할 일

  • API 키 생성

  • 음성 API 요청 만들기

  • 음성 API 요청을 호출

설정 및 요구 사항

Google Cloud Shell

Google Cloud Shell 활성화

Google Cloud Shell은 개발 도구가로드 된 가상 머신입니다. 영구적 인 5GB 홈 디렉토리를 제공하며 Google 클라우드에서 실행됩니다. Google Cloud Shell은 GCP 리소스에 대한 명령 줄 액세스를 제공합니다.

  1. GCP 콘솔의 오른쪽 상단 툴바에서 Open Cloud Shell 버튼을 클릭합니다.

  1. 계속을 클릭하십시오 . 

환경을 프로비저닝하고 연결하는 데 약간의 시간이 걸립니다. 연결되면 이미 인증되었으며 프로젝트는 PROJECT_ID 로 설정됩니다 . 예를 들면 다음과 같습니다.

gcloud 는 Google Cloud Platform 용 명령 줄 도구입니다. Cloud Shell에 사전 설치되어 제공되며 탭 완성을 지원합니다.

 

API 키 생성

curlSpeech API에 요청을 보내는 데 사용하므로 요청 URL을 전달할 API 키를 생성해야합니다.

API 키를 작성하려면 탐색 메뉴 > API 및 서비스 > 신뢰 정보를 클릭하십시오 .

그런 다음 신뢰 정보 작성을 클릭 하십시오 .

드롭 다운 메뉴에서 API 키를 선택하십시오 .

방금 생성 한 키를 복사하십시오.

이제 API 키가 있으므로 각 요청에 API 키 값을 삽입하지 않아도되도록 환경 변수로 저장합니다.

다음 단계를 수행하려면 ssh를 통해 프로비저닝 된 인스턴스에 연결하십시오. 탐색 메뉴를 열고 Compute Engine을 선택하십시오 . 다음과 같은 프로비저닝 된 Linux 인스턴스가 표시되어야합니다.

SSH 버튼을 클릭하십시오. 대화식 쉘로 이동합니다. 명령 행에 <YOUR_API_KEY>방금 복사 한 키로 다음을 입력하십시오 .

export API_KEY=<YOUR_API_KEY>

나머지 실습을 위해이 SSH 세션을 유지하십시오.

Speech API 요청 만들기

참고 : Google Cloud Storage에서 사용 가능한 사전 기록 된 파일을 사용합니다 gs://cloud-samples-tests/speech/brooklyn.flac. 당신은 음성 API로 전송하기 전에이 파일을들을 수 있습니다 여기에 .

request.jsonSSH 명령 행에서 작성하십시오 . 이를 사용하여 음성 API에 대한 요청을 작성합니다.

touch request.json

이제 열 request.json사용하여 원하는 명령 줄 편집기 ( nano, vim, emacs) 또는 gcloud. 샘플 원시 오디오 파일 request.json의 uri값을 사용 하여 파일에 다음을 추가 하십시오.

{
  "config": {
      "encoding":"FLAC",
      "languageCode": "en-US"
  },
  "audio": {
      "uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
  }
}

요청 본문에는 config및 audio객체가 있습니다.

에서 config, 당신은 어떻게 요청을 처리 할 수있는 음성 API 알려주기 :

  •  encoding매개 변수는 파일이 API로 전송되는 동안 사용중인 오디오 인코딩 유형을 API에 알려줍니다. FLAC.raw 파일의 인코딩 유형입니다 (자세한 내용은 인코딩 유형에 대한 설명서 ).

config객체에 추가 할 수있는 다른 매개 변수 encoding가 있지만 유일한 매개 변수 입니다.

에서 audio객체, 당신은 API를 클라우드 스토리지에있는 오디오 파일의 URI를 전달합니다.

이제 Speech API를 호출 할 준비가되었습니다!

Speech API 호출

다음 curl명령 을 사용하여 API 키 환경 변수와 함께 요청 본문을 Speech API로 전달합니다 (모두 하나의 명령 줄에 모두 있음).

curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json \
"https://speech.googleapis.com/v1/speech:recognize?key=${API_KEY}"

응답은 다음과 같아야합니다.

{
  "results": [
    {
      "alternatives": [
        {
          "transcript": "how old is the Brooklyn Bridge",
          "confidence": 0.98267895
        }
      ]
    }
  ]
}

 transcript값은 음성 파일의 오디오 파일 텍스트 녹음을 반환하며 confidenceAPI가 오디오를 정확하게 녹음했는지 확인합니다.

syncrecognize위 요청 에서 메소드 를 호출했음을 알 수 있습니다 . Speech API는 동기식 및 비동기식 음성 텍스트 변환을 모두 지원합니다. 이 예제에서는 완전한 오디오 파일을 보냈지 만 syncrecognize, 사용자가 여전히 말하고있는 동안이 방법을 사용하여 텍스트 음성을 텍스트 음성으로 스트리밍 할 수 있습니다 .

Speech API 요청을 만든 다음 Speech API를 호출했습니다. 다음 명령을 실행하여 응답을 result.json파일 에 저장 하십시오.

curl -s -X POST -H "Content-Type: application/json" --data-binary @request.json \
"https://speech.googleapis.com/v1/speech:recognize?key=${API_KEY}" > result.json

 

 

 

 

 

 

2019년 하반기 [머신러닝 통합반] 코세라 & 퀵랩

 

클라우드 자연어 API : Qwik Start

Google Cloud Natural Language API를 사용하면 텍스트 문서, 뉴스 기사 또는 블로그 게시물에 언급 된 사람, 장소, 이벤트 등에 대한 정보를 추출 할 수 있습니다. 이 도구를 사용하여 소셜 미디어에서 제품에 대한 감정을 이해하거나 콜 센터 또는 메시징 앱에서 발생하는 고객 대화의 의도를 분석 할 수 있습니다. 분석을 위해 텍스트 문서를 업로드 할 수도 있습니다.

Cloud Natural Language API 기능

구문 분석 : 토큰과 문장을 추출하고 품사 (PoS)를 식별하며 각 문장에 대한 종속성 구문 분석 트리를 만듭니다.

엔티티 인식 : 개인, 조직, 위치, 이벤트, 제품 및 미디어와 같은 유형별로 엔티티를 식별하고 레이블을 지정하십시오.

감정 분석 : 텍스트 블록으로 표현 된 전체 감정을 이해합니다.

컨텐츠 분류 : 사전 정의 된 700 개 이상의 카테고리로 문서를 분류하십시오.

다국어 : 영어, 스페인어, 일본어, 중국어 (간체 및 번체), 프랑스어, 독일어, 이탈리아어, 한국어 및 포르투갈어를 포함한 여러 언어로 텍스트를 쉽게 분석 할 수 있습니다.

통합 REST API : REST API 를 통한 액세스 요청에 텍스트를 업로드하거나 Google Cloud Storage 와 통합 할 수 있습니다 .

이 실습에서는이 analyze-entities방법을 사용하여 Cloud Natural Language API에 텍스트 스 니펫에서 "엔터티"(예 : 사람, 장소 및 이벤트)를 추출하도록 요청합니다.

 

Google Cloud Platform 콘솔

실습을 시작하고 콘솔에 로그인하는 방법

  1. 실습 시작 버튼을 클릭하십시오 . 실습 비용을 지불해야하는 경우 결제 방법을 선택할 수있는 팝업이 열립니다. 왼쪽에는이 실습에 사용해야하는 임시 자격 증명이 채워진 패널이 있습니다.

  2. 사용자 이름을 복사 한 다음 Google 콘솔 열기 를 클릭하십시오 . 실습이 시작된 다음 계정 선택 페이지 가 표시된 다른 탭이 열립니다 .

    팁 : 나란히 별도의 창에서 탭을여십시오.

  3. 계정 선택 페이지에서 다른 계정 사용을 클릭 하십시오 .

  4. 로그인 페이지가 열립니다. 연결 세부 사항 패널에서 복사 한 사용자 이름을 붙여 넣으십시오. 그런 다음 비밀번호를 복사하여 붙여 넣습니다.

    중요 사항 : 연결 세부 사항 패널에서 신임 정보를 사용해야합니다. Qwiklabs 자격 증명을 사용하지 마십시오. 자신의 GCP 계정이있는 경우이 실습에 사용하지 마십시오 (요금이 부과되지 않음).

  5. 다음 페이지를 클릭하십시오.

    • 이용 약관에 동의합니다.
    • 임시 계정이므로 복구 옵션이나 이중 인증을 추가하지 마십시오.
    • 무료 평가판에 가입하지 마십시오.

클라우드 쉘

Google Cloud Shell 활성화

Google Cloud Shell은 개발 도구가로드 된 가상 머신입니다. 영구적 인 5GB 홈 디렉토리를 제공하며 Google 클라우드에서 실행됩니다. Google Cloud Shell은 GCP 리소스에 대한 명령 줄 액세스를 제공합니다.

  1. GCP 콘솔의 오른쪽 상단 툴바에서 Open Cloud Shell 버튼을 클릭합니다.

  2. 계속을 클릭하십시오 . 

환경을 프로비저닝하고 연결하는 데 약간의 시간이 걸립니다. 연결되면 이미 인증되었으며 프로젝트는 PROJECT_ID 로 설정됩니다 . 예를 들면 다음과 같습니다.

gcloud 는 Google Cloud Platform 용 명령 줄 도구입니다. Cloud Shell에 사전 설치되어 제공되며 탭 완성을 지원합니다.

이 명령으로 활성 계정 이름을 나열 할 수 있습니다.

gcloud auth list

산출:

Credentialed accounts: - <myaccount>@<mydomain>.com (active)

출력 예 :

Credentialed accounts: - google1623327_student@qwiklabs.net

이 명령으로 프로젝트 ID를 나열 할 수 있습니다.

gcloud config list project

산출:

[core] project = <project_ID>

출력 예 :

[core] project = qwiklabs-gcp-44776a13dea667a6

gcloud에 대한 전체 설명서는 Google Cloud gcloud 개요 에서 볼 수 있습니다 .

API 키 생성

먼저,이 코드 랩 전체에서 사용할 PROJECT_ID로 환경 변수를 설정합니다.

export GOOGLE_CLOUD_PROJECT=$(gcloud config get-value core/project)

그런 다음 Natural Language API에 액세스 할 새 서비스 계정을 작성하십시오.

gcloud iam service-accounts create my-natlang-sa \ --display-name "my natural language service account"

그런 다음 자격 증명을 만들어 새 서비스 계정으로 로그인하십시오. 이 신임 정보를 작성하고 다음 명령을 사용하여 JSON 파일 "~ / key.json"으로 저장하십시오.

gcloud iam service-accounts keys create ~/key.json \ --iam-account my-natlang-sa@${GOOGLE_CLOUD_PROJECT}.iam.gserviceaccount.com

마지막으로 GOOGLE_APPLICATION_CREDENTIALS 환경 변수를 설정하십시오. 환경 변수는 사용자가 작성한 신임 정보 JSON 파일의 전체 경로로 설정해야하며, 이전 명령의 출력에서 ​​볼 수 있습니다.

export GOOGLE_APPLICATION_CREDENTIALS="/home/USER/key.json"

엔터티 분석 요청

다음 단계를 수행하려면 ssh를 통해 프로비저닝 된 인스턴스에 연결하십시오. 탐색 메뉴를 열고 Compute Engine을 선택하십시오 . 다음과 같은 프로비저닝 된 Linux 인스턴스가 표시되어야합니다.

SSH 버튼을 클릭하십시오. 대화식 쉘로 이동합니다. 나머지 실습을 위해이 SSH 세션을 유지하십시오.

이제 다음 문장으로 Natural Language API의 엔티티 분석을 시도해 보겠습니다.

이탈리아 화가 미켈란젤로 카라바지오는 '성 마태의 소명'으로 유명합니다

다음 gcloud명령을 실행하십시오

gcloud ml language analyze-entities --content="Michelangelo Caravaggio, Italian painter, is known for 'The Calling of Saint Matthew'." > result.json

result.json 파일의 출력을 미리 보려면 아래 명령을 실행하십시오.

cat result.json

result.json 파일에 다음과 유사한 응답이 표시되어야합니다.

{
  "entities": [
    {
      "name": "Michelangelo Caravaggio",
      "type": "PERSON",
      "metadata": {
        "wikipedia_url": "http://en.wikipedia.org/wiki/Caravaggio",
        "mid": "/m/020bg"
      },
      "salience": 0.83047235,
      "mentions": [
        {
          "text": {
            "content": "Michelangelo Caravaggio",
            "beginOffset": 0
          },
          "type": "PROPER"
        },
        {
          "text": {
            "content": "painter",
            "beginOffset": 33
          },
          "type": "COMMON"
        }
      ]
    },
    {
      "name": "Italian",
      "type": "LOCATION",
      "metadata": {
        "mid": "/m/03rjj",
        "wikipedia_url": "http://en.wikipedia.org/wiki/Italy"
      },
      "salience": 0.13870546,
      "mentions": [
        {
          "text": {
            "content": "Italian",
            "beginOffset": 25
          },
          "type": "PROPER"
        }
      ]
    },
    {
      "name": "The Calling of Saint Matthew",
      "type": "EVENT",
      "metadata": {
        "mid": "/m/085_p7",
        "wikipedia_url": "http://en.wikipedia.org/wiki/The_Calling_of_St_Matthew_(Caravaggio)"
      },
      "salience": 0.030822212,
      "mentions": [
        {
          "text": {
            "content": "The Calling of Saint Matthew",
            "beginOffset": 69
          },
          "type": "PROPER"
        }
      ]
    }
  ],
  "language": "en"
}

과를 읽어보십시오. 응답의 각 "엔티티"에 대해 다음을 볼 수 있습니다.

  • 엔터티 name와 type사람, 위치, 이벤트 등
  • metadata관련 위키 백과 URL (있는 경우)
  • salience및이 엔티티가 텍스트에서 나타난 위치의 인덱스입니다. Salience는 [0,1] 범위의 숫자로, 텍스트 전체에 대한 개체의 중심성을 나타냅니다.
  • mentions다른 방식으로 언급 된 동일한 엔티티입니다.

Cloud Natural Language API에 첫 번째 요청을 보냈습니다.

클릭 하나로 끝내는 데이터 분석! 부제가 무척 끌린다.

 

 

빅데이터와 AI에 대한 수요는 나날이 늘어가고, 이에 따라 배우고자 하는 사람들도 무척 많다.

하지만 쉽게 접근하기 어렵다보니, 포기하게 되는 경우가 많다. 

그러던 와중에 DB 튜닝에서 유명한 엑셈EXEM에서 빅데이터 분석 오픈소스 툴에 대한 도서 집필소식을 들었다.

(엑셈에서는 DB뿐만 아니라 다양한 기술을 보유한 회사.  https://blog.ex-em.com )

 

엑셈 이야기

엑셈은 자신의 분야에서 열정을 다하고 즐거운 삶을 추구하는 사람들의 일터입니다. 서로 어우러져 협업하고 조화를 강조하는 기업문화가 엑셈인의 즐거운 하루하루를 만듭니다.

blog.ex-em.com

이 책은 먼저 KNIME 구성, 설치 및 환경 설정에 대해 기술 되어있다.

기본서를 목표로 만들어졌기때문에 예제 위주가 아닌 기본서이고, 추후 이를 활용한 고급분석에 대한 책을 출판 예정이라고 한다.

책소개를 살펴보면 쉽고 빠르게 활용할 수 있는 KNIME Analytics Platform 기반 데이터 분석

이며,  전체 적인 목차는  아래와 같이 구성되어 있다.

 

KNIME 소개

1. KNIME 설치 및 환경설정

1.1. 설치 방법
1.2. KNIME Analytics Platform 화면구성
1.3. 메모리 설정

2. 데이터 가공

2.1. 외부 데이터 KNIME으로 가져오기
2.2. KNIME에서 생성한 데이터 외부로 내보내기
2.3. 데이터 전처리

3. 데이터 탐색

3.1. 수치적 요약
3.2. 시각적 요약

4. 데이터 분석

4.1. 선형 회귀분석
4.2. 로지스틱 회귀분석
4.3. 의사결정나무
4.4. 랜덤포레스트
4.5. 신경망(MLP)
4.6. 연관성 분석
4.7. K-Means 군집분석
4.8. 계층적 군집분석

[부록] About KNIME Server

부록.1 대용량 데이터 처리 기능
부록.2 원격 사용자 간 워크플로우 공유 기능
부록.3 워크플로우 스케쥴링(자동화) 기능
부록.4 분석 결과 웹 대시보드(위자드) 기능

### 책을 펼쳐보면 나임의 소개 부터 왜 사용하는지 부터 설명되어 있다.

 

그리고 설치, 환경설정이 시작되는데, 대다수의 사용자의 환경인 윈도우즈 기반으로 따라할 수 있도록 되있다.

각 단계별 이미지를 통해 따라하기 쉽게 구성되어 있다.

개발IDE는 이클립스와 유사하게 되어있어서, java 개발자들은 쉽게 접근할수 있을것 같다.

그리고 각 화면에 따른 설명이 친절하게 되어 있어, 진행하다가 궁금증을 쉽게 해소 할수 있을 것이며

또한 홈페이지 운영을 통해 사용자들과 KNIME에 대한 신규기술이나 분석 방법, 노하우를 공유할 예정이라고 한다.

http://owleye.co.kr

 

OWLEYE

새로운 시각 새로운 감각

owleye.co.kr

환경설정이 마무리되면 데이터 가공부터 시작하게 되는데,

엑셀이나 DB연결(PostgreSQL, MySQL)을 통해 샘플 데이터의 출처와 형식을 이용해보고

db join이나 group by 그리고 정규화 등을 통한 전처리를 실습해볼 수 있다.

다음으로는 데이터 탐색인데, 평균, 표준편차를 어떻게 활용하여 수치적 요약을 사용할지, 

쉽고 빠르게 파악할수 있는 방법 중에 그래프와 차트와 같이 시각적 요약을 사용할지 고민해볼 수 있다.

데이터 분석단계에서는 , 많이 들어본 선형회기 분석, 로지스틱회귀 분석 등 빅데이터에 대한 분석시 한번쯤은 들어본 

방법 들을 확인해본다.  이또한 워크플로우 구성, 노드별 설정 내용을 예제를 통해 손쉽게 따라한다.

 

책 구매는 교보문고 등 온라인 서점을 통해 구매 가능!

http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9791188427031&orderClick=LAG&Kc=#N

 

KNIME을 활용한 Big Data분석

KNIME은 독일의 Konstanz 대학에서 개발된 워...

www.kyobobook.co.kr

https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=210140157

 

KNIME을 활용한 BIG DATA분석 by 조치선 / 정영진 / 이금미 / 주지오 / 신준호 / 김건호 / 이채원

데이터 분석을 처음 접하는 학생들과 현업 담당자들을 위하여 집필하였고 데이터 선택, 처리, 변환, 분석, 평가, 시각화 등의 전체 분석 과정에 대해서 쉽게 배울 수 있다.

www.aladin.co.kr

 

 

행사명:Google Developers ML Summit Seoul 2019

일시 2018 3 26 () 오전 09:30 ~ 오후 5:00

장소:서울특별시 강남구 역삼동 논현로 508, GS타워 아모리스홀

 

9:30 AM - 10:30 AM 등록

-       입구에서 등록 절차 진행 및 사진 촬영하고 있었다. 등록된 이름을 입력하면 자동으로 이름표가 출력되어 명찰을 패용했다.

 

 

10:30 AM - 10:40 AM 인사말 임성혁, Developer Relations Program Manager, Google

-       오늘 발표할 내용에 대한 설명과 구글이 한국에서 개발자 환경 생태 구축을 위해 노력을 하고 있고, 다양한 지원 프로그램을 수립하고 있다고 설명

 

 

 

 

특히, 2019 올해는 머신러닝 스터디 잼, 클라우드 스터디 잼 등 사람들이 스스로 학습할 수 있도록 지원하는 프로그램을 활성화 하고 잇다.

 

 

10:40 AM - 11:10 AM 기계학습 개요, 권순선 / Soonson Kwon, Sr. Developer Relations Program Manager, Google

-       전반적인 기계학습에 대한 개요를 설명하는 시간, AI, ML, DL 등의 역사는 의외로 오래되었고, 각 기업에서 도입하려고 하지만 데이터 수집부터 관리, 분석 등 신경 써야 할 부분이 많음. 구글에서는 Google Cloud Platform을 통한 다양한 AI를 제공 중이다. Data Model 둘 중에 하나 또는 모두를 구글에서 제공하는 서비스를 이용할 수도 있다.

 

 

 

 

 

11:10 AM - 11:40 AM TensorFlow 2.0: Machine Learning Made Easy, Kaz Sato Developer Advocate, Google

-       텐서플로우에 대한 설명 및 2.0이 도입되고 변화에 대한 이야기

 

 

 

 

11:40 AM - 12:10 PM 누구나 시작할 수 있는 Google ML API 첫걸음, 이정운 / Jungwoon Lee , Customer Engineer, Google Cloud

-       개인적으로 기억이 많이 남은 세션, ML을 공부 및 업무에 적용하려면 많은 수학 개념 및 데이터, 인프라 등을 신경 쓰지 않을 수 없는데, 구글에서는 이에 대해 좀 더 쉽게 접근하고 활용할 수 있도록 서비스 제공

 

 

 

12:10 PM - 12:40 PM ML Kit 업데이트, Khanh LeViet Developer Advocate, Google

-       기억이 잘 ..

점심식사

2:00 PM - 5:00 PM TensorFlow 코드랩 , 케라스와 TPU를 사용하여 인공신경망을 만들고, 훈련시키고, 튜닝하는 방법을 구글 코드랩(Google Codelabs)을 통해 다뤄봅니다.

-       아래 URL에 접속하여 브라우저를 통한 실습을 수행 약 180여분 소요.

-       파이썬의 기본개념이 필요하였음.

https://codelabs.developers.google.com/codelabs/keras-flowers-tpu/#0

머신러닝에 대해 많이 듣기는 했는데, 막상 어떻게 시작할지 몰라서


서점에만 기웃기웃 하다가 구글에서 머신러닝 스터디 잼이라는 교육 프로그램을 운영한다고 해서


2019년에 좋은 기회다 싶어서 주변 사람들과 함께 시작하였다.


신청은 1월 말쯤 완료 하였고, 2월 9일(토)에 메일이 도착하였다.


내용은 온라인 교육을 듣고, 실습도 함께하면 수료하는 일정이었다.


overview 유튜브 영상을 봤는데, 단순히 온라인 강의만 시청하는 것이면 졸렸을 것 같은데,


실습도 크롬을 통해 해볼 수 있는 것 같아서 좋은 것 같다.



어떻게 진행되고 사람들의 Q&A를 정리해서 올린 영상은 아래 주소 참고


https://youtu.be/8IPWvmgCdhA


어떤걸 공부하나요?


쿠버네티스는 가장 대중적인 컨테이너 오케스트레이션 시스템으로써, 여러 클러스터의 호스트 간에 컨테이너 배치, 스케일링 운영 등의 목적을 위한 구글 클라우드 플랫폼에 특화된 오픈 소스 플랫폼입니다.


 여러분들은 클라우드 스터디 잼 입문반을 통해 도커 이미지와 컨테이너를 구성해 보는 연습과 더불어, 쿠버네티스 엔진 애플리케이션을 배치하고 슬랙봇과 몽고DB에 적용해 보는 방법을 학습하게 됩니다.



교육 순서를 살펴보니


1. 퀵랩 쿠폰을 통해 온라인 강의를 수강신청 해야한다. (반드시 정해진 기간이내에 등록을 완료해야 한다)


2. (필수) 머신러닝 스터디 잼 입문반 수료 미션


   기한(2/24)내에 수료해야 한다.

    

   Google Cloud Speech API: Qwik Start    :   오디오를 서버로 전송하면 텍스트를 받는다.

     

    * Cloud Natural Language API: Qwik Start   :  텍스트 문서, 블로그, 뉴스 등에서 언급된 장소, 이벤트, 사람에 대한 정보 추출한다.
     

    * Speech to Text Transcription with the Cloud Speech API :

80여개가 넘는 오디오 파일로 부터 텍스트를 추출한다.


     

    * Entity and Sentiment Analysis with the Natural Language API :

 텍스트에서 엔티티를 추출하고 정서 및 구문 분석을 수행하고 텍스트를 카테고리로 분류 할 수 있다



팀원들과는 슬랙 slack을 통해서 대화방을 개설했다.


아직 본격적으로 시작하진 않았지만, 중간 중간 느낀점에 대해서 정리해보려고 한다.




+ Recent posts