공부/AIFFEL 95

Exploration 3 : 카메라 스티커앱 만들기 첫걸음

1. 어떻게 만들까? 사진 준비하기 - 얼굴이 포함된 사진을 준비하고 -> 사진으로부터 얼굴 영역을 찾고 -> 머리에 왕관 스티커를 씌운다. - import cv2, matplotlib.pyplot, numpy, os - os.getenv, cv2.imread, cv2.resize, cv2.cvtColor 2. 얼굴 검출 : face detection - 이미지에서 gradient를 feature로 사용하는 이유 : 주변 상황과 무관하게 동일한 표현을 얻을 수 있다. - 단일 픽셀의 gradient를 사용하지 않고 16x16의 정사각형을 이용하는 이유 : 너무 자세히 다루면 숲을 보지 못한다. - import dlib - dlib.get_frontal_face_detector - for dlib_rect..

공부/AIFFEL 2021.01.12

풀잎스쿨 - DeepML(CS231N) Lec. 03 ~ Lec. 04(일부)

오늘부터 각 조원들끼리 퍼실님께서 정해준 구간만큼 강의를 듣고 정리한 후 모두 모여 발표하는 방식으로 수업을 진행하기로 했다. 1. Optimizer에 대해서 3강동안 배운 것 같다. 함수를 최적화 해야하는 이유, 방법, 원리 등을 배운 것 같다. 역시 너무 어렵다. 2. 4강에서 backpropagation에 대해 각 노드별 영향치를 계산하는 미분법에 대해 짧게 배우고 수업이 끝났다. 김성훈교수님의 모두를 위한 딥러닝을 RNN이전까지 듣고 모두의연구소를 참여했다. 지금까지 해본 결과(어디까지나 개인적인 생각임) 영상에서 개념을 난이도 있게 설명해주시는 듯하다. (미적분 계산은 당연히 할 줄 안다는 바탕이 깔린듯)

공부/AIFFEL 2021.01.11

FUNDAMENTAL 6. 딥러닝과 신경망의 본질

1. Deep Learning == Representation Learning? - 딥러닝과 머신러닝의 차이는 무엇인가? - 데이터의 '표현' 방법 : 분자, 이미지, 표, 카테고리 - 사람의 개입의 차이 정도 - 데이터의 내재된 표현과 좋은 표현을 추출한다는 의미는 무엇인가? 2. 딥러닝을 관통하는 철학 - 행동주의 : 자극 -> 행동 - 인지주의 : 자극 -> (정보처리) : 블랙박스 정보 처리 -> 행동 - 연결주의 : 지능체(백지) -> 다수의 사례를 통한 경험 -> 지능체(학습) 3. 신경망의 본질 - 블랙박스(숨겨진, 히든) 정보처리 과정 - 수학의 함수와 프로그래밍에서 말하는 함수는 본질적으로 다르지 않다. 4. 함수의 역할 - x와 y를 나타내 주는 도구 : y = 2x - x를 변환해주는..

공부/AIFFEL 2021.01.11

FUNDAMENTAL 5. Data 어떻게 표현하면 좋을까? 배열(array)과 표(table)

1. 평균 : 식 알아보기, 평균 함수 만들어 보기 2. 배열을 활용한 평균, 표준편차, 중앙값 : 식 알아보기, 배열 만들어 보기, 중앙값 표준편차 함수 만들어 보기 3. main() 함수 4. numpy 패키지 소개 - ndarray, size, shape, ndim, type, 특수행렬(단위행렬, 0행렬, 1행렬) - 브로드캐스트(R의 recycle rule 같은 개념인듯) - 슬라이스와 인덱싱 - random : random(실수), randint(정수), choice(선택), permutation(뒤섞기), normal(정규분포), uniform(균등분포) - 전치행렬 5. numpy로 기본 통계 데이터 계산 해보기 - sum, mean, std, median 6. 데이터의 행렬 변환 - 소리 ..

공부/AIFFEL 2021.01.08

Exploration 2 : Iris의 세 가지 품종, 분류해볼 수 있겠어요?

1. Iris의 세 가지 품종을 분류하기 - 사이킷-런 데이터셋 종류와 붓꽃(Iris) 데이터의 구성 - 붓꽃 데이터 보기 : load_iris().keys(), load_iris().data, load_iris().target 등 2. 첫 번째 머신러닝 실습, 간단하고도 빠르게! - train_test_split 를 이용하여 데이터를 트레이닝 셋과 테스트 셋으로 나누기 - 지도학습과 비지도학습, 분류와 회귀 - Decision Tree, Random Forest, SVM(Support Vector Machine), SGD(Stochastic Gradient Descent), Logistic Regression - 각 모델들 fit, predict 하기 - classification_report를 통해 ..

공부/AIFFEL 2021.01.07

