BigQueryML 및 Looker를 사용해 비즈니스 사용자에게 머신러닝 모델 설명하기

Sean Lopp
Google Cloud Customer Engineer
* 본 아티클의 원문은 2022년 1월 25일 Google Cloud 블로그(영문)에 게재되었습니다.
업무 프로세스의 혁신을 위해 AI를 찾는 조직이 늘고 있지만, 모델이 빠르게 채택되면서 Explainable AI의 필요성이 커졌습니다. Explainable AI는 모델이 예측하는 방식과 이유를 이해하도록 도와줍니다. 예를 들어 금융 기관에서 AI 모델을 사용하여 사기성 활동을 위한 신용카드 거래를 자동으로 신고하려는 경우를 가정해 보겠습니다. 정확한 사기 감지 모델을 만드는 것이 첫 번째 단계이겠지만 정확성만으로는 충분하지 않습니다. 은행과 규제 당국에서는 AI 모델이 특정 예측을 하는 이유를 설명해야 하는 경우가 많습니다. 사기로 판단한 근거가 거래 금액인가요? 아니면 카드 소지자의 성별이나 지출 내역인가요? Explainable AI는 이러한 유형의 질문에 대한 답을 얻도록 도와주며, 공정한 비즈니스 관행을 촉진하고, 규제 요건을 지원하며, 편견과 차별로부터 보호해 줍니다.
Google Cloud에서 Explainable AI를 구현하는 것은 점점 더 간편하고 흔한 관행이 되고 있습니다. 데이터 과학자들은 Google Cloud의 Vertex AI를 사용해 복잡한 딥 러닝 모델에서 예측에 기여한 요소가 무엇인지 파악할 수 있습니다. 하지만 일반 데이터 과학자의 경우는 어떨까요?
이 게시물에서는 데이터 분석가들이 어떻게 SQL에서 BigQuery ML을 사용해 모델을 만들어 Explainable AI를 활용한 후 Looker의 'What-If 시나리오 대시보드'를 사용하여 이해관계자와 도메인 전문가에게 모델 예측에 대해 설명할 수 있는지 살펴보겠습니다.
BigQuery 머신러닝을 사용해 SQL에서 사기 감지 모델 빌드하기
BigQuery ML(BQML)을 사용하면 분석가들이 SQL에서 다양한 머신러닝 모델을 만들 수 있습니다. BQML은 데이터 과학 기능을 범용화할 뿐만 아니라 데이터 이전 없이 모델 학습 및 예측이 가능하여 여러 데이터 거버넌스 및 MLOps 문제를 해결함으로써 조직에 많은 이점을 제공합니다.
이 예시에서 소매 은행은 신용카드 거래, 카드 소지자의 세부정보, 판매자 정보로 이루어진 데이터 세트를 보유하고 있습니다. 쿼리 하나로 거래 금액, 판매자와 고객 주소지 간 거리, 하루 중 거래 시간을 포함한 모델 학습 데이터를 생성합니다. 이러한 특성은 모두 BigQuery가 지원하는 지리정보 함수를 활용해 SQL에서 생성됩니다.
샘플 데이터 세트를 공개적으로 쿼리할 수 있습니다. 프로젝트에 retail_banking이라는 데이터 세트를 만들어 결과 ML 데이터 세트 및 모델에 저장해야 합니다.
모델 학습 데이터 세트 준비를 위한 BigQuery SQL 예시
학습 데이터를 만든 후 짧은 쿼리로 회귀 모델이 사기 거래 여부를 예측하기에 적합하도록 만듭니다. BQML에는 강력한 기본값과 모델 동작을 지정하는 많은 옵션이 포함되어 있습니다. BigQuery는 모델 적합성 측정항목, 학습 로그, 기타 모델 세부정보를 제공합니다.
모델 빌드
BigQuery ML에서 xgboost와 심층신경망 등 다른 모델도 사용할 수 있습니다. 이러한 기법에서도 설명 기능이 작동합니다.
BQML의 Explainable AI
BQML은 모델 학습 및 검사를 제공함은 물론 Explainable AI 기능에도 손쉽게 액세스할 수 있도록 지원합니다. 사용자가 새로운 가상의 거래를 제공하여 모델의 예측 및 설명을 확인할 수 있습니다.
예를 들어 다음 쿼리에서는 금액, 거리, 시간이 서로 다른 3개의 가상 거래를 생성합니다. 이 모델은 금전적 가치가 크고 시간이 이르다는 점에서 첫 번째 거래를 사기로 예측합니다.
BQML Explainable AI 쿼리 및 결과


Looker에서 'What-If 시나리오 대시보드' 만들기
BQML은 다양한 기능 집합을 활용하지만, Explainable AI를 비즈니스 도메인 전문가나 임원 등 기술 분야 이외의 이해관계자에게 제공하는 것이 더 중요할 수 있습니다. 이러한 당사자들이 모델의 설명을 해석하고 검증하는 데 더 적격인 경우가 많습니다. Explainable AI 인터페이스를 제공하면 AI 이니셔티브의 신뢰도, 채택, 전반적인 성공이 개선됩니다.
Looker는 이해관계자에게 BQML의 Explainable AI를 제공하는 데 도움이 됩니다. Looker는 최신 BI 도구이자 데이터 플랫폼으로서 BigQuery와 긴밀하게 통합됩니다. 분석가들은 Looker에서 고유한 시맨틱 모델을 사용해 통제된 대시보드와 데이터 경험을 만들 수 있습니다. 이 예시에서는 시맨틱 모델을 사용해 BQML SQL 문을 매개변수화하고 대시보드를 만듭니다. 빌드하고 나면 최종 사용자가 코드 작성 없이 대시보드 필터를 사용해 자신의 거래 세부정보를 입력하고 예측 및 모델 설명을 확인할 수 있습니다.
Looker Explainable AI 대시보드


Looker 시맨틱 모델의 BQML 예측
아래의 LookML 패턴으로 'What-If 시나리오' 대시보드가 생성됩니다. 가상의 사용자 입력마다 매개변수를 정의하고 서브 쿼리에서 사용자의 입력 매개변수와 함께 ML.EXPLAIN_PREDICT를 사용해 파생된 테이블을 빌드하세요. 자신의 데이터 세트, 학습된 모델, 원하는 사용자 입력에 따라 이 패턴을 수정해야 합니다. 또는 Looker Marketplace에서 기존 BQML Looker 블록을 참조하여 Looker에서 BigQuery 머신러닝을 사용하는 방법에 대한 포괄적인 가이드를 얻을 수도 있습니다.
과거에는 모델 해석을 데이터 과학팀에서만 수행했습니다. 비즈니스 이해관계자와 협업하기 위해서는 상당한 반복 작업이 진행되거나 커스텀 데이터 과학 애플리케이션의 개발이 필요했습니다. Looker와 BigQuery ML은 SQL 분석가를 돕고 비즈니스 협업을 지원하는 또 다른 접근 방식을 제공합니다.
다음 단계
짧은 쿼리를 작성하여 BigQuery 머신러닝과 Explainable AI 사용을 시작할 수 있습니다. 또는 팀에서 Looker를 사용하여 데이터 과학을 수행하는 방식에 대해 자세히 알아보거나 Looker Marketplace BQML 블록으로 직접 사용 사례를 시작하거나 Vertex AI 및 Looker 플랫폼을 사용해 AI 기반 데이터 경험을 구현하는 방법을 살펴볼 수도 있습니다.
