로그를 문장으로 바꾸는 순간, 임베딩이 살아난다
들어가며
LLM 임베딩을 고객 행동 분석에 쓰려는 순간,
반드시 마주치는 질문이 있다.
“이 수많은 행동 로그를
어떤 텍스트로 만들어야 하지?”
이 단계는 단순한 전처리가 아니다.
임베딩 품질의 70% 이상이 여기서 결정된다.
한 문장 요약
행동 시퀀스를 텍스트로 만드는 일은
데이터를 ‘설명 가능한 맥락’으로 바꾸는 작업이다.
1.왜 굳이 ‘텍스트’여야 할까?
LLM은 본질적으로 다음에 특화되어 있다.
- 순서(sequence)
- 맥락(context)
- 서술(narrative)
- 원인–결과
행동 로그는 사실 이미 이야기다.
탐색 → 비교 → 망설임 → 구매→ 텍스트는 이 흐름을 LLM이 가장 잘 이해하는 포맷이다.
2.가장 단순한 시작: 행동 나열형 텍스트
기본 포맷
세탁기 검색 →
드럼세탁기 상세 조회 →
가격 비교 →
장바구니 담기 →
구매장점
- 구현이 쉽다
- 시간 순서 보존
- baseline으로 충분히 강력
한계
- 행동의 “강도”와 “이유”가 없다
3. 전략 1: 행동을 ‘의미 단위’로 추상화하라
LLM은 이벤트 ID보다 의미 표현을 더 잘 이해한다.
(X) 나쁜 예
EVT_10231 → EVT_40221 → EVT_88210(O) 좋은 예
가전 제품 정보 탐색 →
세탁기 제품 비교 →
구매 의사 형성행동 로그 → 의미 행동(action semantic)
4.전략 2: ‘행동 + 목적’을 함께 써라
같은 행동도 목적이 다르면 의미가 달라진다.
예시
세탁기 검색 (구매 목적)
세탁기 검색 (고장 원인 확인 목적)또는 문장형으로:
세탁기 구매를 고려하며 제품 정보를 탐색함→ 행동 + 의도(intent) 는
임베딩에서 가장 강력한 조합이다.
하지만 아쉽게도 대부분의 경우 이러한 의도 정보는 구하기 어렵다.
5.전략 3: 시간 정보를 자연어로 녹여라
숫자 타임스탬프는 LLM에게 무의미하다.
(X)
2025-01-03 09:12(O)
최근에
하루 뒤에
며칠 동안 반복적으로
오랜만에예시 문장:
최근 며칠 동안 세탁기 제품을 반복적으로 비교함→ 상대 시간 표현이 핵심
6. 전략 4: 빈도와 강도를 서술로 표현하라
LLM은 숫자보다 언어적 강도 표현에 강하다.
|
로그 |
텍스트 표현 |
|---|---|
|
1회 |
가끔 |
|
3~4회 |
여러 번 |
|
10회+ |
반복적으로 |
예:
세탁기 리뷰를 여러 번 확인함7.전략 5: 너무 많은 행동은 요약하라
LLM 임베딩은 핵심 흐름을 좋아한다.
방법 1. 윈도우 요약
- 최근 30일 → 자세히
- 이전 6개월 → 요약
방법 2. 단계 요약
[탐색 단계]
[비교 단계]
[구매 직전 단계]→ 중요한 변화만 남긴다
8.추천되는 텍스트 구조 템플릿
템플릿 A: 나열형 (Baseline)
세탁기 검색 →
제품 비교 →
구매템플릿 B: 문장형 (권장)
최근 세탁기 구매를 고려하며
여러 제품을 비교하고
가격과 리뷰를 확인한 뒤
구매로 이어짐템플릿 C: 요약 + 상세 혼합형 (실무 최적)
[최근 행동 요약]
세탁기 구매를 적극적으로 검토 중
[주요 행동]
- 프리미엄 드럼세탁기 상세 비교
- 가격 및 사용자 리뷰 반복 확인9. 이 전략이 임베딩에 주는 효과
- 행동 시퀀스 간 의미적 유사도 향상
- 구매 직전 / 탐색 단계 자연 분리
- 반대 행동도 같은 맥락으로 묶임
- 페르소나 벡터·의미 축 추출 용이
10. 흔한 실패 패턴
(X) 로그를 그대로 문자열로 연결
(X) 이벤트 ID 남발
(X) 시간·빈도 전부 숫자로 표현
(X) 모든 행동을 동일 가중치로 취급
→ 결과: “임베딩은 나오지만, 의미는 없다”
한 문장으로 정리하면
좋은 행동 텍스트란
‘무엇을 했는지’가 아니라
‘왜 그렇게 흘러왔는지’를 말해준다.
마치며
고객 행동 시퀀스를 텍스트로 만드는 순간,
로그는 더 이상 데이터가 아니다.
- 하나의 이야기
- 하나의 흐름
- 하나의 의도
이 텍스트 위에서
LLM 임베딩, 의미 축, 페르소나 벡터,
그리고 설명 가능한 추천까지
모두 자연스럽게 연결된다.