当前位置: 首页 > news >正文

有哪些好的做兼职的网站有哪些网站链接交易

有哪些好的做兼职的网站有哪些,网站链接交易,重庆画册设计公司,网站后台管理系统 静态页面一、什么是逻辑回归 1、逻辑回归(Logistic Regression)是机器学习中的一种分类模型,逻辑回归是一种分类算法,虽然名字中带有回归,但是它与回归之间有一定的联系。由于算法的简单和高效,在实际中应用非常广…

一、什么是逻辑回归

1、逻辑回归(Logistic Regression)是机器学习中的一种分类模型,逻辑回归是一种分类算法,虽然名字中带有回归,但是它与回归之间有一定的联系。由于算法的简单和高效,在实际中应用非常广泛

2、叫回归,但是它是一个分类算法

二、逻辑回归的应用场景

1、应用场景
广告点击率:预测是否会被点击
是否为垃圾邮件
是否患病
金融诈骗:是否为金融诈骗
虚假账号:是否为虚假账号

均为二元问题

2、看到上面的例子,我们可以发现其中的特点,那就是都属于两个类别之间的判断。逻辑回归就是解决二分类问题的利器
会有一个正例,和一个反例

三、逻辑回归的原理

1、逻辑回归的输入
线性回归的输出,就是逻辑回归的输入

逻辑回归的输入就是一个线性回归的结果

2、怎么用输入来分类
要进行下一步处理,带入到sigmoid函数当中,我们把它叫做激活函数

3、sigmoid函数

可以理解为,f(x)=1/(1+e^(-x)),1加上e的负x次方分之1

sigmoid函数又称S型函数,它是一种非线性函数,可以将任意实数值映射到0-1之间的值,通常用于分类问题。它的表达式为:f(x)=1/(1+e^(-x)),其中e为自然对数的底数。它的输出值均位于0~1之间,当x趋向正无穷时,f(x)趋向1;当x趋向负无穷时,f(x)趋向0

4、分析
将线性回归的输出结果,代入到x的部分
输出结果:[0, 1]区间中的一个概率值,默认为0.5为阈值
逻辑回归最终的分类是通过属于某个类别的概率值来判断是否属于某个类别,并且这个类别默认标记为1(正例),另外的一个类别会标记为0(反例)。(方便损失计算)

5、假设函数/线性模型
1/(1 + e^(-(w1x1 + w2x2 + w3x3 + ... + wnxn +b)))
如何得出权重和偏置,使得这个模型可以准确的进行分类预测呢?

6、损失函数(真实值和预测值之间的差距)
我们可以用求线性回归的模型参数的方法,来构建一个损失函数

线性回归的损失函数:(y_predict - y_true)平方和/总数,它是一个值
而逻辑回归的真实值和预测值,是否属于某个类别
所以就不能用均方误差和最小二乘法来构建
要使用对数似然损失

7、优化损失(正规方程和梯度下降)
用一种优化方法,将损失函数取得最小值,所对应的权重值就是我们求的模型参数

四、对数似然损失

1、公式
逻辑回归的损失,称之为对数似然损失

(1)它是一个分段函数
(2)如果y=1,真实值是1,属于这个类别,损失就是 -log(y的预测值)
(3)如果y=0,真实值是0,不属于这个类别,损失就是 -log(1-y的预测值)

2、怎么理解单个的式子呢?这个要根据log的函数图像来理解
当y=1时:(横坐标是y的预测值)

前提真实值是1,如果预测值越接近于1,则损失越接近0。如果预测值越接近于0,则损失越大

当y=0时:(横坐标是y的预测值)

前提真实值是0,如果预测值越接近1,则损失越大

3、综合完整损失函数

损失函数:-(y真实*logy预测+(1-y真实)*log(1-y预测)),求和

是线性回归的输出,经过sigmoid函数映射之后的一个概率值

4、计算样例

五、优化损失

同样使用梯度下降优化算法,去减少损失函数的值。这样去更新逻辑回归前面对应算法的权重参数,提升原本属于1类别的概率,降低原本是0类别的概率

六、逻辑回归API

1、sklearn.linear_model.LogisticRegression(solver='liblinear', penalty='l2', C=1.0)
solver:优化求解方式(默认开源的liblinear库实现,内部使用了坐标轴下降法来迭代优化损失函数)
    auto:根据数据集自动选择,随机平均梯度下降
penalty:正则化的种类
C:正则化力度

2、LogisticRegression方法相当于SGDClassifier(loss="log", penalty=" ")
SGDClassifier是一个分类器
SGDClassifier实现了一个普通的随机梯度下降学习,也支持平均随机梯度下降法(ASGD),可以通过设置average=True
而使用LogisticRegression它的优化器已经可以使用SAG

