1. 변수(컬럼) 타입 확인 :
- 데이터.dtypes
2. 변수를 범주형으로 변경 :
- 데이터['컬럼명'].astype('category')
3. 변수를 수치형으로 변경 :
- 데이터['컬럼명'].astype('int')
- 데이터['컬럼명'].astype('float')
4. NA 값의 처리 :
- NA 갯수 체크 : 데이터.isna().sum()
- NA 값 채우기 : 데이터['컬럼명'].fillna(숫자값)
- 숫자값 ex ) 평균값 = 데이터['컬럼명'].mean()
+ 대괄호 한번쓰던 두번쓰던 상관없더라. 둘은 기능적으로는 차이없으나 출력형식만 조금 다른 것 같음.
-> 개별 칼럼을 선택할 때에는 대괄호를 한 번만 사용하면 되요. 두 번씩 사용한 부분은 여러 개의 칼럼을 동시에 선택하여 새로운 DataFrame을 구성할 때에 사용합니다. 결과를 가만히 들여다 보면 차이점을 알 수 있으실 거에요.
opentutorials.org/course/4570/28989
5. 성능 높이는 방법 (BatchNomalization 사용)
기존 코드 (실습 2)
# 2. 모델의 구조를 만듭니다
X = tf.keras.layers.Input(shape=[13])
H = tf.keras.layers.Dense(8, activation='swish')(X)
H = tf.keras.layers.Dense(8, activation='swish')(H)
H = tf.keras.layers.Dense(8, activation='swish')(H)
Y = tf.keras.layers.Dense(1)(H)
model = tf.keras.models.Model(X, Y)
model.compile(loss='mse')
여기서 Dense와 Activation을 분리할 수 있다.
X = tf.keras.layers.Input(shape=[13])
H = tf.keras.layers.Dense(8)(X)
H = tf.keras.layers.Activation('swish')(H)
H = tf.keras.layers.Dense(8)(H)
H = tf.keras.layers.Activation('swish')(H)
H = tf.keras.layers.Dense(8)(H)
H = tf.keras.layers.Activation('swish')(H)
Y = tf.keras.layers.Dense(1)(H)
model = tf.keras.models.Model(X, Y)
model.compile(loss='mse')
둘은 같은 코드이다. 분리한 이유는 Dense와 Activation 사이에 BatchNormalization을 넣기 위함이다.
X = tf.keras.layers.Input(shape=[13])
H = tf.keras.layers.Dense(8)(X)
H = tf.keras.layers.BatchNormalization()(H)
H = tf.keras.layers.Activation('swish')(H)
H = tf.keras.layers.Dense(8)(H)
H = tf.keras.layers.BatchNormalization()(H)
H = tf.keras.layers.Activation('swish')(H)
H = tf.keras.layers.Dense(8)(H)
H = tf.keras.layers.BatchNormalization()(H)
H = tf.keras.layers.Activation('swish')(H)
Y = tf.keras.layers.Dense(1)(H)
model = tf.keras.models.Model(X, Y)
model.compile(loss='mse')
성능이 좋아진다. loss가 더 낮게까지 떨어진다는 것을 볼 수 있다. 이론은 공부필요.
6. a컬럼이 b 컬럼에게 영향을 주어서 독립/종속변수가 되었고, b 컬럼이 c 컬럼에게 영향을 주어서 독립/종속변수 관계일 때엔
a로 인한 c의 결과를 얻고 싶은데 어떻게 독립변수 종속변수를 구성해야하나요?
-> 하나의 표에서 독립변수, 종속변수는 결정이 되어야 합니다. 양쪽에 모두 사용될 가능성이 있는 칼럼의 경우에도 독립변수로 사용할지, 종속변수로 사용할지 선택을 해야합니다. a, b 를 독립변수로 c를 종속변수로 사용해서 학습을 하거나 b가 불필요하다고 생각되면 b를 배제하고, a를 독립변수로 c를 종속변수로 사용해서 학습을 하면 됩니다. ( opentutorials.org/module/4966/28988 )
출처 - opentutorials.org/
'[인공지능]' 카테고리의 다른 글
카톡에서 ChatGPT 사용하기 (2) | 2023.04.11 |
---|---|
[TensorFlow] 신경망의 완성 : 히든레이어 & 실습 2, 3 재 구현 (1) | 2020.12.15 |
[TensorFlow] 지도학습 전체과정 3 (Feat. 딥러닝) (0) | 2020.12.15 |
[TensorFlow] 딥러닝 학습원리 (0) | 2020.12.15 |
[TensorFlow] 지도학습 전체과정 2 (Feat. 딥러닝) (0) | 2020.12.15 |