4 คะแนน โดย GN⁺ 2025-01-19 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • วาทกรรมด้านกลยุทธ์ระดับสูงของ StarCraft: Brood War กระจุกตัวอยู่ในวิดีโอและสตรีมภาษาเกาหลีมาเป็นเวลานาน ทำให้ชุมชนที่ไม่ได้ใช้ภาษาเกาหลีตาม องค์ความรู้ด้านกลยุทธ์ ได้ยาก
  • การแปลที่มีอยู่เดิมต้องพึ่งการทำมือของผู้ที่รู้ภาษาเกาหลีหรือ Google Translate และเมื่อ build order กับสแลงในชุมชนถูกแปลตรงตัว บริบทก็มักพังอยู่บ่อย ๆ
  • แนวทางใหม่ผสาน yt-dlp, Whisper, Google Colab, LLM และพจนานุกรมคำศัพท์ของ TeamLiquid เพื่อถอดเสียงภาษาเกาหลี แล้วแปลงเป็นซับไตเติลภาษาอังกฤษที่ผู้เล่น Brood War เข้าใจได้
  • การเผยแพร่ซับไตเติลใช้ BWKT Client ที่เชื่อม TamperMonkey UserScript, Pastebin, Google Sheets และ Apps Script เข้าด้วยกัน เพื่อไม่ให้ติดข้อจำกัดเรื่องสิทธิ์เจ้าของวิดีโอ YouTube
  • แม้จะเป็นโปรเจกต์แนวแฮ็กที่ทำในเวลาประมาณ 2 สัปดาห์ แต่ด้วยงบประมาณราว $30 USD และชุดเครื่องมือฟรี ก็สามารถแปลวิดีโอได้ประมาณวันละ 7 รายการ และยังมีช่องทางขยายต่อ เช่น การรองรับหลายภาษา

เหตุผลที่เข้าถึงความรู้ Brood War ภาษาเกาหลีได้ยาก

  • StarCraft: Brood War เป็นเกม RTS เชิงแข่งขันที่เปิดตัวในปี 1998 และยังมีชุมชนที่คึกคักอยู่จนถึงปัจจุบัน
  • ระบบนิเวศ Brood War ระดับสูงในทางปฏิบัติขับเคลื่อนโดยมี เกาหลีเป็นศูนย์กลาง
    • ผู้เล่นมืออาชีพ ทีม และทัวร์นาเมนต์ส่วนใหญ่อยู่ในเกาหลี
    • ผู้ชมตัวยงและชุมชนส่วนใหญ่ก็อยู่ในเกาหลีเช่นกัน
    • สมาชิกชุมชนที่ไม่ใช่คนเกาหลีเรียกตัวเองว่า “foreigners”
  • Brood War เหมือนหมากรุกตรงที่บันทึกการแข่งขันและการศึกษากลยุทธ์ที่สั่งสมมายาวนานมีความสำคัญ
    • ในระดับสูง การศึกษาเกม สำคัญพอ ๆ กับการเล่นเกม
    • วาทกรรมยุคใหม่จำนวนมากเกิดขึ้นในวิดีโอและไลฟ์สตรีมของผู้เล่น Brood War มืออาชีพ
  • เช่นเดียวกับ “Sicilian defense” หรือ “Najdorf variation” ในหมากรุก Brood War ก็มี ภาษาเฉพาะโดเมน ที่ชุมชนสร้างขึ้น
    • คำศัพท์เหล่านี้ไม่ใช่ถ้อยคำจากคู่มือกติกา แต่เป็นภาษาที่บีบอัดการศึกษาและการวิเคราะห์ระยะยาวเพื่อสื่อสารให้กระชับ

ปัญหา Foreigner Knowledge

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

จุดที่การแปลตรงตัวล้มเหลว

  • บทสอนภาษาเกาหลีมีศัพท์ build ของ Brood War เช่น 12 앞마당, 11 스포닝풀, 10가스, 투해처리, 3해처리, 안 3해처리
  • Google Translate แปลงคำเหล่านี้เป็น 12 courtyard, two-processing, 3-point processing ซึ่งไม่เข้ากับบริบทของเกม
    • ใน Brood War ไม่มี “courtyard”
    • “starting off the most affluently” เป็นการถ่ายทอด “economic opener/build” ที่ฟังแปลกและยืดยาว
    • “3-point processing” ไม่มีความหมายแม้แต่กับผู้เล่น Brood War
  • คำบางคำยังพอจำได้
    • Toss, build, fast gas, moderately fast tech-tree, Terran เป็นต้นยังคงอยู่
    • แต่ส่วนใหญ่เป็นสัญญาณรบกวนจากการแปลตรงตัว จนทำให้บริบทของคำที่พอรู้ความหมายพลอยเลือนหายไปด้วย
  • ผู้เขียนมองว่าการซ้อนกันของซับไตเติลอัตโนมัติคุณภาพต่ำกับคำศัพท์เฉพาะทางที่ถูกแปลตรงตัว ทำให้ชุมชนที่ไม่ได้ใช้ภาษาเกาหลี ล้าหลังชุมชนเกาหลีไปหลายสิบปี

