GRIDSEARCH


In [7]:
dicts = {'test':np.array([1,2,3])}
dicts


Out[7]:
{'test': array([1, 2, 3])}

In [3]:
import sys
sys.path.append("../../src")
import features.feature_utils as fu
import models.model_utils as mu
import plots.plot_utils as pu
import log_utils as log
import math
from sklearn.model_selection import GridSearchCV
import numpy as np


def runGS(data, modelCore, modelOpt, parLabel, parRange, seqRegions, k=5, kInner= 4, pw=False, shuffle=True):

    dfDataset, featureBox = fu.CreateFeaturesFromData(data, seqRegions, pw, shuffle=shuffle)
    X = featureBox.values
    y = [math.sqrt(math.sqrt(u)) for u in dfDataset['mean_score']]

    parModel = mu.SetupModel(modelCore, modelOpt)
    parSet = mu.GetParameterSet(parLabel, parRange)
    model = mu.SelectModel(**parModel)
    print(featureBox.shape)
    print(parSet)
    GS = GridSearchCV(model, parSet, cv=k)
    GS.fit(X,y)

    fig1, ax = pu.ScatterPvT(GS, X, y)
    figures = [fig1]
    if len(parLabel) is 2:
        fig2, ax = pu.HeatmapCVDoublePar(GS)
        figures.append(fig2)
    if len(parLabel) is 1:
        fig2, ax = pu.HeatmapCVDoublePar(GS)
        figures.append(fig2)


    results = [str(GS.best_estimator_.get_params()),str(GS.best_score_),str(GS.cv_results_)]

    return results, figures

In [4]:
model = ['forestReg',None, None]
modelOpt= {}
parLabel = ['min_samples_split','max_depth']
parRange = [10,10] 
seqRegions = [[-7,12],[-6,11]]
k = 5 
kInner = 5
pw=False
data = '../../data/external/mut_rand_mod_lib.csv'

runGS(data, model, modelOpt, parLabel, parRange, seqRegions, k=k, kInner= kInner, pw=pw)


