การสร้างโมเดล AI ขนาดใหญ่นั้นมีช่วงการเรียนรู้ และต้องใช้ทั้งเวลาและทรัพยากรมาก จนกระทั่งเมื่อไม่นานมานี้ เราคิดว่าแบบจำลองของ AI ที่ผ่านการฝึกอบรมมาก่อนจะมีน้ำหนักเป็นอาร์เรย์ 2 มิติที่ไม่ชัดเจนของเลขทศนิยม แต่จะเกิดอะไรขึ้นหากมีอะไรที่มากกว่านั้น
วันนี้เราต้องการแบ่งปันว่าเรากำลังสำรวจตุ้มน้ำหนักโมเดล AI อย่างไร แต่ก่อนอื่นเรามาดูกันว่าเรามาถึงจุดนี้ได้อย่างไร
เราอ่านเอกสารสำคัญเหล่านี้
การจำแนกประเภท ImageNet พร้อมโครงข่ายประสาทเทียมแบบลึก
ความเอาใจใส่คือสิ่งที่คุณต้องการ
ประเด็นสำคัญ/ประเด็นสำคัญ
คำถามสำคัญ
มีอะไรอีกที่ใช้งานได้กับเมทริกซ์และข้อมูลโฟลต 32 ความละเอียดสูง (ภาพ TIFF)?
เหตุใดเราจึงไม่สามารถใช้เทคนิคที่คล้ายกันจากระบบเหล่านี้ซึ่งมีชุดข้อมูลขนาดใหญ่และมีความละเอียดสูงเพื่อนำทาง "น้ำหนัก" ด้วยตัววนซ้ำประเภทอื่นไม่ได้ ด้วยประสิทธิภาพสนิมและ mmap ในปัจจุบันที่โหลดไฟล์ขนาด 100 GB บนดิสก์ ใครจะรู้ว่าแนวทางนี้อาจทำงานได้โดยไม่ต้องใช้ GPU สำหรับรุ่นเล็ก ๆ ที่จำกัดเฉพาะ CPU เท่านั้น
ชิ้นส่วนทางเทคนิคใดบ้างที่ขาดหายไป/จำเป็นในการเริ่มต้น
อะไร
เราได้สร้างต้นแบบสำหรับการสกัดและหวังว่าจะระบุได้ว่าน้ำหนักเป็นอย่างไร:
เชื่อมโยงกลับไปยังข้อมูลการฝึกอบรมแหล่งที่มาดั้งเดิม
การเปลี่ยนแปลงในการฝึกอบรมหลายชั่วอายุคน
ดูเหมือนจะเป็นตัวแทนของความรู้การฝึกอบรม 3 มิติที่หนาแน่นซึ่งบันทึกเป็น "น้ำหนัก" ที่ฝังอยู่ (ไม่ได้รับการพิสูจน์ แต่นี่เป็นสมมติฐานของเราตามเทคนิคที่ดูเหมือนว่าจะได้ผล)
ทำไม
เราต้องการทำความเข้าใจว่าเหตุใด LLM จึงมีความพิเศษ และน้ำหนักที่เข้ากับเทคโนโลยีที่เป็นนวัตกรรมนี้ได้อย่างไร
ด้วยการเลือกที่จะใช้เวลาของเราในการพยายามดูว่าตุ้มน้ำหนัก LLM คืออะไร เราเชื่อว่าเราสามารถใช้เทคนิคการแสดงภาพที่รู้จักกันดีในการวิเคราะห์การสแกนสมองของมนุษย์ เพื่อแยก ระบุ ใช้ซ้ำ และตรวจสอบได้ว่าตุ้มน้ำหนักคืออะไร
ก่อนที่ตุ้มน้ำหนัก AI Transformer เจนเนอเรชั่นขนาดใหญ่จะมีจำหน่ายในวงกว้าง ชุดข้อมูลการฝึกอบรมที่มีความหนาแน่นและมีความละเอียดสูงเหล่านี้มีราคาแพงมากและไม่ได้แชร์บ่อยนัก
ยังไง
เราสร้างต้นแบบนี้โดยใช้อัลกอริธึมการประมวลผลสัญญาณดิจิทัล (DSP) สำหรับการวิเคราะห์เชิงปริมาตรของข้อมูลความละเอียดสูง และรวมกลไกการวิเคราะห์เข้ากับ Blender (เครื่องมือแสดงภาพแบบโอเพ่นซอร์ส)
เราจะเปิดซอร์สและติดตามวิธีที่ AI เรียนรู้ตั้งแต่เริ่มต้น และใช้ Blender เพื่อส่งออกและแบ่งปันว่าน้ำหนักจะเป็นอย่างไรในขณะที่เราไป
ด้วยการเลือกใช้ Blender เพื่อวิเคราะห์น้ำหนักโมเดลในปริมาณ 3 มิติ เราได้สร้างความสามารถด้านแอนิเมชั่นที่ช่วยให้เราออกแบบ v1 API เริ่มต้นของเราสำหรับการจับชุดข้อมูลการฝึกอนุกรมเวลา ชุดข้อมูลการฝึกอบรมนี้มุ่งเน้นไปที่การบันทึกวิธีที่โมเดลพื้นฐาน AI เรียนรู้ผ่านแต่ละขั้นตอนการฝึกอบรมโดยใช้การวิเคราะห์น้ำหนักประสิทธิภาพสูงจากข้อมูลเชิงปริมาตร
เราเชื่อว่าเราจำเป็นต้องแบ่งปันว่าโมเดลเหล่านี้มีลักษณะอย่างไรเพื่อให้เราสามารถเข้าใจโมเดลเหล่านี้และฝึกอบรม AI เพื่อสร้างและตรวจสอบตนเองได้
เราต้องการดูว่าผู้เชี่ยวชาญผสมผสานกันอย่างไร (ดาวน์โหลด Dolphin 2.5 Mixtral 8x7B STL/glTF mesh เวอร์ชันใหม่ล่าสุดด้านล่าง)
พื้นที่เก็บข้อมูลนี้มีไว้สำหรับการทำโปรไฟล์ การแยก การแสดงภาพ และการนำน้ำหนัก AI ที่สร้างกลับมาใช้ใหม่ เพื่อหวังว่าจะสร้างแบบจำลอง AI ที่แม่นยำยิ่งขึ้น และตรวจสอบ/สแกนน้ำหนักที่เหลือเพื่อระบุโดเมนความรู้สำหรับความเสี่ยง
หมายเหตุ: เวอร์ชันปัจจุบันมีเพียงวิธีการโปรไฟล์ แยก และแสดงภาพน้ำหนักโมเดลที่มีอยู่เท่านั้น ตอนนี้เราสามารถเห็นภาพว่าโมเดล AI เรียนรู้ได้อย่างไร ต่อไปคือการฝึกโมเดลพื้นฐาน การแสดงภาพการฝึกอบรมจะเริ่มต้นด้วยการสอนโมเดล AI ใหม่เกี่ยวกับ "วิธีที่พื้นที่เก็บข้อมูล bampe-weights ผสานรวมตัวเลข แพนด้า และ Blender" เรามีไฟล์ประมาณ 190 python/(task,prompt,answer) ที่ต้องจัดระเบียบก่อนแชร์
พื้นที่เก็บข้อมูลนี้กำลังสำรวจการแสดงภาพการเรียนรู้ของโมเดลเมื่อเวลาผ่านไป และสร้างชุดข้อมูลการฝึกอบรมจาก "รูปร่างน้ำหนัก" ที่แยกออกมา เพื่อสร้างและทำนายน้ำหนักของโมเดล AI ใหม่ (หวังว่าจะเร็วกว่าวิธีการฝึกอบรมแบบเดิมเช่นกัน)
นี่คือลักษณะของ Llama 2 7B Chat GPTQ ภายใน Blender และส่งออกเป็น GIF โดยใช้ที่เก็บนี้:
โฟลเดอร์ Google ไดรฟ์ต่อไปนี้มีดัชนีใหม่ของการแสดงภาพ glTF และ STL ของโมเดลภาษาขนาดใหญ่ ไฟล์มีตั้งแต่ ~1 MB ถึง +2 GB
ติดต่อเราหากคุณต้องการดูโมเดล/ความหนาแน่นใหม่!
หากไฟล์ STL มีขนาดเล็กเพียงพอ GitHub จะสามารถเรนเดอร์ 3d meshes ได้โดยอัตโนมัติ หมายเหตุ: การดู GitHub STL บนมือถือไม่เหมาะในขณะนี้ แต่บนเดสก์ท็อป คุณสามารถซูมเข้าไปในเลเยอร์ได้โดยใช้ล้อเลื่อนของเมาส์ย้อนกลับและหมุนด้วยปุ่มซ้าย/ขวาของเมาส์:
เราพยายามที่จะอยู่ภายใต้ขีดจำกัด 50 MB และจัดเก็บเนื้อหาไว้ใน repo ของเราบน GitHub - https://github.com/matlok-ai/gen-ai-datasets-for-bampe-weights/docs/images/blender
Blender ที่โฮสต์เองในคอนเทนเนอร์เพื่อช่วยดูว่าตุ้มน้ำหนัก AI ทั่วไปมีลักษณะอย่างไรในพื้นที่:
รวมอิมเมจคอนเทนเนอร์สาธิต Blender พร้อมไฟล์ STL/GLB ที่ส่งออกแล้ว
อิมเมจ matlok/blender-ai-demos ถูกสร้างขึ้นจากอิมเมจ LinuxServer Blender และรวมไฟล์ 3D STL และ GLB ที่คุณสามารถดูได้ในเบราว์เซอร์ อิมเมจคอนเทนเนอร์ที่แยกออกมาของ blender-ai-demos คือ >4.0 GB บนดิสก์ และใช้ RAM ประมาณ 3 GB เพื่อประมวลผลไฟล์ STL หรือ glTF >40 MB:
การแสดงภาพสาธิตจะพบได้ในไดเร็กทอรีนี้ภายในคอนเทนเนอร์:
/config/bampe-visualizations
นักเทียบท่า
docker rm blender; docker-compose -f compose/blender-demos.yaml up -d
พ็อดแมน
podman rm -t 0 -f blender; podman-compose -f compose/blender-demos.yaml up -d
อิมเมจ LinuxServer พื้นฐาน
เรียกใช้อิมเมจ LinuxServer/docker-blender (lscr.io/linuxserver/blender:latest) และสร้างไฟล์ STL/GLB ใหม่ที่พร้อมสำหรับการดูโดยใช้โวลุ่มที่เมาท์ไว้แล้วระหว่างโฮสต์และคอนเทนเนอร์ Blender ( ไดเร็กทอรี .blender ) อิมเมจคอนเทนเนอร์ที่แยกมาจาก docker-blender มีขนาดประมาณ 3 GB บนดิสก์
นักเทียบท่า
docker rm blender; docker-compose -f compose/blender-demos.yaml up -d
พ็อดแมน
podman rm -t 0 -f blender; podman-compose -f compose/base.yaml up -d
หมายเหตุ: สิ่งประดิษฐ์ภาพที่สร้างขึ้นใหม่ (ไฟล์ STL และ glTF glb) จะปรากฏขึ้นเมื่อมีการรีสตาร์ทคอนเทนเนอร์ในไดเร็กทอรีนี้ภายในคอนเทนเนอร์ Blender:
/config/bampe
เปิด Blender ในเบราว์เซอร์
Blender กำลังฟังอยู่ที่ URL นี้:
http://localhost:3000
โหลดการแสดงภาพ AI ของ 3D Blender ด้วยตนเอง
เมื่อ Blender ทำงานในเบราว์เซอร์ คุณสามารถนำเข้าไฟล์ STL หรือ glTF ได้โดยคลิกที่เมนูเหล่านี้:
ไฟล์
นำเข้า
STL หรือ glTF
ไฟล์อยู่ใน /config/bampe หรือ /config/bampe-visualizations ขึ้นอยู่กับเวอร์ชันคอนเทนเนอร์ที่รันอยู่
ใช้ Shift + ` เพื่อเปิดใช้งานโหมดนำทางด้วยเมาส์และ W, A, S, D สำหรับการเคลื่อนที่ของบุคคลที่หนึ่ง
การกดปุ่ม Shift ค้างไว้จะเคลื่อนที่ตามความเร็วเทอร์โบด้วย
เปิด แก้ไข -> การตั้งค่า -> การนำทาง -> บินและเดิน -> ลูกศรสลับการเดิน
ปรับ ความไวของเมาส์ -> 0.1
ปรับ ความเร็วในการเดิน -> 20 ม./วินาที
พื้นที่เก็บข้อมูลนี้มีไว้สำหรับการค้นคว้าแนวทางอื่นในการสร้าง AI โดยใช้ตุ้มน้ำหนัก AI ที่ได้รับการฝึกมาแล้ว อยู่ระหว่างดำเนินการ ดังนั้นโปรดดูการตั้งค่าสภาพแวดล้อมการพัฒนาสำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการเรียกใช้สิ่งนี้จากบรรทัดคำสั่ง
เราสามารถแบ่งปันและดูรูปร่างเหล่านี้โดยใช้เครื่องมือออนไลน์
พื้นที่เก็บข้อมูลนี้ได้รับการทดสอบบนแพลตฟอร์มต่อไปนี้: