TP(Traditional Programming) 과 ML(Machine Learning)의 근본적인 차이점
결국 머신러닝의 핵심은 ‘규칙’을 내놓는 것임
텐서플로우(TensorFlow) : 구글에서 만든 오픈소스 머신러닝 라이브러리. 주로 딥러닝 모델을 만드는 데 사용되며, 다양한 기능을 제공합니다. 텐서플로우를 사용하면 빠른 속도로 머신러닝 모델을 개발할 수 있습니다.
케라스(Keras) : 딥러닝 라이브러리 중 하나로, 파이썬을 사용함. 케라스는 간결하고 직관적인 API를 제공하여 딥러닝 모델을 쉽게 개발할 수 있도록 도와줍니다. 또한 케라스는 텐서플로우와 연동하여 사용할 수 있으며, 딥러닝 모델을 빠르게 구축할 수 있도록 도와줍니다.
텐서플로우와 케라스는 모두 딥러닝 라이브러리이며, 파이썬에서 사용할 수 있습니다. 두 라이브러리 모두 딥러닝 모델을 쉽게 구축할 수 있도록 도와줍니다. 또한 두 라이브러리 모두 신경망 모델의 학습을 지원하며, 다양한 환경에서 사용됩니다. 또한 케라스는 텐서플로우와 함께 사용할 수 있으며, 텐서플로우에서 제공하는 다양한 기능을 사용할 수 있습니다.
텐서플로우와 케라스는 모두 딥러닝 라이브러리이지만, 몇 가지 차이점이 있습니다. 텐서플로우는 머신러닝 및 딥러닝에 대한 다양한 기능을 제공하며, 빠른 속도로 모델을 개발할 수 있습니다. 반면에 케라스는 모델을 쉽게 개발하고 구축할 수 있도록 도와줍니다. 또한 케라스는 텐서플로우와 연동하여 사용할 수 있으며, 딥러닝 모델을 빠르게 구축할 수 있도록 도와줍니다.
미분하는법
ex ) y = 2x ⇒ y’ = 2
y = 2x^2 ⇒ y’ = 4x
y = 2 ⇒ y’ = 0
⇒ y = a x^b ⇒ y’ = ab x^b-1
f(x,y) = x^2 + xy + 7
df() / dx = 2x + y
df() / dy = y
편미분을 할때는 분모에 있는 수 제외 모든 변수를 ‘상수’ 취급함
a^x = b일때, log a b = x 임
그래서 log a a^x / x = log a b 로 변환 가능
xW = 10 * log x dB
ex ) 100W = 10 * log 100 (log 밑 생략은 무조건 10) 이기에 20dB
선형 회귀를 하기 위해서는 가장 정확한 한 선이 필요함
이 한 선을 그리기 위해 정확한 기울기 a와 y 절편 b가 필요한데, 이것을 알아내기 위해 쓰는 방법이
최소 제곱법임.
공식 ) ( (x - (x평균)) * (y - (y평균)) )의 합 / (x - (x평균) ) ^ 2
예제코드 )
import numpy as np
x = np.array([2,4,6,8])
y = np.array([81,93,91,97])
mx = np.mean(x)
my = np.mean(y)
print('x, y 평균값 = ', mx,' / ', my)
divisor = sum([(i - mx)**2 for i in x])
def top(x ,mx, y, my) :
d = 0
for i in range(len(x)) :
d += (x[i] - mx) * (y[i] - my)
return d
divided = top(x,mx,y,my)
print('분모 : ', divisor)
print('분자 : ', divided)
a = divided / divisor
b = my - (mx*a)
print('기울기 a : ', a)
print('y절편 b : ', b)