安徽科技学院 信网学院网络文化节 周文重

#encoding=utf-8
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
import seaborn as sns
import argparse
import random
import numpy as np
from sklearn.svm import SVC #从sklearn中导入SVM
from sklearn.datasets import *
from sklearn.model_selection import train_test_split
from loguru import logger
from sklearn import svm

‘’’
--------获取数据--------
‘’’
X,y = make_blobs(n_samples=1000,centers=2,random_state=8) #make_blobs生成聚类模型数据,随机生成2类数据,一共含1000个样本

“”"
--------训练SVM模型--------
kernel=‘linear’ 核函数选择Linear核,主要用于线性可分的情形。参数少,速度快。
C=1000 惩罚参数,C越大,相当于惩罚松弛变量,希望松弛变量接近0,即对误分类的惩罚增大,趋向于对训练集全分对的情况,这样对训练集测试时准确率很高,但泛化能力弱。C值小,对误分类的惩罚减小,允许容错,将他们当成噪声点,泛化能力较强。
“”"

clf = svm.SVC(kernel=‘linear’,C=1000) #SVC时SVM的一种Type,是用来做分类的
clf.fit(X,y) #输入模型数据,进行训练
print(“模型参数W:”,clf.coef_) #模型参数W
print(“模型参数b:”,clf.intercept_) #模型参数b
print(“支持向量为:”,clf.support_vectors_) #输出支持向量
xpredict = [1,1]
xpredict = np.array(xpredict).reshape(1,-1) #使用numpy将矩阵变为一行一列的列向量
print(xpredict,“预测为:”,clf.predict(xpredict),“类别”)#输出标签
xpredict = [10,10]
xpredict = np.array(xpredict).reshape(1,-1) #使用numpy将矩阵变为一行一列的列向量
print(xpredict,“预测为:”,clf.predict(xpredict),“类别”)#输出标签

“”"
--------可视化部分--------
“”"
plt.scatter(X[:,0],X[:,1],c=y,cmap=plt.cm.Paired) #X[:,0]就是取所有行的第0个数据, X[:,1] 就是取所有行的第1个数据。
#绘制SVM决策函数
a_x = plt.gca()
xlim = a_x.get_xlim() #获取X轴的范围
ylim = a_x.get_ylim() #获取Y轴的范围
#创建坐标方格以评估模型
xx = np.linspace(xlim[0],xlim[1],500) # 返回500个均匀分布的样本,在[xlim[0],xlim[1]]范围内
yy = np.linspace(ylim[0],ylim[1],500)
YY,XX = np.meshgrid(yy,xx)
xy = np.vstack([XX.ravel(),YY.ravel()]).T
Z = clf.decision_function(xy).reshape(XX.shape)
#绘出支持向量的分割界和分割面(二维分割面为直线)
a_x.contour(XX,YY,Z,colors=‘k’,levels=[-1,0,1],alpha=0.6,linestyles=[’–’,’-’,’–’])
#绘出支持向量,用红色表示
a_x.scatter(clf.support_vectors_[:,0],clf.support_vectors_[:,1],linewidth=1,facecolors=‘red’)
plt.show() #将结果可视化输出`

内容概要:本文详细介绍了一个基于C++的美食推荐分析系统的设计与实现,涵盖项目背景、目标、挑战及解决方案,并深入阐述了系统的整体架构与关键技术模块。系统通过用户行为数据建模、菜品内容特征分析、混合推荐算法(如基于内容与协同过滤)、用户画像动态演化、高效数据结构与并发处理等手段,实现个性化、健康化、多样化的美食推荐。文中提供了核心数据结构(如用户、菜品、评分)的设计思路及关键算法的C++代码示例,包括基于内容的推荐、协同过滤、多样性优化、健康饮食推荐等功能,展示了C++在高性能智能推荐系统中的应用潜力。同时,系统注重数据安全、隐私保护、跨平台部署与反馈闭环机制,具备良好的实用性与扩展性。; 适合人群:具备一定C++编程基础,熟悉数据结构与面向对象编程的高校学生、软件工程师或从事推荐系统研发的技术人员,尤其是对智能餐饮、个性化推荐、健康管理系统感兴趣的开发者。; 使用场景及目标:①学习如何使用C++构建高性能推荐系统;②掌握混合推荐算法在实际项目中的设计与融合方法;③理解用户画像、兴趣演化、冷启动等问题的工程解决方案;④应用于外卖平台、健康管理APP、智能餐饮终端等场景,提升个性化服务与运营效率。; 阅读建议:此资源以实际项目为导向,结合模型设计与代码实现,建议读者在学习过程中动手实践各模块代码,结合数据结构设计与算法逻辑进行调试与优化,并可在此基础上扩展图形界面或集成数据库,全面提升系统工程能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值