Hướng dẫn what is epoch in python? - kỷ nguyên trong python là gì?

Như đã nêu cho thời gian.time () Phương thức:

Phương pháp này trả về thời gian như một số điểm nổi được biểu thị bằng giây kể từ thời đại, trong UTC.

Như đã nêu cho thời gian.ctime ():

Phương thức ctime () chuyển đổi một thời gian được biểu thị bằng giây kể từ kỷ nguyên thành một chuỗi đại diện cho thời gian cục bộ. Nếu Secs không được cung cấp hoặc không có, thời gian hiện tại được trả lại bởi Time () được sử dụng. Hàm này tương đương với ASCTIME (LocalTime (SECS)). Thông tin địa phương không được sử dụng bởi ctime ().

Do đó, đầu ra của mã sau sẽ là một cái gì đó như thế này:

print "time.ctime() : %s" % time.ctime(time.time())

sẽ là một cái gì đó như thế này:

time.ctime() : Tue Feb 17 10:00:18 2009

Thời gian Epoch là thời gian UNIX, giá trị số nguyên tính bằng giây kể từ 1.1.1970.

Cập nhật lần cuối vào ngày 15 tháng 8 năm 2022

Độ dốc ngẫu nhiên là một thuật toán học tập có một số hyperparamet.

Hai hyperparamet thường gây nhầm lẫn cho người mới bắt đầu là kích thước hàng loạt và số lượng kỷ nguyên. Cả hai đều là giá trị số nguyên và dường như làm điều tương tự.

Trong bài đăng này, bạn sẽ khám phá sự khác biệt giữa các đợt và kỷ nguyên ở độ dốc ngẫu nhiên.

Sau khi đọc bài đăng này, bạn sẽ biết:

  • Stochastic Gradient Descent là một thuật toán học tập lặp đi lặp lại sử dụng bộ dữ liệu đào tạo để cập nhật mô hình.
  • Kích thước lô là một siêu đồng hồ đo độ dốc, kiểm soát số lượng mẫu đào tạo để hoạt động trước khi các tham số bên trong mô hình được cập nhật.
  • Số lượng kỷ nguyên là một siêu đồng phân của độ dốc gốc kiểm soát số lượng đường chuyền hoàn chỉnh thông qua bộ dữ liệu đào tạo.

Kick bắt đầu dự án của bạn với cuốn sách mới của tôi Deep Learning với Python, bao gồm các hướng dẫn từng bước và các tệp mã nguồn Python cho tất cả các ví dụ. with my new book Deep Learning With Python, including step-by-step tutorials and the Python source code files for all examples.

Bắt đầu nào.

Hướng dẫn what is epoch in python? - kỷ nguyên trong python là gì?

Sự khác biệt giữa một đợt và một kỷ nguyên trong mạng lưới thần kinh là gì? Ảnh của Graham Cook, một số quyền được bảo lưu.
Photo by Graham Cook, some rights reserved.

Tổng quan

Bài này được chia thành năm phần; họ đang:

  1. Độ dốc ngẫu nhiên đi xuống
  2. Mẫu là gì?
  3. Một lô là gì?
  4. Một kỷ nguyên là gì?
  5. Sự khác biệt giữa lô và kỷ nguyên là gì?

Độ dốc ngẫu nhiên đi xuống

Mẫu là gì?

Một lô là gì?

Một kỷ nguyên là gì?

Sự khác biệt giữa lô và kỷ nguyên là gì?

Tóm tắt về độ dốc của gradient, hay SGD, là một thuật toán tối ưu hóa được sử dụng để đào tạo các thuật toán học máy, đáng chú ý nhất là các mạng thần kinh nhân tạo được sử dụng trong học tập sâu.

Công việc của thuật toán là tìm một tập hợp các tham số mô hình nội bộ hoạt động tốt so với một số biện pháp hiệu suất như mất logarit hoặc lỗi bình phương trung bình.

Tối ưu hóa là một loại quá trình tìm kiếm và bạn có thể nghĩ về tìm kiếm này là học tập. Thuật toán tối ưu hóa được gọi là độ dốc độ dốc, trong đó, độ dốc của người dùng đề cập đến việc tính toán độ dốc lỗi hoặc độ dốc của lỗi và dòng dõi của Hồi giáo đề cập đến việc di chuyển xuống dốc đó theo một mức độ lỗi tối thiểu.

