반응형

분류 전체보기 66

해석 가능한 신경망 (Interpretable Neural Network)

안녕하세요! 오늘은 '해석 가능한 신경망'에 대해 알아보는 시간을 가져볼까 합니다. 머신러닝에 관심이 많은 분들이라면 한 번쯤 들어보셨을 이야기인데요. 왜 해석 가능한 신경망이 필요한가요? 머신러닝 모델, 특히 딥러닝 모델은 '블랙박스'라는 별명이 있죠. 이는 모델의 내부 동작 방식이 복잡하고 불투명하기 때문입니다. 하지만 이런 불투명성은 신뢰성 저하를 가져오며, 오류 발생 시 원인 분석을 어렵게 만듭니다. 특히 의료, 금융 등과 같이 중요한 분야에서는 심각한 문제를 일으킬 수 있죠. 그래서 '왜' 그런 결과가 나왔는지 이해하고 설명할 수 있는 '해석 가능한 신경망'이 필요하게 되었습니다. 해석 가능한 신경망을 어떻게 만드나요? 해석 가능한 신경망을 만드는 방법에는 여러 가지가 있습니다. 대표적으로 fe..

데이터를 수식으로 변경! Symbolic Regression 이란?

Intro AI는 많은 데이터와 큰 모델을 사용하며 발전을 이루어왔습니다. 하지만 항상 black-box라는 한계로 신뢰하지 못한다는 치명적 단점을 가지고 있습니다. 최근에는 많은 데이터를 학습한 덕분에 좋은 성능을 내는 Large language model(LLM)이 많이 공개되고 있지만 여전히 엉뚱한 답변을 내놓는 hallucination이 나타나는 경우가 많이 있습니다. 이런 문제를 해결하기 위해 interpretable AI에 대한 연구가 많이 이루어지고 있습니다. 이번 글에서는 그중 한 갈래인 symbolic regression에 대해 소개하려고 합니다. Symbolic Regression 이란? Symbolic regression은 input x, output y에 대한 set이 있을 때 이 ..

일본 (오사카 + 교토) 3박 4일여행

3박 4일의 일본 여행기. 아무 계획 없이 친구와 오사카로 떠났다. 첫날은 무작정 간사이 국제공항에 내려 도톤보리로 향했다. 가장 유명하다고 하여 맛집을 기대하며 갔다. 기차를 잘 못 타는 바람에 거의 2시간 정도 걸려 도착했다. 검색해 보니 40분이면 이동하는 거리였다.. 도톤보리에 가니 유명한 풍경들이 보였다. 다른 사람들처럼 글리코상 앞에서 한 컷 찍었다. 알고 보니 글리코 제과 회사 광고라는데 왜 유명해진 거지? 저녁을 안 먹어서 바로 근처 맛집을 찾아 헤매었는데, 이미 늦은 시간이라 닫은 곳들도 있었다. 핫플이라 그런지 늦은 시간에도 줄 서는 곳도 많았다. 다행히 괜찮아 보이는 라멘집을 찾아 주문하고 들어갔다. 요즘 일본은 카드나 페이를 쓸 수 있다고 해서 환전을 5만 원만 해갔는데 카드가 안 ..

Story/여행 2023.06.06

Image Foundation Model & Transfer methods

Intro 요즘 사회적으로 가장 핫한 주제가 ChatGPT와 같은 Foundation Model이다. 불과 몇 년 전만 해도 AI를 사용해서 실질적인 이익을 얻는 것은 아직 시간이 걸릴 것이라는 의견이 많았는데 OpenAI의 ChatGPT 열풍으로 변곡점을 맞이한 듯하다. 뿐만 아니라 최근 나오는 이미지 생성 모델들 또한 엄청난 성능을 보이며 많은 이들이 사용하고 있다. 덕분에 많은 기업들이 빅 모델(big model)을 만드는 것에 뛰어들고 있다(Fig 1). 이번 글에서는 자연어 생성 모델은 생략하고 이미지 생성(stable diffusion)과 이미지 분류(CLIP)에 관한 모델과 big 모델을 튜닝하기 위한 몇 가지 알고리즘을 소개한다. Zero-shot Image Classification GP..

객체 지향 프로그래밍 [Python]

객체 지향 프로그래밍(OOP, Object-Oriented Programming)은 객체들의 집합으로 프로그램의 상호 작용을 표현하는 프로그래밍 방법 중 하나다. Python을 처음 배울 때 기본적인 내용을 배웠지만 객체 지향 방법의 장, 단점과 어떨 때 사용하고 어떻게 사용하는 것이 좋은지 잘 알지 못해 현업에서 사용하는 데 애를 먹었다. 그래서 이 글에서는 객체 지향 프로그래밍을 사용하는데 필요한 내용들과 지켜야하는 원칙들을 예시와 함께 남긴다. 클래스(class) VS 객체(object) VS 인스턴스(instance) 클래스는 만들고자하는 객체 들의 공통적 성질을 묶어 추상화하여 표현한 것을 말한다. 이 말이 어렵게 느껴질 수 있는데, 예를 들면 현실에서 '사람'이라는 개념도 여러 사람들의 공통적..

