oops, sorry that's an artifact from a draft of that mesage.  Yes, I
went with your suggestion.  Specifying any kwargs to v_measure_score
in make_scorer raises AttributeErrors.

Thanks again,

L.

On Thu, May 15, 2014 at 8:17 AM, Joel Nothman <joel.noth...@gmail.com> wrote:
> I don't think
> v_measure_scorer = make_scorer(v_measure_score, labels_pred=kmeans.predict)
> does what you think it does.
>
> You should stick to
> v_measure_scorer = make_scorer(v_measure_score)
>
>
>
> On 15 May 2014 22:11, Lee Zamparo <zamp...@gmail.com> wrote:
>>
>> Seems the estimator.fit method needs the true labels, and that I
>> shouldn't pass either the true lables or the predicted labels to
>> v_measure_score (passing either triggers an AttributeError).  So now
>> I'm running with
>>
>>  # Make a scoring function for the pipeline
>> v_measure_scorer = make_scorer(v_measure_score,
>> labels_pred=kmeans.predict)
>>
>> # Parameters of pipelines are set using ‘__’ separated parameter names:
>> estimator = GridSearchCV(pipe, dict(kpca__gamma=gammas),
>> scoring=v_measure_scorer)
>> estimator.fit(D_scaled,D_labels)
>>
>> It's been running overnight, hopefully I get a result this morning.
>> Thanks for all your help,
>>
>> L.
>>
>> On Wed, May 14, 2014 at 11:12 AM, Lee Zamparo <zamp...@gmail.com> wrote:
>> > Combining the helpful suggestions of Andy & Joel I'm tyring the
>> > following:
>> >
>> > # Make a scoring function for the pipeline
>> > v_measure_scorer =
>> >
>> > make_scorer(v_measure_score,labels_true=labels[:,0],labels_pred=kmeans.predict)
>> >
>> > # Parameters of pipelines are set using ‘__’ separated parameter names:
>> > estimator = GridSearchCV(pipe, dict(kpca__gamma=gammas),
>> > scoring=v_measure_scorer)
>> > estimator.fit(D_scaled)
>> >
>> > Was this what you were referring to Andy?
>> >
>> > Thanks,
>> >
>> > Lee.
>> >
>> > On Wed, May 14, 2014 at 1:27 AM, Andreas Mueller <t3k...@gmail.com>
>> > wrote:
>> >> I think you should use the make_scorer function. Using labels_ will not
>> >> work, as it will only have labels for the training split, while the
>> >> performance is measured on the test split.
>> >>
>> >> On May 14, 2014 2:28 AM, "Joel Nothman" <joel.noth...@gmail.com> wrote:
>> >>>
>> >>> Hi Lee,
>> >>>
>> >>> The scoring parameter, if not an existing scoring name, needs to be a
>> >>> function with the signature:
>> >>>
>> >>> fn(estimator, X, y_true) -> score which increases with goodness
>> >>>
>> >>> So I think you want to define:
>> >>>
>> >>> def score_clusters(estimator, X, y):
>> >>>     return v_measure_score(y[:,0], kmeans.labels_))
>> >>>
>> >>> Then construct the GridSearchCV as:
>> >>>
>> >>> estimator = GridSearchCV(pipe, dict(kpca__gamma=gammas),
>> >>> scoring=score_clusters)
>> >>>
>> >>> It seems like there should be more predefined scorers available for
>> >>> clustering...
>> >>>
>> >>> Cheers,
>> >>>
>> >>> - Joel
>> >>>
>> >>>
>> >>> On 14 May 2014 09:10, Lee Zamparo <zamp...@gmail.com> wrote:
>> >>>>
>> >>>> Hi,
>> >>>>
>> >>>> I'm trying to use GridSearchCV and Pipeline to tune the gamma
>> >>>> parameter of kernel PCA.  I'd like to use kernel PCA to transform the
>> >>>> data, followed by kmeans to cluster the data, followed by v-measure
>> >>>> to
>> >>>> measure the goodness of fit of the clustering.
>> >>>>
>> >>>> Here's the relevant snippet of my script
>> >>>> -----
>> >>>> # Set up the kPCA -> kmeans -> v-measure pipeline
>> >>>> kpca = KernelPCA(kernel="rbf")
>> >>>> kmeans = KMeans(n_clusters=3)
>> >>>> pipe = Pipeline(steps=[('kpca', kpca), ('kmeans', kmeans)])
>> >>>>
>> >>>> # Range of parameters to consider for gamma in the RBF kernel for
>> >>>> kPCA
>> >>>> gammas = np.logspace(-10,2,num=100)
>> >>>>
>> >>>> # Parameters of pipelines are set using ‘__’ separated parameter
>> >>>> names:
>> >>>> estimator = GridSearchCV(pipe, dict(kpca__gamma=gammas),
>> >>>> scoring=v_measure_score(labels[:,0],kmeans.labels_))
>> >>>> estimator.fit(D_scaled)
>> >>>>
>> >>>> -----
>> >>>>
>> >>>> Yet I get an AttributeError claiming that the kmeans object has no
>> >>>> labels_ attribute.
>> >>>>
>> >>>> File "/home/lee/projects/SdA_reduce/utils/kernel_pca_pipeline.py",
>> >>>> line 86, in <module>
>> >>>>   estimator = GridSearchCV(pipe, dict(kpca__gamma=gammas),
>> >>>> scoring=v_measure_score(labels[:,0],kmeans.labels_))
>> >>>>
>> >>>> AttributeError: 'KMeans' object has no attribute 'labels_'
>> >>>>
>> >>>> Does anyone have any tips on how I should restructure my snippet to
>> >>>> get my desired outcome?
>> >>>>
>> >>>> Thanks,
>> >>>>
>> >>>> Lee.
>> >>>>
>> >>>>
>> >>>>
>> >>>> ------------------------------------------------------------------------------
>> >>>> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For
>> >>>> FREE
>> >>>> Instantly run your Selenium tests across 300+ browser/OS combos.
>> >>>> Get unparalleled scalability from the best Selenium testing platform
>> >>>> available
>> >>>> Simple to use. Nothing to install. Get started now for free."
>> >>>> http://p.sf.net/sfu/SauceLabs
>> >>>> _______________________________________________
>> >>>> Scikit-learn-general mailing list
>> >>>> Scikit-learn-general@lists.sourceforge.net
>> >>>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> ------------------------------------------------------------------------------
>> >>> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
>> >>> Instantly run your Selenium tests across 300+ browser/OS combos.
>> >>> Get unparalleled scalability from the best Selenium testing platform
>> >>> available
>> >>> Simple to use. Nothing to install. Get started now for free."
>> >>> http://p.sf.net/sfu/SauceLabs
>> >>> _______________________________________________
>> >>> Scikit-learn-general mailing list
>> >>> Scikit-learn-general@lists.sourceforge.net
>> >>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>> >>>
>> >>
>> >>
>> >> ------------------------------------------------------------------------------
>> >> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
>> >> Instantly run your Selenium tests across 300+ browser/OS combos.
>> >> Get unparalleled scalability from the best Selenium testing platform
>> >> available
>> >> Simple to use. Nothing to install. Get started now for free."
>> >> http://p.sf.net/sfu/SauceLabs
>> >> _______________________________________________
>> >> Scikit-learn-general mailing list
>> >> Scikit-learn-general@lists.sourceforge.net
>> >> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>> >>
>>
>>
>> ------------------------------------------------------------------------------
>> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
>> Instantly run your Selenium tests across 300+ browser/OS combos.
>> Get unparalleled scalability from the best Selenium testing platform
>> available
>> Simple to use. Nothing to install. Get started now for free."
>> http://p.sf.net/sfu/SauceLabs
>> _______________________________________________
>> Scikit-learn-general mailing list
>> Scikit-learn-general@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>
>
>
> ------------------------------------------------------------------------------
> "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
> Instantly run your Selenium tests across 300+ browser/OS combos.
> Get unparalleled scalability from the best Selenium testing platform
> available
> Simple to use. Nothing to install. Get started now for free."
> http://p.sf.net/sfu/SauceLabs
> _______________________________________________
> Scikit-learn-general mailing list
> Scikit-learn-general@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
>

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Scikit-learn-general mailing list
Scikit-learn-general@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scikit-learn-general

Reply via email to