금융 R&D 포럼 · 세션 3 금융AI 활용과 혁신

‘비슷함’을 미래로 정의하기

Future-Aligned Soft Contrastive Learning

FASCL · Cross-Sectional Asset Retrieval under review

이형민 · 서울과학기술대학교 전자공학과

2026. 9. 17 · 금융보안원 여의도 교육센터

이형민

SPEAKER

이형민

서울과학기술대학교 전자공학과 조교수 · ViViD Lab

  • 2018–2023 연세대학교 · 전기전자공학 박사 · Video Frame Interpolation
  • 2021 Adobe Research · Research Intern
  • 2023–2026 Twelve Labs · Research Scientist · Video Foundation Models · Video Retrieval
  • 2026– 서울과학기술대학교 · Video · World Models · AI for Science

Intro

Moravec's Paradox

인간에게 쉬운 일과 기계에게 쉬운 일의 역전

Reasoning · Symbols

IMO 2025

수학 올림피아드 금메달 기준 도달

Google DeepMind · OpenAI 발표

사람이 teleoperation으로 로봇 팔 시연 데이터를 모으는 모습

Perception · Manipulation

정교한 조작은 여전히 teleoperation 시연으로 학습

H. Moravec, Mind Children (1988) · 사진: ALOHA, T. Zhao et al., RSS 2023

Intro

AlphaFold

AlphaFold 예측(파랑)과 실험으로 구한 구조(초록)의 겹침 큰 단백질에서 AlphaFold 예측(파랑)과 실험 구조(초록)의 겹침

Sequence → 3D Structure

Physics simulation

탐색 공간과 계산량의 벽

Learning from data

관측된 구조 데이터로 simulation을 우회

CASP14 (2020) · 2024 노벨 화학상

그림: J. Jumper et al., Nature 596 (2021), Fig. 1b · 1d (CC BY 4.0) · 파랑: AlphaFold 예측, 초록: 실험 구조

Intro

시장: 두 어려움이 겹치는 곳

연역만으로
닫히지 않는 문제

인간 행동 · 제도에 대한
관측 데이터가 필요

미시로 갈수록
폭증하는 복잡도

Simulation만으로는
감당하기 어려움

시장

이 발표의 질문 · ‘비슷한 자산’의 정의

Problem

Asset Retrieval

Query 자산과 가장 비슷한 K개의 자산 찾기

Query Top-K (K=3) Universe

개념도

Problem

Use Cases

같은 retrieval 결과, 서로 다른 세 가지 용도

Hedging

함께 움직일 자산으로 위험 상쇄

Diversification

섹터 너머의 숨은 집중 리스크

Pairs Trading

함께 움직이는 쌍의 spread 수렴

Problem

기존의 ‘비슷함’: Backward-Looking

Historical Correlation

?

함께 움직였던 자산

Pattern Similarity (DTW)

모양이 닮았던 자산

Sector Classification

같은 분류의 자산

Time-Series SSL

관측 구간이 닮은 자산

함께 움직였던 자산 앞으로 함께 움직일 자산

Time-Series SSL: self-supervised · foundation model 계열 · Forecasting model도 자산마다 자기 미래 값을 맞힐 뿐, 자산 사이의 미래 co-movement는 학습 목표가 아님 (논문 §2)

Problem

Problem Setting

Input

과거 64거래일 시계열

OHLCV · 시가 · 고가 · 저가 · 종가 · 거래량 거래대금

Out of Scope

  • 뉴스
  • 기업 실적
  • 거시 지표

Idea

미래 수익률을 정확히 예측할 수 있는가

Low signal-to-noise · Non-stationarity

금융 수익률의 낮은 signal-to-noise: S. Gu, B. Kelly, D. Xiu, Review of Financial Studies (2020)

Idea

Video Representation Learning에서의 경험

t−2

t−1

t

?

t+1

Future Prediction

가장 자연스러워 보이는 self-supervised 목표

개념도

Idea

같은 과거, 여러 미래

과거 64일

가능한 미래 경로

같은 과거에서도 미래는 여러 갈래 · 정확한 예측은 ill-posed

개념도

Idea

같은 문제의식

ECCV 2026 keynote 슬라이드: Self-Supervised Learning by Generative Prediction

Yann LeCun · ECCV 2026 Keynote

Generative prediction 기반 SSL

