จาก Jr Data Scientist/Machine learning ถึง Data Scientist/Machine Learning Engineer ผู้เชี่ยวชาญ

เผยแพร่แล้ว: 2020-12-07

จาก Jr Data Scientist/Machine learning ถึง Full-stack Data Scientist/Machine learning engineer

แนวโน้มปัจจุบันในสาขา Data Science เปลี่ยนไปอย่างมากเมื่อเทียบกับเมื่อสามหรือสองปีที่แล้ว เส้นโค้งการเรียนรู้ไม่ควรสิ้นสุด ดังนั้นเพื่อที่จะเติบโต เราต้องพัฒนาชุดทักษะที่เหมาะสมเพื่อตอบสนองความคาดหวังของอุตสาหกรรมในปัจจุบัน

“การปรับตัวเป็นเรื่องเกี่ยวกับความแตกต่างอันทรงพลังระหว่างการปรับตัวเพื่อรับมือและปรับตัวเพื่อชัยชนะ” — แม็กซ์แมคคีโอว์น

ให้เราดูองค์ประกอบสำคัญที่สามารถช่วยเราในการย้ายจาก Jr Data Scientist / Machine learning ไปเป็น Full stack Data Scientist/Machine learning

สารบัญ

ความคาดหวังในอดีต

สิ่งสำคัญคือต้องเข้าใจความรับผิดชอบในอดีตในการปรับตัวให้เข้ากับความคาดหวังในปัจจุบันของอุตสาหกรรม โดยสรุปแล้ว บทบาทในแต่ละวันของนักวิทยาศาสตร์ข้อมูลในอดีตมักเกี่ยวข้องกับ:

  • พื้นที่ AI ยังค่อนข้างใหม่ (แต่ไม่ใช่ในด้านวิชาการ) และหลายบริษัท สตาร์ทอัพกำลังวิเคราะห์แอปพลิเคชันและกรณีการใช้งานที่ถูกต้อง
  • การวิจัยเป็นจุดสนใจหลัก ข้อแม้คืองานวิจัยนี้หลายครั้งไม่สอดคล้องกับแกนหลักขององค์กรโดยตรง ดังนั้นในตอนแรกจึงไม่คาดหวังความน่าเชื่อถือมากนัก
  • โดยทั่วไป บริษัทต่างๆ เคยผสมผสานบทบาทของนักวิทยาศาสตร์ข้อมูลกับนักวิเคราะห์ข้อมูลหรือวิศวกรข้อมูล อีกครั้งเนื่องจากความคลุมเครือของแอปพลิเคชันระดับองค์กร AI
  • บุคคลก็มีภาวะที่กลืนไม่เข้าคายไม่ออกเช่นเดียวกัน งานวิจัยหรืองานจำนวนมากของพวกเขาไม่ได้เกี่ยวข้องโดยตรง ในทางปฏิบัติไม่สามารถทำหน้าที่เป็นผลิตภัณฑ์ได้

แนวโน้มปัจจุบัน

การทำให้เป็นประชาธิปไตยของ AI ได้เห็นการพัฒนาที่โดดเด่นจากบริษัทและสตาร์ทอัพ เรามาลองทำความเข้าใจกัน

  • อุตสาหกรรมนี้ทำให้บทบาทของนักวิทยาศาสตร์ข้อมูล วิศวกรการเรียนรู้ของเครื่องจักร นักวิเคราะห์ข้อมูล วิศวกรข้อมูล หรือแม้แต่วิศวกร MLops แตกต่างออกไป
  • ธุรกิจต่างๆ ไม่อนุญาตให้มีการวิจัยอย่างดุเดือดอีกต่อไป เนื่องจากพวกเขารู้ว่าพวกเขากำลังใช้กรณีการใช้งานใดอยู่ จำเป็นต้องมีกรอบความคิดที่ชัดเจนและแนวทางที่ไม่ต่อเนื่องที่คล้ายกันจากแต่ละบุคคล
  • ทุกการวิจัยหรือ POC ต้องมีผลิตภัณฑ์ที่เป็นรูปธรรมและแสดงผลได้

อ่านเพิ่มเติม: อาชีพในการเรียนรู้ของเครื่อง

การผ่าอย่างถี่ถ้วนของบทบาททั้งหมด

