6 คะแนน โดย GN⁺ 2026-04-27 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • โมเดล open-weight สำหรับตรวจจับและปกปิดข้อมูลส่วนบุคคลที่ระบุตัวตนได้ในข้อความไม่มีโครงสร้าง โดยสามารถรันแบบโลคัลเพื่อให้ข้อมูลไม่ออกจากอุปกรณ์ก่อนการกรอง
  • ออกแบบให้ผสานการจัดประเภทโทเค็นแบบสองทิศทางเข้ากับ span decoding เพื่อใส่ป้ายกำกับอินพุตทั้งชุดในครั้งเดียว และกู้คืน PII span ได้อย่างรวดเร็วในบริบทสูงสุด 128,000 โทเค็น
  • ต่างจากวิธีแบบกฎที่อาศัยรูปแบบอย่างเบอร์โทรหรืออีเมล โดยอิงจากการเข้าใจภาษาและบริบท ทำให้แยกข้อมูลสาธารณะออกจากข้อมูลที่ควรถูกปกปิดได้ดีกว่า
  • ฝึกด้วยทั้งข้อมูลสาธารณะและข้อมูลสังเคราะห์ ทำคะแนน F1 96% บน PII-Masking-300k และในเวอร์ชันที่ปรับแก้แล้วได้ F1 97.43% พร้อมทั้งยกระดับประสิทธิภาพการปรับให้เข้ากับโดเมนจาก 54% เป็น 96% ได้แม้มีข้อมูลเพียงเล็กน้อย
  • ไม่ใช่เครื่องมือทำข้อมูลนิรนามหรือสิ่งทดแทนการรับรองด้านคอมพลายแอนซ์ และในพื้นที่อ่อนไหวสูงยังคงต้องอาศัยการตรวจทานโดยมนุษย์ การประเมินเฉพาะโดเมน และการปรับจูนเพิ่มเติม

ภาพรวมผลิตภัณฑ์และรูปแบบการเผยแพร่

  • เป็นโมเดล open-weight ที่เชี่ยวชาญด้านการตรวจจับและปกปิดข้อมูลส่วนบุคคลที่ระบุตัวตนได้ สามารถค้นหา PII ในข้อความแล้วปิดบังหรือลบออกได้
  • รองรับการรันแบบโลคัล ทำให้ข้อมูลไม่ออกจากอุปกรณ์ก่อนการกรอง และลดความเสี่ยงจากการเปิดเผยเมื่อเทียบกับการส่งไปยังเซิร์ฟเวอร์เพื่อทำให้ไม่สามารถระบุตัวตนได้
  • ออกแบบมาให้ประมวลผลอินพุตยาวได้รวดเร็ว และตัดสินได้ในครั้งเดียวว่าจะปกปิดหรือไม่
  • นักพัฒนาสามารถรันในสภาพแวดล้อมของตนเอง และปรับจูนให้ตรงกับกรณีใช้งานของตน เพื่อเพิ่มการปกป้องความเป็นส่วนตัวให้กับ pipeline การฝึก การทำดัชนี การบันทึก log และการตรวจทาน
  • เปิดเผยภายใต้สัญญาอนุญาต Apache 2.0 บน Hugging Face และ GitHub โดยคำนึงถึงทั้งการทดลอง การปรับแต่ง และการนำไปใช้งานเชิงพาณิชย์

จุดที่ต่างจากวิธีเดิม

  • เครื่องมือตรวจจับ PII แบบดั้งเดิมมักอาศัยกฎตายตัวสำหรับรูปแบบอย่างหมายเลขโทรศัพท์หรืออีเมลแอดเดรส
  • วิธีแบบนี้อาจทำงานได้ดีในขอบเขตแคบ แต่ก็มักพลาดข้อมูลส่วนบุคคลที่ละเอียดอ่อนกว่าและอ่อนแอในการจัดการบริบท
  • Privacy Filter ใช้การเข้าใจภาษาและบริบทที่ลึกกว่า จึงตรวจจับ PII ได้ครอบคลุมยิ่งขึ้นในข้อความไม่มีโครงสร้าง
  • ออกแบบมาให้แยกได้ดีขึ้นระหว่างข้อมูลที่เป็นสาธารณะและควรเก็บไว้ กับข้อมูลที่เชื่อมโยงถึงบุคคลและควรถูกปกปิดหรือลบออก
  • พัฒนาขึ้นเพื่อยกระดับมาตรฐานด้านความเป็นส่วนตัวให้ก้าวไปไกลกว่าระดับเดิม และเวอร์ชันที่ปรับจูนแล้วยังถูกใช้ในเวิร์กโฟลว์รักษาความเป็นส่วนตัวภายในด้วย

