相关疑难解决方法(0)

PicklingError:不能pickle <class'minit.Decimal'>:它与decimal.Decimal不是同一个对象

这是我今天在http://filmaster.com"> filmaster.com上遇到的错误:

PicklingError:不能pickle:它与decimal.Decimal不是同一个对象

这究竟意味着什么?它似乎没有多大意义......它似乎与django缓存有关.你可以在这里看到整个追溯:

Traceback(最近一次调用最后一次):

文件"/home/filmaster/django-trunk/django/core/handlers/base.py",第92行,在get_response response = callback(request,*callback_args,**callback_kwargs)

在show_film
workflow.set_data_for_authenticated_user()中输入文件"/home/filmaster/film20/film20/core/film_views.py",第193行

文件"/home/filmaster/film20/film20/core/film_views.py",第518行,在set_data_for_authenticated_user
object_id = self.the_film.parent.id)

在get_others_ratings
set_cache 中输入文件"/home/filmaster/film20/film20/core/film_helper.py",第179行(CACHE_OTHERS_RATINGS,str(object_id)+"_"+ str(user_id),userratings)

文件"/home/filmaster/film20/film20/utils/cache_helper.py",第80行,在set_cache中返回cache.set(CACHE_MIDDLEWARE_KEY_PREFIX + full_path,result,get_time(cache_string))

文件"/home/filmaster/django-trunk/django/core/cache/backends/memcached.py",第37行,设置为
self._cache.set(smart_str(key),value,timeout或self.default_timeout)

文件"/usr/lib/python2.5/site-packages/cmemcache.py",第128行,在set val中,flags = self._convert(val)

文件"/usr/lib/python2.5/site-packages/cmemcache.py",第112行,在_convert val = pickle.dumps(val,2)

PicklingError:不能pickle:它与decimal.Decimal不是同一个对象

Filmaster的源代码可以从这里下载:bitbucket.org/filmaster/filmaster-test

任何帮助将不胜感激.

python django pickle

32
推荐指数
6
解决办法
3万
查看次数

如何在scikit-learn中用管道调整自定义内核函数的参数

目前我已经使用def函数成功定义了一个自定义内核函数(预先计算内核矩阵),现在我使用GridSearchCV函数来获取最佳参数.

因此,在自定义内核函数中,总共有2个参数将被调整(即下例中的gamm和sea_gamma),而且对于SVR模型,还必须调整cost c参数.但到目前为止,我可以使用GridSearchCV 调整成本c参数 - >请参考下面的第一部分:示例.

我搜索了一些类似的解决方案,例如:

是否可以在scikit-learn中使用网格搜索调整参数来定制内核?

它说:" 实现这一目标的一种方法是使用Pipeline,SVC(kernel ='precomputed')并将自定义内核函数包装为sklearn估计器(BaseEstimator和TransformerMixin的子类).)"但这仍然与我的情况不同然而,问题是,我尝试基于此解决方案解决问题,但到目前为止它没有打印任何输出,甚至是任何错误. - >请参考第二部分:管道解决方案.

第一部分:示例 - >我在网格搜索中的原始自定义内核和评分方法是:

    import numpy as np
    import pandas as pd
    import sklearn.svm as svm
    from sklearn import preprocessing,svm, datasets
    from sklearn.preprocessing import StandardScaler,  MaxAbsScaler
    from sklearn.metrics.pairwise import rbf_kernel
    from sklearn.grid_search import GridSearchCV
    from sklearn.svm import SVR
    from sklearn.pipeline import Pipeline
    from sklearn.metrics.scorer import make_scorer

    # weighting the vectors
    def distance_scale(X,Y):
        K = np.zeros((X.shape[0],Y.shape[0]))
        gamma_sea =192

        for i in range(X.shape[0]):
            for j …
Run Code Online (Sandbox Code Playgroud)

python pipeline svm scikit-learn grid-search

13
推荐指数
1
解决办法
1333
查看次数

标签 统计

python ×2

django ×1

grid-search ×1

pickle ×1

pipeline ×1

scikit-learn ×1

svm ×1