AWS

AWS 머신러닝 부분에 관해

S_N_Y 2024. 3. 11. 11:02

 

AWS 내 머신러닝을 이용하거나 만들 수 있는 서비스에 대해 알아보자

 

#0 Amazon Rekognition - 머신러닝을 이용해서 사람을 인식할 수 있다? 🧿

 

머신러닝을 이용해서 사람, 텍스트, 이미지/동영상 장면을 인식하는 서비스이다.

이런 식으로 사물을 분석할 수도 있다.

안면 분석도 할 수 있어 사용자를 인증하거나 사람들의 수를 셀 수 있다. 이를 이용하면 익숙한 얼굴에 대해 빅데이터로 사용할 수 있다.

(유명인사 감지, 텍스트 감지, 안면 생체 감지 등 다양하게 활용할 수 있다!)

 

#1 Amazon Transcribe - 음성 → 텍스트로 자동 변환(🔊 -> ✒️)

 

음성을 텍스트로 변환해주는 도구로서 자동 음성 인식인 ASR이라는 딥러닝 프로세스를 사용해서 빠르게 변환해준다.

 

여기에는 두 가지 기능을 알 필요가 있는데 다음과 같다.

1. 개인 식별 번호(PII)를 자동으로 제거할 수 있는 기능 : 누군가의 이름, 나이, 주민등록번호 등과 같이 민감한 정보들을 자동으로 제거할 수 있다.

필자는 한국어로 해봤는데 제대로 안되는 것 같아 영어로 말하는걸 추천한다.
영어로 말하면 이런 식으로 민감한 정보들은 알아서 [ ]표시로 넘어가는 것을 볼 수 있다.

 

2. 다국어에 대한 자동 언어 식별 기능 : 여러 나라의 언어를 자동으로 식별해준다.

=> Amazon Transcribe의 사용사례는 고객 서비스 통화를 받아쓰기해서 자동으로 자막을 만들어주는 것들에 대해 유용하다. 

 

+) Amazon Polly - 텍스트 →음성으로 자동 변환(✒️ ->🔊)

     Polly는 Transcribe와 반대 개념

 

#2 Amazon Lex와 'Connect' 연결

 

Lex는 Amazon Alexa(기가지니같이 집에 둘 수 있는 작은 AI 기기)인데 에도 들어가는 기술로 자동 음성 인식, ASR을 통해 음성을 텍스트로 변환해주는 등 전반적인 기술들이 들어가있다. 자연어 이해 기능을 통해서 텍스트나 발신자의 의도까지도 캐치할 수 있다.

또한 Lex는 챗봇을 구축하는 기술이다. Amazon Connect와 연결해서 더 좋게 사용할 수 있다. Amazon Connect는 스마트 가상 고객 센터로 전화를 받고 응대 흐름 중에 작용하며 아래의 그림을 보며 자세하게 설명해보겠다.

+) 스마트 고객 센터를 구축하는 방법 :

Amazon Connect에 있는 전화번호에 약속을 정하려고 하는 전화가 왔다고 가정했을 때(Amazon Connect에 전화한 것), Lex는 해당 전화에 대한 모든 정보를 스트리밍해서 전화 통화의 의도를 파악하고 올바른 Lambda함수를 호출한다. 이때 Lambda함수는 "누가 내일 오후 3시에 누구와 미팅이 있대~"라고 전달 받은 뒤, 해당 미팅 일정을 CRM에 기록하는 코드를 작성한다..! 

 

#3 Amazon Comprehend - 자연어 처리에 관해

이 서비스는 읽어 들인 여러 데이터에 대해서 그 의미, 즉 사물을 이해하는 것을 목적으로 한다 - 자연어처리(NLP)

완전 관리형 서버리스 서비스로 머신러닝을 이용하여 텍스트에서 인사이트와 관계를 찾아낸다.

=> 예를 들어 텍스트의 Language와 주요 문구, 장소, 사람, 브랜드 등등을 추출할 수 있고 분석하고 있는 텍스트가 긍정적/부정적인지 이해할 수 있도록 감정 분석을 할 수도 있다.

