장바구니 담기 close

장바구니에 상품을 담았습니다.

파이썬과 JAX로 추천 시스템 구축하기

파이썬과 JAX로 추천 시스템 구축하기

  • 브라이언 비쇼프(Bryan Bischof)
  • |
  • 제이펍
  • |
  • 2025-03-20 출간
  • |
  • 388페이지
  • |
  • 188 X 245 X 18mm
  • |
  • ISBN 9791193926963
판매가

33,000원

즉시할인가

29,700

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
29,700

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

추천 시스템의 비밀을 파헤치는 책
현대 비즈니스 환경에서는 고객의 취향에 맞춘 개인화 추천 시스템(RecSys)이 필수다. 그러나 추천 시스템은 다양한 알고리즘, 데이터 처리 기법, 모델 평가 방식 등 여러 요소가 복합적으로 작용하여 접근하기 어렵고, 기존의 ML 커리큘럼에서는 다루지 않는 경우가 많아 실무자들이 막막함을 느끼기 쉽다.
이 책은 추천 시스템을 구축하는 데 필요한 모든 핵심 요소(데이터 수집, 문제 정의, 모델 선택, 평가, 배포)를 명확하고 체계적으로 설명한다. 파이썬과 JAX를 포함한 실습 예제와 함께, 추천 시스템 분야에서 빠르게 변화하는 기술 동향과 MLOps 도구를 활용하는 방법을 제공함으로써 접근하기 어려웠던 상황을 해소할 수 있도록 돕는다.
이 책은 수십 년간의 추천 시스템 발전을 한 권에 집약한 실용적 지침서다. 추상적인 추천 시스템 개념을 실제 적용 가능한 코드와 사례로 풀어낸 이 책을 통해 추천 시스템을 성공적으로 구축해보자.

대상 독자
추천 시스템의 핵심 개념과 알고리즘을 배우고 직접 구현해보고자 하는 머신러닝 엔지니어
대규모 데이터 처리 및 MLOps 도구를 활용하여 추천 시스템 인프라를 구축하고자 하는 개발자 또는 데이터 과학자
고객 맞춤형 추천 기능을 통해 비즈니스 성과를 높이고자 하는 제품 관리자
추천 시스템의 이론적 배경과 실제 구현 사례를 학습과 연구에 활용하려는 연구원

주요 내용
데이터 및 비즈니스 문제를 RecSys 문제로 전환하기
RecSys 구축을 시작하기 위한 필수 데이터 파악하기
RecSys 문제에 적합한 모델을 정하고, 이를 어떻게 평가해야 하는지 결정하기
모델을 구현하고, 훈련하고, 테스트하고, 배포하기
지표를 추적하여 시스템이 계획대로 작동하는지 확인하기
사용자, 제품, 비즈니스 사례를 파악하면서 시스템을 점진적으로 개선하기

목차

옮긴이 머리말 xii
추천의 글 xiv
베타리더 후기 xv
추천사 xviii
시작하며 xx
감사의 글 xxiii
표지에 대하여 xxv

PART I 워밍업
CHAPTER 1 소개 3
1.1 추천 시스템의 주요 구성 요소 4
__1.1.1 수집기 4
__1.1.2 랭커 4
__1.1.3 서버 4
1.2 가장 간단한 추천 시스템 5
__1.2.1 간단한 추천 시스템 5
__1.2.2 가장 인기 있는 아이템 추천 시스템 6
1.3 JAX에 대한 친절한 소개 8
__1.3.1 기본형, 초기화, 불변성 8
__1.3.2 인덱싱과 슬라이싱 10
__1.3.3 브로드캐스팅 11
__1.3.4 난수 11
__1.3.5 JIT 컴파일 12
1.4 요약 13

CHAPTER 2 사용자-아이템 평점 및 문제 정의하기 15
2.1 사용자-아이템 행렬 15
2.2 사용자-사용자 대 아이템-아이템 협업 필터링 19
2.3 넷플릭스 챌린지 20
2.4 암묵적 평점 21
2.5 데이터 수집 및 사용자 로깅 22
__2.5.1 기록 대상 22
__2.5.2 수집 및 계측 26
__2.5.3 퍼널 27
2.6 비즈니스 인사이트와 사람들이 좋아하는 것 29
2.7 요약 30

CHAPTER 3 수학적 고려 사항 33
3.1 RecSys에서 지프의 법칙과 마태 효과 33
3.2 희소성 37
3.3 협업 필터링을 위한 사용자 유사도 38
__3.3.1 피어슨 상관관계 40
__3.3.2 유사도를 통한 평가 40
3.4 추천 시스템으로서의 탐색-활용 41
__3.4.1 ϵ-그리디 전략 42
__3.4.2 ϵ은 무엇이어야 하나요? 44
3.5 NLP와 RecSys의 관계 45
__3.5.1 벡터 검색 45
__3.5.2 최근접 이웃 검색 47
3.6 요약 47

