ข้อมูลเบื้องต้นเกี่ยวกับการเปลี่ยนรูปแบบข้อมูล

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

เหตุผลในการเปลี่ยนรูปแบบข้อมูล

เราเปลี่ยนรูปแบบฟีเจอร์เป็นหลักเนื่องจากเหตุผลต่อไปนี้

  1. การเปลี่ยนรูปแบบที่จําเป็นสําหรับความเข้ากันได้ของข้อมูล ตัวอย่างเช่น

    • การแปลงฟีเจอร์ที่ไม่ใช่ตัวเลขเป็นตัวเลข คุณไม่สามารถคูณเมทริกซ์ในสตริงได้ เราจึงต้องแปลงสตริงให้แทนค่าตัวเลขแทน
    • การปรับขนาดอินพุตเป็นขนาดคงที่ รูปแบบเชิงเส้นและโครงข่ายระบบประสาทแบบส่งต่อฟีดจะมีโหนดอินพุตในจํานวนที่คงที่ ดังนั้นข้อมูลอินพุตต้องมีขนาดเท่ากันเสมอ เช่น โมเดลรูปภาพจะต้องปรับแต่งรูปภาพในชุดข้อมูลให้เป็นขนาดคงที่
  2. การเปลี่ยนรูปแบบที่ไม่บังคับซึ่งอาจช่วยให้โมเดลมีประสิทธิภาพดีขึ้น ตัวอย่างเช่น

    • การทําให้เป็นโทเค็นหรือใช้ตัวพิมพ์เล็ก/ใหญ่ของฟีเจอร์ข้อความได้
    • ฟีเจอร์ตัวเลขมาตรฐาน (โมเดลส่วนใหญ่จะทํางานได้ดีขึ้นหลังจากนั้น)
    • การอนุญาตโมเดลเชิงเส้นให้แทรกเนื้อหาเชิงเส้นเข้าไปในพื้นที่ของฟีเจอร์

พูดง่ายๆ ก็คือ การแปลงรูปแบบนั้นไม่จําเป็น โมเดลของคุณจะยังคงทํางานต่อไปได้ถ้าไม่มี แต่การใช้เทคนิคเหล่านี้อาจทําให้โมเดลมีผลลัพธ์ที่ดีขึ้น

เปลี่ยนรูปแบบที่ไหน

คุณสามารถใช้การเปลี่ยนรูปแบบได้ขณะสร้างข้อมูลในดิสก์หรือภายในโมเดล

การเปลี่ยนแปลงก่อนการฝึกอบรม

สําหรับวิธีการนี้ เราจะปฏิรูปการสอนก่อนการฝึกอบรม โค้ดนี้จะแยกออกจากโมเดลแมชชีนเลิร์นนิง

ข้อดี

  • การคํานวณจะเกิดขึ้นเพียงครั้งเดียวเท่านั้น
  • การคํานวณสามารถดูชุดข้อมูลทั้งหมดเพื่อพิจารณาการเปลี่ยนรูปแบบ

ข้อเสีย

  • ระบบจะทําซ้ําการเปลี่ยนรูปแบบในช่วงการคาดการณ์ ระวังการเบ้
  • การเปลี่ยนแปลงใดๆ ที่ต้องเปลี่ยนแปลงทําให้เกิดการสร้างข้อมูลอีกครั้ง ซึ่งทําให้การทําซ้ําช้าลง

ความเบ้อาจเป็นอันตรายสําหรับกรณีที่เกี่ยวข้องกับการให้บริการออนไลน์ ในการนําเสนอแบบออฟไลน์ คุณอาจนําโค้ดที่สร้างข้อมูลการฝึกมาใช้ซ้ําได้ ในการแสดงผลออนไลน์ โค้ดที่สร้างชุดข้อมูลและโค้ดที่ใช้จัดการการเข้าชมแบบสดจะค่อนข้างแตกต่างออกไป ซึ่งทําให้สามารถทําให้การบิดเบือนได้อย่างง่ายดาย

การเปลี่ยนรูปแบบภายในโมเดล

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

ข้อดี

  • การทําซ้ําที่ง่ายดาย หากเปลี่ยนแปลงรูปแบบ คุณจะยังใช้ไฟล์ข้อมูลเดิมได้
  • คุณจะได้รับการเปลี่ยนรูปแบบในการฝึกอบรมและการคาดการณ์ตามเวลาเดิม

ข้อเสีย

  • การเปลี่ยนรูปแบบแพงอาจทําให้เวลาในการตอบสนองเพิ่มขึ้น
  • การแปลงเป็นกลุ่มต่อกลุ่ม

มีหลายสิ่งที่ต้องพิจารณาในการเปลี่ยนแปลงต่อกลุ่ม สมมติว่าคุณต้องการปรับค่ามาตรฐานตามค่าเฉลี่ยของฟีเจอร์ ซึ่งก็คือคุณต้องการเปลี่ยนค่าของฟีเจอร์ให้มีค่าเป็น 0 และค่าเบี่ยงเบนมาตรฐาน 1 เมื่อเปลี่ยนรูปแบบภายในโมเดล การปรับให้สอดคล้องตามมาตรฐานนี้จะเข้าถึงข้อมูลได้เพียงกลุ่มเดียวเท่านั้น ไม่ใช่ชุดข้อมูลแบบเต็ม คุณสามารถทําให้ค่าเป็นค่าเฉลี่ยตามมาตรฐานภายในกลุ่ม (อันตรายหากแบตช์มีความหลากหลายมาก) หรือคํานวณค่าเฉลี่ยและแก้ไขเป็นค่าคงที่ในโมเดล เราจะสํารวจการทําให้เป็นมาตรฐานในส่วนถัดไป

สํารวจ ทําความสะอาด และแสดงภาพข้อมูลของคุณ

สํารวจและล้างข้อมูลก่อนที่จะเปลี่ยนรูปแบบ คุณอาจทํางานต่อไปนี้บางส่วนในขณะที่รวบรวมและสร้างชุดข้อมูล

  • ตรวจสอบข้อมูลหลายๆ แถว
  • ตรวจสอบสถิติเบื้องต้น
  • แก้ไขรายการตัวเลขที่หายไป

แสดงภาพข้อมูลบ่อยๆ กราฟสามารถช่วยหาความผิดปกติหรือรูปแบบที่ชัดเจนจากสถิติตัวเลข เพราะฉะนั้น ก่อนจะวิเคราะห์หลายครั้งเกินไป ให้ดูข้อมูลในกราฟิก ไม่ว่าจะแสดงผ่านแผนภูมิกระจายหรือฮิสโตแกรม ดูกราฟไม่เพียงแต่ที่จุดเริ่มต้นของไปป์ไลน์ แต่ยังดูตลอดทั้งการเปลี่ยนรูปแบบด้วย การแสดงภาพจะช่วยคุณตรวจสอบสมมติฐานของคุณอย่างต่อเนื่องและดูผลของการเปลี่ยนแปลงที่สําคัญ