warin.me · ห้องทดลองวิจัย EN · ไทย
การทำนายตำแหน่งโปรตีนพืช · 2026

จาก Web RPA
สู่การโหวตบนเครื่อง

เรานำแนวคิด weighted ensemble ด้วย PSO จากงานปี 2021 มาสร้างใหม่ โดยรันตัวทำนายบนเครื่อง แสดงคำตอบของ classifier ทุกตัวก่อนคูณน้ำหนัก และทดสอบกับข้อมูลขนาดใหญ่ที่โปรตีนหนึ่งตัวมีได้หลายตำแหน่ง

ผลหลักแบบเดียวกับบทความปี 2021

TVPSO accuracy 90.5%

5 predictors รวม ngLOC · locked primary-location test 831 โปรตีน · exact value 0.9049338

เราทำอะไร และทำไปทำไม

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

ปัญหาเดิม

โหวตได้ดี แต่ระบบเปราะบาง

ระบบปี 2021 ใช้ RPA ส่งลำดับไปยังเว็บ classifier หกแห่ง เก็บผลใน SQL แล้วใช้ PSO ถ่วงน้ำหนัก เมื่อเว็บหรือคิวเปลี่ยน คำขอหนึ่งอาจใช้เวลามากกว่าห้านาที

สิ่งที่เปลี่ยน

นำ inference มาไว้ใกล้งานทดลอง

รุ่นนี้ใช้ predictor ใน Docker แยกกัน เก็บ cache ปรับชื่อคลาสให้ตรงกัน และเปิดให้ตรวจ raw score ก่อนคูณ coefficient เพื่อให้เร็วขึ้นและตรวจสอบย้อนกลับได้

คำถามทดลอง

เพิ่มโมเดลแล้วดีขึ้นจริงหรือไม่

เราทดสอบโปรตีน Viridiplantae 5,116 ตัวทั้งแบบ single-label ตามบทความเดิมและแบบ multilabel การเพิ่ม ngLOC ช่วย TVPSO เล็กน้อย แต่ทำให้ multilabel voter แย่ลง

ทำไม multi-location จึงสำคัญ

โปรตีนไม่ได้อยู่เพียงช่องเดียวเสมอไป มันอาจถูกขนส่งผ่านหลายออร์แกเนลล์ อยู่ชั่วคราวในตำแหน่งหนึ่ง ถูกดัดแปลงในที่หนึ่งแล้วไปทำงานอีกที่หนึ่ง หรือมีหน้าที่จริงหลายตำแหน่งตามสภาวะของเซลล์ การบังคับให้เหลือคำตอบเดียวจึงอาจตัดชีววิทยาส่วนสำคัญทิ้ง

หน้าที่ทางชีววิทยา

ตำแหน่งเปลี่ยนตามสภาวะ

พัฒนาการ ความเครียด signalling และ post-translational modification สามารถเปลี่ยนเส้นทางของโปรตีนพืชได้ top-1 label อาจซ่อนพฤติกรรมตามเวลาเหล่านี้

การออกแบบการทดลอง

ตำแหน่งรองคือสมมติฐาน

ผลหลายตำแหน่งช่วยเลือก organelle marker ช่วงเวลา และเงื่อนไขที่ควรตรวจ แทนการถือว่าหลักฐานรองทุกอย่างเป็นความผิดพลาด

การประเมินโมเดล

Accuracy เดียวไม่พอ

โมเดลอาจตอบตำแหน่งหลักถูก แต่พลาดตำแหน่งรองทั้งหมด เราจึงรายงาน exact accuracy, micro/macro F1, Hamming loss และ confusion matrix รายคลาส

ความหมายของผลบนหน้านี้: voter ใช้ threshold แยกต่อ localization จึงตอบได้มากกว่าหนึ่งตำแหน่ง ส่วน pie chart แสดงสัดส่วนแรงสนับสนุนจาก ensemble ไม่ได้หมายถึงสัดส่วนเวลาที่โปรตีนอยู่จริงในแต่ละออร์แกเนลล์

ต่างจากเวอร์ชันปี 2021 อย่างไร

