Human In The Loop - Part ① 대시보드 설치 시도

개시하다


휴먼 인 더 루프(HITL)는 AI의 판단과 통제에 있어 사람의 조작 등을 통해 이뤄지는 것으로, 품질 관리가 어려운 AI의 사회 실행을 위한 수단 중 하나로 꼽힌다.[참조 1]
이 글에서 HITL의 인상을 잡기 위해 간단한 WEB 앱으로 기계 학습 모형, 감시용 계기판, 검증 도구를 실현하고 싶습니다.(전체 3회 예상)
HITL에서는 실제 데이터와 AI 행동을 동시에 확인할 수 있는 대시보드가 모니터링에 효과적이기 때문에 Part①의 이번 경우 목표 설정, 사용 데이터 안내, 모니터링용 대시보드를 시행한다.
<HITL 설치 디렉토리>>
Part① 대시보드 ← 이번에
Part ② 검증 도구
Part ③ HITL(① 및 ②+ 모델 재학습 메커니즘)
■ 설치 결과

■ 환경
Python 3.7.7
dash 1.16.1
dash-bootstrap-components 0.10.7
dash-core-components 1.12.1
dash-html-components 1.1.1
dash-renderer 1.8.1
dash-table 4.10.1
plotly 4.10.0
Flask 1.1.2
lightgbm 3.0.0

대상 설정


HITL은 임무에 따라 다양한 구조가 있을 수 있지만 이 시리즈는 이상 검출을 바탕으로 하는 구조를 사용한다.
■ WEB 애플리케이션을 통해 다음을 수행합니다.
  • 모니터링
  • 대시보드(Chart)
  • 기계 학습 모형
  • 교사 모델이 있는 이미 알고 있는 이상 검측
  • 검측 모형
  • 교사 모형이 없는 미지의 검측(정상인지 이상인지 검증하지 않으면 알 수 없음)
  • 지식인 검증
  • 모방 도구를 의식적으로 설치
  • 알 수 없는 검측 부분의 검증자가 정상적이거나 이상한지 확인
  • 검측모델 미지수(기계학습모델 이상 판정)
  • 검증자가 미지의 검측 부분을 검증하여 정상으로 판정
  • 판정을 받고 재학습을 실시하여 이 부분을 모델로 정상화시킨다

  • 데이터 활용


    Kagle의 Credit Card Fraud Detection 데이터가 실제 설치에 사용됩니다.[참조 2]
    이 데이터는 신용카드의 불법 이용을 목적으로 한 불균형 데이터이기 때문에 이상 검출 모델 시험에 자주 사용된다.
    원래 데이터에는 PCA의 V1에서 V28까지의 데이터가 포함되어 있습니다.
    이번에는 이미지를 포착하는 시위 유람 행위 목적으로 시각화할 때 이해하기 쉽도록 특징량 2변수(V4, V14)를 입력합니다.※
    ※ V4와 V14만으로도 몇 가지 부정 사용이 검출되는지 사전 확인
    시위 행진에서는 이 같은 데이터에 미지의 정상 데이터를 인공적으로 추가한 내용을 감시·검증·재학습했다.인위적으로 제작된 미지의 정상적인 데이터는 극본에서 다음과 같은 요구를 충족시켜야 한다.
    ① 교사의 모델 오류 검출(오류 판정 이상)
    ② 검측가능 모델(즉 인위적인 데이터가 원래의 학습 데이터와 현저히 다르다)
    ③ 재학습을 하더라도 기존 이상 판정이 유지되는 교사 패턴
    이상의 내용을 바탕으로 시연용 데이터를 제작하였다.(이하)
    (1~8s: 이미 알고 있음(3s시 이상), 9~11s: 알 수 없음 두 번 반복)

    기술을 이용하다


    설치할 때 사용하는 프레임과 모델을 기록합니다.
    ■ 시각화 섹션
  • flask
  • 무게가 가벼운 웹 응용 프레임워크
  • 라우팅 함수를 통해 WEB 어플리케이션과 서버 간 교환
  • Dash
  • 시각화된 웹 응용 프레임워크에 전문적으로 사용[참고5]
  • 플래시 확장을 통해 인코딩이 비슷함
  • plotly
  • 상호작용 시각화 프레임워크[참조6]
  • 파이톤의 같은 프레임에서 Bokeh와 함께 인기 있음
  • ■머신러닝 모드, 체크 모드
  • 기계 학습 모형
  • LightGBM
  • 2치 분류의 득점을 표시한다(정상: 0, 부정확: 1)
  • 미리 배운 것을 사용하기 시작한다
  • 검측 모형
  • KNN
  • 부근 거리를 이상도로 설정하고 한도값을 차단하고 이치화(정상: 0, 미지수:-1)
  • 미리 배운 것을 사용하기 시작한다
  • 이루어지다


    이하로 나누어 설치하다.
    1. 대시보드 ← 이번엔
    2. 검증 도구
    3. HITL(①와 ②+모델 재학습의 메커니즘)

    1. 대시보드


    ■ 설치 내용
  • 대상: 간단한 대시보드(Chart+)α)
  • 입력: 테이블 데이터(csv 파일)
  • 출력: 이상 득점이 높음(관찰됨) 검증용 데이터
  • 이상판정: 실제 데이터와 병렬 디스플레이 모델의 이상득점
  • 기타: 실시간 업데이트
  • +α:여기에 도표 이외에 떡그림,distplot,조형도,표
  • 도 설치되어 있다
    ■ 실제 이미지

    ■ 설치 결과

    총결산


    이번에 Human In The Loop 모니터링에 사용되는 대시보드가 설치됐다.대시보드를 통해 실제 데이터 정보와 AI 득점을 실시간으로 보여주고, AI가 실제 데이터의 어떤 점에 착안해 판단하면 이해하기 쉬워진다.(이번 자료에 따르면 AI는 V4가 플러스, V14가 마이너스일 때 부정확 판정됨)
    대시와 plotly를 사용하면 HTML과 CSS 부분의 인코딩이 비교적 수월함을 느낄 수 있다.가장 중요한 것은 이런 실시간 운행을 쉽게 실현할 수 있는 WEB 앱의 느낌을 반드시 체험해 보세요.
    개선점과 문제점이 있으면 메시지를 남겨주세요.

    참고 자료

  • 더 나은 비즈니스, 사회, 미래를 만드는 인간 참여형 AI
    https://note.com/masayamori/n/n2764e3cecc05
  • Kaggle - Credit Card Fraud Detection
    https://www.kaggle.com/mlg-ulb/creditcardfraud
  • 대시를 통해 머신러닝이 가능한 웹 애플리케이션[step1] 만들기
    https://wimper-1996.hatenablog.com/entry/2019/10/28/dash_machine_learning1
    ※ 대시의 표 데이터 처리 등을 통해 참고
  • 코드 공개
    http://github.com/utmoto
  • Dash
    https://dash.plotly.com/
  • plotly
    https://plotly.com/
  • 좋은 웹페이지 즐겨찾기