ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 데이터 중심 인공지능: 자료조사(Data-centric AI: A Survey)
    카테고리 없음 2023. 7. 14. 15:43

    앤드류 응 교수가 Data-centric AI 의 중요성을 말한 이후,
    여러 곳에서 데이터가 중요하다는 말들과 자료들이 쏟아져 나오고 있다.

    그럼에도 불구하고, 논문을 통해서 data-centric approach를 본적은 드문 것 같다.
    그 이유로 몇가지를 생각해봤다.

    • 데이터 관련해서 논문쓰기가 난해하다. 모델 관련 쓰는게 깔끔하다.
    • 실제 데이터 관련한 들은 주로 기업에 모일텐데, 공개하기가 쉽지 않다. (요즘 데이터는 자산에 가깝다)


    그중에 서베이 논문을 발견하여 정리해본다.


    아래의 그림을 보면 ChatGPT로 유명해진 GPT 모델을 첫번째 예로 들고 있는데, 갈수록 데이터량이 많아질 뿐만 아니라
    데이터의 질을 높이는 시도가 계속되고 있다고 한다 (추가로 뿐만 아니라 Human Feedback 을 이용해 강화학습을 하기도 한다.)


    #데이터중심AI (data-centric AI) 정의
    먼저 정의를 내릴 필요가 있음. 결론은 아직 모호함.


    저자들은 다음과 같이 하나의 framework로 data-centric AI 를 정의함.



    Data-centric AI 의 분류체계를 저자들은 다음과 같이 나누었다.


    전반적인 데이터 처리과정은 다음의 그림에 잘 도식화 되어 있음.



    내가 관심있는 분야는 다음과 같고, 이에 대해서만 정리를 해본다.

    • Training data development > Data augmentation
    • Inference data development > In-distribution evaluation, Out-of-distribution
    • Data maintenance > Data quality assurance


    #데이터증강(Data augmentation)
    1) 개요:  원래 있는 데이터에 인공적으로 변화를 줘서 크기나 다양성을 늘리는 것. 목적은 모델 성능 개선.  
    2) 필요성:  

    • 데이터의 양 증가: 딥러닝의 경우 대용량의 데이터가 요구되는데 annotation 은 매우 노동집약적인 일로서 데이터가 제한적으로 주어질때 증강이 효과적임 (예: 의료데이터 등).
    • ->  학습데이터가 많아지면 accuracy, genralization, robustness 개선될 수 있음.  
    • 데이터 불균형성 해소:  각 클래스별 양이 불균일할때, under-represented 클래스에 대해 augmentation 가능

    3) 일반적 방법(common augmentation methods)

    • 데이터 변조(basic manipulation)
    • -> 비전 데이터는 scaling, rotation, flipping, blurring. Mixup 등은 기존 데이터들 간의 interpolation 을 이용해서 새로운 샘플 생성
    • -> AutoAugment는 강화학습 기반의 증강 정책을 사용함. 시계열 데이터에서는 permutation, jittering 을 활용. 텍스트 데이터에서는 hidden space 에서 데이터를 혼합. 그래프 데이터에서는 graphon을 혼합
    • 합성 데이터(augment data synthesis)
    • -> 현재 데이터 분포를 학습함으로써 새로운 training 샘플을 만들어 내는 것.
    • -> 예로 GAN, Variational encoder, diffusion models 가 있음.
    • -> 데이터 변조와 달리 합성데이터는 전반적인 데이터의 패턴을 파악하고 학습된 모델로 부터 새로운 샘플을 만들어내는 것임.

    4) 클래스 불균형을 위한 테일러링 방법(Methods Tailored for Class imbalance)
    - 데이터양이 적은 클래스에 대해 upsampling을 함. SMOTE는 소수의 instace와 그 이웃들간 선형 보간을 통해 합성된 샘플을 생성. AutoSMOTE는 강화학습을 이용해 가장 좋은 oversampling 전략을 탐색함.
    5) 난점들(challenges)
    - 상황에 따라 데이터 증강 전략이 모두 달라질 수 있음. 예를 들면 이미지 데이터에 비해 그래프 데이터는 불규칙하며 align 이 잘되어있지 않음. 따라서 vanilla Mixup 전략은 활용하기 곤란. 두 데이터셋이 같은 데이터형식이더라도 최적의 전략은 달라질 수 있음. 탐색 기반 알고리듬이 최상의 전략을 시행착오를 거쳐 찾아내더라도 비용(계산, 스토리지)이 특정 적용에는 제한될 수 있음.

    Inferecne Data Development 에 대한 개략적인 그림은 다음과 같다.



    #분포_내_평가 (In-distribution Evaluation)
    1) 개요: training data를 잘 따르는(conform) 샘플을 생성하는 것.
    2) 필요성: 학습된 모델의 quality를 평가하는 가장 직접적인 방법. 첫째, 모델이 평균적으로는 잘 작동하는데 특정 sub-population 에는 적절히 동작하는 것이 실패할 수 있음. 이때 bias와 error를 피하기 위해 underrepresendted groups에 대한 식별과 calibration 이 요구됨. 둘째, decision boundary를 이해하고 배포전 모델 윤리 등에 대해 검사하는 것이 중요할 경우. 예: 정책 수립과 같이 위험성이 있는 경우 등
    3) Data Slicing: 데이터셋을 sub-population 으로 나누고, 각 sub-population에 대해 모델성능을 따로 평가하는 것. 일반적으로 나이, 성별, 인종등으로 나눌 수 있겠지만 실제 적용에 있어서는 범주를 정하는 것이 어려우며 domain knowledge 에 크게 의존함. SliceFinder는 interpretable과 problematic(그 슬라이스에서 모델 성능이 좋지 않은) 으로 나눔. tree-based/lattice-based 탐색방법 제시. SliceLine, GEORCE 등등이 있음.
    4) Algorithmic Recourse: 모델의 결정을 뒤집을 수 있는 hypothetical sample을 생성함. 예를 들면 개인이 대출이 거절되었을 경우 algorithmic recourse는 대출이 승인된 더 높은 계좌잔액을 가진 가장 근접한 샘플을 찾음. 이를 통해 decision boundary에 대한 이해도가 높아질 수 있음.
    - whitebox: gradient 나 prediction function 등 내부에 대해 속속들이 알아야 가능
    - blackbox: 모델에 대한 정보를 전혀 요구하지 않음.
    예) Dijkstra’s algorithm is employed to obtain the shortest path between existing training data points to find recourse under certain distributions. An alternative approach involves dividing the feature space into pure regions, where all data points belong to a single class, and utilizing graph traversing techniques,  to identify the nearest recourse. Given that the target label for reasoning is usually inputted by humans, these recourse methods all require minimal human participation.
    5) 난점들
    타겟이 되는 샘플들에 대한 효과적이고 효율적인 식별이 쉽지 않음. data slicing 의 예만 보더라도 subset으로 나누는 경우의 수가 기하급수적으로 늘어남. 비슷하게 종보가 제한적일때 가장 근접한 recourse 도 식별하려면 많은 노력이 들어 쉽지 않음.

    #분포_외_평가 (Out-of-distribution evaluation)
    1) 개요: training data 과 분포가 다른 샘플에 대해 평가하는 것. advesarial sample 을 생성하는 것과 distribution shift 된 샘플을 생성하는 것으로 나눌 수 있음.
    2) 필요성: 일반적으로 in-distribution 데이터셋에 대해서는 머신러닝 모델이 잘 작동함이 알려져있음. Out-of-dist. 평가는 일반적으로 모델이 예상치 않은 시나리오에 얼마나 잘 generalize하는지에 대해 판단할 수 있는 기준이됨. transferability, 성능에 대한 confidence, 잠재적 flaws에 대한 robustness 등을 파악 가능함.
    3) Generating Adversarial Samples
    - 고의적으로 입력 데이터를 수정해서 모델이 잘못된 예측을 하게 만드는 것. noise, blur 등을 원본 데이터에 주입하여 변형시키는 것(perturbation) 등이 이에 해당. 다음의 4가지로 나눌 수 있음.
    - white box attacks : Biggio's attack, Deep Fool, projected gradient descent attack
    - physical world attacks : 실제 물제에 변형을 주는 것. 예) 도로 표지판에 스티커를 붙이면 자율주행 차량의 표지판 식별 모델에 큰 영향을 미칠 수 있음.
    - black box attacks : 머신러닝 분류기의 변수나 학습데이터를 모르지만, 데이터 도메인이나 모델 아키텍처를 알 수 있을 때 활용(?). adversarial sample 을 생성하는 trasferability의 특성을 이용한 사례가 있음. victim sample에 대한 예측 신뢰도를 바탕으로 하여 zero-th order optimization을 사용한 바 있음.
    - poisoning attacks: 학습 이전에 advsarial sample 을 만듬. 모델 아키텍처를 안다고 할때 가능.

    4) Generating Samples with Distribution Shift
    - 다른 분포를 따르는 샘플을 만들어서 모델을 평가하는 것.
    - 여러 패턴을 가진, 예를 들어 다른 시간, 다른 장소에서 얻어진 데이터를 수집하는 것이 가장 단순한 방법
    - synthetic distribution shift 가 널리 도입되고 있음. a) covariate shift : input dist. 가 shift, b) lable shift : label dist. 가 shift, c) general distribution shift: input/label 모두가 shift.
    - Biased data sampling은 covariate, label shift를 합성하기 위해 쓰임.
    - 학습기반 방법은 주로 general dist. shift를 위해 활용됨.
    - 특별히 학습상황과 실제 배포 상황간에 dist. gap 이 있는 경우에 모델의 전이능력(transferability)을 평가하기 위해 필수적임

    #데이터품질보증(Data Quality Assurance)
    1) 개요: 신뢰성 있는 데이터를 제공하려면 data quality가 필수적임.
    2) 필요성: 실제 머신러닝이 적용되는 현장에서는 데이터가 자주, 그리고 지속적으로 업데이트 됨. 그 결과 고 품질의 training, inference 데이터를 생성하기만할 뿐 아니라, 변화화는 환경에서도 두가지 측면에서 계속 품질 유지가 되어야 함. a) 데이터 품질에 대한 지속적인 모니터링으로 데이터품질을 정량적으로 파악하는 것이 중요 b) 저품질의 데이터에 의해 모델이 영향을 받을 경우, 어떻게 데이터 품질을 개선하고 모델의 성능을 향상시킬지에 대한 전략이 필요함.
    3) Quality Assurance
    - 객관적 평가(objective assessment): 특정적용과는 독립적인 데이터 특성(data attribute). accuracy, timeliness, consistency, completeness 등.
    - accuracy: 얻어진 데이터의 정확도. DB에 저장된 데이터 값들과 얻어진 데이터의 값들이 잘 align 되었는지?
    - timeliness: 데이터가 최신인지?
    - consistency: 데이터에 정의된 semantic rule을 위반하지 않는지?
    - completeness: null 이 아닌 데이터의 비율
    - 주관적 평가(subjective assessement): 사람의 관점에서 데이터를 평가하는 것
    - trustworthiness : measures the accuracy of information provided by the data source.
    - understandability measures the ease with which users can comprehend collected data
    - accessibility measures users’ ability to access the data.
    - 주관적 평가는 모델학습에 직접적인 영향은 없을 수 있지만, 기간관 협업을 쉽게 하고 장기성과에 도움이 될 수 있음.

    #품질개선(Quality Improvement)
    1) 개요: 데이터 파이프라인의 여러 단계에서 데이터 품질을 개선할 수 있는 전략을 개발하는 것. integrity 제한조건, denial 제한조건, 열 간 conditional functional dependencies 등의 품질 제한 강제(enforce quality constraints).
    - UniProt: 자동으로 meta information, updated version 등을 검증하는 방법 사용.
    2) 난점
    - 적절한 평가 척도를 선정하기가 어려움. domain 지식에 매우 크게 의존함. 계속해서 진화하는 환경에서 하나의 metric은 적절치 않음.
    - quality 개선은 매우 필요한 것이나, 주의와 노력이 많이 듬. 자동화가 꼭 필요하지만, 인간의 기대를 만족하는 데이터 품질을 위해 인간의 개입도 필요함. data assessement metric 과 data improvement 전략은 사려깊게 설계되어야 함.

    #논의_향후_방향성(Discussion and Future Direction)
    연구주제로 Foundation models과 Reinforcement Learning 두 가지를 제시함.
    1) Foundation Models
    - 대형 언어모델이나 Stable Diffusion 등의 그 예로서 대량의 unlabeled data를 가지고 학습시킨 모델임. 모델이 강력하기 때문에 data labeling, data augmentation 이 가능함. 모델 자체가 어떤 데이터의 형태가 될 수 있음. 파운데이션 모델로 인해데이터와 모델의 경계선이 모호해짐. 그러나, 여전히 대량의 그리고 고품질의 데이터셋에 학습은 크게 의존하고 있음.


    2) Reinforcement Learning
    - 모델을 가지고 데이터를 생성하고 스스로 생산한 데이터로 모델을 번갈아가며 학습시키는 독특한 학습 패러다임임. 파운데이션 모델과 마찬가지로 강화학습이 발전하면서 데이터와 모델간의 경계가 불분명해질 수 있음. 그 예로 강화학습은 이미 data labeling, data preparation, data reduction, data augmentation 에 사용되고 있음.

    data-centric AI에서 식별된 향후 방향성은 다음과 같음.

    - Cross-task automation
    - Data-model co-design
    - Debiasing data
    - Tackling data in various modalities
    - Data benchmarks development

Designed by Tistory.