หากเราต้องเลือกด้านใดด้านหนึ่งที่ธุรกิจมีความเป็นเลิศในด้าน AI ไม่ต้องสงสัยเลยว่าบทบาทต่างๆ ที่หลากหลายจะมีความคาดหวังอย่างชัดเจน โดยสรุป:

  1. นักวิทยาศาสตร์ข้อมูล: Data Scientist คือบุคคลที่ (โดยทั่วไปมาจากพื้นฐานทางสถิติ/คณิตศาสตร์) ใช้วิธีการต่างๆ รวมถึง AI เพื่อดึงข้อมูลที่มีค่าจากข้อมูล
    • ความแตกต่างพื้นฐานระหว่าง Data Analyst และ Data Scientist คือ โดยทั่วไปแล้วจะใช้ความรู้ในโดเมนและวิธีแบบเก่าที่ใช้เองในการทำความเข้าใจข้อมูลในระดับขนาดเล็กถึงขนาดกลาง ในขณะที่ส่วนหลังมีหน้าที่รับผิดชอบในการรวบรวม วิเคราะห์ และตีความข้อมูลในขนาดที่ใหญ่ขึ้น โดยใช้เครื่องมือต่างๆ เช่น AI, SQL, คู่มือแบบเก่า เป็นต้น
    • ความรู้ด้านโดเมนไม่จำเป็นแต่การมีไว้เพื่อเป็นประโยชน์
    • งานหลักคือการรักษาและดึงข้อมูลเชิงลึกของธุรกิจจากข้อมูล ไม่ใช่เพื่อพัฒนาซอฟต์แวร์หรือผลิตภัณฑ์
    • นักสถิติหรือนักคณิตศาสตร์สามารถเป็นนักวิทยาศาสตร์ข้อมูลที่ดีได้

2. Machine Learning Engineer: วิศวกรซอฟต์แวร์เฉพาะกลุ่มที่พัฒนาผลิตภัณฑ์หรือบริการโดยใช้ AI

    • วิศวกร ML จำเป็นต้องมีความเชี่ยวชาญด้านวิศวกรรมซอฟต์แวร์แบบเดิมทั้งหมดพร้อมกับความรู้ด้าน AI เพราะเขา/เธอกำลังจะสร้างซอฟต์แวร์ที่มี AI เป็นหัวใจหลักในที่สุด
    • งานหลักไม่ใช่การดึงข้อมูล แต่เพื่อพัฒนาเครื่องมือ AI ที่สามารถทำงานเดียวกันได้
    • นักพัฒนาที่มีความรู้ดีเกี่ยวกับแมชชีนเลิร์นนิง/การเรียนรู้เชิงลึก รวมถึงวิศวกรรมซอฟต์แวร์สามารถเป็นวิศวกรแมชชีนเลิร์นนิงที่ดีได้

3. Machine Learning Operation Engineer: วิศวกรซอฟต์แวร์เฉพาะที่ดูแลและทำให้ไปป์ไลน์ที่ใช้โดยระบบ ML เป็นไปโดยอัตโนมัติ

    • ฟิลด์ที่ค่อนข้างใหม่ที่ได้รับแรงบันดาลใจจาก DevOps แม้ว่าจะแตกต่างจากบทบาท DevOps แบบดั้งเดิม
    • ไม่เหมือนกับวิศวกรรมซอฟต์แวร์ทั่วไป การพัฒนาผลิตภัณฑ์/ซอฟต์แวร์/บริการใดๆ ที่ใช้ AI ไม่ได้หยุดอยู่ที่การสร้างซอฟต์แวร์ให้เสร็จสมบูรณ์ จะต้องมีการอัปเดตเป็นประจำด้วยข้อมูลใหม่ ซึ่งก็คือ 'Data-Drift'
    • งานหลักรวมถึงงาน DevOps แบบเดิมๆ ทั้งหมด รวมถึงการดูแล/ทำให้ไปป์ไลน์อัตโนมัติและ Data-Drift
    • นักพัฒนาที่มีความรู้ดีเกี่ยวกับแมชชีนเลิร์นนิง/การเรียนรู้เชิงลึก วิศวกรรมซอฟต์แวร์ และเทคโนโลยีคลาวด์สามารถเป็นวิศวกร MlOps ที่ดีได้

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

สแต็คของระบบการเรียนรู้ของเครื่องแบบเต็มสแต็ก

