python - 使用 river.stream.iter_csv() 循环数据集的 MemoryError
问题描述
https://www.pyimagesearch.com/2019/06/17/online-incremental-learning-with-keras-and-creme/ 我练习在线学习并点击此链接。
因为我错误地安装了 creme,所以我找到了替代工具 River。
当我运行块时:
dataset = stream.iter_csv('features.csv', target = 'class', converters=types)
model = Pipeline([
('scale', StandardScaler()),
('learn', OneVsRestClassifier(classifier=LogisticRegression()))
])
print('[INFO] model starting training...')
metric = Accuracy()
i = 1
for (X, y) in dataset:
print('============================')
preds = model.predict_one(X)
model = model.fit_one(X, y)
metric = metric.update(y, preds)
print(f'[INFO] update {i}:{metric:5.2f}')
i+=1
print(f'[INFO] final update: {metric}')
我看到内存错误:
[INFO] model starting training...
---------------------------------------------------------------------------
MemoryError Traceback (most recent call last)
<ipython-input-14-a18b62014885> in <module>
2 metric = Accuracy()
3 i = 1
----> 4 for (X, y) in dataset:
5 print('============================')
6 preds = model.predict_one(X)
c:\users\admin\appdata\local\programs\python\python37\lib\site-packages\river\stream\iter_csv.py in iter_csv(filepath_or_buffer, target, converters, parse_dates, drop, drop_nones, fraction, compression, seed, field_size_limit, **kwargs)
147 buffer = utils.open_filepath(buffer, compression)
148
--> 149 for x in DictReader(fraction=fraction, rng=random.Random(seed), f=buffer, **kwargs):
150
151 if drop:
c:\users\admin\appdata\local\programs\python\python37\lib\site-packages\river\stream\iter_csv.py in __next__(self)
21
22 if self.line_num == 0:
---> 23 self.fieldnames
24
25 row = next(self.reader)
c:\users\admin\appdata\local\programs\python\python37\lib\csv.py in fieldnames(self)
96 if self._fieldnames is None:
97 try:
---> 98 self._fieldnames = next(self.reader)
99 except StopIteration:
100 pass
MemoryError:
任何人都知道为什么会发生此错误以及如何解决?
解决方案
推荐阅读
- c# - C# Winforms DataGridView 单元格格式异常行为
- python - OpenCV Python调整图像大小
- python - 从 os.popen 拆分结果
- notepad++ - 如何在记事本++中删除两个字符串之间的文本
- javascript - 单击处理程序模拟函数不会被调用
- html - 不同块中的标题文本无响应
- ibm-mq - strmqcfg 不启动 ibm mq websphere
- swift4 - 遍历 Mongokitten 中 find 操作的结果
- python - 带有或条件的while循环
- java - @Test(expected = Exception.class) 对我不起作用,我错过了什么?