Text · 이산 시퀀스: 효과적

고차원 · 연속 · noisy 데이터: 한계

예: 이미지 · 영상 · 센서 · 과학 측정

→ 금융 시계열도 연속적이고 noisy한 데이터

사진: ECCV 2026 Keynote (Malmö)

Idea

출발점: Contrastive Learning

Twelve Labs에서의 video-text contrastive learning · 대표 사례 CLIP

CLIP의 image-text contrastive pre-training 구조

Positive pair는 가깝게

배치 안의 나머지는 멀게

대각선 = positive pairs

그림: CLIP, A. Radford et al., ICML 2021

Idea

Asset retrieval에는

‘비슷한 자산’의 ground-truth pair가 없음

섹터 라벨은 있지만, co-movement의 정답은 아님

Idea

Self-Supervised Learning: 데이터의 성질을 학습 신호로

같은 사진의 서로 다른 augmentation같은 사진의 서로 다른 augmentation같은 사진의 서로 다른 augmentation같은 사진의 서로 다른 augmentation

Augmentation Invariance

SimCLR · DINO

I-JEPA: context block으로 target block의 representation을 예측

Context로 Target Representation 예측

I-JEPA

SimCLR: T. Chen et al., ICML 2020 · DINO: M. Caron et al., ICCV 2021 (self-distillation) · 그림: I-JEPA, M. Assran et al., CVPR 2023 · 왼쪽 사진: 3D Gaussian Splatting (Kerbl et al., 2023) 장면 렌더링과 그 augmentation

Idea

자산 데이터의 성질: Co-movement

Co-movement

공통 factor exposure가 만드는 구조

사람의 라벨 없이
미래 구간 수익률에서 직접 계산

왼쪽은 개념도 · 공통 요인과 수익률의 동조: E. Fama, K. French, Journal of Financial Economics (1993)

Idea

미래 수익률의 값을 직접 예측하는 것은 포기하되,

어떤 자산끼리 미래에 함께 움직일지는 학습

미래 64일 수익률의 correlation → embedding 공간의 거리

Idea

Factor Model

ri  =  βif  +  εir_i \;=\; \beta_i \, f \;+\; \varepsilon_i

βi\beta_i factor exposure

ff factor return

εi\varepsilon_i idiosyncratic return

rir_i의 값을 맞히려면 미래 ff의 값이 필요

미래 factor의 방향과 크기 · 과거 차트로는 거의 알 수 없음

rir_i: 자산 ii의 미래 수익률 · 단순화한 single-factor model, factor가 여러 개여도 같은 논리 · 공통 요인: E. Fama, K. French (1993)

Idea

Correlation 유도

가정 Cov(f,εi)=0\mathrm{Cov}(f, \varepsilon_i) = 0 Cov(εi,εj)=0  (ij)\mathrm{Cov}(\varepsilon_i, \varepsilon_j) = 0 \ \ (i \neq j)
Cov(ri,rj)=βiβjVar(f)+βiCov(f,εj)+βjCov(εi,f)+Cov(εi,εj)=0  =  βiβjσf2Var(ri)=βi2σf2+σi2corr(ri,rj)=Cov(ri,rj)Var(ri)Var(rj)  =  βiβjσf2(βi2σf2+σi2)(βj2σf2+σj2)\begin{aligned} \mathrm{Cov}(r_i, r_j) &= \beta_i\beta_j\,\mathrm{Var}(f) + \underbrace{\beta_i\,\mathrm{Cov}(f, \varepsilon_j) + \beta_j\,\mathrm{Cov}(\varepsilon_i, f) + \mathrm{Cov}(\varepsilon_i, \varepsilon_j)}_{=\,0} \;=\; \beta_i\beta_j\,\sigma_f^2 \\[10pt] \mathrm{Var}(r_i) &= \beta_i^2\,\sigma_f^2 + \sigma_i^2 \\[10pt] \mathrm{corr}(r_i, r_j) &= \frac{\mathrm{Cov}(r_i, r_j)}{\sqrt{\mathrm{Var}(r_i)\,\mathrm{Var}(r_j)}} \;=\; \frac{\beta_i\beta_j\,\sigma_f^2}{\sqrt{(\beta_i^2\sigma_f^2+\sigma_i^2)\,(\beta_j^2\sigma_f^2+\sigma_j^2)}} \end{aligned}