โครงสร้างโมเดลและขอบเขตการตรวจจับ

  • ใช้โครงสร้างที่ผสานโมเดลจัดประเภทโทเค็นแบบสองทิศทางเข้ากับ span decoding
  • เริ่มจากเช็กพอยต์ที่ผ่านการพรีเทรนแบบอัตถถอยเชิงกำเนิด แล้วปรับให้เป็นตัวจัดประเภทโทเค็นบนชุดป้ายกำกับความเป็นส่วนตัวแบบคงที่
  • แทนที่จะสร้างข้อความทีละโทเค็น โมเดลจะใส่ป้ายกำกับให้ลำดับอินพุตทั้งหมดในครั้งเดียว แล้วกู้คืน span ที่สอดคล้องกันด้วยกระบวนการ Viterbi แบบมีข้อจำกัด
  • ด้วยโครงสร้างนี้จึงมีคุณสมบัติรวดเร็วและมีประสิทธิภาพสูง โดยใส่ป้ายกำกับทุกโทเค็นได้ใน single forward pass
  • สามารถใช้บริบทรอบข้างในการตัดสิน PII span และโมเดลที่เปิดเผยรองรับบริบทสูงสุด 128,000 โทเค็น
  • สามารถปรับจุดสมดุลระหว่าง recall และ precision ให้เหมาะกับสภาพแวดล้อมการใช้งานได้
  • โมเดลที่เปิดเผยมีพารามิเตอร์ทั้งหมด 1.5B และมี active parameters 50M
  • หมวดการทำนายมี 8 ประเภท ได้แก่ private_person, private_address, private_email, private_phone, private_url, private_date, account_number, secret
  • account_number ใช้สำหรับปกปิดหมายเลขบัญชีหลายประเภท รวมถึงหมายเลขบัตรเครดิตและเลขบัญชีธนาคาร ส่วน secret ครอบคลุมรายการอย่างรหัสผ่านและ API key
  • ป้ายกำกับจะถูกถอดรหัสเป็นBIOES span tag เพื่อสร้างขอบเขตการปกปิดที่สะอาดและสม่ำเสมอยิ่งขึ้น