ประเด็นPlantLoc ปี 2021ห้องทดลองปัจจุบัน
การเรียก classifierเว็บภายนอก 6 ตัวผ่าน RPAproduction ใช้ local predictor 4 ตัว และทดลอง ngLOC เป็นตัวที่ 5
สถาปัตยกรรมFrontend + Backend + SQL queue + web crawlingDocker แยก service, local adapter, cache และ rate limit
ข้อมูลทดลองDataset S จำนวน 753 โปรตีนDeepLoc Viridiplantae ที่มี experimental evidence 5,116 โปรตีน
โจทย์ตำแหน่งตำแหน่งหลัก 12 คลาส10 คลาสร่วมแบบ multilabel; เก็บ raw cytoskeleton ของ ngLOC แต่ไม่รวมใน vote
PSOTime-varying PSO เพิ่ม primary accuracyทำ TVPSO decision rule เดิมซ้ำ และเพิ่ม thresholded multilabel PSO แยกต่างหาก
การประเมิน10-fold บน primary labellocked test 831 single-label และ 963 multilabel พร้อมผลรายคลาส
การอธิบายผลตารางคะแนนเรียงลำดับและ pie chartraw answer → coefficient → weighted contribution → threshold → output พร้อม weights และ confusion matrices
ผลหลัก92.3% ในชุดเดิม 753 ตัวTVPSO 5 predictors ได้ 90.5% primary accuracy; production multilabel ได้ exact accuracy 75.0%

ห้ามเปรียบเทียบเปอร์เซ็นต์ตรง ๆ เพราะชุดข้อมูล พื้นที่ label, base classifier และคำถามในการประเมินต่างกัน หน้านี้แยกสอง formulation เพื่อไม่ให้การปรับระบบถูกตีความเป็น accuracy claim แบบเดียวกับบทความเดิม

เครดิตและสายงานวิจัย

PlantLoc · 2021

Weighted Ensemble for Plant Protein Subcellular Localization Using Particle Swarm Optimization

Warin Wattanapornprom, Thanagorn Glomrit, Tinnaphop Prayongsup, Pitchayanin Suwanthanarat และ Supatcha Lertampaiporn

เป็นต้นทางของ workflow แบบ RPA, น้ำหนัก PSO ราย localization, การจัดอันดับผล และรูปแบบการนำเสนอที่นำมาศึกษาต่อ

PSO-LocBact · 2019

A Consensus Method for Optimizing Multiple Classifier Results for Predicting the Subcellular Localization of Bacterial Proteins

Supatcha Lertampaiporn, Sirapop Nuannimnoi, Tayvich Vorapreeda, Nipa Chokesajjawatee, Wonnop Visessanguan และ Chinae Thammarongtham

เป็นแหล่งพารามิเตอร์ time-varying PSO ที่ใช้สร้างซ้ำในงานนี้

LOCALIZER, WoLF PSORT, Light Attention, SherLoc2 และ ngLOC เป็นผลงานของผู้สร้าง base predictors ตามเอกสารอ้างอิงด้านล่าง งานนี้นำผลของโมเดลเหล่านั้นมา ensemble ไม่ได้อ้างว่าเป็นผู้สร้างโมเดลฐาน

สถาปัตยกรรมก่อนและหลัง

2021 · Web RPA

Frontend
Backend + SQL
Web classifiers
  1. คืน queue ID
  2. RPA ส่งงานและรอเกินห้านาที
  3. บันทึกผลแล้วใช้ PSO

2026 · Local vote

Lab page
Docker แยกกัน
Models + PSO
  1. รัน adapter ของโมเดลบนเครื่อง
  2. cache คำตอบดิบก่อนถ่วงน้ำหนัก
  3. ใช้ coefficient และ threshold รายคลาส

Prediction panel · FASTA เข้า → local vote ออก

เป็น inference จริงบนเครื่อง ไม่ใช่ค่าตัวอย่าง วางลำดับโปรตีนหนึ่งตัวแล้วรัน voter สี่โมเดล

