ระบบคำแนะนำ

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

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

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

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

# Deploy the retrieval model with TensorFlow Serving
docker run -t --rm -p 8501:8501 \
  -v "RETRIEVAL/MODEL/PATH:/models/retrieval" \
  -e MODEL_NAME=retrieval tensorflow/serving &

# Retrieve top movies that user 42 may like
curl -X POST -H "Content-Type: application/json" \
  -d '{"instances":["42"]}'  \
  http://localhost:8501/v1/models/retrieval:predict

# Output
# {
#    "predictions":[
#       {
#          "output_1": [2.032, 1.969, 1.813],
#          "output_2": ["movie1”, “movie2”, “movie3”]
#       }
#    ]
# }

# Deploy the ranking model with TensorFlow Serving
docker run -t --rm -p 8501:8501 \
  -v "RANKING/MODEL/PATH:/models/ranking" \
  -e MODEL_NAME=ranking tensorflow/serving &

# Get the prediction score for user 42 and movie 3
curl -X POST -H "Content-Type: application/json" \
  -d '{"instances":[{"user_id":"42", "movie_title":"movie3"}]}' \
  http://localhost:8501/v1/models/ranking:predict

# Output:
# {"predictions": [[3.66357923]]}
code_blocks
เรียนรู้วิธีสร้างและปรับใช้ระบบคำแนะนำแบบเต็มสแต็กด้วย TensorFlow

ปรับปรุงขั้นตอนการดึงข้อมูลและการจัดอันดับของเครื่องมือแนะนำ

ระบบคำแนะนำขนาดใหญ่ต้องการให้กำหนดรายการที่เกี่ยวข้องมากที่สุดจากผู้สมัครหลายล้านคนผ่านขั้นตอนการกู้คืนและการจัดอันดับในลักษณะที่มีประสิทธิภาพและประสิทธิผล เสริมผู้แนะนำ TensorFlow ด้วยอัลกอริทึมการค้นหาเพื่อนบ้านที่ใกล้ที่สุดโดยประมาณ (ANN) อันทันสมัย ​​และเทคนิคการเรียนรู้เพื่อจัดอันดับ (LTR) เพื่อปรับปรุงคำแนะนำ

Google ScaNN

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

อันดับเทนเซอร์โฟลว์

TensorFlow Ranking เป็นไลบรารีสำหรับการพัฒนาโมเดล LTR ประสาทที่ปรับขนาดได้ มีฟังก์ชันเพิ่มเติมในการจัดอันดับรายการผู้สมัครเพื่อเพิ่มอรรถประโยชน์การจัดอันดับ

เพิ่มประสิทธิภาพการฝังขนาดใหญ่สำหรับการฝึกอบรมและการอนุมานแบบจำลอง

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

TensorFlow การฝัง TPU

API เลเยอร์ของ TPUEmbedding ช่วยอำนวยความสะดวกในการฝึกอบรมและให้บริการตารางการฝังขนาดใหญ่บน Tensor Processing Units (TPU)

ส่วนเสริมของผู้แนะนำ TensorFlow

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

รักษาความเป็นส่วนตัวของผู้ใช้

เอ็นจิ้นคำแนะนำแบบดั้งเดิมอาศัยการรวบรวมบันทึกการโต้ตอบของผู้ใช้และโมเดลคำแนะนำการฝึกอบรมตามกิจกรรมดิบของผู้ใช้ ตรวจสอบให้แน่ใจว่าข้อมูลผู้ใช้ยังคงเป็นส่วนตัวโดยผสมผสานแนวทางปฏิบัติในการพัฒนา AI อย่างมีความรับผิดชอบ

คำแนะนำบนอุปกรณ์ TensorFlow Lite

TensorFlow Lite มอบโซลูชันคำแนะนำบนอุปกรณ์ที่บรรลุคำแนะนำที่มีเวลาแฝงต่ำและมีคุณภาพสูง ในขณะที่เก็บข้อมูลผู้ใช้ทั้งหมดบนอุปกรณ์พกพา

การสร้างใหม่แบบรวมศูนย์ด้วย TensorFlow Federated

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

ใช้เทคนิคขั้นสูงสำหรับผู้แนะนำที่มีความซับซ้อนมากขึ้น

แม้ว่าโมเดลการกรองการทำงานร่วมกันแบบคลาสสิกจะใช้กันอย่างแพร่หลายในอุตสาหกรรม แต่ก็มีแนวโน้มเพิ่มขึ้นในการนำเทคนิคขั้นสูงมาใช้ เช่น การเรียนรู้แบบเสริมแรงและ Graph Neural Networks (GNNs) เพื่อสร้างระบบคำแนะนำ

โจรตัวแทน TensorFlow

TensorFlow Agents Bandits เป็นไลบรารีที่ครอบคลุมของอัลกอริทึมโจรที่สามารถสำรวจและใช้ประโยชน์อย่างมีประสิทธิภาพในการตั้งค่าเครื่องมือแนะนำ

เทนเซอร์โฟลว์ GNN

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

AI กำเนิด

เรียนรู้วิธีใช้โมเดลภาษาขนาดใหญ่ (LLM) เช่น PaLM API เพื่อเพิ่มระบบคำแนะนำของคุณ

อ้างอิงโมเดลคำแนะนำที่ทันสมัย

หากต้องการเปรียบเทียบประสิทธิภาพสำหรับโมเดลที่มีชื่อเสียงหรือสร้างโมเดลคำแนะนำของคุณเอง โปรดดูแนวทางปฏิบัติที่ดีที่สุดจากการนำ TensorFlow ไปใช้อย่างเป็นทางการของโมเดลยอดนิยม เช่น NCF, DLRM และ DCN v2

แหล่งการศึกษา

เรียนรู้เพิ่มเติมเกี่ยวกับการสร้างระบบคำแนะนำโดยทำตามหลักสูตรและวิดีโอทีละขั้นตอน

ระบบคำแนะนำในโลกแห่งความเป็นจริง

สำรวจตัวอย่างและกรณีศึกษาของระบบคำแนะนำที่ขับเคลื่อนแอปพลิเคชันในทุกอุตสาหกรรม

วิดีโอออนไลน์

เรียนรู้วิธีที่ YouTube สร้างระบบคำแนะนำที่มีประสิทธิภาพในลักษณะที่มีความรับผิดชอบ

อีคอมเมิร์ซ

อ่านเกี่ยวกับวิธีที่ Digitec Galaxus ฝึกฝนและให้บริการจดหมายข่าวส่วนบุคคลหลายล้านฉบับต่อสัปดาห์ด้วย TFX และ TensorFlow Agents

ร้านขายของชำ

เรียนรู้วิธีที่ HarperDB ใช้ TensorFlow Recommenders และ TensorFlow.js เพื่อสร้างระบบคำแนะนำตามการกรองที่ทำงานร่วมกันสำหรับสินค้าในร้านขายของชำ

การสตรีมเสียง

ใช้เวิร์กโฟลว์การดึงผู้สมัครด้วย Vertex AI Matching Engine เพื่อสร้างระบบแนะนำเพลย์ลิสต์โดยใช้ชุดข้อมูล Spotify Million Playlist