กระบวนการฝึกและผลการประเมิน

  • เริ่มจากการสร้าง privacy taxonomy เพื่อกำหนดประเภทของ span ที่โมเดลต้องตรวจจับ
    • ครอบคลุมตัวระบุบุคคล ข้อมูลติดต่อ ที่อยู่ วันที่ไม่เปิดเผยสู่สาธารณะ หมายเลขบัญชีหลายชนิดรวมถึงข้อมูลเครดิตและธนาคาร ตลอดจน secret อย่าง API key และรหัสผ่าน
  • หลังจากแทนที่ language modeling head ของโมเดลภาษาที่พรีเทรนไว้ด้วย token-classification head แล้ว จึงฝึกต่อด้วยเป้าหมายการจัดประเภทแบบมีผู้สอน
  • ฝึกด้วยการผสมข้อมูลสาธารณะและข้อมูลสังเคราะห์ เพื่อให้จับได้ทั้งข้อความสมจริงและรูปแบบความเป็นส่วนตัวที่ซับซ้อน
    • ส่วนที่ป้ายกำกับไม่สมบูรณ์ในข้อมูลสาธารณะถูกเพิ่มความครอบคลุมด้วยการใส่คำอธิบายประกอบที่มีโมเดลช่วยและการตรวจทาน
    • ตัวอย่างสังเคราะห์ถูกใช้เพื่อเพิ่มความหลากหลายในด้านรูปแบบ บริบท และประเภทย่อยของความเป็นส่วนตัว
  • ในขั้นอนุมาน การทำนายระดับโทเค็นจะถูกแปลงเป็น span ที่สอดคล้องกันด้วยการถอดรหัสลำดับแบบมีข้อจำกัด
  • มีการประเมินทั้งบนเบนช์มาร์กมาตรฐาน และการประเมินเพิ่มเติมแบบสังเคราะห์และสไตล์แชตที่มุ่งเป้าไปยังกรณีที่ยากและไวต่อบริบทมากขึ้น
  • บน PII-Masking-300k ทำได้ F1 96%, precision 94.04%, recall 98.04%
  • ในเวอร์ชันที่ปรับแก้โดยสะท้อนปัญหาคำอธิบายประกอบของชุดข้อมูลที่พบระหว่างการตรวจทาน ทำได้ F1 97.43%, precision 96.79%, recall 98.08%
  • แม้มีข้อมูลเพียงเล็กน้อยก็ยังปรับให้เข้ากับโดเมนได้อย่างรวดเร็ว และบนเบนช์มาร์กการปรับโดเมนที่ประเมิน F1 เพิ่มจาก 54% เป็น 96%
  • Model Card ยังมี stress test สำหรับการตรวจจับ secret ใน codebase และตัวอย่างหลายภาษา แบบเชิงปฏิปักษ์ และแบบพึ่งพาบริบท

ข้อจำกัดและข้อควรระวังในการใช้งาน

  • ไม่ใช่เครื่องมือทำข้อมูลนิรนาม ไม่ใช่การรับรองด้านคอมพลายแอนซ์ และไม่ใช่สิ่งทดแทนการทบทวนนโยบายในสภาพแวดล้อมที่มีความเสี่ยงสูง
  • เป็นเพียงองค์ประกอบหนึ่งของระบบทั้งหมดที่ออกแบบโดยยึดความเป็นส่วนตัวเป็นศูนย์กลาง
  • ลักษณะการทำงานได้รับอิทธิพลจาก taxonomy ของป้ายกำกับที่ใช้ในการฝึกและเส้นแบ่งการตัดสิน
  • แต่ละองค์กรอาจมีนโยบายการตรวจจับและการปกปิดที่ต้องการต่างกัน จึงอาจจำเป็นต้องมีการประเมินภายในโดเมนหรือการปรับจูนเพิ่มเติม
  • ประสิทธิภาพอาจแตกต่างกันไปในภาษา ระบบตัวเขียน กฎการตั้งชื่อ และโดเมนที่ต่างจากการกระจายข้อมูลที่ใช้ฝึก
  • อาจพลาดตัวระบุที่พบไม่บ่อยหรือการอ้างถึงบุคคลอย่างกำกวม และอาจปกปิดมากเกินไปหรือน้อยเกินไป โดยเฉพาะเมื่อบริบทมีจำกัด เช่น ในลำดับข้อความสั้น
  • ในพื้นที่อ่อนไหวสูงอย่างกฎหมาย การแพทย์ และการเงิน การตรวจทานโดยมนุษย์ การประเมินเฉพาะโดเมน และการปรับจูนยังคงมีความสำคัญ

เจตนาของการเปิดเผยและทิศทางในอนาคต

  • การปกป้องความเป็นส่วนตัวถูกมองเป็นภารกิจต่อเนื่องที่ครอบคลุมทั้งงานวิจัย การออกแบบผลิตภัณฑ์ การประเมิน และการเผยแพร่
  • สะท้อนให้เห็นถึงความสำคัญของโมเดลขนาดเล็กและมีประสิทธิภาพที่ให้สมรรถนะระดับแนวหน้าในงานจริงที่นิยามขอบเขตชัดเจน
  • เปิดเผยภายใต้เป้าหมายที่จะทำให้โครงสร้างพื้นฐานเพื่อรักษาความเป็นส่วนตัวสามารถตรวจสอบ รัน ปรับใช้ และพัฒนาได้ง่ายขึ้น
  • เป็นเครื่องมือที่ช่วยให้โมเดลเรียนรู้เกี่ยวกับโลกได้ โดยไม่เรียนรู้ข้อมูลส่วนตัวของแต่ละบุคคล
  • การเปิดเผยแบบพรีวิวครั้งนี้ยังเป็นขั้นตอนเพื่อรับฟังข้อเสนอแนะจากชุมชนวิจัยและชุมชนด้านความเป็นส่วนตัว เพื่อนำไปปรับปรุงประสิทธิภาพต่อไป

