【机器学习】随机梯度下降-理解与使用

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline

from sklearn.linear\_model import LinearRegression
data = pd.read\_csv('./training data.txt')
data.head(5) 

# 数据映射
for col in data.columns\[0:1\]:  # 遍历所有类名
#     print(col) 
    u = data\[col\].unique()  #  得出每个分类下面的种类名称

    def convert(x):  # 将上面得出的u 进行索引映射

        return np.argwhere(u == x)\[0,0\]  #  将上面得出的u 进行索引映射
    
    data\[col\] \= data\[col\].map(convert)  # 将上面得出的u 进行索引映射
data.head(5)  

# 数据分类   data.iloc\[\[行\],\[列\]
X = data.iloc\[:,\[1,2\]\]
X.head()
print(type(X))
X.head()  

# 数据分类
y = data\['Gender'\]
print(type(y))
y.head()  

# 切分训练集跟测试集
from sklearn.model\_selection import train\_test\_split

X\_train,X\_test,y\_train,y\_test \= train\_test\_split(X,y,test\_size = 0.2)  # 切分
print("训练集大小",X\_train.shape,y\_train.shape)
print("测试集大小",X\_test.shape,y\_test.shape)  

# 2: 梯度下降
from sklearn.linear\_model import LinearRegression
from pylab import mpl
mpl.rcParams\['font.sans-serif'\] = \['FangSong'\] # 指定默认字体
mpl.rcParams\['axes.unicode\_minus'\] = False # 解决保存图像是负号'-'显示为方块的问题
  
# 随机梯度下降  要先对数据进行归一化处理
from sklearn.linear\_model import SGDRegressor

from sklearn.preprocessing import StandardScaler

# 归一化数据
std = StandardScaler()
std.fit(X\_train) # 计算训练集X数据
X\_train\_std \= std.transform(X\_train) # 得出归一化训练集X上的归一化值
X\_test\_std = std.transform(X\_test)   # 得出归一化测试集X上的归一化值

print(X\_train\_std,X\_test\_std)  

# n\_iter代表浏览多少次,默认是5
sgd\_reg = SGDRegressor(n\_iter=100) # 梯度下降对象实例
sgd\_reg.fit(X\_train\_std, y\_train) # 归一化值X训练集 与  y训练集 进行计算训练
res \= sgd\_reg.score(X\_test\_std, y\_test) # 比较y预测值跟训练之的对比值
print("随机梯度下降预测准确率为:",res)

y\_test\_std \= sgd\_reg.predict(X\_test\_std)  # 预测值
y\_test\_std  

# 梯度下降预测集图
y\_data = np.array(y\_test\_std)
x\_data \= np.arange(1,len(y\_test)+1)

z\=np.arange(1,len(y\_test)+1)
m\=np.array(\[0.5\]\*len(y\_test))
plt.plot(z,m,label\="分割线",color='red')

plt.xlabel("人数")
plt.ylabel("预测性别")
plt.title("大于0.5的是男性,小于0.5的是女性")


plt.scatter(x\_data,y\_data)  

最后

感谢你们的阅读和喜欢,我收藏了很多技术干货,可以共享给喜欢我文章的朋友们,如果你肯花时间沉下心去学习,它们一定能帮到你。

因为这个行业不同于其他行业,知识体系实在是过于庞大,知识更新也非常快。作为一个普通人,无法全部学完,所以我们在提升技术的时候,首先需要明确一个目标,然后制定好完整的计划,同时找到好的学习方法,这样才能更快的提升自己。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

四、AI大模型商业化落地方案

img

五、面试资料

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下。
在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值