Enhed 3 / 11

Sekvensanalyse og bioinformatik: DNA, RNA og proteiner

Gevinster:

  • Evne til at udskrive koden for grundlæggende sekvensanalyseoperationer såsom FASTA-læsning, translation, justering og BLAST og fortolke resultaterne
  • Evne til at undgå forkerte konklusioner ved korrekt fortolkning af begreber som e-værdi, dækningsgrad og læseramme
  • Evne til at forstå nødvendigheden af at bekræfte funktionskravet for en sekvens med officielle databaser (NCBI, UniProt, Ensembl).

Biologiens mest basale data er sekvensen: DNA-sekvensen bestående af bogstaverne A, T, G, C; A, U, G, C sekvens af RNA; kæde af 20 aminosyrebogstaver af protein. Vi forstår, hvad et gen er, hvor beslægtede to arter er, og forholdet mellem en mutation (ændring i sekvens) og sygdom gennem disse sekvenser. I denne enhed lærer vi at bruge kunstig intelligens som kode- og fortolkningsassistent til sekvensanalyse: læse FASTA-filer, oversætte sekvenser, aligne (alignment: sammenligne to sekvenser bogstav for bogstav og se deres ligheder) og forstå værktøjer som BLAST.

Kritisk advarsel fra starten: AI "kender" ikke den faktiske funktion af en sekvens; Kun officielle databaser (NCBI, UniProt, Ensembl) og empiriske beviser siger dette.

Grundlæggende begreber og værktøjer

  • FASTA: Tekstformat, der gemmer strenge; Hvert array består af en overskriftslinje, der starter med > og undermatrixlinjer under den.
  • BLAST (Basic Local Alignment Search Tool): Et værktøj, der sammenligner en sekvens, du har, med millioner af sekvenser i en kæmpe database og finder de mest lignende. "Hvordan ser denne serie ud?" standardsvar på spørgsmålet.
  • Alignment: Arrangering af to eller flere arrays, så lignende områder placeres under hinanden. Det kan være parvis eller multipel sekvensjustering (MSA).
  • Oversættelse: Konvertering af DNA/RNA-kodende sekvens til en aminosyresekvens via trebogstavsgrupper (kodoner).
  • Motiv: Et kort tilbagevendende mønster i sekvensen, der har funktionel betydning (f.eks. et bindingssted).
Tip: Du kan ikke fortælle AI'en at "BLAST den serie"; Modellen kan ikke få adgang til BLAST-databasen. Men "Hvordan tolker jeg mit BLAST resultat, hvad betyder e-værdien (E-værdien)?" Du kan spørge og endda skrive kode, der kalder BLAST programmatisk med Biopython.

Trin for trin: Undersøgelse af et arrays identitet

  1. Få sekvensen: gem til fil som FASTA.
  2. Grundlæggende kontrol: Længde, bogstavindhold (er det bare A/T/G/C eller er der et ukendt "N"), GC-forhold (procent af guanin-cytosin: varierer efter art og region).
  3. BLAST: Søg i NCBI-webgrænsefladen eller programmæssigt.
  4. Kommentar: Se på e-værdien af ​​det bedste match (jo mindre det er, jo mindre sandsynligt er det en tilfældighed) og forespørgselsdækningen.
  5. Bekræftelse: Åbn det matchende gen/protein i UniProt eller NCBI og bekræft, at det faktisk matcher den funktion, du leder efter.

AI hjælper dig med at kode i trin 2 og kommentere i trin 4; men de rigtige data i trin 3 og 5 leveres af værktøjerne selv og dig.

Kopierbare promptskabeloner

Rolle: Du er bioinformatikassistent. Opgave: Læs en FASTA-fil (sequences.fasta) med Biopython. Jeg vil: skrive navn, længde og GC-forhold for hver sekvens i en tabel; gem resultatet som CSV. Giv fungerende Python-kode med kommentarer.

Oversæt den DNA-sekvens jeg har til en proteinsekvens. Brug Biopython Seq.translate; vis stopkodon (*); angive læseramme. Giv kode, forklar. Sekvens: [FASTA]

