일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- SW중심대학
- aws
- 머신러닝
- BOAZ
- 구글스타트업캠퍼스
- rl
- OPENHACK
- 뉴비톤
- Community Day
- Conference
- seq2seq
- API
- Speech
- Backend.AI
- gcp
- SageMaker
- Qwik Start
- GDG Campus
- Open Hack
- 오픈소스해커톤
- 코딩테스트
- kakao
- Tensorflow 2.0
- 스터디 잼
- 해커톤
- ainize
- CSIP
- entity
- re:Invent
- Ground Truth
- Today
- Total
pizzaplanet
[2019 머신러닝 스터디 잼] Cloud Natural Language API: Qwik Start 본문
트랙 Cloud Natural Language API: Qwik Start
GSP097
Overview
Google Cloud Natural Language API를 사용하여 텍스트 문서, 뉴스 기사, 블로그 게시물에 언급된 사람, 장소, 이벤트 등 정보를 추출할 수 있다. 소셜 미디어에서 감성을 파악하거나 콜센터 또는 메시징 응용 프로그램에서 발생하는 대화의 의도를 분석 할 수 있다.
Cloud Natural Language API 기능
- 문법 분석 : 문장의 부분 요소 인식(토큰, 품사(PoS) 등) 후 요소 간 관계를 트리화
- 개체 분석 : 개체 식별 후 사람, 조직, 위치, 이벤트 등 유형별로 라벨링
- 감정 분석 : 문장의 전반적인 감정을 파악
- 콘텐츠 분류: 사전 정의 된 700+ 카테고리에 맞게 문서 분류
- 다중 언어 지원 : 영어, 스페인어, 일본어, 중국어(간체 및 번체), 프랑스어, 독일어, 이탈리아어, 한국어 등
- REST API : REST API를 통한 액세스 가능
What you'll do
- API Key 생성
- 개체 분석 요청 메시지 전송
Create an API Key
1. 이번 트랙에서 사용할 PROJECT_ID로 환경 변수를 설정하자. NL API를 사용하기 위한 키가 있어야 한다. Speech API와는 다르게, JSON 파일로 접근 Key가 저장된다.
1 | export GOOGLE_CLOUD_PROJECT=$(gcloud config get-value core/project) | cs |
- gcloud config get-value core/project : 현재 프로젝트 ID 추출 명령
1 2 | gcloud iam service-accounts create my-natlang-sa \ --display-name "my natural language service account" | cs |
--display-name "my natural language service account"AM : Identity and Access Management 특정 사용자에게 합당한 이유, 합당한 시간에 사용 가능한 클라우드 자원을 사용할 수 있는 권한을 컨트롤함
my-natlang-sa : Service Account의 내부 이름
--display-name "my natural language service account" : Service Account의 외부 노출 이름. 옵셔널 정보이므로 필수는 아니다.
1 2 | gcloud iam service-accounts keys create ~/key.json \ --iam-account my-natlang-sa@${GOOGLE_CLOUD_PROJECT}.iam.gserviceaccount.com | cs |
~/key.json : API 저장될 파일 지정
--iam-account : IAM Service Account 로그인 플래그
my-natlang-sa : Service Account의 내부 이름
{GOOGLE_CLOUD_PROJECT} : 1에서 설정한 환경 변수
4. 생성한 API Key를 편하게 쓰기 위해 환경변수로 등록
1 | export GOOGLE_APPLICATION_CREDENTIALS="/home/USER/key.json" | cs |
Make an Entity Analysis Request
1. 개체 인식을 시도해보자.
1 2 | gcloud ml language analyze-entities --content= \ "Michelangelo Caravaggio, Italian painter, is known for 'The Calling of Saint Matthew'." | cs |
gcloud my language : NL API 요청을 수행 하겠다.
analyze-entities : NL API 기능 중 개체 분석을 수행하겠다. 아래는 그 외 기능
analyze-entity-sentiment
analyze-sentiment
analyze-syntax
classify-text
--content-file : 분석 할 대상. 예제에선 문장으로 넘겼지만 파일 자체를 넘길 수도 있다.
--language : 예제엔 나오지 않았지만 분석 대상 언어를 선택할 수 있다. 명시하지 않으면, 자동으로 감지한다.
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | { "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" } ] } ] "language": "en" } | cs |
entities : 여러 개체에 대한 정보를 담고 있다.
language : 탐지한 언어
name : 개체 이름(전체 텍스트 중 분석 대상이 된 부분 문자열)
type : 개체의 타입. PERSON? LOCATION? EVENT?
metadata : 연관된 위키피디아 정보가 있을 시 포함됨
salience : 전체 텍스트에서 해당 개체가 중요한 정도(max 1.0)
mentions : 전체 텍스트에서 이 개체와 동일한 개체가 발견된 다른 지점(index)에 대한 정보 목록
진행 영상
참고
[Cloud Natural Language API: Qwik Start]
'AI' 카테고리의 다른 글
[2019 머신러닝 스터디 잼] Entity and Sentiment Analysis with the Natural Language API (0) | 2019.02.13 |
---|---|
[2019 머신러닝 스터디 잼] Speech to Text Transcription with the Cloud Speech API (0) | 2019.02.13 |
[2019 머신러닝 스터디 잼] Google Cloud Speech API: Qwik Start (0) | 2019.02.12 |
Kaggle API install and Competitions Data Download (0) | 2018.09.18 |