미래 ff가 어느 쪽으로 움직일지는 식에 없음 · exposure β\beta와 분산만 남음

Population 기준 · σf2\sigma_f^2: factor variance, σi2\sigma_i^2: idiosyncratic variance · factor가 여러 개면 Cov(ri,rj)=βiΣfβj\mathrm{Cov}(r_i, r_j) = \beta_i^{\top}\Sigma_f\,\beta_j

Idea

비유: 같은 배

파도에 흔들리는 두 척의 배: 같은 배의 승객은 함께 기울고, 다른 배는 반대로 기욺

파도가 어느 쪽으로 칠지는 몰라도

같은 배에 탄 사람들은
함께 흔들림

배 = factor exposure β\beta

파도 = factor return ff

Idea

이 정의로 얻는 것

1

Retrieval = 학습 목표

embedding에서 가까운 자산이 앞으로 함께 움직이도록 학습

2

Label-free Contrastive Learning

target은 사람 라벨이 아니라 데이터의 미래 구간에서 계산

3

Future-Aligned Representation

값 대신 미래의 관계에 정렬

Method

FASCL Overview

같은 날짜의
asset batch

B = 4,096

Past 64 days

xix_i

Encoder

zi=gθ(xi)z_i = g_\theta(x_i)

Similarity distribution

qijexp(sim(zi,zj)/τ)q_{ij} \propto \exp\big(\mathrm{sim}(z_i, z_j)/\tau\big)

Future 64-day
returns rir_i

training only

Pairwise correlation

Cij=corr(ri,rj)C_{ij} = \mathrm{corr}(r_i, r_j)

Target distribution

pijexp(Cij/τt)p_{ij} \propto \exp\big(C_{ij}/\tau_t\big)

KL
alignment

minDKL(piqi)\min\, D_{\mathrm{KL}}(p_i \,\|\, q_i)

Inference · Past 64 days만 입력 → embedding 공간의 Top-K

Method

Positive Pair의 기준: 미래 수익률

미래 64일의 움직임이 비슷한 자산끼리 embedding 공간에서 가깝게

A B C A B C

Past 64 days

Future 64 days

t

positive
pair

Embedding space

개념도 · Embedding은 과거 64일만으로 계산하고, 미래 수익률은 학습 target으로만 사용

Method

Soft Target: 미래 추이가 비슷할수록 더 강한 score

Standard Contrastive Learning

Positive · negative가 확정

yij{0, 1}y_{ij} \in \{0,\ 1\}
pos. negative

positive 하나만 1, 나머지는 모두 0

FASCL

미래 추이의 유사도에 따른 연속 score

pij    exp ⁣(Cij/τt)p_{ij} \;\propto\; \exp\!\big(C_{ij}/\tau_t\big)

future correlation 높은 순 →

미래가 비슷할수록 더 높은 target score

막대는 개념도 · CijC_{ij}: 자산 iijj의 미래 64일 일간 수익률 correlation · target temperature τt=0.05\tau_t = 0.05

Method

Training: 두 분포 맞추기

pip_i

Target

future return correlation

qiq_i

Prediction

embedding similarity

LSC  =  1Bi=1BDKL(piqi)\mathcal{L}_{\mathrm{SC}} \;=\; \frac{1}{B}\sum_{i=1}^{B} D_{\mathrm{KL}}\big(p_i \,\|\, q_i\big)

BB: 같은 날짜에서 뽑은 자산 수 (4,096) · ppqq는 자기 자신을 뺀 batch 안의 자산에 대해 정규화 (논문 §3.3)

Evaluation

Metric: Future Return Correlation (FRC@K)

FRC@K  =  1PK(q,k)PKPearson(rq, rk)\mathrm{FRC@}K \;=\; \frac{1}{|\mathcal{P}_K|}\sum_{(q,k)\in\mathcal{P}_K} \mathrm{Pearson}\big(\mathbf{r}_q,\ \mathbf{r}_k\big)

검색된 자산이 query와 미래에 실제로 얼마나 함께 움직였나

2024 test · 같은 시점의 자산끼리만 검색 (same-period retrieval)

r\mathbf{r}: 미래 64일 일간 수익률 · Random retrieval도 약 0.14 (시장 전체의 공통 움직임 때문, 논문 §4.3) · 미국 상장 5,631종목, 학습 2010–2022

