Loading...
2023. 1. 1. 22:45

비전공자도 이해할 수 있는 AI지식 -내비게이션은 어떻게 막히는 구간을 알까-

1. 내비게이션, 이제는 운전자에게 없어서는 안되는 필수품 내비게이션이 등장하면서 우리의 운전 습관은 완전히 달라졌습니다. 당장 처음 본 낯선 장소에 뚝 떨어져도, 내비게이션만 있으면 정확한 현재 위치와 이동 경로를 알 수 있게 되었습니다 뿐만 아니라 요즘은 카카오 택시 등의 서비스를 이용하면 내비게이션이 통합되어 아예 도착지가 미리 입력되어 있기 때문에 더 이상 도착지를 택시기사에게 말해줄 필요도 없습니다. 더군다나 내비게이션은 예상 도착 시간까지 정확히 예측해줍니다. 이제 내비게이션이 없는 운전은 상상도 할 수 없습니다. 이제는 스마트폰 없는 일상을 상상할 수 없듯이, 내비게이션 없는 운전은 상상하기 힘들어졌습니다. 2. 내비게이션은 왜 똑똑해졌는가 이러한 변화에는 2가지 터닝포인트가 있었습니다. 첫..

2022. 12. 31. 18:20

batch size는 어떻게 설정해야하는가?

그냥 아무거나 정해도 되는 것 같지만 대단히 중요한 parameter 데이터 10만개 전부를 batch하니 gpu가 터지고 1개씩만 쓰자니 너무 오래 걸림 batch size가 커질수록 train,test function의 sharp minimizer에 도달하고 batch size가 작아질수록 flat minimizer에 도달한다는 것이 실험적으로 증명한 논문이 있다 위와 같은 그림에서 flat minimum은 train에서 조금만 벗어나봤자 testing에서 여전히 비슷하다는 것 sharp minimum은 train에서 조금 벗어나면 testing에서 매우 큰 차이를 보인다 일반적으로 test에서 모형이 잘 동작하기를 바란다 그러므로 flat minimum에서 generalization performa..

2022. 12. 31. 18:13

머신러닝 모델링 기본방법 - bootstrapping, bagging, boosting

1. bootstrapping 현재 데이터를 복원추출로 random sampling하여 얻은 여러 데이터로 학습하는 기법 각각의 sample 각각에서 모델을 만들어 예측의 consistence를 보고자 하는 것임 혹은 데이터가 부족할 때 데이터를 늘리고자 쓰는 기법 위 그림은 bootstrapping을 이용한 bagging을 나타낸다고 볼 수 있겠다 2. bagging bootstrapping으로 만든 데이터 set으로 여러 모델을 만들고 각 모델의 성능을 적절하게 aggregation 한다 aggregation하는 방법은 voting이나 averaging 등이 있다. 보통 모든 학습데이터를 써서 결과를 내는게 성능이 좋아보이지만 의외로 80% sampling bootstrapping 하여 얻은 bagg..

2022. 12. 31. 01:57

값싼 비용으로 최대 효율을 낼 수 있을까 - lottery ticket hypothesis

1. introduction research의 트렌드를 바꿔버린 혁명적인 가설로 한번 제기된 이후 후속논문이 지금까지도 나오고 있음 첫 network인 A를 parameter initialization을 하고 적당히 training을 하여 91%의 정확도를 얻었다고 하자. 이후 training된 network를 pruning하여 B를 얻었다고 한다. 이 때 B의 현재 parameter에서 mask로 가려지지 않은 부분을 A의 첫 initialization된 parameter로 reset한 다음에 정확히 A와 동일한 training방법을 사용하여 reset한 B를 training하면 91%에 가까운 정확도를 얻을 수 있는 그런 network B가 존재할 수 있다는 뜻이다. 이런 network B를 lott..

2022. 12. 26. 03:14

Pytorch 기본 익히기1 -Pytorch가 무엇이고 기본 문법 익히기-

1. pytorch 소개 딥러닝을 다루는 대표적인 라이브러리인 Tensorflow, Keras, Pytorch중 페이스북 인공지능 연구팀에 의해 개발된 라이브러리 Pytorch python의 언어 구조와 굉장히 유사하며, 간결함 내부적으로 Computed Unified Device Architecture(CUDA)와 CUDA based Deep Neural Network(cuDNN)라는 API(application programming interface)를 이용해 GPU(graphics processing unit)연산을 가능하게 하여 연산 속도가 월등히 빠르다. numpy와 autogradient와 function을 제공해주는 framework 데이터의 형태로, numpy 구조의 array를 받아 te..

2022. 12. 20. 22:13

GAN(Generative Adversarial Network) 기본 개념 되돌아보기

1. GAN의 특징 인공지능에서 데이터 생성이라는 새로운 분야를 선보이며 등장 GAN의 목적은 갖고 있는 데이터를 모방해서 새로운 데이터를 만드는 것이며, 두 개의 네트워크가 서로 목표를 달성하기 위해 적대적으로 겨루는 구조 2. GAN의 구조 GAN을 처음 제안한 이안 굿펠로우는 GAN을 경찰과 위조지폐범의 관계로 설명하였다. GAN은 위 그림처럼 생성모델 Generator와 분류모델 Discriminator가 겨루는 네트워크로 generator는 위조지폐범, discriminator는 경찰에 비유된다. 위조지폐범의 목적은 경찰을 속이기 위해 최대한 진짜 지폐와 유사한 가짜 지폐를 생성하는 것이고 경찰은 위조지폐범이 만든 가짜 지폐와 진짜 지폐를 잘 분류하는 것을 목적으로 한다. 만약 위조지폐범의 수법..