กระบวนการแปลแบบใหม่

  • กระบวนการใหม่แปลซับไตเติลเดียวกันเป็นถ้อยคำที่ผู้เล่น Brood War เข้าใจได้ เช่น 12 Natural, economic opener, Protoss, two-Hatchery build, 11 Spawning Pool, 10 Gas, third Hatchery
  • การแปลไม่ได้สมบูรณ์แบบ แต่ อัตราส่วนสัญญาณต่อสัญญาณรบกวน ดีขึ้นมากจนหัวข้อของวิดีโอปรากฏชัดทันที
  • เดิมทีการแปลวิดีโอได้ปีละหลายสิบรายการถือเป็นขีดจำกัด แต่ด้วยวิธีใหม่นี้ คนคนเดียวสามารถแปลวิดีโอได้ประมาณ 7 รายการต่อวัน ในเวลาว่าง

ไปป์ไลน์การผลิตซับไตเติล

  • yt-dlp และ Whisper

    • ตอนแรกตั้งใจจะใช้ yt-dlp ดาวน์โหลดซับไตเติลภาษาเกาหลีอัตโนมัติจาก YouTube แล้วนำไปแปล แต่คุณภาพของซับอัตโนมัติยังไม่ดีพอให้ใช้งานได้
    • จึงเปลี่ยนมาใช้ yt-dlp ดาวน์โหลด แทร็กเสียง ของวิดีโอ แล้วถอดเสียงโดยตรงด้วย Whisper
    • ผลลัพธ์สะอาดและครบถ้วนกว่าซับไตเติลของ YouTube และดูเหมือนจะละเลยเสียงรบกวนอย่างเสียงในเกมกับเสียงคลิกเมาส์ได้ดีกว่า
    • ช่วงแรกเรียกใช้ Whisper บนเครื่อง local และใช้ 10GB VRAM
    • บน Windows ต้องติดตั้ง Python, venv, CUDA, git ฯลฯ จึงมีข้อจำกัดสำหรับผู้ร่วมงานคนอื่น ๆ
  • Google Colab

    • Whisper ติดตั้งได้ด้วย Python pip และ Google Colab ให้บริการ Jupyter notebook ฟรีพร้อม GPU ฟรี
    • GPU ของ Colab มี VRAM เพียงพอสำหรับรัน Whisper
    • การแชร์ notebook แบบอ่านอย่างเดียวที่กำหนดพารามิเตอร์ได้เหมาะเป็นโมเดลการเผยแพร่
    • ผู้ใช้ที่ไม่เชี่ยวชาญเทคนิคก็รันได้โดยไม่ขึ้นกับฮาร์ดแวร์ และรับฟีเจอร์ล่าสุดได้เพียงอัปเดต notebook
    • ไม่ต้อง git clone หรือดาวน์โหลดซ้ำ ๆ
    • notebook รับอินพุตเป็น YouTube URL หนึ่งรายการ แล้วสร้างและให้ดาวน์โหลดไฟล์ SRT ภาษาเกาหลี
  • LLM และพจนานุกรมสแลงภาษาเกาหลี

    • TeamLiquid เป็นชุมชน Brood War นอกเกาหลีที่มีมายาวนาน
    • ราว 15 ปีก่อน สมาชิก TeamLiquid ชื่อ konadora ได้สร้างโพสต์ฟอรัมพจนานุกรม “คำศัพท์ภาษาเกาหลีที่ผู้บรรยาย BW ใช้”
    • คัดลอกโพสต์นี้เป็นไฟล์ Markdown ชื่อ KoreanSlang.txt แล้วส่งให้ LLM
    • ใน prompt กำหนดให้แปลซับไตเติลภาษาเกาหลีเป็นภาษาอังกฤษ โดยอ้างอิง KoreanSlang.txt และบริบทของ StarCraft: Brood War
    • ให้ให้ความสำคัญกับความชัดเจนมากกว่าการแปลตรงตัว และคง timestamp กับรูปแบบไฟล์ไว้
    • อนุญาตให้แก้ซับไตเติลที่ซ้ำหรือข้อผิดพลาดที่เห็นชัด และหากจำเป็นให้ใส่บันทึกผู้แปลสั้น ๆ ลงในซับไตเติลได้
    • ส่วนที่ฟังไม่ออกให้แทนด้วย (unintelligible) และให้ส่งออกเป็น code block เพื่อให้ง่ายต่อการคัดลอก
    • ใช้วิธีนำซับไตเติลภาษาเกาหลีที่ Whisper สร้างขึ้นใส่ใน ChatGPT บัญชี Pro แล้วขอให้แปล