Results

Main Result: FRC@1

FASCL 0.443 · Pearson 0.398 · +11% · p < 0.001

Oracle upper bound 0.691 ▼ ▼ Shape · pattern similarity 기반 상위 방법 · 0.26–0.30
FASCL ours
0.443
Pearson historical corr.
0.398
MOMENT (FT) 342M fine-tuned
0.295
SoftCLT SSL
0.291
MOMENT foundation
0.289
DTW training-free
0.289
CoST SSL
0.283
TS2Vec SSL
0.279
Chronos foundation
0.268
PatchTST forecasting
0.253
iTransformer forecasting
0.248
TimesNet forecasting
0.211
SimStock financial
0.187
TNC SSL
0.157
Random lower bound
0.141
0.00.20.40.6

K = 5, 10, 20에서도 FASCL 1위 · Pearson 2위 (Table 1) · 95% CI 비중첩, bootstrap 1,000회 · Oracle: 실현된 미래 correlation으로 후보를 정렬한 상한

Results

Pearson 대비 향상의 의미

Method 무엇을 비슷하다고 보나 FRC@1

Shape · pattern similarity

DTW · time-series SSL · foundation model

과거 64일의 모양이 닮은 자산

0.26–0.30

Pearson

historical correlation

과거 64일 동안 가장 함께 움직인 자산

0.398

FASCL

future-aligned embedding

같은 과거 64일로, 미래에 함께 움직일 자산을 학습

0.443

현재 상태의 유사성만으로는 놓치는 co-movement를 일부 포착

Pearson 대비 +11% · p < 0.001 · 두 방법 모두 과거 64일만 입력

Shape · pattern similarity: DTW 0.289, TS2Vec 0.279, CoST 0.283, SoftCLT 0.291, Chronos 0.268, MOMENT 0.289, MOMENT full fine-tuning 0.295 · 2024 test (Table 1)

Results

Emergent Sector Structure

Sector · industry 정보 없이 학습한 embedding의 t-SNE

Sector별로 색칠한 FASCL embedding의 t-SNE
  • Basic Materials 246
  • Consumer Discretionary 2,587
  • Consumer Staples 332
  • Energy 452
  • Finance 3,272
  • Health Care 2,473
  • Industrials 1,475
  • Miscellaneous 145
  • Real Estate 678
  • Technology 1,740
  • Telecommunications 246
  • Utilities 465

2024 test · Sector: NASDAQ screener 분류, test 표본의 86%에만 존재 (나머지는 상장폐지 종목) · 범례 숫자는 표본 수 · 그림: 논문 Fig. 1a

Results

Thematic Structure: ETF Constituents

ETF 정보도 학습에 사용하지 않음 · constituent만 색으로 표시

ETF constituent를 표시한 FASCL embedding의 t-SNE
  • Banking (KBE) 40
  • Health Care (XLV) 40
  • REITs (VNQ) 35
  • Semiconductor (SOXX) 32
  • Energy (XLE) 20
  • Magnificent 7 7
  • 그 외 종목

Semiconductor · Banking · Energy · REITs

기간마다 촘촘한 cluster

Magnificent 7

여러 업종이지만 semiconductor 옆

세 영역은 test 기간 3개 (같은 기간끼리만 비교) · Constituent: 공개 보유 종목 snapshot과 test universe의 교집합, 범례 숫자는 종목 수 (Supplementary S6) · 그림: 논문 Fig. 1b

Results

Future Return Structure

Embedding의 t-SNE를 실현된 5일 미래 수익률로 색칠

실현된 5일 미래 수익률로 색칠한 FASCL embedding의 t-SNE

넓은 spatial gradient

양의 수익률과 음의 수익률이 서로 다른 영역에 모임

경계 영역은 혼재

국소적으로는 부호가 섞임

2024 test 16,370 samples · 색: 실현된 5일 미래 수익률 (0 중심 diverging scale) · 학습 target은 미래 64일 correlation · 그림: 논문 Fig. 2

Results

Evaluation Metrics

모두 query별 top-K 검색 결과로 계산 · 높을수록 좋음

FRC@K Future Return Correlation

미래에 얼마나 함께 움직였나

미래 64일 일간 수익률의 Pearson correlation 평균

평균을 뺀 일별 움직임의 동조

