Предположим, следующие данные
Образец #
table {
border-collapse: collapse;
}
table, th, td {
border: 1px solid black;
padding:5px;
text-align:center;
}
<table>
<thead>
<th>Sample Number</th>
<th>Time</th>
<th>Feature 1</th>
<th>Feature 2</th>
<th>...</th>
<th>Feature F</th>
<th>y(t)</th>
<th>Target<br/>y(t+1)</th>
</thead>
<tbody>
<tr>
<td rowspan="6">Sample 1</td>
<td>1</td> <td>0.19</td> <td>0.21</td> <td>...</td> <td>0.55</td> <td>3</td> <td>1</td>
</tr>
<tr><td>2</td> <td>0.14</td> <td>0.14</td> <td>...</td> <td>0.14</td> <td>1</td> <td>5</td></tr>
<tr><td>3</td> <td>0.65</td> <td>0.11</td> <td>...</td> <td>0.63</td> <td>5</td> <td>3</td></tr>
<tr><td>4</td> <td>0.1</td> <td>0.09</td> <td>...</td> <td>0.17</td> <td>3</td> <td>1</td></tr>
<tr><td>5</td> <td>0.93</td> <td>0.08</td> <td>...</td> <td>0.91</td> <td>1</td> <td>2</td></tr>
<tr><td>6</td> <td>0.12</td> <td>0.74</td> <td>...</td> <td>0.61</td> <td>2</td> <td>3</td></tr>
<tr>
<td rowspan="6">Sample 2</td>
<td>1</td> <td>0.89</td> <td>0.91</td> <td>...</td> <td>0.05</td> <td>1</td> <td>1</td></tr>
<tr><td>2</td> <td>0.78</td> <td>0.24</td> <td>...</td> <td>0.21</td> <td>1</td> <td>4</td></tr>
<tr><td>3</td> <td>0.31</td> <td>0.22</td> <td>...</td> <td>0.9</td> <td>4</td> <td>1</td></tr>
<tr><td>4</td> <td>0.25</td> <td>0.23</td> <td>...</td> <td>0.45</td> <td>1</td> <td>5</td></tr>
<tr><td>5</td> <td>0.59</td> <td>0.35</td> <td>...</td> <td>0.5</td> <td>5</td> <td>2</td></tr>
<tr><td>6</td> <td>0.9</td> <td>0.55</td> <td>...</td> <td>0.46</td> <td>2</td> <td>1</td></tr>
<tr>
<td rowspan="6">Sample S</td>
<td>1</td> <td>0.97</td> <td>0.59</td> <td>...</td> <td>0.4</td> <td>5</td> <td>4</td></tr>
<tr><td>2</td> <td>0.59</td> <td>0.67</td> <td>...</td> <td>0.16</td> <td>4</td> <td>4</td></tr>
<tr><td>3</td> <td>0.75</td> <td>0.28</td> <td>...</td> <td>0.83</td> <td>4</td> <td>4</td></tr>
<tr><td>4</td> <td>0.86</td> <td>0.27</td> <td>...</td> <td>0.02</td> <td>4</td> <td>5</td></tr>
<tr><td>5</td> <td>0.72</td> <td>0.96</td> <td>...</td> <td>0.75</td> <td>5</td> <td>4</td></tr>
<tr><td>6</td> <td>0.83</td> <td>0.44</td> <td>...</td> <td>0.15</td> <td>4</td> <td>1</td></tr>
<tbody>
</table>
Для обучения LSTM мы должны предоставить (batch_size, number_features, time_steps)
batch_size: до S number_features: F time_steps: up6
Когда мы обучаем RNN с помощью LSTM, мы можем выбрать размер пакета, скажем, 3 выборки на пакет, а затем, чтобы завершить 1 итерацию, мы должны быть S / 3 (количество пакетов, необходимых для завершения 1эпоха).
Несколько вещей, которые я хотел бы проверить с вами, ребята.
1) В примере с batch_size, равным 3, в каждой эпохе я должен произвольно и вручную выбрать эти 3 образца изданные обучения и подгонки его под модель правильно?Или когда я придаю тензорному потоку форму (3, F, 3), она уже корректно ломается?В этом случае все данные должны быть упорядочены?
2) О временном шаге (времени).Поскольку я не знаю, сколько временных шагов требуется для разумного предсказания y (t + 1), что мне делать?Тренируйтесь с шагом 2, 3, до 6 и смотрите, какой из них лучше?
Спасибо