学习总结(袁莹君)

学习总结
在前段时间的学习中,通过看慕课课程,学习掌握了python基本语法元素,Python基本图形绘制,Python基本数据类型和组合数据类型,函数以及代码复用,Python文件读写和数据格式化,还了解了Python第三方库和各库的相关操作函数。
之后,又学习了数组的运算,复习了线性代数中矩阵的各类运算。
学习完了最基本的东西以后,我开始进入了机器学习的领域。
说实话,开始看的时候简直就是无从下手,所以又从哔哩哔哩里面找了好多的相关视频,终于找到一个将的是MNIST数据集的并且与我看的教材相似的视频,最后才理解了。
要入手机器学习,就必须先了解MNIST数据集, MNIST是一个入门级的计算机视觉数据集,它包含各种手写数字图片。每一个MNIST数据单元有两部分组成:一张包含手写数字的图片和一个对应的标签。
每一张图片包含28像素X 28像素。我们可以用一个数字数组来表示这张图片。我们把这个数组展开成一个向量,就是不断的把下一行连到上面,那长度就是28x28 = 784。从这个角度来看,MNIST数据集的图片就是在784维向量空间里面的点。在MNIST训练数据集中,mnist.train.images 是一个形状为 [60000, 784] 的张量,意思就是有60000张图片,然后每张图片又有28x28 = 784个像素点。所以第一个维度数字是用来索引图片的,第二个维度数字是用来索引每张图片中的像素点的。在此张量里的每一个元素,都表示某张图片里的某个像素的强度值,所以图片里完全白的部分值为0,最深的部分为1,其余的按颜色深浅值在0到1之间。
相对应的MNIST数据集的标签是介于0到9的数字,用来描述给定图片里表示的数字。我们把标签转化为"one-hot vectors"。 一个one-hot向量除了某一位的数字是1以外其余各维度数字都是0。例如标签3: ([0,0,0,1,0,0,0,0,0,0,0])。 mnist.train.labels 是一个 [60000, 10] 的数字矩阵。
softmax模型可以用来给不同的对象分配概率。
在这里插入图片描述
对于softmax回归模型,对于输入的xs加权求和,再分别加上一个偏置量,最后再输入到softmax函数中,如果把它写成一个等式,我们可以得到:
在这里插入图片描述
因为前面有了矩阵运算的知识储备,所以这也比较容易联想到用矩阵乘法和向量相加来计算理解。
在这里插入图片描述
最终可以表示成:
y = softmax(Wx + b)

主要核心的代码
import tensorflow as t
x = tf.placeholder(“float”, [None, 784])
W = tf.Variable(tf.zeros([784,10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x,W) + b)

而现在阶段,我还正在学习《面向机器学习专家的 MNIST 高级教程》,计划是5号之前能完成,有了前面的一点基础,理解起来,没有刚开始学习第一篇时这么费劲了,但是又涉及到了更深层次的东西,后期还需要进一步探索。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值