딥러닝 20

[DL] 아인슈타인 합의 표기법(Einstein Summation Notation)

아인슈타인 합의 표기법(Einstein Summation Notation) 정의 아인슈타인 표기법 또는 아인슈타인의 합 규약은 수학의 선형대수학을 물리학에 응용하면서 좌표계에 관한 공식을 다룰 때 유용한 표기 규칙입니다. 이 방법의 핵심은 반복되는 인덱스를 사용하여 합을 나타내고, 이를 통해 더 복잡한 텐서 연산을 단순화하는 것입니다. 수식 특정 index의 집합에 대한 합(시그마)연산을 간결하게 표시하는 방법. Aik⋅Bkj를 수행하면 output dimension은 [I,J] 이 후 I에 대해 summation Einstein Notation(우변) 에서는 다음의 경우 sigma기호를 생략 반복적으로 합산되는데 이용되는 index(k)에 관련된 sigma 최종 결과 값 Cj에 명시되지 않은 index..

DL 2024.04.17

[Voice] CNN (Convolutional neural network) 간단 설명

0. 개요 CNN은 주로 이미지 데이터 처리에 강점을 가지고 있지만, 오디오 데이터의 스펙트로그램(시간에 따른 주파수의 분포를 시각화한 것)과 같은 형태로 전처리하면 음성 신호 분석에도 활용할 수 있습니다. CNN으로 음성 데이터 처리를 하기에 앞서 CNN은 무엇인지에 대해 정리하겠습니다. 1. CNN의 역사 LeNet (1998) Yann LeCun에 의해 제안되었습니다. 초기 핸드쓴 문자 인식에 사용됐습니다. CNN의 초기 모델로서 기초적인 컨볼루션 레이어와 풀링 레이어의 구조를 갖고 있습니다. AlexNet (2012) 2012년 ImageNet Large Scale Visual Recognition Challenge에서 우승한 모델입니다. 딥러닝의 인기를 불러일으키는 데 중요한 역할을 했습니다. ..

DL/Voice 2024.03.12

[Voice] 디지털 신호(음성) 처리 개념 정리

0. 기초 용어 Frequency: 주파수 (높이) Amplitude: 진폭 (세기) Phase: 위상 (맵시) 1. 컴퓨터가 소리를 인식하는 방식 연속적인 아날로그 신호를 표본화(Sampling), 양자화(Quantizing), 부호화(Encoding)을 거쳐 이진 디지털 신호(Binary Digital Signal)로 변화시켜 인식하게 됨 표본화(Sampling) 샘플링 단계에서 초당 샘플링 횟수를 정하는데, 이를 Sampling rate라고 함 “1초에 연속적인 시그널을 몇 개의 숫자로 표한할 것인가?” sampling rate가 클수록 즉, 자주 sampling할 수록 원본 데이터와 비슷할 것 → 그러나 그만큼 저장해야 하는 데이터의 양이 늘어나게 됨 sampling rate가 작게 되면 아래와 ..

DL/Voice 2024.03.12

[Computer Vision] Extraction of Table Text Information in Documents Using Deep Learning Object Detection (2023)

0. 요약 본 논문에서는 딥러닝 객체 인식을 기반으로 한글 문서 내 표 및 박스의 텍스트 정보를 추출하고 이를 재배열하여 문장화하는 방안을 제시하였습니다. 객체 감지 모델 Yolo를 통해 추출한 문서 내 표 및 박스의 좌표 정보를 토대로 OpenCV와 Google Cloud Platform의 Vision API를 적용하여 문서로부터 표 및 박스 이미지를 분리하고 텍스트를 감지하였습니다. 추출한 표 및 박스 내 텍스트를 문장화하기 위한 규칙 기반의 텍스트 재배열 방법을 제안하였으며 이를 통해 표의 텍스트 정보가 원래 의도된 문장으로 도출되는지 확인하였습니다. 1. 서론 문서 내에는 본문의 텍스트 정보뿐만 아니라 다양한 형태의 그림이나 표 등의 자료를 포함하고 있는 경우가 많습니다. 이러한 자료 중 표 내부..

DL/Computer Vision 2024.02.22

[Computer Vision] Methods of Classification and Character Recognitionfor Table Items through Deep Learning (2021) 리뷰 및 구현

1. 서론 문서 내 표 영역의 경우, 표 내부 항목명과 항목 내용을 인식하는 것은 업무 자동화를 위한 문서 처리 에 있어서 중요한 부분입니다. 하지만 OCR만을 통해서는 표 내부의 문자를 인식하는 것에만 국한되어있고, 해당 내용이 무슨 의미를 가지는지는 인식을하지 못합니다. 따라서 문서 인식을 수행한 후, 사람의 손으로 항목을 분류해야 한다는 불편함이 있으며, 표 영역 내 구분자는 문자 인식의 정확도를 떨어뜨리는 요인이 되기도 합니다. 본 논문에서는 딥러닝 신경망을 통해 표 항목 내의 문자를 인식하고, 이를 통해 문서를 디지털화하는 방법을 제안합니다. 먼저 스캔된 문서 이미지 파일에서 CNN을 통해 표 영역을 검출합니다. 그 후, 표 영역 내 수직선과 수평선의 구분자로 분리된 각 영역을 검출한 후, 각각..