(254, 175)
{'max_depth': array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10]), 'min_samples_split': array([ 2,  3,  4,  5,  6,  7,  8,  9, 10, 11])}
Out[4]:
(["{'n_jobs': 12, 'criterion': 'mse', 'min_samples_split': 4, 'n_estimators': 50, 'min_samples_leaf': 1, 'min_impurity_split': 1e-07, 'verbose': 0, 'max_depth': 9, 'random_state': None, 'min_weight_fraction_leaf': 0.0, 'oob_score': False, 'max_features': None, 'max_leaf_nodes': None, 'bootstrap': True, 'warm_start': False}",
  '0.663203504808',
  "{'std_train_score': array([ 0.02381572,  0.02344105,  0.02281454,  0.0250568 ,  0.01929344,\n        0.02092272,  0.02388746,  0.0223102 ,  0.01477994,  0.02154218,\n        0.03148329,  0.02489873,  0.0226664 ,  0.02987762,  0.01789338,\n        0.03576455,  0.02477844,  0.02128343,  0.02915898,  0.03617381,\n        0.01355309,  0.01912877,  0.01640208,  0.01604899,  0.01820813,\n        0.0178282 ,  0.0129774 ,  0.01714286,  0.01455894,  0.01686691,\n        0.01318939,  0.01050799,  0.01529344,  0.01365781,  0.01182996,\n        0.01263496,  0.01203441,  0.01227606,  0.00958874,  0.01212398,\n        0.01015977,  0.00916433,  0.01218227,  0.01052844,  0.01196972,\n        0.00817027,  0.01353869,  0.01193479,  0.00935789,  0.0119468 ,\n        0.00840247,  0.0067178 ,  0.00816565,  0.00916074,  0.01031779,\n        0.00889194,  0.01161108,  0.01171675,  0.01110543,  0.01086689,\n        0.00342458,  0.00367845,  0.00890021,  0.00784233,  0.01318878,\n        0.01185188,  0.00941084,  0.01296744,  0.01336677,  0.01609111,\n        0.00384887,  0.00659159,  0.00735114,  0.01133586,  0.01232636,\n        0.00993336,  0.01351262,  0.01082948,  0.01098711,  0.01465392,\n        0.00257625,  0.00652117,  0.00961256,  0.00908135,  0.01088849,\n        0.01223392,  0.01222305,  0.01164992,  0.01421879,  0.0147483 ,\n        0.00259742,  0.00582858,  0.01001686,  0.00897111,  0.01331335,\n        0.00990992,  0.01049383,  0.01421171,  0.0145504 ,  0.014424  ]), 'param_max_depth': masked_array(data = [1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4\n 4 4 4 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 8 8 8 8\n 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10],\n             mask = [False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False],\n       fill_value = ?)\n, 'split2_test_score': array([ 0.25600366,  0.25992285,  0.26655443,  0.26162932,  0.27146135,\n        0.24269173,  0.27386652,  0.25531232,  0.28228033,  0.25508071,\n        0.45766892,  0.48275569,  0.48244377,  0.47322986,  0.48512714,\n        0.45903221,  0.47986868,  0.4640873 ,  0.45760594,  0.46205567,\n        0.53686191,  0.5401598 ,  0.5684092 ,  0.55728158,  0.55176481,\n        0.59128459,  0.55264241,  0.57701856,  0.56449874,  0.55993681,\n        0.60632346,  0.62025897,  0.61751834,  0.64513126,  0.60699866,\n        0.64519266,  0.62382447,  0.59389214,  0.61655845,  0.60194978,\n        0.64477768,  0.6514042 ,  0.66998896,  0.65303701,  0.64157511,\n        0.65262621,  0.62734754,  0.6406867 ,  0.64551622,  0.64238344,\n        0.68888654,  0.65281203,  0.66149859,  0.66871683,  0.64749777,\n        0.64586708,  0.68079968,  0.66470651,  0.62794787,  0.640033  ,\n        0.65025165,  0.66570018,  0.67166095,  0.67664266,  0.65785717,\n        0.62382532,  0.66716493,  0.65020663,  0.68013552,  0.65540927,\n        0.67479629,  0.65839486,  0.66857958,  0.68096107,  0.65431838,\n        0.6705102 ,  0.63709329,  0.67866831,  0.64554876,  0.67928603,\n        0.68514279,  0.71267573,  0.68108015,  0.70558563,  0.67992507,\n        0.64402536,  0.68109568,  0.68176923,  0.65681984,  0.66110713,\n        0.66914059,  0.70620439,  0.6424824 ,  0.65279507,  0.67505636,\n        0.66133959,  0.65948292,  0.65229011,  0.68592123,  0.63404586]), 'split0_test_score': array([ 0.23883296,  0.25673538,  0.22470203,  0.25614097,  0.24239797,\n        0.25335781,  0.23398488,  0.23190149,  0.25161614,  0.24161712,\n        0.3092617 ,  0.33300142,  0.33806008,  0.35580766,  0.31142749,\n        0.34030055,  0.33995546,  0.33276218,  0.34885031,  0.35440492,\n        0.27264104,  0.36199948,  0.34093065,  0.28020327,  0.34000597,\n        0.3188064 ,  0.3081895 ,  0.35177184,  0.33917122,  0.37104694,\n        0.44175391,  0.43956994,  0.41300127,  0.447871  ,  0.44804207,\n        0.43808245,  0.44229893,  0.4178181 ,  0.42210956,  0.43112179,\n        0.51940471,  0.46908066,  0.51580761,  0.51384916,  0.50941208,\n        0.49716307,  0.50038545,  0.50050723,  0.47016655,  0.43358588,\n        0.55983708,  0.55222372,  0.53734682,  0.52686367,  0.53840836,\n        0.55242486,  0.5508136 ,  0.5583015 ,  0.51156093,  0.53866386,\n        0.58813119,  0.61022962,  0.61835723,  0.57805024,  0.58397703,\n        0.59940469,  0.54227971,  0.56046887,  0.55940418,  0.53801586,\n        0.64378906,  0.60438406,  0.63166139,  0.62400763,  0.6165576 ,\n        0.59834467,  0.5870591 ,  0.5879879 ,  0.58542371,  0.57367373,\n        0.63656156,  0.6334332 ,  0.6208455 ,  0.62869817,  0.62323369,\n        0.61531552,  0.62265865,  0.56450993,  0.55069763,  0.56193283,\n        0.62539236,  0.61833695,  0.62756523,  0.61161058,  0.5971208 ,\n        0.61758008,  0.5853508 ,  0.56191498,  0.59288796,  0.56235375]), 'std_score_time': array([  3.09197833e-04,   3.01930811e-04,   2.15202923e-04,\n         4.58724816e-04,   1.96094642e-04,   2.38437032e-04,\n         3.17849685e-04,   3.73859946e-04,   2.91359108e-04,\n         3.81349527e-04,   2.29854227e-04,   3.14099785e-04,\n         2.85550802e-04,   4.53843893e-04,   3.47221490e-04,\n         1.57411177e-03,   4.70689976e-04,   3.49193454e-04,\n         1.72612193e-04,   3.49495797e-04,   3.06658852e-04,\n         6.60143798e-04,   2.64129843e-04,   4.52414617e-04,\n         3.45246008e-04,   1.89072854e-04,   3.93056959e-04,\n         2.22331399e-04,   3.42461267e-04,   2.46353588e-04,\n         5.73542065e-04,   2.28192892e-04,   2.00961571e-04,\n         1.27831193e-04,   5.20308739e-04,   1.39461182e-04,\n         2.70575715e-04,   1.35840437e-04,   2.32784477e-04,\n         1.40969501e-04,   5.06209110e-04,   3.67677300e-04,\n         4.25082662e-04,   3.65094474e-04,   2.30807972e-04,\n         2.47724435e-04,   1.35998488e-04,   2.08440101e-04,\n         2.56731252e-04,   5.11356776e-04,   2.47300577e-04,\n         4.13145676e-04,   8.83895639e-04,   3.03063023e-04,\n         2.60663939e-04,   4.02041228e-04,   2.98282571e-04,\n         6.64994588e-04,   1.84339066e-04,   1.75993393e-04,\n         3.32903294e-04,   4.78706121e-04,   2.38046212e-04,\n         2.05074596e-04,   2.88104091e-03,   1.55392853e-04,\n         3.36361148e-04,   4.16653220e-04,   1.51934237e-04,\n         4.71160656e-04,   3.05358735e-04,   6.58034518e-04,\n         6.85542797e-04,   4.16698315e-04,   2.85861971e-04,\n         4.40996818e-04,   2.19289451e-04,   4.17510687e-04,\n         6.72465898e-04,   3.26038382e-04,   1.19976319e-03,\n         3.20875150e-04,   6.38889551e-05,   2.74116649e-04,\n         2.10999413e-04,   4.41661017e-04,   3.54829278e-04,\n         2.16378730e-04,   2.00562210e-04,   2.02375386e-04,\n         3.28370806e-04,   9.10881726e-04,   4.13560199e-04,\n         2.37585012e-04,   2.54558569e-04,   3.84765319e-04,\n         1.36179082e-04,   1.08939395e-04,   2.17728515e-04,\n         2.57757880e-04]), 'split3_train_score': array([ 0.30288656,  0.29649265,  0.30363474,  0.30874699,  0.30581206,\n        0.3008394 ,  0.29835934,  0.30358538,  0.30665076,  0.30657232,\n        0.51153693,  0.50628367,  0.50855774,  0.51454848,  0.50153004,\n        0.49757037,  0.49670378,  0.49902614,  0.5031414 ,  0.51952952,\n        0.6189313 ,  0.62065738,  0.62395179,  0.62225912,  0.62485837,\n        0.6285392 ,  0.61839156,  0.61743222,  0.62375008,  0.61271386,\n        0.71944781,  0.71763958,  0.72006505,  0.72440676,  0.71663036,\n        0.7157982 ,  0.71598169,  0.71189653,  0.7141812 ,  0.70365084,\n        0.80488557,  0.80048743,  0.79344402,  0.78407549,  0.78422272,\n        0.78597653,  0.77580713,  0.77217815,  0.76329267,  0.75856412,\n        0.85856857,  0.86020021,  0.84577153,  0.84154261,  0.82701042,\n        0.82208877,  0.80690458,  0.80407561,  0.79469011,  0.79539162,\n        0.90875975,  0.90026972,  0.87301068,  0.86230286,  0.84913198,\n        0.83904049,  0.8345751 ,  0.82203345,  0.81502431,  0.79913291,\n        0.93061016,  0.90923598,  0.8930487 ,  0.87169192,  0.86715061,\n        0.85570364,  0.83713882,  0.83531316,  0.82426655,  0.80781042,\n        0.94368904,  0.91745439,  0.89794023,  0.88306244,  0.86957676,\n        0.86059425,  0.84691393,  0.83457994,  0.82796166,  0.81761559,\n        0.94751899,  0.93235044,  0.90520751,  0.88880991,  0.87230522,\n        0.86132846,  0.85401262,  0.83747674,  0.82861977,  0.81938589]), 'std_test_score': array([ 0.07489123,  0.08192653,  0.07584838,  0.07050813,  0.07809555,\n        0.07870146,  0.0751685 ,  0.07502318,  0.07925325,  0.07539798,\n        0.0986146 ,  0.09961732,  0.09837558,  0.09018917,  0.10729044,\n        0.09447401,  0.09429187,  0.10209343,  0.09194431,  0.08894134,\n        0.14777768,  0.12710322,  0.12437256,  0.14506145,  0.12928496,\n        0.13833082,  0.13363996,  0.12588611,  0.12584169,  0.11377117,\n        0.10974887,  0.10846237,  0.11079962,  0.10874274,  0.10576746,\n        0.10955334,  0.10976864,  0.11850106,  0.11850832,  0.11562083,\n        0.09257586,  0.11367541,  0.11106465,  0.10296368,  0.09634004,\n        0.10184764,  0.10357189,  0.09723455,  0.10747534,  0.12450117,\n        0.09486836,  0.09617379,  0.09350025,  0.09357726,  0.09598381,\n        0.10343544,  0.0963556 ,  0.09426774,  0.10004653,  0.09467703,\n        0.07726045,  0.06730073,  0.07096449,  0.09805235,  0.08517787,\n        0.08266688,  0.09634173,  0.08704525,  0.0928316 ,  0.08571091,\n        0.08034227,  0.07366324,  0.06919064,  0.08299132,  0.07966966,\n        0.07904055,  0.07574749,  0.07025321,  0.08093685,  0.07359463,\n        0.07143027,  0.06640035,  0.08665362,  0.0821741 ,  0.076101  ,\n        0.08027665,  0.08746495,  0.08390687,  0.0845805 ,  0.08505725,\n        0.0515567 ,  0.07613622,  0.08042045,  0.08912977,  0.07896042,\n        0.07143137,  0.07662901,  0.07864006,  0.0810533 ,  0.08514804]), 'param_min_samples_split': masked_array(data = [2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11 2 3 4 5\n 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9\n 10 11 2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11],\n             mask = [False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False False False False False False False False False\n False False False False],\n       fill_value = ?)\n, 'split2_train_score': array([ 0.29387391,  0.29503205,  0.29868404,  0.29947232,  0.30138218,\n        0.28756491,  0.304069  ,  0.29414309,  0.30642838,  0.29334764,\n        0.46826974,  0.49245866,  0.49205324,  0.48839867,  0.48718426,\n        0.47610816,  0.49520426,  0.48259127,  0.47616736,  0.48396741,\n        0.60269617,  0.61777155,  0.62404551,  0.62014502,  0.61608191,\n        0.62655319,  0.61314667,  0.62202532,  0.62890044,  0.61120361,\n        0.73021024,  0.73505961,  0.7286764 ,  0.72851985,  0.72660133,\n        0.72920243,  0.72182457,  0.71306501,  0.70962146,  0.71148012,\n        0.81067863,  0.8101032 ,  0.808204  ,  0.797909  ,  0.78951504,\n        0.79028428,  0.77007393,  0.76939996,  0.7695324 ,  0.75969364,\n        0.87084613,  0.86326371,  0.85770207,  0.84413652,  0.83549927,\n        0.82583282,  0.81503581,  0.80915619,  0.79369687,  0.79037747,\n        0.91021725,  0.9011581 ,  0.88486454,  0.87258239,  0.8535676 ,\n        0.8483549 ,  0.83510499,  0.82178691,  0.82258735,  0.80168148,\n        0.92840606,  0.91229046,  0.90006203,  0.88441229,  0.86583109,\n        0.85447137,  0.83794281,  0.83539315,  0.81891486,  0.81799314,\n        0.94351506,  0.93175087,  0.91056606,  0.89187348,  0.87356591,\n        0.85176198,  0.85085401,  0.83482227,  0.82633758,  0.81504762,\n        0.95200479,  0.93553524,  0.90880926,  0.89989002,  0.87663215,\n        0.86966279,  0.85019894,  0.84254492,  0.83700815,  0.8253126 ]), 'mean_fit_time': array([ 0.15429931,  0.15464311,  0.15449114,  0.16488857,  0.159516  ,\n        0.14387751,  0.15336514,  0.16568031,  0.15452142,  0.14498391,\n        0.16586595,  0.15443969,  0.16067734,  0.15453968,  0.16068363,\n        0.16001453,  0.14927783,  0.15962014,  0.15460958,  0.16029181,\n        0.16499319,  0.16068459,  0.15961895,  0.15503283,  0.15429525,\n        0.15881276,  0.16033587,  0.1602006 ,  0.15444264,  0.15979819,\n        0.15297942,  0.16057138,  0.1637393 ,  0.15476971,  0.15474143,\n        0.165275  ,  0.1651135 ,  0.16287403,  0.15468822,  0.16579719,\n        0.15921826,  0.16575828,  0.16495008,  0.16492376,  0.15994921,\n        0.14897375,  0.16478019,  0.16502504,  0.16547656,  0.1659246 ,\n        0.1650672 ,  0.16571145,  0.16378341,  0.16592484,  0.16558557,\n        0.16468201,  0.16577711,  0.15979271,  0.16559324,  0.16478724,\n        0.15924063,  0.16060419,  0.16565228,  0.1660378 ,  0.15833502,\n        0.15969253,  0.16485634,  0.16072645,  0.1647666 ,  0.15838075,\n        0.16506763,  0.16573601,  0.16534595,  0.16357522,  0.16061053,\n        0.15931816,  0.16528292,  0.16544447,  0.16546502,  0.16020856,\n        0.16445894,  0.16564202,  0.16577702,  0.16564431,  0.16554646,\n        0.16580396,  0.16070952,  0.15963368,  0.16023173,  0.15984883,\n        0.16568098,  0.15945535,  0.16507177,  0.16552572,  0.1659761 ,\n        0.15985003,  0.16574249,  0.16579361,  0.16575851,  0.16598248]), 'split4_test_score': array([ 0.14661287,  0.1385772 ,  0.15035779,  0.14874518,  0.13519567,\n        0.1321969 ,  0.14712061,  0.1374981 ,  0.12739062,  0.13860247,\n        0.31913844,  0.30739481,  0.32413736,  0.32546156,  0.311093  ,\n        0.33604159,  0.33618301,  0.31238268,  0.32636828,  0.32216274,\n        0.39178036,  0.38282266,  0.41666486,  0.42222081,  0.37853079,\n        0.39933597,  0.38829673,  0.40462436,  0.40219272,  0.39414762,\n        0.45931117,  0.45510926,  0.48919468,  0.47039254,  0.47128825,\n        0.47281566,  0.47304703,  0.46589864,  0.454454  ,  0.47088591,\n        0.49196173,  0.46943937,  0.46597408,  0.47293108,  0.49669024,\n        0.49550268,  0.48085963,  0.47384411,  0.48476076,  0.47612906,\n        0.4917351 ,  0.48631905,  0.48673581,  0.52245395,  0.49493007,\n        0.47055163,  0.50068944,  0.49640877,  0.49448576,  0.51795618,\n        0.50910617,  0.52853443,  0.53319549,  0.47964086,  0.49054922,\n        0.49463772,  0.49924493,  0.51712892,  0.5013032 ,  0.52473343,\n        0.50749035,  0.53914703,  0.52326278,  0.51118946,  0.52063378,\n        0.52961627,  0.53384832,  0.53912732,  0.54039793,  0.56074081,\n        0.52203995,  0.54175265,  0.51653255,  0.50647728,  0.52129696,\n        0.5191136 ,  0.4970564 ,  0.5226927 ,  0.55687985,  0.51544816,\n        0.56495944,  0.53079193,  0.52269669,  0.50724898,  0.51648649,\n        0.52601641,  0.55052109,  0.53686395,  0.52082027,  0.53449819]), 'rank_test_score': array([ 97,  91,  96,  93,  95,  99,  92, 100,  94,  98,  90,  88,  82,\n        83,  89,  84,  81,  87,  85,  86,  80,  74,  73,  77,  78,  72,\n        79,  71,  76,  75,  66,  69,  67,  61,  64,  63,  62,  68,  70,\n        65,  55,  57,  49,  53,  52,  51,  56,  59,  58,  60,  34,  46,\n        50,  38,  47,  48,  36,  37,  54,  40,  41,  27,  13,  32,  43,\n        45,  42,  35,  30,  44,   6,  16,  21,   3,  17,  18,  29,  26,\n        20,  10,   8,   2,   1,   5,   7,  22,  14,  28,  19,  39,  15,\n         4,   9,  12,  25,  23,  11,  33,  24,  31], dtype=int32), 'split1_test_score': array([ 0.35330151,  0.351076  ,  0.3448477 ,  0.34065408,  0.34724298,\n        0.33660954,  0.33777912,  0.33617861,  0.33146306,  0.34391692,\n        0.53251101,  0.54874993,  0.56532422,  0.55034304,  0.57211967,\n        0.56338014,  0.55751315,  0.57654959,  0.55304626,  0.53862383,\n        0.67625871,  0.68418271,  0.68983369,  0.69149847,  0.67613556,\n        0.68796412,  0.66808813,  0.67964233,  0.6777445 ,  0.66012283,\n        0.71647766,  0.71320104,  0.71440095,  0.72196092,  0.71879469,\n        0.72371597,  0.72398482,  0.72985096,  0.73842764,  0.74072338,\n        0.72993935,  0.74151088,  0.7494562 ,  0.73498986,  0.73899048,\n        0.7458436 ,  0.74899151,  0.71947658,  0.74423508,  0.75320897,\n        0.71966506,  0.74122109,  0.69845903,  0.74853168,  0.73396633,\n        0.75723566,  0.76677369,  0.75218982,  0.75823709,  0.75807016,\n        0.7169076 ,  0.6866798 ,  0.70169027,  0.75342395,  0.72077698,\n        0.71181991,  0.75336267,  0.75374042,  0.73809566,  0.7419365 ,\n        0.7089331 ,  0.71104249,  0.72010621,  0.73578125,  0.74940352,\n        0.75645204,  0.74813312,  0.72926681,  0.76224229,  0.74242778,\n        0.70525803,  0.69968334,  0.74320618,  0.73358641,  0.71958178,\n        0.75028835,  0.7488733 ,  0.74285846,  0.74548809,  0.75173963,\n        0.70055975,  0.67386932,  0.74881878,  0.75098999,  0.72724705,\n        0.73264428,  0.75163335,  0.7451634 ,  0.75485486,  0.76256447]), 'std_fit_time': array([ 0.0128715 ,  0.01271405,  0.01227014,  0.00106546,  0.01065341,\n        0.00991044,  0.01249495,  0.00050841,  0.01309332,  0.01030247,\n        0.00096631,  0.01241118,  0.01062643,  0.01348701,  0.01043543,\n        0.01007593,  0.01369619,  0.01005506,  0.01231853,  0.01077192,\n        0.00125715,  0.01064256,  0.01066504,  0.01312277,  0.01272336,\n        0.01061536,  0.01050573,  0.01120518,  0.0132763 ,  0.0102774 ,\n        0.01185247,  0.00996406,  0.00183569,  0.01300242,  0.01304209,\n        0.00066231,  0.00121819,  0.00530931,  0.01347459,  0.00045463,\n        0.01097076,  0.00028253,  0.00129616,  0.00174106,  0.01055492,\n        0.0135622 ,  0.00139582,  0.00106997,  0.00061606,  0.00057907,\n        0.00109853,  0.0006563 ,  0.00109704,  0.00027515,  0.00038231,\n        0.00180854,  0.00020877,  0.0103049 ,  0.00040265,  0.00101627,\n        0.01021151,  0.01080714,  0.00070556,  0.00118631,  0.01167655,\n        0.01067094,  0.00148924,  0.010684  ,  0.00090425,  0.01028273,\n        0.00138999,  0.00062938,  0.00107574,  0.00147561,  0.01102482,\n        0.01099802,  0.00085553,  0.00017583,  0.0014314 ,  0.0101723 ,\n        0.00095662,  0.00047935,  0.00056172,  0.0006088 ,  0.00051483,\n        0.00017803,  0.01049325,  0.01007824,  0.01067426,  0.01146291,\n        0.00063707,  0.01053136,  0.00081174,  0.00057737,  0.00052265,\n        0.01079463,  0.00074954,  0.00029713,  0.00033976,  0.00022575]), 'params': ({'max_depth': 1, 'min_samples_split': 2}, {'max_depth': 1, 'min_samples_split': 3}, {'max_depth': 1, 'min_samples_split': 4}, {'max_depth': 1, 'min_samples_split': 5}, {'max_depth': 1, 'min_samples_split': 6}, {'max_depth': 1, 'min_samples_split': 7}, {'max_depth': 1, 'min_samples_split': 8}, {'max_depth': 1, 'min_samples_split': 9}, {'max_depth': 1, 'min_samples_split': 10}, {'max_depth': 1, 'min_samples_split': 11}, {'max_depth': 2, 'min_samples_split': 2}, {'max_depth': 2, 'min_samples_split': 3}, {'max_depth': 2, 'min_samples_split': 4}, {'max_depth': 2, 'min_samples_split': 5}, {'max_depth': 2, 'min_samples_split': 6}, {'max_depth': 2, 'min_samples_split': 7}, {'max_depth': 2, 'min_samples_split': 8}, {'max_depth': 2, 'min_samples_split': 9}, {'max_depth': 2, 'min_samples_split': 10}, {'max_depth': 2, 'min_samples_split': 11}, {'max_depth': 3, 'min_samples_split': 2}, {'max_depth': 3, 'min_samples_split': 3}, {'max_depth': 3, 'min_samples_split': 4}, {'max_depth': 3, 'min_samples_split': 5}, {'max_depth': 3, 'min_samples_split': 6}, {'max_depth': 3, 'min_samples_split': 7}, {'max_depth': 3, 'min_samples_split': 8}, {'max_depth': 3, 'min_samples_split': 9}, {'max_depth': 3, 'min_samples_split': 10}, {'max_depth': 3, 'min_samples_split': 11}, {'max_depth': 4, 'min_samples_split': 2}, {'max_depth': 4, 'min_samples_split': 3}, {'max_depth': 4, 'min_samples_split': 4}, {'max_depth': 4, 'min_samples_split': 5}, {'max_depth': 4, 'min_samples_split': 6}, {'max_depth': 4, 'min_samples_split': 7}, {'max_depth': 4, 'min_samples_split': 8}, {'max_depth': 4, 'min_samples_split': 9}, {'max_depth': 4, 'min_samples_split': 10}, {'max_depth': 4, 'min_samples_split': 11}, {'max_depth': 5, 'min_samples_split': 2}, {'max_depth': 5, 'min_samples_split': 3}, {'max_depth': 5, 'min_samples_split': 4}, {'max_depth': 5, 'min_samples_split': 5}, {'max_depth': 5, 'min_samples_split': 6}, {'max_depth': 5, 'min_samples_split': 7}, {'max_depth': 5, 'min_samples_split': 8}, {'max_depth': 5, 'min_samples_split': 9}, {'max_depth': 5, 'min_samples_split': 10}, {'max_depth': 5, 'min_samples_split': 11}, {'max_depth': 6, 'min_samples_split': 2}, {'max_depth': 6, 'min_samples_split': 3}, {'max_depth': 6, 'min_samples_split': 4}, {'max_depth': 6, 'min_samples_split': 5}, {'max_depth': 6, 'min_samples_split': 6}, {'max_depth': 6, 'min_samples_split': 7}, {'max_depth': 6, 'min_samples_split': 8}, {'max_depth': 6, 'min_samples_split': 9}, {'max_depth': 6, 'min_samples_split': 10}, {'max_depth': 6, 'min_samples_split': 11}, {'max_depth': 7, 'min_samples_split': 2}, {'max_depth': 7, 'min_samples_split': 3}, {'max_depth': 7, 'min_samples_split': 4}, {'max_depth': 7, 'min_samples_split': 5}, {'max_depth': 7, 'min_samples_split': 6}, {'max_depth': 7, 'min_samples_split': 7}, {'max_depth': 7, 'min_samples_split': 8}, {'max_depth': 7, 'min_samples_split': 9}, {'max_depth': 7, 'min_samples_split': 10}, {'max_depth': 7, 'min_samples_split': 11}, {'max_depth': 8, 'min_samples_split': 2}, {'max_depth': 8, 'min_samples_split': 3}, {'max_depth': 8, 'min_samples_split': 4}, {'max_depth': 8, 'min_samples_split': 5}, {'max_depth': 8, 'min_samples_split': 6}, {'max_depth': 8, 'min_samples_split': 7}, {'max_depth': 8, 'min_samples_split': 8}, {'max_depth': 8, 'min_samples_split': 9}, {'max_depth': 8, 'min_samples_split': 10}, {'max_depth': 8, 'min_samples_split': 11}, {'max_depth': 9, 'min_samples_split': 2}, {'max_depth': 9, 'min_samples_split': 3}, {'max_depth': 9, 'min_samples_split': 4}, {'max_depth': 9, 'min_samples_split': 5}, {'max_depth': 9, 'min_samples_split': 6}, {'max_depth': 9, 'min_samples_split': 7}, {'max_depth': 9, 'min_samples_split': 8}, {'max_depth': 9, 'min_samples_split': 9}, {'max_depth': 9, 'min_samples_split': 10}, {'max_depth': 9, 'min_samples_split': 11}, {'max_depth': 10, 'min_samples_split': 2}, {'max_depth': 10, 'min_samples_split': 3}, {'max_depth': 10, 'min_samples_split': 4}, {'max_depth': 10, 'min_samples_split': 5}, {'max_depth': 10, 'min_samples_split': 6}, {'max_depth': 10, 'min_samples_split': 7}, {'max_depth': 10, 'min_samples_split': 8}, {'max_depth': 10, 'min_samples_split': 9}, {'max_depth': 10, 'min_samples_split': 10}, {'max_depth': 10, 'min_samples_split': 11}), 'split3_test_score': array([ 0.34023579,  0.36899589,  0.35345396,  0.34135184,  0.34637419,\n        0.35331625,  0.35620774,  0.34191657,  0.35412555,  0.34101156,\n        0.53263873,  0.52414981,  0.52623128,  0.52665805,  0.51089186,\n        0.53248654,  0.53378053,  0.51223738,  0.53007008,  0.53092175,\n        0.61475789,  0.61850302,  0.57763585,  0.60633724,  0.59976095,\n        0.60520678,  0.59454094,  0.61498528,  0.5959426 ,  0.59471864,\n        0.66538594,  0.6457738 ,  0.65558366,  0.65499646,  0.66209557,\n        0.63966237,  0.66588193,  0.67108355,  0.63737712,  0.66023594,\n        0.68288394,  0.68913531,  0.7100172 ,  0.69828375,  0.68762316,\n        0.68743899,  0.68380788,  0.67540647,  0.66950268,  0.69589192,\n        0.73010581,  0.7129883 ,  0.72703775,  0.70899579,  0.72227486,\n        0.70706281,  0.67987529,  0.70523148,  0.68001734,  0.71722021,\n        0.7060848 ,  0.72183885,  0.73720409,  0.70802024,  0.70725944,\n        0.72168398,  0.70230533,  0.70015783,  0.71956723,  0.69399285,\n        0.74097702,  0.74551367,  0.70002123,  0.73176824,  0.7148069 ,\n        0.69996022,  0.69501648,  0.69091933,  0.7137194 ,  0.71347396,\n        0.72062573,  0.71659859,  0.75147724,  0.70590081,  0.72927167,\n        0.71331928,  0.71094568,  0.69990723,  0.74001584,  0.68369508,\n        0.70152975,  0.75215043,  0.72807331,  0.73915596,  0.71509875,\n        0.69856068,  0.7208724 ,  0.69542496,  0.67916889,  0.70410916]), 'mean_test_score': array([ 0.26747131,  0.27559881,  0.26844627,  0.27018049,  0.26905939,\n        0.26415192,  0.27027473,  0.26104592,  0.26993413,  0.26453963,\n        0.43068118,  0.43972929,  0.447724  ,  0.44677578,  0.43863198,\n        0.44668209,  0.44990614,  0.4401047 ,  0.4436481 ,  0.44210414,\n        0.49887998,  0.51806389,  0.51909654,  0.5118598 ,  0.50975422,\n        0.52099667,  0.50280058,  0.52608479,  0.51635766,  0.51647428,\n        0.57831712,  0.57525376,  0.57828917,  0.58853374,  0.58187753,\n        0.58433114,  0.58625137,  0.576141  ,  0.57425516,  0.58141682,\n        0.61427314,  0.6046443 ,  0.62286407,  0.61517599,  0.61532344,\n        0.61618819,  0.60878005,  0.60248871,  0.60330112,  0.60072848,\n        0.63862195,  0.62967502,  0.62274898,  0.63555592,  0.62793707,\n        0.62724288,  0.63632223,  0.6359147 ,  0.6149221 ,  0.63484708,\n        0.63458837,  0.64304564,  0.652891  ,  0.6397836 ,  0.63264119,\n        0.63080832,  0.6333976 ,  0.63680987,  0.64024603,  0.63123523,\n        0.65577869,  0.65213953,  0.64922019,  0.65731457,  0.65165786,\n        0.65145448,  0.64064889,  0.64561152,  0.64989582,  0.65428731,\n        0.65444485,  0.66129751,  0.6632035 ,  0.65663853,  0.65518689,\n        0.64892147,  0.65273645,  0.64281859,  0.65034679,  0.6352544 ,\n        0.6526603 ,  0.65676462,  0.65444394,  0.65293142,  0.64671258,\n        0.64770542,  0.65397783,  0.63873096,  0.64722635,  0.63992774]), 'mean_score_time': array([ 0.10839548,  0.1084322 ,  0.10824542,  0.10825281,  0.10823622,\n        0.10820556,  0.10823727,  0.10827231,  0.10788126,  0.10816903,\n        0.10778708,  0.10790687,  0.10828247,  0.10790954,  0.10831399,\n        0.10701137,  0.10811501,  0.10828662,  0.10826693,  0.10816941,\n        0.10824666,  0.10819468,  0.10840864,  0.10817003,  0.10805511,\n        0.10842147,  0.10847425,  0.10836   ,  0.10837398,  0.10813065,\n        0.1079967 ,  0.10846672,  0.10849376,  0.10845628,  0.10820737,\n        0.10838428,  0.10834785,  0.10831213,  0.10843105,  0.10825591,\n        0.10821371,  0.10812802,  0.10809422,  0.10815668,  0.10835938,\n        0.10828433,  0.10829964,  0.10832639,  0.10843863,  0.10815644,\n        0.10838976,  0.10824513,  0.10740399,  0.10820241,  0.10856533,\n        0.10842133,  0.10849514,  0.10800848,  0.10839481,  0.10838923,\n        0.1081573 ,  0.10812297,  0.10829425,  0.10834785,  0.10597897,\n        0.1084281 ,  0.10829186,  0.10791125,  0.10867915,  0.10841899,\n        0.10820856,  0.10801435,  0.10780764,  0.1082346 ,  0.10829983,\n        0.10812707,  0.10821691,  0.10838799,  0.10810518,  0.10840259,\n        0.10803781,  0.10831342,  0.10841579,  0.10832982,  0.1085115 ,\n        0.10805707,  0.10815568,  0.10833898,  0.10830164,  0.10831714,\n        0.10835085,  0.1076242 ,  0.10813985,  0.10849123,  0.10814691,\n        0.10853891,  0.10829587,  0.10848236,  0.10831761,  0.10820708]), 'split4_train_score': array([ 0.35433782,  0.34783357,  0.35171179,  0.35098272,  0.33922456,\n        0.34186961,  0.35119906,  0.3391903 ,  0.33021768,  0.34320829,\n        0.54127588,  0.52432651,  0.53518349,  0.54524141,  0.5162523 ,\n        0.55124867,  0.5462312 ,  0.52784516,  0.54165561,  0.53942165,\n        0.63605078,  0.65002544,  0.64840818,  0.64319001,  0.63808905,\n        0.63734286,  0.63600965,  0.64472393,  0.63998026,  0.64609265,\n        0.75381015,  0.74952015,  0.75939215,  0.75607384,  0.74834955,\n        0.74657182,  0.74592138,  0.74162907,  0.73464977,  0.73173476,\n        0.83472268,  0.8271646 ,  0.83044376,  0.81673703,  0.81883607,\n        0.80834148,  0.80961809,  0.80308927,  0.79073962,  0.78714735,\n        0.88450323,  0.87833861,  0.87051571,  0.86561836,  0.8580459 ,\n        0.84273126,  0.84159531,  0.83499571,  0.82326682,  0.82099962,\n        0.91759029,  0.90622825,  0.90077719,  0.88297854,  0.88361201,\n        0.87192317,  0.85841041,  0.8552237 ,  0.84895844,  0.84005884,\n        0.93742967,  0.92855817,  0.91518925,  0.90580486,  0.89782511,\n        0.88056852,  0.87214755,  0.86194207,  0.84842455,  0.84958058,\n        0.9463098 ,  0.93729328,  0.92782227,  0.90961113,  0.89928189,\n        0.88782675,  0.87812249,  0.86320845,  0.86359052,  0.85133969,\n        0.94890149,  0.93831444,  0.93223745,  0.91358528,  0.90382884,\n        0.88737369,  0.87797455,  0.86893616,  0.86618479,  0.85151583]), 'mean_train_score': array([ 0.31042732,  0.30371204,  0.31026911,  0.30980724,  0.30699483,\n        0.30603128,  0.30970097,  0.30531501,  0.30781132,  0.30608687,\n        0.50127738,  0.4993544 ,  0.50586369,  0.50960363,  0.4983778 ,\n        0.50299718,  0.50741115,  0.50080899,  0.5011486 ,  0.50370887,\n        0.61709164,  0.62616055,  0.62638302,  0.6221161 ,  0.62110497,\n        0.62325918,  0.62115158,  0.62431   ,  0.62534701,  0.62419751,\n        0.73368953,  0.73249849,  0.73071372,  0.73262672,  0.72852074,\n        0.72654455,  0.72552388,  0.7194804 ,  0.716438  ,  0.71023375,\n        0.81631767,  0.81081444,  0.80829083,  0.80054888,  0.79916988,\n        0.79231986,  0.78548841,  0.78047439,  0.77387897,  0.76715985,\n        0.87277883,  0.86581775,  0.8586999 ,  0.84769694,  0.83936406,\n        0.82732931,  0.82159193,  0.81550961,  0.80413582,  0.80042302,\n        0.91222952,  0.90028915,  0.88679396,  0.87345149,  0.86239391,\n        0.85125901,  0.84073667,  0.83058504,  0.82359457,  0.81342563,\n        0.93282125,  0.91711305,  0.9036156 ,  0.88671136,  0.87437086,\n        0.86294252,  0.84807648,  0.84200092,  0.82925078,  0.82105496,\n        0.94256469,  0.92850074,  0.9119098 ,  0.89443302,  0.87994343,\n        0.86734592,  0.85738723,  0.84140704,  0.83699981,  0.82392639,\n        0.94784404,  0.93273643,  0.915553  ,  0.89926381,  0.88167274,\n        0.86955123,  0.85801191,  0.84389057,  0.83877596,  0.82876677]), 'split1_train_score': array([ 0.28672443,  0.27787494,  0.2838735 ,  0.2737933 ,  0.27901209,\n        0.28473801,  0.27913729,  0.27254095,  0.2839217 ,  0.2783135 ,\n        0.46093028,  0.45469632,  0.47082448,  0.4643377 ,  0.47003271,\n        0.45510527,  0.47524351,  0.47306152,  0.46214921,  0.442415  ,\n        0.60108633,  0.59761969,  0.59904965,  0.59440128,  0.58868731,\n        0.58852671,  0.60265465,  0.59704127,  0.59843903,  0.60761392,\n        0.72137331,  0.72668345,  0.71559112,  0.7161889 ,  0.71704428,\n        0.7104929 ,  0.71251894,  0.70731046,  0.70770119,  0.69518274,\n        0.81300694,  0.81211679,  0.80622905,  0.79982466,  0.80100647,\n        0.78717805,  0.78486708,  0.78027177,  0.76969421,  0.77459906,\n        0.87474559,  0.86690914,  0.86317636,  0.8462574 ,  0.84065128,\n        0.8297374 ,  0.81952114,  0.82285045,  0.80962051,  0.80125781,\n        0.90966288,  0.89896653,  0.88929289,  0.88135254,  0.87192159,\n        0.85563834,  0.84245947,  0.83226068,  0.82074909,  0.82414805,\n        0.93019612,  0.91802509,  0.90697666,  0.89059368,  0.87576467,\n        0.86730828,  0.85388123,  0.84493381,  0.83428281,  0.81545962,\n        0.93982354,  0.92694472,  0.91402532,  0.89857133,  0.88444778,\n        0.87267308,  0.86440368,  0.8434629 ,  0.84006212,  0.82626153,\n        0.94666747,  0.93577088,  0.92170213,  0.90324293,  0.88902728,\n        0.87010909,  0.85851074,  0.84500021,  0.83740391,  0.8374784 ]), 'split0_train_score': array([ 0.31431387,  0.301327  ,  0.3134415 ,  0.31604085,  0.30954324,\n        0.31514448,  0.31574017,  0.31711532,  0.31183808,  0.3089926 ,\n        0.52437406,  0.51900682,  0.52269952,  0.53549192,  0.51688971,\n        0.53495345,  0.52367299,  0.52152086,  0.52262945,  0.53321076,\n        0.62669362,  0.64472868,  0.63645999,  0.63058507,  0.63780819,\n        0.63533391,  0.63555539,  0.64032725,  0.63566523,  0.6433635 ,\n        0.74360613,  0.73358968,  0.72984386,  0.73794423,  0.73397819,\n        0.73065739,  0.73137281,  0.72350094,  0.71603637,  0.70912029,\n        0.81829453,  0.8042002 ,  0.80313333,  0.80419822,  0.80226909,\n        0.78981897,  0.78707583,  0.77743279,  0.77613597,  0.7557951 ,\n        0.87523064,  0.86037707,  0.85633383,  0.84092979,  0.83561343,\n        0.81625631,  0.82490282,  0.80647008,  0.79940481,  0.7940886 ,\n        0.91491742,  0.89482314,  0.88602448,  0.86804111,  0.85373635,\n        0.84133816,  0.83313341,  0.82162046,  0.81065368,  0.80210685,\n        0.93746423,  0.91745553,  0.90280137,  0.88105405,  0.86528284,\n        0.85666078,  0.83927197,  0.83242242,  0.82036513,  0.81443105,\n        0.93948602,  0.92906044,  0.90919513,  0.8890467 ,  0.87284483,\n        0.86387356,  0.84664201,  0.83096166,  0.82704718,  0.80936751,\n        0.94412746,  0.92171113,  0.90980866,  0.89079091,  0.86657021,\n        0.8592821 ,  0.84936267,  0.82549484,  0.82466319,  0.81014113])}"],
 [<matplotlib.figure.Figure at 0x7f9b783fb048>,
  <matplotlib.figure.Figure at 0x7f9b402ca7f0>])

