내부 검색, 코드 작성 개선 지원, 이상거래 탐지, 머신러닝 시스템의 전반적인 개선하는... 아마존 켄드라, 아마존 코드구루, 아마존 프로드 디텍터, 아마존 트랜스크라이브 메디컬, 아마존 A2I 등

아마존웹서비스(Amazon Web Services, 이하 AWS)는 아마존의 풍부한 머신러닝 경험을 바탕으로 머신러닝 분야 경험이 없는 다양한 업계와 규모의 조직들도 머신러닝으로 구현되는 최신 엔터프라이즈 검색, 코드 리뷰와 프로파일링, 이상거래 탐지, 의료 기록, AI 예측에 대한 리뷰 등 더욱 많은 개발자가 머신러닝을 이용해 향상된 엔드유저 경험을 개발할 수 있도록 지원하는 등 5가지 최신 AI 서비스를 공개했다.

주요 특징과 기능을 요약해본다.

▶머신러닝으로 엔터프라이즈 검색 기능 혁신하는 '아마존 켄드라(Amazon Kendra)'

수년간의 많은 노력에도 불구하고, 내부 검색은 여전히 많은 기업들에게 숙제로 남아있다. 대부분의 직원들은 자신들이 찾고자 하는 정보를 쉽게 검색하지 못하며, 조직 내부에는 체계적으로 정리되지 않은 방대한 양의 텍스트 데이터가 있다.

이런 정보들을 잘 검색해 다양한 양식으로 저장하고 쉐어포인트, 인트라넷, 아마존 S3, 사내 파일 저장 시스템 등 다양한 데이터 소스에 분산한다면, 매우 유용한 정보가 될 수 있는 경우가 많다.

사용 가능한 일반적인 웹 기반 검색 도구들은 많지만, 대부분의 조직에서는 여전히 내부 검색을 제대로 시행하지 못하고 있다. 현재 사용가능한 도구들은 기존 데이터 사일로(silo)를 인덱싱(indexing)하지 못하고, 자연어 쿼리를 제공하지 않으며, 정확한 결과를 제공하지 못하기 때문이다.

아마존 켄드라는 단지 키워드가 아닌 실제 질문을 이용해 여러 데이터 사일로를 검색하고, 무작위 링크를 제공하는 대신 AI 기술을 사용해 내부 직원들이 찾는 정확한 답변을 제공해 엔터프라이즈 검색을 혁신한다.

사진은 켄드라 시연 화면으로 단순한 키워드 대신 자연어 질문을 사용하여 원하는 답을 얻는다(홈페이지 캡처)
사진은 켄드라 시연 화면으로 단순한 키워드 대신 자연어 질문을 사용하여 원하는 답을 얻는다(홈페이지 캡처)

예를 들어, “IT 지원 센터는 몇 시에 문을 여나요?”과 같은 구체적인 질문을 하면, 아마존 켄드라가 “IT 지원 센터는 오전 9시 30분에 문을 엽니다”와 같은 구체적인 답변과 함께 IT 티케팅 포털 링크와 기타 관련 사이트 링크를 답변으로 제공한다.

고객은 아마존 켄드라를 자신의 모든 애플리케이션, 포털, 위키 등에 적용할 수 있다. AWS 매니지먼트 콘솔(AWS Management Console)에서 단 몇 번의 클릭만으로 다양한 문서 저장소에서 아마존 켄드라를 활용하면, 페타바이트 규모의 데이터를 종합해 중앙 인덱스(centralized index)를 구축할 수 있다.

켄드라는 문서 사용권한을 스캔해 검색 결과에 사용자 접근권한이 있는 문서만 포함해 검색 결과가 기존 문서 접근 정책을 따르도록 한다. 또한, 아마존 켄드라는 클릭 데이터(click-through data), 사용자 위치, 피드백 등을 활용해 시간이 지남에 따라 답변의 정확도를 높이고, 고객의 특성에 맞게 머신러닝 모델을 적극적으로 재훈련해 전체적인 정확성을 높인다.

'아마존 코드구루(Amazon CodeGuru)' 소프트웨어 개발자 도와 코드 리뷰 자동화 및 애플리케이션의 고비용 코드 라인 식별