ไปป์ไลน์การใช้งานซับไตเติล

  • ข้อจำกัดของซับไตเติล YouTube และ BWKT Client

    • ฟีเจอร์ซับไตเติลของ YouTube เองอนุญาตให้เฉพาะเจ้าของวิดีโอตั้งค่าหรืออัปเดตซับได้
    • เพื่อหลีกเลี่ยงกระบวนการดาวน์โหลดวิดีโอ อัปโหลดใหม่ แล้วตั้งค่าซับ จึงสร้างไคลเอนต์แยกขึ้นมา
    • UserScript เพิ่มปุ่มให้วิดีโอ YouTube และดาวน์โหลดซับแปลที่สอดคล้องกันเมื่อมี
    • พาร์สไฟล์ SRT และ VTT แล้วแสดงซับไตเติลในคอนเทนเนอร์ขนาดเล็กใต้ตัวเล่น YouTube
    • ไคลเอนต์นี้มีชื่อว่า BWKT Client
  • Pastebin, Google Sheets, Apps Script

    • ซับไตเติลเป็นไฟล์ข้อความ จึงใช้ Pastebin เป็นที่เก็บสำหรับแชร์อย่างรวดเร็ว
    • เรียบง่าย มีบัญชีพรีเมียมอยู่แล้ว และไม่คาดว่าทราฟฟิกจะเป็นปัญหา
    • ข้อมูล mapping ต้องการเพียงสองคอลัมน์คือ YouTube URL และ Subtitle URL
    • ในอนาคตสามารถเพิ่มคอลัมน์ Language ได้
    • การใช้ Google Sheets เหมือนฐานข้อมูลทำให้ตรวจสอบและอัปเดตด้วยมือได้ง่าย และแชร์กับคนอื่นก็สะดวก
    • Apps Script เป็น JavaScript runtime ที่เข้าถึง Google Workspace ได้ และมีเว็บเซิร์ฟเวอร์ในตัว
    • ในรูปแบบ function doGet(req) { /* ... */ } รับ YouTube video ID แล้วส่งคืน Pastebin URL ที่สอดคล้องกัน
    • ฐานข้อมูลสาธารณะแบบอ่านอย่างเดียวให้บริการผ่าน หน้า Google Sites

โอกาสปรับปรุงและการทดสอบ

  • โปรเจกต์นี้เป็นงานประกอบแบบแฮ็ก ๆ ที่ทำในเวลาประมาณ 2 สัปดาห์ และมีงบประมาณราว $30 USD
    • ค่าใช้จ่ายอยู่ที่ ChatGPT และเวลา GPU เพิ่มเติมของ Colab
    • ทั้งสองอย่างไม่ใช่สิ่งจำเป็นอย่างเคร่งครัด แต่มีแล้วสะดวก
  • ตัวเลือกสำหรับขยายต่อคือ การรองรับหลายภาษา
    • ชุมชนที่ไม่ได้ใช้ภาษาเกาหลีไม่ได้มีแค่ผู้เล่นสหรัฐฯ แต่ยังมีผู้เล่นจากเม็กซิโก โปแลนด์ โรมาเนีย จีน และไต้หวันด้วย
    • ผู้เขียนมองว่าสามารถแปลเป็นภาษาหลายสิบภาษาได้ และปริมาณงานก็ไม่ได้มากนัก
  • ยังมีจุดปรับปรุงทางเทคนิคเหลืออยู่
    • ปัจจุบัน BWKT Client แสดงปุ่มแม้กับวิดีโอ YouTube ที่ไม่มีซับไตเติล
    • หากเพิ่ม endpoint ในเว็บเซิร์ฟเวอร์ Apps Script เพื่อส่งคืนดัชนีวิดีโอที่แปลแล้ว ก็จะควบคุมได้ว่าควรแสดงปุ่มหรือไม่
  • ทดสอบซับไตเติลโดยดูวิดีโอความยาว 13 นาทีกับผู้ใช้ Brood War หลายคน
    • หลังผ่านไปประมาณ 5 นาที ทุกคนลืมประเมินคุณภาพซับไตเติล แล้วหันไปดูวิดีโอ ถกกัน ย้อนดูคลิปสั้น ๆ และกดหยุดเพื่อพูดคุย
    • ซับไตเติลผ่านการทดสอบ