LEARNING CURVE IN SAMPLE


In [1]:
import sys
sys.path.append("../../src")
import features.feature_utils as fu
import models.model_utils as mu
import plots.plot_utils as pu
import pandas as pd
import math
from sklearn.model_selection import GridSearchCV
import matplotlib.pyplot as plt
import logging
import json
import datetime as dt
import numpy as np

model = ['forestReg',None,None]
modelOpt = {}
k= 5
pw = False
step = 1
seqRegions = [[-7,12],[-6,11]]
data= '../../data/external/mut_rand_mod_lib.csv'

dfDatasetShuffled , featureBox = fu.CreateFeaturesFromData(data, seqRegions, pw, shuffle=True)
if pw is True:    
    y = dfDatasetShuffled['rank']
else:
    y = np.array([math.sqrt(math.sqrt(u)) for u in dfDatasetShuffled['mean_score']])
print(y)
parModel = mu.SetupModel(model, modelOpt)

scores = mu.LearningCurveInSample(dfDatasetShuffled, featureBox, y ,parModel, k=k, pw=pw, step=step)

fig, ax1, ax2 = pu.LearningCurveInSample(scores, k, step)


[[-7 12]
 [-6 11]]
[ 3.99483375  1.25868898  3.95130551  2.34171133  5.15642506  2.41898647
  2.93682886  3.33281488  2.40058572  5.08780015  3.57885463  3.98613906
  1.38125972  1.27948058  2.154576    3.45194955  5.21029667  1.6323549
  2.25024344  2.62013917  1.26118887  2.63693315  3.67398258  1.81072341
  4.7497051   1.33748061  4.25411726  5.17017349  3.5398253   2.89302399
  2.58439002  1.43156912  4.0816825   1.02177818  1.26118887  2.3918641
  2.52610816  1.44913767  2.26994916  2.65528377  4.67172192  4.83823785
  2.75118443  4.53465254  0.96018459  1.27828536  4.8942736   4.85494927
  2.63992766  4.78297441  2.63734209  4.50492333  1.55387879  1.41509662
  1.352886    1.37935846  3.96284488  2.03973744  5.08472222  4.90794904
  5.14425611  1.48016561  3.82885754  3.77903511  4.76800749  5.24700613
  2.82344212  5.221765    1.28892388  1.26614452  2.48364011  1.40076468
  5.09603744  2.95375653  5.11196284  4.37540738  3.43905329  1.91040768
  4.1051191   2.50776376  4.11842528  2.81686595  1.51872068  5.28812471
  5.28783728  1.41421356  1.13164696  0.67694724  5.04924761  3.41199872
  4.4425797   2.69216609  1.15829219  2.64710015  4.85815756  4.67517532
  5.21974459  5.15680794  4.29559078  0.90808652  1.30721106  3.76036803
  5.2311161   1.45485431  1.25743343  1.25491098  2.79181458  3.53139715
  5.21139216  4.00319928  5.26138045  2.38746728  1.6844145   1.75377059
  5.12677631  5.29371166  1.285407    1.36188241  2.75250409  1.83830059
  2.32558098  5.17593438  5.29689387  3.00692046  1.25743343  1.47629586
  2.76559745  3.36909052  4.05296225  4.2533702   4.29328646  5.22027188
  5.20053047  2.58453484  3.15664961  1.82692744  1.42900587  2.73152579
  5.42579575  4.97216848  1.31387505  2.40598883  1.25617411  1.34473571
  3.35587285  1.23548928  1.9466533   2.14273099  1.80352189  4.66725299
  3.12992459  1.53625673  1.88740632  5.26597461  3.53824607  3.86767938
  2.64304742  1.47473941  2.96148692  3.47141558  2.46332064  4.28873003
  2.98413383  3.59913378  2.97011186  4.2587532   5.05809947  4.74779078
  4.87746898  4.93760162  1.42900587  4.77185447  1.5172913   1.92424056
  5.19552863  4.80899073  4.04539331  3.18720063  4.31074456  3.15418282
  4.18596124  1.95573983  5.47363141  1.45322786  2.77101814  2.77535529
  1.90247003  2.75250409  3.47499572  4.05787251  1.30944371  5.21282232
  1.17866212  2.60273238  1.27588481  2.9466492   5.04054418  4.08919833
  4.3655248   1.97807975  2.58857996  3.42917653  3.31333067  1.31277142
  2.13737444  5.02479495  1.26243326  5.11654172  5.42521656  4.56383459
  4.81724177  1.22338177  4.64837672  1.39157884  1.26367399  2.84843271
  1.90174348  4.40620984  4.98076934  2.48803437  4.54152724  5.21626048
  1.48553278  0.93060486  3.20200008  5.20948344  5.4120645   2.12497736
  4.82248867  3.93548725  3.55816929  5.12140615  1.34576262  3.11307455
  1.25994079  4.62298002  1.89037395  1.38597881  4.57810087  1.25237323
  1.43665471  4.70094339  2.27208358  2.76453315  4.79945376  4.30210487
  1.82979065  2.74504107  5.08196253  1.35086223  1.32583543  1.25491098
  2.40580931  4.62926765]
