ละอองลอย: การเรียนรู้ของเครื่องสำหรับมนุษย์

โดย "เฮคเตอร์ ยี" และ "บาร์ อิฟรัค"

คุณเคยสงสัยหรือไม่ว่าเคล็ดลับราคาของ Airbnb สำหรับเจ้าของที่พักทำงานอย่างไร

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

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

ขอแนะนำ Aerosolve: แพ็คเกจการเรียนรู้ของเครื่องที่สร้างขึ้นเพื่อมนุษย์

เราดำเนินงานด้วยความเชื่อที่ว่าการช่วยให้มนุษย์ทำงานร่วมกับเครื่องจักรในลักษณะทางชีวภาพนั้นเกินความสามารถของมนุษย์หรือเครื่องจักรเพียงอย่างเดียว

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

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

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

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

ลำดับชั้นยังช่วยให้เรายืมความแข็งแกร่งทางสถิติจากละแวกใกล้เคียงหลักได้เนื่องจากมีละแวกใกล้เคียงที่เป็นเด็กครบถ้วน ผู้ใช้จะมองไม่เห็นย่านใกล้เคียงที่สร้างด้วย Kd-tree แต่ใช้เพื่อคำนวณคุณลักษณะเฉพาะสำหรับโมเดลการเรียนรู้ของเครื่อง ในรูปด้านล่าง เราแสดงให้เห็นถึงความสามารถของโครงสร้าง Kd-tree ในการสร้างละแวกใกล้เคียงในท้องถิ่นโดยอัตโนมัติ โปรดสังเกตความเอาใจใส่ที่เราดำเนินการในการแจ้งอัลกอริธึมว่าไม่ควรข้ามแหล่งน้ำขนาดใหญ่ แม้แต่ Treasure Island ก็ยังมีย่านใกล้เคียงเป็นของตัวเอง เพื่อไม่ให้มีการเปลี่ยนแปลงอย่างกะทันหันตามขอบเขตพื้นที่ใกล้เคียง เราจึงดูแลข้อมูลพื้นที่ใกล้เคียงให้ราบรื่นในลักษณะหลายระดับ คุณสามารถอ่านเพิ่มเติมและมองเห็นได้อย่างชัดเจนถึงการปรับให้เรียบแบบนี้ได้ใน การสาธิต Image Impressionism ของ Aerosolve บน Github

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

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

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

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

กรุณาตรวจสอบ Aerosolve บน Github มี การสาธิต บางส่วนที่คุณสามารถดูวิธีใช้ Aerosolve สำหรับการสร้างแบบจำลองของคุณเอง เช่น การสอนอัลกอริธึมวิธีการลงสีในรูปแบบการลงสีแบบ pointillism นอกจากนี้ยังมีการสาธิตการทำนายรายได้ตามข้อมูลการสำรวจสำมะโนประชากรของสหรัฐอเมริกาที่คุณสามารถตรวจสอบได้เช่นกัน

ตรวจสอบโครงการโอเพ่นซอร์สทั้งหมดของเราได้ที่ airbnb.io และติดตามเราบน Twitter: @AirbnbEng + @AirbnbData

เผยแพร่ครั้งแรกที่ nerds.airbnb.com เมื่อวันที่ 4 มิถุนายน 2015