หน่วย
1. ปัญญาประดิษฐ์เบื้องต้นทางชีววิทยา: บทบาท ขอบเขต การตรวจสอบความถูกต้อง และจริยธรรม 2. พื้นฐานการวิเคราะห์ข้อมูลทางชีวภาพด้วย Python 3. การวิเคราะห์ลำดับและชีวสารสนเทศศาสตร์: DNA, RNA และโปรตีน 4. ข้อมูล Omics และการวิเคราะห์มิติสูง 5. โครงสร้างโปรตีนและ AlphaFold: ชัยชนะของปัญญาประดิษฐ์ในชีววิทยา 6. การวิเคราะห์รูปภาพและการระบุประเภท/เซลล์ 7. การออกแบบเชิงทดลอง: การสร้างแผนการที่มั่นคงด้วยปัญญาประดิษฐ์ 8. การวิเคราะห์ข้อมูลและการตรวจสอบความถูกต้องทางสถิติ 9. การแสดงภาพทางวิทยาศาสตร์: การแสดงข้อมูลอย่างตรงไปตรงมาและเข้าใจได้ 10. การทบทวนวรรณกรรมและการเขียนทางวิทยาศาสตร์ 11. จริยธรรม ความปลอดภัยทางชีวภาพ การรักษาความลับ และความซื่อสัตย์ทางวิทยาศาสตร์
หน่วย 3 / 11

การวิเคราะห์ลำดับและชีวสารสนเทศศาสตร์: DNA, RNA และโปรตีน

กำไร:

  • ความสามารถในการพิมพ์โค้ดของการดำเนินการวิเคราะห์ลำดับพื้นฐาน เช่น การอ่าน FASTA การแปล การจัดตำแหน่ง และ BLAST และตีความผลลัพธ์
  • ความสามารถในการหลีกเลี่ยงข้อสรุปที่ไม่ถูกต้องโดยการตีความแนวคิด เช่น ค่า e-value อัตราความครอบคลุม และกรอบการอ่านอย่างถูกต้อง
  • ความสามารถในการเข้าใจความจำเป็นในการยืนยันการอ้างฟังก์ชันของลำดับด้วยฐานข้อมูลอย่างเป็นทางการ (NCBI, UniProt, Ensembl)

ข้อมูลพื้นฐานทางชีววิทยาคือลำดับ: ลำดับของ DNA ที่ประกอบด้วยตัวอักษร A, T, G, C; ลำดับ A, U, G, C ของ RNA; สายโซ่ของโปรตีนกรดอะมิโน 20 ตัว เราเข้าใจว่ายีนคืออะไร สองสายพันธุ์มีความสัมพันธ์กันอย่างไร และความสัมพันธ์ระหว่างการกลายพันธุ์ (การเปลี่ยนแปลงในลำดับ) และโรคผ่านลำดับเหล่านี้ ในหน่วยนี้ เราจะเรียนรู้การใช้ปัญญาประดิษฐ์เป็นโค้ดและผู้ช่วยในการตีความสำหรับการวิเคราะห์ลำดับ: การอ่านไฟล์ FASTA การแปลลำดับ การจัดตำแหน่ง (การจัดตำแหน่ง: การเปรียบเทียบตัวอักษรลำดับสองลำดับต่อตัวอักษรและการมองเห็นความคล้ายคลึงกัน) และการทำความเข้าใจเครื่องมือต่างๆ เช่น BLAST

ข้อแม้ที่สำคัญตั้งแต่เริ่มต้น: AI ไม่ได้ "รู้" ฟังก์ชันที่แท้จริงของลำดับ เฉพาะฐานข้อมูลอย่างเป็นทางการ (NCBI, UniProt, Ensembl) และหลักฐานเชิงประจักษ์เท่านั้นที่พูดสิ่งนี้