Progress 1.6%Progress 0.1%
---------------------------------------------------------------------------
KeyboardInterrupt                         Traceback (most recent call last)
<ipython-input-1-f6da2a698a92> in <module>()
     29 parModel = mu.SetupModel(model, modelOpt)
     30 
---> 31 scores = mu.LearningCurveInSample(dfDatasetShuffled, featureBox, y ,parModel, k=k, pw=pw, step=step)
     32 
     33 fig, ax1, ax2 = pu.LearningCurveInSample(scores, k, step)

/home/jim/Doctoraat/workspace/prompred/src/models/model_utils.py in LearningCurveInSample(dfDataset, featureBox, y, parModel, k, pw, step)
    219                 indexTrainInner = (dfDatasetTrain['ID'].isin(trainInner)).values
    220             X_trainInner, y_trainInner = X_train[indexTrainInner], y_train[indexTrainInner]
--> 221             score, y_pred = EvaluateScore(X_trainInner, X_test, y_trainInner, y_test, {**parModel})
    222             scores = np.append(scores,score)
    223 

/home/jim/Doctoraat/workspace/prompred/src/models/model_utils.py in EvaluateScore(X_train, X_test, y_train, y_test, parModel)
    145     model = SelectModel(**parModel)
    146     model.fit(X_train,y_train)
