Marble Skill Taxonomy 소개
학습자에게 다음에 무엇을 가르쳐야 할지 판단하려면 "이 개념을 이해하려면 무엇을 먼저 알아야 하는가" 를 알아야 합니다. 그런데 공개된 교육과정 데이터는 대부분 성취기준을 죽 늘어놓은 평평한 목록이거나, 특정 학습 제품 안에 들어가 밖에서는 손댈 수 없는 형태입니다. 개념 사이의 순서가 데이터로 남아 있지 않으면, 개인화 학습을 다루는 모델이나 에이전트는 그 순서를 매번 추론으로 지어내야 합니다.
Marble Skill Taxonomy는 초등 시기에 아이가 배우는 내용을 잘게 쪼갠 뒤 선수 학습 관계로 엮어 공개한 데이터셋입니다. 학습 주제를 마이크로 토픽(micro-topic) 1,590개로 분해하고, 그 사이의 의존 관계 3,221개를 방향성 비순환 그래프(DAG)로 연결한 다음, 각 토픽을 국가 교육과정 성취기준에 연결해 두었습니다. 학습 앱을 만드는 Marble(Generative Spark, Inc.)이 2026년 7월 v1으로 공개했습니다.
데이터는 순수 JSON뿐이라 실행할 런타임도, 설치할 의존성도 없습니다. 대신 각 토픽에는 평이한 말로 쓴 설명, 숙달을 확인하는 근거(evidence) 항목, 개념 유형, 과목과 영역, 대략적인 연령 구간이 붙어 있고, 각 의존 관계에는 왜 그 순서여야 하는지를 적은 한 줄짜리 이유가 함께 들어 있습니다.
평평한 성취기준 목록과 Marble Skill Taxonomy의 차이
같은 교육과정 정보를 다루더라도 자료의 형태에 따라 할 수 있는 일이 달라집니다. 아래는 이 데이터셋이 기존의 성취기준 목록과 어떻게 다른지를 저장소 문서에서 확인되는 범위로 정리한 것입니다.
| 항목 | 성취기준 목록 | Marble Skill Taxonomy |
|---|---|---|
| 기본 단위 | 학년별 성취기준 문장 | 하나의 가르칠 수 있는 아이디어 단위인 마이크로 토픽 |
| 개념 간 순서 | 학년 구분 외에는 없음 | hard / soft 로 구분된 선수 관계 3,221개 |
| 순서의 근거 | 별도 기록 없음 | 각 의존 관계마다 한 줄짜리 이유 |
| 숙달 판정 | 별도 기록 없음 | 토픽마다 evidence 항목과 확인용 질문 |
| 외부 기준 연결 | 단일 교육과정 기준 | 7종 교육과정, 성취기준 3,261건, 연결 1,859건 |
성취기준을 버린 것은 아닙니다. 각 마이크로 토픽은 자신이 어떤 성취기준에서 증류되어 나왔는지를 함께 들고 있어서, NGSS와 Common Core, 영국 국가 교육과정 등을 거슬러 확인할 수 있습니다.
Marble Skill Taxonomy가 그리는 학습 지도

