利用Tensorflow实现逻辑回归模型
官方mnist代码:
#下载Mnist数据集
import tensorflow.examples.tutorials.mnist.input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True) #Tensorflow实现回归模型
import tensorflow as tf #定义变量为float型,行因为不确定先给无穷大None;列给28*28=784
x = tf.placeholder("float", [None, 784])
y_ = tf.placeholder("float", [None,10]) #向量相乘y = wx + b,w的行即为x的列,否则无法相乘;输出大小给10(因为是一个10分类任务)
W = tf.Variable(tf.zeros([784, 10]))
b = tf.Variable(tf.zeros([10])) #逻辑回归模型
#nn模块下的softmax解决多分类问题,参数:是一个预测值,即wx+b会计算出一个分值
#softmax 完成归一化操作
#得到的y是一个预测结果
y = tf.nn.softmax(tf.matmul(x, W) + b) #计算损失值:-log(p);求均值:reduce_mean
cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_*tf.log(y)), reduction_indices=1)) #训练模型
#优化器使用梯度下降
learning_rate = 0.01 #学习率
train_step = tf.train.GradientDescentOptimizer(learning_rate).minimize(cross_entropy)
init = tf.initialize_all_variables()
sess = tf.Session()
sess.run(init)
for i in range(1000):
batch_xs, batch_ys = mnist.train.next_batch(100)
sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys}) #评估模型
#比较一下预测值和这个标记的Label值,如果一致返回true,否则返回false
correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))
#计算准确率tf.cast
#计算均值tf.reduce_mean
accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float"))
print sess.run(accuracy, feed_dict={x: mnist.test.images, y_: mnist.test.labels})
常用函数:
arr = np.array([
[31,23,4,24,27,34],[18,3,25,0,6,35],[28,14,33,22,20,8]
])
#按列找出每列的最大值的索引 0按列 1按行
tf.argmax(arr, 0).eval()
#计算矩阵的维数
tf.rank(arr).eval()
#计算矩阵的行和列
tf.shape(arr).eval()
利用Tensorflow实现逻辑回归模型的更多相关文章
- tensorflow之逻辑回归模型实现
		前面一篇介绍了用tensorflow实现线性回归模型预测sklearn内置的波士顿房价,现在这一篇就记一下用逻辑回归分类sklearn提供的乳腺癌数据集,该数据集有569个样本,每个样本有30维,为二 ... 
- 深度学习实践系列(1)- 从零搭建notMNIST逻辑回归模型
		MNIST 被喻为深度学习中的Hello World示例,由Yann LeCun等大神组织收集的一个手写数字的数据集,有60000个训练集和10000个验证集,是个非常适合初学者入门的训练集.这个网站 ... 
- 逻辑回归模型(Logistic Regression, LR)--分类
		逻辑回归(Logistic Regression, LR)模型其实仅在线性回归的基础上,套用了一个逻辑函数,但也就由于这个逻辑函数,使得逻辑回归模型成为了机器学习领域一颗耀眼的明星,更是计算广告学的核 ... 
- 逻辑回归模型(Logistic Regression, LR)基础
		逻辑回归模型(Logistic Regression, LR)基础 逻辑回归(Logistic Regression, LR)模型其实仅在线性回归的基础上,套用了一个逻辑函数,但也就由于这个逻辑函 ... 
- Python之逻辑回归模型来预测
		建立一个逻辑回归模型来预测一个学生是否被录取. import numpy as np import pandas as pd import matplotlib.pyplot as plt impor ... 
- 逻辑回归模型(Logistic Regression)及Python实现
		逻辑回归模型(Logistic Regression)及Python实现 http://www.cnblogs.com/sumai 1.模型 在分类问题中,比如判断邮件是否为垃圾邮件,判断肿瘤是否为阳 ... 
- 吴恩达机器学习笔记22-正则化逻辑回归模型(Regularized Logistic Regression)
		针对逻辑回归问题,我们在之前的课程已经学习过两种优化算法:我们首先学习了使用梯度下降法来优化代价函数 
- tensorflow 实现逻辑回归——原以为TensorFlow不擅长做线性回归或者逻辑回归,原来是这么简单哇!
		实现的是预测 低 出生 体重 的 概率.尼克·麦克卢尔(Nick McClure). TensorFlow机器学习实战指南 (智能系统与技术丛书) (Kindle 位置 1060-1061). Kin ... 
- 线性模型之逻辑回归(LR)(原理、公式推导、模型对比、常见面试点)
		参考资料(要是对于本文的理解不够透彻,必须将以下博客认知阅读,方可全面了解LR): (1).https://zhuanlan.zhihu.com/p/74874291 (2).逻辑回归与交叉熵 (3) ... 
随机推荐
- 微信jssdk上传图片,一张一张的上传 和 一次性传好几张
			//html模板 <div class="zhaopin_3_2"> <div id="bbb"></div> <im ... 
- DB2的进程/线程解析(转)
			今天看到一个名词,数据库实例用户和实例隔离用户,那么什么是实例隔离用户呢,于是搜索以下,就涉及到了进程. 援引DB2中国上面的回答: 要理解DB2的fenced user, 需要先理解db2的fe ... 
- .Net Windows Service(服务) 调试安装及System.Timers.Timer 使用
			Windows Service(服务) 是运行在后台的进程 1.VS建立 Windows 服务(.NET Framework) 2.添加Timer 双击Service1.cs可以拖控件(System ... 
- jdbc --- javabean
			第一部分: javaBean 类 要和数据库表的字段一一对应 package com.ljs.bean; public class UserBean { private int id; privat ... 
- JSCS: Please specify path to 'JSCS' package
			JSCS: Please specify path to 'JSCS' package 1.webStrom提示: JSCS: Please specify path to 'JSCS' packag ... 
- MySQL5.6启动报错The server quit without updating PID file
			Mysql启动报错如下: [root@db01 opt]# service mysqld start Starting MySQL.... ERROR! The server quit without ... 
- shell之使用paste命令按列拼接多个文件
			试验文件: [root@db03 shell-script]# cat text1.txt 1 2 3 4 5 [root@db03 shell-script]# cat text2.txt orac ... 
- en-zh(科学技术)science and technology
			S Korea to roll out 5G韩国正式推5G商用服务 South Korea will become the first country to commercially launch f ... 
- [daily] pandoc
			学了LaTeX之后,你就会很自然的接触的另一种观点: LaTeX是专注于排版的,你需要专注于内容. 于是,请使用pandoc. 简单的说, pandoc就是可以将各种个样格式的文档转换成各种各样格式的 ... 
- JRE vs OpenJDK vs Oracle JDK
			JRE vs OpenJDK vs Oracle JDK 在我们继续了解如何安装Java之前,让我们快速地了解JRE.OpenJDK和Oracle JDK之间的不同之处. JRE(Java Runti ... 
