前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >问答 | python 矩阵输出问题

问答 | python 矩阵输出问题

作者头像
AI研习社
发布2018-12-21 16:28:47
8890
发布2018-12-21 16:28:47
举报
文章被收录于专栏:AI研习社AI研习社

社长为你推荐来自 AI 研习社问答社区的精华问答。如有你也有问题,欢迎进社区提问。

话不多说,直接上题

@lke 说:

你好,我运行了这段代码,我想得到的是一个三维矩阵,可是输出的结果却是矩阵里面还包含了一个数组。我的思路是将t1与t2连接起来,然后循环赋值给input数组,请问有什么问题吗?

输出结果:

input [[array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6])], [array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6])], [array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6])], [array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6])], [array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6]), array([1, 2, 3, 4, 5, 6])]]

代码:

代码语言:javascript
复制
import tensorflow as tf
import numpy as np
from numpy import *

with tf.Session() as sess:
    input = [[[0]*6]*5]*5
    #input = list()
    for i in range(5):
        for j in range(5):
            t1 = [1,2,3]
            t2 = [4,5,6]
            test = tf.concat([t1,t2],0)
            print("test",sess.run(test))
            input[i][j]=test
            input[i][j] = input[i][j]
            #input = input.append(test)
            print(sess.run(input[i][j]))
    print("input",sess.run(input))
    # input = np.array(input)
    # print("input",sess.run(input))
    print(np.shape(input))

来自社友的回答

▼▼▼

@吴楚

人生苦短,快用pytorch

@行者小林

这里面存在几个问题,你的目的是要使用特定的数字填充矩阵,你想使用tensoflow进行练习,但是练习过程中

1、你使用了很多种数据类型,一开始input为列表, 而后使用张量为列表子元素赋值,列表将子元素视为张量。

2、对于这种纯粹的矩阵赋值运算使用numpy即可

代码语言:javascript
复制
input = [[[0]*6]*5]*5
for i in range(5):
    for j in range(5):
        t1 = [1,2,3]
        t2 = [4,5,6]
        test = np.concatenate((t1,t2),0)
#         print("test",test)
        input[i][j]=test
np.shape(input)

3、tensorflow支持矩阵运算,但张量不支持直接赋值,计算图的搭建通常是在会话(session)之前搭建好,你这里计算图其实是在会话里面进行搭建的

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI研习社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 话不多说,直接上题
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档