แนวคิดและเครื่องมือพื้นฐาน

  • FASTA: รูปแบบข้อความที่เก็บสตริง แต่ละอาร์เรย์ประกอบด้วยบรรทัดส่วนหัวที่ขึ้นต้นด้วย > และบรรทัดอาร์เรย์ย่อยที่อยู่ด้านล่าง
  • BLAST (เครื่องมือค้นหาการจัดตำแหน่งท้องถิ่นขั้นพื้นฐาน): เครื่องมือที่เปรียบเทียบลำดับที่คุณมีกับลำดับนับล้านในฐานข้อมูลขนาดยักษ์และค้นหาลำดับที่คล้ายกันมากที่สุด “ซีรีย์เรื่องนี้เป็นยังไงบ้าง” คำตอบมาตรฐานสำหรับคำถาม
  • การจัดแนว: การจัดเรียงอาร์เรย์ตั้งแต่สองตัวขึ้นไปเพื่อให้ขอบเขตที่คล้ายกันวางอยู่ใต้อีกอาร์เรย์หนึ่ง อาจเป็นการจัดตำแหน่งแบบคู่หรือหลายลำดับ (MSA)
  • การแปล: การแปลงลำดับการเข้ารหัส DNA/RNA ให้เป็นลำดับกรดอะมิโนผ่านกลุ่มตัวอักษรสามตัว (โคดอน)
  • สาระสำคัญ: รูปแบบที่เกิดซ้ำสั้นๆ ในลำดับที่มีความหมายเชิงหน้าที่ (เช่น ไซต์ที่เชื่อมโยง)
เคล็ดลับ: คุณไม่สามารถบอก AI ให้ "BLAST ซีรีส์นั้น" ได้ โมเดลไม่สามารถเข้าถึงฐานข้อมูล BLAST แต่ "ฉันจะตีความผลลัพธ์ BLAST ของฉันได้อย่างไร ค่า e-value (ค่า E) หมายถึงอะไร" คุณสามารถถามและแม้แต่เขียนโค้ดที่เรียก BLAST โดยทางโปรแกรมด้วย Biopython

ทีละขั้นตอน: ตรวจสอบข้อมูลประจำตัวของอาร์เรย์

  1. รับลำดับ: บันทึกเป็นไฟล์เป็น FASTA
  2. การตรวจสอบพื้นฐาน: ความยาว ปริมาณตัวอักษร (เป็นเพียง A/T/G/C หรือมี “N” ที่ไม่รู้จัก) อัตราส่วน GC (เปอร์เซ็นต์ของกัวนีน-ไซโตซีน: แตกต่างกันไปตามสายพันธุ์และภูมิภาค)
  3. BLAST: ค้นหาในเว็บอินเตอร์เฟสของ NCBI หรือโดยทางโปรแกรม
  4. หมายเหตุ: ดูที่ค่า e-value ของการจับคู่ที่ดีที่สุด (ยิ่งมีค่าน้อย โอกาสที่จะเป็นเรื่องบังเอิญก็จะน้อยลง) และความครอบคลุมของข้อความค้นหา
  5. การยืนยัน: เปิดยีน/โปรตีนที่ตรงกันใน UniProt หรือ NCBI และตรวจสอบว่าตรงกับฟังก์ชันที่คุณกำลังมองหาจริงๆ

AI ช่วยคุณเขียนโค้ดในขั้นตอนที่ 2 และแสดงความคิดเห็นในขั้นตอนที่ 4 แต่ข้อมูลจริงในขั้นตอนที่ 3 และ 5 นั้นมาจากเครื่องมือเองและคุณ

เทมเพลตพร้อมท์ที่คัดลอกได้

บทบาท: คุณเป็นผู้ช่วยชีวสารสนเทศศาสตร์ งาน: อ่านไฟล์ FASTA (sequences.fasta) ด้วย Biopython ฉันต้องการ: เขียนชื่อ ความยาว และอัตราส่วน GC สำหรับแต่ละลำดับลงในตาราง บันทึกผลลัพธ์เป็น CSV ให้โค้ด Python ที่ใช้งานได้พร้อมความคิดเห็น

แปลลำดับดีเอ็นเอที่ฉันมีให้เป็นลำดับโปรตีน ใช้ Biopython Seq.translate; แสดงรหัสหยุด (*); ระบุกรอบการอ่าน ให้รหัสอธิบายลำดับ: [FASTA]

ตีความผลลัพธ์ BLAST ของฉัน ด้านล่างนี้คือมูลค่า-มูลค่า เปอร์เซ็นต์ข้อมูลประจำตัว และอัตราความครอบคลุมของรายการที่ตรงกัน 5 อันดับแรก อธิบายให้ฉันฟังว่าการจับคู่ใดเชื่อถือได้ และเพราะเหตุใด จึงไม่อ้างสิทธิ์ฟังก์ชันที่แน่ชัด บอกขั้นตอนที่ฉันต้องตรวจสอบ ตาราง: [ข้อมูล]

