목표 BoneAge Project에 관련해서, original kernel 커널을 따라해보고, 그 것을 하나하나 설명한 뒤, 이 커털을 응용해서 제가 스스로 코드를 다른 방식으로 짜보는 것 입니다. original kaggle Kernel : https://www.kaggle.com/kmader/attention-on-pretrained-vgg16-for-bone-age ※버전 문제에 관련해서 코드 실행이 안되는 부분은 커스텀해서 수정한 부분도 있으니 참고 바랍니다. 1. import module 1) ImageDataGenerator Keras의 클래스이며, 이미지 파일을 쉽게 학습을 시킬 수 있는 클래스이다. 해당 클래스로 데이터 증식(data augmentation)을 할 수 있다. 의료AI에서는 ..
해당 글은 개인적으로 공부한 내용과 '김태영님의 블로그'를 참고한 글 입니다. 학습 문제와 해답지를 함께 제공을 하고(코드상에선 x와 y) 문제를 푼 뒤 정답지를 보며 맞는지 틀린지 확인하는 과정을 학습이라고 부른다. 평가 문제만 주고 풀게한 뒤, 그 문제가 맞는지 틀린지 점수(Score)만 계산하는 것. Validation Set 학생(모델)들의 학습 방법을 Validation set으로 평가해볼 수 있다. 그래서 Hyper-Parameter(공부방법)을 변경해가면서 학생(모델)에게 알맞은 공부 방법이 무엇인지 알아낼 수 있다. Hyper Parameter는 학습을 하면서 적절한 값을 찾아내야 한다. UnderFitting(언더피팅) 학습이 덜 상태를 의미하며 이는 학습을 더 하면 성능이 더 높아질 가..
1. 퍼셉트론이 무엇인가? 가장 간단한 Artificial Neural Network의 기본 구조이다. 앞으로 Deep learning에 대해 공부를 하기 전 퍼셉트론에 대한 개념을 확실하게 잡아야 나중에 도움이 된다. 앞으로 언급할 퍼셉트론에 대한 개념은 생물학적인 뉴런과 밀접한 관계가 있다. 생물학적인 Neuron을 보면 (1) dendrites로 모든 신호를 받아드리고 (2) cell body에서 신호를 모은 후 (3)axon을 통해 신호가 잘 갈 수 있도록 채찍질 해주고 (4) axon terminals로 다음 neuron으로 신호를 전달하는 구조이다. 퍼셉트론은, 생물학적인 neuron에서 이루어지는 과정을 수학적으로 모델링한 인공뉴런이다. 퍼셉트론의 입력을 Xi라 하고 시냅스의 가중치를 W라고..
신경망 학습의 전체 그림 1단계) 미니배치(Mini-Batch) training data중 일부를 가지고 와서 배치화 시키는 작업이다. 미니배치의 목표는, 손실함수(cost function = loss function)값을 줄이는 것이 목표이다. 2단계) 기울기 산출 미니배치의 cost function 값을 줄이기 위해 각 가중치 매개변수(weight)의 기울기를 구한다. 기울기는, cost function의 값을 가장 작게 하는 방향을 제시하는 역할. 3단계) 매개변수 갱신 weight를 기울기 방향으로 아주 조금씩 갱신해준다. 4단계) 반복 1 ~ 3단계 과정을 계속 반복한다. 여기까지는 '밑바닥부터 시작하는 딥러닝'에 대한 내용을 작성한 것 입니다. 이제부턴 연구실에서 책 세미나 한 내용을 다시 혼..
#1 흐름도 #2 학습 데이터 소스코드 123456789101112131415161718192021222324252627282930313233343536373839404142434445from sklearn import svm, metricsimport glob, os.path #1 file loadfiles = glob.glob("./lang/train/*.txt") #학습 데이터들을 모두 긁어옴 #학습 데이터와 레이블 리스트 변수를 생성.train_data = []train_label = [] for file_name in files: #레이블 구하기 basename = os.path.basename(file_name) lang = basename.split("-")[0] #텍스트 추출하기(안에 있는..
#1 데이터 가져오기 url : https://github.com/pandas-dev/pandas/blob/master/pandas/tests/data/iris.csv(csv파일을 저장하고 싶다면 RAW클릭 후 해당 내용을 전체 복사를 하고 메모장을 열어 복사한 내용을 붙여넣기 해서 다른이름으로 저장(iris.csv)를 해주면 됩니다.) #2 품종 분류 소스코드 1234567891011121314151617181920import pandas as pd #데이터를 읽어드리고 분할할때 편리from sklearn import svm, metrics"""svm : 데이터를 분류하는 최적(margin을ㅇ 최대화)선을 찾는 것을 의미.metrics : 정답률을 쉽게 구할 수 있게 됨."""csv = pd.read_..
#1 개발 PC 환경 - Windows 10 Professional 64bit- Python 3.6.4- Docker toolbox(최신버전)- Atom Edittor(Python package 설치) #2 전체 소스코드 1234567891011121314151617181920212223242526272829303132333435363738#모듈 추가import urllib.requestfrom bs4 import BeautifulSoupimport time #기사 목록 가져옴url = "http://news.naver.com/main/main.nhn?mode=LSD&mid=shm&sid1=105"response = urllib.request.urlopen(url) #응답 or 문자열 . html.pas..