Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

图书推荐系统 | book

Multi-source book recommendation system.

A recommendation system fusing book tags, content and ratings — with data analysis, experiments and explainability.

License Python


book is a multi-source book recommendation system — it fuses book tags, content and rating data for recommendation, with data preprocessing, analysis, experiments and explainability modules.

Note

中文项目:基于多源信息融合的书籍推荐系统。


Quickstart

git clone https://github.com/Windyhhh/book.git
cd book

# install dependencies
python install_dependencies.py

# run the recommendation demo
python demo_recommendation_system.py

# run the full experiment
python main_experiment.py

Features

  • Multi-source fusion — tags, content, ratings.
  • Recommendation demodemo_recommendation_system.py.
  • Explainabilityexplainability.py for interpretable recommendations.
  • Evaluationevaluation.py for accuracy.

Project Structure

book/
├── demo_recommendation_system.py
├── main_experiment.py
├── data_analysis.py / data_preprocessing.py
├── evaluation.py / explainability.py
├── install_dependencies.py
└── books.csv / book_tags.csv

技术实现细节

架构概览

项目采用模块化设计,核心目录包括:基于多源信息融合的书籍推荐系统研究

核心类与模块

  • DataAnalyzer
  • DataPreprocessor
  • SimpleBookRecommendationSystem

关键函数

  • load_data, basic_statistics, data_quality_analysis, visualize_data_distribution, clean_books_data, process_tags_data, create_book_tag_matrix, create_content_features, create_user_item_matrix, prepare_content_features

技术栈与依赖

核心框架/库:NumPy, matplotlib, pandas, scikit-learn, seaborn

主要 import

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn.preprocessing import StandardScaler, LabelEncoder
from sklearn.feature_extraction.text import TfidfVectorizer
import warnings
import pandas as pd
import numpy as np
from sklearn.preprocessing import StandardScaler, LabelEncoder

实现要点

  • DataAnalyzer 为核心类,封装主要业务逻辑
  • 通过 load_data 等函数实现核心流程编排
  • 基于 NumPy, matplotlib, pandas 构建,技术栈成熟稳定
  • 代码结构清晰,模块间低耦合,便于扩展和维护

License

MIT — free to use, modify and distribute.

About

图书推荐系统 — 融合标签/内容/评分的多源推荐

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages