‫Rất tốt.
‫Bây giờ chúng ta có một chức năng trợ giúp nhỏ không chỉ trả về cho chúng ta hình ảnh của chúng ta ở dạng thì, chúng ta nhận được các
‫quy trình, hình ảnh cho chúng ta, mà nó còn trả về nhãn để chúng ta có thể lấy lại nó ở dạng tuple.
‫Vì vậy, hãy sử dụng nó để viết một hàm khác sẽ biến dữ liệu của chúng ta, tất cả dữ liệu của chúng ta,
‫bởi vì điều này chỉ thực hiện một mẫu.
‫Chúng tôi cần một cách để biến tất cả dữ liệu của mình để X và Y, dữ liệu và nhãn của chúng tôi thành các lô có kích thước.
‫32.
‫Được rồi, bây giờ chúng ta phải viết ra.
‫Hãy nhớ rằng chúng tôi đang cố gắng giao tiếp với bản thân của chúng tôi ở đây trong sổ ghi chép một cách để biến dữ liệu của chúng tôi thành
‫các dãy thì.
‫Và chúng tôi đi đến đây trong biểu mẫu.
‫Nhãn hình ảnh.
‫Hãy tạo một hàm để biến tất cả dữ liệu của chúng ta.
‫X và Y thành lô.
‫Được rồi.
‫Tuyệt vời.
‫Bây giờ, một lần nữa, nếu bạn đang tự hỏi tất cả những thứ này đến từ đâu, thì một nơi tuyệt vời cho bất kỳ loại tải dữ
‫liệu nào là đọc qua tài liệu.
‫Tôi biết đôi khi nó có thể hơi nhàm chán, nhưng hãy tin tôi, đọc qua ngay cả khi bạn không hiểu lần
‫đầu tiên.
‫Tôi đã không hiểu lần đầu tiên.
‫Đọc qua nó.
‫Hãy thử nó ra.
‫Hãy thử lại và xem bạn đi như thế nào.
‫Điều này sẽ xảy ra.
‫Một con chó lớn của một chức năng.
‫Ồ, điều đó thật phù hợp vì chúng tôi đang nghiên cứu khả năng nhìn của chó, nhưng nó sẽ giúp chúng tôi tiết
‫kiệm rất nhiều thời gian sau này.
‫Vì vậy, chúng ta hãy làm điều đó.
‫Vì vậy, chúng ta cần xác định kích thước lô.
‫Vì vậy, 32 là một khởi đầu tốt.
‫Hãy nhớ TensorFlow mặc định là 32 rất nhiều.
‫Vì vậy, nếu bạn không đặt nó ở đâu đó, nó có thể sẽ mặc định là 32.
‫Nhưng dù sao chúng ta cũng sẽ định nghĩa nó.
‫Vì vậy, hãy tạo một hàm để biến dữ liệu thành các lô, và bây giờ chúng ta sẽ cùng nhau viết qua
‫hàm này.
‫Và nó sẽ thực hiện một số điều nhỏ khác nhau tùy thuộc vào việc chúng ta muốn một lô dữ liệu
‫đào tạo, một lô dữ liệu xác thực hay một lô dữ liệu thử nghiệm.
‫Bởi vì hãy nhớ rằng, đây là ba bộ của chúng tôi ở đó.
‫Vì vậy, đây là ba bộ của chúng tôi.
‫Vì vậy, chúng tôi đã có một bộ đào tạo.
‫Chúng tôi sẽ biến nó thành một đợt đào tạo, một đợt xác nhận và một đợt thử nghiệm.
‫Được rồi.
‫Vì vậy, chúng tôi muốn def tạo các lô dữ liệu.
‫Chúng tôi muốn nó có X và Y.
‫Và thực sự tại sao không thể là không.
‫Bây giờ tôi muốn bạn suy nghĩ về lý do tại sao.
‫Tại sao có thể là không.
‫Vì sao là nhãn của chúng ta?
‫Điều này có lẽ sẽ có ý nghĩa trong một chút.
‫Nhưng hãy nghĩ xem tại sao chúng ta có thể muốn tạo một lô dữ liệu không có nhãn?
‫Dữ liệu hợp lệ bằng false và dữ liệu thử nghiệm bằng false.
‫Và chúng ta sẽ để lại cho mình một chuỗi tài liệu nhỏ ở đây.
‫Tôi từng có một đồng nghiệp tên là Ron và anh ấy đã nói với tôi một kỹ thuật gọi là gài cao su.
‫Anh ấy là lập trình viên giỏi hơn tôi rất nhiều và anh ấy nói, Nếu bạn đang gặp khó khăn.
‫Tìm ra cách thực hiện điều gì đó trong mã, viết nó ra bằng ngôn ngữ trước tiên hoặc tự nói điều đó với chính mình bằng ngôn
‫ngữ như thể bạn đang nói chuyện với một con vịt cao su.
‫Và vịt cao su không hiểu tiếng Anh cho lắm, vì vậy bạn phải nói thật rõ ràng.
‫Đó là một mẹo tuyệt vời từ Ron.
‫Cảm ơn bạn, Ron.
‫Vì vậy, hàm này tạo ra các lô dữ liệu từ hình ảnh X và gắn nhãn cho các cặp hình ảnh y.
‫Nó xáo trộn dữ liệu nếu đó là dữ liệu đào tạo, vì vậy hãy trộn dữ liệu xung quanh bởi vì nếu có một số thứ tự vốn
‫có trong tệp đào tạo mà chúng tôi đã tải xuống, có lẽ không phải vì chúng trông khá lộn xộn.
‫Chúng tôi không muốn người mẫu của chúng tôi nhớ thứ tự đó.
‫Chúng tôi muốn nó có khả năng thích ứng tốt nhất có thể bất kể thứ tự và hình ảnh nào đi kèm.
‫Nhưng vì vậy nếu đó là dữ liệu huấn luyện xáo trộn nhưng không xáo trộn nếu đó là dữ liệu xác thực.
‫Bây giờ tôi muốn bạn suy nghĩ về lý do tại sao nó có thể không xáo trộn nếu đó là dữ liệu xác thực.
‫Đừng lo lắng, chúng tôi sẽ đề cập đến vấn đề đó, nhưng hãy nghĩ về nó trong thời gian chờ đợi.
‫Cũng chấp nhận dữ liệu thử nghiệm làm đầu vào.
‫Bây giờ đây là lý do tại sao.
‫Tại sao có thể là không.
‫Tất nhiên, vì dữ liệu thử nghiệm không có nhãn.
‫Hiện nay.
‫Những gì chúng ta muốn làm là xây dựng một chức năng làm điều tương tự nhưng có một số mệnh đề if hoặc mệnh đề elif, nếu đó
‫là dữ liệu hợp lệ hoặc dữ liệu kiểm tra.
‫Vì vậy, chúng tôi biết những gì chúng tôi muốn làm.
‫Và chúng tôi có một số điều kiện ở đây nếu đó là dữ liệu hợp lệ hoặc thử nghiệm.
‫Vì vậy, hãy bắt đầu với dữ liệu thử nghiệm vì tôi nghĩ đó là số lượng ít nhất.
‫Vì vậy, nếu dữ liệu là một tập dữ liệu thử nghiệm.
‫Chúng tôi có thể không.
‫Tôi sắp viết, chắc chắn có nhãn mà chúng tôi biết rằng chúng tôi không có nhãn nếu đó là tập dữ liệu thử
‫nghiệm.
‫Vì vậy, chúng tôi sẽ đi nếu dữ liệu thử nghiệm.
‫In.
‫Hãy tự cho mình một chút, một chút ngẩng cao đầu.
‫Tôi thích tự mình ngẩng cao đầu một chút.
‫Chuyện gì đang xảy ra vậy?
‫Việc tạo lô dữ liệu thử nghiệm chỉ để đảm bảo rằng sau này, có thể chúng tôi đang tạo một số lô dữ liệu và
‫chúng tôi đã vô tình chuyển một tham số sai để kiểm tra dữ liệu và kết quả là nó sẽ làm điều đó khác với dữ
‫liệu thử nghiệm.
‫Chúng tôi không muốn điều đó.
‫Chúng tôi muốn biết rằng nó đang thực hiện các lô thử nghiệm.
‫Vì vậy, dữ liệu bằng tập dữ liệu dữ liệu TFTP.
‫Vì vậy, đây là mô-đun trong dữ liệu TensorFlow.
‫Về cơ bản, chúng tôi đang tạo một tập dữ liệu hàng loạt và chúng tôi sẽ đi đến đây là một bộ dữ liệu nhỏ thú vị
‫ở đây từ các lát tensor.
‫Vì vậy, nó tạo ra một tập dữ liệu, a. k. một. chỉ là một tập dữ liệu TensorFlow có các phần tử là các phần của các thì đã cho.
‫Vì vậy, về cơ bản những gì điều này nói là chuyển cho tôi một số thì và tôi sẽ tạo một tập dữ liệu từ đó.
‫Tôi biết hơi khó hiểu, nhưng đây chỉ là cách nó được thực hiện trong hằng số TensorFlow tf x.
‫Vì vậy, về cơ bản những gì điều này nói là tôi sẽ tạo một tập dữ liệu TensorFlow.
‫Từ những lát mỏng nhất.
‫X và bởi vì chúng ta chuyển X thành hằng số T, nó biến X thành một tensor.
‫Vì vậy, đây chỉ là đường dẫn tệp.
‫Không nhãn hiệu.
‫Được chứ.
‫Và bây giờ dữ liệu trở lại.
‫Đây là nơi chúng tôi biến tập dữ liệu TensorFlow của mình, bởi vì ngay bây giờ điều này sẽ biến tất cả X thành một tập dữ
‫liệu.
‫Chúng ta cần chuyển nó thành kích thước lô là 32.
‫Vì vậy, định dạng dữ liệu bằng.
‫Chúng ta cần xử lý hình ảnh.
‫Và chúng ta cần chuyển nó thành kích thước lô hàng loạt.
‫Ái chà.
‫Rất nhiều thứ đang diễn ra ở đây.
‫Daniel, chuyện gì vậy?
‫Chà, chúng ta đã nói qua dòng ở trên, nhưng điều này, tất cả những gì nó đang nói về cơ bản là lấy dữ liệu
‫này, là tập dữ liệu TensorFlow làm bằng X.
‫Đó chỉ là các tên tệp ở dạng các thì và sau đó ánh xạ chức năng hình ảnh quy trình của chúng ta.
‫Hãy xem, đây là lý do tại sao chúng tôi biến nó thành một hàm để chúng tôi có thể gọi nó là hình ảnh quá trình.
‫Nó sẽ đi qua tất cả các bước này ở đây trên tên tệp của chúng tôi.
‫Vì vậy, nó sẽ nhập chúng, biến chúng thành các thì chuẩn hóa, và sau đó biến nó thành một loạt các kích
‫thước hàng loạt.
‫Hãy đi đây.
‫Vì vậy, hàng loạt dữ liệu TensorFlow.
‫Đây là quy trình làm việc mà tôi sử dụng bất cứ khi nào tôi xem xét.
‫Một chức năng.
‫Vì vậy, nếu chúng ta quay trở lại.
‫Chúng ta bắt đầu.
‫Lô hàng.
‫Kết hợp các phần tử liên tiếp của tập dữ liệu này thành các lô.
‫Chúng ta bắt đầu.
‫Vì vậy, nếu chúng ta vượt qua phạm vi tám và chúng tôi muốn nó là một lô ba, nó sẽ
‫chia tám thành ba lô.
‫Vì vậy, đó chính xác là lý do tại sao điều này lại có trong một tab mới?
‫Đó là những gì nó sẽ làm ở đây, ngoại trừ kích thước 32.
‫Tuyệt vời.
‫Vì vậy, đó là dữ liệu thử nghiệm.
‫Bây giờ chúng ta muốn làm nếu dữ liệu là một tập dữ liệu hợp lệ, chúng ta không cần xáo trộn nó.
‫Bây giờ, tôi muốn bạn nghĩ lại, tại sao chúng ta không cần xáo trộn nó?
‫Không sao nếu bạn không hoàn toàn chắc chắn.
‫Tôi cũng đã nhận ra điều này rất nhiều lần.
‫Vì vậy, chúng tôi sẽ in một báo cáo tiến độ nhỏ ở đây và sau đó chúng tôi sẽ làm nhiều điều tương tự như thế này.
‫Chúng tôi chỉ có thể sao chép nó, nhưng chúng tôi sẽ thực hành viết nó ra.
‫Dữ liệu TFF.
‫Tập dữ liệu từ.
‫Tensor lát.
‫Bây giờ, đây là nơi.
‫Bởi vì bộ xác nhận của chúng tôi có nhãn.
‫Chúng ta sẽ chuyển cho nó một vài hằng số X và TF y.
‫Vì vậy, chỉ cần chuyển tên tệp và nhãn của chúng ta thành các thì.
‫Và chúng tôi có ở đây đường dẫn tệp.
‫Nhãn.
‫Vì vậy, bây giờ chúng ta có một tập dữ liệu TensorFlow.
‫Trong số các chậu và nhãn của tệp hình ảnh vì đó là tập dữ liệu xác thực.
‫Tập dữ liệu xác thực có các nhãn và chúng tôi sẽ biến nó thành một lô dữ liệu bằng bản đồ dữ liệu, giống hệt
‫như ở trên.
‫Xử lý hình ảnh và biến nó thành một loạt các kích thước hàng loạt.
‫Ồ.
‫Bắt đầu vui vẻ.
‫Tuyệt vời.
‫Và sau đó trả về hàng loạt dữ liệu.
‫Và cuối cùng, chúng tôi muốn nếu không có cái nào trong số này hoạt động tốt, nếu dữ liệu hợp lệ là sai và dữ liệu thử nghiệm cũng sai, thì rõ ràng
‫đó sẽ là một đợt huấn luyện.
‫Vì vậy, chúng ta sẽ tạo các lô dữ liệu đào tạo.
‫Bom, bom, bom.
‫Và đi thôi.
‫Vì vậy, nếu nó là một tập dữ liệu huấn luyện, chúng tôi muốn xáo trộn nó.
‫Đó là sự khác biệt duy nhất ở đây.
‫Vì vậy, chúng tôi muốn biến các đường dẫn và nhãn của tệp thành các thì.
‫Vì vậy, giống như chúng tôi đã thực hiện với xác thực, chúng tôi có thể sao chép nó.
‫Bây giờ, có lẽ có một cách hiệu quả hơn để viết hàm này có cùng
‫chức năng, nhưng tôi đã cố gắng viết nó theo cách khá dễ hiểu về những gì đang xảy ra.
‫X không đổi và như tôi đã nói rằng tôi có thể đã nói rằng điều đó khá dễ hiểu.
‫Nhưng nếu bạn gặp phải điều gì đó như thế này lần đầu tiên, hãy tin tôi, khi tôi làm vậy, tôi đã rất bối rối.
‫Nhưng một khi tôi đã xem qua từng bước, hãy nhớ kỹ thuật chia nhỏ một hàm của chúng tôi chứ?
‫Viết nó ra từng dòng, và sau đó kiểm tra xem nó đang làm gì ở mỗi dòng.
‫Vì vậy, chúng tôi muốn xáo trộn tên và nhãn đường dẫn trước khi ánh xạ.
‫Chúng ta sẽ đi sâu vào vấn đề này trong giây lát trước khi ánh xạ chức năng xử lý hình ảnh nhanh hơn xáo trộn hình ảnh.
‫Tôi sẽ chỉ viết mã để chúng ta có thể nói về nó.
‫Nhưng dữ liệu xáo trộn.
‫Đệm thở dài.
‫Vì vậy, kích thước bộ đệm chỉ là viết tắt của bao nhiêu biến mà chúng ta muốn xáo trộn chúng?
‫Chúng tôi muốn xáo trộn toàn bộ lô.
‫Chà, rất nhiều chuyện đang diễn ra ở đây.
‫Tất cả những gì đang nói là, này, hãy lấy dữ liệu này, là tập dữ liệu TensorFlow của dữ liệu, vì
‫vậy tên tệp và nhãn, sau đó xáo trộn nó và chúng tôi muốn trộn số lượng ví dụ.
‫Nếu chúng ta chỉ xáo trộn 100, nó sẽ lấy 100 ví dụ đầu tiên của X và Y và xáo trộn chúng.
‫Nhưng không, chúng tôi muốn xáo trộn tất cả.
‫Và lý do là, bạn có thể thấy các hướng dẫn khác xáo trộn sau khi chúng tôi chạy chức năng bản đồ mà nó hoạt động.
‫Bản đồ dữ liệu.
‫Quá trình.
‫Hình ảnh.
‫Vì vậy, nếu bạn đã xáo trộn sau khi đã xử lý hình ảnh, thì sẽ mất nhiều thời gian hơn để xáo trộn một hình ảnh đầy
‫đủ hơn là chỉ để đặt tên tệp.
‫Vì vậy, như tôi đã nói, hãy nhớ rằng, chúng tôi đang cố gắng giảm thiểu thời gian giữa các thử nghiệm.
‫Vì vậy, chúng tôi muốn thử và có được bất kỳ tốc độ nào mà chúng tôi có thể.
‫Tôi vừa nhận ra rằng chúng tôi đã mắc một sai lầm nhỏ ở đây.
‫Trong tập dữ liệu xác thực của chúng tôi bởi vì chúng tôi có.
‫Hình ảnh và nhãn.
‫Chúng ta cần lập bản đồ chức năng, lấy nhãn hình ảnh, cũng xử lý hình ảnh của chúng ta.
‫Trong khi đối với tập dữ liệu thử nghiệm của chúng tôi, vì chúng tôi không có nhãn, chúng tôi có thể chạy trực tiếp hàm hình ảnh đã
‫xử lý.
‫Vì vậy, chúng ta hãy thay thế nhãn nhận hình ảnh này và nó sẽ giống nhau.
‫Cho chúng ta.
‫Tập dữ liệu đào tạo, do đó, có được nhãn hình ảnh tuyệt vời.
‫Và nó có thể chỉ viết ra điều này đang làm với một chút bình luận nhỏ.
‫Vì vậy, hãy tạo bộ giá trị nhãn hình ảnh.
‫Điều này cũng biến đường dẫn hình ảnh thành một hình ảnh được xử lý trước.
‫Vì vậy, nếu bạn có thể.
‫Xáo trộn dữ liệu của bạn khi dữ liệu ở định dạng nhỏ nhất, a. k. a trong trường hợp của chúng tôi tên tệp thay vì hình ảnh đầy đủ.
‫Và bây giờ cuối cùng, chúng tôi muốn chuyển dữ liệu đào tạo thành các lô.
‫Vì vậy, lô dữ liệu bằng lô dữ liệu.
‫Bash thở dài.
‫Và sau đó chúng ta sẽ đi ra đây.
‫Trở về.
‫Dữ liệu cơ sở.
‫Wolf, đó là một chức năng nhỏ.
‫Nhưng như tôi đã nói, điều này sẽ giúp chúng ta tiết kiệm rất nhiều thời gian sau này và bạn sẽ thấy điều đó.
‫Hãy nhớ rằng, đây là loại phong cách làm việc phát triển mà tôi muốn bạn bắt đầu nghĩ đến.
‫Này, tôi có định sử dụng lại một số chức năng sau này không?
‫Nếu có, tôi sẽ viết nó thành một hàm.
‫Và bạn có thể đã biết điều đó bởi vì bạn là một nhà phát triển thông minh hơn tôi rất nhiều.
‫Tôi đã từng bối rối và chỉ viết mọi thứ từng dòng một.
‫Bây giờ hãy kiểm tra chức năng của chúng ta bằng cách tạo các lô dữ liệu đào tạo và xác thực.
‫Vì vậy, chúng tôi sẽ đi dữ liệu tàu hỏa.
‫Chúng ta sẽ sử dụng hàm big dog ở trên.
‫Chúng ta sẽ chuyển nó X train cho dữ liệu đào tạo và Y train cho dữ liệu xác thực và đó là tất cả những gì chúng
‫ta cần.
‫Và sau đó đối với dữ liệu VO, chúng ta có thể tạo các lô dữ liệu.
‫X Val.
‫Y Val là nó có phải là dữ liệu hợp lệ không?
‫Bằng đúng.
‫Và bây giờ, các ngón tay đan chéo nhau.
‫Chúng ta nên xem.
‫Thông báo tiến độ in của chúng tôi.
‫Đúng.
‫Thật là tuyệt vời.
‫Được chứ.
‫Bây giờ, hãy kiểm tra các thuộc tính khác nhau của các kết quả khớp dữ liệu của chúng tôi.
‫Vì vậy, nếu chúng ta thử dữ liệu, nó hiện đang ở định dạng của một lô dữ liệu, đó là cách TensorFlow được ưa thích hơn để xử
‫lý mọi thứ.
‫Chúng ta bắt đầu.
‫Đây là dữ liệu đào tạo của chúng tôi, dữ liệu đầu tiên ở đây.
‫Nó nói gì vậy?
‫Vậy là bạn đã có hình dạng.
‫Không có.
‫Hai, hai, bốn, hai, hai, bốn, ba.
‫Đây là hình ảnh của chúng tôi.
‫Không có kích thước hàng loạt.
‫Tôi biết chúng tôi đã nói nó với 32, nhưng nó sẽ không có gì vì kích thước lô, hãy nhớ, rất linh hoạt.
‫Vì vậy, đây chỉ là hình ảnh của chúng tôi hiện có trong lô 32 và chúng có hình dạng hai, hai, bốn, hai,
‫hai, bốn, ba.
‫Chiều cao, chiều rộng, kênh màu loại hai, float 32.
‫Và chúng tôi có một bộ sưu tập ở đây của nhãn của chúng tôi.
‫Vì vậy, đây là các cặp nhãn hình ảnh ở dạng các thì và các nhãn của chúng tôi cũng có hình dạng không có lô vì
‫kích thước lô rất linh hoạt.
‫Và chúng có thứ nguyên là 120, đó là bởi vì nếu chúng ta đi, tại sao lại bằng không?
‫Có 120 giống chó khác nhau và sau đó nó lại giống nhau đối với dữ liệu xác thực.
‫Xinh đẹp.
‫Vì vậy, đó là một trong những khá sâu.
‫Khi video của anh ấy kết thúc, sẽ diễn ra trong vài giây nữa, tôi sẽ quay lại và chỉ đọc qua những gì
‫đang diễn ra trong chức năng này tại đây.
‫Nếu bạn không hoàn toàn chắc chắn, tôi sẽ tìm kiếm tải một hướng dẫn xử lý dữ liệu trước của hình ảnh, hãy đọc
‫qua điều đó.
‫Và sau đó cách tốt nhất để học là thực sự viết điều này ra.
‫Chia nhỏ chức năng và cố gắng chạy từng dòng một.
‫Đó là cách tôi chia nhỏ mọi thứ cho bản thân.
‫Nhưng với cách dữ liệu của chúng tôi hiện tại, vẫn còn hơi khó hiểu nếu bạn chưa quen với khái
‫niệm lô.
‫Đó có lẽ là một khái niệm rất khó nắm bắt.
‫Hoàn toàn không sao khi không biết chuyện gì đang xảy ra ngay bây giờ.
‫Vì vậy, để giúp bản thân chúng ta hiểu, thay vì chỉ để cái gobbledygook này được in ra khi chúng ta
‫đang cố gắng kiểm tra những gì trong các lô dữ liệu của mình, hãy viết một hàm sẽ giúp chúng
‫ta hình dung những gì đang xảy ra.
‫Vì vậy, đó là những gì chúng tôi sẽ làm trong video tiếp theo.