ตอนนี้ให้เราย้ายไปยังจุดสำคัญ ในการเป็น Full stack Machine Learning Engineer จำเป็นต้องเข้าใจแนวคิดเบื้องหลัง Stack

Full stack คืออะไร?

  • เช่นเดียวกับวิศวกรรมซอฟต์แวร์ทั่วไป การพัฒนาระบบที่ใช้ AI ก็ต้องการชุดเครื่องมือเช่นกัน ชุดที่สมบูรณ์นี้สามารถเรียกว่า Full Stack
  • โดยทั่วไปแล้ว สแต็กแบบเต็มถูกสร้างขึ้นโดยใช้หน่วยการสร้างสามส่วน ได้แก่ เทคโนโลยีคลาวด์ เทคโนโลยีการกำกับดูแล และเทคโนโลยี AI
  • มีองค์ประกอบหลายอย่างสำหรับการสร้างระบบ AI ในหน่วยการสร้างทั้งสาม รายการรวมถึงการกำหนดค่า การแปลงข้อมูล & การตรวจสอบความถูกต้อง รหัส ML (การฝึกอบรม & การตรวจสอบ) เครื่องมือการจัดการทรัพยากร (กระบวนการ & เครื่องจักร) โครงสร้างพื้นฐานการให้บริการ การตรวจสอบ (สามารถรวมเข้ากับ Data Drift) รายการนี้ไม่ครบถ้วนสมบูรณ์ แต่เป็นรายการทั่วไปและอาจแก้ไขได้ตามต้องการ
  • ดังนั้น เพื่อให้เป็นไปตามระบบ ML ที่มีประสิทธิภาพดี เราจึงต้องใช้ชุดเครื่องมือเพื่อครอบคลุมส่วนประกอบที่กล่าวถึงข้างต้นทั้งหมด บางครั้งอาจมากกว่าหนึ่งชิ้นสำหรับชิ้นส่วนเดียว

ความสามารถในการออกแบบระบบ Full stack มีความสำคัญอย่างไร?

เครดิต Pic: หนี้ทางเทคนิคที่ซ่อนอยู่ในเอกสารระบบการเรียนรู้ของเครื่อง

  • ดังที่ได้กล่าวไว้ข้างต้น ธุรกิจในปัจจุบันไม่อนุญาตให้มีการวิจัย/POC โดยไม่มีความยั่งยืนที่เป็นรูปธรรมของผลิตภัณฑ์
  • ฉันจะไม่พูดเกินจริงถ้าฉันบอกว่าการฝึกโมเดลไม่ใช่ส่วนที่สำคัญที่สุด อันที่จริง ฉันจะจัดอันดับที่สามหรือสี่ บุคคลที่สามารถออกแบบและบำรุงรักษากองได้มีความสำคัญต่อบริษัทเพราะ
    • หากบุคคลคนเดียวกันที่จะฝึกแบบจำลองยังคงรักษาไปป์ไลน์ข้อมูล (หรือมีส่วนร่วม) เขา/เธอสามารถออกแบบให้ตอบสนองความต้องการที่แท้จริงได้
    • การทำความเข้าใจ Infra ของการทำให้ใช้งานได้จะช่วยสร้างประสิทธิภาพที่เป็นศูนย์กลางมากขึ้น
    • การทำความเข้าใจ Serving infra จะช่วยในส่วนของความเร็วและเวลาแฝง (ซึ่งโดยทั่วไปจะเป็นการร้องไห้สูงสุดสำหรับระบบ ML ใดๆ)
    • การทำความเข้าใจการตรวจสอบจะช่วยในเรื่อง Data Drift & ในประสิทธิภาพของแบบจำลองในระยะยาว
    • ดังนั้น บุคคลที่รู้ทั้งหมดนี้สามารถทำให้ไปป์ไลน์ทั้งหมดมีประสิทธิภาพมากขึ้นและเพิ่มประสิทธิภาพได้ แต่เหนือสิ่งอื่นใด มันช่วยประหยัดค่าใช้จ่ายสำหรับบริษัท เนื่องจากตอนนี้คนๆ เดียวสามารถจัดการได้หลายบทบาท ซึ่งจะทำให้เพิ่มมูลค่าของแต่ละบุคคลให้กับบริษัทได้

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

