Graph powered mahine learning - 1. Machine learning and graphs: An introduction

김무성·2022년 3월 23일
0

Graph ML Study

목록 보기
1/2

Chapter 1.

  • 머신 러닝은 인공 지능의 핵심 분야
  • 컴퓨터 프로그램이 데이터에서 학습할 수 있도록 하는 컴퓨터 과학 연구 분야
  • 학습은 경험을 전문 지식이나 지식으로 전환하는 과정
  • 학습 알고리즘은 경험을 입력으로 나타내는 훈련 데이터를 사용하고 출력으로 전문 지식을 생성
  • 모든 기계 학습 작업의 중요한 측면은 지식이 구축되는 훈련 데이터
  • 잘못된 데이터에서 시작하면 잠재적인 성능이나 사용된 학습 알고리즘의 품질에 관계없이 잘못된 결과로 이어짐
  • 학습 알고리즘과 데이터라는 두 가지 측면에서 머신 러닝 프로세스에 접근

1.1 Machine learning project life cycle

  • 명확한 단계와 구성 요소로 워크플로우를 정의
    • 데이터 소스 선택
    • 데이터 수집
    • 데이터의 이해
    • 데이터 정리 및 변환
    • 데이터를 처리하여 ML 모델 생성
    • 결과 평가
    • 배포
  • CRISP-DM 모델은 데이터 마이닝을 위해 설계되었지만 일반 기계 학습 프로젝트에도 적용할 수 있음
  • CRISP-DM의 주요 기능
    • 프로젝트 계획 및 관리
    • 의사 소통 및 문서화

1.1.1 Business understanding

  • 도메인 및 비즈니스 관점에 대한 명확한 이해
  • 목표, 요구 사항 및 제약 조건의 정의
  • 이 지식을 기계 학습 문제 정의로 변환
  • 목표를 달성하기 위해 설계된 사전적이고 합리적인 프로젝트 계획

1.1.2 Data understanding

  • 사용 가능한 데이터 소스에 대한 명확한 이해
  • 다양한 종류의 데이터와 그 내용(또는 적어도 기계 학습 목표의 모든 중요한 부분)에 대한 명확한 이해
  • 이 데이터를 얻거나 추출하여 기계 학습 워크플로의 다음 단계에 제공하는 아키텍처 설계

1.1.3 Data preparation

  • 적절한 설계 기법을 사용한 하나 이상의 데이터 구조 정의
  • 머신 러닝 알고리즘 훈련 데이터를 공급하기 위한 잘 정의된 데이터 파이프라인
  • 데이터를 병합, 정리 및 강화하기 위한 일련의 절차

1.1.4 Modeling

  • 다음 단계에서 테스트할 알고리즘 세트
  • 관련 예측 모델

1.1.5 Evaluation

  • 성과를 측정할 수 있는 일련의 값 (성공의 구체적인 척도는 알고리즘 유형과 범위에 따라 다름)
  • 사업 목표 달성 여부에 대한 철저한 평가
  • 프로덕션 환경에서 솔루션을 사용하기 위한 권한

1.1.6 Deployment

  • 예측 모델의 결과가 포함된 하나 이상의 보고서
  • 미래를 예측하고 결정을 지원하는 데 사용되는 예측 모델 자체
  • 최종 사용자에게 특정 서비스 세트를 제공하기 위한 인프라

1.2 Machine learning challenges

  • 새로운 기계 학습 프로젝트에 접근할 때 고려해야 할 주요 측면

1.2.1 The source of truth

  • 잘못된 데이터에 대한 최고의 학습 알고리즘도 잘못된 결과를 생성
  • 데이터 문제
    • 데이터의 양이 충분하지 않음 (Insufficient quantity of data)
    • 열악한 데이터 품질 (Poor quality of data)
    • 비대표 데이터 (Non representative data)
    • 관련 없는 특징 (Irrelevant features)
  • 이러한 문제를 극복하기 위해 여러 소스에서 데이터를 수집 및 병합, 정리하고 외부 소스를 사용하여 보강해야 함 (다량의 다양한 데이터 및 정확한 전처리 필요)

1.2.2 Performance

  • 성능의 요인
    • 예측 정확도 (Predictive accuracy)
    • 훈련 성과 (Training performance)
    • 예측 성능 (Prediction performance)
  • 이러한 요소는 학습 중 데이터 소스에 대한 빠른 액세스, 높은 데이터 품질, 예측을 가속화하기 위한 모델의 효율적인 액세스 패턴 등과 같은 기계 학습 프로젝트에 대한 여러 요구 사항으로 변환될 수 있음

