퍼셉트론 구현 - 앞서 배운 텐서와 연산자를 이용하여 퍼셉트론 구현 - 고수준 모델 API(케라스)를 사용하지 않고 구현 * OR Gate 구현 import tensorflow as tf import numpy as np import matplotlib.pyplot as plt # 파라미터 값(input 특성 개수, 퍼셉트론의 개수, 학습률) 설정 input_dim = 2 hidden_units = 1 learning_rate = 0.01 # 가중치(input 특성 : 2/ 퍼셉트론 : 1) w = tf.Variable(tf.random.uniform(shape=(input_dim, hidden_units))) # 편향(퍼셉트론 : 1) b = tf.Variable(tf.zeros(shape=(hidde..
TensorFlow 수학연산 - Numpy에서 사용되는 대부분의 수학 연산을 동일한 방법으로 사용 가능 - 텐서플로우 연산자들은 TPU, GPU와 같은 가속 하드웨어를 이용해 수행 가능 TensorFlow 연산의 미분 - 미분 가능한 연산들에 대해서 자동으로 미분 계산 - GradientTape 컨텍스 내에서 .watch() 메서드를 통해 해당 텐서로 수행하는 연산에 대해 미분 확인(상수 텐서의 경우) - 변수 텐서의 경우 .watch() 메서드를 사용하지 않아도 연산에 대한 미분 확인 가능 import tensorflow as tf import numpy as np # (2, 3) 형태의 상수 텐서 'tensor_a' 생성 tensor_a = tf.constant([[1., 2., 3.], [4., 5..
tf.Constant(상수) - 텐서플로우에 사용되는 텐서(데이터) 유형 중 하나 - 상수형 텐서로써 할당된 값의 변경이 불가 - Numpy의 ndarray 와 유사한 속성들을(ndim, shape, dtype) 가짐 - .numpy() 메서드를 통해 텐서에 들어 있는 데이터를 Numpy ndarray 형태로 가져옴 tf.Variable(변수) - 텐서플로우에 사용되는 텐서(데이터) 유형 중 하나 - Numpy의 ndarray 와 유사한 속성들을(ndim(X), shape, dtype) 가짐 - tf.constant(상수) 와는 다르게 assign(value) 같은 메소드를 통해 할당된 값의 변경 가능 - .numpy() 메서드를 통해 텐서에 들어 있는 데이터를 Numpy ndarray 형태로 가져옴 -..
텐서(Tensor) - 인공신경망을 위한 데이터의 기본 구성 요소 - 숫자 데이터를 위한 컨테이너 - 임의의 차원 개수를 가짐 - 텐서의 차원을 rank(축)이라고 부름 스칼라(0D 텐서) - 하나의 숫자만 담고 있는 텐서 - 스칼라 텐서의 Rank(축) 개수는 0 (ndim == 0) 벡터(1D 텐서) - 숫자의 배열 - 벡터 텐서의 Rank(축) 개수는 1 (ndim == 1) 행렬(2D 텐서) - 백터의 배열 - 행렬 텐서의 Rank(축) 개수는 2 (ndim == 2) - 행(Row) : 첫번째 Rank 기준으로 존재하는 원소 - 열(Column) : 두번째 Rank 기준으로 존재하는 원소 3D 텐서 - 행렬의 배열 - 3D 텐서의 Rank(축) 개수는 3 (ndim == 3) Tensor의 핵심..
https://colab.research.google.com/ Google Colaboratory colab.research.google.com Colab이란? Colaboratory(줄여서 'Colab'이라고 함)을 통해 브라우저 내에서 Python 스크립트를 작성하고 실행할 수 있습니다. 구성이 필요하지 않음 GPU 무료 액세스 간편한 공유 학생이든, 데이터 과학자든, AI 연구원이든 Colab으로 업무를 더욱 간편하게 처리할 수 있습니다. 머신러닝 Colab을 사용하면 코드 몇 줄만으로 이미지 데이터세트를 가져오고, 이 데이터세트로 이미지 분류기를 학습시키며, 모델을 평가할 수 있습니다. Colab 메모장은 Google 클라우드 서버에서 코드를 실행하므로 사용 중인 컴퓨터의 성능과 관계없이 GPU ..