‫เอาล่ะ
‫ตอนนี้เรามีการแบ่งการฝึกและการแยกการตรวจสอบแล้ว
‫ค่า X ของเราคือพาธของไฟล์ไปยังรูปภาพและค่า Y ของเรา
‫เลเบลเป็นตัวแทนบูลีน numpy ของเลเบล
‫สิ่งที่เราต้องทำตอนนี้ก็คือ เนื่องจากป้ายกำกับของเราอยู่ในรูปแบบตัวเลขอยู่แล้ว เราจึงต้องแปลงรูปภาพเป็นตัวเลขหรืออย่างน้อยก็สร้างฟังก์ชันขึ้นมาให้เรา
‫ลองสร้างหัวเรื่องเล็กน้อยสำหรับสิ่งนั้น
‫เราจะทำมัน
‫การประมวลผลภาพล่วงหน้า
‫เปลี่ยนภาพให้เป็นกาล
‫ดังนั้นเราจึงเริ่มต้นอย่างเป็นทางการในขั้นตอนนี้ที่นี่
‫และตอนนี้ เมื่อฉันบอกว่าการเปลี่ยนรูปภาพเป็นกาล นี่เป็นธีมทั่วไปที่คุณจะมี ไม่ว่าคุณจะกำลังทำงานกับข้อมูลประเภทใด
‫ดังนั้น แม้ว่าจะไม่ใช่รูปภาพ แต่ถ้าเป็นไฟล์เสียงหรือข้อความ คุณยังต้องเปลี่ยนมันเป็น
‫tense หากคุณทำงานกับ TensorFlow
‫และจำไว้ว่า tense เป็นการแสดงตัวเลข เหมือนกับเมทริกซ์
‫เอาล่ะ วิธีหนึ่งที่เราสามารถทำได้อีกครั้งคืออะไร?
‫แทนที่จะประมวลผลภาพล่วงหน้าในสมุดบันทึก เราอาจประมวลผลล่วงหน้าเมื่อจำเป็นเท่านั้น
‫เพราะการจัดการพาธของไฟล์นั้นง่ายกว่าการจัดการกับรูปภาพมากเพราะว่ามันทำงานโดยใช้ข้อมูลน้อยกว่า
‫เนื่องจากเรามีเส้นทางของไฟล์อยู่แล้ว ฉันจะเก็บธีมนี้ไว้สำหรับส่วนที่เหลือของโปรเจ็กต์นี้
‫และฉันกำลังพูดว่า อาจจะทำได้
‫เรากำลังจะทำสิ่งนี้
‫เราจะเริ่มพัฒนาฟังก์ชันการทำงานบางอย่างสำหรับขั้นตอนในโครงการ
‫และสิ่งที่ผมหมายถึงก็คือการสร้างฟังก์ชัน แทนที่จะเขียนโค้ดเพียงบรรทัดเดียวแล้วเรียกใช้เซลล์
‫เซลล์จะไม่ทำงานเพราะไม่มีอะไรอยู่ที่นั่น
‫ในตอนแรก เมื่อผมเริ่มออกตัว นั่นคือสิ่งที่ผมจะทำ
‫ฉันจะเรียกใช้โค้ดจำนวนนับไม่ถ้วนในเซลล์จำนวนนับไม่ถ้วนแล้วเรียกใช้ต่อไป
‫และในที่สุด แม้ว่าฉันจะอยู่ด้านล่างในส่วนอื่นของสมุดบันทึก ฉันจะต้องเขียนโค้ดเดิมที่เคยเขียนไว้ที่ไหนสักแห่งบนนี้ใหม่
‫นั่นคือเหตุผลที่เราจะเริ่มสร้างฟังก์ชันเพื่อให้เราสามารถเขียนโค้ดได้เพียงครั้งเดียว
‫อาจใช้เวลาเล็กน้อยในการเริ่มต้น แต่เราสามารถนำฟังก์ชันเหล่านั้นกลับมาใช้ใหม่ได้ในภายหลัง และนั่นคือสิ่งที่ฉันต้องการให้คุณเริ่มคิดเกี่ยวกับเวิร์กโฟลว์ของคุณ
‫หากคุณกำลังคิดว่า เฮ้ ฉันจะประมวลผลข้อมูลล่วงหน้าที่นี่ บางทีฉันอาจต้องการฟังก์ชันนั้น
‫ฟังก์ชันนั้นในภายหลัง
‫ผมจะเปลี่ยนเป็นฟังก์ชันแทนที่จะเป็นเซลล์เดียว
‫ลองทำกันก่อนดำเนินการ
‫ภาพของเราเป็นกาล
‫เราจะเขียนฟังก์ชันที่ทำหน้าที่บางอย่าง
‫ตอนนี้ ฟังก์ชันการประมวลผลล่วงหน้านี้จะเฉพาะกับรูปภาพ แต่แนวคิดยังคงเหมือนเดิม
‫ไม่ว่าคุณจะใช้ข้อมูลอะไร คุณอาจต้องแปลงเป็นรูปแบบเทนเซอร์
‫ดังนั้นเราจึงต้องการนำพา ธ ไฟล์รูปภาพเป็นอินพุต
‫นั่นคือสิ่งที่เรามีจนถึงตอนนี้
‫เรามีเส้นทางของไฟล์รูปภาพ
‫เราต้องการใช้ TensorFlow เพื่ออ่านไฟล์และบันทึกลงในตัวแปร
‫เราอาจจะเรียกภาพตัวแปรนั้นว่า
‫ดีและเรียบง่าย
‫สาม เราต้องการเปลี่ยนภาพลักษณ์ของเรา
‫ดังนั้นตัวแปรรูปภาพ ซึ่งจะเป็น JPEG เพราะนั่นคือประเภทของไฟล์รูปภาพที่เราจัดการในสองกาล
‫สี่.
‫เราจะทำอย่างไรต่อไป?
‫เราจำเป็นต้องปรับขนาดภาพ
‫เนื่องจากรูปภาพทั้งหมดของเรามีขนาดแตกต่างกัน
‫เป็นแนวทางปฏิบัติมาตรฐานในการปรับขนาดรูปภาพทั้งหมด การจัดประเภทรูปภาพ หรือไปป์ไลน์การเรียนรู้เชิงลึกบางประเภทด้วยรูปภาพในขนาดมาตรฐาน
‫ดังนั้นเราจะปรับขนาดภาพ
‫เอ่อ ให้เป็นรูปร่าง 224
‫ตอนนี้ ฉันต้องการให้คุณคิดเกี่ยวกับมันโดยไม่ต้องมีประสบการณ์โดยตรงในการปรับรูปร่างของภาพ
‫เหตุใดจึงอาจมีความสำคัญที่จะต้องมี
‫มัน.
‫ขนาดนี้สามารถกำหนดได้ตามใจชอบ แต่ทำไมการมีรูปภาพที่มีขนาดใกล้เคียงกันจึงเป็นสิ่งสำคัญเมื่อคุณทำงานกับพวกเขา
‫สุดท้าย ให้ส่งคืนภาพที่แก้ไขแล้ว
‫ตอนนี้.
‫เรามีขั้นตอนห้าขั้นตอนสำหรับฟังก์ชันนี้
‫คุณอาจจะคิดว่า ว้าว ฉันจะทำอย่างนั้นได้อย่างไร
‫ฉันต้องการให้คุณดูแหล่งข้อมูลที่นี่
‫ดังนั้น TensorFlow
‫กำลังโหลดข้อมูล
‫ไปเลย.
‫ฉันจะปล่อยให้สิ่งนี้เป็นอย่างอื่นที่คุณสามารถเริ่มอ่านวิธีการโหลดข้อมูลลงใน TensorFlow
‫นี่เป็นส่วนที่ดีในการดู
‫ดังนั้นข้อมูลแนะนำ TensorFlow
‫ฉันจะปล่อยให้มันอยู่ในส่วนทรัพยากรเป็นไฟล์แนบหากคุณต้องการตรวจสอบ
‫ฉันใช้เวลาอ่านที่นี่เพียง 10 นาที
‫บางทีคุณอาจใช้เวลา 10 นาทีในสองสามวันถัดไป แม้ว่าคุณจะไม่เข้าใจก็ตาม
‫แค่เริ่มที่จะรวบรวมแนวคิดบางอย่างเข้าด้วยกัน
‫และตอนนี้สำหรับบทช่วยสอน ควรมีอีกอันหนึ่งที่นี่
‫ฉันคิดว่าโหลดและประมวลผลข้อมูลล่วงหน้า
‫จึงเป็นอีกสิ่งหนึ่งที่ทรงคุณค่า
‫เรามาที่นี่?
‫นี่คือสิ่งที่เรากำลังจะทำในการโหลดภาพ
‫ปัญหาของฉันกำลังพยายามโหลดรูปภาพและฉันต้องการทราบวิธีเปลี่ยนให้เป็นกาล
‫ดังนั้นฉันจึงไปที่บทเรียน
‫ฉันค้นหาข้อมูลการโหลด
‫และฉันค้นหาวิธีการโหลดภาพ
‫จากนั้นคุณสามารถอ่านได้ที่นี่
‫ดังนั้นฉันจะตรวจสอบให้แน่ใจว่าฉันเชื่อมโยงแหล่งข้อมูลทั้งสองนี้
‫และหลังจากที่คุณทำวิดีโอนี้เสร็จแล้ว ฉันอยากให้คุณอ่านให้จบทีละเรื่องประมาณ 10 นาที
‫งั้นกลับกันเถอะ
‫มาสร้างฟังก์ชันนี้กัน
‫แต่ก่อนที่เราจะทำ ฉันแค่อยากจะสาธิตให้คุณเห็นว่าภาพจริง ๆ แล้วหน้าตาเป็นอย่างไรถ้าเราจะอ่านมันและเทนเซอร์จะหน้าตาเป็นอย่างไร
‫จึงขอ.
‫แปลงภาพเป็นผู้ตัดสิน a.
‫ที่นี่.
‫ก่อนที่เราจะทำ
‫สมมติว่าการนำเข้ารูปภาพมีลักษณะอย่างไร
‫ดังนั้นฉันจึงแปลงเป็นอาร์เรย์จำนวนมาก
‫จำได้ไหมว่าฉันพูดว่ากาลคล้ายกับอาร์เรย์หรือเมทริกซ์ numpy เชิงมิติมาก?
‫สิ่งที่เราจะได้เห็นในตอนนี้ เรากำลังนำเข้าเพียงเพื่อแมปฟังก์ชันพล็อตใน read ซึ่งหมายถึงการอ่านรูปภาพ
‫ฉันจะบันทึกภาพไปที่ M อ่าน
‫มารับชื่อไฟล์ 42.
‫โปรดจำไว้ว่า ชื่อไฟล์เป็นเพียงรายการพาธของไฟล์ไปยังอิมเมจการฝึกของเรา
‫ซึ่งอยู่บนนี้
‫วิสัยทัศน์ของสุนัข
‫ภาพการฝึก
‫แล้วเราต้องการตรวจสอบรูปร่างของภาพ
‫ตกลง.
‫นี่คือภาพของเราที่นี่
‫นี่คือความสูง
‫ความกว้าง.
‫อันที่จริง ฉันมักจะสับสนอยู่เสมอ แต่นั่นเป็นสาเหตุที่เราเปลี่ยนรูปร่างพวกมันให้เป็นเหมือนรูปสี่เหลี่ยมจัตุรัส
‫ความสูงและความกว้างนั้นไม่สำคัญ
‫เชื่อว่าเป็นความสูง ความกว้าง ช่องสี
‫และสิ่งที่ผมหมายถึงโดยช่องสีคือพิกเซลสีแดง สีเขียว และสีน้ำเงิน
‫แล้วถ้าเราไปที่นี่ ช่องสีคืออะไร?
‫ช่อง obj ตัวอย่าง
‫นี่คือสิ่งที่รูปภาพประกอบด้วยสีแดง สีเขียว และสีน้ำเงิน
‫ฉันจะให้คุณดำดิ่งลงไปในตัวเองอีกหน่อย
‫แต่คุณต้องเชื่อฉันว่าแต่ละพิกเซลในภาพนี้คือการรวมกันของค่าสีแดง
‫สีเขียว และสีน้ำเงิน และมีค่าตั้งแต่ 0 ถึง 255
‫ดังนั้นถ้าเราดูที่อิมเมจของเรา ซึ่งเป็นอาร์เรย์แบบ numpy มันควรจะเป็น
‫เราจะไปที่นั่น.
‫ค่าระหว่างศูนย์ถึง 255
‫ดังนั้นถ้าเราไปอิมเมจดอทแม็กซ์ นี่อาจจะบอกเราได้
‫255 และภาพผู้ชาย
‫ศูนย์.
‫เราจะไปที่นั่น.
‫ดังนั้นค่าพิกเซลสีแดง สีเขียว และสีน้ำเงินจึงอยู่ระหว่างศูนย์ถึง 2 55.
‫นั่นคือสิ่งที่ภาพของเรา
‫คือ.
‫ตอนนี้อยู่ในตำแหน่งผู้ตัดสินแล้ว
‫ฉันจำได้ว่าฉันพูดว่า tense คล้ายกับ numpy arrays มาก
‫ลองเปลี่ยนเป็น tense และเราทำได้
‫คุณสามารถเปลี่ยนเกือบทุกอย่างเป็นเทนเซอร์โดยใช้ค่าคงที่ TF
‫ตอนนี้ถ้าเราอ่าน docstring จะสร้างเมตริกซ์คงที่จากเมตริกซ์ที่เหมือนอ็อบเจกต์
‫สวยงาม.
‫คุณสามารถอ่านข้อมูลเพิ่มเติมได้เล็กน้อย
‫แต่จำคำขวัญของเราไว้ หากมีข้อสงสัยให้รันโค้ด
‫นั่นคือสิ่งที่เราจะฝึก
‫มาดูกันว่ามันทำอะไรได้บ้าง
‫เรามีค่าเท่ากันทุกประการ
‫อันที่จริง เรามาสาธิตเรื่องนี้กัน
‫เราต้องการภาพและอาจถึงสองเท่านั้น
‫เช่นเดียวกับค่าคงที่ TFA
‫ความแตกต่างเพียงอย่างเดียวที่นี่คือตอนนี้ เราได้มันในเทนเซอร์ของรูปร่างเป็น 353 และตอนนี้ มันเป็นรูปร่างถึง
‫353
‫เราได้จัดทำดัชนีให้แสดงเพียงสองรายการเท่านั้น
‫แต่ถ้าคุณเห็นว่านี่คืออาร์เรย์จำนวนน้อยและนี่คือเทนเซอร์
‫ข้อแตกต่างเพียงอย่างเดียวที่นี่คือ เทนเซอร์นี้มีการไหลแบบเข้มข้น และตอนนี้สามารถทำงานบน CPU ได้ ดังนั้นการคำนวณที่เร็วขึ้นมาก
‫ดังนั้น GPU ของเราสามารถค้นหารูปแบบในตัวเลขเหล่านี้ได้เร็วกว่าที่ CPU ของเรา ซึ่งอยู่ในเครื่องปัจจุบันของฉัน
‫นั่นคือ MacBook Pro ของฉัน จะสามารถค้นหารูปแบบในสิ่งเหล่านี้ได้
‫ไปที่นี่กันเถอะ
‫เปลี่ยนภาพให้เป็นเทนเซอร์
‫ตอนนี้เราได้เห็นพื้นฐานเล็กๆ น้อยๆ เบื้องหลังว่ารูปภาพประกอบด้วยข้อมูลประเภทใด
‫ค่าพิกเซล
‫สีแดง สีเขียว หรือสีน้ำเงินระหว่างศูนย์ถึง 255
‫เราได้เห็นแล้วว่ารูปภาพมีลักษณะเป็นอย่างไรในผู้ตัดสิน a และเราเห็นว่ารูปภาพมีลักษณะอย่างไรในเทนเซอร์
‫ในที่สุดก็มาถึงหน้าที่ของเรา ซึ่งต้องทำห้าขั้นตอนเหล่านี้
‫ดังนั้นสิ่งที่เราอาจทำเพื่อบันทึกวิดีโอนี้ไม่ให้ยาวเกินไป
‫ฉันรู้ว่าฉันบอกว่าเราจะลองดูฟังก์ชันการเขียน แต่ฉันคิดว่ามันดีที่จะสร้างสัญชาตญาณก่อนที่เราจะเขียนฟังก์ชันนี้จริงๆ
‫เราจะสร้างฟังก์ชันนี้ในวิดีโอหน้า
‫ในระหว่างนี้ ให้ลองใส่ภาพของคุณเองที่นี่
‫คุณสามารถเลือกหมายเลขชื่อไฟล์ใด ๆ จากนั้นลองเล่นกับค่าต่าง ๆ แล้วลองเปลี่ยนเป็นเทนเซอร์