อ่านเพิ่มเติม: แนวคิดโครงการการเรียนรู้ของเครื่อง

ภาพรวมวิธีการทำงานของระบบสแต็กแบบเต็ม

ภาพรวมวงจรชีวิตของระบบ ML ในอุดมคติ

เครดิตภาพ: Microsoft MLOps

ML Pipeline ในอุดมคติต้องเป็นไปตามแนวคิดด้านล่าง:

  1. ธรรมาภิบาล:
    • การกำหนดเวอร์ชันของรหัสโครงการ
    • การกำหนดเวอร์ชันของข้อมูล
    • การกำหนดเวอร์ชันของรุ่น
    • เอกสาร
  2. ที่เก็บสิ่งประดิษฐ์สากลเพื่อจัดเก็บเนื้อหาที่มีเวอร์ชัน
  3. พิมพ์เขียวไปป์ไลน์ทั่วไป:
    • นโยบายการค้นพบทั่วไป + การทดลอง
    • การติดตามการทดสอบ (เช่น ตัวชี้วัด ผลลัพธ์ ประสิทธิภาพ)
    • กลยุทธ์ทั่วไปในการเชื่อมต่อส่วนประกอบต่างๆ ของไปป์ไลน์
    • ประกาศผล
  4. กลไกในการทำซ้ำ สร้างใหม่ พอร์ต
  5. รองรับ CI/CD
  6. อินฟาเรดที่เพียงพอต่อการพัฒนาและการผลิต
  7. ดัดแปลงง่ายสำหรับการผลิตและอุปกรณ์ปลายทาง
  8. อินฟาเรดที่ปรับขนาดได้เพื่อรองรับคำขอที่เพิ่มมากขึ้น

ภาพรวมไปป์ไลน์

  1. การกำหนดค่าการตั้งค่าครั้งเดียวกับ stack
  2. ชุดข้อมูลเวอร์ชันพร้อม DVC
  3. การทดลองติดตาม Strat ด้วย MLflow/Wandb
  4. บันทึกผลลัพธ์ ตัวชี้วัด ฯลฯ ด้วย MLflow/Wandb บนที่เก็บ Universal Artifact (ที่เก็บข้อมูล Azure blob เป็นแบ็กเอนด์)
  5. Log Model (หรือสินทรัพย์ที่เกี่ยวข้องใดๆ) เป็นสินทรัพย์ที่มีการกำหนดเวอร์ชันด้วย MLflow/Wandb บนที่เก็บ Universal Artifact
  6. บรรจุส่วนประกอบแต่ละส่วนด้วย Docker
  7. จัดเก็บส่วนประกอบแพ็คเกจด้วยที่เก็บ Docker ที่ต้องการ
  8. บรรจุภัณฑ์และการเผยแพร่ต้องทำโดยใช้ CI/CD
  9. การจัดกำหนดการการฝึกอบรมแบบจำลองอัตโนมัติตามการตรวจสอบอย่างต่อเนื่องสำหรับ Data Drift

รับ ใบรับรองวิทยาศาสตร์ข้อมูล จากมหาวิทยาลัยชั้นนำของโลก เรียนรู้หลักสูตร Executive PG Programs, Advanced Certificate Programs หรือ Masters Programs เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว

บทสรุป

เพื่อให้ผู้เล่นในทีมมีความเกี่ยวข้อง มีไหวพริบ และเป็นคนสำคัญ จำเป็นต้องเพิ่มเต็นท์ความรู้ของเรา มันจะช่วยให้ก้าวหน้าในสภาพแวดล้อมการแข่งขันอย่างไม่ต้องสงสัย

หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับแมชชีนเลิร์นนิง โปรดดูที่ IIIT-B & upGrad's PG Diploma in Machine Learning & AI ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีการฝึกอบรมที่เข้มงวดมากกว่า 450 ชั่วโมง กรณีศึกษาและการมอบหมายมากกว่า 30 รายการ IIIT- สถานะศิษย์เก่า B, 5+ โครงการหลักที่ใช้งานได้จริง & ความช่วยเหลือด้านงานกับบริษัทชั้นนำ

วางแผนอาชีพของคุณใน Data Science ตอนนี้

สมัครหลักสูตรประกาศนียบัตรวิชาชีพด้านวิทยาศาสตร์ข้อมูลจาก IIM-Kozhikode