ครั้งแรกอาจใช้เวลานาน ลำดับเดิมจะใช้ local cache และ public API มี rate limit

ผลโหวต

ส่งลำดับเพื่อดูตำแหน่งที่ผ่าน threshold และการกระจายคะแนน

ตารางจะแสดง raw score และคำตอบ Yes/No → coefficient → weighted numerator → vote/threshold → ผลสุดท้าย

ผล multilabel บน locked test 963 โปรตีน

โมเดลMacro F1Micro F1Weighted F1Exact accuracyHamming loss
Light Attention.766.839.831.764.034
Restored production PSO · 3 predictors.743.833.833.771.037
Experimental PSO · 4 predictors.764.833.829.750.038
Experimental PSO + ngLOC · 5 predictors.674.827.808.734.037
ngLOC native top-1.500.608.582.562.084
SherLoc2 sequence-only.327.415.372.307.112

คืน production เป็น voter สามตัวจาก artifact เดิมซึ่งได้ exact accuracy 77.1% ส่วน SherLoc2 และ ngLOC เก็บไว้เป็นการทดลองรอง เพราะการเพิ่ม classifier ไม่ได้เพิ่ม exact accuracy; exact accuracy จะนับว่าถูกต่อเมื่อทั้งสิบ label ตรงทั้งหมด

ผล primary-location แบบเดียวกับบทความปี 2021 · 831 โปรตีน

โมเดลPrimary accuracyMacro F1Weighted F1
TVPSO · 5 predictors รวม ngLOC.905.840.905
TVPSO · 4 predictors.901.822.900
Light Attention.901.820.900
ngLOC 1.0 plant.651.537.637
WoLF PSORT.596.350.573
LOCALIZER.514.181.419
SherLoc2 sequence-only.434.357.445

ใช้ 25 particles, 1,000 objective evaluations, inertia .9→.4, c1 2.5→.5, c2 .5→2.5, น้ำหนัก [0,1] และ seed 42

F1 แยกตาม localization

น้ำหนักจาก PSO ของ production multilabel voter

น้ำหนัก TVPSO แบบปี 2021 · 5 predictors

Confusion matrices แยกตาม classifier · locked test 963 โปรตีน

เลือกดู LOCALIZER, WoLF PSORT, Light Attention, SherLoc2, unweighted vote หรือ PSO voter ได้โดยตรง แต่ละการ์ดแสดง TN, FP, FN และ TP ของ localization นั้น

Confusion matrix ของ TVPSO · 831 โปรตีน

แถวคือค่าจากการทดลอง คอลัมน์คือค่าที่โมเดลทำนาย สีเข้มหมายถึงจำนวนโปรตีนมาก

ข้อจำกัดทางวิทยาศาสตร์

Light Attention พัฒนาบนข้อมูลที่เกี่ยวข้องกับ DeepLoc แม้ partition 4 ไม่ได้ใช้ปรับ voter แต่ไม่สามารถรับประกันว่า pretrained base model ไม่เคยเห็นข้อมูลทั้งหมด งานนี้จึงเป็นการพัฒนา PSO และศึกษาระบบ ไม่ใช่ independent benchmark ของ Light Attention นอกจากนี้ผล prediction เป็นสมมติฐานสำหรับการตรวจต่อ ไม่ใช่หลักฐานแทนการทดลองในห้องปฏิบัติการ

เอกสารอ้างอิงของ base predictors และข้อมูล

  1. LOCALIZER — Sperschneider et al. (2017), Scientific Reports
  2. WoLF PSORT — Horton et al. (2007), Nucleic Acids Research
  3. Light Attention — Stärk et al. (2021), Bioinformatics Advances
  4. SherLoc2 — Briesemeister et al. (2009), Journal of Proteome Research
  5. ngLOC — King & Guda (2007), Genome Biology
  6. DeepLoc dataset — Almagro Armenteros et al. (2017), Bioinformatics
  7. PSO-LocBact — Lertampaiporn et al. (2019), BioMed Research International
  8. PlantLoc — Wattanapornprom et al. (2021), ECTI-CON 2021