--> 147     score = model.score(X_test,y_test)
    148     y_pred = model.predict(X_test)
    149 

/usr/lib/python3.5/site-packages/sklearn/base.py in score(self, X, y, sample_weight)
    384 
    385         from .metrics import r2_score
--> 386         return r2_score(y, self.predict(X), sample_weight=sample_weight,
    387                         multioutput='variance_weighted')
    388 

/usr/lib/python3.5/site-packages/sklearn/ensemble/forest.py in predict(self, X)
    692                              backend="threading")(
    693             delayed(parallel_helper)(e, 'predict', X, check_input=False)
--> 694             for e in self.estimators_)
    695 
    696         # Reduce

/usr/lib/python3.5/site-packages/sklearn/externals/joblib/parallel.py in __call__(self, iterable)
    726         self._aborting = False
    727         if not self._managed_backend:
--> 728             n_jobs = self._initialize_backend()
    729         else:
    730             n_jobs = self._effective_n_jobs()

/usr/lib/python3.5/site-packages/sklearn/externals/joblib/parallel.py in _initialize_backend(self)
    538         try:
    539             return self._backend.configure(n_jobs=self.n_jobs, parallel=self,
--> 540                                            **self._backend_args)
    541         except FallbackToBackend as e:
    542             # Recursively initialize the backend in case of requested fallback.