SP@K Sector Precision

같은 섹터의 자산을 찾았나

top-K 중 query와 섹터가 같은 비율 · NASDAQ screener 분류

보조 지표 · 섹터 일치가 곧 co-movement는 아님

TC@K Trend Consistency

같은 방향으로 움직였나

h일 누적 수익률(h = 1 · 5 · 20 · 60)의 부호가 query와 같은 비율

방향만 봄 · market drift에 민감 (Random 48–59%)

IC@K Information Coefficient

Peer 성과 순위와 query 성과 순위가 일치하나

top-K의 평균 h일 수익률과 query의 h일 수익률 사이 Spearman correlation, 모든 query에 걸쳐 계산

Cross-sectional · 예측이 아니라 grouping 품질 진단

Results

Full Results: FRC@K · SP@K

2024 test · 굵게: 열별 최고 · 밑줄: 차순위

FRC@K SP@K (%)
Method K=1K=5K=10K=20 K=1K=5K=10K=20
Random 0.1410.1430.1430.14314.615.014.914.9
DTW 0.2890.2620.2520.24227.825.524.423.4
Pearson 0.3980.3740.3630.35142.840.538.636.7
TS2Vec 0.2790.2570.2470.23728.726.225.224.2
CoST 0.2830.2590.2510.24329.727.326.325.1
SoftCLT 0.2910.2680.2580.24628.626.325.424.2
TNC 0.1570.1580.1590.15817.416.917.016.9
PatchTST 0.2530.2360.2280.22024.823.122.321.5
TimesNet 0.2110.1980.1940.18921.220.820.420.0
iTransformer 0.2480.2290.2210.21225.423.823.122.1
SimStock 0.1870.1840.1820.18097.396.896.696.5
Chronos 0.2680.2500.2410.23127.826.425.524.5
MOMENT 0.2890.2660.2550.24429.127.326.024.8
MOMENT (FT) 0.2950.2700.2580.24631.028.226.925.6
FASCL 0.4430.4230.4080.39053.450.247.845.3
Oracle (upper bound) 0.6910.6490.6240.596

Oracle: 실현된 미래 correlation으로 후보를 정렬한 상한 · SP@K: 섹터 정보가 있는 86% 표본 기준 · SimStock은 섹터를 입력으로 사용 (Table 1)

Results

Full Results: TC@K (%)

FASCL 16개 설정 중 13개 1위 · 나머지 3개(5-day · K=5, 10, 20)는 Pearson보다 최대 0.6pp 낮음

1-day5-day20-day60-day
Method K=1K=5K=10K=20K=1K=5K=10K=20K=1K=5K=10K=20K=1K=5K=10K=20
Random 48.848.248.248.358.458.658.758.952.953.353.253.251.652.152.052.0
DTW 54.753.553.152.564.163.362.962.560.158.657.857.060.058.057.356.8
Pearson 59.457.757.056.269.568.067.566.965.764.263.662.964.362.661.760.9
TS2Vec 54.153.453.052.464.463.262.762.359.858.157.456.759.658.257.757.2
CoST 54.453.753.152.664.363.363.062.659.358.257.757.359.458.057.557.0
SoftCLT 55.353.853.152.564.363.763.362.859.558.357.857.260.258.357.757.0
TNC 48.848.848.848.960.259.459.259.253.753.553.353.353.053.052.852.9
PatchTST 53.052.151.651.262.562.061.761.359.157.957.456.858.157.056.656.1
TimesNet 51.751.350.950.761.461.361.060.756.255.455.054.755.454.654.354.2
iTransformer 53.252.051.851.463.262.562.261.757.756.956.556.057.456.756.055.5
SimStock 49.749.249.249.160.160.160.260.255.154.654.754.655.755.155.054.8
Chronos 54.253.452.952.663.663.062.662.258.957.757.256.658.757.657.456.9
MOMENT 55.353.653.052.465.063.463.162.759.658.457.657.160.058.758.057.3
MOMENT (FT) 55.353.853.352.664.163.662.962.559.758.757.957.260.258.557.857.2
FASCL 60.458.858.157.269.767.666.966.567.164.664.063.566.063.562.662.0

TC@K: 검색된 자산의 미래 누적 수익률 부호가 query와 같은 비율 · Random 행은 50%가 아니라 market drift를 반영 (Table 2)

