일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 밑시딥
- 뉴로 심볼릭
- 면접왕이형
- 다중분류
- 밑시딥2
- 코틀린
- ESG 채권
- k겹 교차검증
- 로지스틱 회귀법
- gradiant descent
- MRC
- 보이스피싱
- 선형회귀
- GPT-3
- 밑바닥부터 시작하는 딥러닝
- 학습 자동 중단
- ESG
- 안드로이드
- 안드로이드 구조
- 독서 #독서후기 #피로사회 #행동과잉 #긍정과잉
- 면접왕 이형
- 경사하강법
- 모두의 딥러닝
- 과적합
- 베스트 모델
- 딥페이크
- andoriod with kotlin
- 경제신문스크랩
- nlp
- 예측선
- Today
- Total
목록Study/딥러닝 (11)
Practice makes perfect!
1. 자연어 처리란 NLP (Natural Language Processing)는 자연어를 처리하는 분야, 우리의 말을 컴퓨터에게 이해시키기 위한 기술이다. 영어, 한국어와 같은 자연어는 기계적이고 고정된 프로그래밍 언어와 달리 같은 의미의 문장도 여러 형태로 표현할 수 있고, 그 의미나 형태가 유연하게 바뀔 수 있다. 활용되는 예로 검색엔진, 기계번역, 질의응답 시스템, IME(입력기 전환), 문장 자동요약, 감정분석 등이 있다. 자연어를 컴퓨터에게 이해시키는 데는 '단어의 의미'를 이해시키는 것이 중요하다. 시소러스를 활용, 통계 기반, 추론 기반(word2vec) 이렇게 세 가지 기법이 있다. 2. 시소러스 먼저 시소러스는 사람이 직접 단어의 의미를 정의하는 방식이다. 시소러스는 '동의어'와 '유의..
# 데이터 입력 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 # ..
* 모델 정의 #딥러닝을 구동하는 데 필요한 케라스 함수 호출 from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense #필요한 라이브러리 불러옴 import numpy as np import tensorflow as tf #실행할 때 마다 같은 결과를 출력하기 위한 설정 np.random.seed(3) tf.random.set_seed(3) #준비된 수술 환자 데이터 불러옴 Data_set = np.loadtxt("../dataset/ThoraricSurgery.csv",delimiter=",") #환자의 기록과 수술 결과를 X와 Y로 구분하여 저장 X = Data_set[:,0:17] Y = Data..
퍼셉트론(perceptron) : 신경망을 이루는 가장 중요한 기본 단위 1. 가중치, 가중합, 바이어스, 활성화 함수 가중치 w (weight) 가중합 (weighted sum) 바이어스 (bias) 활성화 함수 (activation function) - ex) 시그모이드 함수 2. XOR 문제 AND와 OR 게이트와 달리 XOR 게이트는 선을 그어 결과값이 1인 값을 구별할 수 없다. 10여 년이 지난 후에야 이 문제를 해결한 개념이 다층 퍼셉트론(multilayer perceptron)이다. 3. 다층 퍼셉트론 XOR 문제의 해결책은 종이를 휘어 주는 것이다. 즉, 좌표 평면 자체에 변화를 주는 것이다. 이를 위해 은닉층(hidden layer)을 만들어 공간을 왜곡하고 두 개의 퍼셉트론을 한 번에..
1. 로지스틱 회귀의 정의 합격, 불합격과 같이 참(1)과 거짓(0)값을 갖는 점들의 특성을 담아낼 수 있는 선을 긋는 작업이다. 1과 0 사이의 값이 없으므로 직선으로 그리기 어렵다. 따라서 아래와 같이 S자 형태로 그려진다. 2. 시그모이드 함수 시그모이드 함수는 y값이 0과 1 사이이다. 이 식에서 a는 그래프의 경사도를, b는 그래프의 좌우 이동을 의미한다. 따라서 a와 b의 값에 따라 오차가 변한다. a값에 따라 변화하는 오차를 그래프로 나타내면 아래와 같다. a 값이 작을 때는 0 또는 1의 값을 아예 나타내지 않는 직선이 된다. 따라서 오차가 무한대로 증가한다. 하지만 a 값이 크다고 해서 오차가 사라지지는 않는다. b값이 너무 크거나 작을 경우 오차는 위와 같이 이차함수 그래프와 유사한 형..