การพัฒนาและฝึกอบรมโมเดลการฉ้อโกงของแมชชีนเลิร์นนิง (ML) ที่ประสบความสำเร็จจำเป็นต้องเข้าถึงข้อมูลคุณภาพสูงจำนวนมาก การจัดหาข้อมูลนี้เป็นสิ่งที่ท้าทายเนื่องจากชุดข้อมูลที่มีอยู่บางครั้งไม่ใหญ่พอหรือไม่เป็นกลางเพียงพอที่จะฝึกโมเดล ML ที่เป็นประโยชน์ และอาจต้องใช้ต้นทุนและเวลาจำนวนมาก ข้อกำหนดด้านกฎระเบียบและความเป็นส่วนตัวยังป้องกันการใช้หรือแบ่งปันข้อมูลแม้ภายในองค์กรระดับองค์กร กระบวนการอนุญาตการใช้และการเข้าถึงข้อมูลที่ละเอียดอ่อนมักทำให้โครงการ ML ล่าช้าหรือตกราง อีกทางหนึ่ง เราสามารถจัดการกับความท้าทายเหล่านี้ได้โดยการสร้างและใช้ข้อมูลสังเคราะห์
ข้อมูลสังเคราะห์อธิบายชุดข้อมูลที่สร้างขึ้นโดยเลียนแบบเนื้อหาและรูปแบบในชุดข้อมูลดั้งเดิม เพื่อจัดการกับความเสี่ยงด้านกฎระเบียบและการปฏิบัติตามกฎระเบียบ เวลา และต้นทุนในการจัดหา เครื่องกำเนิดข้อมูลสังเคราะห์ใช้ข้อมูลจริงเพื่อเรียนรู้คุณลักษณะ ความสัมพันธ์ และรูปแบบที่เกี่ยวข้อง เพื่อสร้างข้อมูลสังเคราะห์ตามจำนวนที่ต้องการซึ่งตรงกับคุณภาพทางสถิติของชุดข้อมูลเดิมที่นำเข้า
ข้อมูลสังเคราะห์ถูกนำมาใช้ในสภาพแวดล้อมของห้องปฏิบัติการสำหรับ กว่าสองทศวรรษ; ตลาดมีหลักฐานของยูทิลิตี้ที่เร่งการยอมรับในเชิงพาณิชย์และภาครัฐ การ์ตเนอร์ คาดการณ์ ภายในปี 2024 60 เปอร์เซ็นต์ของข้อมูลที่ใช้สำหรับการพัฒนา ML และโซลูชันการวิเคราะห์จะถูกสร้างขึ้นจากการสังเคราะห์ และการใช้ข้อมูลสังเคราะห์จะยังคงเพิ่มขึ้นอย่างมาก
Financial Conduct Authority ซึ่งเป็นหน่วยงานกำกับดูแลของสหราชอาณาจักร รับทราบ ว่า “การเข้าถึงข้อมูลเป็นตัวเร่งปฏิกิริยาสำหรับนวัตกรรม และข้อมูลทางการเงินสังเคราะห์สามารถมีบทบาทในการสนับสนุนนวัตกรรม และทำให้ผู้เข้ามาใหม่สามารถพัฒนา ทดสอบ และแสดงคุณค่าของโซลูชันใหม่ได้”
Amazon SageMaker GroundTruth ปัจจุบันรองรับ การสร้างข้อมูลสังเคราะห์ ของข้อมูลภาพสังเคราะห์ที่มีป้ายกำกับ โพสต์บล็อกนี้สำรวจการสร้างข้อมูลสังเคราะห์แบบตาราง ข้อมูลที่มีโครงสร้าง เช่น ตารางเดี่ยวและตารางเชิงสัมพันธ์ และข้อมูลอนุกรมเวลาเป็นประเภทที่พบมากที่สุดในการวิเคราะห์ระดับองค์กร
นี่คือโพสต์บล็อกสองส่วน เราสร้างข้อมูลสังเคราะห์ในส่วนที่หนึ่งและประเมินคุณภาพใน ส่วนที่สอง.
ในบล็อกโพสต์นี้ คุณจะได้เรียนรู้วิธีใช้ไลบรารีโอเพ่นซอร์ส ydata-สังเคราะห์ และ สมุดบันทึก AWS SageMaker เพื่อสังเคราะห์ข้อมูลแบบตารางสำหรับกรณีการใช้งานการฉ้อโกง ซึ่งเราไม่มีธุรกรรมการฉ้อโกงมากพอที่จะฝึกโมเดลการฉ้อโกงที่มีความแม่นยำสูง กระบวนการทั่วไปของการฝึกอบรมรูปแบบการฉ้อโกงจะครอบคลุมอยู่ในนี้ เสา.
ภาพรวมของโซลูชัน
จุดมุ่งหมายของบทช่วยสอนนี้คือการสังเคราะห์ชุดข้อมูลการฉ้อโกงบัตรเครดิตที่ไม่สมดุลอย่างยิ่งในระดับชนกลุ่มน้อยโดยใช้การปรับให้เหมาะสม เครือข่ายปฏิปักษ์กำเนิด (GAN) ที่เรียกว่า WGAN-จีพี เพื่อเรียนรู้รูปแบบและคุณสมบัติทางสถิติของข้อมูลต้นฉบับ จากนั้นสร้างตัวอย่างข้อมูลสังเคราะห์ที่คล้ายกับข้อมูลต้นฉบับไม่รู้จบ กระบวนการนี้ยังสามารถใช้เพื่อปรับปรุงข้อมูลต้นฉบับโดยการสุ่มตัวอย่างเหตุการณ์ที่เกิดขึ้นได้ยาก เช่น การฉ้อโกง หรือเพื่อสร้างกรณีขอบที่ไม่มีอยู่ในต้นฉบับ
เราใช้ชุดข้อมูลการฉ้อโกงบัตรเครดิตที่เผยแพร่โดย ยูแอลบีซึ่งสามารถดาวน์โหลดได้จาก Kaggle. การสร้างข้อมูลสังเคราะห์สำหรับคลาสชนกลุ่มน้อยช่วยแก้ไขปัญหาที่เกี่ยวข้องกับชุดข้อมูลที่ไม่สมดุล ซึ่งสามารถช่วยในการพัฒนาแบบจำลองที่แม่นยำยิ่งขึ้น
เราใช้บริการของ AWS รวมถึง Amazon SageMaker และ Amazon S3 ซึ่งมีค่าใช้จ่ายในการใช้ทรัพยากรระบบคลาวด์
ตั้งค่าสภาพแวดล้อมการพัฒนา
SageMaker จัดเตรียมอินสแตนซ์สมุดบันทึก Jupyter ที่มีการจัดการสำหรับการสร้างแบบจำลอง การฝึกอบรม และการปรับใช้
ที่ต้องการ:
คุณต้องมีบัญชี AWS เพื่อเรียกใช้ SageMaker คุณสามารถได้รับ ข้อความที่เริ่ม ด้วย SageMaker แล้วลอง บทช่วยสอนภาคปฏิบัติ.
สำหรับคำแนะนำในการตั้งค่าสภาพแวดล้อมการทำงาน Jupyter Notebook โปรดดู เริ่มต้นใช้งานอินสแตนซ์โน้ตบุ๊ก Amazon SageMaker.
ขั้นตอนที่ 1: ตั้งค่าอินสแตนซ์ Amazon SageMaker ของคุณ
- ลงชื่อเข้าใช้คอนโซล AWS และค้นหา “SageMaker”
- เลือก สตูดิโอ.
- เลือก อินสแตนซ์โน้ตบุ๊ก บนแถบด้านซ้าย แล้วเลือก สร้างอินสแตนซ์สมุดบันทึก.
- จากหน้าถัดไป (ดังแสดงในรูปภาพต่อไปนี้) เลือกการกำหนดค่าของเครื่องเสมือน (VM) ตามความต้องการของคุณ แล้วเลือก สร้างอินสแตนซ์สมุดบันทึก. โปรดทราบว่าเราใช้ VM ที่ปรับให้เหมาะสมกับ ML โดยไม่มี GPU และข้อมูล 5 GB, ml.t3.medium ที่เรียกใช้ Amazon Linux 2 และเคอร์เนล Jupyter Lab 3
- อินสแตนซ์โน้ตบุ๊กจะพร้อมให้คุณใช้งานภายในไม่กี่นาที
- เลือก เปิด JupyterLab ที่จะเปิดตัว.
- ตอนนี้เรามี JupyterLab พร้อมข้อกำหนดที่จำเป็นแล้ว เราจะติดตั้งไลบรารีสังเคราะห์
ขั้นตอนที่ 2: ดาวน์โหลดหรือแยกชุดข้อมูลจริงเพื่อสร้างข้อมูลสังเคราะห์
ดาวน์โหลดข้อมูลอ้างอิง จาก Kaggle ด้วยมืออย่างที่เราทำที่นี่ หรือใช้โปรแกรมผ่าน Kaggle API หากคุณมีบัญชี Kaggle หากคุณสำรวจชุดข้อมูลนี้ คุณจะสังเกตเห็นว่าคลาส "ฉ้อโกง" มีข้อมูลน้อยกว่าคลาส "ไม่ฉ้อโกง" มาก
หากคุณใช้ข้อมูลนี้โดยตรงสำหรับการคาดคะเนของแมชชีนเลิร์นนิง โมเดลอาจเรียนรู้ที่จะคาดการณ์ว่า "ไม่ใช่การฉ้อโกง" เสมอ โมเดลจะมีความแม่นยำสูงกว่าในกรณีที่ไม่ฉ้อโกง เนื่องจากกรณีการฉ้อโกงนั้นหายาก อย่างไรก็ตาม เนื่องจากการตรวจจับกรณีการฉ้อโกงเป็นเป้าหมายของเราในแบบฝึกหัดนี้ เราจะเพิ่มจำนวนประเภทการฉ้อโกงด้วยข้อมูลสังเคราะห์ที่สร้างแบบจำลองจากข้อมูลจริง
สร้างโฟลเดอร์ข้อมูลใน JupyterLab และอัปโหลดไฟล์ข้อมูล Kaggle เข้าไป สิ่งนี้จะช่วยให้คุณใช้ข้อมูลภายในสมุดบันทึกตั้งแต่ SageMaker มาพร้อมกับที่เก็บของ ที่คุณจะระบุไว้เมื่อคุณสร้างอินสแตนซ์ของสมุดบันทึก
ชุดข้อมูลนี้คือ 144 MB
จากนั้นคุณสามารถอ่านข้อมูลโดยใช้รหัสมาตรฐานผ่านไลบรารีแพนด้า:
ข้อมูลการตรวจจับการฉ้อโกงมีลักษณะบางประการ ได้แก่ :
- ความไม่สมดุลของคลาสขนาดใหญ่ (โดยทั่วไปคือจุดข้อมูลที่ไม่หลอกลวง)
- ข้อกังวลเกี่ยวกับความเป็นส่วนตัว (เนื่องจากมีข้อมูลที่ละเอียดอ่อน)
- การเปลี่ยนแปลงในระดับหนึ่ง โดยผู้ใช้ที่ประสงค์ร้ายมักจะพยายามหลีกเลี่ยงการตรวจจับโดยระบบที่ตรวจสอบธุรกรรมที่เป็นการฉ้อโกง
- ชุดข้อมูลที่มีอยู่มีขนาดใหญ่มากและมักไม่มีป้ายกำกับ
ตอนนี้ คุณได้ตรวจสอบชุดข้อมูลแล้ว มากรองคลาสส่วนน้อย (คลาส "ฉ้อฉล" จากชุดข้อมูลบัตรเครดิต) และดำเนินการแปลงตามที่จำเป็น คุณสามารถตรวจสอบการแปลงข้อมูลได้จากสิ่งนี้ สมุดบันทึก.
เมื่อชุดข้อมูลระดับชนกลุ่มน้อยนี้ถูกสังเคราะห์และเพิ่มกลับเข้าไปในชุดข้อมูลเดิม จะช่วยให้สามารถสร้างชุดข้อมูลสังเคราะห์ที่มีขนาดใหญ่ขึ้นซึ่งจัดการกับความไม่สมดุลของข้อมูลได้ เราสามารถบรรลุความแม่นยำในการทำนายได้มากขึ้นโดย อบรมรูปแบบการตรวจสอบการฉ้อโกง โดยใช้ชุดข้อมูลใหม่
มาสังเคราะห์ชุดข้อมูลการทุจริตใหม่กันเถอะ
ขั้นตอนที่ 3: ฝึกซินธิไซเซอร์และสร้างโมเดล
เนื่องจากคุณมีข้อมูลที่พร้อมใช้งานภายใน SageMaker จึงถึงเวลาที่จะนำโมเดล GAN สังเคราะห์ของเราไปใช้งาน
เครือข่ายต่อต้านกำเนิด (GAN) มีสองส่วน:
พื้นที่ เครื่องกำเนิดไฟฟ้า เรียนรู้ที่จะสร้างข้อมูลที่น่าเชื่อถือ ตัวอย่างที่สร้างขึ้นกลายเป็นตัวอย่างการฝึกอบรมเชิงลบสำหรับผู้เลือกปฏิบัติ
พื้นที่ ผู้เลือกปฏิบัติ เรียนรู้ที่จะแยกแยะข้อมูลปลอมของเครื่องกำเนิดจากข้อมูลจริง ผู้เลือกปฏิบัติจะลงโทษเครื่องกำเนิดที่สร้างผลลัพธ์ที่ไม่น่าเชื่อ
เมื่อการฝึกอบรมเริ่มต้นขึ้น ตัวสร้างจะสร้างข้อมูลปลอมอย่างเห็นได้ชัด และผู้เลือกปฏิบัติจะเรียนรู้อย่างรวดเร็วที่จะบอกว่าเป็นข้อมูลปลอม เมื่อการฝึกอบรมดำเนินไป เครื่องกำเนิดไฟฟ้าจะเข้าใกล้การผลิตมากขึ้นจนสามารถหลอกผู้เลือกปฏิบัติได้ สุดท้าย หากการฝึกอบรมเครื่องกำเนิดเป็นไปได้ด้วยดี ผู้แยกแยะจะแยกแยะความแตกต่างระหว่างของจริงกับของปลอมได้แย่ลง เริ่มจำแนกข้อมูลปลอมว่าเป็นข้อมูลจริง และความแม่นยำลดลง
ทั้งเครื่องกำเนิดและเครื่องจำแนกเป็นโครงข่ายประสาทเทียม เอาต์พุตตัวสร้างเชื่อมต่อโดยตรงกับอินพุตตัวแยก ผ่าน การขยายพันธุ์หลังการจำแนกประเภทของ discriminator ให้สัญญาณที่ตัวสร้างใช้เพื่ออัปเดตน้ำหนักของมัน
ขั้นตอนที่ 4: ตัวอย่างข้อมูลสังเคราะห์จากซินธิไซเซอร์
เมื่อคุณได้สร้างและฝึกฝนโมเดลของคุณแล้ว ก็ถึงเวลาสุ่มตัวอย่างข้อมูลที่จำเป็นโดยป้อนสัญญาณรบกวนให้กับโมเดล สิ่งนี้ทำให้คุณสามารถสร้างข้อมูลสังเคราะห์ได้มากเท่าที่คุณต้องการ
ในกรณีนี้ คุณสร้างข้อมูลสังเคราะห์ในปริมาณที่เท่ากันกับปริมาณข้อมูลจริง เนื่องจากจะทำให้เปรียบเทียบขนาดตัวอย่างที่คล้ายกันในขั้นตอนที่ 5 ได้ง่ายขึ้น
เรามีตัวเลือกในการสุ่มตัวอย่างแถวที่มีธุรกรรมฉ้อฉล ซึ่งเมื่อรวมกับข้อมูลการฉ้อโกงที่ไม่สังเคราะห์ จะนำไปสู่การกระจายของคลาส "การฉ้อโกง" และ "การไม่ฉ้อโกง" ที่เท่าเทียมกัน ต้นตำรับ ชุดข้อมูล Kaggle มีการฉ้อโกง 492 รายการจากธุรกรรม 284,807 รายการ ดังนั้นเราจึงสร้างตัวอย่างเดียวกันจากตัวสังเคราะห์
เรามีตัวเลือกในการขึ้นแถวตัวอย่างที่มีธุรกรรมฉ้อฉลในกระบวนการที่เรียกว่าการเพิ่มข้อมูล ซึ่งเมื่อรวมกับข้อมูลการฉ้อโกงที่ไม่ใช่การสังเคราะห์ จะนำไปสู่การกระจายระดับ "การฉ้อโกง" และ "การไม่ฉ้อโกง" ที่เท่าเทียมกัน
ขั้นตอนที่ 5: เปรียบเทียบและประเมินข้อมูลสังเคราะห์กับข้อมูลจริง
แม้ว่าขั้นตอนนี้จะเป็นทางเลือก แต่คุณก็สามารถแสดงภาพเชิงคุณภาพและประเมินข้อมูลสังเคราะห์ที่สร้างขึ้นเทียบกับข้อมูลจริงโดยใช้แผนภาพกระจาย
สิ่งนี้ช่วยให้เราทำซ้ำโมเดลของเราโดยปรับแต่งพารามิเตอร์ เปลี่ยนขนาดตัวอย่าง และแปลงรูปแบบอื่นๆ เพื่อสร้างข้อมูลสังเคราะห์ที่แม่นยำที่สุด ธรรมชาติของความแม่นยำนี้ขึ้นอยู่กับจุดประสงค์ของการสังเคราะห์เสมอ
ภาพด้านล่างแสดงให้เห็นว่าจุดข้อมูลการฉ้อโกงที่เกิดขึ้นจริงและจุดข้อมูลการฉ้อโกงสังเคราะห์มีความคล้ายคลึงกันในขั้นตอนการฝึกอบรมอย่างไร สิ่งนี้ให้การตรวจสอบเชิงคุณภาพที่ดีเกี่ยวกับความคล้ายคลึงกันระหว่างข้อมูลสังเคราะห์และข้อมูลจริง และวิธีการปรับปรุงเมื่อเราดำเนินการผ่านยุคที่มากขึ้น (การส่งผ่านชุดข้อมูลการฝึกอบรมทั้งหมดผ่านอัลกอริทึม) โปรดทราบว่าเมื่อเราใช้ยุคต่างๆ มากขึ้น ชุดรูปแบบข้อมูลสังเคราะห์จะใกล้เคียงกับข้อมูลต้นฉบับมากขึ้น
ขั้นตอนที่ 6: ทำความสะอาด
สุดท้าย ให้หยุดอินสแตนซ์โน้ตบุ๊กของคุณเมื่อคุณทำการสังเคราะห์เสร็จแล้วเพื่อหลีกเลี่ยงค่าใช้จ่ายที่ไม่คาดคิด
สรุป
เป็นอัลกอริทึมการเรียนรู้ของเครื่องและกรอบการเข้ารหัส วิวัฒนาการอย่างรวดเร็วข้อมูลคุณภาพสูงในระดับเป็นทรัพยากรที่หายากที่สุดใน ML ชุดข้อมูลสังเคราะห์คุณภาพดีสามารถใช้ได้กับงานที่หลากหลาย
ในบล็อกโพสต์นี้ คุณได้เรียนรู้ถึงความสำคัญของการสังเคราะห์ชุดข้อมูลโดยใช้ไลบรารีโอเพ่นซอร์สที่ใช้ WGAN-จีพี. นี่คือพื้นที่การวิจัยที่ใช้งานอยู่โดยมีเอกสารหลายพันฉบับเกี่ยวกับ GAN ที่ตีพิมพ์และ GAN ที่มีชื่อหลายร้อยรายการที่พร้อมให้คุณทดลอง มีหลายตัวแปรที่ได้รับการปรับให้เหมาะสมสำหรับกรณีการใช้งานเฉพาะ เช่น ตารางเชิงสัมพันธ์และข้อมูลอนุกรมเวลา
คุณสามารถค้นหารหัสทั้งหมดที่ใช้สำหรับบทความนี้ได้ในนี้ สมุดบันทึกและแน่นอนว่า มีบทช่วยสอนเพิ่มเติมเช่นนี้จาก SageMaker หน้าเอกสารอย่างเป็นทางการ
ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร ส่วนที่สอง ในบล็อกโพสต์ซีรีส์สองส่วนนี้ เราจะเจาะลึกเกี่ยวกับวิธีการประเมินคุณภาพของข้อมูลสังเคราะห์จากมุมมองของความซื่อสัตย์ ประโยชน์ใช้สอย และความเป็นส่วนตัว
เกี่ยวกับผู้เขียน
ฟาริส ฮัดแดด เป็นหัวหน้าฝ่ายข้อมูลและข้อมูลเชิงลึกในทีม AABG Strategic Pursuits เขาช่วยให้องค์กรประสบความสำเร็จในการขับเคลื่อนด้วยข้อมูล
- AI
- ไอ อาร์ต
- เครื่องกำเนิดไออาร์ท
- หุ่นยนต์ไอ
- อเมซอน SageMaker
- ปัญญาประดิษฐ์
- ใบรับรองปัญญาประดิษฐ์
- ปัญญาประดิษฐ์ในการธนาคาร
- หุ่นยนต์ปัญญาประดิษฐ์
- หุ่นยนต์ปัญญาประดิษฐ์
- ซอฟต์แวร์ปัญญาประดิษฐ์
- AWS Machine Learning AWS
- blockchain
- การประชุม blockchain ai
- เหรียญอัจฉริยะ
- ปัญญาประดิษฐ์สนทนา
- การประชุม crypto ai
- ดัล-อี
- การเรียนรู้ลึก ๆ
- google ai
- ระดับกลาง (200)
- เรียนรู้เครื่อง
- เพลโต
- เพลโตไอ
- เพลโตดาต้าอินเทลลิเจนซ์
- เกมเพลโต
- เพลโตดาต้า
- เพลโตเกม
- ขนาดไอ
- วากยสัมพันธ์
- วิธีการทางเทคนิค
- ลมทะเล