基于tensorflow的逻辑分类
#!/usr/local/bin/python3 ##ljj [2]
##logic classify model import tensorflow as tf
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np data_set = pd.read_csv('LogiReg_data.txt',sep=',') #data_set.describe() w = tf.Variable(tf.random_normal([2,1]),dtype="float32")
b = tf.Variable(tf.random_normal([1]),dtype="float32") y = tf.placeholder(tf.float32)
x = tf.placeholder(tf.float32,shape=(1,2)) loss_list = [] with tf.Session() as sess:
#定义逻辑回归模型
logits = tf.add(tf.matmul(x,w),b)
y_predict = tf.nn.sigmoid(logits) loss = tf.reduce_sum(tf.nn.sigmoid_cross_entropy_with_logits(logits=logits,labels=y)) train = tf.train.AdamOptimizer(0.001).minimize(loss)
sess.run(tf.global_variables_initializer()) for j in range(1500):
#shuffle data_set
#index = np.random.permutation(100)
#data_set = data_set.reindex(index) for i in range(100):
w_,b_,loss_,_ = sess.run([w,b,loss,train],feed_dict={x:data_set[i:i+1][['math','english']],y:data_set[i:i+1][['result']]})
if j%100==0:
print('epoch={}, w={},b={},loss={}'.format(j,w_,b_,loss_))
loss_list.append(loss_)
print('final result : ')
print('w={},b={},loss={}'.format(w_,b_,loss_)) train_data = data_set.values
x1 = train_data[:,0]
x2 = train_data[:,1]
y = train_data[:,-1:] for x1p, x2p, yp in zip(x1, x2, y):
if yp == 0:
plt.scatter(x1p, x2p, marker='x', c='r')
else:
plt.scatter(x1p, x2p, marker='o', c='g') # 根据参数得到直线
x = np.linspace(20, 100, 10)
y = []
for i in x:
y.append((i * -w_[1] - b_) / w_[0]) plt.plot(x, y)
plt.show()
运行输出:
ljjdeMBP:logic_classify lingjiajun$ ./logic_regression.py
/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/importlib/_bootstrap.py:205: RuntimeWarning: compiletime version 3.5 of module 'tensorflow.python.framework.fast_tensor_util' does not match runtime version 3.6
return f(*args, **kwds)
2018-05-06 21:48:14.420588: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX AVX2 FMA
epoch=0, w=[[-0.87034857]
[ 0.13095166]],b=[ 1.48850453],loss=52.04541015625
epoch=100, w=[[ 0.01144427]
[ 0.0005749 ]],b=[ 0.58342618],loss=0.21249079704284668
epoch=200, w=[[ 0.02113499]
[ 0.01194377]],b=[-0.85776216],loss=0.16103345155715942
epoch=300, w=[[ 0.03020949]
[ 0.02251359]],b=[-2.18144464],loss=0.12141948938369751
epoch=400, w=[[ 0.03859403]
[ 0.03212684]],b=[-3.3784802],loss=0.092116579413414
epoch=500, w=[[ 0.04626059]
[ 0.04076466]],b=[-4.4525094],loss=0.07090871036052704
epoch=600, w=[[ 0.05323409]
[ 0.04850558]],b=[-5.41535854],loss=0.05559533089399338
epoch=700, w=[[ 0.059574 ]
[ 0.05546409]],b=[-6.28165531],loss=0.04442552104592323
epoch=800, w=[[ 0.06535295]
[ 0.06175429]],b=[-7.06552744],loss=0.03614450991153717
epoch=900, w=[[ 0.07064275]
[ 0.067476 ]],b=[-7.77926588],loss=0.029891693964600563
epoch=1000, w=[[ 0.07550841]
[ 0.07271299]],b=[-8.43318176],loss=0.02508264034986496
epoch=1100, w=[[ 0.08000626]
[ 0.07753391]],b=[-9.0357523],loss=0.021319210529327393
epoch=1200, w=[[ 0.08418395]
[ 0.0819957 ]],b=[-9.59397316],loss=0.01832636632025242
epoch=1300, w=[[ 0.08808059]
[ 0.08614379]],b=[-10.11344337],loss=0.015911955386400223
epoch=1400, w=[[ 0.09172987]
[ 0.09001698]],b=[-10.59893036],loss=0.01393833290785551
final result :
w=[[ 0.09512767]
[ 0.09361333]],b=[-11.05011368],loss=0.012320424430072308

