import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sbn
from sklearn.model_selection import train_test_split,GridSearchCV
from sklearn.preprocessing import StandardScaler
from sklearn.neighbors import KNeighborsClassifier
# 使用pandas读取csv格式的文件
'''
数据量过多,使用数据过多会计算较慢,所以使用较少数据进行学习
'''
trainData=pd.read_csv("train.csv")
# 使用 query 查询出部分数据 71664
trainData = trainData.query("x>2.0 & x<2.5 & y>2.0 &y<2.5")
# 去掉出现次数较少的place 使用group分组
# 统计出出现的次数
trainDatacount=trainData.groupby("place_id").count()
# 选择出出现次数大于3的t
trainDatacount= trainDatacount[trainDatacount["row_id"]>3]
#将低于3的地方清理掉
trainData = trainData[trainData["place_id"].isin(trainDatacount.index)]
#数据处理是关键
#修改时间 将绝对时间改变为可以使用的时间----进行训练时可以使用到时间
time=pd.to_datetime(trainData["time"],unit="s")
time=pd.DatetimeIndex(time)
trainData["day"]=time.day
trainData["hour"]=time.hour
trainData["weekday"]=time.weekday
# 确定特征值和目标值
x = trainData[["x","y","accuracy","hour","day","weekday"]]
y = trainData["place_id"]
# 划分训练集和测试集 使用 sklearn.model_selection import train_test_split
x_train,x_test,y_train,y_test=train_test_split(x,y,random_state=20,train_size=0.25)
# 特征处理
#实例化转换器----将数据标准化或者归一化
transfer=StandardScaler()
# 将数据标准化
x_train=transfer.fit_transform(x_train)
x_test=transfer.transform(x_test)
# 进行模型训练
# 实例化一个模型对象
estimator = KNeighborsClassifier()
# 网格搜索,选出结果最好的参数
param_grid={"n_neighbors":[1,3,5,7,9]}
estimator= GridSearchCV(estimator,param_grid=param_grid,cv=10,n_jobs=-1)
# 模型训练
estimator.fit(x_train,y_train)
# 模型评估
print(estimator.best_estimator_)
print(estimator.best_params_)
print(estimator.best_score_)
print(estimator.predict(x_test))
机器学习---facebook的案例学习
我叫小邋遢2023-08-12 10:03
相关推荐
智驱力人工智能10 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享qq_1601448710 小时前
亲测!2026年零基础学AI的入门干货,新手照做就能上手Howie Zphile10 小时前
全面预算管理难以落地的核心真相:“完美模型幻觉”的认知误区人工不智能57710 小时前
拆解 BERT:Output 中的 Hidden States 到底藏了什么秘密?盟接之桥10 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)kfyty72510 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案h64648564h10 小时前
CANN 性能剖析与调优全指南:从 Profiling 到 Kernel 级优化数据与后端架构提升之路10 小时前
论系统安全架构设计及其应用(基于AI大模型项目)忆~遂愿10 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略Liue6123123110 小时前
YOLO11-C3k2-MBRConv3改进提升金属表面缺陷检测与分类性能_焊接裂纹气孔飞溅物焊接线识别