python 2023.01.29

추천 시스템 기초

- 추천 vs 검색 : 검색은 유저가 원하는 것을 알고 있을 때 그와 관련된 정보를 주는 것이고 추천은 유저가 스스로 원하는 것을 특정하지 않았을 때(모를 때) 관심 있을 만한 것들을 제시해 주는 것이다. - 콘텐츠 기반 추천시스템 : 유저가 좋게 보는 아이템과 유사한 다른 아이템을 추천하는 방법. 장점 1. 다른 유저의 데이터가 필요하지 않다! 2. 추천할 수 있는 아이템의 범위가 넓다. (새롭거나 유명하지 않은 것까지 모두 가능 -> cold start problem 해결 가능) 3. 추천하는 이유를 제시할 수 있다. (기존에 좋아하던 아이템과 비슷하므로 해석 가능함.) 단점 1. 적절한 features를 찾기가 어렵다. (영화, 사진, 음악, 뉴스 등, 너무 많은 features가 있어 그중 어떤 ..

Mask + Neural Network = ?

Intro 일반적으로 딥러닝에서 mask는 pruning시에 사용하게 된다. 예를 들어 Lottery ticket hypothesis([1])의 경우 훈련을 마친 모델 파라미터의 magnitude를 기준으로 mask를 생성한다. 일정 값보다 작은 파라미터는 0, 나머지는 1인 mask가 생성된다. 다른 많은 pruning 방법에서도 binary mask를 생성하는 방식을 따른다. Mask는 pruning 뿐 아니라 다양한 task에서 사용되는데, 이번 글에서 그와 관련된 논문들에 대해 간단히 정리해보고자 한다. Mask is all you need Intro에서 언급한 것과 같이 mask는 pruning에서 많이 사용된다. Pruning에서 mask가 어떤 역할을 하는지 Deconstructing Lot..

Lottery ticket hypothesis 와 후속 연구 정리

Intro AI는 대용량의 데이터와 큰 모델을 기반으로 많은 발전을 이루고 있다. 하지만 많은 데이터와 거대 모델을 학습시키는 것은 많은 비용이 들게 된다. 큰 모델은 저장 용량이 클 뿐 아니라 예측을 할 때 많은 연산을 요구하기 때문에 효율적이지 않다. 특히 스마트폰 같은 작은 기계에서 사용하기에 적합하지 않다. 그에 따라 모델의 크기를 줄여 메모리를 줄이며 연산량을 줄여보자 하는 시도가 많이 이루어졌고 대표적인 분야로 knowledge distilation, pruning 등이 있다. 이번 글에서는 pruning, 특히 ICLR 2019에서 best paper를 받은 lottery ticket hypothesis에 대한 해석과 단점을 극복한 후속 논문들을 살펴볼 것이다. 내용을 설명하기 전에 글을 읽..

Neural Tangent Kernel 리뷰

이번에 리뷰할 Neural Tangent Kernel (NTK) 논문은 NIPS 2018에 실린 논문으로 많은 인용수를 자랑하는 파급력 높은 논문입니다. 하지만 논문을 이해하려면 수학적 배경지식이 많이 필요해서 읽기가 어렵습니다. 다행히 설명을 잘해놓은 외국 블로그([2])가 있어 많은 참고를 하였습니다. 이 논문은 2 hidden layer와 infinite nodes의 neural network는 linear model로 근사하여 생각할 수 있고, 그 덕분에 문제를 convex 하게 만들어 해가 반드시 존재한다는 것을 보여줍니다. 어떻게 linear model로 근사하여 생각할 수 있다는 것인지 차근차근 알아보겠습니다. Taylor Expansion Taylor expansion은 매우 작은 영역에서..

강화학습 기초 다지기 (2) - 강화학습 문제 풀이 기법 (DP, MC, TD)

강화 학습은 최적 가치 함수를 찾거나 그것을 만드는 좋은 정책을 찾는 것을 목표로 한다. 하지만 이는 쉽지 않다. 이를 풀기 위한 여러 가지 방법이 있는데 유명한 방법 몇 개만 정리한다. 첫 번째로 환경에 대해서 알 때 동적 계획법(Dynamic Programming: DP) 방법을 사용할 수 있다. '환경'에 대해서 안다는 것은 상태와 행동에 대한 보상 함수 R과 상태천이 행렬 P를 안다는 의미다. 이는 현실적이지 않다는 단점이 존재하지만 매우 효율적이고 문제를 해결하기 쉽다는 장점이 있다. 동적 계획법은 큰 문제를 분할한 작은 문제의 최적 값이 큰 문제에서도 최적 값이어야 한다. 또한 큰 문제의 해를 구하기 위해서, 작은 문제의 최적 해를 재사용할 수 있어야 한다. 이때, 정책 평가(Policy Ev..

반응형