1 ความคิดเห็น

 
GN⁺ 2026-04-27
ความเห็นจาก Hacker News
  • ฟีเจอร์แบบนี้เคยลองทำมาแล้วตั้งแต่ หลายปีก่อน และผลที่ได้ก็ชัดอยู่ไม่กี่อย่าง
    ถ้าจะให้ การลบข้อมูลส่วนบุคคล (PII) ยังรักษา UX ได้ ก็จำเป็นต้องแปลงกลับฝั่งไคลเอนต์ เช่น ถ้าชื่อคือ John แล้วถูกปิดเป็น [NAME] จากนั้นโมเดลตอบว่า Hi [NAME] ก็ต้องคืนกลับเป็น Hi John ก่อนจะแสดงให้ผู้ใช้เห็น
    สุดท้ายจึงต้องมี กลไกแทนค่ากลับ อยู่ในชั้นที่ผู้ใช้โต้ตอบด้วย
    อีกอย่างคือข้อมูล PII ที่ถูกปิดไว้แล้วแทบจะใช้ประโยชน์ไม่ได้ในหลายกรณี โมเดลต้องมีข้อมูลจริงอยู่บ้างถึงจะทำงานได้ แต่รายการที่ถูกจัดเป็น PII มีเยอะมาก จนสำหรับแชตธรรมดาอาจไม่เป็นไร แต่ถ้าผู้ใช้ต้องโต้ตอบกับ LLM แบบซับซ้อน ความยากจะเพิ่มขึ้นมาก อาจถึงขั้นทำอะไรไม่ได้เลยหรือเกิด hallucination ก็ได้
    เพราะแบบนี้ แม้จะมีการรองรับในระดับแพลตฟอร์ม แต่ในทางปฏิบัติกลับไม่ค่อยถูกใช้งานเพราะข้อจำกัดเหล่านี้
    วิธีที่พอเป็นจริงได้คือเอาออกเฉพาะ PII บางส่วนที่มีความเสี่ยงด้านความปลอดภัยสูง และใช้ โมเดลที่เชื่อถือได้ ซึ่งทิ้ง PII ให้เร็วที่สุดเท่าที่ทำได้ แต่ถ้าจะทำแบบนั้น สถาปัตยกรรมระบบก็ต้องเปลี่ยนไปพอสมควร
  • กำลังสร้าง https://github.com/KevinXuxuxu/anon_proxy อยู่ เป็นเครื่องมือคล้าย พร็อกซีทำข้อมูลนิรนาม ที่วางไว้หน้า LLM provider
    ใช้ทั้งการตรวจจับด้วยโมเดลและ regex PII detection ร่วมกัน แล้วจัดการแทนค่าและคืนค่าแบบสองทางทั้งใน API request และ response ถ้าโฮสต์โมเดลตรวจจับไว้แบบโลคัล PII ก็จะไม่ออกไปนอกสภาพแวดล้อมภายใน
    มันมีประโยชน์มากโดยเฉพาะเวลาใช้งานกับ เอกสารอ่อนไหว อย่างกฎหมาย ภาษี หรือการย้ายถิ่นฐาน
    • ข้อดีของวิธีนี้คือสามารถต่อเข้ากับ โมเดลไหนก็ได้
      แต่บริบททั้งหมดของบทสนทนาก็ยังคงถูกมองเห็นได้โดยโมเดลและผู้ให้บริการอยู่ดี
      เพราะงั้นผมเลยชอบแนวทางแบบ Moxie's Confer https://confer.to/ มากกว่า ที่ เข้ารหัสทั้งระบบ เพื่อให้ไม่มีใครนอกจากผู้ใช้ปลายทางเห็นข้อความแบบ plaintext ได้
    • อยากรู้ว่าจัดการ การคืนค่าฝั่ง response ยังไง
      ถ้าเอกสารถูกปิดข้อมูลไว้ตั้งแต่ฝั่ง input ผลลัพธ์จาก LLM ก็น่าจะยังเป็นข้อมูลที่ถูกปิดอยู่ แล้วหลังจากนั้นจะทำต่อยังไงยังนึกภาพไม่ออก
  • รีลีสนี้มี จุดที่น่าสนใจทางเทคนิค อยู่พอสมควร
    Privacy Filter เป็นโมเดล token-classification แบบสองทิศทาง ที่เพิ่ม span decoding เข้าไป โดยเริ่มจาก autoregressive pretraining checkpoint แล้วปรับให้เป็นตัวจำแนกโทเคนบน privacy label taxonomy แบบคงที่
    แทนที่จะสร้างข้อความทีละโทเคน มันจะติดป้ายกำกับให้ input sequence ทั้งชุดในครั้งเดียว แล้วถอดรหัส span ที่สอดคล้องกันด้วยกระบวนการ constrained Viterbi
    โมเดลที่เปิดเผยออกมามีทั้งหมด 1.5B พารามิเตอร์ และมี active parameters 50M
    อีกทั้งยังระบุด้วยว่าได้เปลี่ยน LM head ของโมเดลภาษาที่ pretrain มาแล้วให้เป็น token-classification head และนำไปฝึกต่อด้วย supervised classification objective
    • ถ้าอย่างนั้นก็ดูเหมือนจะใช้สิ่งนี้ค้นหาตำแหน่งข้อมูลอ่อนไหวใน ข้อความที่ไม่มีโครงสร้าง ได้เหมือนกัน โดยไม่ต้องพึ่งเครื่องมือตรวจจับ PII แบบอื่น
      แค่ส่งต้นฉบับผ่านฟิลเตอร์เพื่อเอา span ออกมา แล้วแมป span นั้นกลับไปยังต้นฉบับ ก็จะได้ข้อมูลตำแหน่ง PII ครบเลย
  • ผมทำ https://tools.nicklothian.com/webner/index.html ไว้ ซึ่งใช้ BERT-based NER ในเบราว์เซอร์เพื่อปิด PII บางส่วน แม้จะไม่ฉลาดเท่า OpenAI
    สำหรับงานที่ผมลอง มันทำงานได้ค่อนข้างดี
    โมเดลของ OpenAI ดูเล็กพอสมควร เลยกำลังคิดว่าจะเอามาต่อเข้ากับเครื่องมือของผมด้วยดีไหม
    • เพิ่งลองกับเอกสารเมื่อกี้ แล้วดูเหมือนจะใช้งานยากมากเพราะมี false positive เยอะ
      ใส่เอกสาร markdown ประมาณ 100 บรรทัดลงไป matter ซึ่งเป็นส่วนหนึ่งของ frontmatter ถูกมองเป็นองค์กร ส่วน end ที่เป็นส่วนหนึ่งของ frontend ก็ถูกมองเป็นองค์กรเหมือนกัน และ MCP ก็ถูกจัดเป็นองค์กรด้วย
      ยังมีผลลัพธ์แบบ Following the discussion in , blahblah ที่ผิดไวยากรณ์อย่างชัดเจนอีกเยอะ
      ให้ความรู้สึกเหมือนย้อนกลับไปยุค NLP เมื่อ 10 ปีก่อน และก็ทำให้นึกอีกครั้งว่า spaCy เป็นโปรเจกต์ที่ดีมากในวงการนั้น
  • ควรพูดให้ชัดว่าโมเดลประเภทนี้แทบทั้งหมด ไร้เดียงสาและพื้นฐานมาก
    ถ้าเป็นข้อความเดี่ยวเรียบง่ายและเป็นกลางอย่าง Hi, this is Bob. โดยมากก็คงพอใช้ได้ แต่พอข้อมูลเริ่มสะสม ผมยังไม่เคยเห็นเครื่องมือ redaction PII ที่คำนึงถึง ความเสี่ยงการเปิดเผยตัวตน ได้ครบถ้วนทั้งหมด
    และเมื่อบริษัทต่าง ๆ ใช้ของพวกนี้แล้วเชื่อว่าข้อมูลถูกทำให้ไม่ระบุตัวตนแล้ว ปัญหาจะยิ่งใหญ่ขึ้น เพราะนั่น ไม่ใช่การทำให้ไม่ระบุตัวตน
    ถึงอย่างนั้น ถ้าไม่ได้เอาข้อมูลไปเปิดเผยหรือแชร์ทันที แต่ใช้ใน ขั้นตอนประมวลผลกลางทาง อย่าง moderation, human eval หรือ model training การกรองแบบนี้ก็อาจมีประโยชน์มาก
  • ค่อนข้างเสียดายที่ตัวอย่างส่วนใหญ่เป็นสิ่งที่จับได้ง่ายด้วย regex อยู่แล้ว แต่ก็ดีใจที่มีการปล่อยเป็นโมเดลโลคัลแบบเปิด
    • สำหรับลูกค้าของผม ผมกันไม่ให้อีเมลส่วนตัวหรือเบอร์โทรศัพท์ขึ้นเว็บไซต์ด้วย regular expression อยู่แล้ว
      ถึงอย่างนั้น การรันโมเดลแบบนี้เพิ่มเพื่อความสบายใจก็ดูโอเค
      เซิร์ฟเวอร์ไม่มี GPU แต่ถ้าต่ำกว่า 2k โทเคนต่อครั้ง ก็น่าจะเป็นโมเดลเบาที่รับมือได้แม้ด้วย CPU-only inference
  • พอกดลิงก์แล้วโดนรีไดเรกต์ไปยังเวอร์ชัน แปลด้วยเครื่อง ของเว็บ OpenAI ซึ่งความหมายพังหมดเลย
    เขาแปล redacted เป็นคำโปแลนด์ redagować แต่คำนั้นไม่ได้หมายถึงการทำข้อมูลนิรนาม มันใกล้กับความหมายว่าแก้ไขหรือเรียบเรียงข้อความมากกว่า
  • อยากรู้ว่ามันจะเป็นยังไงเมื่อเทียบกับ Presidio ที่ผสม regex กับโมเดล: https://microsoft.github.io/presidio/
    • ผมว่าน่าจะเอาโมเดลนี้ ใส่เข้าไปใน Presidio เพื่อใช้งานได้เหมือนกัน
  • คิดว่า https://peyeeye.ai แก้ทุกปัญหา ที่ทุกคนในเธรดนี้พูดถึงได้แบบตรงตัว
    • บริษัทที่เอาข้อมูลคนอื่นไปกวาดมาใช้โดยไม่ได้รับอนุญาต มาทำ เครื่องมือความเป็นส่วนตัว นี่มันประชดประชันเกินไปจริง ๆ
  • ดีใจที่มีการเปิดเผยครั้งนี้
    ต่อให้ไม่ได้อยู่ในอุตสาหกรรมที่มีการกำกับดูแลเข้มงวด ก็ยังมีเหตุผลมากมายที่ควรมี โมเดลและแนวปฏิบัติ แบบนี้ไว้ และในทางทฤษฎี บางส่วนก็อาจจำเป็นเพราะ EU AI Act ด้วย
    ผมใส่ redaction และ rehydration ไว้ใน https://grepture.com อยู่แล้วด้วย NER model เฉพาะทาง เพราะงั้นก็กำลังคิดจะเพิ่มตัวนี้เข้าไปใน pipeline เช่นกัน
    ถ้าเลือกวางไว้ใน hot path ได้ และทำให้แตะ request ก่อนและหลังส่งถึง LLM ได้จริง มันก็น่าจะมีประโยชน์มากในงานด้าน compliance หรือสถานการณ์ที่รับ input จากผู้ใช้โดยตรง