簡體   English   中英

如何根據從元組創建的哈希或列出numpy.ndarray的鍵保存對象

[英]How to save object according to a key which is hash created from tuple or list which numpy.ndarray

我的工作需要大量的計算時間。

所以我想根據鍵保存每個計算結果,例如,由參數生成的哈希鍵,該參數由元組組成,包括元數據,numpy.ndarray等。

為了解決此任務,我嘗試根據一個鍵保存結果(例如,機器學習模型),例如,它是從元組生成的哈希鍵或在代碼下面的numpy.ndarray中列出。

但是我無法從元組對象包括numpy.ndarray獲得哈希鍵。

# Load dataset
iris = datasets.load_iris()

# generating model of SVM
from sklearn import svm
clf = svm.LinearSVC()
key_m=(iris.data, iris.target)
clf.fit(*key_m) # learn form the data according to parameter.

d = shelve.open("testDB")
# save object according to key(key_m)        
d[hash(key_m)]=clf ## xx <- Error occurred.
# load object according to key(key_m)    
clf_cron=d[hash(key_m)]

# Compare with base and retrieve    
if clf==clf_cron:    
    print("Equal\n")
else:
    print("Not Equal\n")

Numpy的ndarray對象沒有哈希方法,但是您可以使用md5或類似的東西:

import md5
m = md5.new()
m.update(iris.data)
m.update(iris.target)
key_m = m.hexdigest()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM