python性能调优(1)

性能调优主要包括时间的优化和内存的优化.要做时间的优化首先就要统计时间,python本身提供了一个描述程序时间性能的类cProfile.

如要获取func函数所耗用的时间,可以使用如下代码

import  cProfile
cProfile.run(
' func() ' )

 

如果需要知道一个python文件运行的时间,可以在命令行下使用如下命令

python  - m cProfile myscript.py

 

 通常输出如下:

ExpandedBlockStart.gif 代码
          3   function  calls  in   0.446  CPU seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(
function )
        
1      0.000      0.000      0.446      0.446  <string > : 1 (<module > )
        
1      0.446      0.446      0.446      0.446  wordcounter.py: 7 (__init__)
        
1      0.000      0.000      0.000      0.000  {method 'disable' of '_lsprof.Profiler' objects}

 

ncalls表示函数调用的次数

tottime表示指定函数消耗的时间

percall表示函数每次调用的平均耗时,tottime/ncalls

cumtime表示该函数及其所有子函数的调用耗时,就是从函数开始调用到返回的时间 

第二个percall为cumtime/primitive calls的值

filename:lineno(function)表示每个函数所在的位置 

转载于:https://www.cnblogs.com/triStoneL/archive/2010/05/04/1727444.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
KNN(K-Nearest Neighbors)是一种基本的机器学习算法,用于分类和回归问题。KNN算法中的一个重要参数是k值,它表示在对新样本进行分类时,我们考虑多少个最近邻居的类别。 以下是一些KNN参数调优的技巧: 1. 确定k值:KNN的性能高度依赖于k值的选择。通常,选择k值的最佳方法是使用交叉验证技术,例如k折交叉验证,根据不同的k值计算模型的性能指标(如准确率、精确率、召回率等),并选择最佳的k值。 2. 特征选择:在KNN算法中,特征选择对性能至关重要。选择正确的特征可以提高模型的准确性和泛化能力。可以使用特征选择算法,例如相关性分析、卡方检验、信息增益等方法。 3. 距离度量:KNN算法中的距离度量也会影响模型性能。常用的距离度量包括欧氏距离、曼哈顿距离、切比雪夫距离等。可以通过比较不同距离度量的性能来确定最佳距离度量。 4. 数据预处理:在应用KNN算法之前,需要对数据进行预处理,例如归一化、标准化、缺失值处理等。这些处理可以提高模型的性能和稳定性。 5. 加权KNN:在标准的KNN算法中,每个最近邻居的距离对结果的贡献是相等的。可以使用加权KNN算法,对距离较近的点进行更大的权重,从而提高模型的性能。 以上是一些常用的KNN参数调优技巧,需要根据具体情况选择合适的方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值