ลักษณะของโปรเจกต์

  • ประสิทธิภาพ ความสามารถในการขยาย และ latency ไม่ใช่ประเด็นหลักของโปรเจกต์นี้
  • ส่วนใหญ่เป็น glue code ที่เชื่อมเครื่องมือซึ่งมีอยู่แล้วเข้าด้วยกัน
  • user script และโค้ด Python ใน Colab notebook สั้นและดูแลรักษาง่าย
  • เว็บเซิร์ฟเวอร์มีลักษณะใกล้เคียงกับระบบ CRUD สำหรับ production แบบเรียบง่าย จึงไม่มีเหตุผลมากนักที่จะซับซ้อนขึ้น
  • ผู้สร้างมองว่าโปรเจกต์นี้เป็นโปรเจกต์ที่ janky ที่สุดในบรรดาสิ่งที่ตนเคยเผยแพร่ แต่ก็ยังชอบมัน

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

 
GN⁺ 2025-01-19
ความคิดเห็นจาก Hacker News
  • ในฐานะ ผู้เล่น Brood War ชาวเกาหลี และนักวิจัยด้านการรู้จำเสียง ผมอ่านอย่างสนุกมาก
    ในการถอดเสียงภาษาเกาหลีเดิมก็มีข้อผิดพลาดอยู่ไม่น้อย และดูเหมือนว่าโมเดลภาษาขนาดใหญ่ด้านหลังจะแก้ไขมันได้อย่างน่าประทับใจทีเดียว ตัวอย่างเช่น 12 안마당 빌드 จริง ๆ แล้วมีโอกาสสูงว่าจะเป็น 12 앞마당 빌드 และสำหรับผู้เล่น Brood War คงเข้าใจได้ง่ายกว่ามาก เช่นเดียวกัน 투에처리 빌드 ฟังไม่สมเหตุสมผล และควรถูกถอดเสียงเป็น 투해처리 빌드 หรือก็คือ บิลด์ 2 แฮตเชอรี
    ดังนั้น contextual biasing ที่ใส่พจนานุกรมสแลงเข้าไปโดยตรงในกระบวนการอนุมานของ Whisper ก็น่าจะช่วยได้ มีหลายวิธี แต่แบบง่ายที่สุดคือเพิ่มความน่าจะเป็นของโทเคนสแลงที่อยู่ในพจนานุกรมขึ้นเป็นค่าคงที่หลายเท่าในชั้นทำนายสุดท้ายของ Whisper ทำได้ค่อนข้างง่ายด้วยไลบรารี HuggingFace: https://huggingface.co/docs/transformers/en/internal/generat...

    • เป็นแฟน StarCraft แต่ไม่รู้เลยว่า courtyard หรือ frontyard หมายถึงอะไร อย่างไรก็ตาม ในวงการภาษาอังกฤษ การย่อชื่อสิ่งปลูกสร้าง ยูนิต เทคโนโลยี และกลยุทธ์กันอย่างหนักเป็นเรื่องปกติ ภาษาเกาหลีก็น่าจะเป็นแบบนั้นได้เหมือนกัน
      บิลด์ 12 barracks มักเรียกว่า 12 rax, บิลด์ 2 hatchery mutalisk เรียกว่า 2 hatch muta, การบุกตามจังหวะ/ออลอิน 3 hatchery hydralisk เรียกว่า 3 hatch hydra bust
    • ในฐานะผู้เล่น Brood War ต่างชาติและนักวิจัยด้านการประมวลผลเสียง ผมคิดว่า contextual biasing แบบตื้น ๆ น่าจะช่วยได้แน่นอน ตัวการติดตั้งใช้งานเองไม่ยาก แต่โซลูชันรู้จำเสียงอัตโนมัติที่ใช้กันทั่วไปมักไม่ได้เปิดฟังก์ชันนี้ให้ใช้ง่ายนัก
      มี PR ที่ติดตั้งฟังก์ชันแบบเดียวกันใน ctranslate2 และอาจทำให้เปิดใช้งานผ่าน faster-whisper ได้ด้วย: https://github.com/OpenNMT/CTranslate2/pull/1789
    • เวลาพูดถึง Protoss เขาใช้คำภาษาเกาหลีที่หมายถึงการขว้างอะไรบางอย่างจริง ๆ หรือเปล่า? ถ้าใช่ก็เป็น มุกเล่นคำข้ามภาษา ที่ตลกดี
    • ไม่ได้เล่นเกมมานานแล้ว แต่ทุกครั้งที่เห็นคำแปล ผมสับสนว่าทำไมถึงอยากสร้าง Spawning Pool 12 หลัง
      เท่าที่จำได้ สิ่งปลูกสร้างนั้นมีไว้เพื่อให้สร้าง zergling และยูนิตอื่น ๆ จาก hatchery ได้ รวมถึงวิจัยอัปเกรดได้ด้วย สร้างแค่หลังเดียวก็ปลดล็อกยูนิตนั้นให้กับ hatchery ทั้งหมดแล้ว และตัวมันเองก็ไม่ได้ผลิตยูนิต ดังนั้นการสร้างหลายหลังก็ไม่ได้เพิ่มปริมาณการผลิตยูนิต
      ในทางทฤษฎีอาจสร้างหลายหลังเพื่อวิจัยอัปเกรดพร้อมกัน แต่ก็มีอัปเกรดที่ทำได้แค่ราว 3 อย่าง จึงดูไม่มีเหตุผลที่จะสร้างถึง 12 หลัง เว้นแต่จะเป็นหลังสำรองเพื่อให้ผลิต zergling ต่อได้แม้ศัตรูทำลายไปบางส่วน แต่ถึงอย่างนั้น 12 หลังก็มากเกินไป
      เลยสงสัยว่าแรงจูงใจที่แท้จริงคืออะไรกันแน่ เรื่องมันนานแล้ว ผมอาจพูดมั่วก็ได้
  • อย่าถูกชื่อเรื่องหลอก บทความนี้เป็น แนวทางที่ละเอียดถี่ถ้วนและสร้างสรรค์มาก ต่อการแปลคำบรรยาย StarCraft และทำให้เข้าถึงได้มากขึ้น
    อย่างที่ผู้เขียนชี้ไว้ถูกต้อง ตลอด 27 ปีที่ผ่านมา คำบรรยายเกมไม่ได้เป็นภาษาเกาหลีหรือภาษาอังกฤษอีกต่อไป แต่กลายเป็น ภาษาเฉพาะโดเมน แบบหนึ่งไปแล้ว วิธีที่ใช้สคริปต์อัตโนมัติและปัญญาประดิษฐ์เพื่อจับใจความคร่าว ๆ แล้วเรียบเรียงให้เป็นประโยคที่สอดคล้องกันนั้นยอดเยี่ยมจริง ๆ

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

    • สำหรับภาษาสเปนยังมีความซับซ้อนจาก ความแตกต่างของธรรมเนียมภาษา ทั่วโลกเพิ่มเข้ามาอีก ตัวอย่างเช่น ในเม็กซิโก ผมเรียนคำสเปนเดิมอย่าง depurar ซึ่งค่อนข้างตรงกับ debug แต่ผู้พูดภาษาสเปนจำนวนมากยืมภาษาอังกฤษมาใช้ตรง ๆ ว่า debuguear
      เวลาพูดถึงสมรรถนะของคอมพิวเตอร์หรือซอฟต์แวร์ ในเม็กซิโกผมเรียนคำว่า desempeño แต่ก็เคยได้ยินว่าในอาร์เจนตินาใช้ el performance ในความหมายเดียวกัน ดูเหมือนกรณีที่พบบ่อยที่สุดคือใช้คำยืมจากภาษาอังกฤษตรง ๆ แทนที่จะหาคำสเปนที่มีอยู่แล้ว
    • ในแง่หนึ่ง ศัพท์พวกนี้ปรับใช้ได้ง่ายมาก ในภาษาเยอรมัน sharding ก็แค่พูดตรง ๆ ว่า sharding
      สิ่งที่แทบแปลไม่ได้จริง ๆ คือคำในชีวิตประจำวัน คำเยอรมัน Brot มีนัยค่อนข้างต่างจากสิ่งแย่ ๆ ที่คนอังกฤษเรียกว่า bread แต่ก็ไม่ได้มีคำที่ดีกว่า และถ้ายืมมาใช้ตรง ๆ ก็จะฟังประหลาดในบริบทส่วนใหญ่ ประหลาดกว่าการยืมคำว่า sharding ในบริบททางเทคนิคมาก
      ตัวอย่างที่ดีของการยืมคำแล้วปรับให้เข้ากับภาษาเมื่อเวลาผ่านไปเห็นได้จาก ศัพท์รถไฟ ในภาษาเยอรมัน ตอนแรกเพราะรับเทคโนโลยีมาจากอังกฤษ ทุกอย่างจึงเป็นภาษาอังกฤษ แต่เมื่อเวลาผ่านไป ส่วนใหญ่ก็เปลี่ยนเป็นคำที่ดูเหมือนภาษาเยอรมัน มีบางคำที่สร้างใหม่จากคำยืมกรีก·ละตินแบบเดียวกับภาษาอังกฤษ เช่น Lokomotive แต่ station ตอนนี้เป็น Bahnhof และ train เป็น Zug
    • sharding หรือ hash ใช้ อุปมา ที่เห็นภาพได้ง่ายในบริบททางกายภาพ เลยไม่ค่อยเข้าใจว่าทำไมถึงบอกว่าแปลยาก
  • ในบทความเกี่ยวกับการแปล ผู้เขียนใช้คำว่า อัตราส่วนสัญญาณต่อสัญญาณรบกวน กลับความหมายไปโดยสิ้นเชิง ตรงนี้ตลกนิดหน่อย อัตราส่วนสัญญาณต่อสัญญาณรบกวนที่สูง เช่น เกิน 9000 นั้นหมายถึงดีมาก
    เพราะหมายความว่าสัญญาณมีมากและสัญญาณรบกวนน้อยมาก ดังนั้นถ้าอัตราส่วนสัญญาณต่อสัญญาณรบกวนต่ำลง ก็แปลว่าสัญญาณรบกวนมีมากขึ้น

    • ผู้เขียนดูเหมือนจะใช้คำว่า ภาษาเฉพาะโดเมน ทั้งที่ควรพูดว่า jargon
    • ตรงส่วนนั้นฉันเองก็สับสนไปชั่วครู่เหมือนกัน ตัวบทความไม่ได้แย่ลงมากนัก แต่ต้องใช้เวลาสักพักกว่าจะเข้าใจความหมาย
    • ต้องย้อนกลับไปอ่านตรงนั้นซ้ำหลายรอบเพื่อทำความเข้าใจ ให้ความรู้สึกคล้ายกับอ่านงานแปลของ Google Translate
  • เวอร์ชัน Google Translate ก็พอเข้าใจได้ดีเหมือนกัน แต่เป็นเพราะฉันรู้รายละเอียดของ Brood War และ โอเพนนิง 12 Hatchery ของ Zerg ดีมาก
    ChatGPT และ Claude แปลข้อความภาษาเกาหลีได้ดีอย่างน่าทึ่ง:
    Today I'll teach you about the 12 Hatchery build. I'll explain the types of 12 Hatchery builds, their advantages and disadvantages, and the build orders in a simple but detailed way. Against Protoss, this is the build you use when you want to start with the most economic advantage. Against Terran, there are several builds you can do with 12 Hatchery, so I'll explain some of the most commonly used builds. The first is the two-hatchery build that starts with 12 Hatchery: 12 Hatchery 11 Spawning Pool 10 Gas This build uses early gas, and it's often used when you want to quickly transition into a three-hatchery build with three gas bases. The second build is: 12 Hatchery 12 Pool 12 Gas This build allows for moderately fast tech tree and moderately fast three-hatchery expansion. This build is commonly known as the "safe three-hatchery" build, and you can think of it as a build that enables both quick Mutalisks and quick third base.

  • ถ้าผู้เขียนเห็น: สามารถใช้ yt-dlp ดาวน์โหลดวิดีโอเวอร์ชันความละเอียดต่ำเพื่อประหยัดแบนด์วิดท์ได้
    yt-dlp -f "bv[height<=720]"
    ใส่ URL หรือ ID วิดีโอตรงนี้แล้วจะดาวน์โหลดด้วยคุณภาพสูงสุด 720p

    • ผู้เขียนบอกว่าแค่รับเฉพาะ แทร็กเสียง เท่านั้น แบบนั้นใช้ข้อมูลน้อยกว่าการรับวิดีโอคุณภาพใด ๆ มาก
  • คำถามโง่ ๆ จากคนที่ตอนเด็กเล่นแต่แผนที่เงิน: ตัวเลขหน้าชื่อสิ่งปลูกสร้างหมายถึงอะไร?
    ถ้าพูดว่า 12 Hatcheries ในทางทฤษฎีก็เป็นไปได้ที่จะสร้าง Hatchery 12 หลัง แต่ดูไม่สมจริงมาก ส่วน Spawning Pool 12 หลังก็ไร้ประโยชน์อย่างแน่นอน เลยคิดว่าอาจหมายถึงตำแหน่งในรายการลำดับบิลด์
    แต่ก็มีบิลด์อย่าง 12 Hatch, 12 Pool, 12 Gas โผล่มาด้วย การตีความแบบนั้นเลยไม่ค่อยสมเหตุสมผล ดูเหมือนจะไม่ใช่แค่รายการธรรมดา หรือเพราะเป็นต้นไม้เลยสงสัยว่า 12 คือความลึกของสิ่งปลูกสร้างนั้นหรือเปล่า แต่การสร้างสิ่งปลูกสร้าง 11 อย่างก่อนแก๊สดูจินตนาการยากและช้าเกินไป สงสัยว่ารวมยูนิตด้วยไหม หรือว่านับเฉพาะ Drone/Overlord

    • ถ้าจำไม่ผิด วิธีเรียกแบบนี้เริ่มจาก 4-pooling คือเมื่อเล่น Zerg แล้วมีคนงานแค่ 4 ตัวก็สร้าง Spawning Pool จากนั้นสร้างคนงานตัวที่สี่กลับมา แล้วผลิต Zergling เพื่อโจมตีช่วงต้นเกม หรือก็คือ rush
      จากนั้นคู่ต่อสู้ก็จะด่าหยาบสารพัดและถึงขั้นตั้งข้อสงสัยเรื่องรสนิยมทางเพศ
    • หมายถึง จำนวน supply ที่ต้องมีตอนเริ่มสร้างสิ่งปลูกสร้างนั้น ในช่วงนี้ supply ทั้งหมดมาจากคนงาน จึงบอกด้วยว่าต้องผลิตคนงานถึงกี่ตัว
    • เกี่ยวกับประโยคที่ว่า Spawning Pool 12 หลังก็ไร้ประโยชน์อย่างแน่นอน ฉันจำเลือน ๆ ได้ว่ามีวิดีโอของ Husky ที่สร้าง Spawning Pool 9 หลังจริง ๆ เพื่อทำ 9 pool
    • ไม่ใช่ว่าหมายถึง จำนวนคนงาน ที่มีตอนสร้างสิ่งปลูกสร้างนั้นเหรอ
    • ในเกม ผู้เล่นสร้างสิ่งปลูกสร้างและยูนิต และยูนิตใช้ supply ซึ่งมีขีดจำกัด ช่วงต้นเกมถ้าไม่ได้ scout ว่าคู่ต่อสู้กำลังเตรียมโจมตีเร็วมาก ก็มักจะผลิตคนงานที่ขุดทรัพยากรและสร้างสิ่งปลูกสร้างเป็นหลัก
      ตัวเลขหมายถึงจำนวน supply ที่ต้องถึงตอนสร้างโครงสร้างนั้น ดังนั้น 12 hatch 12 pool 12 gas จึงหมายถึงไปจนถึงคนงาน 12 ตัว แล้วสร้างสิ่งปลูกสร้างทั้งสามอย่างนั้นตามลำดับทันทีที่มีทรัพยากรพอ
      สำหรับ Zerg คนงานจะกลายร่างเป็นสิ่งปลูกสร้างจริง ๆ ดังนั้นน่าจะเป็นลำดับว่าไปถึง 12 แล้วสร้าง Hatchery จากนั้นสร้างคนงานเพิ่มอีกหนึ่งตัวแล้วสร้าง Spawning Pool แล้วสร้างคนงานอีกหนึ่งตัวก่อนสร้างโรงกลั่นแก๊ส
  • แม้ตอนที่ Google Translate ดีขึ้นมากแล้ว ข้อความภาษาจีนและญี่ปุ่นเกี่ยวกับโกะก็ยังแปลอย่างมีประสิทธิภาพได้ยาก มีปัญหาคล้ายกับที่กล่าวถึงในบทความนี้
    คำจำนวนมากในภาษาจีนและญี่ปุ่นมีความหมายเฉพาะมากในบริบทโกะ แต่ในบริบททั่วไปก็มีความหมายธรรมดาด้วย เช่น ko ในโกะคือสถานการณ์กฎเฉพาะอย่างหนึ่ง แต่โดยทั่วไปอาจแปลได้ว่า robbery ทำให้ Google Translate แปลตามความหมายทั่วไปจนทั้งข้อความอ่านไม่รู้เรื่อง
    ตอนนี้สำหรับโมเดลภาษาขนาดใหญ่รุ่นใหม่ ๆ สามารถใส่คำสั่งนำหน้าได้ เช่น ฉันจะแปลคำอธิบายแผนภาพโกะภาษาจีน งานแปลต้องเป็นธรรมชาติและอย่าหลีกเลี่ยงการใช้ศัพท์เทคนิคของโกะ เช่น 拆 = extension, 夹 = pincer, 刺 และ 觑 = peep แล้วผลลัพธ์ก็ยอดเยี่ยม แทบจะอ่านเอกสารที่ต้องการได้เกือบทั้งหมดเลยทีเดียว ดูเหมือนในข้อมูลฝึกจะมีเนื้อหาเกี่ยวกับโกะมากพอ จึงโชคดีที่ไม่ต้องทำงานพิเศษอะไรมากกว่านั้น
    ถ้าผู้เขียนเห็น ในส่วนที่เกี่ยวกับหมากรุกมีจุดแก้ไขอยู่สองสามอย่าง ตาเปิดเกมในหมากรุกภาษาอังกฤษไม่ได้เรียกว่า openers แต่เรียกว่า openings และไม่ได้มีโอเพนนิงสำหรับฝ่ายขาวกับฝ่ายดำแยกกันโดยเฉพาะด้วย แม้แน่นอนว่าผู้เล่นแต่ละคนอาจศึกษาโอเพนนิงบางแบบจากมุมมองของฝ่ายหนึ่งได้ การศึกษาโอเพนนิงยิ่งไปถึงระดับสูงสุดกลับยิ่งถือว่าเป็นเรื่องพื้นฐานกว่าเดิม และรูปแบบซิซิลีที่ว่านั้นไม่ใช่ Najdork แต่คือ Najdorf

    • ตอนนี้ทฤษฎีมาตรฐานในหัวฉันคือ Najdork
  • ชอบบทความนี้ เมื่อก่อนเคยพยายามแข่งรอบคัดเลือกภูมิภาคสหรัฐฯ ของ World Cyber Games อยู่สองสามครั้ง และมักทึ่งเสมอว่าคนอื่นเร็วกันแค่ไหน
    ภายหลังได้ดูการถ่ายทอดสดจากเกาหลี แล้วก็ถูกความเร็วในการเล่นกดดันจนตะลึงไปเลย จากมุมมองด้านกลยุทธ์ ตอนที่มีบล็อกหนึ่งอธิบายคณิตศาสตร์ว่าทำไม Zealot ของ Protoss ถึงฆ่า Zergling ได้ใน 2 ครั้งแทนที่จะเป็น 3 ครั้ง ผมจึงตระหนักถึงพื้นฐานมาก ๆ ของเกมที่ตัวเองพลาดไป ตอนนั้นเองที่เข้าใจว่านี่คือ เกมแบบหมากรุก และหลงใหลมันเข้าเต็ม ๆ

  • รู้ว่าเป็นคำแปลที่ผิด แต่ค่อนข้างชอบการแปล natural expansion ว่า courtyard

    • front yard ก็ชอบเหมือนกัน ใน SC2 ที่แผนที่ใหม่ ๆ บางส่วนมีฐานหลังบ้าน มันก็สมเหตุสมผล
      ฐานหลังบ้าน แบบนี้มักพบในแผนที่ทีมด้วย และการตัดสินใจว่าผู้เล่นคนไหนจะยึดด้านหน้า ก็กลายเป็นส่วนหนึ่งของกลยุทธ์ Protoss กับ Terran สามารถสร้าง Shield Battery และ Bunker ร่วมกันได้ แต่ Zerg จะได้รับบัฟบน creep และสามารถขยายไปข้างหน้าได้เร็วกว่ามาก