我想根據每個執行時間比較兩個分類器。我如何測量分類器的執行時間,如樸素貝葉斯?我的Naive bayes分類器使用python的執行時間
0
A
回答
0
這裏是比較函數的兩個實現的執行時間的一般方法,使用timeit
模塊:
假設您有兩個模塊,first.py
和second.py
,既實現了一個名爲FirstClassifier
和SecondClassifier
類分別實施了一種稱爲classify
的方法。還假設他們有一個叫做train
的方法,當被調用時讀取一些訓練數據並訓練其模型,並且您想要測量方法的速度。
所以first.py是:
# Fill in imports here.
import random
class FirstClassifier(object):
def __init__(self):
# Fill in initialization code here.
pass
def train(self):
# Fill in code to train model here.
pass
def classify(self, text):
# Fill in classification code here.
# Dummy "classification":
return random.choice(['sports', 'politics', 'video games'])
而且second.py是:
# Fill in imports here.
class SecondClassifier(object):
def __init__(self):
# Fill in initialization code here.
pass
def train(self):
# Fill in code to train model here.
pass
def classify(self, text):
# Fill in classification code here.
# Dummy "classification":
return 'sports'
可以使用時間classify
方法的執行timeit
像這樣:
python -m timeit -s 'from first import FirstClassifier;classifier = FirstClassifier();classifier.train();' 'classifier.classify("The game ended in a draw.")'
示例輸出,表示「遊戲以平局結束」的分類。平均需要0.417微秒。
1000000 loops, best of 3: 0.417 usec per loop
而對於第二個執行:
python -m timeit -s 'from second import SecondClassifier;classifier = SecondClassifier();classifier.train();' 'classifier.classify("The game ended in a draw.")'
輸出示例,說明該分類「這場比賽以平局收場。」平均需要0.0836微秒。
10000000 loops, best of 3: 0.0836 usec per loop
這些timeit
命令的一般形式是python -m timeit -s 'SETUP_CODE' 'CODE_TO_TIME'
。因此,需要執行以準備要測量的函數的代碼將轉至-s
選項,並且要定時的主表達式將轉到該命令的第一個非標誌參數。
相關問題
- 1. naive bayes分類錯誤r
- 2. 在python中使用naive bayes的文本分類
- 3. Naive bayes python-php-javascript-node
- 4. 如何在CoreML中使用Naive Bayes二進制分類?
- 5. 爲什麼e1071會給我這個Naive Bayes分類器預測的NA?
- 6. 我如何知道我給sci-kit學習的先前知識? (Naive-bayes分類器)
- 7. 使用naive bayse的文檔分類
- 8. 如何使用PoS標籤作爲Naive Bayes分類器訓練數據的特徵?
- 9. 什麼是圖書館提供了一個非常簡單,普遍使用的Naive Bayes分類器?
- 10. 如何改進Naive bayes的特徵選擇?
- 11. Scikit-learn:是半監督的Naive Bayes實現嗎?
- 12. 如何將Naive Bayes模型應用到新數據中
- 13. 無法在mahout中運行bayes分類器的20newsgroup示例
- 14. Python中的執行時間
- 15. Python:執行的時間
- 16. SKLearn Naive Bayes:在tfidf矢量化後添加功能
- 17. 爲什麼Naive Bayes無法解決異或問題
- 18. NYTProf執行時分析和不分析時的執行時間
- 19. Codeigniter分析器執行時間錯誤?
- 20. python:使用時間戳列將行時間分配給行
- 21. python-執行時間問題
- 22. Python:線程執行時間
- 23. 執行觸發器的時間間隔
- 24. 執行無監督學習時使用什麼分類器
- 25. Xcode - 時間分析器和查看用戶執行的堆棧?
- 26. Python中的Karatsuba乘法:執行時間
- 27. 在Python中執行的時間3.3
- 28. 任務執行時間高於定時器執行時間
- 29. Python類將不執行我的功能
- 30. 使用Python比較UTC時間和東部時間使用Python