pyHSICLasso este un pachet al lui Hilbert Schmidt Independence Criterion Lasso (HSIC Lasso), care este o metoda de selectie a caracteristicilor caseta neagra (neliniara) avand in vedere relatia de intrare si iesire neliniara. HSIC Lasso poate fi considerat ca o varianta convexa a algoritmului de selectie a caracteristicilor redundantei minime (RMN) utilizate pe scara larga.

Avantajul HSIC Lasso

  • Poate gasi in mod eficient caracteristici neliniare.
  • Poate gasi functii non-redundante.
  • Poate obtine o solutie optima la nivel global.
  • Poate face fata atat problemelor de regresie, cat si de clasificare prin nuclee.

Selectia caracteristicii

Scopul selectiei caracteristicilor supravegheate este de a gasi un subset de caracteristici de intrare care sunt responsabile pentru prezicerea valorilor de iesire. Utilizand acest lucru, puteti suplimenta dependenta de intrare si iesire neliniara si puteti calcula solutia optima eficient pentru o problema cu dimensiuni ridicate. Eficacitatea este demonstrata prin experimente de selectie a caracteristicilor pentru clasificare si regresie cu mii de caracteristici. Gasirea unui subset de caracteristici in invatarea supravegheata de inalta dimensiune este o problema importanta cu multe aplicatii din lumea reala, cum ar fi selectia genelor din datele microarray, categorizarea documentelor si controlul protezelor.

Instalare

$ pip install -r requirements.txt $ python setup.py install

sau

$ pip instala pyHSICLasso

Utilizare

In primul rand, pyHSICLasso ofera punctul unic de intrare ca clasa HSICLasso ()

Aceasta clasa are urmatoarele metode.

  • intrare
  • regresie
  • clasificare
  • dump
  • parcela_trama
  • plot_dendrogram
  • plot_heatmap
  • get_features
  • get_features_neighbours
  • get_index
  • get_index_score
  • get_index_neighbours
  • get_index_neighbors_score
  • save_param

Formatul de intrare corespunde urmatoarelor formate.

  • Fisier MATLAB (.mat)
  • .csv
  • .tsv
  • numpy’s ndarray

Fisier de intrare

Cand folositi .mat, .csv, .tsv, acceptam cadru de date pandas. Randurile cadrului de date sunt numarul esantionului. Variabila de iesire trebuie sa aiba eticheta de clasa. Daca doriti sa utilizati propria eticheta, trebuie sa specificati variabilele de iesire pe lista (output_list = [‘tag’]) Coloanele ramase sunt valori ale fiecarei caracteristici. Urmatorul este un exemplu de date (format CSV).

clasa, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10 -1,2,0,0,0, -2,0, -2,0,2,0 1,2,2 , 0,0, -2,0,0,0,2,0 …

Pentru cazuri de iesire multi-variate, puteti specifica iesirea utilizand lista (output_list). Consultati Exemplu de cod pentru detalii.

Salvati rezultatele intr-un fisier CSV

Daca doriti sa salvati rezultatele selectiei caracteristicii in fisierul CSV, va rugam sa apelati urmatoarea functie:

>>> hsic_lasso.save_param ()

Pentru a scapa de efectul covariabilelor specifice

In aplicatiile de biologie, este posibil sa dorim sa scapam de efectul unor covariabile, cum ar fi sexul si / sau varsta. In astfel de cazuri, putem specifica in prealabil covariabilele X in functiile de clasificare sau regresie ca

>>> hsic_lasso.regression (5, covars = X) >>> hsic_lasso.classification (10, covars = X)

Va rugam sa verificati exemplul / sample_covars.py pentru detalii.

Pentru a gestiona un numar mare de probe

HSIC Lasso se potriveste bine in functie de numarul de caracteristici d. Cu toate acestea, vanila HSIC Lasso necesita spatiu de memorie O (dn ^ 2) si poate rula memoria daca numarul de esantioane n este mai mare de 1000. In acest caz, putem folosi blocul HSIC Lasso care necesita doar O (dnBM) spatiu, unde B << n este parametrul de bloc si M este parametrul de permutare pentru a stabiliza rezultatul final. Acest lucru se poate face prin specificarea parametrilor B si M in functia de regresie sau clasificare. In prezent, parametrii impliciti sunt B = 20 si, respectiv, M = 3. Daca doriti sa utilizati vanilie HSIC Lasso, va rugam sa folositi B = 0 si M = 1.

Exemplu

>>> din pyHSICLasso import HSICLasso >>> hsic_lasso = HSICLasso () >>> hsic_lasso.input (“data.mat”) >>> hsic_lasso.input (“data.csv”) >>> hsic_lasso.input (“data .tsv “) >>> hsic_lasso.input (np.array ([[1, 1, 1], [2, 2, 2]]), np.array ([0, 1]))

Puteti specifica numarul de subset de selectii de caracteristici cu regresie si clasificare a argumentelor.

>>> hsic_lasso.regression (5) >>> hsic_lasso.classification (10)

Despre metoda de iesire, este posibil sa selectati graficele pe grafic, detaliile rezultatului analizei, iesirea indexului caracteristicii. Retineti, pentru a rula functia dump (), are nevoie de cel putin 5 caracteristici in setul de date.

>>> hsic_lasso.plot() # plot the graph >>> hsic_lasso.dump() ============================================== HSICLasso : Result ================================================== | Order | Feature | Score | Top-5 Related Feature (Relatedness Score) | | 1 | 1100 | 1.000 | 100 (0.979), 385 (0.104), 1762 (0.098), 762 (0.098), 1385 (0.097)| | 2 | 100 | 0.

