목록Study/AI & Math (22)
Hayden's Archive
방통대 선형대수 강의를 듣고 공부 내용을 정리한 글입니다. 선형대수 도입 수학 해석학(Calculus) - 미분/적분 대수학(Algebra) 기하학(Geometry) 대수학 대수학(代數學)에서 대(代)는 대신한다는 의미 수를 대신한다 = 미지수 -> 결국 방정식 방정식에 관련해서 해를 구하는 방법들 선형대수(線形代數 : Linear Algebra) 선형대수는 대수학의 일종 Linear는 선의 모양 -> 결국은 일차방정식에 대한 것 기본 주제 : 일차연립방정식의 해법 다양한 수학적 도구 행렬 - 일차연립방정식을 달리 표현하면 행렬로도 표현. 로보틱스에도 사용됨 벡터공간 - 벡터들의 집합에 덧셈과 곱셈이 들어가있는 집합 선형변환 등등 - 선형변환의 대표적인 예가 컴퓨터그래픽스, 이미지 프로세싱에서 사용됨 수..
코랩 설치 및 설명 참고 : https://theorydb.github.io/dev/2019/08/23/dev-ml-colab [Colab] Google Colab (코랩) 환경설정 및 사용법 개요 파이썬을 활용한 머신러닝의 첫 관문! 구글 Colab(코랩)의 환경구성 및 기본 사용법을 다룬 포스트입니다. 목차 Colab이란 무엇인가? Colab 환경설정 Colab을 활용한 간단한 예제 작성 Colab & Markdow theorydb.github.io 환경 설정 코드를 보기 전 이해를 돕기 위한 그림 Loss Function - MSE (정량화된 값일 때) - Cross Entropy Loss (분류일 때) 1장도 시간 엄청 많이 걸리는데 6만장 동시에 못함. 그래서 쪼개서 돌려야 하는데 그게 batc..
↑ 0번째 이미지에 대한 정보값임. 0~49999번째 이미지(총 5만개)가 있음. [3, 32, 32]을 [32, 32, 3]으로 바꿔줘야 위와 같이 이미지가 나타남. 0번째 이미지는 라벨이 6이었는데 CIFAR-10에서 6번째 인덱스는 개구리인 것을 알 수 있다. Batch Size를 정해서 돌려보기 - Batch Size 개념 그런데 50000을 64로 나누면 나누어 떨어지지 않음. 나머지가 존재하게 되는데 이걸 버릴 것인지 함께 돌릴 것인지는 drop_last로 정함.(False가 디폴트. 버리지 않고 함께 돌림)
뉴럴 네트워크 Neural Network 인간의 신경세포를 본떠서 만듦. 수상돌기로부터 정보(x값) 입력받아서 축을 통해서 연결되고 결과(y값)을 다시 입력값으로 넘김 특정한 값 이상만 받아들이고 그 밑의 값은 무시 -> 활성함수. 각각의 신념 체계에 따른 다른 가중치 부여 -> Weight 뉴런 세포에 들어오는 값에 대한 공통적인 의견 -> Bias 역치값 이상이 되면 출력값으로 연결, 자극을 인지할 수 없는 값이 들어오면 출력값으로 연결X -> 활성화함수 Sigmoid Activation Function => 선형을 비선형으로 만들 수 있는 tip이 됨. 선형적인 질서가 무너지게 됨. 인공신경망은 생물학적 신경망을 본떠서 만들어짐. 여러 자극이 들어왔을 때 수상돌기를 통해서 자극들이 신경 세포로 들어..
파이토치(Pytorch) 설치 참고 enjoysomething.tistory.com/40 파이토치 문서 참고 pytorch.org/docs/stable/index.html 딥러닝 라이브러리는 텐서플로우, 파이토치 두 축. 파이토치는 2017년에 나왔는데, 텐서플로우보다 파이토치가 더 최근에 나왔고 개발자 포럼도 활발하다. 파이토치가 텐서플로우보다 더 속도가 빠르고 직관적이다. 케라스를 많이 쓰는데 케라스는 쉽고 간단함. 전문가용으로는 부족. CPU에서 돌릴 때 시간 오래 걸릴 경우 GPU로 돌려야 함. 추후 구글에서 무료로 제공하는 GPU를 쓸 것. Pytorch 에서의 Gradient Descent Tensor Type - tensor(), as_tensor() Numpy 배열을 Tensor 타입으로 ..
Optimization(최적화) / Loss Function(손실함수) / Gradient Descent(경사하강법) / Back Propagation(오차역전파) => 다 연결된 개념 * 요점정리 Optimization - 하강하는 방법 Loss Function - 현재 고도를 측정하는 것 Gradient Descent - Optimization 중의 하나. Back Propagation 방법을 이용해서 하산하는 Optimization - 정확한 방향을 스텝마다 계산하기 때문에 Slow, 하지만 Global Minimum까지 정확하게 찾아간다. - Learning Rate는 기본적으로 0.1을 많이 사용함. Back Propagation - 가장 가파르게 내려갈 수 있는 방향을 정하는 것. 이 때 미분..
CIFAR-10는 5만개의 Training Image가 있고 만개의 Test Image가 있음. 각각의 이미지는 32×32×3 * 32×32×3의 의미 32X32 => 이미지 세로와 가로(보통 정사각형으로 주어짐) 3 => 채널 수. (흑백은 채널이 1개, 칼라는 채널이 3개, RGB) 입력값인 X로 이미지가 들어옴. MNIST - 28X28X1 (0~9 손글씨 숫자. 검정색 바탕에 흰색글씨) 10개의 카테고리 랜덤함수 돌리면 10%의 확률 정답이 나오겠지만 딥러닝 알고리즘 돌리면 정확도 99.8%(사람보다 더 잘 맞힘) MNIST-Fashion CIFAR10 - 32X32X3 -- 정확도 99.3% 10개의 카테고리 MNIST보다 정보량이 더 많다.(=복잡한 입력이다) CIFAR100 - 정확도 93%..
2020 유망 인공지능 스타트업 100 출처 : http://scimonitors.com/ai-100-2020-%EC%9C%A0%EB%A7%9D-%EC%9D%B8%EA%B3%B5%EC%A7%80%EB%8A%A5-%EC%8A%A4%ED%83%80%ED%8A%B8%EC%97%85-100%EA%B3%B3-%EC%9C%A0%EB%8B%88%EC%BD%98-10-%ED%8F%AC%ED%95%A8/ 2017년에는 한국 회사로 Lunit이 유일하게 100위 안에 든 적이 있다 ( http://www.techforkorea.com/2017/01/18/lunit-about-to-run-it-in-2017-the-only-korean-company-in-the-ai100-by-cb-insights/ ) 참고 : https..
데이터 출처 : grouplens.org/datasets/movielens/ MovieLens GroupLens Research has collected and made available rating data sets from the MovieLens web site ( The data sets were collected over various periods of time, depending on the size of the set. … grouplens.org 1. DataLoading and Data PreProcessing 데이터를 가져와서 필요에 맞게 가공한다. 데이터 전처리 과정. 2. 영화와 영화들 간의 유사도 산출 - 코사인 유사도 활용 앞선 포스팅에서는 함수를 직접 구현했지만 여기서는 코사..