본문 바로가기
반응형

부스트코스9

Language Modeling 언어 모델링(Language Modeling) Input: 하나의 문장 Output: Input 문장에 대한 확률 텍스트 분류 문제와 달리, 비지도학습입니다. 하지만, 순서가 있는 지도학습으로 문제를 바꿔서 풀 수 있습니다. Autoregressive language modelling (자기회귀 언어 모델링) Sequence 가 주어졌을 때 이 문장에게 점수를 부여 하는 방법입니다. 이전 토큰이 나왔을때 다음 토큰이 나올 확률을 계산하는 작업과 동일합니다. 이렇게 정의 하면서 비지도학습 문제를 지도학습으로 푸는 문제로 변하게 됩니다. 즉, 이전에 공부했던 텍스트 분류 문제와 같아지는데, input 은 이전에 나온 토큰, output은 다음에 나올 토큰을 예측 하는 것입니다. 또한, 문장에 점수(Score.. 2022. 3. 30.
CBoW & RN & CNN & Self Attention & RNN 문장표현(Sentence representation)의 의미: 어떤 과제를 풀기에 적합하고 숫자로 나타낸 문장의 표현입니다 CBoW(Continuous bag-of-words): 단어장을 단어 주머니로 보게되고, 이에 따라 단어의 순서는 무시합니다. 문장에 대한 표현은 단어 벡터들을 평균시킨 벡터로 구합니다. 효과가 좋기 때문에 제일 먼저 시도해봐야합니다. (Baseline 모델) 공간상에서 가까우면 비슷한 의미, 아니면 멀리 떨어져 있을 것입니다. Relation Network(Skip-Bigram): 문장안에 있는 모든 토큰 쌍(pairs)을 보고, 각 쌍에 대해서 신경망을 만들어서 문장표현을 찾습니다. 장점: 여러 단어로 된 표현을 탐지 할 수 있습니다. 단점: 모든 단어간의 관계를 보기 때문에, .. 2022. 3. 28.
Backpropagation 자동 미분법(Automatic differentiation): 모델을 연결하는 비순환 그래프(DAG)는 미분 가능한 함수들로 구성되어 있습니다. 따라서 미분의 연쇄법칙을 사용하여 자동으로 미분합니다. 과정: 각 노드에서 Jacobian-vector product을 계산합니다. 비순환 그래프(DAG) 역순으로 전파합니다. 장점: Gradient 를 손으로 직접 계산할 필요가 없어졌습니다. [front-end]와 [back-end]의 분리 [front-end] 비순환 그래프(DAG)를 만듬으로서 뉴럴넷(모델)을 디자인하는데 집중합니다. [back-end] 디자인 된 비순환 그래프(DAG)는 타겟 컴퓨터 장치를 위한 효과적인 코드로 컴파일됩니다. Framework 개발자들이 타겟에 맞춰 알맞게 구현하면 사용자.. 2022. 3. 28.
Hypothesis Set 가설 집합은 무수히 많습니다. 머신러닝 접근 방법, 모델 구조, 하이퍼파라미터등 요소를 하나씩 변화할 때 마다 가설 하나가 세워지기 때문입니다. 이번 강의 에서는 딥러닝에 한정 지어서 이야기 하겠습니다. 네트워크 아키텍처가 정해지면, 하나의 가설 집합이 됩니다. 각기 다른 가중치 매개변수 값에 따라서 가설 집합에 속한 모델이 달라집니다. 그렇다면 네트워크 아키텍처를 어떻게 정해야 할까요? 명확한 정답은 없습니다. 다만 네트워크 아키텍처가 정해지면 그 뒤부터는 모든 것이 자동화 과정으로 넘어가는데, 어떻게 이것이 가능한지 알아봅시다. 인공신경망은 무엇일까요? 비순환 그래프(DAG) 라고 할 수 있습니다. 각 노드들은 이미 Tensorflow, Pytorch 등 패키지에서 잘 정의되어 있습니다. 여러분은 이.. 2022. 3. 28.
Python Object Oriented Programming 객체 지향 프로그래밍 언어, Object Oriented Programming(OOP) - 객체 : 실생활에서 일종의 물건 - 속성(Attribute), 행동(Action)을 가짐 - OOP는 이러한 객체 개념을 프로그램으로 표현 - 속성은 변수(Variable), 행동은 함수(Method)로 표현됨 - 파이썬 역시 객체 지향 프로그램 언어 - 인공지능 축구 프로그램을 작성한다고 가정하면 - Object는 팀, 선수, 심판, 공 - Action은 선수가 공을 차다, 패스하다 - Attribute는 선수의 이름, 포지션, 소속팀 - OOP는 설계도에 해당하는 클래스(Class)와 실제 구현체인 인스턴스(Instance)로 나뉨 Objects in Python class SoccerPlayer(object).. 2022. 1. 24.
Python Data Structure 기본 데이터 구조 - 스택과 큐(Stack & quere with list) - 튜플과 집합(Tuple & Set) - 사전(dictionary) - Collection 모듈 Stack - 나중에 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조 - Last In First Out(LIFO) - '리포' 구조라고 읽음 - Data의 입력을 Push, 출력을 Pop이라고 함 - List(리스트)를 사용해서 스택 구조를 설계할 수 있음 - 리스트에서는 push를 append()로, pop을 pop()으로 구현 Quere - 먼저 넣은 데이터를 먼저 반환하도록 설계된 메모리 구조 - First In First Out(FIFO) - '피포' 구조라고 읽음 - Stack과 반대되는 개념 - 파이썬은 리스트를 사용.. 2022. 1. 17.
Function and Console I/O > Function - 어떤 일을 수행하는 코드의 덩어리 - 반복적인 수행을 1회만 작성 후 호출 - 코드를 논리적인 단위로 분리 - 캡슐화 : 인터페이스만 알면 타인의 코드 사용 - 함수 선언 문법 : function name, parameter, indentation, return value(optional) - 함수 수행 순서 : 함수 부분을 제외한 메인 프로그램부터 시작 -> 함수 호출 시 함수 부분을 수행 후 되돌아옴 - parameter : 함수의 입력 값 인터페이스 Ex) F(x)에서 x를 의미함 - argument : 실제 parameter에 대입된 값 Ex) F(x)에서 x에 들어간 실제 값을 말함 - parameter 유무, 반환 값 유무에 따라 함수의 형태가 다름 > Console I.. 2022. 1. 14.
Introduction to Python > python의 시작 - 1991년 귀도 반 로섬이 발표 - 플랫폼 독립적 - 인터프리터 언어 - 객체 지향 - 동적 타이핑 언어 - 처음 C언어로 구현되었음 - 1989년 크리스마스에 할 일이 없어서 파이썬 개발 - 'Monty Python's Flying Circus' : 파이썬 이름의 유래 (코미디 그룹의 이름) - 창립자는 구글, DropBox, MS 근무 > python 특징 1) 플랫폼 = OS - 윈도우, 리눅스, 안드로이드, 맥OS, iOS 등 프로그램이 실행되는 운영체제를 플랫폼이라고 함 2) 독립적인 = 관계 없는, 상관 없는 - OS에 상관없이 한번 프로그램을 작성하면 사용 가능 3) 인터프리터 = 통역기를 사용할 수 있는 언어 - 소스코드를 바로 실행할 수 있게 지원하는 프로그램 .. 2022. 1. 14.
Basic computer class for newbies > OS : Operating System, 운영체제 - 프로그램이 동작할 수 있는 구동 환경 - Application - OS - CPU - Memory - 소프트웨어가 하드웨어에 연결되서 실행될 수 있도록 하는 역할을 한다고 보면 됨 - Application은 OS에 의존할 수 밖에 없다 - 어떤 파일이 Mac에서는 열리는데, Windows에서는 안 열림 - 파이썬은 OS에 독립적인 프로그램이다. - 어떤 개발 환경에서 개발을 실행할 것인가에 대한 선택 > 파일 시스템 - File system : OS에서 파일을 저장하는 트리구조 저장 체계 - 컴퓨터 등의 기기에서 의미있는 정보를 담는 논리적인 단위, 모든 프로그램은 파일로 구성되어 있고, 파일을 사용 - 파일의 기본 체계는 파일과 디렉토리! 1) .. 2022. 1. 14.
반응형