集团站切换校区

验证码已发送,请查收短信

图标

学习文章

当前位置:首页 > >学习文章 > >

{HCNA-AI TensorFlow编程基础}之矩阵相乘

发布时间: 2018-11-08 22:29:41

3.1 实验介绍

3.1.1 关于本实验

本实验通过介绍了 TensorFlow 的张量,帮助了解矩阵相乘函数的用法。

3.1.2 实验目的

l 理解 TensorFlow 的张量。

l 理解如何利用 TensorFlow 进行矩阵之间相乘。

3.1.3 实验介绍

TensorFlow 的 tf.matmul()可进行矩阵之间相乘。不可以进行矩阵和向量的相乘。通过本实验学习 TensorFlow 的矩阵相乘。

3.1.4 实验步骤

步骤 1  登陆华为云。

步骤 2 点击右上方的控制台。

步骤 3 选择弹性云服务器,网页中会显示该弹性云的可进行的操作,选择远程登录。即登录到弹性云服务器。

步骤 4 输入指令 ll,查看当前目录下的文件。

步骤 5 输入命令:vi matmul.py,创建新的 Python 脚本。步骤 6 输入命令 i,进入编辑模式开始编辑,输入脚本内容。步骤 7 输入命令 :wq!,保存并退出。

步骤 8 输入命令 cat matmul.py 查看代码。

步骤 9 运行测试。

输入命令:python3 matmul.py。




3.2 实验过程

3.2.1 设置编码说明

# -*- coding: utf-8 -*-

3.2.2 导入模块

import tensorflow as tf

3.2.3 开启 TensorFlow 默认会话

#Tensorflow 默认会话

sess = tf.InteractiveSession()

3.2.4 建立矩阵变量

#建立两个矩阵变量 w1 和 w2

#tf.random_normal(shape, # mean=0.0,

# stddev=1.0,

# dtype=dtypes.float32,

# seed=None,

# name=None)

# 产 生 随 机 正 态 分 布    #shape 表示矩阵的维度,例如:

#tf.random_normal([2,3],mean=1.0, stddev=1.0)是一个 2 行 3 列的矩阵,

#mean 表示均值,默认为 0.0,stddev 表示标准差,默认为 1.0 #seed 表示随机数种子,默认为 None


w1 = tf.Variable(tf.random_normal([2,3],mean=1.0, stddev=1.0)) w2 = tf.Variable(tf.random_normal([3,1],mean=1.0, stddev=1.0))

3.2.5 定义常量矩阵

#定义一个二维的常量矩阵,注意:这里不是一维数组

x = tf.constant([[0.7, 0.9]])

3.2.6 初始化全局变量

#初始化全局变量,这里由于只有 w1 和 w2 没有被初始化(之前只是定义了 w1 和 w2 的 tensor,并没有被初始化),故这一步只会初始化 w1 和 w2.

tf.global_variables_initializer().run()

3.2.7 矩阵相乘

#计算矩阵相乘 a=x*w1(关于矩阵乘法,可以参看线性代数)

a = tf.matmul(x ,w1)

#计算矩阵相乘 y=a*w2

y = tf.matmul(a, w2)




#输出计算结果,是一个 1 行 1 列的二维矩阵

print(y.eval())

3.2.8 实验结果

输出结果:

[[4.263941]]



3.3 实例描述

3.3.1 实例描述

使用 with session 方法建立 session,并在 session 中计算矩阵的相乘运算。



上一篇: {HTML5}过滤选择器-第四节-可见性过滤器-上

下一篇: {Docker}Docker镜像命令

十年老品牌
QQ咨询:450959328 微信咨询:togogozhong 咨询电话:020-38289118 咨询网站客服:在线客服

相关课程推荐

在线咨询 ×

您好,请问有什么可以帮您?我们将竭诚提供最优质服务!