일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 모두의 딥러닝
- 코틀린
- ESG 채권
- ESG
- 밑시딥
- gradiant descent
- 선형회귀
- 딥페이크
- 다중분류
- 면접왕 이형
- 예측선
- 경제신문스크랩
- MRC
- andoriod with kotlin
- nlp
- 경사하강법
- 학습 자동 중단
- k겹 교차검증
- 로지스틱 회귀법
- 안드로이드
- 면접왕이형
- 베스트 모델
- 보이스피싱
- 뉴로 심볼릭
- 과적합
- 밑시딥2
- 독서 #독서후기 #피로사회 #행동과잉 #긍정과잉
- 안드로이드 구조
- GPT-3
- 밑바닥부터 시작하는 딥러닝
- Today
- Total
목록모두의 딥러닝 (8)
Practice makes perfect!
# 데이터 입력 df_pre = pd.read_csv('../dataset/wine.csv', header=None) # sample()는 원본 데이터에서 정해진 비율만큼 랜덤으로 뽑아오는 함수. # frac=1은 100% df = df_pre.sample(frac=1) # 모델 업데이트 모델 저장 폴더 설정 (에포크마다 모델의 정확도를 저장할 폴더) MODEL_DIR = './model/' if not os.path.exists(MODEL_DIR): # 폴더가 존재하지 않으면 os.mkdir(MODEL_DIR) # 이 이름의 폴더 생성 # checkpointer에 모니터할 값 지정 val_loss : 테스트 오차(케라스 내부에서 기록되는 값) 모델이 저장될 곳 : 위에서 생성한 modelpath ver..
과적합 모델이 학습 데이터셋 안에서는 일정 수준 이상의 예측 정확도를 보이지만, 새로운 데이터에 적용하면 잘 맞지 않는 것을 말함 층이 너무 많거나 변수가 복잡해서, 또는 테스트셋과 학습 셋이 중복될 때 발생 해결방법 학습 데이터셋과 테스트 데이터셋을 완전히 구분한 후, 학습과 테스트를 동시에 병행하며 진행 머신러닝의 최종 목적은 과거의 데이터를 토대로 새로운 데이터를 예측하는 것 -> 테스트셋을 만들어 정확한 평가를 병행하는 것이 중요! -학습이 깊어져서 학습셋 내부에서의 성공률은 높아져도 테스트셋에서는 효과가 없다면 과적합이 일어나고 있는 것. 학습을 진행해도 테스트 결과가 더 이상 좋아지지 않는 지점에서 학습을 멈춰야 함. # 학습 셋과 테스트 셋의 구분 테스트 셋을 30%로 설정 X_train, ..
# species 데이터에 문자열이 있기 때문에 numpy대신 pandas를 이용해 데이터 불러옴 df = pd.read_csv('../dataset/iris.csv',names = ["sepal_length","sepal_width","petal_length","petal_width","species"]) print(df.head()) import seaborn as sns import matplotlib.pyplot as plt # pairplot 함수를 이용해 데이터 전체를 한번에 보는 그래프 출력 sns.pairplot(df,hue='species') plt.show() # 꽃잎과 꽃받침의 크기와 너비가 품종별로 차이가 있음을 확인할 수 있음. # 문자열을 숫자로 변환 클래스 이름(문자열)을 숫자..
csv 파일에는 데이터를 설명하는 한 줄이 맨 처음에 나옴(헤더) 우리가 가진 csv 파일에는 헤더가 없기 때문에, name 함수를 통해 속성별 키워드 지정 df = pd.read_csv('../dataset/pima-indians-diabetes.csv',names=["pregnant","plasma","pressure","thickness", "insulin","BMI","pedigree","age","class"]) # 정보별 특징을 더 자세히 확인 샘플수, 평균, 표준편차, 최솟갑, 백분위 수에 해당하는 값, 최댓값 보여줌. print(df.describe()) import matplotlib.pyplot as plt # 그래프를 그리기 위한 라이브러리 import seaborn as sns # ..
1. 로지스틱 회귀의 정의 합격, 불합격과 같이 참(1)과 거짓(0)값을 갖는 점들의 특성을 담아낼 수 있는 선을 긋는 작업이다. 1과 0 사이의 값이 없으므로 직선으로 그리기 어렵다. 따라서 아래와 같이 S자 형태로 그려진다. 2. 시그모이드 함수 시그모이드 함수는 y값이 0과 1 사이이다. 이 식에서 a는 그래프의 경사도를, b는 그래프의 좌우 이동을 의미한다. 따라서 a와 b의 값에 따라 오차가 변한다. a값에 따라 변화하는 오차를 그래프로 나타내면 아래와 같다. a 값이 작을 때는 0 또는 1의 값을 아예 나타내지 않는 직선이 된다. 따라서 오차가 무한대로 증가한다. 하지만 a 값이 크다고 해서 오차가 사라지지는 않는다. b값이 너무 크거나 작을 경우 오차는 위와 같이 이차함수 그래프와 유사한 형..
1. 경사 하강법의 개요 3장에서 기울기 a에 따라 오차 값이 크거나 작아지는 것을 알았다. 기울기 a와 오차의 관계를 그리면 2차함수 그래프로 그릴 수 있는데, 이때 오차가 최소가 되는 값을 찾아야한다. 이때 미분 기울기를 이용해 오차가 가장 작은 방향으로 이동하는 것을 경사 하강법(Gradiant Descent)라 한다. 2차 함수에서 기울기가 0인(x축과 평행한) 점에서 최솟값을 갖는다. (위 그림에서 a=m일 때 최솟값을 갖는다) 즉 경사 하강법은 미분 값이 0인 지점을 찾는 것이다. 임의의 점 a1에서 미분하여 기울기 구함 구해진 기울기의 반대 방향으로 얼마간 이동시킨 a2에서 미분하여 기울기 구함 미분 값이 0이 될 때 까지 왔다갔다하며 반복 2. 학습률 2번 과정에서 적절한 이동 거리를 정해..
딥러닝은 작은 통계의 결과들이 무수히 얽혀 이루어지는 복잡한 연산의 결정체이다. 딥러닝을 이해하기 위해 말단에서 이뤄지는 가장 기본적인 두 가지 계산원리인 선형 회귀와 로지스틱 회귀를 알아야한다. 1. 선형 회귀 (linear regression) : '가장 훌륭한 예측선 긋기'라는 통계학 용어 '학생들의 중간고사 성적이 [ ]에 따라 다르다' [ ] = '정보' = x (독립 변수), 성적 = y (종속 변수, x값에 따라 변함) → 선형 회귀란 독립변수 x를 사용해 종속 변수 y의 움직임을 예측하고 설명하는 작업을 말함. 단순 선형 회귀(simple linear regression) : 하나의 x 값만으로 y 값을 설명 다중 선형 회귀(multiple linear regression) : x 값이 여..
졸업 작품을 준비하면서 딥러닝 공부를 시작하기로 했다. 교수님의 추천으로 길벗 출판사의 '모두의 딥러닝'을 구매했다. 일단 기초부터 차근차근 공부해나가야겠다. 사람이 할 수 있는 것과 유사한 판단을 컴퓨터가 해 낼 수 있게끔 인공지능을 연구하던 중, 기존의 데이터를 이용해 앞으로의 일을 예측하는 '머신러닝(machine learning)' 기법이 효과적임을 발견했다. 이 머신러닝 안에는 여러 알고리즘들이 있는데, 이 중 가장 좋은 효과를 내는 것이 바로 딥러닝이다. (딥러닝 ⊂ 머신러닝 ⊂ 인공지능) 기존에 우리가 했던 프로그래밍은 데이터를 입력해서 답을 구하는 데 초점이 맞춰져 있었다면, 머신러닝은 데이터 안에서 규칙을 발견하고 그 규칙을 새로운 데이터에 적용해서 새로운 결과를 도출하는 데 초점이 맞춰..