CHAPTER 4 추천 시스템 설계 49
4.1 온라인 대 오프라인 50
4.2 수집기 51
__4.2.1 오프라인 수집기 51
__4.2.2 온라인 수집기 51
4.3 랭커 52
__4.3.1 오프라인 랭커 52
__4.3.2 온라인 랭커 53
4.4 서버 53
__4.4.1 오프라인 서버 53
__4.4.2 온라인 서버 54
4.5 요약 54

CHAPTER 5 모두 하나로 합치기: 콘텐츠 기반 추천 시스템 55
5.1 버전 관리 소프트웨어 56
5.2 파이썬 빌드 시스템 57
5.3 무작위 아이템 추천 시스템 59
5.4 STL 데이터셋에서 이미지 가져오기 61
5.5 합성곱 신경망의 정의 62
5.6 JAX, Flax, Optax를 사용하여 모델 훈련하기 63
5.7 입력 파이프라인 65
5.8 요약 79

PART II 검색
CHAPTER 6 데이터 처리 83
6.1 시스템에 수분 공급하기 83
__6.1.1 파이스파크 83
__6.1.2 예시: 파이스파크에서의 사용자 유사도 88
__6.1.3 DataLoader 93
__6.1.4 데이터베이스 스냅숏 95
6.2 학습 및 추론을 위한 데이터 구조 97
__6.2.1 벡터 검색 97
__6.2.2 최근접 이웃 근사하기 99
__6.2.3 블룸 필터 100
__6.2.4 흥미로운 점: 추천 시스템으로서의 블룸 필터 101
__6.2.5 피처 스토어 102
6.3 요약 106

CHAPTER 7 모델 및 아키텍처 제공 107
7.1 추천 구조에 따른 아키텍처 107
__7.1.1 아이템별 사용자 추천 108
__7.1.2 쿼리 기반 추천 108
__7.1.3 콘텍스트 기반 추천 110
__7.1.4 시퀀스 기반 추천 111
__7.1.5 왜 추가적인 특징이 필요할까요? 111
7.2 인코더 아키텍처와 콜드 스타트 문제 112
7.3 배포 115
__7.3.1 API로서의 모델 115
__7.3.2 모델 서비스 시작하기 116
__7.3.3 워크플로 오케스트레이션 118
7.4 알림 및 모니터링 120
__7.4.1 스키마 및 선행 조건 121
__7.4.2 통합 테스트 122
__7.4.3 관측 가능성 123
7.5 상용 환경에서의 평가 124
__7.5.1 느린 피드백 125
__7.5.2 모델 지표 125
7.6 지속적인 훈련 및 배포 126
__7.6.1 모델 드리프트 126
__7.6.2 배포 토폴로지 127
7.7 평가 플라이휠 130
__7.7.1 일일 웜 스타트 131
__7.7.2 람다 아키텍처 및 오케스트레이션 132
__7.7.3 로깅 133
__7.7.4 능동 학습 136
7.8 요약 140

CHAPTER 8 모두 하나로 합치기: 데이터 처리 및 집계 추천기 141
8.1 기술 스택 142
8.2 데이터 표현 143
8.3 빅 데이터 프레임워크 145
__8.3.1 클러스터 프레임워크 146
__8.3.2 파이스파크 예제 147
8.4 GloVe 모델 정의 157
__8.4.1 JAX와 Flax 내의 GloVe 모델의 사양 158
__8.4.2 Optax로 GloVe 모델 훈련하기 160
8.5 요약 162

PART III 순위
CHAPTER 9 특징 기반 및 카운팅 기반 추천 165
9.1 이중선형 요인 모델(지표 학습) 166
9.2 특징 기반 웜 스타트 169
9.3 세분화 모델과 하이브리드 171
__9.3.1 태그 기반 추천기 172
__9.3.2 하이브리드화 174
9.4 이중선형 모델의 한계 175
9.5 카운팅 기반 추천기 176
__9.5.1 MPIR로 돌아가기 176
__9.5.2 상관관계 마이닝 178
__9.5.3 동시 출현을 통한 포인트별 상호 정보 180
__9.5.4 동시 출현에서의 유사도 181
__9.5.5 유사도 기반 추천 182
9.6 요약 183

CHAPTER 10 낮은 계수 방법 185
10.1 잠재 공간 185
10.2 도트 곱 유사도 187
10.3 동시 출현 모델 189
10.4 추천기 문제의 계수 줄이기 191
__10.4.1 ALS를 이용한 MF 최적화 193
__10.4.2 MF를 위한 정규화 194
__10.4.3 정규화된 MF 구현 195
__10.4.4 WSABIE 219
10.5 차원 축소 219
__10.5.1 아이소메트릭 임베딩 223
__10.5.2 비선형 국소 측정 가능 임베딩 225
__10.5.3 중심 커널 정렬 226
10.6 선호도 및 판매 확률 227
10.7 추천 시스템 평가를 위한 성향 가중치 적용 228
__10.7.1 성향 229
__10.7.2 심슨의 역설과 교란 완화 231
10.8 요약 233