Results

Full Results: IC@K

FASCL 16개 설정 모두 1위 · Pearson 대비 +3%에서 +23%

1-day5-day20-day60-day
Method K=1K=5K=10K=20K=1K=5K=10K=20K=1K=5K=10K=20K=1K=5K=10K=20
Random 0.0610.0730.1000.1250.2100.3060.3430.3710.0290.0770.1050.1270.0420.0750.0840.095
DTW 0.1420.1790.1960.2050.3180.3940.4170.4310.1780.2140.2290.2330.1700.1700.1740.201
Pearson 0.2490.2760.2910.3000.4180.4750.4900.4970.2930.3450.3650.3870.2600.3010.3080.320
TS2Vec 0.1530.1990.2190.2280.3270.4070.4240.4410.1730.2120.2320.2430.1650.1930.2130.229
CoST 0.1500.2030.2280.2370.3240.4050.4320.4500.1670.2130.2480.2650.1740.1880.2070.221
SoftCLT 0.1650.1990.2050.2190.3250.4060.4330.4430.1600.2130.2370.2430.1760.1890.2010.216
TNC 0.0610.0860.1120.1490.2530.3440.3780.4000.0610.0870.0980.1290.0620.0800.0970.118
PatchTST 0.1170.1470.1610.1730.2870.3600.3940.4130.1470.1900.2110.2290.1430.1660.1800.193
TimesNet 0.1010.1570.1720.1860.2660.3620.3920.4070.1030.1450.1660.1870.0940.1170.1300.144
iTransformer 0.1310.1740.1990.2100.3150.3940.4160.4290.1410.1880.2110.2310.1300.1580.1750.189
SimStock 0.0780.1050.1360.1570.2480.3420.3850.4120.0910.1300.1630.1840.1090.1380.1530.180
Chronos 0.1410.1860.2050.2230.3150.3950.4190.4410.1620.2140.2350.2440.1510.1940.2130.231
MOMENT 0.1560.1930.2160.2280.3340.4080.4320.4430.1580.2090.2220.2440.1730.2020.2190.234
MOMENT (FT) 0.1610.1990.2190.2330.3320.4060.4250.4420.1760.2310.2400.2470.1880.2060.2110.217
FASCL 0.2910.3400.3420.3380.4590.4990.5060.5130.3550.3950.4070.4220.3160.3550.3660.370

IC@K: 상위 K개 자산의 미래 수익률 평균과 query 미래 수익률 사이의 cross-sectional Spearman correlation · 예측이 아니라 grouping 품질의 진단 (Table 3)

Results

Co-movement Check: Tracking Error

Query 자산과 검색된 K개 equal-weight basket의 일간 수익률 차이 · 낮을수록 잘 동조

FASCL Pearson Query별 일간 표준편차의 중앙값
K=1
2.15% −15.7%
2.55%
K=5
1.92% −11.5%
2.17%
K=10
1.88% −7.8%
2.04%
K=20
1.86% −4.6%
1.95%

모든 K에서 14개 비교 방법 중 가장 낮음 (Table 6)

Closing

미래 수익률만 Label로 쓴 이유

가격 신호 모듈에 뉴스 · 문서 · 거시 정보 모듈이 연결될 수 있음을 나타낸 그림

1Domain Knowledge

다른 정보를 활용할 경험의 부족

뉴스 · 재무 · 거시 정보 등

2Signal-First

신호 자체의 성질에서 가치를 찾는 연구

Video에서도 multimodal보다 video 고유의 성질을 활용

3Building Block

다른 정보를 붙이는 출발점

신호만으로 얻은 결과 · 더 큰 시스템에 쉽게 쓰는 block

Closing

Takeaways

Video Representation Learning

정확한 미래보다 무엇을 목표로 삼을지

Self-supervised learning의 경험

Asset Retrieval

값 대신 관계 앞으로 함께 움직임

FRC · IC 모든 설정 1위 · 14개 방법 대비

Next

관찰로만 알 수 있는 시스템의 동역학

World Model · AI for Science

한 분야의 당연함, 다른 분야의 돌파구

감사합니다

이형민 · 서울과학기술대학교 전자공학과

hyeongmin.lee@seoultech.ac.kr

ViViD Lab · vivid.seoultech.ac.kr

← All decks
01 / 00
Scroll · ↓ · Space