Downloads · 30 days
0
snmedia153/korean-web-page-inspector
korean-web-page-inspector is a text classification model from snmedia153. Use it when you need a label for a piece of text. It is set up for custom. The card lists the license as mit.
<p align="center" <img src="assets/portfolio-cover.png" alt="Korean Web Page Inspector" width="900" </p
Downloads · 30 days
0
Access
Public
Updated Sep 27, 2026
Repo size
4.8 MB
Likes
1
Public
Click a slice to open those files.
.json4.5 MB · 47%
From the Hugging Face model README
| 한눈에 보기 | 값 |
|---|---|
| 최종 페이지 정확도 | 98.39% (사이트 기준 98.81%) |
| 요소 역할 완전 일치율 | 92.27% |
| 위치 고유 일치율 | 99.45% |
| 분류 범위 | 페이지 유형 13종, 요소 역할 20종 |
| 학습 기록 | 1,374개 (승인), 고정 평가 248페이지 |
| 실행 환경 | CPU 전용, Docker 1.5GB 메모리로 동작 |
한국어 웹페이지의 상태와 로그인·회원가입 요소를 함께 인식하는 CPU 기반 모델입니다. 텍스트 의미를 읽는 MiniLM, 학습한 분류 헤드, DOM 구조 규칙을 결합해 후속 프로그램이 사용할 수 있는 JSON을 반환합니다.
일반 콘텐츠에 로그인 양식이 포함된 화면을 한 가지 라벨만으로 표현하면 페이지의 목적과 요소의 존재가 섞입니다. 이 모델은 페이지 상태와 요소 역할을 분리합니다. NORMAL 페이지에 LOGIN_ENTRY, SIGNUP_ENTRY가 동시에 존재할 수 있고, 여러 로그인 양식도 각각의 위치와 관계를 보존합니다.
| 구성 요소 | 역할 |
|---|---|
| 동결 multilingual MiniLM | DOM 텍스트·속성을 384차원 임베딩으로 변환 |
| Class-balanced ridge 헤드 | 페이지 상태, 요소 역할, 존재 여부 분류 |
| DOM 구조 규칙 | 양식·컨테이너 관계와 상태 근거를 반영 |
| 선택자 검증 | 현재 HTML에서 위치가 고유하게 일치하는지 확인 |
기반 인코더의 가중치는 업데이트하지 않습니다. 이 프로젝트의 학습 대상은 별도의 분류 헤드입니다. 스크린샷을 직접 이해하는 비전 모델이나 새로운 기초 모델에 해당하지 않습니다.
Windows는 ./start.ps1, Docker는 아래 명령으로 실행합니다. 상세 환경과 API는 설치 안내에 정리했습니다.
docker build -t page-inspector .
docker run --rm --cpus 2 --memory 1536m -p 127.0.0.1:18791:7860 page-inspector
http://127.0.0.1:18791 에서 HTML을 입력하고 판정, 요소 위치, 점수와 JSON을 확인할 수 있습니다. WebUI는 Ant Design, shadcn/ui, Recharts로 구성했습니다.
structure-v1)1790520990526655933승인 모델 버전은 1790520990526655933이며 학습 기록은 1,374개입니다(학습 1123개, 평가 251개로 분리). 자동 표기 포함 모델은 2,097개로 별도 제공합니다. 두 모델의 학습 기록 수를 합산해 고유 페이지 수로 표시하지 않습니다.
| 지표 | 값 | 평가 범위 |
|---|---|---|
| 페이지 분류 헤드 Macro F1 | 0.6773 | 220페이지, 전체 클래스 |
| DOM 규칙 결합 Macro F1 | 0.9897 | 같은 내부 평가, 전체 클래스 |
| 최종 페이지 정확도 | 98.39% | 같은 내부 평가 248페이지 |
| 사이트 기준 정확도 | 98.81% | 같은 평가의 112개 사이트를 한 번씩 |
| 요소 역할 완전 일치율 | 92.27% | 검수 요소 918개 |
| 요소 역할 Micro F1 | 0.9545 | 같은 요소 |
| 위치 고유 일치율 | 99.45% | 906개 중 901개 |
평가 페이지는 도메인과 템플릿 단위로 묶어 학습과 섞이지 않게 고정해 둔 집합입니다. 새 모델은 이 고정 평가에서 직전 승인 모델보다 나빠지지 않을 때만 승인 모델이 됩니다. 이번 스냅샷은 같은 242페이지에서 238개에서 238개, 같은 918개 요소에서 847개에서 847개를 맞혀 승인됐습니다. 사이트 기준 정확도는 같은 사이트를 여러 번 수집한 페이지가 점수를 끌고 가지 않도록 사이트마다 한 번씩 센 값입니다.
페이지, 요소 역할, 위치 검증은 서로 다른 평가 단위입니다. 위치 일치율은 실제 사이트의 클릭 성공률이 아닙니다. 이전 공개본(2026-09-27 1판, 학습 기록 1,313개, 고정 평가 241페이지 98.34%)과는 학습 기록이 달라 전후 수치만으로 개선 폭을 단정하지 않습니다. 같은 라벨과 헤드로 규칙만 바꿔 잰 5겹 교차 검증(승인 자료 1,322페이지)에서는 이전 규칙 94.55%, 현재 95.69%였고 매크로 F1은 0.8418에서 0.9606이었습니다. 내부 오답 분석을 규칙 조정에 활용했으므로 독립 외부 벤치마크로 소개하지 않습니다.
shown은 조상이 display:none인 닫힌 팝업 안의 칸도 참으로 돌려주므로 상자 크기로 잰 onscreen과 함께 봅니다. /login.asp에 홈 화면을 내고 로그인 폼을 닫힌 팝업에 둔 카지노 사이트가 더는 로그인 화면으로 나오지 않습니다.SIGNUP_NICKNAME(닉네임), SIGNUP_BANK(은행 선택), SIGNUP_ACCOUNT(계좌번호), SIGNUP_HOLDER(예금주), SIGNUP_REFERRAL(추천·가입 코드). 이 칸들은 아이디 칸 후보에서 제외되므로, 닉네임이나 계좌번호가 아이디 입력란으로 나오던 오탐이 사라집니다.contact_links로 함께 돌려줍니다(텔레그램·카카오·라인). 링크의 href에서 읽으며, 본문에 낱말만 있는 쪽은 아무것도 싣지 않습니다.BETTING(베팅 화면)은 분류 헤드가 아니라 규칙이 판정합니다. 두 가지 중 하나입니다: 주소가 스포츠북 구역을 이름 대고(/sports·/inplay·/prematch·/minigame 등) 화면에 베팅 슬립이 보이는 쪽, 또는 주소가 경기 번호를 적은 단일 경기 배당판(/match/Soccer/Europe/566/30728751). 뒤쪽이 슬립을 요구하지 않는 것은 아직 아무것도 고르지 않아 카트가 비어 있기 때문이며, 그런 스물여섯 쪽은 제목이 하나같이 두 팀과 경기 시각과 대회를 적고 있었습니다. 종목 목록·리그 쪽·홈 화면은 그대로 일반 콘텐츠이며 betting_ui로 말합니다. 헤드에게 가르쳤을 때는 같은 사이트의 홈 화면까지 베팅으로 끌고 갔습니다. 배당판과 홈 화면은 낱말이 거의 같아서, 가르는 것은 주소와 화면입니다.ERROR로 읽습니다.MEDIA_VIEWER(사진·영상 크게 보기, 그누보드 view_image.php)와 ACTION_RESULT(추천·비추천 누른 뒤 결과, good.php·goodcmt.php)를 주소로 판정합니다. 분류 헤드는 이 두 유형도 학습하지 않았습니다./api/predict에 선택 입력 url을 받습니다. 경로(/login 등)가 판정 근거로 쓰이므로 알면 넘기세요.structure-v1: HTTP 상태, 비밀번호 칸 수, 폼·입력칸·링크·이미지 수, 본문 길이, 로그인·가입 경로, 캡챠 위젯 등)를 함께 씁니다. 학습과 평가에서도 전체 페이지 기준으로 계산해 실제 추론과 같은 값을 읽습니다.page.betting_ui(PRESENT, ABSENT, UNKNOWN)를 페이지 유형과 별도로 반환합니다. 베팅 슬립과 화면 가장자리에 고정된 패널은 닫을 레이어로 세지 않습니다.라벨링 설계는 페이지 확인, 요소 지정, 위치 검증과 부분 승인의 관계를 설명합니다. 데이터 정책은 학습·평가 분리와 공개 자료의 범위를 구분합니다. 원본 사이트 HTML·스크린샷과 개별 학습 ID는 포함하지 않습니다.
직접 작성한 코드·문서·별도 분류 헤드는 MIT입니다. 기반 MiniLM 인코더는 Apache-2.0을 유지합니다. 외부 구성요소의 라이선스와 고지는 NOTICE, BASE_MODEL_LICENSE.txt, licenses/에 보존합니다. 자세한 적용 범위는 라이선스 안내를 참고하세요.
동봉된 짧은 합성 자료 6종을 두 모델에서 각각 분석했을 때 사람 확인, 503 오류 안내, 법적 제한, 로그인, 회원가입는 기대한 유형으로 반환됐습니다. 짧은 일반 콘텐츠는 판단 보류(UNKNOWN)로 반환됐습니다. 이 결과는 오류 분석을 위한 제한된 예제 관측이며 별도의 정확도 벤치마크가 아닙니다. 실제 응답 상태와 최종 주소를 알고 있다면 http_status와 url을 함께 입력하세요.