=> 그리고 파악한 주제별로 그룹을 지정할 수 있는데 방대한 기사를 하나씩 입력하지 않고 하나의 그룹을 지정해서 Comprehend에 입력하면 그 결과를 주제별로 묶을 수도 있다는 것이다.

 

#4 Amazon SageMaker - 머신 러닝 모델 구축 툴⚙️, Amazon Forest - 예측 지원🌲

 

<Amazon SageMaker ⚙️>

완전 관리형 서비스개발자나 데이터 분석가가 이를 이용해서 머신 러닝 모델을 구축할 수가 있다. 지금까지 위에서 살펴본 서비스는 특정 목적이 있었다면 Amazon SageMaker는 고차원의 머신 러닝 서비스로 실제 개발자나 데이터 분석가가 이를 이용해서 모델을 구축할 수 있는 툴이다.

=> 따라서 훨씬 발전된 서비스지만 이용이 복잡하다.

 

<Amazon Forest 🌲> - 학습을 통해 매우 정확한 예측을 제공

예측을 지원하는 아주 간단한 서비스로 머신 러닝을 이용해서 정확한 예측을 제공해준다. (예 : 우비의 향후 매출 예측해줘)

몇 달에 걸쳐서 분석해야 하는 것을 몇 시간만에 예측할 수 있는 툴이라 제품 수요 계획이라던지 재무 계획, 리소스 계획 등 여러가지 계획들을 예측할 수 있도록 위임해준다.

 

#5 Amazon Kendra - 문서 검색 서비스📑(ML 기반 검색 엔진)

머신러닝을 이용한 문서 검색 서비스로 문서 내에서 답변을 추출할 수 있도록 지원해준다. 

문서는 여러 데이터 소스(구글 드라이브, MS...)에서 찾아볼 수 있고 Kendra가 이것들을 인덱싱(indexing)하여 내부적으로 구축된 knowlefge index를 통해 구축하며 구글처럼 자연어 검색 기능으로도 사용할 수도 있다. 

 

#6 Amazon Personalize - 실시간 맞춤형 추천

이 기능을 통해 실시간으로 맞춤형을 추천하는 앱을 구현할 수 있다. 개인화된 추천을 해주어 사람마다 re-ranking이 되며 우리가 의자를 검색했다면 그에 따른 가구 추천들을 보여지게 하는 툴이라고 볼 수 있다. 

AWS 내 Personalize로 가서 S3로부터 입력 데이터를 읽어들이고( Personalize API를 이용하면 Personalize서비스에 실시간 데이터를 통합할 수도 있다.) 이 데이터를 Cusonized personalized API로 보내져서 웹사이트, 애플리케이션 등으로 가거나 개인화 결과를 이메일이나 SMS으로 전송할 수도 있다. 

 

#7 Amazon Textract - 텍스트 추출 📤

우리는 흔히 앱에서 주민등록번호나 면허증을 쉽게 입력할 수 있도록 사진을 찍으면 텍스트가 자동 추출되는 것을 본 적이 있다. AWS에서는 이런 식으로 문서를 분석해서 텍스트를 추출해주는 기능도 제공하고 있다.

 

✅짤막한 개념 정리

Amazon Translate : 번역 기능 제공

Amazon Detective : 잠재적인 보안 문제 또는 의심스러운 활동의 근본 원인을 쉽게 분석, 조사 및 신속하게 식별

AWS WAF : 가용성에 영향을 미치거나 보안을 손상시키거나 과도한 리소스를 소비할 수 있는 일반적인 웹 악용으로부터 웹 애플리케이션 또는 API를 보호하는 데 도움이 되는 웹 애플리케이션 방화벽

AWS Artifact : 중요한 규정 준수 관련 정보를 제공하는 중앙 리소스

AWS는 인프라 내의 결함을 패치하고 수정할 책임이 있지만 고객 또한 게스트 OS와 애플리케이션을 패치할 책임이 있다

=>패치 관리는 AWS와 고객 둘 다 책임져야 한다.

Shield는 DDos 공격으로부터 '실행 중인 애플리케이션을 보호하는 데'만 사용