Fortolk mit BLAST resultat. Nedenfor er værdi-værdi, identitetsprocent og dækningsgrad for de 5 bedste kampe. Forklar mig, hvilket match der er pålideligt, og hvorfor, undlad at fremsætte præcise funktionskrav, fortæl mig de trin, jeg skal bekræfte. Tabel: [data]

Juster to proteinsekvenser parvis og find den procentvise lighed. Brug Biopython pairwise2 eller Bio.Align; udskrive justeringen læseligt. Giv koden og forklar pointskemaet.

Svag prompt / Stærk prompt

Svag: "Hvilket gen er denne sekvens?"

Stærk: "Jeg har en human DNA-sekvens på 1.140 basepar (FASTA nedenfor). Jeg har selv sprængt denne sekvens; bedste match er TP53, e-værdi 0,0, identitet 99,8%, dækning 100%. Forklar, hvorfor dette resultat er stærke beviser; fortæl mig dog, hvilke 2 verifikationer, jeg skal foretage, før jeg kan konstatere dets funktion."

Forskel: I den stærke prompt leveres de faktiske data (længde, BLAST-resultat) til modellen; Du beder modellen om at fortolke de beviser, du giver, ikke at "huske" det. Han er tvunget til at lave en model på en svag opfordring.

tre minisager

Case 1 — Forkert læseramme: En elev oversatte DNA-sekvensen til protein, men fra begyndelsen uden at finde det korrekte startkodon (ATG). Resultatet var et meningsløst, tidligt stoppende protein. Da modellen prøvede alle tre læserammer og skrev kode, der fandt den længste åbne læseramme (ORF) startende med ATG, fremkom det korrekte protein på 380 aminosyrer.

Case 2 — E-værdi fejlslutning: En tekniker rapporterede et BLAST-match med en e-værdi på 2,0 som "fundet". Hvorimod en e-værdi større end 1 indikerer, at matchet højst sandsynligt er en tilfældighed. Modellen forklarede dette og mindede om, at e < 1e-5 generelt bruges som en pålidelig tærskel.

Case 3 — Kontaminering: En BLAST af en bakteriesekvens i et laboratorium viste humant DNA som det bedste match. Dette var et tegn på prøveforurening. AI vakte den rigtige mistanke ved at sige, at "uventet type match kunne være tegn på forurening"; Teknikeren gentog eksemplet.

Sammenligning: kunstig intelligenss rolle

Quest

kunstig intelligens

Værktøj/database

menneske

FASTA aflæst, GC/længde

skriver kode

Styrer output

Oversættelse, ORF-fund

skriver kode

Kører Biopython

Validerer rammen

array id

Kommentarer

BLAST/NCBI fund

bekræfter

Funktionskrav

giver forslag

UniProt giver bevis

bestemmer

Almindelige fejl

  • Beder modellen om at "huske" streng-id'et: Modellen husker ikke strengene; Brug BLAST.
  • Fejlfortolkning af e-værdi: Lille er godt, stort er dårligt; Husk tærsklen.
  • Kontrollerer ikke læserammen: Forkert ramme producerer nonsensprotein.
  • Ignorerer dækning: Høj identitet, men lav dækning betyder delvis match.
  • Manglende forurening: Uventet artsmatchning er en alvorlig advarsel.
Forsigtig: Bare fordi en sekvens er "99 % ligner TP53", beviser det ikke, at den sekvens bærer TP53-funktion; Det er en stærk hypotese. Funktionen skal understøttes af empiri og databasebeskrivelser. Det er ikke nok for AI blot at sige "dette er en tumorundertrykker."

Multipel sekvensjustering og basis for fylogeni

At justere snesevis af sekvenser sammen i stedet for blot to kaldes multipel sekvensjustering (MSA) og er grundlaget for mange analyser: finde bevarede regioner (dele, der er forblevet uændrede i evolutionen og derfor funktionelt vigtige), opbygning af fylogenetiske træer, identifikation af proteinfamilier. Værktøjer som MAFFT, MUSCLE og Clustal gør dette job. AI'en skriver koden, der kalder disse værktøjer fra Python (via Biopython, for eksempel) og hjælper dig med at fortolke outputtet; men selve justeringen gør værktøjet, ikke modellen "udad".