Thuật toán là lặp đi lặp lại. Điều này có nghĩa là quá trình tìm kiếm xảy ra trên nhiều bước riêng biệt, mỗi bước hy vọng sẽ cải thiện một chút các tham số mô hình.

  • Mỗi bước liên quan đến việc sử dụng mô hình với bộ tham số bên trong hiện tại để đưa ra dự đoán trên một số mẫu, so sánh các dự đoán với kết quả thực sự dự kiến, tính toán lỗi và sử dụng lỗi để cập nhật các tham số mô hình nội bộ.

Mẫu là gì?

Một lô là gì?

Một kỷ nguyên là gì?

Sự khác biệt giữa lô và kỷ nguyên là gì?

Tóm tắt về độ dốc của gradient, hay SGD, là một thuật toán tối ưu hóa được sử dụng để đào tạo các thuật toán học máy, đáng chú ý nhất là các mạng thần kinh nhân tạo được sử dụng trong học tập sâu.

Một lô là gì?

Một kỷ nguyên là gì?

Sự khác biệt giữa lô và kỷ nguyên là gì?

Tóm tắt về độ dốc của gradient, hay SGD, là một thuật toán tối ưu hóa được sử dụng để đào tạo các thuật toán học máy, đáng chú ý nhất là các mạng thần kinh nhân tạo được sử dụng trong học tập sâu.

Công việc của thuật toán là tìm một tập hợp các tham số mô hình nội bộ hoạt động tốt so với một số biện pháp hiệu suất như mất logarit hoặc lỗi bình phương trung bình.

  • Tối ưu hóa là một loại quá trình tìm kiếm và bạn có thể nghĩ về tìm kiếm này là học tập. Thuật toán tối ưu hóa được gọi là độ dốc độ dốc, trong đó, độ dốc của người dùng đề cập đến việc tính toán độ dốc lỗi hoặc độ dốc của lỗi và dòng dõi của Hồi giáo đề cập đến việc di chuyển xuống dốc đó theo một mức độ lỗi tối thiểu.. Batch Size = Size of Training Set
  • Thuật toán là lặp đi lặp lại. Điều này có nghĩa là quá trình tìm kiếm xảy ra trên nhiều bước riêng biệt, mỗi bước hy vọng sẽ cải thiện một chút các tham số mô hình.. Batch Size = 1
  • Mỗi bước liên quan đến việc sử dụng mô hình với bộ tham số bên trong hiện tại để đưa ra dự đoán trên một số mẫu, so sánh các dự đoán với kết quả thực sự dự kiến, tính toán lỗi và sử dụng lỗi để cập nhật các tham số mô hình nội bộ.. 1 < Batch Size < Size of Training Set

Quy trình cập nhật này là khác nhau đối với các thuật toán khác nhau, nhưng trong trường hợp mạng thần kinh nhân tạo, thuật toán cập nhật backpropagation được sử dụng.

Trước khi chúng tôi đi sâu vào các đợt và kỷ nguyên, hãy để Lôi xem xét những gì chúng tôi muốn nói.

Tìm hiểu thêm về giảm độ dốc ở đây:

Thay phiên, bạn có thể xóa một số mẫu khỏi bộ dữ liệu hoặc thay đổi kích thước lô sao cho số lượng mẫu trong bộ dữ liệu được chia đều cho kích thước lô.

Để biết thêm về sự khác biệt giữa các biến thể của dòng dõi độ dốc này, hãy xem bài viết:

  • Giới thiệu nhẹ nhàng về giảm độ dốc mini và cách định cấu hình kích thước hàng loạt

Để biết thêm về hiệu ứng của quy mô lô trong quá trình học tập, hãy xem bài viết:

  • Cách kiểm soát tốc độ và sự ổn định của đào tạo các mạng lưới thần kinh kích thước hàng loạt

Một lô liên quan đến một bản cập nhật cho mô hình bằng cách sử dụng các mẫu; Tiếp theo, hãy để Lôi nhìn vào một kỷ nguyên.

Một kỷ nguyên là gì?

Số lượng kỷ nguyên là một siêu nhân xác định số lần mà thuật toán học tập sẽ hoạt động thông qua toàn bộ bộ dữ liệu đào tạo.