DL/Computer Vision 2024.02.22

[Computer Vision] LayoutLM: Pre-training of Text and Layout for Document Image Understanding (2019) 리뷰

0. 요약 NLP 사전 학습 모델이 널리 사용되고 있지만, 대부분 텍스트에만 집중하고 문서 이미지 이해에 필수적인 레이아웃과 스타일 정보는 간과하고 있습니다. 본 논문에서는 스캔된 문서 이미지 전반에 걸쳐 텍스트와 레이아웃 그리고 이미지 정보를 고려한 joint 모델 LayoutLM을 제안합니다. (BERT + Fast R-CNN) LayoutLM이 문서 이미지 이해를 위해 텍스트와 레이아웃의 정보를 단일 프레임워크에서 학습하는 첫 번째 사례입니다. 이는 여러 Downstream task에서 최고 성능을 달성했습니다. form understanding (70.72 → 79.27) receipt understanding(94.02 → 95.24) document image classification (93..

DL/Computer Vision 2024.02.22

[ML] 머신러닝 기초 (5) Linear Regression. 회귀 실습

https://mz-moonzoo.tistory.com/52 [ML] 머신러닝 기초 (4) Linear Regression 회귀 이론 https://mcode.co.kr/video/list2?viewMode=view&idx=21 메타코드M 빅데이터 , AI 강의 플랫폼 & IT 현직자 모임 플랫폼ㅣ메타코드 커뮤니티 일원이 되시기 바랍니다. mcode.co.kr 이전 ML 카테고리의 포스팅에 이어 mz-moonzoo.tistory.com 선형 회귀의 이론을 포스팅하고 실습 강의 리뷰는 굳이 하지 않으려했지만 간단하게 코드 리뷰를 해보겠습니다. 실습 강의 및 코드는 메타코드 링크에서 받아보실 수 있습니다. https://mcode.co.kr/video/list2?viewMode=view&idx=21 메타코드..

ML 2024.02.19

[ML] 머신러닝 기초 (3) 머신러닝 기본 수학 이론

https://mcode.co.kr/video/list2?viewMode=view&idx=21 메타코드M 빅데이터 , AI 강의 플랫폼 & IT 현직자 모임 플랫폼ㅣ메타코드 커뮤니티 일원이 되시기 바랍니다. mcode.co.kr 이전 ML 카테고리의 포스팅에 이어 머신러닝 강의를 들으면서 내용을 정리하고 있습니다. 현재 무료로 강의를 보실 수 있으니 궁금하신 부분은 강의를 수강하시면 좋을 것 같습니다. 함수 두 집합 사이의 관계 혹은 규칙 y = f(x)의 식으로 표현, 이 때의 x는 입력값, y는 출력값 일차 함수 y가 x에 대한 일차식으로 표현된 경우 y = ax + b (a != 0) a를 기울기, b를 절편이라고 표현 이차 함수 y가 x에대한 이차식으로 표현된 경우 y=a(x-p)^2 +q(a!=..

ML 2024.02.14

[ML] 머신러닝 기초 (2) 머신러닝 기본 용어 정리

행렬(Matrix) vs 벡터(Vector) VS 스칼라(Scalar) 머신러닝에서 벡터와 행렬은 그리고 스칼라는 데이터를 표현하고 처리하는 데 사용되는 기본적인 수학적 구조입니다. 행렬(Matrix) 정의 : 행렬이란 숫자들을 행과 열로 구성된 직사각형 형태로 배열한 것입니다. 이는 여러 숫자들을 모아서 한번에 표현할 수 있다는 것인데, 다량의 데이터를 한번에 표현할 수 있는 좋은 수단이라는 것을 의미합니다. 이로 인해 머신러닝에서 행렬은 데이터 세트를 표현하거나 여러 데이터 포인트를 동시에 처리하는 데 자주 사용됩니다. 예를 들어, 여러 데이터 포인트가 각각의 행으로 구성되고, 각 행의 열이 다양한 특성을 나타내는 형식입니다. 표현 : 행렬은 행(row)과 열(column)로 구성됩니다. 예를 들어,..

ML 2024.01.31

[ML] 머신러닝 기초 (1) 머신러닝 소개

머신러닝 공부를 시작하며... 데이터 사이언티스트, AI 엔지니어, ML 엔지니어 직무를 준비하면서 학부 시절에 배운 머신러닝, 딥러닝 기초 이론들을 많이 잊어버린거 같아 다시 기초부터 다지고자 합니다. 다음과 같은 커리큘럼으로 블로그 글을 작성해보려고 합니다. 1. 머신러닝 기초 이론 2. 딥러닝 기초 이론 3. NLP 전통적인 논문 리뷰 및 구현 4. LLM 논문 리뷰 (현재 리소스로 구현이 가능하다면.. 구현까지) 5. NLP 분야 최신 논문에서 구현체가 없는 모델 구현 NLP 도메인에 대한 관심으로 공부를 시작하는 것이기 때문에 논문을 읽고 소스코드 없이 구현할 수 있는 수준까지 역량을 키워볼 생각입니다. 그럼 머신러닝 기초 이론부터 다뤄보겠습니다. 학부 시절에 사용한 머신러닝 교재를 모두 버린 ..

ML 2024.01.29