首页 > 其他分享 >实验11-使用keras完成逻辑回归

实验11-使用keras完成逻辑回归

时间:2024-05-14 22:08:38浏览次数:12  
标签:11 逻辑 plt keras cost print import model

VMware虚拟机 Ubuntu20-LTS

python3.6

tensorflow1.15.0

keras2.3.1

运行截图:

 

 

 

代码:

import numpy as np

from keras.models import Sequential
from keras.layers import Dense, Dropout, Activation, Flatten
import matplotlib.pyplot as plt
from sklearn import datasets

# 样本数据集,两个特征列,两个分类二分类不需要onehot编码,直接将类别转换为0和1,分别代表正样本的概率。
X,y=datasets.make_classification(n_samples=200, n_features=2, n_informative=2, n_redundant=0,n_repeated=0, n_classes=2, n_clusters_per_class=1)

# 构建神经网络模型
model = Sequential()
model.add(Dense(input_dim=2, units=1))
model.add(Activation('sigmoid'))

# 选定loss函数和优化器
model.compile(loss='binary_crossentropy', optimizer='sgd')

# 训练过程
print('Training -----------')
for step in range(501):
    cost = model.train_on_batch(X, y)
    if step % 50 == 0:
        print("After %d trainings, the cost: %f" % (step, cost))

# 测试过程
print('\nTesting ------------')
cost = model.evaluate(X, y, batch_size=40)
print('test cost:', cost)
W, b = model.layers[0].get_weights()
print('Weights=', W, '\nbiases=', b)

# 将训练结果绘出
Y_pred = model.predict(X)
Y_pred = (Y_pred*2).astype('int')  # 将概率转化为类标号,概率在0-0.5时,转为0,概率在0.5-1时转为1
# 绘制散点图 参数:x横轴 y纵轴
plt.subplot(2,1,1).scatter(X[:,0], X[:,1], c=Y_pred[:,0])
plt.subplot(2,1,2).scatter(X[:,0], X[:,1], c=y)
plt.show()

 

标签:11,逻辑,plt,keras,cost,print,import,model
From: https://www.cnblogs.com/liucaizhi/p/18192356

相关文章

  • 桌面图标间距Bug:Win10/Win11桌面图标占用空间变成长方形怎么办?
    阅读全文:https://itxiaozhang.com/win10-win11-desktop-icon-bug-rectangular-fix/此教程配合视频学习效果最佳,视频教程在文章末尾。问题描述在使用Windows10或Windows11操作系统时,桌面图标的间距突然变得很大,变成了长方形。该问题通常发生在修改屏幕分辨率、连接外部显示......
  • 桌面图标间距Bug:Win10/Win11桌面图标占用空间变成长方形怎么办?
    阅读全文:https://itxiaozhang.com/win10-win11-desktop-icon-bug-rectangular-fix/此教程配合视频学习效果最佳,视频教程在文章末尾。问题描述在使用Windows10或Windows11操作系统时,桌面图标的间距突然变得很大,变成了长方形。该问题通常发生在修改屏幕分辨率、连接外部显示......
  • openGauss 使用逻辑复制工具复制数据
    使用逻辑复制工具复制数据目前支持openGauss逻辑复制的工具有SDR和DRS。复制工具从openGauss抽取逻辑日志后到对端数据库回放。对于使用JDBC连接数据库的复制工具,具体代码请参考示例:逻辑复制代码示例。详情查看:https://opengauss.org详情查看:https://docs-opengauss.osinfra.cn......
  • openGauss 逻辑解码概述
    逻辑解码概述功能描述openGauss对数据复制能力的支持情况为:支持通过数据迁移工具定期向异构数据库(如Oracle等)进行数据同步,不具备实时数据复制能力。不足以支撑与异构数据库间并网运行实时数据同步的诉求。openGauss提供了逻辑解码功能,通过反解xlog的方式生成逻辑日志。目标数......
  • openGauss 逻辑复制支持DDL操作
    逻辑复制支持DDL操作功能描述Vastbase在逻辑复制过程中支持如下DDL操作:CREATE/DROPTABLE|TABLEPARTITIONCREATE/DROPINDEX注意事项只支持行存表的DDL操作。不支持列存,ustore存储引擎。在订阅端手动删除表会导致DDL同步失败,发布订阅阻塞。不支持在对表进行相......
  • 痞子衡嵌入式:恩智浦i.MX RT1xxx系列MCU启动那些事(12.A)- uSDHC eMMC启动时间(RT1170)
    大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是恩智浦i.MXRT1170uSDHCeMMC启动时间。本篇是i.MXRT1170启动时间评测第五弹,前四篇分别给大家评测了RawNAND启动时间(基于MIMXRT1170-EVK_Rev.B)、SerialNOR启动时间(基于MIMXRT1170-EVB_Rev.A2)、1......
  • win11 - 设置FTP服务详细教程
    题记部分 一、开启FTP服务 https://blog.csdn.net/qq_42142258/article/details/131725760 二、配置FTP服务https://blog.csdn.net/qq_53810245/article/details/126669423  三、标题   —要养成终身学习的习惯—......
  • 构建之法11
    在深入阅读了《构建之法》的第十一章后,我深感其中所蕴含的软件开发团队的智慧与策略之深刻。本章主要围绕软件开发中的团队合作与项目管理,提出了许多具有实际指导意义的观点和方法,让我对软件开发的团队协作有了更为全面和深入的理解。首先,我被本章中强调的“以人为本”的软件开发......
  • 题解:SP10232 AMR11E - Distinct Primes
    前话这咋人名都和HP一模一样了,SPOJ出题人里是不是全是哈迷啊。思路非常直观的一个思路:从前往后枚举每一个数,看是否满足条件,输出满足条件的第一个。CODE#include<bits/stdc++.h>usingnamespacestd;boolis(intn){//判断质数if(n<2)return0;for(inti=2;i<......
  • 【2024-05-11】转型挑战
    20:00幸福感来自于自己的优势与美德,通过自己努力获得的幸福才会有真正的幸福感受。                                                 ——马丁·塞利格曼近一个月以来......