hentai en castellano videos caseros españa
sexogratis incesto retro
fiestas xxx falsos casting porno
porno amas de casa xxx prostitutas
mujeres follando gratis cine para adultos gratis
concursos nudistas porno peludas españolas
porno loco analxxx
pajas de madres asiatica forzada
videos pornos muy guarros tata_latina
porno india cerdas com gratis
maduras tocandose me follo a
tuporn laura marano nude
torbe videos completos peliculas x en castellano
maduras sex pillada follando
joven folla por dinero se folla a su cuñada
mi madre me folla chupame las tetas
porno friki gay se la chupa a hetero
follando con abuelas fontanero cachondo
pillada follando porno italiano incesto
incestos lesbicos trios x

537 | 1100 (0.979), 385 (0.100), 1762 (0.095), 762 (0.094), 1385 (0.092)| | 3 | 200 | 0.336 | 1200 (0.979), 264 (0.094), 1482 (0.094), 1264 (0.093), 482 (0.091)| | 4 | 1300 | 0.140 | 300 (0.984), 1041 (0.107), 1450 (0.104), 1869 (0.102), 41 (0.101)| | 5 | 300 | 0.033 | 1300 (0.984), 1041 (0.110), 41 (0.106), 1450 (0.100), 1869 (0.099)| >>> hsic_lasso.get_index() [1099, 99, 199, 1299, 299] >>> hsic_lasso.get_index_score() array([0.09723658, 0.05218047, 0.03264885, 0.01360242, 0.00319763]) >>> hsic_lasso.get_features() [‘1100’, ‘100’, ‘200’, ‘1300’, ‘300’] >>> hsic_lasso.get_index_neighbors(feat_index=0,num_neighbors=5) [99, 384, 1761, 761, 1384] >>> hsic_lasso.get_features_neighbors(feat_index=0,num_neighbors=5) [‘100’, ‘385’, ‘1762’, ‘762’, ‘1385’] >>> hsic_lasso.get_index_neighbors_score(feat_index=0,num_neighbors=5) array([0.9789888 , 0.10350618, 0.09757666, 0.09751763, 0.09678892]) >>> hsic_lasso.save_param() #Save selected features and its neighbors

Citare

Daca utilizati acest softwawre pentru cercetarea dvs., va rugam sa citati urmatoarele doua lucrari: HSIC Lasso original si omologii sai de bloc.

@article {yamada2014high, title = {Selectie de caracteristici de inalta dimensiune dupa lazo kernelizat cu caracteristica}, autor = {Yamada, Makoto si Jitkrittum, Wittawat si Sigal, Leonid si Xing, Eric P si Sugiyama, Masashi}, jurnal = {Neural calcul}, volum = {26}, numar = {1}, pagini = {185-207}, an = {2014}, editor = {MIT Press}} @article {climente2019block, title = {Block HSIC Lasso: model -detectare gratuita a biomarkerului pentru date cu dimensiuni ultra-ridicate}, author = {Climente-Gonz {\ ‘a} lez, H {\’ e} ctor and Azencott, Chlo {\ ‘e} -Agathe and Kaski, Samuel and Yamada, Makoto}, jurnal = {Bioinformatics}, volum = {35}, numar = {14}, pagini = {i427 – i435}, an = {2019}, editor = {Oxford University Press}}

Referinte

Algoritmi

  • Climente-Gonzalez, H., Azencott, CA., Kaski, S. si Yamada, M., Block HSIC Lasso: detectarea biomarkerului fara model pentru date cu dimensiuni ultra-ridicate. Bioinformatica, volumul 35, numarul 14, iulie 2019, paginile i427 – i435 (Prezentat si la ISMB 2019). ( Referinte bibliografice Google: 8 incepand cu 2021/2/15)
  • Yamada, M., Tang, J., Lugo-Martinez, J., Hodzic, E., Shrestha, R., Saha, A., Ouyang, H., Yin, D., Mamitsuka, H., Sahinalp, C ., Radivojac, P., Menczer, F. si Chang, Y. Selectie neliniara ultra-dimensionala de caracteristici neliniare pentru date biologice mari. IEEE Transactions on Knowledge and Data Engineering (TKDE), pp.1352-1365, 2018. (Citate Google scholar: 31 incepand cu 2021/2/15)
  • Yamada, M., Jitkrittum, W., Sigal, L., Xing, EP & Sugiyama, M. High-Dimensional Feature Selection by Feature-Wise Kernelized Lasso. Neural Computation, vol.26, nr.1, pp.185-207, 2014. (Referinte bibliografice Google: 175 incepand cu 2021/2/15)

Teorie

  • Poignard, B., Yamada, M. Sparse Hilbert-Schmidt Independence Regression. AISTATS 2020.

Aplicatii reale

  • Takahashi, Y., Ueki, M., Yamada, M., Tamiya, G., Motoike, I., Saigusa, D., Sakurai, M., Nagami, F., Ogishima, S., Koshiba, S., Kinoshita, K., Yamamoto, M., Tomita, H. Imbunatatirea predictiei metabolomice bazata pe date a simptomelor depresive utilizand invatarea automata neliniara cu selectarea caracteristicilor. Psihiatrie translationala volumul 10, numarul articolului: 157 (2020). ( Referinte bibliografice Google: 7 incepand cu 2021/2/15)

Colaboratori

Dezvoltatori

Nume: Makoto Yamada (Universitatea Kyoto / RIKEN AIP), Hector Climente-Gonzalez (RIKEN AIP)

E-mail: [email protected]

Distribuitor

Nume: Hirotaka Suetake (RIKEN AIP)

E-mail: [email protected]