전체 글 21

An Introduction to Machine Unlearning 논문 리뷰 (2)

Evaluation Approaches for Unlearning AlgorithmsEfficiencydef. 언러닝 알고리즘 $ (\mathcal{U},C_\mathcal{U}) $의 efficiency이란 naive 제거 메커니즘 U*에 대한 제거 메커니즘 U의 상대적인 speed-up이다.$h^{\mathcal{U}}=\mathcal{U}(\mathcal{A}(D),D,D_u)$ : unlearned model$h^* = \mathcal{U^*}(\mathcal{A}(D), D, D_u)$ : naive retrained modelefficiency는 deletion 요청의 평균 값을 사용한다. Effectivenessdef. $(\mathcal{U},C_\mathcal{U})$의 effective..

An Introduction to Machine Unlearning 논문 리뷰 (1)

Introduction널리 사용되는 기계학습 알고리즘 → 배치 혹은 online learning 방법을 사용하여 새로운 데이로부터 학습은 가능, 그러나 데이터 제거에는 효율적으로 adapt안됨.데이터 제거의 응용개인 정보 보호 관련 문제ex) EU’s GDPR(General Data Protection Regularization) - “잊혀질 권리”(개인에게 조직의 기록에서 데이터를 제거할 것을 요청할 수 있는 권리)제공공정성 및 데이터 품질 관련 문제데이터 수정편향 감소모델 설명 가능성모델 불확실성 정량화데이터 제거retraining지정된 데이터를 제거한 다음 나머지 데이터에서 모델을 처음부터 다시 학습효과적인 방법비효율적 - 큰 계산 비용unlearning훈련된 모델에서 하위 데이터의 정보를 재학습보..

TD, SARSA, 몬테카를로