점 하나가 마이크로 토픽 하나이고, 색은 과목을, 높이는 연령을 나타내며, 점 사이를 잇는 실은 선수 관계입니다. 저장소에는 고화질 영상 파일 도 함께 들어 있고, withmarble.com/curriculum 에서는 개념 하나를 눌러 그 앞에 놓인 모든 선행 개념을 따라가 보는 대화형 탐색이 가능합니다.
과목별 토픽 수는 다음과 같이 분포합니다.
| 과목 | 토픽 수 |
|---|---|
| 과학 | 547 |
| 수학 | 503 |
| 영어 | 286 |
| 역사 | 90 |
| 인성 및 사회성 발달 | 88 |
| 생활 기술 | 37 |
| 컴퓨팅 | 21 |
| 학습 방법 | 18 |
Marble Skill Taxonomy의 데이터 구조
모든 데이터는 data/ 아래에 UTF-8 JSON으로 들어 있고, JSON 스키마는 schema/ 에, 파일별 개수와 SHA-256 체크섬은 data/manifest.json 에 있습니다. 그래프의 노드는 data/topics.json, 간선은 data/dependencies.json 이 담당하고, 원본 성취기준은 data/curriculum-standards.json, 학부모용 영역 요약 183건은 data/clusters.json 에 들어 있습니다.
토픽 하나는 이런 모습입니다.
{
"id": "mt_N8CpN1EJrP",
"type": "CONCEPTUAL",
"subject": "English",
"domain": "Grammar & Punctuation",
"name": "Building sentences",
"description": "Understand that words combine to make sentences — a sentence expresses a complete thought…",
"ageRangeStart": 4,
"ageRangeEnd": 6,
"centrality": 0.257,
"evidence": [
"Distinguish between complete sentences and fragments",
"Compose a complete sentence with a subject and verb"
],
"assessmentPrompt": "If {{name}} says something like \"The dog\", can they tell you that's not a complete sentence…?",
"standards": ["ccss-ela:L.K.1f", "uk-nc-2013:Eng.App2.Y1.Sent.1"]
}
id 는 mt_ 로 시작하는 안정적인 식별자이고, standards 는 "<교육과정 슬러그>:<코드>" 형태로 성취기준 파일을 가리킵니다. type 은 개념형, 절차형, 표상형, 언어형, 메타형 다섯 가지로 나뉩니다. assessmentPrompt 에는 아이 이름이 들어갈 {{name}} 자리표시자가 있으므로, 화면에 보여주기 전에 값을 채우거나 제거해야 합니다.
의존 관계는 훨씬 단순합니다.
{ "topicId": "mt__00ZSLnB7p", "prerequisiteId": "mt_VBl1T1sFCM", "strength": "hard",
"reason": "Must understand vibrations make sound before finding volume patterns" }
topicId 가 prerequisiteId 에 의존한다는 뜻이고, 방향을 뒤집으면 "이 개념을 익히면 무엇이 열리는가" 가 됩니다.
Marble Skill Taxonomy 사용하기
JSON을 그대로 읽어 쓰면 됩니다. 특정 토픽의 선행 개념 이름을 뽑는 예시는 다음과 같습니다.
import topics from './data/topics.json' with { type: 'json' };
import deps from './data/dependencies.json' with { type: 'json' };
const byId = new Map(topics.topics.map(t => [t.id, t]));
const prereqs = deps.dependencies
.filter(d => d.topicId === 'mt_N8CpN1EJrP')
.map(d => byId.get(d.prerequisiteId).name);
구조와 참조 무결성은 저장소에 포함된 검증 스크립트로 확인합니다.
node scripts/validate.mjs
이번 공개에서 의도적으로 빠진 것도 명시되어 있습니다. 의미 임베딩(semantic embedding)은 파생물이고 다시 계산할 수 있다는 이유로, 아이별 사용자 데이터는 애초에 공개 대상이 아니라는 이유로 제외됐습니다.
Marble Skill Taxonomy는 누구에게 유용한가
개인화 학습 서비스나 교육용 에이전트를 만들면서 "이 개념 앞에 무엇이 있는가" 를 데이터로 다뤄야 하는 팀에 가장 잘 맞습니다. 그래프 구조와 evidence 항목이 함께 들어 있어 학습 경로 추천이나 진단 문항 생성의 기반 자료로 바로 쓸 수 있고, 임베딩을 직접 계산해 검색이나 검색 증강 생성에 붙이는 것도 가능합니다. 다만 대상 연령이 초등 시기에 한정되어 있고 과목 분포가 과학과 수학에 크게 쏠려 있어서, 중등 이상이나 컴퓨팅처럼 토픽 수가 적은 영역을 노린다면 이 데이터셋만으로는 부족합니다. 아래 라이선스 조건상 데이터셋 자체를 확장한 결과물은 다시 공개해야 하므로, 비공개로 개조해 쌓아 두려는 계획이라면 도입 전에 조건을 확인해야 합니다.
Marble Skill Taxonomy의 라이선스
이 저장소는 계층마다 라이선스가 다른 다중 라이선스 구조입니다.
| 계층 | 라이선스 |
|---|---|
| 데이터베이스 자체 (수집물, 구조, 식별자, 토픽과 성취기준 사이의 관계) | ODbL 1.0 — 연구와 상업적 사용 모두 가능, 출처 표시 필수, 동일 조건 변경 허락 |
| Marble이 직접 작성한 텍스트 (토픽 이름과 설명, evidence, 확인 질문, 의존 관계의 이유, 영역 요약) | CC BY-SA 4.0 |
curriculum-standards.json (제3자 교육과정에서 추출) |
Marble이 재라이선스할 수 없으며 각 원출처의 라이선스를 따름 |
ODbL은 파생 데이터베이스와 산출물(produced work)을 구분합니다. 이 분류를 확장하거나 수정한 결과물은 ODbL로 공개해야 하지만, 제품이나 모델, 앱 안에서 사용한 결과물은 공개 대상이 아닙니다. 프로젝트 문서도 이 차이를 두고 "상업 제품을 만들면서 제품 자체를 오픈소스로 공개할 필요는 없고, 분류 체계 자체에 대한 개선만 되돌려 주면 된다" 는 취지로 설명하고 있습니다.
출처 표시는 데이터셋 이름과 저작권자, 홈페이지, 두 라이선스를 함께 적는 형태를 요구하며, 사용한 교육과정 성취기준이 있다면 PROVENANCE.md 의 원출처 고지도 함께 붙여야 합니다. 논문 인용 형식은 CITATION.cff 에 정리되어 있습니다.
Marble Skill Taxonomy 대화형 탐색
Marble 공식 홈페이지
Marble Skill Taxonomy 프로젝트 GitHub 저장소
더 읽어보기
-
Learn Your Way: 생성형 AI를 사용하여 교과서를 재창조하는 Google의 새로운 교육 AI 프로젝트
-
Knowledge-Graph: 로컬 LLM을 사용하여 PDF와 같은 텍스트 뭉치를 지식 그래프(KG)로 변환하는 오픈소스 프로젝트
이 글은 GPT 모델로 정리한 초안을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 댓글로 알려주시기를 부탁드립니다. ![]()
이 도구를 직접 설치해 사용해보셨다면, 파이토치 한국 사용자 모임
회원들을 위해 경험이나 팁을 댓글로 남겨주세요! ![]()
