วัตถุประสงค์:
เพื่อดำเนินการดังต่อไปนี้ -
- ดึงอิมเมจคอนเทนเนอร์ Docker ของอิมเมจ CentOS จาก Docker Hub และสร้างคอนเทนเนอร์ใหม่
- ติดตั้งซอฟต์แวร์ Python ที่ด้านบนของคอนเทนเนอร์นักเทียบท่า
- ในคอนเทนเนอร์ ให้คัดลอก/สร้างโมเดลการเรียนรู้ของเครื่อง
ก่อนปฏิบัติงาน มาทำความเข้าใจพื้นฐานบางประการก่อน:
นักเทียบท่าคืออะไร?
Docker เป็นแพลตฟอร์มคอนเทนเนอร์แบบโอเพ่นซอร์สที่ใช้สำหรับการสร้าง ปรับใช้ และเรียกใช้แอปพลิเคชัน
นักเทียบท่าสามารถเข้าใจได้ว่าเป็นเรือที่บรรทุกตู้คอนเทนเนอร์ซึ่งประกอบด้วยแอปพลิเคชันและการพึ่งพาทั้งหมด โปรดดูภาพด้านบนสำหรับการแสดงภาพ
ช่วยให้นักพัฒนาลดความซับซ้อนและเร่งเวิร์กโฟลว์แอปพลิเคชันได้อย่างมีประสิทธิภาพ พร้อมทั้งให้อิสระแก่พวกเขาในการพัฒนาโดยใช้เทคโนโลยีและสภาพแวดล้อมการพัฒนาที่ตนเลือกเอง
แอพพลิเคชั่นของนักเทียบท่า -
- การส่งมอบแอปพลิเคชันที่รวดเร็วและสม่ำเสมอ
- การปรับใช้และการปรับขนาดที่ตอบสนอง
- ใช้งานปริมาณงานมากขึ้นบนฮาร์ดแวร์ตัวเดียวกัน
ตอนนี้เรามาดูความต้องการของเรากันดีกว่า……
เครื่องมือที่ใช้ในการปฏิบัติงาน-
OS : RHEL8 / OS อื่นๆ
ภาษา : Python
เทคโนโลยี Containerization : Docker
ข้อกำหนดเบื้องต้น :
- ควรติดตั้ง Docker บนระบบปฏิบัติการ ข้อมูลอ้างอิงสำหรับการติดตั้ง
- ในการสร้างโมเดลการเรียนรู้ของเครื่อง เราจำเป็นต้องมีชุดข้อมูลที่เกี่ยวข้องสำหรับโมเดลนั้น สามารถดาวน์โหลดอันที่ใช้ในการปฏิบัติงานได้จาก "ที่นี่"
คุณสามารถสร้างและปรับใช้โมเดลแมชชีนเลิร์นนิงใดๆ ภายในคอนเทนเนอร์ได้ สำหรับงานที่ฉันใช้แบบจำลองการถดถอยเชิงเส้นแบบง่ายๆ เพื่อคาดการณ์เงินเดือนตามประสบการณ์หลายปีที่บุคคลนั้นมี
ตัวอย่างเล็กๆ น้อยๆ ในชุดข้อมูลตามโมเดลแมชชีนเลิร์นนิงที่จะสร้างและปรับใช้ในคอนเทนเนอร์ Docker :
เนื่องจากสังเกตได้ว่าชุดข้อมูลในการพิจารณาของเรามีสองคอลัมน์ 'ประสบการณ์ปี' และ 'เงินเดือน' โดยคอลัมน์แรกเป็นตัวแปรอิสระและคอลัมน์หลังเป็นตัวแปรเป้าหมาย
ตอนนี้อัลกอริทึมการถดถอยเชิงเส้นอย่างง่ายคืออะไร
กล่าวโดยสรุปก็คือ การถดถอยเชิงเส้นแบบง่ายๆ คืออัลกอริธึมการเรียนรู้ของเครื่องภายใต้การดูแล โดยที่เอาต์พุตที่คาดการณ์ไว้จะมีความต่อเนื่องและมีความชันคงที่ ในที่นี้มีเพียงคุณลักษณะเดียวและตัวแปรเป้าหมายเดียวเท่านั้น ใช้เพื่อทำนายค่าภายในช่วงที่ต่อเนื่องกัน (เช่น ยอดขาย ราคา) แทนที่จะพยายามจัดประเภทเป็นหมวดหมู่ (เช่น แมว สุนัข) ใช้รูปแบบการตัดความชันแบบดั้งเดิม โดยที่ 'm' และ 'b' เป็นตัวแปรที่อัลกอริทึมของเราจะพยายาม "เรียนรู้" เพื่อสร้างการคาดการณ์ที่แม่นยำที่สุด 'x' หมายถึงข้อมูลที่ป้อนเข้าของเรา และ 'y' แสดงถึงการคาดการณ์ของเรา
y=mx+b
มาเริ่มปฏิบัติภารกิจกันเถอะ!
หากต้องการตรวจสอบว่าคุณได้ติดตั้ง Docker บนระบบปฏิบัติการของคุณแล้ว คุณสามารถเรียกใช้คำสั่งต่อไปนี้:
docker info
เพื่อให้แน่ใจว่านักเทียบท่าเริ่มทำงานโดยอัตโนมัติเมื่อระบบปฏิบัติการบูท คุณสามารถใช้คำสั่งด้านล่างได้
systemctl enable docker
1. ดึงอิมเมจคอนเทนเนอร์ Docker ของอิมเมจ CentOS จาก Docker Hub และสร้างคอนเทนเนอร์ใหม่
2. ติดตั้งซอฟต์แวร์ Python ที่ด้านบนของคอนเทนเนอร์นักเทียบท่า
เปิดตัวคอนเทนเนอร์นักเทียบท่า:
การติดตั้ง python3 ลงไป:
การติดตั้งไลบรารีอื่น:
3. ในคอนเทนเนอร์คัดลอก/สร้างโมเดลการเรียนรู้ของเครื่อง
- ตรวจสอบว่ามีไฟล์ชุดข้อมูลอยู่ในระบบปฏิบัติการ
- สร้างโฟลเดอร์ภายในคอนเทนเนอร์นักเทียบท่าโดยใช้คำสั่งต่อไปนี้:
mkdir <foldername>
- ใช้คำสั่งต่อไปนี้เพื่อคัดลอกไฟล์ชุดข้อมูลลงในคอนเทนเนอร์นักเทียบท่าจากบรรทัดคำสั่ง OS :
docker cp <source_path> <container_name or container_id>:<destination_path>
- ในคำสั่งข้างต้น เส้นทางปลายทางระบุเส้นทางของโฟลเดอร์ที่สร้างในคอนเทนเนอร์นักเทียบท่า และเส้นทางต้นทางระบุเส้นทางในระบบปฏิบัติการที่มีไฟล์ชุดข้อมูลอยู่
- ดาวน์โหลดและติดตั้งโปรแกรมแก้ไข vim ภายในคอนเทนเนอร์นักเทียบท่าโดยใช้คำสั่งต่อไปนี้:
yum install vim
- เปลี่ยนไดเร็กทอรีในคอนเทนเนอร์นักเทียบท่าและเข้าไปในโฟลเดอร์ที่มีชุดข้อมูลอยู่โดยใช้คำสั่งต่อไปนี้:
cd /root/<folder_name>
- การสร้างไฟล์ python โดยใช้ vim editor เพื่อสร้างโมเดลการเรียนรู้ของเครื่องภายในโฟลเดอร์:
vim <file_name>.py
- ตอนนี้เราจะสร้างไฟล์หลามอีกไฟล์โดยใช้คำสั่งเดียวกันเพื่อทำนายเงินเดือนตามโมเดลด้านบนที่เราสร้างขึ้น
- เรียกใช้ไฟล์ที่สร้างขึ้นด้านบนเพื่อทำนายเงินเดือนโดยใช้คำสั่งที่ระบุด้านล่าง:
python3 <file_name>
บทสรุป :
ด้วยการทำตามขั้นตอนข้างต้น เราจึงสามารถดำเนินงานที่กำหนดได้สำเร็จ จากนั้นจึงสร้างและปรับใช้โมเดลการเรียนรู้ของเครื่องภายในคอนเทนเนอร์นักเทียบท่า