【DeepLearning】学习周报

学习时间:

  • 7.25 - 7.30

学习内容:

一、搭建tensorflow环境

  1. Conda创建新的环境
conda create -n mc
  1. 激活环境
activate mc
  1. 打开jupyter
jupyter notebook
  1. 在jupyter notebook的终端进行配置
    【DeepLearning】学习周报_第1张图片
    在命令行中输入:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

5.使用清华镜像安装TensorFlow

pip3 install tensorflow-gpu==1.14 -i https://pypi.tuna.tsinghua.edu.cn/simple

二、tensorflow解决损失函数J最小化问题

有一个损失函数 = 2 − 10 + 25,用 TensorFlow 将其最小化。

  1. 导入numpy和tensorflow包
import numpy as np
import tensorflow.compat.v1 as tf

由于tensorflow2.0及以上版本更新修改删除了一些属性,所以在导入tensorflow时要规定版本为v1。

  1. 运行代码
w = tf.Variable(0,dtype = tf.float32)
cost = tf.add(tf.add(w**2,tf.multiply(- 10.,w)),25)
train = tf.train.GradientDescentOptimizer(0.01).minimize(cost)
init = tf.global_variables_initializer()
session = tf.compat.v1.Session()
session.run(init)
session.run(w)
print(session.run(w))

输出结果为0.0,因为在运行学习算法前w初始化为0,下面开始运行梯度下降算法

session.run(train)
print(session.run(w))

运行了一步梯度下降法后,输出结果为:0.099999994

for i in range(1000):
    session.run(train)
print(session.run(w))

经过1000次迭代,输出结果为4.9999886

w的最优解为5,而经过1000次迭代后w变成了4.9999已经非常接近最优解。

三、理论知识

吴恩达深度学习进行到“残差网络”章节,在此之前针对上周问题学习了softmax回归、端到端学习、CNN卷积神经网络,包括CNN中的卷积层、池化层、最大连接层中涉及的操作和作用,结合三个经典网络案例LeNet-5,AlexNet,VGG发现深度学习在发展过程中网络和数据不断扩大、参数不断增多,而神经网络难以训练的原因之一是存在着梯度消失和梯度爆炸的问题,因此需要把Plain network加上跳跃连接变成ResNet。
下周预计学习完吴恩达深度学习课程内容,然后继续看花书跟进学习进度,并完成猫图分类这个相对简单的项目。

你可能感兴趣的:(学习,tensorflow,python)