아마존처럼 AWS 고객들도 수많은 코드를 쓴다. 소프트웨어 개발 과정에서 개발자들은 코드를 쓰고, 검토하고, 컴파일하고, 애플리케이션을 배포한 뒤, 애플리케이션 성능을 측정하고, 데이터를 사용해 코드를 개선한다. 그리고 다시 새로운 작업을 시작하고 이러한 과정을 반복한다.

하지만, 잘못된 코드가 사용된다면 이 모든 과정이 무용지물이기 때문에, 개발자팀이 코드 리뷰를 통해 로직, 신택스(syntax), 스타일을 검토한 후, 기존 애플리케이션 코드 베이스에 새로운 코드를 추가하는 것이다.

아마존과 같은 대기업도 코드 리뷰를 위한 시간 여유가 있는 충분히 숙련된 개발자를 확보하는 데 어려움을 겪는다. 날마다 방대한 량의 코드가 생성되고 있기 때문이다. 그리고 숙련된 개발자의 검토에도 불구하고, 고객 대면 애플리케이션에 적용되기 전 문제를 미처 확인하지 못해 버그나 성능문제가 발생하기도 한다.

아마존 코드구루는 코드 리뷰를 자동화하고, 애플리케이션의 고비용 코드 라인을 찾아내는 새로운 머신러닝 서비스로 아마존 코드구루에는 코드 리뷰와 애플리케이션 프로파일링이라는 두 가지 구성요소가 있다.

애플리케이션 성능을 최적화 할 수 있는 기회를 발견하면 Amazon CodeGuru 프로파일러는 변경을 권장하는 이유, 문제의 원인, 해결 방법 및 코드에서 이 문제가 애플리케이션에 영향을 미치는 위치를 설명한다.
애플리케이션 성능을 최적화 할 수 있는 기회를 발견하면 Amazon CodeGuru 프로파일러는 변경을 권장하는 이유, 문제의 원인, 해결 방법 및 코드에서 이 문제가 애플리케이션에 영향을 미치는 위치를 설명한다.

코드 리뷰의 경우 개발자들은 점차 더 큰 저장소를 제공하는 깃허브(GitHub)과 코드커밋(CodeCommit)을 지원하는 기존 코드를 사용하고, 일상적인 절차를 변경하거나 소프트웨어를 설치할 필요 없이 아마존 코드구루를 코드 리뷰어 중 한 명으로 추가한다.

아마존 코드구루는 풀 리퀘스트(pull request)를 받아 아마존에서 수십 년간 축적된 코드 리뷰로 학습한 사전 훈련된 모델과 깃허브의 상위 1만 개 오픈소스 프로젝트를 사용해 코드 검토를 자동 진행한다. 또 코드 내 변경사항을 검토해 품질을 관리하고 문제 발견 시 코드 라인, 특정 문제, 코드 예시와 관련 문서가 포함된 개선방안 추천을 식별하는 풀 리퀘스트에 사람이 읽을 수 있는 코멘트를 추가한다.

아마존 코드구루에는 고객들이 가장 많은 비용이 소요되는 코드 라인을 찾도록 도와주는 머신러닝으로 구현되는 애플리케이션 프로파일러가 포함돼 있다. 코드구루를 실행하기 위해 고객 애플리케이션에 소형 로우 프로파일 에이전트(low profile agent)를 설치해 아마존 코드구루가 애플리케이션 실행 시간을 관찰하고, 5분마다 애플리케이션 코드를 프로파일 한다.

Amazon CodeGuru Reviewer는 풀 요청을 스캔하고 Github 또는 AWS CodeCommit의 소스 코드에 대한 권장 사항과 문제의 원인 및 해결 방법에 대한 설명을 제공한다.
Amazon CodeGuru Reviewer는 풀 요청을 스캔하고 Github 또는 AWS CodeCommit의 소스 코드에 대한 권장 사항과 문제의 원인 및 해결 방법에 대한 설명을 제공한다.