CHAPTER 11 개인화된 추천 지표 235
11.1 환경 236
__11.1.1 온라인 및 오프라인 236
__11.1.2 사용자 대 아이템 지표 237
__11.1.3 A/B 테스트 238
11.2 재현율과 정밀도 239
__11.2.1 @k 241
__11.2.2 k에서의 정밀도 241
__11.2.3 k에서 재현율 241
__11.2.4 R-정밀도 242
11.3 mAP, MRR, NDCG 242
__11.3.1 mAP 243
__11.3.2 MRR 243
__11.3.3 NDCG 244
__11.3.4 mAP 대 NDCG? 245
__11.3.5 상관계수 246
11.4 친화도에서의 RMSE 247
11.5 적분 형태: AUC 및 cAUC 247
__11.5.1 추천 확률에서 AUC-ROC로 247
__11.5.2 다른 지표와의 비교 248
11.6 BPR 249
11.7 요약 249

CHAPTER 12 순위를 매기기 위한 훈련 251
12.1 추천 시스템에서 순위 결정의 역할 251
12.2 순위 결정 학습 252
12.3 LTR 모델 훈련하기 253
__12.3.1 분류를 통한 순위 결정 253
__12.3.2 회귀를 통한 순위 결정 254
__12.3.3 분류 및 회귀를 통한 순위 결정 255
12.4 WARP 255
12.5 k-차 통계 257
12.6 BM25 258
12.7 멀티모달 검색 261
12.8 요약 261

CHAPTER 13 모두 하나로 합치기: 실험과 순위 결정 263
13.1 실험 팁 263
__13.1.1 단순하게 유지하세요 264
__13.1.2 디버그 출력문 264
__13.1.3 최적화 지연 265
__13.1.4 변경 사항 추적 266
__13.1.5 피처 엔지니어링 사용 266
__13.1.6 이해 지표 대 비즈니스 지표 267
__13.1.7 빠른 반복 수행 267
13.2 스포티파이의 수백만 재생목록 데이터셋 268
__13.2.1 URI 딕셔너리 구축하기 270
__13.2.2 훈련 데이터 구성하기 272
__13.2.3 입력 읽기 275
__13.2.4 문제 모델링하기 277
__13.2.5 손실 함수 구성하기 281
13.3 연습 285
13.4 요약 286

PART IV 서비스 제공
CHAPTER 14 비즈니스 로직 289
14.1 하드 순위 결정 290
14.2 학습된 회피 291
14.3 수동 조정 가중치 292
14.4 재고 건전성 293
14.5 회피 구현하기 294
14.6 모델 기반 회피 296
14.7 요약 297

CHAPTER 15 추천 시스템의 편향성 299
15.1 추천의 다양화 300
__15.1.1 다양성 개선하기 300
__15.1.2 포트폴리오 최적화 적용하기 302
15.2 다중 목적 함수 303
15.3 프레디케이트 푸시다운 304
15.4 공정성 306
15.5 요약 307

CHAPTER 16 가속 구조 309
16.1 샤딩 310
16.2 지역 민감 해싱 310
16.3 k-d 트리 313
16.4 계층적 k-평균 316
16.5 더 저렴한 검색 방법 318
16.6 요약 319

PART V 추천 시스템의 미래
CHAPTER 17 순차적 추천기 323
17.1 마르코프 체인 324
__17.1.1 2차 마르코프 체인 325
__17.1.2 기타 마르코프 모델 326
17.2 RNN 및 CNN 아키텍처 327
17.3 어텐션 아키텍처 329
__17.3.1 셀프 어텐션에 의한 순차적 추천 331
__17.3.2 BERT4Rec 331
__17.3.3 최신성 샘플링 332
__17.3.4 정적 및 순차적 병합 332
17.4 요약 334

CHAPTER 18 추천 시스템의 미래 335
18.1 멀티모달 추천 336
18.2 그래프 기반 추천기 338
__18.2.1 신경망 메시지 전달 339
__18.2.2 애플리케이션 340
__18.2.3 랜덤워크 342
__18.2.4 메타패스와 이질성 343
18.3 LLM 애플리케이션 344
__18.3.1 LLM 추천기 344
__18.3.2 LLM 훈련 345
__18.3.3 추천을 위한 인스트럭트 튜닝 348
__18.3.4 LLM 랭커 348
__18.3.5 AI를 위한 추천 349
18.4 요약 350

찾아보기 352

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.