TensorFlow 深度学习笔记 Logistic Classification
Logistic Classification
Github工程地址:https://github.com/ahangchen/GDLnotes
欢迎star,有问题可以到Issue区讨论
官方教程地址
About
simple but important classifier
- Train your first simple model entirely end to end
- 下载、预处理一些图片以分类
- Run an actual logistic classifier on images data
- Connect bit of math and code
Detail
Linear Classifier

之所以这样建模,是因为线性公式是最简单的数学模型,仅此而已。
- Input: X (e.g. the pixels in an image)
- Apply a linear function to X
- Giant matrix multiply
- Take inputs as a big vector
- Multiply input vector with a matrix, W means weights
- b means biased term
- Machine learning adjust weights and bias for the best prediction
- Output: Y, predictions for per output class
- Y is a vector, represents the probability of each label
- 好的预测中,正确的label的概率应当更接近1
- 往往得到的Y一开始不是概率,而是一些具体值(scores/logits),所以需要转换,by:
Softmax回归模型:Wikipedia

Softmax
- 代码 soft_max.py:Softmax实现与应用
- input的score差异越大(可以全部乘10试试),则输出的各项label概率差异越大,反之差异越小
- Softmax只关心几个label之间的概率,不关心具体值
- 机器学习是一个让预测成功率升高的事情,因此是一个让score之间差异增大的过程
One hot encoding

正确预测结果应当是只有一个label成立,其他label不成立。这种情况下,预测概率最大的则是最可能的结果。
Example: take this test
- one hot encoding在label很多的情况下not work well,因为output vector到处都是0,很稀疏,因此效率低
- solved by embeddings
- 好处:可以measure我们与理想情况之间的距离(compare two vectors)
分类器输出:[0.7 0.2 0.1] \<=> 与label对应的真实情况:[1 0 0]
Compare two vectors: cross-entropy

D(S, L) != D(L, S)
Remember: Label don't log, for label zero
小结


找到合适的W和b,使得S和L的距离D的平均值,在整个数据集n中最小。
最小化cross-entropy

D的平均值即是Training loss,求和和矩阵相乘是个大数据的活。

两个参数的误差导致一个呈圆形的loss,所以我们要做的就是找到尽量靠近圆心的weight
机器学习问题变成了一个数值优化
- 解决方法之一:Gradient descent,求导

修改参数,检查误差是否变大,往变小的方向修改,直到抵达bottom。
图中weight是二维的,但事实上可能有极多的weight
下一节实践
如果觉得我的文章对您有帮助,请随意打赏~

TensorFlow 深度学习笔记 Logistic Classification的更多相关文章
- Google TensorFlow深度学习笔记
Google Deep Learning Notes Google 深度学习笔记 由于谷歌机器学习教程更新太慢,所以一边学习Deep Learning教程,经常总结是个好习惯,笔记目录奉上. Gith ...
- TensorFlow——深度学习笔记
深度学习与传统机器学习的区别 传统机器学习输入的特征为人工提取的特征,例如人的身高.体重等,深度学习则不然,它接收的是基础特征,例如图片像素等,通过多层复杂特征提取获得. 深度学习.人工智能.机器学习 ...
- TensorFlow 深度学习笔记 卷积神经网络
Convolutional Networks 转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有问题可以到Is ...
- TensorFlow 深度学习笔记 TensorFlow实现与优化深度神经网络
转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有问题可以到Issue区讨论 官方教程地址 视频/字幕下载 全 ...
- TensorFlow深度学习笔记 循环神经网络实践
转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有问题可以到Issue区讨论 官方教程地址 视频/字幕下载 加 ...
- TensorFlow 深度学习笔记 逻辑回归 实践篇
Practical Aspects of Learning 转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有 ...
- TensorFlow深度学习笔记 Tensorboard入门
转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有问题可以到Issue区讨论 官方教程: https://ww ...
- TensorFlow 深度学习笔记 从线性分类器到深度神经网络
转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有问题可以到Issue区讨论 官方教程地址 视频/字幕下载 L ...
- TensorFlow深度学习笔记 文本与序列的深度模型
Deep Models for Text and Sequence 转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎st ...
随机推荐
- js压缩解压工具
参看下面链接:http://js.clicki.cc/
- mysql 命令
1.查看数据库: mysql> show databases; 2.使用数据库 mysql> use mysqldata; 3.查看数据表 mysql> show tables; 4 ...
- cocos2d-x中的Box2D物理引擎
在Cocos2d-x中集成了2个物理引擎,一个是Chipmunk,一个是Box2D.前者是用C语言编写的,文档和例子相对较少:Box2D是用C++写的,并且有比较完善的文档和资料.所以在需要使用物理引 ...
- dict.get('key')和dict['key']的区别
dict['key']只能获取存在的值,如果不存在会触发KeyError dict.get('key', default=None)如果不存在,返回一个默认值
- Android 模式对话框提示Dialog
1.先写一个Dialog类 CustomDialog package com.example.heng.adtest; import android.app.AlertDialog; import ...
- 进程退出前删除自身EXE
进程退出前删除自身EXE 下面的代码由Gary Nebbett写就.Gary Nebbett乃是WINDOWS NT/2000 NATIVE API REFERENCE的作者.乃NT系统一等一的高手. ...
- Inno Setup:卸载时判断要调用的dll是否存在
原文 http://zwkufo.blog.163.com/blog/static/2588251201072581947474/ [Code]function SuiteRemovedAlert2: ...
- 如何让ios app支持32位和64位?
将ios app转换为兼容32位和64位步骤: 1. 安装 Xcode 5. 2. 打开你的项目.Xcode会提示你更新你的项目,其中的警告和错误信息对于转换到64位相当重要. 3. 将你的项目 ...
- 使用xmanager 远程redhat6.3
之前装过一次,特别麻烦,装上只有远程还卡卡的,这次按照教程居然装的灰常顺利,不符合我bug体质的特性,一定要记下来啊~~~ 1.先关闭防火墙 # service iptables stop #chkc ...
- 首次登录与在线求助man page
为了避免瞬间断电造成的Linux系统损害,建议作为服务器的Linux主机应该加上不断电系统来持续提供稳定的电力. 在终端环境中,可依据提示符为$或#判断为一般几号或root账号. 要取得终端支持的语言 ...