/usr/lib/python3.5/site-packages/sklearn/externals/joblib/_parallel_backends.py in configure(self, n_jobs, parallel, **backend_args)
    244             raise FallbackToBackend(SequentialBackend())
    245         self.parallel = parallel
--> 246         self._pool = ThreadPool(n_jobs)
    247         return n_jobs
    248 

/usr/lib/python3.5/multiprocessing/pool.py in __init__(self, processes, initializer, initargs)
    747 
    748     def __init__(self, processes=None, initializer=None, initargs=()):
--> 749         Pool.__init__(self, processes, initializer, initargs)
    750 
    751     def _setup_queues(self):

/usr/lib/python3.5/multiprocessing/pool.py in __init__(self, processes, initializer, initargs, maxtasksperchild, context)
    174         self._worker_handler.daemon = True
    175         self._worker_handler._state = RUN
--> 176         self._worker_handler.start()
    177 
    178 

/usr/lib/python3.5/threading.py in start(self)
    847                 del _limbo[self]
    848             raise
--> 849         self._started.wait()
    850 
    851     def run(self):

/usr/lib/python3.5/threading.py in wait(self, timeout)
    547             signaled = self._flag
    548             if not signaled:
--> 549                 signaled = self._cond.wait(timeout)
    550             return signaled
    551 