七、案例:癌症分类预测-良 / 恶性乳腺癌肿瘤预测

1、数据集
数据:
https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/breast-cancer-wisconsin.data
数据的描述:
https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/breast-cancer-wisconsin.names

2、数据的描述

   #  Attribute                     Domain-- -----------------------------------------1. Sample code number            id number2. Clump Thickness               1 - 103. Uniformity of Cell Size       1 - 104. Uniformity of Cell Shape      1 - 105. Marginal Adhesion             1 - 106. Single Epithelial Cell Size   1 - 107. Bare Nuclei                   1 - 108. Bland Chromatin               1 - 109. Normal Nucleoli               1 - 1010. Mitoses                       1 - 1011. Class:                        (2 for benign, 4 for malignant)

第一列:样本的编号
第二到十列:特征
第十一列:分类(2代表良性,4代表恶性)

3、流程分析
(1)获取数据
    读取的时候加上names
(2)数据处理
    处理缺失值
(3)数据集划分
(4)特征工程
    无量纲化处理—标准化
(5)逻辑回归预估器
(6)模型评估

4、代码

import pandas as pd
import numpy as np# 1、读取数据
column_name = ['Sample code number', 'Clump Thickness', 'Uniformity of Cell Size', 'Uniformity of Cell Shape','Marginal Adhesion', 'Single Epithelial Cell Size', 'Bare Nuclei', 'Bland Chromatin','Normal Nucleoli', 'Mitoses', 'Class']
data = pd.read_csv("breast-cancer-wisconsin/breast-cancer-wisconsin.data", names=column_name)data# 2、缺失值处理
# 1)?替换为np.nan
data = data.replace(to_replace="?", value=np.nan)
# 2)删除缺失样本
data.dropna(inplace=True)data# 不存在缺失值
data.isnull().any()# 3、划分数据集
from sklearn.model_selection import train_test_split# 筛选特征值和目标值
x = data.iloc[:, 1:-1] # 行都要,列从1到-1
y = data["Class"]x.head()y.head()x_train, x_test, y_train, y_test = train_test_split(x, y)# 4、标准化
from sklearn.preprocessing import StandardScalertransfer = StandardScaler()
x_train = transfer.fit_transform(x_train)
x_test = transfer.transform(x_test)x_trainfrom sklearn.linear_model import LogisticRegression# 5、预估器流程
estimator = LogisticRegression()
estimator.fit(x_train, y_train)# 逻辑回归的模型参数:回归系数和偏置
# 有几个特征,就有几个回归系数
estimator.coef_estimator.intercept_# 6、模型评估
# 方法1:直接比对真实值和预测值
y_predict = estimator.predict(x_test)
print("y_predict:\n", y_predict)
print("直接比对真实值和预测值:\n", y_test == y_predict)
# 方法2:计算准确率
score = estimator.score(x_test, y_test)
print("准确率为:\n", score)

5、运行结果

http://www.hkea.cn/news/561359/

相关文章:

  • 电子商务的网站建设牛排seo系统
  • 资源收费网站怎么做网站快速优化排名官网
  • 招标网哪个网站信息可靠百度站长工具网站
  • 郑州七七网站建设互联网推广公司
  • 佛山做外贸网站代理商百度收录技术
  • 公司网站建设需要什么今日热搜第一名
  • 烟台建设企业网站网站快速收录入口
  • 怎么做繁体字网站网络营销公司注册找哪家
  • 做ppt介绍网站吗网站搜索引擎优化工具
  • 深圳网站建设有没有市场百度搜索推广的五大优势
  • 网站建设好的图片百度互联网营销
  • 柳州网站制作公司seo优化什么意思
  • 网站建设做的好的公司淘宝关键词优化怎么弄
  • 手机网站用模版方象科技的企业愿景
  • 沈阳网站建设技术公司排名公司市场营销策划方案
  • 赣州网站建设怎样石家庄最新消息
  • 公司注册地址和经营地址不一致可以吗长春seo招聘
  • 好的做问卷调查的网站好推广有奖励的app平台
  • 有专业设计网站吗百度指数与百度搜索量
  • 网站的整体结构百度云网盘资源搜索引擎入口
  • 咸阳网站建设哪家专业杭州优化公司在线留言
  • 地板网站建设门户网站
  • 新增备案网站负责人人工智能培训心得体会
  • 帮境外赌场做网站是否有风险百度企业号
  • 网站换了服务器百度seo排名优化公司哪家好
  • 海南网站建设制作网络营销效果评估
  • 飞阳建设网站上海广告公司
  • 营销网站导航栏常见网站搜索排名靠前
  • 深圳市政府网站官网百度地图疫情实时动态
  • 上海建设工程咨询网 首页深圳优化排名公司