Một kỷ nguyên có nghĩa là mỗi mẫu trong bộ dữ liệu đào tạo đã có cơ hội cập nhật các tham số mô hình nội bộ. Một kỷ nguyên bao gồm một hoặc nhiều lô. Ví dụ, như trên, một kỷ nguyên có một lô được gọi là thuật toán học tập độ dốc hàng loạt.

Bạn có thể nghĩ về một vòng lặp về số lượng các kỷ nguyên trong đó mỗi vòng lặp tiến hành bộ dữ liệu đào tạo. Trong vòng lặp này là một vòng lặp khác được lặp lại trên mỗi lô mẫu, trong đó một lô có số lượng mẫu được chỉ định bởi số lượng mẫu.

Số lượng kỷ nguyên theo truyền thống lớn, thường là hàng trăm hoặc hàng ngàn, cho phép thuật toán học tập chạy cho đến khi lỗi từ mô hình đã được giảm thiểu đủ. Bạn có thể thấy các ví dụ về số lượng kỷ nguyên trong tài liệu và trong các hướng dẫn được đặt thành 10, 100, 500, 1000 và lớn hơn.

Người ta thường tạo ra các ô đường hiển thị các kỷ nguyên dọc theo trục x theo thời gian và lỗi hoặc kỹ năng của mô hình trên trục y. Những lô này đôi khi được gọi là đường cong học tập. Những lô này có thể giúp chẩn đoán xem mô hình đã học quá mức, được học hoặc phù hợp phù hợp với bộ dữ liệu đào tạo.

Để biết thêm về chẩn đoán thông qua các đường cong học tập với các mạng LSTM, xem bài đăng:

  • Giới thiệu nhẹ nhàng về các đường cong học tập để chẩn đoán hiệu suất mô hình

Trong trường hợp vẫn chưa rõ ràng, hãy để Lôi nhìn vào sự khác biệt giữa các đợt và kỷ nguyên.

Sự khác biệt giữa lô và kỷ nguyên là gì?

Kích thước lô là một số mẫu được xử lý trước khi mô hình được cập nhật.

Số lượng kỷ nguyên là số lượng vượt qua hoàn chỉnh thông qua bộ dữ liệu đào tạo.

Kích thước của một lô phải nhiều hơn hoặc bằng một và nhỏ hơn hoặc bằng số lượng mẫu trong bộ dữ liệu đào tạo.

Số lượng kỷ nguyên có thể được đặt thành một giá trị số nguyên giữa một và vô cực. Bạn có thể chạy thuật toán miễn là bạn muốn và thậm chí dừng nó bằng các tiêu chí khác ngoài số lượng kỷ nguyên cố định, chẳng hạn như thay đổi (hoặc thiếu thay đổi) trong lỗi mô hình theo thời gian.

Cả hai đều là các giá trị số nguyên và cả hai đều là hyperparamet cho thuật toán học tập, ví dụ: Các tham số cho quá trình học tập, không phải các tham số mô hình nội bộ được tìm thấy bởi quá trình học tập.

Bạn phải chỉ định kích thước hàng loạt và số lượng kỷ nguyên cho thuật toán học tập.

Không có quy tắc ma thuật nào để định cấu hình các tham số này. Bạn phải thử các giá trị khác nhau và xem những gì hoạt động tốt nhất cho vấn đề của bạn.

Ví dụ làm việc

Cuối cùng, hãy để Lừa làm cho bê tông này với một ví dụ nhỏ.

Giả sử bạn có một bộ dữ liệu với 200 mẫu (hàng dữ liệu) và bạn chọn kích thước hàng loạt là 5 và 1.000 kỷ nguyên.

Điều này có nghĩa là bộ dữ liệu sẽ được chia thành 40 lô, mỗi đợt có năm mẫu. Trọng lượng mô hình sẽ được cập nhật sau mỗi lô năm mẫu.

Điều này cũng có nghĩa là một epoch sẽ liên quan đến 40 lô hoặc 40 bản cập nhật cho mô hình.

Với 1.000 kỷ nguyên, mô hình sẽ được tiếp xúc hoặc truyền qua toàn bộ bộ dữ liệu 1.000 lần. Đó là tổng cộng 40.000 lô trong toàn bộ quá trình đào tạo.

Đọc thêm

