Я все еще новичок в Юлии и в машинном обучении в целом, но я очень хочу учиться.В текущем проекте, над которым я работаю, у меня проблема с несоответствием размеров, и я не могу понять, что делать.
У меня есть два массива следующим образом:
x_array:
9-element Array{Array{Int64,N} where N,1}:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 72, 73]
[11, 12, 13, 14, 15, 16, 17, 72, 73]
[18, 12, 19, 20, 21, 22, 72, 74]
[23, 24, 12, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 72, 74]
[36, 37, 38, 39, 40, 38, 41, 42, 72, 73]
[43, 44, 45, 46, 47, 48, 72, 74]
[49, 50, 51, 52, 14, 53, 72, 74]
[54, 55, 41, 56, 57, 58, 59, 60, 61, 62, 63, 62, 64, 72, 74]
[65, 66, 67, 68, 32, 69, 70, 71, 72, 74]
y_array:
9-element Array{Int64,1}
75
76
77
78
79
80
81
82
83
иследующая модель с использованием Flux:
model = Chain(
LSTM(10, 256),
LSTM(256, 128),
LSTM(128, 128),
Dense(128, 9),
softmax
)
Я заархивирую оба массива, а затем передам их в модель с помощью Flux.train!
data = zip(x_array, y_array)
Flux.train!(loss, Flux.params(model), data, opt)
и сразу же выдаст следующую ошибку:
ERROR: DimensionMismatch("matrix A has dimensions (1024,10), vector B has length 9")
Теперь я знаю, что первое измерение матрицы A - это сумма скрытых слоев (256 + 256 + 128 + 128 + 128 + 128), а второе измерение - входной слой, равный 10.Первым делом я изменил 10 на 9, но потом выдает только ошибку:
ERROR: DimensionMismatch("dimensions must match")
Может кто-нибудь объяснить мне, какие измерения не соответствуют друг другу и как их сопоставить?