본문 바로가기
반응형

Python39

python에서 세 점으로 이뤄진 삼각형의 넓이 구하기 이번 포스팅은 세 점이 주어졌을 때, 그 세 점으로 이뤄진 삼각형의 넓이를 python에서 구해보겠습니다. 여기서는 NumPy 라이브러리의 행렬식을 구하는 함수를 이용할 것입니다. 1. Numpy linalg.det() 함수를 이용해 행렬식 구하기 linalg.det()는 NumPy 라이브러리에서 제공하는 함수로, 인자로 받은 2차원 배열의 행렬식을 계산하여 반환합니다. 행렬식은 선형대수학에서 배우는 개념 중 하나로, 정방행렬(square matrix)에서 정의됩니다. 행렬 $A$가 $n {\times} n$ 이면, 행렬식 det($A$)는 다음과 같이 여인수(cofactor)를 이용하여 계산합니다. det($A$) = $a_{11}C_{11}$ + $a_{12}C_{12}$ + ... + $a_{1n}.. 2023. 4. 14.
불리언 배열이 numpy.sum 함수에서 어떻게 더해지나? 불리언 배열은 참(True) 또는 거짓(False) 값을 가지는 1차원 배열입니다. 그리고 numpy.sum은 배열의 원소들을 더해주는 함수인데, 불리언 배열을 numpy.sum 함수에 인자로 전달하면 어떻게 될까요? 이번 글에서는 예제를 통해서 불리언의 수학적 연산에 대해 알아보겠습니다. 불리언에 대한 기본적인 내용은 아래 링크를 참조하세요. Python 기초: 불리언(Boolean)과 비교 연산자 Python 기초: 불리언(Boolean)과 비교 연산자 불리언은 참(True)과 거짓(False) 둘 중 하나의 값을 갖는 데이터 형태입니다. 비교 연산을 하여 참이면 True, 거짓이면 False의 불리언 값을 반환합니다. 이번 포스팅은 불리언과 비교 연산에 대해 알 er5030000.tistory.co.. 2023. 4. 13.
python에서 다른 폴더의 모듈 사용하기 이번 포스팅은 python에서 다른 폴더의 모듈을 사용하는 법을 알아보겠습니다. 필요하시면 아래 모듈에 대한 이전 포스팅을 참고하시기 바랍니다. Python 기초: 모듈(module) Python 기초: 모듈(module) 모듈은 변수, 함수, 메소드 등을 포함하는 파일을 의미하며 확장자 .py를 갖습니다. 이번 포스팅은 모듈을 불러들여 사용하는 법을 알아보겠습니다. 1. 모듈 불러오기: import 모듈을 불러오는 법은 er5030000.tistory.com python에서 다른 폴더의 모듈을 사용(import)하려면 다음과 같은 방법을 사용할 수 있습니다. 1. sys.path.append를 이용하는 방법 import sys sys.path.append('/path/to/taget/folder') #.. 2023. 4. 11.
신경망 파이썬 코드로 구현하기 앞서 활성화 함수, 기초적인 퍼셉트론의 형태, 가중치를 행렬로 표현하는 법 등을 알아봤습니다. 이번에는 앞에서 배운 내용들을 종합하여 파이썬에서 간단한 신경망을 구현해 보겠습니다. 다음 그림 예는 두 개의 입력 신호(x), 한 개의 편향(b)과 출력(y)이 있고, 활성화 함수로 시그모이드 함수를 사용하였습니다. 이를 파이썬 코드로 만들어 보겠습니다. import numpy as np def sigmoid(x): return 1/(1 + np.exp(-x)) X = np.array([0.8, 0.3]) # 입력값 x1 = 0.8, x2 = 0.3 W = np.array([[0.4], [0.6]]) # 가중치 w1 = 0.4, w2 = 0.6 b = -0.3 # 편향 A = np.dot(X, W) + b Y.. 2023. 3. 30.
신경망의 가중치를 행렬로 표현하기 신경망에서는 입력 신호가 뉴런에 보내질 때 가중치를 곱하게 됩니다. 가중치가 곱해진 입력 신호는 다시 활성화 함수에 의해 출력값으로 나오게 되는 것인데요. 여기서 가중치들은 행렬로 표현될 수 있습니다. 이것이 deep learning에 선형대수가 이용되는 부분인데요. 이번 포스팅에서는 간단한 신경망 시스템을 예로 가중치를 행렬로 표현하는 것을 알아보겠습니다. 1. 퍼셉트론의 구조 먼저 간단한 퍼셉트론의 구조를 보겠습니다. 여기서 x는 입력 신호, w는 가중치, y는 출력을 의미합니다. 이 퍼셉트론의 동작 원리는 간단합니다. 예를 들어, 활성화 함수가 계단 함수이면, $y$ = $\left\{\begin{matrix} 1 \ (b + x_{1}w_{1} + x_{2}w_{2} > 0) \\ 0 \ (b +.. 2023. 3. 28.
활성화 함수: sigmoid & ReLU 함수 앞서 계단 함수 포스팅에서 임계값을 기준으로 출력값이 바뀌는 함수를 활성화함수라고 배웠는데요. 이번에는 신경망 분야에서 이용할 수 있는 다른 활성화 함수, 시그모이드(sigmoid)와 ReLU (Rectified Linear Unit) 함수에 대해서 알아보겠습니다. 계단 함수에 관한 내용은 아래 링크를 참조하세요. 파이썬에서 계단 함수 만들기 파이썬에서 계단 함수 만들기 앞서 포스팅에서 퍼셉트론에 대해 알아봤는데요. 퍼셉트론은 입력 데이터를 받아서 계산 후 출력 값을 내보내는 구조를 가지며, 이때 입력 값과 가중치(weight)를 곱한 값의 합이 임계치(Threshold) er5030000.tistory.com 1. 시그모이드 함수 시그모이드 함수는 수식으로 표현하면 $s(x)$ = $\frac{1}{1.. 2023. 3. 27.
파이썬에서 계단 함수 만들기 앞서 포스팅에서 퍼셉트론에 대해 알아봤는데요. 퍼셉트론은 입력 데이터를 받아서 계산 후 출력 값을 내보내는 구조를 가지며, 이때 입력 값과 가중치(weight)를 곱한 값의 합이 임계치(Threshold)를 넘으면 출력값이 1, 그렇지 않으면 0을 출력합니다. 이처럼 임계값을 기준으로 출력값이 바뀌는 함수를 활성화함수라고 합니다. 이번에는 파이썬에서 계단 함수를 만들어 보겠습니다. 계단 함수(Step Function)는 입력 값이 0을 기준으로 0보다 크면 1, 0보다 작으면 0을 출력하는 함수입니다. 이 함수는 퍼셉트론에서 매우 중요한 역할을 합니다. 계단 함수는 파이썬에서 다음과 같이 구현할 수 있습니다. 사실 계단 함수는 매우 간단합니다. 아래와 같이 만들 수 있습니다. 1. 입력값이 실수인 경우의.. 2023. 3. 21.
퍼셉트론 AND, NAND, OR, XOR 게이트: python 이번 내용은 딥러닝의 기초인 퍼셉트론의 4가지 논리 게이트인, AND, NAND, OR, XOR을 python으로 구현한 것입니다. 여기서 x는 입력 신호, w는 가중치, b는 편향을 의미합니다. 논리 게이트의 입력 값과 출력 값 다음 그림은 4개의 기본 논리 게이트인, AND, NAND, OR, XOR의 입력값과 결괏값을 표현한 것입니다. 논리 게이트 퍼셉트론으로 작성하기: python 위의 4가지 논리 게이트를 python에서 딥러닝의 기본이 되는 퍼셉트론으로 만들어 보겠습니다. 코드는 아래와 같습니다. import numpy as np def AND(x1, x2): x = np.array([x1,x2]) w = np.array([0.5,0.5]) b = -0.7 tmp = np.sum(w*x) + .. 2023. 3. 13.
반응형