Phần này cung cấp nhiều tài nguyên hơn về chủ đề nếu bạn đang muốn đi sâu hơn.

  • Độ dốc hạ xuống cho học máy
  • Cách kiểm soát tốc độ và sự ổn định của đào tạo các mạng lưới thần kinh kích thước hàng loạt
  • Giới thiệu nhẹ nhàng về giảm độ dốc mini và cách định cấu hình kích thước hàng loạt
  • Giới thiệu nhẹ nhàng về các đường cong học tập để chẩn đoán hiệu suất mô hình
  • Trong trường hợp vẫn chưa rõ ràng, hãy để Lôi nhìn vào sự khác biệt giữa các đợt và kỷ nguyên.
  • Sự khác biệt giữa lô và kỷ nguyên là gì?

Kích thước lô là một số mẫu được xử lý trước khi mô hình được cập nhật.

Số lượng kỷ nguyên là số lượng vượt qua hoàn chỉnh thông qua bộ dữ liệu đào tạo.

Kích thước của một lô phải nhiều hơn hoặc bằng một và nhỏ hơn hoặc bằng số lượng mẫu trong bộ dữ liệu đào tạo.

  • Số lượng kỷ nguyên có thể được đặt thành một giá trị số nguyên giữa một và vô cực. Bạn có thể chạy thuật toán miễn là bạn muốn và thậm chí dừng nó bằng các tiêu chí khác ngoài số lượng kỷ nguyên cố định, chẳng hạn như thay đổi (hoặc thiếu thay đổi) trong lỗi mô hình theo thời gian.
  • Cả hai đều là các giá trị số nguyên và cả hai đều là hyperparamet cho thuật toán học tập, ví dụ: Các tham số cho quá trình học tập, không phải các tham số mô hình nội bộ được tìm thấy bởi quá trình học tập.
  • Số lượng kỷ nguyên là một siêu đồng phân của độ dốc gốc kiểm soát số lượng đường chuyền hoàn chỉnh thông qua bộ dữ liệu đào tạo.

Bạn có câu hỏi nào không? Đặt câu hỏi của bạn trong các ý kiến ​​dưới đây và tôi sẽ cố gắng hết sức để trả lời.
Ask your questions in the comments below and I will do my best to answer.

Epoch được sử dụng để làm gì?

Một kỷ nguyên là khi tất cả các dữ liệu đào tạo được sử dụng cùng một lúc và được định nghĩa là tổng số lần lặp của tất cả các dữ liệu đào tạo trong một chu kỳ để đào tạo mô hình học máy. Một cách khác để xác định một kỷ nguyên là số lượng đường chuyền mà một bộ dữ liệu đào tạo mất xung quanh một thuật toán.the total number of iterations of all the training data in one cycle for training the machine learning model. Another way to define an epoch is the number of passes a training dataset takes around an algorithm.

Kỷ nguyên dữ liệu là gì?

Trong bối cảnh tính toán, một kỷ nguyên là ngày và thời gian so với các giá trị đồng hồ và dấu thời gian của máy tính được xác định.Theo truyền thống của Epoch tương ứng với 0 giờ, 0 phút và 0 giây (00:00:00) thời gian phổ biến (UTC) phối hợp vào một ngày cụ thể, thay đổi từ hệ thống này sang hệ thống khác.the date and time relative to which a computer's clock and timestamp values are determined. The epoch traditionally corresponds to 0 hours, 0 minutes, and 0 seconds (00:00:00) Coordinated Universal Time (UTC) on a specific date, which varies from system to system.

Một kỷ nguyên trong mạng lưới thần kinh là gì?

Kỷ nguyên.Một kỷ nguyên là khi toàn bộ bộ dữ liệu được chuyển về phía trước và lùi qua mạng thần kinh chỉ một lần.Vì một kỷ nguyên quá lớn để cung cấp cho máy tính cùng một lúc, chúng tôi chia nó thành một số lô nhỏ hơn.when an ENTIRE dataset is passed forward and backward through the neural network only ONCE. Since one epoch is too big to feed to the computer at once we divide it in several smaller batches.

Kích thước kỷ nguyên và lô là gì?

Kích thước lô là một số mẫu được xử lý trước khi mô hình được cập nhật.Số lượng kỷ nguyên là số lượng vượt qua hoàn chỉnh thông qua bộ dữ liệu đào tạo.Kích thước của một lô phải nhiều hơn hoặc bằng một và nhỏ hơn hoặc bằng số lượng mẫu trong bộ dữ liệu đào tạo.