이 코드 프로파일에는 특정 코드라인과 직접적으로 연결되는 저지연과 CPU 사용률 관련 상세 정보가 포함돼 있다. 아마존 코드구루는 운영자들이 애플리케이션에서 가장 많은 비용이 소요되는 코드 라인을 찾도록 지원하고, 성능 병목 현상을 일으키는 다른 코드 라인을 시각적으로 식별하는데 돕는 플레임(flame) 그래프를 생성한다. 아마존은 수년간 아마존 코드구루를 통해 8만 개 이상의 애플리케이션 코드를 프로파일링 했다.

2017년부터 2018년까지 아마존의 고객 사업부의 아마존 프라임데이 팀이 아마존 그루의 내부 버전을 광범위하게 활용해 애플리케이션 효율성을 크게 향상시킬 수 있었다. CPU 사용률은 325% 증가했으며, 프라임 데이 관리에 필요한 인스턴스의 수는 감소하고, 전체 비용은 39% 줄었다. 

▶머신러닝 기반 자동 이상거래 탐지 기능 제공하는 '아마존 프로드 디텍터(Amazon Fraud Detector)'

전 세계 조직들이 금융사기로 날마다 수백억 달러에 달하는 손실을 입고 있다. 현재 다수의 AWS 고객이 값비싼 대규모 금융사기 관리 시스템에 투자하고 있다. 이런 시스템들은 많은 시간이 소요되고, 주문 제작에 큰 비용이 들며, 금융사기 패턴 변화에 맞춰 최신상태를 유지하기 쉽지 않은 수동으로 코딩된 규칙에 기반한 경우가 많다.

그래서 선량한 고객을 사기꾼으로 오해하거나, 값비싼 금융사기 리뷰를 실시하고, 금융사기 발생률을 낮출 수 있는 기회를 놓치게 된다. 아마존은 20여년간 머신러닝과 같은 첨단 기술을 이용해 이상거래를 탐지해왔으며, 금융사기 범죄자들을 상대한다는 것은 막대한 자원을 들여 이상거래 방지시스템을 구축해 지속적으로 업그레이드해야 하는 끊임없는 추격전과 같다는 사실도 잘 알고 있다. 

아마존 프로드 디텍터는 아마존 고객 사업부문에서 사용되는 동일한 기술을 바탕으로, 잠재적인 온라인 신원도용과 결제 사기를 실시간 확인하는 완전 관리형 서비스로, 머신러닝 입문자도 사용 가능하다.

또한 이상거래와 정상적인 거래의 데이터 기록을 이용해, 실시간, 저지연 이상거래 예측을 제공하는 머신러닝 모델을 구축, 훈련, 적용한다. 아마존 프로드 디텍터를 실행하기 위해서 고객들은 아마존 S3(Amazon Simple Storage Service)에 거래 데이터를 업로드해 모델 학습을 자신 용도에 맞게 조절해야 한다.

고객들은 거래와 연관된 이메일 주소와 IP 주소만 제공하고, 이외에 청구서 주소, 전화번호 등과 같은 데이터도 선택적으로 제공할 수 있다. 고객들이 예측하고자 하는 신규 계정이나 온라인 결제 사기 등 금융사기 유형을 바탕으로 아마존 프로드 디텍터가 아마존에서 수십년간 진행한 대규모 이상거래 탐지 위험 분석 경험을 바탕으로 데이터를 사전 처리하고, 알고리즘을 선택해, 모델을 학습한다.

아마존 프로드 디텍터는 아마존 데이터를 학습한 머신러닝 기반 데이터 탐지기도 사용한다. 이와 같은 데이터 탐지기는 아마존의 이상거래 활동과 연관된 특이한 이메일 이름 지정 규칙 등 일반적인 패턴 확인을 도와 고객이 프로드 디텍터에 제공한 이상거래 사례가 소량일 경우에도 학습된 모델의 정확도를 높여주며, 모델을 훈련하고, 완전 관리형 개인 API 엔드포인트에 적용한다.

