ขอแนะนำความคล้ายคลึงของ TensorFlow
TensorFlowคล้ายคลึงกันเป็นไลบรารีที่เพิ่งเปิดตัวจาก Google ที่อำนวยความสะดวกในการฝึกอบรม การจัดทำดัชนี และการสืบค้นโมเดลที่คล้ายคลึงกัน ตรวจสอบเพิ่มเติมที่นี่
บ่อยครั้งเราต้องสามารถค้นหาสิ่งที่เหมือนสิ่งอื่นได้ การค้นหาความคล้ายคลึงกัน เป็นเทคนิคที่มีประโยชน์ในการทำเช่นนั้น ในสาขาวิทยาการข้อมูล การเรียนรู้ที่ตรงกันข้าม สามารถใช้เพื่อสร้างแบบจำลองความคล้ายคลึงซึ่งสามารถใช้สำหรับการค้นหาความคล้ายคลึงกัน
โมเดลความคล้ายคลึงกัน ได้รับการฝึกฝนให้ฝังเอาต์พุตซึ่งรายการถูกฝังในพื้นที่เมตริก ส่งผลให้เกิดสถานการณ์ที่รายการที่คล้ายกันอยู่ใกล้กันและอยู่ไกลจากรายการที่ไม่เหมือนกัน สิ่งนี้เกี่ยวข้องโดยตรง - ทั้งทางสัญชาตญาณและทางคณิตศาสตร์ - กับการฝังคำที่คุณคุ้นเคยอยู่แล้ว ปารีสและลอนดอนอยู่ใกล้กัน เช่นเดียวกับมัสตาร์ดและซอสมะเขือเทศ แต่ 2 กลุ่มนี้ค่อนข้างจะห่างไกลจากกันมาก
ในทำนองเดียวกันนี้ เราสามารถใช้แบบจำลองความคล้ายคลึงกันเพื่อเปรียบเทียบ เช่น ยานพาหนะ ตัวอย่างเช่น รถยนต์ซีดาน BMW และ Mercedes จะถูกฝังไว้ใกล้กัน ในขณะที่รถจักรยานยนต์ Yamaha และ Kawasaki จะพบว่าตัวเองถูกฝังไว้ใกล้กัน รถจักรยานยนต์จะค่อนข้างอยู่ห่างจากรถเก๋ง ซึ่งในทางกลับกันก็จะอยู่ห่างจากยานพาหนะที่ไม่เหมือนกันอื่นๆ เช่น เรือ รถบ้าน รถตู้ จักรยาน เป็นต้น
ภาพรวมโมเดลความคล้ายคลึงกัน (แหล่ง)
การเรียนรู้เชิงลึกใช้เพื่อฝึกโครงข่ายประสาทเทียมซึ่งมักพบว่าตัวเองถูกใช้สำหรับโมเดลความคล้ายคลึงกันเหล่านี้ เพื่ออำนวยความสะดวกในการฝึกอบรมโมเดลดังกล่าว Google ได้เปิดตัวเมื่อเร็ว ๆ นี้ ความคล้ายคลึงกันของ TensorFlow.
Tensorflowคล้ายคลึงกันนำเสนออัลกอริธึมล้ำสมัยสำหรับการเรียนรู้หน่วยเมตริกและองค์ประกอบที่จำเป็นทั้งหมดเพื่อการวิจัย ฝึกอบรม ประเมิน และให้บริการโมเดลที่อิงความคล้ายคลึงกัน
หลังจากที่โมเดลได้รับการฝึกฝนแล้ว ดัชนีการฝังจะถูกสร้างขึ้นเพื่ออำนวยความสะดวกในการค้นหา สำหรับการค้นหา TFที่คล้ายกันจะใช้การค้นหาเพื่อนบ้านที่ใกล้ที่สุดอย่างรวดเร็ว (ANN) เพื่อดึงข้อมูลที่ใกล้เคียงที่สุด เนื่องจากระยะห่างระหว่างรายการที่ฝังไว้เป็นฟังก์ชันของการวัดระยะทาง การค้นหาจึงรวดเร็วและแม่นยำโดยใช้ ANN
โมเดลความคล้ายคลึงกันยังมีความยืดหยุ่นและขยายได้ ทำให้สามารถเพิ่มคลาสของไอเท็มได้ไม่จำกัดจำนวนลงในโมเดลโดยไม่ต้องฝึกใหม่ เพียงคำนวณการฝังรายการใหม่ที่เป็นตัวแทนและเพิ่มลงในดัชนีที่มีอยู่
ภาพรวมความคล้ายคลึงกันของ TensorFlow (แหล่ง)
TensorFlowคล้ายคลึงกันอำนวยความสะดวกในการฝึกอบรมโมเดลความคล้ายคลึงกัน เช่นเดียวกับการสืบค้นที่ตามมา ใช้งานง่าย โดยเฉพาะอย่างยิ่งกับการเปิดตัวโมเดล Keras ใหม่ SimilarityModel()
ซึ่งรองรับการฝังการจัดทำดัชนีและการสืบค้น ด้วยความคล้ายคลึงกันของ TF การฝึกอบรมโมเดลตั้งแต่ต้นจนจบและการสอบถามจึงตรงไปตรงมา
เพื่อสาธิต นี่คือโค้ดตัวอย่างจากความคล้ายคลึงกันของ TF ที่เก็บ GitHub ที่ฝึกฝน จัดทำดัชนี และสืบค้นชุดข้อมูล MNIST อย่างกระชับ
จากเลเยอร์การนำเข้า tensorflow.keras # การฝังเลเยอร์เอาต์พุตด้วยบรรทัดฐาน L2 จาก tensorflow_similarity.layers นำเข้า MetricEmbedding # การสูญเสียเมตริกแบบพิเศษจาก tensorflow_similarity.losses นำเข้า MultiSimilarityLoss # โมเดล keras คลาสย่อยพร้อมรองรับการจัดทำดัชนีจาก tensorflow_similarity.models นำเข้าที่คล้ายกัน Model # ตัวอย่างข้อมูลที่ดึงชุดข้อมูล โดยตรงจากแคตตาล็อกชุดข้อมูล tf จาก tensorflow_similarity.samplers นำเข้า TFDatasetMultiShotMemorySampler # Visualizer เพื่อนบ้านที่ใกล้ที่สุดจาก tensorflow_similarity.visualization นำเข้า viz_neigbors_imgs # ตัวอย่างข้อมูลที่สร้างแบตช์ที่สมดุลจากตัวอย่างชุดข้อมูล MNIST = TFDatasetMultiShotMemorySampler (dataset_name='mnist', class_per_batch=10) # สร้าง รูปแบบความคล้ายคลึงกัน การใช้เลเยอร์ Keras มาตรฐาน input =layers.Input(shape=(28, 28, 1)) x =layers.Rescaling(1/255)(inputs) x =layers.Conv2D(64, 3, activation='relu')( x) x = layer.Flatten()(x) x = layer.Dense(64, activation='relu')(x) outputs = MetricEmbedding(64)(x) # สร้างแบบจำลองความคล้ายคลึงกันเฉพาะ model =likeityModel(inputs, ผลลัพธ์) # ฝึกโมเดลความคล้ายคลึงกันโดยใช้การสูญเสียเชิงตัด model.compile('adam', loss=MultiSimilarityLoss()) model.fit(sampler, epochs=5) # ดัชนี 100 ตัวอย่าง MNIST ที่ฝังไว้เพื่อให้ค้นหาได้ sx, sy = Sampler.get_slice (0,100) model.index(x=sx, y=sy, data=sx) # ค้นหาตัวอย่าง MNIST ที่มีการจัดทำดัชนีคล้ายกันมากที่สุด 5 อันดับแรกสำหรับตัวอย่างที่กำหนด qx, qy = Sampler.get_slice(3713, 1) nns = model.single_lookup (qx[0]) # แสดงภาพตัวอย่างแบบสอบถามและเพื่อนบ้าน 5 อันดับแรก viz_neigbors_imgs(qx[0], qy[0], nns)
หากคุณพบว่าตัวเองกำลังมองหาสิ่งที่เหมือนกับสิ่งอื่นๆ TensorFlowที่คล้ายกันอาจช่วยได้ คุณสามารถหาข้อมูลเพิ่มเติมได้ที่ repo GitHubหรือตรวจสอบ สวัสดีชาวโลก ตัวอย่างเพื่อให้ถูกต้อง
ที่เกี่ยวข้อง:
เรื่องเด่นใน 30 วันที่ผ่านมา | |||||
---|---|---|---|---|---|
|
|
ที่มา: https://www.kdnuggets.com/2021/09/introcing-tensorflow-similarity.html
- "
- &
- 100
- 9
- อัลกอริทึม
- ทั้งหมด
- การอนุญาต
- ปพลิเคชัน
- รถยนต์
- ที่ดีที่สุด
- รถจักรยาน
- BMW
- สร้าง
- รหัส
- ร่วมกัน
- คำนวณ
- ข้อมูล
- วิทยาศาสตร์ข้อมูล
- การเรียนรู้ลึก ๆ
- ระยะทาง
- ฯลฯ
- Excel
- ส่วนขยาย
- FAST
- รูป
- ชื่อจริง
- ฟังก์ชัน
- ให้คำแนะนำ
- โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- ทำอย่างไร
- HTTPS
- ดัชนี
- IT
- Keras
- การเรียนรู้
- ห้องสมุด
- ลอนดอน
- เรียนรู้เครื่อง
- ไมโครซอฟท์
- ML
- แบบ
- รถจักรยานยนต์
- เพื่อนบ้าน
- เครือข่าย
- ประสาท
- เครือข่ายประสาทเทียม
- เสนอ
- ใบสั่ง
- อื่นๆ
- ปารีส
- โพสต์
- โครงการ
- หลาม
- การวิจัย
- การอบรมขึ้นใหม่
- วิทยาศาสตร์
- นักวิทยาศาสตร์
- ค้นหา
- รถเก๋ง
- So
- ช่องว่าง
- จำนวนชั้น
- สนับสนุน
- รองรับ
- tensorflow
- การทดสอบ
- ด้านบน
- ชั้น 5
- การฝึกอบรม
- รถไฟ
- ยานพาหนะ
- การสร้างภาพ
- เว็บ
- X