Skip to content

spaceturtle1018/NLP-Samsung-Audit-Report

 
 

Repository files navigation

삼성전자 감사보고서 처리 및 지식그래프 기반 분석

프로젝트 개요

  • 주제: 삼성전자 감사보고서를 기반으로 한 지식그래프 구축 및 활용
  • 목표:
    1. 연도별/항목별 변화 추적
    2. 감사보고서 내용 그래프화
    3. 그래프 검색을 통해 감사보고서 접근성 향상과 동시에 그래프 분석 기법을 통해 감사보고서 심화 분석 제공

[최종 지식그래프]

image
2014년 감사보고서의 그래프

image
지식그래프를 구성하는 핵심 노드

image
핵심노드에 대한 상세 subgraph


데이터 및 문제 정의

  • 데이터 출처: 2014~2023년 삼성전자 감사보고서
  • 특징:
    • 표와 텍스트가 혼합된 반정형 문서
    • 연도마다 구조·용어·항목이 상이
    • HTML 테이블 복잡성, 병합 셀, 불일치 문제 존재

⚙️ 데이터 처리 파이프라인

1차 결과물 (구조화 단계)

  1. HTML 전처리
    • 중첩구조/노이즈 제거
    • 태그 분류 및 섹션 처리 전략
  2. 계층구조 분석 → JSON 변환
    • 헤딩 감지 및 체계화
  3. 무결성 검증
    • <p>, <table>, <heading> 검증
    • 해시 기반 멀티셋 비교
  4. 테이블 식별 및 명명 전략
    • 실제 데이터 vs 포맷 구분
    • 단위 추출 및 동일명 테이블 통합
  5. DB 스키마 설계
    • report_years, sections, tables, text_contents
    • 고유 ID 및 인덱스 최적화

📌 성과:

  • 10년치(2014~2023) 처리 완료
  • 섹션 1,000+개 / 테이블 500+개 / 텍스트 항목 10,000+개
  • 무결성 달성률 100%, 테이블 명명 성공률 90%

2차 결과물 (의미 분석 및 지식그래프 구축)

  1. LLM 활용 설명 추출
    • OpenAI API (GPT-4o-mini) 활용
    • 각 테이블 요약 설명 자동 생성
  2. 벡터 임베딩
    • HuggingFace Sentence-Transformers 활용
    • 설명문 임베딩 → 코사인 유사도 계산
  3. 지식그래프 구축
    • NetworkX 기반 구현
    • 6개 대주제 + 48개 실제 테이블 연결
    • 노드 색상/크기, 엣지 두께 가변 시각화

📌 대주제 (6개 카테고리):

  • 성과
  • 현금흐름
  • 위험 및 평가
  • 투자 및 관계사
  • 재무상태와 변동
  • 인력 및 연금

🔎 지식그래프 활용 방안

(1) 현금 수요 분석

  • 차입 수요의 원인 → 조달 → 만기 구조 확인
  • 재고자산/기타자금수요 기반 만기별 변화 추적
image

(2) 자산-손익 연계

  • 특정 자산 비중이 커질 때 순손익 극대화 영역 탐지
  • 범주별 금융상품 내역 vs 범주별 순손익 비교
image

(3) 충당부채 이상 탐지

  • 현금흐름표에 반영되지 않는 충당부채 급증 탐색
  • Robust Z-score 기반 이상 신호 감지
image

(4) 보고서 구조 변화 탐지

  • 연도별 그래프 지표(density, centrality, clustering) 추적
  • Isolation Forest로 이상년도 탐지 (2014, 2019)
image

🙌 프로젝트 팀

  • SNU 빅데이터 핀테크 AI 고급 전문가 과정 11기 – 1조
    김연우 · 김태완 · 박정원 · 배기태 · 이선유 · 지희선

📅 기간: 2025.09
📂 프로젝트 주제: LLM 활용 지식그래프 구축

디렉토리 파일구조

본 프로젝트는 2014-2023년까지의 삼성전자 감사보고서 html 파일을 바탕으로 데이터베이스를 구축하는 것을 목표로 합니다. 디렉토리의 구조는 아래와 같습니다.

repo-root/  
├── 2차목표_기획/  
│   ├── 2차분석_지식그래프_데모.html   
│   └── 2차목표_기획안.txt  
├── DB_1차_전체파싱/  
│   ├── DB_1차_전체파싱_전처리파일/  
│   ├── 전체파싱_DB화_전략.html  
│   └── 전체파싱_데이터베이스.ipynb  
├── DB_2차목표용/  
│   ├── DB.md  
│   ├── DB_load.ipynb  
│   ├── ERD.png  
│   ├── database_schema.txt  
│   ├── help.txt  
│   └── samsung_audit_report.db  
├── DB_csv/  
│   ├── [공정가치]matrix_long_raw.csv  
│   ├── [매도가능금융자산=공정가치금융자산_변동내역]matrix_long_scaled.csv  
│   ├── [매출채권_할인내역]matrix_long_scaled.csv  
│   ├── [공정가치 수준별 공시]_merged .csv  
│   └── …  
├── knowledge_graph/  
│   ├── BERT.ipynb  
│   ├── frontend_finale.ipynb  
│   ├── Analysis_StaticGraph.ipynb  
│   ├── 지식그래프_구축_및_이상탐지_시계열.ipynb
│   ├── (개선본)amsung_knowledge_graph_dashboard (1).html
├── 전처리코드/  
│   ├── BERT.ipynb  
│   ├── 자본및비용.ipynb  
│   ├── 자산및부채상세내역1.ipynb  
│   ├── 자산및부채상세내역2_코드/  
│   ├── 재무위험관리.ipynb  
│   └── 특수지배관계_코드/  
└── README.md (템플릿)  

About

삼성전자 감사보고서 파싱 및 자연어 처리, 지식그래프 구축 및 분석

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 61.8%
  • HTML 38.2%