逻辑斯特回归

这篇具有很好参考价值的文章主要介绍了逻辑斯特回归。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

*分类是离散的,回归是连续的

下载数据集

train=True:下载训练集

逻辑斯特回归,回归,数据挖掘,人工智能

逻辑斯特回归,回归,数据挖掘,人工智能

逻辑斯蒂函数保证输出值在0-1之间

能够把实数值映射到0-1之间

逻辑斯特回归,回归,数据挖掘,人工智能

 导函数类似正态分布逻辑斯特回归,回归,数据挖掘,人工智能

 其他饱和函数sigmoid functions

循环神经网络经常使用tanh函数

逻辑斯特回归,回归,数据挖掘,人工智能

与线性回归区别

塞戈马无参数,构造函数无区别

逻辑斯特回归,回归,数据挖掘,人工智能

 更改损失函数MSE->BCE损失(越小越好)

分布的差异:KL散度,cross-entropy交叉熵 

二分类的交叉熵逻辑斯特回归,回归,数据挖掘,人工智能

 逻辑斯特回归,回归,数据挖掘,人工智能

逻辑斯特回归,回归,数据挖掘,人工智能

# -*- coding: utf-8 -*-
# @Time    : 2023-07-18 20:26
# @Author  : yuer
# @FileName: exercise06.py
# @Software: PyCharm
import matplotlib.pyplot as plt
import numpy as np
import torch

# 数据集
x_data = torch.Tensor([[1.0], [2.0], [3.0]])
y_data = torch.Tensor([[0], [0], [1]])


# 先根据x算出y值再根据y的范围找到分类

class logisticRegressionModel(torch.nn.Module):
    def __init__(self):
        super(logisticRegressionModel, self).__init__()
        self.linear = torch.nn.Linear(1, 1)
        # x_data,y_data都是一维,与线性回归相比构造没有函数区别

    def forward(self, x):
        y_pred = torch.sigmoid(self.linear(x))
        return y_pred


model = logisticRegressionModel()

# 默认情况size_average=True 即loss是1/n倍的,False设置loss不除n
criterion = torch.nn.BCELoss(size_average=False)
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)
# SGD梯度下降优化方法 初始化w,b都为0

for epoch in range(1000):
    y_pred = model(x_data)
    loss = criterion(y_pred, y_data)
    print(epoch, loss.item())

    optimizer.zero_grad()  # 清空梯度
    loss.backward()  # 反馈算梯度并更新
    optimizer.step()  # 更新w,b的值

print('w=', model.linear.weight.item())
print('b=', model.linear.bias.item())

x_test = torch.Tensor([[4.0]])
y_test = model(x_test)
print('y_pred=', y_test.data)

x = np.linspace(0, 10, 200)  # 在线性空间中以均匀步长生成数字序列;在0-10之间的200个点
x_t = torch.Tensor(x).view((200, 1))  # 转换为200*1的矩阵
y_t = model(x_t)  # 利用模型训练
y = y_t.data.numpy()
plt.plot(x, y)
plt.plot([0, 10], [0.5, 0.5], c='r')
plt.xlabel('Hours')
plt.ylabel('Probability of Pass')
plt.grid()
plt.show()

逻辑斯特回归,回归,数据挖掘,人工智能文章来源地址https://www.toymoban.com/news/detail-602803.html

到了这里,关于逻辑斯特回归的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包