จัดลำดับโปรตีนสองลำดับให้ตรงกันและค้นหาเปอร์เซ็นต์ความคล้ายคลึงกัน ใช้ Biopython pairwise2 หรือ Bio.Align; พิมพ์การจัดตำแหน่งที่สามารถอ่านได้ ให้รหัสและอธิบายรูปแบบการให้คะแนน

พรอมต์อ่อน / พรอมต์แรง

อ่อนแอ: "ลำดับนี้คือยีนใด"

แข็งแกร่ง: "ฉันมีลำดับ DNA ของมนุษย์จำนวน 1,140 คู่เบส (FASTA ด้านล่าง) ฉันทำลายลำดับนี้ด้วยตัวเอง การจับคู่ที่ดีที่สุดคือ TP53 ค่า e-value 0.0 ข้อมูลประจำตัว 99.8% ครอบคลุม 100% อธิบายว่าเหตุใดผลลัพธ์นี้จึงเป็นหลักฐานที่ชัดเจน อย่างไรก็ตาม บอกฉันว่าฉันต้องตรวจสอบ 2 รายการใดบ้างก่อนที่จะยืนยันการทำงานของมัน"

ความแตกต่าง: ในพรอมต์ที่รัดกุม ข้อมูลจริง (ความยาว ผลลัพธ์ BLAST) จะถูกจัดเตรียมให้กับโมเดล คุณกำลังขอให้แบบจำลองตีความหลักฐานที่คุณให้มา ไม่ใช่เพื่อ "จดจำ" หลักฐานนั้น เขาถูกบังคับให้สร้างแบบจำลองด้วยพรอมต์ที่อ่อนแอ

มินิเคสสามอัน

กรณีที่ 1 — กรอบการอ่านไม่ถูกต้อง: นักเรียนแปลลำดับ DNA เป็นโปรตีน แต่จากจุดเริ่มต้น โดยไม่พบรหัสเริ่มต้น (ATG) ที่ถูกต้อง ผลลัพธ์ที่ได้คือโปรตีนหยุดตั้งแต่เนิ่นๆ ที่ไม่มีความหมาย เมื่อแบบจำลองลองใช้เฟรมการอ่านทั้งสามเฟรมและเขียนโค้ดที่พบกรอบการอ่านแบบเปิด (ORF) ที่ยาวที่สุดที่เริ่มต้นด้วย ATG โปรตีนกรดอะมิโน 380 ที่ถูกต้องก็เกิดขึ้น

กรณีที่ 2 — การเข้าใจผิดของค่า E: ช่างเทคนิครายงานการจับคู่ BLAST ที่มีค่า e-value 2.0 ว่า "พบ" ในขณะที่ค่า e-value ที่มากกว่า 1 บ่งชี้ว่าการจับคู่นั้นมีแนวโน้มว่าจะเป็นเรื่องบังเอิญมากที่สุด แบบจำลองอธิบายสิ่งนี้และเตือนว่า โดยทั่วไปแล้ว e < 1e-5 จะถูกใช้เป็นเกณฑ์ที่เชื่อถือได้

กรณีที่ 3 — การปนเปื้อน: การระเบิดของลำดับแบคทีเรียในห้องปฏิบัติการทำให้ DNA ของมนุษย์เหมาะสมที่สุด นี่เป็นสัญญาณของการปนเปื้อนตัวอย่าง AI กระตุ้นความสงสัยที่ถูกต้องโดยระบุว่า "ประเภทการจับคู่ที่ไม่คาดคิดอาจบ่งบอกถึงการปนเปื้อน"; ช่างเทคนิคทำซ้ำตัวอย่างอีกครั้ง

การเปรียบเทียบ: บทบาทของปัญญาประดิษฐ์

ภารกิจ

ปัญญาประดิษฐ์

เครื่องมือ/ฐานข้อมูล

มนุษย์

อ่าน FASTA, GC/ความยาว

เขียนโค้ด

ควบคุมเอาต์พุต

การแปล การค้นหา ORF

เขียนโค้ด

รันไบโอไพธอน

ตรวจสอบความถูกต้องของเฟรม

รหัสอาร์เรย์

ความคิดเห็น

พบ BLAST/NCBI

ยืนยัน

การอ้างสิทธิ์ฟังก์ชัน

เสนอข้อเสนอแนะ

UniProt ให้หลักฐาน

ตัดสินใจ

