목록2022/03 (20)
Hey Tech
본 포스팅에서는 통계학적 언어 모델의 개념 및 특징에 대해 알아봅니다. 📚 목차 1. 개념 2. 확률적 표현 3. 적용분야 1. 개념 1.1. 개요 언어 모델(Language Model)은 문장이 얼마나 자연스러운지 확률적으로 계산함으로써 문장 내 특정 위치에 출현하기 적합한 단어를 확률적으로 예측하는 모델입니다. 더욱 쉽게 설명하자면, 언어 모델은 문장 내 앞서 등장한 단어를 기반으로 뒤에 어떤 단어가 등장해야 문장이 자연스러운지 판단하는 도구입니다. 언어 모델은 크게 통계학적 언어 모델과 인공신경망 기반의 언어 모델이 있습니다. 최근에는 BERT, GPT-3와 같은 인공신경망 기반의 언어 모델의 성능이 뛰어나 대부분의 자연어처리 문제에서는 인공신경망 기반의 언어 모델을 사용합니다. 본 포스팅에서는 통..
본 포스팅에서는 Subroutine의 개념과 Perform 구문에 대해 알아봅니다. 1. Subroutine 개념 Subroutine은 FORM으로 시작하여 END FORM으로 종료되는 구문을 의미하며, 코드의 모듈화(modularization), 구조화, 재사용이 주목적입니다. 즉, Subroutine는 의미 있는 기능별로 프로그램을 구조화함으로써 전체적인 코드 흐름을 파악하는 데 도움이 되며 시스템 유지보수의 편의성을 증진하는 장점이 있습니다. PERFORM 구문과 변수, 인터널 테이블 등의 파라미터 값을 주고받는 Function Module이 Subroutine에 해당합니다. 2. PERFORM 구문 프로그램을 생성하고 PERFORM 구문을 통해 Subroutine을 호출하면 FORM 구문이 실행됩..
본 포스팅에서는 TF-IDF 개념 및 계산 방법에 대해 알아봅니다. 📚 목차 1. TF-IDF 개념 2. TF-IDF 계산방법 2.1. TF(Term Frequency) 2.2. DF(Document Frequency) 2.3. IDF(Inverse Document Frequency) 1. TF-IDF 개념 TF-IDF(Term Frequency-Inverse Document Frequency)는 Document Term Matrix(DTM) 내 단어마다 중요도를 고려하여 가중치를 주는 통계적인 단어 표현방법입니다. DTM에 대한 자세한 설명은 이곳을 참고해 주세요. TF-IDF는 단어의 중요도를 고려하기 때문에, 일반적으로 단순히 문서 내 단어의 출현빈도만 고려하는 DTM보다 문서에서 유의미한 정보를 ..
본 포스팅에서는 카운트 기반의 단어 표현방법 중 하나인 문서 단어 행렬(DTM)의 개념에 대해 알아봅니다. 📚 목차 1. DTM 개념 2. DTM 예시 3. DTM 한계점 1. DTM 개념 문서 단어 행렬(Document-Term Maxtrix, DTM)은 다수의 문서 데이터(=Corpus)에서 등장한 모든 단어의 출현 빈도수(frequency)를 행렬로 표현한 것입니다. 즉, DTM은 다수의 문서 데이터에 대한 Bag of Words(BoW)를 행렬로 표현한 것입니다. DTM은 국소 표현(Local Representation) 또는 이산 표현(Discrete Representation)의 일종으로 카운트 기반의 단어 표현방법입니다. 2. DTM 예시 DTM 예시를 들어보겠습니다. 아래와 같이 4개의 문..
본 포스팅에서는 카운트 기반의 단어 표현 방법인 Bag of Words(BoW) 개념과 생성 방법을 알아봅니다. 📚 목차 1. BoW 개념 2. BoW 특징 3. BoW 생성 절차 4. BoW 생성 실습 1. BoW 개념 Bag of Words(BoW)는 단어를 수치화하는 방법 중 하나로, 문서 내 단어의 순서와 의미는 고려하지 않고 오직 출현 빈도(frequency)만 고려하여 단어를 표현하는 방법입니다. BoW는 국소 표현방법(Local Representation) 또는 이산 표현방법(Discrete Representation)의 일종으로 카운트 기반의 단어 표현방법(Count-based Word Representation)이라고 부릅니다(그림 1 참고). 2. BoW 특징 BoW는 어떤 단어들이 몇..
본 포스팅에서는 퍼셉트론(Perceptron) 학습(train)의 의미와 절차에 대해 알아봅니다. 📚 목차 1. 퍼셉트론의 개념 2. 퍼셉트론 학습의 의미 3. 퍼셉트론 학습 방법 4. 퍼셉트론 학습 절차 1. 퍼셉트론의 개념 퍼셉트론의 학습 절차를 알아보기 전에 퍼셉트론 개념에 대해 알아봅니다. 퍼셉트론은 이진 분류(Binary Classification) 모델을 학습하기 위한 지도학습(Supervised Learning) 기반의 알고리즘입니다. 이진분류란 예를 들어 인공지능(AI)에게 무작위로 동물 사진을 보여주었을 때 고양이 사진인지, 강아지 사진인지 분류하는 문제입니다. 여기서 고양이, 강아지와 같은 선택지를 클래스(Class)라고 부르고 선택지가 2개인 경우를 이진 분류라고 합니다. 수학적인 측..
본 포스팅에서는 인공신경망의 초기 형태이자 구성 요소인 퍼셉트론(Perceptron)의 개념에 대해 알아봅니다. 📚 목차 1. 퍼셉트론 개요 2. 생물학 뉴런의 역할과 동작과정 3. 퍼셉트론의 역할과 동작과정 4. 퍼셉트론의 종류 4.1. 단층 퍼셉트론 4.2. 다층 퍼셉트론 1. 퍼셉트론(Perceptron) 개요 퍼셉트론(Perceptron)은 인공 신경망(Aritificial Neural Network, ANN)의 구성 요소(unit)로서 다수의 값을 입력받아 하나의 값으로 출력하는 알고리즘입니다. Perceptron은 perception과 neuron의 합성어이며 인공 뉴런이라고도 부릅니다. 즉, 퍼셉트론은 생물학적인 신경계(Neual Network)의 기본 단위인 신경세포(=뉴런)의 동작 과정을..
본 포스팅에서는 SAP(ABAP)에서 구구단을 테이블에 저장하고 출력하는 예제 코드를 공유합니다. 📚 목차 1. 실행결과 2. 테이블 Fields 3. 전체 코드 4. 코드 설명 5. 실행결과 1. 실행결과 실행결과 먼저 공유합니다. 위와 같이 1단부터 9단까지의 구구단을 출력하는 프로그램을 만들고자 합니다. 본 프로그램은 각 자릿수의 값과 연산자(*), 그리고 결괏값까지를 모두 Internal Table에 저장하는 프로세스를 반복합니다. 또한, 테이블 내 행(ROW) 데이터를 하나씩 접근하여 출력하도록 반복합니다. 이어지는 섹션에서 해당 프로그램 구현을 위한 기본적인 세팅방법과 코드를 공유합니다. 2. 테이블 Fields 테이블 Fields는 위와 같이 구성하였습니다. 구구단에서 첫 번째 숫자를 STR..