/usr/lib/python3.5/threading.py in wait(self, timeout)
    291         try:    # restore state no matter what (e.g., KeyboardInterrupt)
    292             if timeout is None:
--> 293                 waiter.acquire()
    294                 gotit = True
    295             else:

KeyboardInterrupt: 

LEARNING CURVE IN SAMPLE (ENRICHED)


In [2]:
import sys
sys.path.append("../../src")
import features.feature_utils as fu
import models.model_utils as mu
import plots.plot_utils as pu
import pandas as pd
import math
from sklearn.model_selection import GridSearchCV
import logging
import datetime as dt
import numpy as np

model = ['forestClass',None,None]
modelOpt = {'n_estimators':20}
k= 5
pw = True
step = 1
seqRegions = [[-7,12],[-6,11]]
data = '../../data/interim/pw_hammer_prom_lib.csv'
dataEnrich= '../../data/interim/pw_mutalik_prom_lib.csv'

dfDataset , featureBox = fu.CreateFeaturesFromData(data, seqRegions, pw, shuffle=True)
dfEnrich, enrichBox = fu.CreateFeaturesFromData(dataEnrich, seqRegions, pw, shuffle=True)

X_enrich = enrichBox.values
y_enrich = dfEnrich['rank']

X = featureBox.values
y = dfDataset['rank']

parModel = mu.SetupModel(model, modelOpt)

scores = mu.LearningCurveInSampleEnriched(dfDataset, featureBox, enrichBox, y, y_enrich, parModel, k, pw, step)

fig, ax1, ax2 = pu.LearningCurveInSampleEnriched(scores, k, step)


[[-7 12]
 [-6 11]]
[[-7 12]
 [-6 11]]
[[-7 12]
 [-6 11]]
[[-7 12]
 [-6 11]]
Progress 13.6%
---------------------------------------------------------------------------
KeyboardInterrupt                         Traceback (most recent call last)
<ipython-input-2-3a943988a7a8> in <module>()
     31 parModel = mu.SetupModel(model, modelOpt)
     32 
---> 33 scores = mu.LearningCurveInSampleEnriched(dfDataset, featureBox, enrichBox, y, y_enrich, parModel, k, pw, step)
     34 
     35 fig, ax1, ax2 = pu.LearningCurveInSampleEnriched(scores, k, step)