MDP 모를 때 value 평가 → 몬테카를로, TD몬테카를로MDP를 모른다 ⇒ 보상 함수 $r^a_s$와 전이 확률 $P^a_{ss’}$를 모른다. 단, 그 값을 모르는 것일 뿐 실제 고정된 $r^a_s, P^a_{ss'}$는 존재한다.MDP = MRP + Agent. action변수가 추가됨. → MDP를 모른다. action과 관련된 정보를 모른다. 에이전트가 어떤 행동을 취할지, 그 행동을 취했을 때 어떤지에 대해 전혀 모른다.강화학습은 리턴을 최대화하는 것을 목표로 한다.리턴($\mathrm{G_t}$): t시점부터 미래에 받을 감쇠된 보상의 합. $\mathrm{G_t = R_{t+1}+\gamma R_{t+2} + \gamma^2R_{t+3}+\cdots}$보상함수($\mathrm{R }$)..

PyTorch Dataset (2) - ImageFolder, DataFolder

데이터셋은 학습에 필요한 데이터셋, 검증에 필요한 데이터셋, 평가에 필요한 데이터셋이 필요하다. train.py와 test.py(혹은 eval.py)로 나누어 코드를 짜는 경우엔 train.py에는 학습 데이터셋, 검증(평가) 데이터셋을 구현하여 사용하면 되고 test.py(혹은 eval.py)에는 평가 데이터셋을 구현해야 한다. train_set = CustomDataset(...) validation_set = CustomDataset(...) test_set = CustomDataset(...) 보통 데이터는 다음과 같은 트리구조로 되어있다. data |-- train | |-- cat | | |-- cat1.jpg | | |-- cat2.jpg | | |-- cat3.jpg | | | ... | ..

인공지능/구현 2024.01.22

PyTorch Dataset (1) - Dataset

이 글은 pytorch에서 데이터셋을 불러오는데 아주 중요한 역할을 하는 Dataset 클래스에 대해 이전에 공부했던 내용을 정리한 글이다. 참고 : https://pytorch.org/docs/stable/data.html#torch.utils.data.Dataset Dataset 클래스 모든 데이터셋은 key로 데이터 샘플을 매핑해서 표현되고 이 Dataset 클래스를 상속받아야 한다(subclass). subclass들은 모두 주어진 key에 대해 데이터 샘플에 접근할 수 있는 __getitem__을 덮어써야(overwrtie)한다. subclass들은 많은 ~torch.utils.data.Sampler클래스에 의해 구현된 데이터셋의 크기를 반환하는 __len__을 덮어쓸 수 있고(이 말인 즉슨 전..

인공지능/구현 2024.01.22

Q러닝

Q러닝의 Q는 앞에서 공부한 액션 가치 함수를 의미하고, Q러닝은 Q함수를 학습함으로써 최적의 정책을 찾는 알고리즘을 말한다.출처-위키피디아Q러닝: 주어진 상태에서 주어진 행동을 수행하는 것이 가져다 줄 효용의 기댓값을 예측하는 함수인 Q함수(액션 가치 함수)를 학습함으로써 최적의 정책을 학습Q함수를 학습하고 나면 각 상태에서 최고의 Q를 주는 행동을 수행함으로써 최적의 정책을 유도할 수 있다. ⇒ Q(s,a)함수를 학습하고 나면 특정 상태 s에서 Q값이 최대가 되는 a를 수행함으로써 최적의 정책을 유도할 수 있다.장점: 주어진 환경의 모델 없이도 수행하는 행동의 기댓값을 비교할 수 있다. $\because$ Q러닝은 임의의 유한 MDP에 대해서 현재 상테에서 최대의 보상을 획득하는 최적의 정책을 학습할..

강화학습 벨만 방정식

최적의 정책을 찾기 위해서는, 정책을 평가해야한다.에피소드마다 미래에 얻을 보상이 다르고, 그 에피소드가 발생할 확률도 다르기 때문에 정책의 value를 구하는 것은 어렵다. 벨만 방정식은 정책의 value를 구하는데 사용된다.벨만 방정식은 시점 t에서의 value와 시점 t+1에서의 value 사이의 관계를 다루고 있고 가치 함수와 정책 함수 사이의 관계도 다루고 있다.벨만 방정식에는 두 가지의 방정식이 존재한다.벨만 기대 방정식: 특정 정책 $\pi$를 평가벨만 최적 방정식: 최적의 value를 갖는 $\pi$를 찾음 벨만 기대 방정식특정 정책 $\pi$를 평가하기 위해 상태 가치 값을 반복적인 방법을 통해 구한다.상태 가치 함수는 다음의 식으로 나타낼 수 있고$$ v_{\pi}(s_t)=\mathb..

[강화학습] Markorv Decision Process

이 글은 강화학습 스터디를 진행하면서 공부한 내용을 정리한 글이다. 마르코프 결정 프로세스(MDP) 강화학습에서 문제를 잘 정의하려면 주어진 문제를 MDP형태로 만들어야 한다. “순차적 의사 결정 문제”는 MDP 개념을 통해 더 정확하게 표현할 수 있다. 마르코프 결정 프로세스 개념은 마르코프 프로세스와 마르코프 리워드 프로세스를 거친다. 이들은 모두 마르코프 성질을 만족한다. 마르코프 성질(Markov Property) 다음을 만족하면 마르코프 성질을 따른다고 한다. $$ \mathbb{P}[\mathbf{s_{t+1}}|\mathbf{s_t}] = \mathbb{P}[\mathbf{s_{t+1}}|\mathbf{s_1, s_2, ...,s_t}] $$ 이는 미래는 오로지 현재에 의해 결정된다는 것을 ..

[Meta-Learning] Prototypical Networks for Few-shot Learning 논문 리뷰

Introduction 이 논문은 이전 연구인 Matching Network와 비슷하게 구현된다. Matching Network [1] query set에 대한 class를 예측하기 위하여 어텐션 메커니즘을 사용하여 support set의 embedding 값을 학습한다. support set: 라벨이 주어진 데이터셋. support set으로 few-shot task를 위한 준비를 해놓는다(few-shot 학습을 한다). query set: 라벨이 주어지지 않은 데이터셋. support set을 통해 few-shot 학습을 하면, query point에 대해 class를 예측하고, query의 라벨과 비교하여 loss값을 계산한다. 학습할 때 랜덤 추출된 minibatch—episode라 함—를 사용한..

[Meta Learning] Siamese Neural Networks for One-shot Image Recognition 논문 리뷰

Introduction 1️⃣ one-shot learning이란? : test 데이터에 대한 예측을 하기 전에, 각 가능한 class당 하나의 example만 관찰할 수 있다는 제한 하에 분류를 할 수 있도록 모델을 학습하는 방법. 이 논문에서 소개하는 방법은 siamese neural networks를 사용하여 supervised metric-based 접근법을 통해 image representation하는 것이다. 이 방법을 통해 다시 학습하지 않고 모델의 feature를 다시 사용하여 one-shot learning를 구현할 수 있다. 이 논문에서는 (이미지 인식 중) 문자 인식에 국한되어 실험하였다. 이 도메인을 위해서 논문에서는 큰 siamese CNN을 사용하였다. 이 모델은 다음과 같은 장..