我碰到了一些代码,它们以一种我以前从未见过的方式使用了模运算符。问题所在的行是data_index = (data_index + 1) % len(data)
。
我不知道这段代码在更新data_index
时要做什么
def generate_batch(batch_size, num_skips, skip_window):
global data_index
assert batch_size % num_skips == 0
assert num_skips <= 2 * skip_window
batch = np.ndarray(shape=(batch_size), dtype=np.int32)
labels = np.ndarray(shape=(batch_size, 1), dtype=np.int32)
span = 2 * skip_window + 1 # [ skip_window target skip_window ]
buffer = collections.deque(maxlen=span)
for _ in range(span):
buffer.append(data[data_index])
# What is this doing?
data_index = (data_index + 1) % len(data)
# ... More stuff ...
https://stackoverflow.com/questions/51679228
复制相似问题