ข้อผิดพลาดทั่วไป

  • การขอให้โมเดล "จดจำ" ID สตริง: โมเดลไม่ได้จดจำสตริง ใช้ระเบิด
  • การตีความค่า e-value ผิด: เล็กคือดี ใหญ่คือแย่ จำเกณฑ์.
  • ไม่ตรวจสอบกรอบการอ่าน: กรอบที่ไม่ถูกต้องจะสร้างโปรตีนไร้สาระ
  • ละเว้นความครอบคลุม: ข้อมูลประจำตัวสูงแต่ความครอบคลุมต่ำหมายถึงการจับคู่บางส่วน
  • ไม่มีการปนเปื้อน: การจับคู่สายพันธุ์ที่ไม่คาดคิดถือเป็นคำเตือนร้ายแรง
ข้อควรระวัง: เพียงเพราะลำดับคือ "99% คล้ายกับ TP53" ไม่ได้พิสูจน์ว่าลำดับนั้นมีฟังก์ชัน TP53 มันเป็นสมมติฐานที่แข็งแกร่ง ฟังก์ชันนี้ต้องได้รับการสนับสนุนจากหลักฐานเชิงประจักษ์และคำอธิบายฐานข้อมูล AI พูดง่ายๆ ว่า "นี่คือตัวยับยั้งเนื้องอก" เท่านั้นยังไม่พอ

การจัดตำแหน่งหลายลำดับและพื้นฐานของสายวิวัฒนาการ

การจัดลำดับหลายสิบลำดับเข้าด้วยกันแทนที่จะเป็นเพียงสองลำดับเรียกว่าการจัดตำแหน่งหลายลำดับ (MSA) และเป็นพื้นฐานของการวิเคราะห์หลายอย่าง: การค้นหาบริเวณที่ได้รับการอนุรักษ์ (ส่วนที่ยังคงไม่เปลี่ยนแปลงในวิวัฒนาการและดังนั้นจึงมีความสำคัญในการใช้งาน) การสร้างต้นไม้สายวิวัฒนาการ การระบุตระกูลโปรตีน เครื่องมือเช่น MAFFT, MUSCLE และ Clustal ทำหน้าที่นี้ได้ AI เขียนโค้ดที่เรียกเครื่องมือเหล่านี้จาก Python (เช่น ผ่าน Biopython เป็นต้น) และช่วยคุณตีความผลลัพธ์ แต่การจัดตำแหน่งนั้นทำให้เครื่องมือไม่ใช่แบบจำลอง "โดยการท่องจำ"

เมื่อตีความ MSA ให้ใส่ใจกับคอลัมน์อนุรักษ์: กรดอะมิโนที่ยังคงเหมือนเดิมในทุกลำดับมีแนวโน้มที่จะมีความสำคัญต่อการทำงานของโปรตีนมากที่สุด (เช่น ตำแหน่งที่ทำงานของเอนไซม์) สิ่งนี้ให้เบาะแสที่ชัดเจนว่าทำไมการกลายพันธุ์ถึงเป็นอันตราย แต่ "เก็บรักษาไว้ = มีนัยสำคัญ" เป็นสมมติฐาน ต้องมีการตรวจสอบการทดลอง

อ่านไฟล์การจัดตำแหน่งหลายรายการของฉัน (aligned.fasta) ซึ่งเป็นเอาต์พุต MAFFT พร้อมด้วย Biopython คำนวณอัตราการรักษาสำหรับแต่ละคอลัมน์ แสดงรายการตำแหน่งที่ได้รับการป้องกันมากกว่า 90% อธิบายว่าเหตุใดตำแหน่งเหล่านี้จึงมีความสำคัญเชิงหน้าที่ อย่าอ้างเป็นหน้าที่ขั้นสุดท้าย

กับดักการกลายพันธุ์และการตีความตัวแปร

เมื่อคุณเห็นการเปลี่ยนแปลงตัวอักษร (ตัวแปร) ในสตริง ถือเป็นก้าวกระโดดครั้งใหญ่ที่จะบอกว่ามันเป็น "อันตราย" ตัวแปรส่วนใหญ่จะเป็นกลาง (ไม่ได้ผล) เมื่อตีความผลกระทบของตัวแปร เราต้องดูฐานข้อมูลตัวแปรเฉพาะ (เช่น ClinVar) และข้อมูลความถี่ของประชากร (เช่น gnomAD) ไม่ใช่คำพูดของ AI หากแบบจำลองอ้างว่าตัวแปรนั้น "ทำให้เกิดโรค" อย่าเขียนสิ่งนี้ลงในข้อสรุปทางคลินิกหรือการวิจัยโดยไม่ยืนยันกับแหล่งข้อมูลเหล่านี้

