Spørsmål:
Regelutvinning fra nnet-resultater
Rafael Coelho
2017-06-10 16:14:30 UTC
view on stackexchange narkive permalink

Jeg brukte et skript på R-språk som bruker nnet-bibliotek for å forutsi promoterbakterier, og jeg vil gjerne vite hvordan jeg kan trekke ut regler fra dette nevrale nettverksresultatene.

Som min innspill fra nevrale nettverk har jeg n positive eksempler på promotor og n falske eksempler. Jeg bruker som eksempler disse eksemplene og FASTA-filen med genomet til bakteriene. Som et resultat har jeg en verdi på 0 til 1 for hvert testet nettverk som tilsvarer læringen. Jeg vil oppdage roller som kan forbedre nettverket mitt i fremtidige eksperimenter med de samme bakteriene.

Hvilke algoritmer eller programvare kan jeg bruke?

Velkommen til bioinformatikk! Kan du legge ut et eksempel? Hva slags regler forventer du? Hva har du funnet / prøvd (for å unngå å foreslå ting du allerede har gjort / søk)?
Vennligst [rediger] det til spørsmålet. Hva har du sett etter for å løse problemet ditt?
Jeg begynner å søke etter mulige løsninger for å styre utvinning.
Det ville være det første før andre begynner å fritt investere tiden sin
To svar:
user172818
2017-06-10 19:14:17 UTC
view on stackexchange narkive permalink

Rs nnet-pakke støtter bare fullt tilkoblede nevrale nettverk med ett skjult lag. Dette er den mest primitive typen nettverk. Jeg tviler på at det vil fungere bra for promotorer å finne. I tillegg vil ikke et slikt nettverk gi deg nyttige tolkninger.

Hvis du vil utforske nevrale nettverk, bør du bruke et endimensjonskonvoluttjonslag som beskrevet i dette papiret. Dette laget representerer effektivt en posisjonsvektmatrise (PWM). Du kan vite hvilke motiver som brukes. Med backtracking kan du også identifisere koordinatene til motiv. For å distribuere en slik modell, må du være ganske kjent med dyp læring og lære ett dypt læringsrammeverk. For rammeverk kan du starte med keras. Når du er vant til keras, kan du implementere din fulle promotorfinner i mindre enn 100 linjer med python-kode. Alternativt kan du prøve dragonn. Det skal forenkle distribusjon av modeller for DNA-sekvenser. Jeg har imidlertid ingen erfaring med det.

For å finne promotorer er det også verdt å prøve tradisjonelle metoder. Det er interessant at få / ingen nevraleNet-baserte publikasjoner har evaluert tradisjonelle metoder, sannsynligvis fordi mange ML-folk vet lite om klassisk motivfunn. Disse metodene kan også fungere bra.

ithinkiam
2017-07-11 20:01:38 UTC
view on stackexchange narkive permalink

Kort svar: du kan ikke.

Nevrale nettverk bruker positive og negative eksempler for å legge til vekter i nevrale nettverksarkitektur som blir gitt til den. Å prøve å dekonvolvere betydningen bak vektene er nesten umulig bortsett fra den enkleste perseptronen.

Dette er vanlig for mange maskinlæringsalgoritmer: de fungerer veldig som svarte bokser. Et unntak er beslutningstrær. De vil rapportere hvilke funksjoner som brukes til å klassifisere positive vs negative datasett.

Men som med alle ML-metoder, må du være veldig forsiktig med treningsdatasettene dine. Dette gjelder spesielt motivsøk og spesielt negative datasett. Det er ganske enkelt å finne et negativt datasett som er helt upassende for læring, og som gir deg misvisende nøyaktigheter.

Som @ user172818, vil jeg prøve tradisjonelle metoder da de kan fungere bra igjen, hvis jeg får passende data. MEME-suiten vil være en god start.

Du kan se på papiret under en lenke i svaret mitt. For CNN kan vektene i det første konvolusjonslaget tolkes.
Bli enige. Det er det jeg sa om "den enkleste perseptronen".


Denne spørsmålet ble automatisk oversatt fra engelsk.Det opprinnelige innholdet er tilgjengelig på stackexchange, som vi takker for cc by-sa 3.0-lisensen den distribueres under.
Loading...