고객들은 API에 신규가입, 신규 거래 등 새로운 활동을 전송하고, 이상거래 위험도 점수가 포함된 이상거래 보고서를 받을 수 있다. 애플리케이션은 이 보고서를 바탕으로 거래 수락, 검토를 위한 전송 등 조치 방법에 대해 결정할 수 있다. 고객들은 아마존 프로드 디텍터를 이용해 이상거래를 더 빠르고, 쉽고, 정확하게 탐지할 수 있다. 

'아마존 트랜스크라이브 메디컬(Amazon Comprehend Medical)' 의료 서비스 제공자의 환자 치료 집중 위한 고도의 정확성 갖춘 음성-텍스트 변환 기능 제공

현재 의사들은 일상 업무의 일환으로 전자진료기록(electronic health record, EHR) 시스템에 상세 데이터를 기입해야 한다. 하지만 진료기록을 정확하게 기록하고 문서화하는 솔루션들은 차선책으로 치부되고 있다. 많은 병원에서 의사들은 녹음기에 진료기록을 음성으로 남기고, 그 음성파일을 제 3의 수동 트랜스크립션 업체에 맡긴다.

이 작업은 많은 비용이 들고 최대 3일까지 소요될 수 있어 전반적인 문서작업을 지연시킨다. 다른 옵션은 기존의 프론트엔드 받아쓰기 소프트웨어를 사용하는 것인데, 이런 도구들은 많지 않고, 의사들은 여전히 진료내용 기록업무에 시간을 소비한다. 필사 담당자를 고용해 진료가 진행되는 동안 진료내용을 기록하는 것이다.

하지만 환자들은 필사 담당자를 불편하다고 느낄 수 있고, 의사들도 기록 내용에 오류가 많다고 지적하고 있다. 의료 기관들은 필사 담당자를 대규모로 고용하는 데 어려움을 느낀다. 기존 솔루션은 진료기록 문서화의 효율성과 환자 진료 개선 측면에서 부족한 면이 많다.

아마존 트랜스크라이브 메디컬은 머신러닝 기술을 이용해 자연어를 자동으로 기록해 이 문제를 해결한다.

작동원리
작동원리

아마존 트랜스크라이브 메디컬의 음성-텍스트 변환 기능을 바탕으로 개발된 임상 문서 애플리케이션은 정확한 기록을 저렴한 가격에 제공한다. 아마존 트랜스크라이브 메디컬은 수 천 시간의 진료 음성 파일을 학습한 여러 개의 머신러닝 모델로 구성돼 있으며, 머신러닝으로 구동되는 정확한 의료 기록을 제공한다. 기존에 수 일이 걸렸던 진료기록을 실시간으로 작성할 수 있게 된 것이다.

아마존 트랜스크라이브 메디컬은 의사가 환자를 진료하는 동안 자동으로 대화를 기록해 의료진이 환자 진료에 집중할 수 있도록 지원한다. 의사들이 자연스럽게 대화하면 아마존 트랜스크라이브 메디컬에 내장된 자동 구두법(punctuation)을 이용해 기존 녹취 소프트웨어들의 한계를 극복한다.

의료 사업자의 경우 아마존 트랜스크라이브 메디컬을 기반으로 구축된 음성 솔루션은 수천 개의 잠재적인 의료 센터에 확대 적용 가능해, 임시 기록 관리의 어려움을 해소할 수 있다. 아마존 트랜스크라이브 메디컬은 HIPAA 인증을 받았으며, 음성지원 애플리케이션, 마이크가 지원되는 모든 디바이스와 통합 가능한 쉽게 사용할 수 있는 API를 제공한다.

아마존 트랜스크라이브 메디컬을 통해 생성된 텍스트 데이터는 EHR 시스템에 최종 기입되기 전 다운스트림 데이터 분석을 위해 자연어 처리 서비스인 아마존 컴프리헨드 메디컬과 같은 타 아마존 서비스에서도 사용할 수 있다. 

▶개발자가 리뷰 통해 머신러닝 예측 검증하도록 지원하는 '아마존 A2I(Amazon Augmented Artificial Intelligence)'

머신러닝은 이미지 속의 물체 식별, 스캔한 문서에서 텍스트 추출, 음성을 텍스트로 변환하고 이해하는 등 다양한 면에서 고도로 정확한 예측을 제공할 수 있다.

