MATLAB中max([max(A)max(B)])的含义是什么?

时间:2016-10-13 18:33:48

标签: matlab matrix neural-network max

我在Matlab中有一部分神经网络代码:

p = randint(a); 

p1 = p(1:10,:); 
p2 = p(11:20,:); 

d1 = max([max(p1(:,1)) max(p2(:,1))]);
d2 = max([max(p1(:,2)) max(p2(:,2))]);
d3 = max([max(p1(:,3)) max(p2(:,3))]);

input1 = [p1(:,1)'/d1; p1(:,2)'/d2; p1(:,3)'/d3]; 

我想知道“d”和“input1”的含义是什么?

1 个答案:

答案 0 :(得分:0)

慢慢分手。执行max(p1(:,1))会在p1的第一列中找到最大值。执行max(p2(:,1))会在p2的第一列中找到最大值。它们都将返回单个值。接下来,如果您使用这两个数字封装max来电:max([max(p1(:,1) max(p2(:,1)]);,则会找到这两个数字之间的最大值。

从逻辑上讲,d1会在p1p2的第一列之间找到最大值。 d2d3执行相同的操作,但涉及p1p2的第二和第三列。

input1我认为这是一种粗略的方法来定义属于p1的前三列的输入要素,并确保这些值落在[0,1]的每个列的范围内单独p1。为什么他们将p2考虑在内并不为我所知,因为他们只为p1执行此操作,但看起来它是某种正常化步骤,正在执行在训练之前预处理输入数据的方法。