본문 바로가기

분류 전체보기

(30)
Neural Network 기본 개념 정리 *하용호님 피피티를 참고하여 정리했습니다. 퍼셉트론(Perceptron) inputs: 입력데이터 weights: 각 입력데이터들에게 주어지는 가중치 transfer function: 개별 변수(입력데이터)마다 connected되어 표현한 것 = 선형식 activation function: Neural Network는 분류/예측을 위해 선형식을 사용한다는 것을 알 수 있습니다. 하지만, 대부분의 분류/예측은 선형식의 형태로 이뤄지지 않습니다. 선형식은 예측 및 분류 작업에 있어서 한계를 가집니다. 이런 한계점을 제거하기 위해 activation function을 사용합니다. transfer function을 거친 값이 activation function을 통과하면 선형식에서 비선형식으로 바뀌게 됩니다. ..
파이토치 설치하기 설치 사이트 https://pytorch.org/get-started/locally/ PyTorch An open source machine learning framework that accelerates the path from research prototyping to production deployment. pytorch.org 사이트에 들어가서 본인 컴퓨터 사양에 맞게 선택합니다. 저는 아나콘다 가상환경을 사용하기 때문에 conda로 선택했습니다. CPU로 돌리실 분들은 CPU를 선택하면 되고, GPU를 사용하실 분들은 CUDA를 설치해야 합니다. CUDA 설치 전 컴퓨터 그래픽카드를 확인해야 합니다. 정치관리자 > 디스플레이 어댑터를 눌러줍니다. 저는 GeForece RTX 3060이 설치되어 ..
[Leetcode] 3. Longest Substring Without Repeating Characters Solution class Solution(object): def lengthOfLongestSubstring(self, s : str)-> int: used={} max_length = start= 0 for index,char in enumerate(s): if char in used and start = Target) Left++; (2) 부분 배열의 합이 Target 값보다 작으면 Right = Right + 1 해줍니다. (부분 배열의 길이를 늘려 합을 더한다.) if(sum < Target) Right++; (3) 부분 배열의 합이 Target 값과 같다면 결과 값을 +1 해줍니다. if( sum == Target) count++; Sliding Window 슬라이딩 윈도우 알고리즘은 연속되는..
함수(Function) Defining a Function def function_name(): # functions tasks go here def 키워드는 함수 시작을 나타낸다. 함수 헤더 뒤에는 snake_case(언더스코어(_)를 구분자로 사용) 형식의 이름을 적는다. 함수가 수행하는 작업을 간결하게 함축해서 지정한다. 괄호에는 파라미터를 입력한다. 콜론은 함수 헤더가 끝남을 의미한다. 함수 body에 우리가 원하는 작업을 코드로 적는다. Calling a Funtion function_name() 함수이름과 괄호를 적으면 함수가 호출된다. Parameter & Arguments def my_function(single_parameter) # some code my_function(parameter)
1. 선형정 정의 및 1차 연립방정식의 의미 f(x)를 연산(operation)으로 생각하면 된다. 선형대수에선 벡터를 column vector를 사용한다. 자세한 이유는 아래에서 설명한다. 꼭 알아야 할 개념이다. column vector를 사용하면 벡터들의 선형결합을 행렬과 벡터의 곱으로 표현할 수 있다. 다음 내용을 설명하기 전 알아야 하는 개념이다. 벡터의 내적은 우리에게 익숙하지만 함수에도 내적이 있다는 말은 생소하다. 함수는 t시점의 값을 무한하게 나열해 놓은 벡터라고 생각하면 된다. 두 개의 벡터를 내적하면 위 식과 같이 결국 적분과 유사한 형태를 가지게 된다. 연립방정식을 풀라고 하면 보통 우리가 어릴때부터 배워온 소거법을 사용해서 풀 것이다. 그 방법은 row vector를 사용한다. 기하학적으로 보면 두 직선의 교점을 구하는 것과..
3. Tensor Operations t1=tf.constant([1,2,3]) t2=tf.constant([10,20,30]) print(t1+t2) tf.Tensor([11 22 33], shape=(3,), dtype=int32) tensor의 constant 변수끼리 더하면 결과로 원소들의 합을 출력한다.(Elementwise) py_list1=[1,2,3] py_list2=[10,20,30] print(py_list1+py_list2) [1, 2, 3, 10, 20, 30] 반면 파이썬(numpy)의 리스트 변수끼리 덧셈 연산을 하면 리스트 두개가 concat된다. 원소끼리 합을 하고싶다면 for문을 이용해서 원소 하나하나 직접 덧셈해주어야 한다. print(t1-t2) print(t1*t2) print(t1/t2) print(t1..
2. API를 사용하여 Tensor 만들기 텐서의 크기를 매우 크게 늘리고 싶을 때 shape을 사용하면 손쉽게 할 수 있습니다. t2=tf.ones(shape=(100,)) print(t2) t3=tf.ones(shape=(100,3,3)) print(t3) t4=tf.zeros(shape=(100,3,3)) print(t3) t2와 t3는 1이 채워진 100x1, 100x3x3텐서입니다. t4는 0이 채워진 100x3x3 텐서입니다. 만약 다른 숫자로 텐서를 채우고 싶다면 t5 = 3*tf.ones(shape=(128,128,3)) ones 앞에 원하는 숫자를 곱해주면 됩니다. t5는 3이 채워져 있는 128x128x3 텐서입니다. test_list2=[[1,2,3],[4,5,6]] t1=tf.Variable(test_list2) print(..
1.Constant Tensor & Variable Tensor Deep Learining System 1. Data set Model을 만들기 전 필요하며 변수를 가지고 있지 않다. 데이터셋은 학습에 의해 update되지 않으므로 Immutable한 특징을 가지고 있다. Tensorflow에서는 이를 Constant Tensor로 정의한다. 2. Model 모델 안에는 Model parameter인 Weight(w),Bias(b) 등의 변수가 존재한다. 변수들은 학습에 의해 update되며 mutable한 특깆을 가지고 있다. Tensorflow에서는 이를 Variavle Tensor로 정의한다. 3. Loss 실제 값과 모델로 예측한 값의 차이를 loss라고 하며, 이 loss를 줄이는 방향으로 학습이 진행이 된다. 4. Optimizer 딥러닝 모델은 Loss ..