인공지능 관련 18

정규 표현식(Regular Expression)

정규 표현식 문법 특수문자 설명 . 한 개의 임의의 문자를 나타냅니다. (줄바꿈 문자인 \n는 제외) ? 앞의 문자가 존재할 수도 있고, 존재하지 않을 수도 있습니다. (문자가 0개 또는 1개) * 앞의 문자가 무한개로 존재할 수도 있고, 존재하지 않을 수도 있습니다. (문자가 0개 이상) + 앞의 문자가 최소 한 개 이상 존재합니다. (문자가 1개 이상) ^ 뒤의 문자로 문자열이 시작됩니다. $ 앞의 문자로 문자열이 끝납니다. {숫자} 숫자만큼 반복합니다. {숫자1, 숫자2} 숫자1 이상 숫자2 이하만큼 반복합니다. ?, *, +를 이것으로 대체할 수 있습니다. {숫자,} 숫자 이상만큼 반복합니다. [ ] 대괄호 안의 문자들 중 한 개의 문자와 매치합니다. [amk]라고 한다면 a 또는 m 또는 k 중..

인공지능 관련 2021.07.14

tensorflow 함수 TIP

https://www.tensorflow.org/versions?hl=ko 위 사이트에 들어가서 Tensorflow 버전에 맞는 API에 들어가면 Tensorflow 버전별 함수 defult값과 예시를 볼 수 있다. tf.keras에서 layers 를 보면 우리가 자주 쓰는 Conv2D함수의 defult값과 사용할 수 있는 옵션을 볼 수 있다. 위에 보는거처럼 Conv2D의 Examples도 확인 가능하니 Tensorflow하다가 잘모르는 함수가 있으면 검색해보는것을 추천한다. 함수 검색하는 방법 EX) tf.keras.layers.Conv2D의 설명을 보고싶으면 tf->keras->layers->Conv2D에 있다. 번외로 Error나 activation function에 대한 내용도 있다.

인공지능 관련 2021.06.22

verbose

model = model_fn() model.compile(loss='sparse_categorical_crossentropy', metrics='accuracy') history = model.fit(train_scaled, train_target, epochs=5) model = model_fn() model.compile(loss='sparse_categorical_crossentropy', metrics='accuracy') history = model.fit(train_scaled, train_target, epochs=40, verbose=0) defult값은 1이다. verbose 값 의미 0 아무런 표시를 하지 않음 1 에포크별 진행 사항을 알려줌 2 에포크별 학습 결과를 알려줌

인공지능 관련 2021.06.09

대표적인 오차 함수

평균 제곱 계열 mean_squared_error 평균 제곱 오차 계산 : mean(square(yt - yo)) mean_absolute_error 평균 절대 오차 (실제 값과 예측값 차이의 절댓값 평균) 계산 : mean(abs(yt - yo)) mean_absolute_percentage_error 평균 절대 백분율 오차 (절대값 오차를 절댓값으로 나눈 후 평균) 계산 : (mean(abs(yt - yo))/abs(yt) 단, 분모는 0이아니다. mean_squared_logarithmic_error 평균 제곱 로그 오차 (실제 값과 예측 값에 로그를 적용한 값의 차이를 제곱한 값의 평균) 계산 : mean(square((log(yo)+1)-(log(yt)+1))) 교차 엔트로피 계열 categor..

인공지능 관련 2021.06.01

최적화 알고리즘 Optimizer

옵티마이저(Optimizer) 오차를 어떻게 줄여 나갈지 정하는 함수 경사하강법(Gradient Descent, GD) 가장 기본적인 Optimizer 알고리즘 학습률(learning rate)과 손실함수(loss function)의 순간기울기(gradient)를 이용하여 가중치(weight)를 업데이트하는 방법 학습률(learning rate)이 너무 크면 학습 시간이 짧아지나 전역 최솟값(Global minimum)에서 멀어짐 학습률(learning rate)이 너무 작으면 학습시간이 오래걸리고 지역 최솟값(Local minimum)에 수렴할 수 있음 한번 업데이트 할 때 마다 전체 데이터를 미분해야 하므로 계산량이 많음 (속도 느림) 학습률(learning rate)은 하이퍼 파라미터로, 하강하는 ..

인공지능 관련 2021.05.28

사이킷런 (scikit-learn) 기초

사이킷런(scikit-learn) 라이브러리는 파이썬 API를 사용하는데 파이썬 언어는 배우기 쉽고 컴파일하지 않아도 되기 때문에 사용하기 편리합니다. 또한 사이킷런(scikit-learn) 은 대표적인 머신러닝 라이브러리입니다. K-최근접 이웃(K-Nearest Neighbors) 어떤 데이터에 대한 답을 구할때, 주위의 다른 데이터를 보고 다수를 차지하는것을 정답으로 사용 from sklearn.neighbors import KNeighborsClassifier knn = KNeighborsClassifier(n_neighbors = 1, weights = "distance", metric="euclidean") n_neighbors (default=5) : 분류시 고려할 인접 샘플 수 weights..

인공지능 관련 2021.05.21

인공지능 개발 환경 만들기

from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, Activation from tensorflow.keras.utils import to_categorical from tensorflow.keras.datasets import mnist import numpy as np import matplotlib.pyplot as plt from tensorflow.keras.models import Sequential #위코드는 시퀀셜 모델을 불러오는 명령어 기본적인 인공 신경망은 레이어가 순차적으로 구성되어 있습니다. 이렇게 순차적인 신경망을 구성할 때 사용할 수 있는 함수가 바로 케라스의 모델 도구(..

인공지능 관련 2021.05.18

결정 트리

로지스틱 회귀로 와인 분류하기 import pandas as pd wine = pd.read_csv('https://bit.ly/wine_csv_data') cs데이터 다운로드하기 wine.head() 알코올 도수, 당도, PH값을 차례대로 나타냅니다. class는 타깃값이 0이면 레드와인, 1이면 화이트 와인입니다. wine.info() 데이터 info()메서드 입니다. 데이터프레임의 각 열의 데이터 타입과 누락된 데이터가 있는지 확인하는데 유용합니다 wine.describe() describe() 메서드는 열에 대한 간략한 통계를 출력해줍니다. 최소, 최대 ,평균값을 볼수 있습니다 평균(mean), 표준편차(std), 최소(min), 최대(max) 값을 볼 수 있습니다 중간값(50%), 1사분위수(2..

인공지능 관련 2021.05.12

활성화 함수(activation function) 종류와 정리

활성화 함수(activation function) 다양한 뉴런에서 데이터를 연산하고 다음 뉴런로 값을 전달해주며, 이 데이터들을 연산하면서 정리해주는 함수 입력 받은 신호를 얼마나 출력할지 결정하고 Network에 층에 쌓아 비선형성(non-linear)을 표현 할 수 있도록 해줌 ※활성화 함수를 이용하여 비선형 시스템인 MLP(Multiple Layer Perceptron)를 이용하여, XOR은 해결했지만, 파라미터 개수가 점점 많아지면서 각각의 가중치(weight)와 편향(bias)를 학습시키는 것이 매우 어려워 다시 한 번 침체기를 겪게 됨. 하지만 역전파(Back Propagation)으로 해결함 계단함수 (Step function) import numpy as np import matplotli..

인공지능 관련 2021.05.06