어떤 용도로 사용되든, 머신러닝 모델은 예측을 제공하면서 모델의 관점에서 그 예측이 얼마나 정확한지 나타내는 신뢰도 점수를 제공한다. 신뢰도 점수가 높을수록, 예측결과의 신뢰도도 높아지는 것이다.

많은 이용 사례에서, 개발자가 높은 신뢰도 점수를 받으면, 개발자는 그 결과가 정확할 가능성이 높다고 생각해, 사용자가 생성한 콘텐츠를 SNS 상에서 자동으로 조절하거나 동영상에 자막을 추가하는 등 자동으로 처리할 수 있다.

하지만 예측 결과에 일부 모호한 부분이 있어 원하는 수준의 신뢰도를 확보하지 못한 경우, 사람이 개입해 모호한 부분을 검토해야 할 수 있다. 이와 같은 머신러닝과 검토자 간의 상호 작용은 머신러닝 시스템의 성공에 매우 중요하다. 하지만 사람이 개입해 검토하는 작업은 쉽지 않고 대규모 프로젝트의 경우에는 많은 비용이 든다.

또, 이 작업은 여러 단계를 거쳐야 하고 검토작업과 그 결과를 관리하려면 맞춤형 소프트웨어가 필요하며, 많은 검토 인원을 고용하고 관리해야 한다. 결과적으로 개발자들은 애플리케이션 구축보다 검토 작업을 관리하는데 더 많은 시간을 할애하거나, 아예 검토 절차를 포기해 결국엔 예측의 신뢰도와 활용도가 떨어지게 된다.

작동원리
작동원리

아마존 A2I는 사람이 제공하는 머신러닝 애플리케이션 리뷰 구축과 관리를 보다 쉽게 할 수 있도록 지원하는 새로운 서비스로 아마존 레코그니션(Amazon Rekognition)과 아마존 텍스트랙트(Amazon Textract)의 머신러닝 예측에 대한 사람 리뷰를 보다 쉽게 할 수 있도록 지원하는 이미지 속 물체 감지, 음성-텍스트 변환, 콘텐츠 조정 등 일반적인 머신러닝 업무에 대한 사전 구축된 사람 리뷰 워크플로우를 제공한다.

개발자들은 특정 애플리케이션에 대한 신뢰도 임계값(confidence threshold)을 선택해, 이보다 낮은 신뢰도 점수를 갖고 있는 모든 예측들은 사람 리뷰어에게 전송돼 추가 검증을 받는다. 개발자들은 50만 명으로 이뤄진 아마존 텍스트랙트의 글로벌 인력, 사전 승인된 인력을 갖춘 제3자 조직(Startek, iVision, CapeStart, Cogito, iMerit 등), 혹은 자체 사설 리뷰어를 통해 리뷰를 진행할 수 있다.

리뷰 결과는 아마존 S3에 저장되며, 리뷰가 완료되면 개발자들에게 통지해 사람 리뷰어가 진행한 믿을 수 있는 결과를 토대로 조치를 취할 수 있다. 아마존 A2I은 맞춤형 리뷰 파이프라인을 구축하고 관리하거나, 많은 사람 리뷰어를 고용해야 하는 번거로움을 해소해, 모든 개발자들이 사람 리뷰를 활용할 수 있게 지원한다.

이상, 5가지 새로이 제공되는 아마존의 머신러닝 서비스를 요약해 보았다. 이를 통해 내부 검색, 코드 작성 개선 지원, 이상거래 탐지, 머신러닝 시스템의 전반적인 개선 등 다양한 업계의 기업들이 공통적으로 겪는 문제들을 해결하기 위해, 아마존의 풍부한 경험을 활용할 수 있으며, 수십년간 축적된 머신러닝 시스템 구축 경험을 통해 아마존은 이 문제들을 성공적으로 해결하는 내부 시스템을 다양한 기업 사용자들에게 보다 쉽게 머신러닝의 강력한 성능을 제공할 것으로 기대된다.

 

 

저작권자 © 인공지능신문 무단전재 및 재배포 금지