본문 바로가기
반응형

분류 전체보기154

6~10단계) 수동 역전파 , 자동 역전파 , 재귀에서 반복문 , 간소화 , 테스트 이전 포스팅에서 다루었던 Variable과 Function 및 여러 함수 클래스를 확장하여 역전파를 이용한 미분을 구현해볼 것이다. 1. 수동 역전파 ■ Variable 클래스 class Variable: def __init__(self, data): self.data = data self.grad = None data 인스턴스와 더불어 그 data값에 대응하는 grad(미분값) 인스턴스 변수를 추가하여 Variable 클래스를 확장하였다. 여기서 grad를 None으로 초기화해두고 나중에 실제로 역전파를 하여 미분값을 계산하여 대입할 것이다. ■ Function 클래스 class Function: def __call__(self, input): x = input.data y = self.forward(.. 2021. 5. 13.
1~5단계) Variable 클래스 , Function 클래스 , 수치 미분 , 역전파 이론 1. Variable 클래스 구현 함수 __init__에 주어진 인수를 인스턴스 변수에 해당 데이터에 대입하여 다른 곳에서도 접근할 수 있도록 한다. class Variable: def __init__(self, data): self.data = data 예를 들어, import numpy as np data = np.array(1.0) x = Variable(data) print(x.data) #1.0 머신러닝 시스템은 기본 데이터 구조로 다차원 배열을 사용하며 넘파이의 다차원 배열 클래스는 numpy.ndarray이다. 배열의 차원을 확인할 때는 n.dim을 사용할 수 있다. import numpy as np x = np.array(1) print(x.dim) #0 x = np.array([1, 2,.. 2021. 5. 10.
# 22 [파이썬] 백준 1260번: DFS와 BFS ( 인접리스트 풀이 ) www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net import sys from collections import deque input = sys.stdin.readline def DFS(graph, v): visited = {} stack = [v] while stack: d = stack.pop() if d not in visited: visited.setdefault(d) stack += reversed(graph[d].. 2021. 4. 29.
딥러닝) 시소러스 , 통계 기반 기법 , 코사인 유사도 자연어 처리(Natural Language Processing, NLP)란 한국어와 영어 등 인간이 평소에 사용하는 말을 컴퓨터에게 이해시키기 위한 기술이다. 컴퓨터가 사람의 말을 이해하도록 하여 여러가지 일을 수행하게 하는 것이 자연어 처리의 목표이다. '단어'는 의미의 최소단위이므로 컴퓨터에게 단어를 이해시키는 것이 중요하다. 그 방법으로 시소러스를 활용한 기법, 통계 기반 기법, 추론 기반 기법(word2vec)이 있다. 1. 시소러스 시소러스란 유의어 사전으로 뜻이 같거나 비슷한 단어가 그룹으로 분류되어 있다. (예시 car = auto, automobile, machine, motorcar) 뿐만 아니라, 단어 사이의 상위/하위 개념 또는 전체/부분 관계를 그래프로 정의하고 있다. 시소러스는 이.. 2021. 4. 25.
728x90
반응형