1.2.3 Storing the model

  • 모델은 계산하는 데 시간이 필요하며 시스템을 다시 시작할 때마다 재계산을 피하기 위해 지속성 계층에 저장해야 함
  • 모델 스토리지 관리는 머신 러닝에서 중요한 과제

1.2.4 Real time

  • 머신 러닝은 사용자에게 실시간 서비스를 제공하기 위해 점점 더 자주 사용 됨
  • 목표
    • 빠르게 학습 (Learn fast)
    • 빠르게 예측 (Predict fast)

1.3 Graphs

  • 그래프는 기계 학습 프로젝트를 크게 지원할 수 있는 모델과 알고리즘을 제공
  • 그래프를 표현하는 방법과 그 주변의 주요 개념을 사용하는 방법을 이해하는 것이 중요
  • 그래프 세계의 핵심 요소를 소개

1.3.1 What is a graph?

  • 그래프는 정점(또는 노드/점)과 모서리(또는 관계/선)의 집합으로 구성된 데이터 구조로 개체 컬렉션 간의 관계를 모델링하는 데 사용할 수 있음
  • 그래프를 표현하는 가장 간단한 방법은 각 꼭짓점에 대해 점이나 작은 원을 그린 다음 두 꼭짓점이 모서리를 형성하는 경우 선으로 연결하는 것
  • 그래프의 기본 개념 : directed, undirected, weighted, unweighted, degree, adjacent, neighbors, incident, complete, degree, in-degree, out-degree, average degree, path, simple path, cycle 등

1.3.2 Graphs as models of networks

  • 가장자리와 꼭짓점에 이름과 의미를 할당한 그래프 -> 네트워크
  • 네트워크 종류
    • 소셜 네트워크 (Social network)
    • 정보 네트워크 (Informational network)
    • 통신망 (Communication network)
    • 교통망 (Transportation network)
  • 네트워크는 요소 간의 연결을 강조 표시하여 데이터를 표시하는 데 유용
  • 소셜 네트워크의 구조를 지배하는 가장 기본적인 개념 <homophily(동질성)>
    • 소셜 네트워크의 링크는 유사한 사람들을 연결하는 경향이 있음
    • 두 사람이 연결되어 있으면 공통의 특성이나 속성을 가질 가능성이 더 높음
    • 그룹, 조직, 국가 또는 사회 단위의 모든 측면에 적용
  • 주변 컨텍스트와 네트워크에 작용하는 관련 힘을 이해하면 여러 가지 방법으로 기계 학습 작업에 도움이 됨
    • 사회학 및 심리학 분야의 연구 결과는 개인의 취향, 선호도 및 활동을 결정하는 데 있어 개인의 소셜 네트워크의 관련성을 나타내며 이 정보는 추천 엔진을 구축하는 데 유용
    • 추천 엔진과 관련된 문제 중 하나 콜드 스타트 문제, 새로운 사용자에 대한 기록이 없기 때문에 새 사용자에 대해 아무 것도 예측할 수 없음
    • 소셜 네트워크와 동성애 원칙을 사용하여 연결된 사용자의 취향을 기반으로 추천할 수 있음

1.4 The role of graphs in machine learning

  • 그래프는 관심 대상 간의 상호 작용을 특성화하거나 단순 및 복잡한 네트워크를 모델링하는 등 일반적으로 실제 문제를 나타내는 데 사용
  • 엄격하지만 직설적인 형식주의를 기반으로 하기 때문에 컴퓨터 과학에서 역사 과학에 이르기까지 많은 과학 분야에서 사용
  • 머신러닝에서 그래프의 역할 & 기능
    • 데이터 관리
    • 데이터 분석
    • 데이터 시각화

1.4.1 Data management

  • 그래프를 사용하면 학습 시스템이 더 많은 데이터를 탐색하고 더 빠르게 액세스하며 쉽게 정리하고 강화할 수 있음
  • 전통적인 학습 시스템은 단일 테이블에서 훈련하는 반면 그래프 네이티브 시스템은 그 이상의 테이블에 액세스할 수 있음
  • 그래프 기반 데이터 관리 기능
    • 연결된 정보 소스 (Connected sources of truth)
    • 지식 그래프 (Knowledge graphs)
    • 빠른 데이터 액세스 (Fast data access)
    • 데이터 강화 (Data enrichment) -> 확장성
    • 특징 선택 (Feature selection)
  • 연결된 정보 소스와 지식 그래프는 CRISP-DM 모델의 데이터 이해 및 데이터 준비 단계에서 유용
  • 빠른 데이터 액세스, 데이터 강화 및 특징 선택은 데이터 준비 단계에서 유용

