【发布时间】:2018-11-11 14:20:34
【问题描述】:
如何更改此功能以提高效率?我不断收到 MemoryError
def vectorize_sequences(sequences, dimension=10000):
results = np.zeros((len(sequences), dimension))
for i, sequence in enumerate(sequences):
results[i, sequence] = 1.
return results
我在这里调用函数:
x_train = vectorize_sequences(train_data)
x_test = vectorize_sequences(test_data)
训练和测试数据是用于情感分析的 IMDB 数据集,即
(train_data, train_labels), (test_data, test_labels) = imdb.load_data(num_words=10000)
编辑:我在具有 4 GB RAM 的 64 位 Ubuntu 系统上运行它。
这是回溯:
Traceback (most recent call last):
File "/home/uttam/PycharmProjects/IMDB/imdb.py", line 29, in <module>
x_test = vectorize_sequences(test_data)
File "/home/uttam/PycharmProjects/IMDB/imdb.py", line 20, in vectorize_sequences
results = np.zeros((len(sequences), dimension))
MemoryError
【问题讨论】:
-
看起来 2x 763 MB 的数据并不庞大。请发布完整的错误消息,包括显示它发生的行的回溯。还请发布您运行它的硬件和操作系统的详细信息。
-
基本上你有两个选择:使用更少的内存或提供更多的内存。
-
@JohnZwinck 我已经相应地编辑了这个问题。谢谢
标签: python keras sentiment-analysis