목록Text (4)
운동하는 공대생

1 Intro 이미지 분석, 텍스트 분석 등 다양하게 딥러닝 모델과 프로세스들이 각광받고 있는 요즘 Text Extraction 즉 이미지에서 텍스트 정보를 인식하고 데이터화하는 방식에 대한 연구를 진행하였고 내가 사용하였던 layoutlmv2 모델의 이론과 그리고 코드를 리뷰해보려고 한다. 2 Process 이미지에서 텍스트를 추출하는 방식을 간단하게 도식화 하자면 아래의 그림과 같다. 먼저 아래의 그림처럼 이미지에서 text 즉 글씨의 정보를 OCR 기법을 이용하여 단어의 위치와 범위를 bounding box 형식으로 구분하여 지정을 한다. 그 이후에 위치정보와 텍스트 정보를 이요하여서 Layoutlmv2 모델에 적용하고 모델을 학습시킨 후 그 단어가 어떤 layout 에 지정이 되는지를 예측하는 방..

이전 까지는 문장에서 단어의 빈도를 바탕으로 하는 NLP 방법을 알아보았다. 이 방식의 큰 문제는 단어의 빈도를 바탕으로 처리를 해서 문서의 특징을 파악하는 건 가능하지만 각 단어 간의 유사성이나 의미를 파악하기는 어렵다. 예를 들어서 뜻이 다른 같은 단어가 여러 개 나오는 문장에서 이전 방식을 사용하면 의미를 파악하기보다는 문장의 특징을 파악하는 건 가능하지만 그 단어가 다르다는 의미를 파악하기는 어렵다 가령 '날아다니는 파리'와 '프랑스의 수도인 파리' 같은 예시이다. 워드 임베딩 예측을 기반으로 하는 벡터 임베딩 방식을 이용하기 이전에 단어를 수치적으로 표현하는 방식인 워드 임베딩 방식을 꼭 알아햐 한다. 예측을 하기 위한 단어의 데이터를 수치화를 시켜서 예측이 가능한 형태로 바꿔주는 작업니다. 예..
What is TF-IDF TF-IDF는 NLP 분야에 거 가장 흔하게 사용하는 방식으로 텍스트들이 나열되어있는 데이터에서 단어의 빈도수를 기준으로 하여서 한 단어가 그 문장에서 얼마나 수학적으로 중요한지 가중치를 나타내는 방식이다. 한 문장에서 한 단어의 빈도가 높으면 높을수록 이 TF 값은 커지고 여러 문장에서 한 단어의 빈도수가 높아면 IDF 값이 줄어드는 형식으로 이 두 값 TF, IDF를 곱한 것을 결과로 도출한다. 즉 한 문장에서 자주 사용되는 단어는 중요하다 판단하지만 다른 문장에서도 흔하게 사용하면 중요하지 않다고 단어를 판단하는 알고리즘이다. Mathematical Formula of TF-IDF 단어의 빈도를 나타내는 이 알고리즘은 결과값을 여러 가지 방식으로 산출한다. 먼저 총빈도수를..

What is Levenshtein Distance 레벤슈타인 거리는 문자열의 유사도를 판별하는 알고리즘의 한 방식으로 두 문자열 사이에 같아지기 위한 연산을 최소화하는 값을 찾는 알고리즘이다. 여기서 연산이랑 수정, 삭제, 삽입 이렇게 3가지 연산을 칭한다. 위의 사진처럼 1차 수정에서 4번 삭제에서 1번 삽입에서 1번 총 6번의 비용이 필요한 문자열이다. Levenshtein Distance Process 레벤 슈타인은 그렇다면 어떤 방식으로 작동하는지 알아보겠다. 기본적으로 LCS 알고리즘과 유사하게 알고리즘이 작동한다. LCS LCS: 최장 공통 부분수열 문제는 LCS라고도 불린다. 이는 주어진 여러 개의 수열 모두의 부분수열이 되는 수열들 중에 가장 긴 것을 찾는 문제다 사전적인 의미는 이렇지만..