/home/jim/Doctoraat/workspace/prompred/src/models/model_utils.py in LearningCurveInSampleEnriched(dfDataset, featureBox, enrichBox, y, y_enrich, parModel, k, pw, step)
    297             score, y_pred = EvaluateScore(X_trainInner, X_test, y_trainInner, y_test, {**parModel})
    298             scores = np.append(scores,score)
--> 299 
    300         it+=1
    301 

/home/jim/Doctoraat/workspace/prompred/src/models/model_utils.py in EvaluateScore(X_train, X_test, y_train, y_test, parModel)
    144     model = SelectModel(**parModel)
    145     model.fit(X_train,y_train)
--> 146     score = model.score(X_test,y_test)
    147     y_pred = model.predict(X_test)
    148 

/usr/lib/python3.5/site-packages/sklearn/ensemble/forest.py in fit(self, X, y, sample_weight)
    324                     t, self, X, y, sample_weight, i, len(trees),
    325                     verbose=self.verbose, class_weight=self.class_weight)
--> 326                 for i, t in enumerate(trees))
    327 
    328             # Collect newly grown trees

/usr/lib/python3.5/site-packages/sklearn/externals/joblib/parallel.py in __call__(self, iterable)
    766                 # consumption.
    767                 self._iterating = False
--> 768             self.retrieve()
    769             # Make sure that we get a last message telling us we are done
    770             elapsed_time = time.time() - self._start_time

/usr/lib/python3.5/site-packages/sklearn/externals/joblib/parallel.py in retrieve(self)
    717                     ensure_ready = self._managed_backend
    718                     backend.abort_everything(ensure_ready=ensure_ready)
--> 719                 raise exception
    720 
    721     def __call__(self, iterable):

/usr/lib/python3.5/site-packages/sklearn/externals/joblib/parallel.py in retrieve(self)
    680                 # check if timeout supported in backend future implementation
    681                 if 'timeout' in getfullargspec(job.get).args:
--> 682                     self._output.extend(job.get(timeout=self.timeout))
    683                 else:
    684                     self._output.extend(job.get())

/usr/lib/python3.5/multiprocessing/pool.py in get(self, timeout)
    600 
    601     def get(self, timeout=None):
--> 602         self.wait(timeout)
    603         if not self.ready():
    604             raise TimeoutError

/usr/lib/python3.5/multiprocessing/pool.py in wait(self, timeout)
    597 
    598     def wait(self, timeout=None):
--> 599         self._event.wait(timeout)
    600 
    601     def get(self, timeout=None):

/usr/lib/python3.5/threading.py in wait(self, timeout)
    547             signaled = self._flag
    548             if not signaled:
--> 549                 signaled = self._cond.wait(timeout)
    550             return signaled
    551 

/usr/lib/python3.5/threading.py in wait(self, timeout)
    291         try:    # restore state no matter what (e.g., KeyboardInterrupt)
    292             if timeout is None:
--> 293                 waiter.acquire()
    294                 gotit = True
    295             else:

KeyboardInterrupt: 

LEARNING CURVE OUT OF SAMPLE


In [3]:
import sys
sys.path.append("../../src")
import features.feature_utils as fu
import models.model_utils as mu
import plots.plot_utils as pu
import pandas as pd
import math
from sklearn.model_selection import GridSearchCV
import loggingOut
import datetime as dt
import numpy as np



model = ['SVC','poly',3]
modelOpt = { "C":1, "gamma":0.1 , 'coef0':1}
pw = True
step = 10
seqRegions = [[0,12],[-6,11]]
data= '../../data/interim/pw_mutalik_prom_lib.csv'
dataOut = ['../../data/interim/pw_anderson_prom_lib.csv','../../data/interim/pw_brewster_prom_lib.csv',
          '../../data/interim/pw_hammer_prom_lib.csv','../../data/interim/pw_inbio_prom_lib.csv']
dataOutLabels = ['anderson','brewster','hammer','inbio']
#data= '../../data/external/mut_rand_mod_lib.csv'
#dataOut = ['../../data/external/anderson_lib.csv','../../data/external/brewster_lib.csv',
#          '../../data/external/hammer_lib.csv','../../data/external/inbio_lib.csv']
#dataOutLabels = ['anderson','brewster','hammer','inbio']

parModel = mu.SetupModel(model,modelOpt)

dfDatasetShuffled , featureBox = fu.CreateFeaturesFromData(data, seqRegions, pw, shuffle=True)

dataList = []
for d in dataOut:
    dfShuffled, Box = fu.CreateFeaturesFromData(d, seqRegions, pw)
    y_out = dfShuffled['rank']
    dataList.append((dfShuffled, Box, y_out))

X = featureBox.values
y = dfDatasetShuffled['rank']


scores = mu.LearningCurveOutOfSample(dfDatasetShuffled, featureBox, y , dataList, parModel, pw=pw, step=step)

fig, ax = pu.LearningCurveOutOfSample(scores, k, dataOutLabels)

LEARNING CURVE OUT OF SAMPLE ENRICHED


In [61]:
import sys
sys.path.append("../../src")
import features.feature_utils as fu
import models.model_utils as mu
import plots.plot_utils as pu
import pandas as pd
import math
from sklearn.model_selection import GridSearchCV
import logging
import datetime as dt
import numpy as np


model = ['forestClass',None,None]
modelOpt = {'n_estimators':10}
pw = True
step = 10
seqRegions = [[0,12],[-6,11]]
data = '../../data/interim/pw_hammer_prom_lib.csv'
dataEnrich = ['../../data/interim/pw_mutalik_prom_lib.csv']
dataOut = ['../../data/interim/pw_anderson_prom_lib.csv','../../data/interim/pw_brewster_prom_lib.csv'
          ,'../../data/interim/pw_inbio_prom_lib.csv']
dataOutLabels = ['anderson','brewster','inbio']


parModel = mu.SetupModel(model,modelOpt)
dfDataset , featureBox = fu.CreateFeaturesFromData(data, seqRegions, pw, shuffle=True)

X = featureBox.values
y = dfDataset['rank']

enrichBoxList = []
y_enrich = []

for e in dataEnrich:
    dfEnrich, enrichBox = fu.CreateFeaturesFromData(e, seqRegions, pw)
    y_en = dfEnrich['rank']
    enrichBoxList.append(enrichBox)
    y_enrich.append(y_en)
    
enrichBox = np.vstack((enrichBoxList[:]))


dataOutList = []

for d in dataOut:
    dfOut, outBox = fu.CreateFeaturesFromData(d, seqRegions, pw)
    y_out = dfOut['rank']
    dataOutList.append((dfOut, outBox, y_out))


scores = mu.LearningCurveOutOfSampleEnriched(dfDataset, featureBox, enrichBox, y, y_enrich, dataOutList, parModel, pw, step)

fig, ax = pu.LearningCurveOutOfSampleEnriched(scores, step, dataOutLabels)


Progress 55.6%rogress 27.8%

In [63]:
ax1 = fig.get_axes()

In [65]:
ax1.legend()


---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-65-d426077a05c7> in <module>()
----> 1 ax1.legend()

AttributeError: 'list' object has no attribute 'legend'

In [44]:
lgd = ax.legend(loc='center left', bbox_to_anchor=(1, 0.5))


---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-44-5fbdbc613e37> in <module>()
----> 1 lgd = ax.legend(loc='center left', bbox_to_anchor=(1, 0.5))

AttributeError: 'list' object has no attribute 'legend'

In [72]:
fig.savefig('test1.png', bbox_extra_artists=(lgd,),bbox_inches='tight')

In [10]:
figure.autolayout : True


  File "<ipython-input-10-f260c45ab60a>", line 1
    figure.autolayout : True
                      ^
SyntaxError: invalid syntax

In [39]:
= fig.legend

In [71]:
lgd = fig.gca().legend(loc='center left', bbox_to_anchor=(1, 0.5))

In [75]:
ax = fig.gca()

In [86]:
ax.legend_

In [80]:
import matplotlib.pyplot as plt
fig, ax = plt.subplots()

In [84]:
ax.get_xticks

In [89]:
ax.get_xticks()


Out[89]:
array([ 0. ,  0.2,  0.4,  0.6,  0.8,  1. ])