1.4.2 Data analysis

  • 그래프를 사용하여 엔터티 및 해당 속성 간의 관계를 모델링하고 분석할 수 있음
  • 그래프가 제공하는 스키마 유연성을 통해 동일한 데이터 세트에 서로 다른 모델이 공존할 수 있음
  • 그래프 기반 데이터 분석 기능
    • 그래프 알고리즘 (clustering, page ranking, link analysis 등)
    • 그래프 가속 기계 학습 (Graph-accelerated machine learning)
    • 네트워크 역학 (Network dynamics)
    • 혼합 모델 (Mixing models)
    • 빠른 모델 액세스 (Fast model access)
  • 그래프 알고리즘, 그래프 가속 기계 학습 및 네트워크 역학은 다른 기능보다 학습 프로세스와 더 많이 연결되기 때문에 주로 모델링 단계에 포함
  • 혼합 모델과 빠른 모델 액세스는 예측 단계에서 작동하기 때문에 배포 단계에 포함

1.4.3 Data visualization

  • 그래프는 의사소통 능력이 높으며 인간의 두뇌가 쉽게 이해할 수 있는 방식으로 여러 유형의 정보를 동시에 표시할 수 있음
  • 이 기능은 결과 공유, 분석 또는 사람들의 데이터 탐색 지원 여부에 관계없이 기계 학습 프로젝트에서 매우 중요
  • 그래프 기반 데이터 시각화 기능
    • 데이터 탐색 (Data navigation)
    • 인간-뇌 분석 (Human-brain analysis)
    • 향상된 의사 소통 (Improved communication)
  • 향상된 커뮤니케이션은 비즈니스 및 데이터 이해 단계에서 중요
  • 데이터 탐색 및 인간-뇌 분석은 대부분 평가 단계와 관련

1.5 Book mental model

  • 그래프는 몇 가지 문제를 극복하거나 성능(품질 및 수량 측면에서 모두)을 개선하는 데 사용됨
  • 간단한 이미지를 보고 특정 경우에 그래프의 역할을 이해하는 데 도움이 되는 멘탈 모델이 있으면 유용
  • 다음 스키마는 그래프 기반 기계 학습 마인드 맵의 주요 기능(접점)을 기계 학습 워크플로의 네 가지 주요 작업으로 구성
    • 데이터 소스 관리 (Managing the data sources)
    • 학습 (Learning)
    • 모델 저장 및 접근 (Storing and accessing the model)
    • 시각화 (visualizing)

Summary

  • 머신 러닝은 샘플 데이터에서 자율적으로 경험을 얻고 명시적으로 프로그래밍하지 않고 전문 지식으로 변환하는 컴퓨터 프로그램을 개발하는 것을 목표로 함

  • 머신 러닝 프로젝트는 소프트웨어 프로젝트일 뿐만 아니라 다양한 기술과 많은 작업을 가진 많은 사람들이 참여하는 휴먼 프로세스로 성공하려면 잘 정의되고 체계적인 접근 방식이 필요

  • CRISP-DM은 이러한 프로젝트를 추진하기 위한 공식적인 프로젝트 수명 주기를 제공하여 올바른 결과를 제공

  • 머신 러닝 프로젝트가 처리해야 하는 문제는 대부분 데이터 관리(학습 데이터 세트 또는 예측 모델 측면에서) 및 학습 알고리즘의 성능과 관련 있음

  • 그래프는 복잡한 네트워크를 모델링하고 분석하는 데 사용할 수 있는 간단한 수학적 개념

  • 네트워크 외부의 주변 컨텍스트는 네트워크에서 작동하여 네트워크가 어떻게 진화하는지 결정

  • 그래프와 네트워크는 데이터 관리, 데이터 분석 및 데이터 시각화라는 3차원에서 여러 가지 방식으로 머신 러닝 프로젝트를 강화할 수 있음

Reference

profile
graph data scientist

0개의 댓글