基于tensorflow的逻辑分类的更多相关文章
- 基于tensorflow的文本分类总结(数据集是复旦中文语料)
代码已上传到github:https://github.com/taishan1994/tensorflow-text-classification 往期精彩: 利用TfidfVectorizer进行 ...
- 基于TensorFlow的服装分类
1.导包 #导入TensorFlow和tf.keras import tensorflow as tf from tensorflow import keras # Helper libraries ...
- 使用Python基于TensorFlow的CIFAR-10分类训练
TensorFlow Models GitHub:https://github.com/tensorflow/models Document:https://github.com/jikexueyua ...
- tensorflow实现基于LSTM的文本分类方法
tensorflow实现基于LSTM的文本分类方法 作者:u010223750 引言 学习一段时间的tensor flow之后,想找个项目试试手,然后想起了之前在看Theano教程中的一个文本分类的实 ...
- 一文详解如何用 TensorFlow 实现基于 LSTM 的文本分类(附源码)
雷锋网按:本文作者陆池,原文载于作者个人博客,雷锋网已获授权. 引言 学习一段时间的tensor flow之后,想找个项目试试手,然后想起了之前在看Theano教程中的一个文本分类的实例,这个星期就用 ...
- Chinese-Text-Classification,用卷积神经网络基于 Tensorflow 实现的中文文本分类。
用卷积神经网络基于 Tensorflow 实现的中文文本分类 项目地址: https://github.com/fendouai/Chinese-Text-Classification 欢迎提问:ht ...
- 基于 TensorFlow 在手机端实现文档检测
作者:冯牮 前言 本文不是神经网络或机器学习的入门教学,而是通过一个真实的产品案例,展示了在手机客户端上运行一个神经网络的关键技术点 在卷积神经网络适用的领域里,已经出现了一些很经典的图像分类网络,比 ...
- 基于tensorflow的MNIST手写数字识别(二)--入门篇
http://www.jianshu.com/p/4195577585e6 基于tensorflow的MNIST手写字识别(一)--白话卷积神经网络模型 基于tensorflow的MNIST手写数字识 ...
- 基于Tensorflow + Opencv 实现CNN自定义图像分类
摘要:本篇文章主要通过Tensorflow+Opencv实现CNN自定义图像分类案例,它能解决我们现实论文或实践中的图像分类问题,并与机器学习的图像分类算法进行对比实验. 本文分享自华为云社区< ...
随机推荐
- HTML5新技术FormData提交表单数据
免去了你每次都要document.getElement的方式去获取input的表单值 传统方式 新技术表单数据提交 FormData使用注意 .无需调用setRequestHeader()方法 .要求 ...
- 一些有趣的 js 包
https://github.com/octalmage/robotjs Node.js桌面自动化.控制鼠标,键盘和屏幕. http://robotjs.io
- ssm回顾笔记(一)
这两天来到了农银,这边即将进行的一个项目是将ssh框架的电商项目迁移到springboot+ssm框架上,所以我基本上是三门技术在同时进行学习,当然以前学过ssm,现在只是回顾. spring 注解 ...
- C# 关闭子窗体释放子窗体对象问题
1 在主窗口中实例化子窗口 Form2 f2 = new Form2(); 2 通过按钮来显示子窗口 f2.Show(); 3 关闭子窗口而不释放子窗口对象的方法 protected override ...
- Asp.net core 学习笔记 ( Smtp and Razor template 电子邮件和 Razor 模板 )
refer : https://dotnetcoretutorials.com/2017/08/20/sending-email-net-core-2-0/ https://ppolyzos.com/ ...
- Practical Node.js (2018版) 13章, Node HTTP/2 Servers
新增的章节. If you are not using HTTP/2, then you are losing out on big improvements. HTTP/2相比http/1有很大的区 ...
- js基本类型存放和对象存放的区别(对象遍历)
js的基本类型,对象类型的应用在初学的时候,需要自己加以明确,明确了数据类型,在使用过程中才能正确使用变量.如下两个例子是摘自初学时的笔记,为大家提供参考. 1.对象可以存放属性和方法,js基本类型不 ...
- ORA错误总结
ORA-12560 协议适配器错误 可能是以下原因: 1:服务没有开启(oracle的服务,oraclehome92TNSlistener) 2:数据库实例没有开启(oracleserviceORCL ...
- vscode之快速生成vue模板
文件-首选项-用户代码片段-搜索“vue”点击进入vue.json 复制这个片段 { "Vue component": { "prefix": "vu ...
- 如何 distinct 只对一个字段有用,同时查出其他字段
转至:http://blog.csdn.net/u013402772/article/details/51262524 在使用MySQL时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有d ...