ฐานข้อมูลฐานสำหรับการตรวจสอบ

การรู้แหล่งที่มาอย่างเป็นทางการเพื่อยืนยันทุกการอ้างสิทธิ์ในการวิเคราะห์ชุดถือเป็นเกราะป้องกันที่แข็งแกร่งที่สุดของคุณต่อการประดิษฐ์ปัญญาประดิษฐ์ ใช้บ่อยที่สุด:

ฐานข้อมูล

เพื่ออะไร

การยืนยันทั่วไป

NCBI GenBank/RefSeq

ลำดับ DNA/RNA บันทึกของยีน

รหัสสตริง ความยาว

UniProt

ลำดับและหน้าที่ของโปรตีน

ฟังก์ชัน จำนวนกรดอะมิโน

ทั้งมวล

คำอธิบายประกอบจีโนม ตำแหน่งของยีน

การทำแผนที่ยีน-โครโมโซม

คลินิกวาร์

ความสำคัญทางคลินิกของตัวแปรต่างๆ

การตัดสินใจที่ทำให้เกิดโรค/เป็นกลาง

gnomAD

ความถี่ที่แตกต่างกันในประชากร

รุ่นหายาก/ทั่วไป

AI สามารถแนะนำว่าฐานใดที่คุณควรพิจารณา แต่คุณทำแบบสอบถามและอ่านผลลัพธ์ "แบบจำลองกล่าวว่านี่คือสิ่งที่ UniProt พูด" ไม่ใช่การยืนยัน การยืนยันคือการเปิดหน้า UniProt ด้วยตัวเอง

โดยสรุป

การวิเคราะห์ลำดับเป็นหัวใจสำคัญของชีวสารสนเทศศาสตร์ FASTA, BLAST, การจัดตำแหน่งและการแปลเป็นการดำเนินการขั้นพื้นฐาน AI เขียนโค้ดสำหรับการดำเนินการเหล่านี้และช่วยคุณตีความผลลัพธ์ แต่เครื่องมือ (BLAST) และฐานข้อมูล (NCBI, UniProt) จะให้การระบุลำดับตามจริง การทำความเข้าใจแนวคิดอย่างถูกต้อง เช่น ค่าอิเล็กทรอนิกส์ ความครอบคลุม และกรอบการอ่านเป็นกุญแจสำคัญในการหลีกเลี่ยงข้อสรุปที่ไม่ถูกต้อง การอ้างฟังก์ชันจำเป็นต้องมีหลักฐานที่เป็นอิสระเสมอ

งานสมัคร

นำตัวอย่างลำดับดีเอ็นเอ (หรือยีนที่คุณดาวน์โหลดจาก NCBI) ให้ AI คำนวณความยาวและอัตราส่วน GC ด้วย Biopython จากนั้นแปลลงในกรอบการอ่านทั้งสามเฟรมและพิมพ์โค้ดที่พบ ORF ที่ยาวที่สุด เรียกใช้ผลลัพธ์ จากนั้นค้นหาลำดับนี้ด้วยตนเองใน NCBI BLAST และให้โมเดลตีความค่า e-value และอัตราการครอบคลุมของรายการที่ตรงกันที่สุด ยืนยันการอ้างสิทธิ์การทำงานของโมเดลใน UniProt

รายการตรวจสอบ

  • [ ] ฉันตรวจสอบเนื้อหาความยาวและตัวอักษรก่อนที่จะประมวลผลสตริง
  • [ ] ฉันใช้กรอบการอ่านที่ถูกต้องในการแปล
  • [ ] ฉันขับรถ BLAST ด้วยตัวเอง ฉันไม่ได้ "เตือน" โมเดลนี้
  • [ ] ฉันตีความค่า e-value และอัตราส่วนความครอบคลุมได้อย่างถูกต้อง
  • [ ] ฉันประเมินสายพันธุ์ที่ไม่คาดคิดซึ่งตรงกับการปนเปื้อน
  • [ ] ฉันยืนยันการอ้างฟังก์ชันด้วยฐานข้อมูลอย่างเป็นทางการ