机器学习---facebook的案例学习

复制代码
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))
相关推荐
开MINI的工科男9 分钟前
深蓝学院-- 量产自动驾驶中的规划控制算法 小鹏
人工智能·机器学习·自动驾驶
AI大模型知识分享1 小时前
Prompt最佳实践|如何用参考文本让ChatGPT答案更精准?
人工智能·深度学习·机器学习·chatgpt·prompt·gpt-3
张人玉3 小时前
人工智能——猴子摘香蕉问题
人工智能
草莓屁屁我不吃3 小时前
Siri因ChatGPT-4o升级:我们的个人信息还安全吗?
人工智能·安全·chatgpt·chatgpt-4o
小言从不摸鱼3 小时前
【AI大模型】ChatGPT模型原理介绍(下)
人工智能·python·深度学习·机器学习·自然语言处理·chatgpt
AI科研视界4 小时前
ChatGPT+2:修订初始AI安全性和超级智能假设
人工智能·chatgpt
霍格沃兹测试开发学社测试人社区4 小时前
人工智能 | 基于ChatGPT开发人工智能服务平台
软件测试·人工智能·测试开发·chatgpt
小R资源4 小时前
3款免费的GPT类工具
人工智能·gpt·chatgpt·ai作画·ai模型·国内免费
artificiali7 小时前
Anaconda配置pytorch的基本操作
人工智能·pytorch·python
酱香编程,风雨兼程7 小时前
深度学习——基础知识
人工智能·深度学习