풀잎스쿨 - 코딩마스터(Coding Master) 4장. 빅오와 자료형

1월 6일 오후에 배운 내용이다. 책 : 파이썬 알고리즘 인터뷰 저자 : 박상길 의 책을 읽고 서로 얘기하면서 이해하고 질문하는 수업방식이다. 1. 오리엔테이션 2. 빅오 - 점근적 실행 시간을 표기할 때 가장 널리 쓰이는 수학적 표기법 중 하나 - 입력의 크기가 충분히 클 때 알고리즘의 효율성에 따라 수행 시간이 크게 차이가 나는가에 대한 것 - 종류 : O(1), O(log n), O(n), O(n log n), O(n^2), O(2^n) - 알고리즘은 흔히 "시간과 공간이 트레이드오프 관계다" - 빅오는 상한을 의미, 빅오메가는 하한을 의미, 빅세타는 평균을 의미한다. - 빅오 표기법은 주어진(최선/최악/평균) 경우의 수행 시간의 상한을 나타낸다. 3. 자료형 - 파이썬의 자료형 종류 : 정수(in..

공부/AIFFEL 2021.01.06

FUNDAMENTAL 4. 텍스트의 다양한 변신(문자열, 파일 다루기)

1월 6일 오전에 배운 내용이다. 1. 인코딩과 디코딩 - 문자열 - 바이트, 인코딩, 디코딩, 유니코드 2. 문자열 다루기 - 이스케이프 문자 : \', \", \t, \n, \\ - 원시 문자열 : r을 따옴표 앞에 붙인다. - startswith, endswith - 공백 종류 : 스페이스, 탭(\t), 줄 바꿈, 라인 피드(\n), 개행 복귀(\r) - 공백 처리 : strip, lstrip, rstrip - 대소문자 관련 : upper, lower, capitalize - isX : isupper, islower, istitle, isalpha, isalnum, isdecimal - join, split, replace 3. 정규 표현식 - sub, compile, search, match, f..

공부/AIFFEL 2021.01.06

Exploration 1 : 인공지능과 가위바위보 하기

1. 인공지능과 가위바위보 하기 - 이미지 분류기는 어떤 것이 있을까? - 데이터 준비하기 : MNIST 숫자 손글씨 데이터 2. 데이터 준비하기 - MNIST 숫자 손글씨 불러오기 - 검증용 데이터(validatation set), 교차검증(cross validation) 3. 딥러닝 네트워크 설계하기 - Sequenential Model 사용하기 4. 딥러닝 학습시키기 - fit(), epochs, shape, reshape 5. 얼마나 잘 만들었는지 확인하기 - loss 확인, accuracy 확인 6. 더 좋은 네트워크 만들어 보기 - 하이퍼파라미터들을 바꾸면서 학습시켜보기 : channel1, channel2, dense, train_epoch 7. 프로젝트 : 가위바위보 분류기 만들기 - 가위..

공부/AIFFEL 2021.01.05

풀잎스쿨 - DeepML(CS231N) Lec. 03 Loss Functions and Optimization

1) Multiclass SVM loss(Hinge loss) 2) Loss 함수는 무엇이고 어떻게 구하는가. 3) Over fit에 빠지지 않는 방법 -> Regularization 4) Regularization의 종류 : L2 regularization, L1 regularization, Elastic net(L1 + L2), Max norm regularization, Dropout, Batch normalization 오늘도 어렵지만 같이 이해하고, 질문하고 답변하며 다 같이 성장하는 시간을 가졌다. 저번에 본 영상의 다음 부분을 들었고 개념이 어렵지만 다른분들과 퍼실님께서 도와주시는 덕분에 포기하지 않고 공부할 수 있는 것 같다.

공부/AIFFEL 2021.01.04

FUDNAMENATAL - 3. 파이썬으로 코딩 시작하기

1월 4일 오전에 배운 내용이다. 1) 파이썬으로 코딩 시작하기 - 학습 목표 : 변수, 함수, 연산자, 제어문, 자료형을 이해할 수 있다. - 오류 메세지를 읽고 이해할 수 있다. - 코드를 이해하고 수정할 수 있다. 2) 파이썬에서 함수란 무엇인가 - print() 3) 변수 사용하기 - greeting = "안녕하세요?", print(greeting) 4) 새로운 함수를 정의하기 - def 함수명() : 5) 변수의 유효범위 - 전역변수, 지역변수 6) 함수에 인자 전달하기 - def 함수명(변수) : 7) 함수에 여러 개의 인자를 전달하기 - def 함수명(변수1, 변수2) : 8) 함수의 결과로 값을 반환하기 - return 9) "if"문 : 진실 혹은 거짓 - if 조건문 : - if, el..

공부/AIFFEL 2021.01.04