Når du fortolker en MSA, skal du være opmærksom på konserverede kolonner: en aminosyre, der forbliver den samme på tværs af alle sekvenser, er højst sandsynligt kritisk for proteinets funktion (f.eks. det aktive sted for et enzym). Dette giver et stærkt fingerpeg om, hvorfor en mutation kan være skadelig. Men "bevaret = signifikant" er en hypotese; kræver eksperimentel verifikation.

Læs min multiple alignment-fil (aligned.fasta), som er MAFFT-outputtet, med Biopython. Beregn tilbageholdelsesraten for hver kolonne; Liste over 90 % beskyttede stillinger. Forklar hvorfor disse positioner kan være af funktionel betydning, ikke påberåb dig endelig funktion.

Mutations- og variantfortolkningsfælde

Når du ser et bogstavskifte (variant) i en streng, er det et stort spring at sige, at det er "skadeligt". De fleste varianter er neutrale (ineffektive). Når man fortolker virkningen af ​​en variant, er man nødt til at se på dedikerede variantdatabaser (som ClinVar) og befolkningsfrekvensdata (som gnomAD), ikke AI'ens ord. Hvis modellen hævder, at en variant er "patogen", skal du aldrig skrive dette ind i en klinisk eller forskningskonklusion uden at bekræfte det med disse kilder.

Basisdatabaser til verifikation

At kende de officielle kilder til at bekræfte alle påstande i serieanalysen er dit stærkeste skjold mod fremstillingen af kunstig intelligens. Oftest brugt:

database

for hvad

Typisk bekræftelse

NCBI GenBank/RefSeq

DNA/RNA-sekvenser, genregistreringer

String ID, længde

UniProt

Proteinsekvenser og funktioner

Funktion, antal aminosyrer

ensemble

Genom annotering, genplaceringer

Gen-kromosom kortlægning

ClinVar

Varianters kliniske betydning

Patogen/neutral beslutning

gnomAD

Varierende hyppighed i befolkningen

sjælden/almindelig variant

AI kan foreslå, hvilke af disse baser du skal se på; Men du foretager forespørgslen, og du læser resultatet. "Modellen sagde, at dette er, hvad UniProt siger" er ikke en bekræftelse; Bekræftelse åbner selv UniProt-siden.

Sammenfattende

Sekvensanalyse er hjertet af bioinformatik; FASTA, BLAST, alignment og translation er de grundlæggende operationer. AI skriver koden for disse operationer og hjælper dig med at fortolke deres resultater, men værktøjer (BLAST) og databaser (NCBI, UniProt) giver den faktiske sekvensidentifikation. Korrekt forståelse af begreber som e-værdi, dækning og læseramme er nøglen til at undgå den forkerte konklusion. En funktionspåstand kræver altid uafhængig dokumentation.

Ansøgningsopgave

Tag en prøve DNA-sekvens (eller et gen, du har downloadet fra NCBI). Få AI til at beregne længden og GC-forholdet med Biopython, og oversæt det derefter i alle tre læserammer og udskriv koden, der finder den længste ORF. Kør resultatet. Så søg selv efter denne sekvens i NCBI BLAST og lad modellen fortolke e-værdien og dækningsgraden for det bedste match. Bekræft modellens funktionelle krav i UniProt.

tjekliste

  • [ ] Jeg tjekkede længden og bogstavets indhold, før jeg behandlede strengen.
  • [ ] Jeg brugte den korrekte læseramme i oversættelsen.
  • [ ] Jeg kørte selv BLAST, jeg "mindede" ikke modellen om.
  • [ ] Jeg fortolkede e-værdien og dækningsgraden korrekt.
  • [ ] Jeg vurderede det uventede artsmatch for kontaminering.
  • [ ] Jeg bekræftede funktionskravet med den officielle database.