Menu
×

Được chứng nhận

Ghi lại kiến ​​thức của bạn

Đăng nhập Đăng ký

Tạo Tài khoản Example.com.vn miễn phí để cải thiện trải nghiệm học tập của bạn

Người tìm đường và việc học của tôi

Theo dõi tiến độ học tập của bạn tại Example.com.vn và thu thập phần thưởng

Nâng cấp

Trở thành người dùng PLUS và mở khóa các tính năng mạnh mẽ (không có quảng cáo, lưu trữ, hỗ trợ, ..)

Bắt đầu từ đâu

Bạn không chắc chắn muốn bắt đầu từ đâu? Đi theo con đường được hướng dẫn của chúng tôi

Trình chỉnh sửa mã (Dùng thử)

Với trình chỉnh sửa mã trực tuyến của chúng tôi, bạn có thể chỉnh sửa mã và xem kết quả trong trình duyệt của mình

Video

Tìm hiểu những điều cơ bản về HTML qua video hướng dẫn thú vị và hấp dẫn

Mẫu

Chúng tôi đã tạo một loạt mẫu trang web đáp ứng mà bạn có thể sử dụng - miễn phí!

Web hosting

Lưu trữ trang web của riêng bạn và chia sẻ nó với mọi người với Example.com.vn Spaces

Tạo một máy chủ

Tạo máy chủ của riêng bạn bằng Python, PHP, React.js, Node.js, Java, C#, v.v.

Làm thế nào để

Bộ sưu tập lớn các đoạn mã cho HTML, CSS và JavaScript

Khung CSS

Xây dựng các trang web nhanh và phản hồi nhanh bằng cách sử dụng khung W3.CSS miễn phí của chúng tôi

Thống kê trình duyệt

Đọc xu hướng dài hạn của việc sử dụng trình duyệt

Tốc độ gõ

Kiểm tra tốc độ đánh máy của bạn

Đào tạo AWS

Tìm hiểu dịch vụ web của Amazon

Bộ chọn màu

Sử dụng công cụ chọn màu của chúng tôi để tìm các màu RGB, HEX và HSL khác nhau. Bánh xe màu hình tròn thể hiện sự chuyển màu trong quang phổ

Trò chơi mã

Trò chơi mã hóa W3Schools! Giúp linh miêu thu thập nón thông Logo Lynx

Đặt mục tiêu

Nhận hành trình học tập được cá nhân hóa dựa trên các kỹ năng và mục tiêu hiện tại của bạn

Bản tin

Tham gia bản tin của chúng tôi và có quyền truy cập vào nội dung độc quyền mỗi tháng

Việc làm

Thuê những tài năng công nghệ hàng đầu. Hợp lý hóa quy trình tuyển dụng của bạn để có đội ngũ phù hợp hoàn hảo

Lớp học

Hãy liên hệ để sử dụng Example.com.vn Plus và các chứng chỉ với tư cách là một tổ chức giáo dục

×
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP CÁCH W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS AN NINH MẠNG DỮ LIỆU KHOA HỌC

Học máy

Học tập là vòng lặp

Một mô hình ML được huấn luyện bằng cách lặp lại dữ liệu nhiều lần.

Đối với mỗi lần lặp, Giá trị Trọng số được điều chỉnh.

Quá trình đào tạo hoàn tất khi các lần lặp lại không thể Giảm chi phí .

Huấn luyện tôi để tìm ra dòng phù hợp nhất:

Hãy tự mình thử »


Xuống dốc

gradient Descent là một thuật toán phổ biến để giải quyết các vấn đề về AI.

Mô hình hồi quy tuyến tính đơn giản có thể được sử dụng để chứng minh độ dốc giảm dần.

Mục tiêu của hồi quy tuyến tính là khớp đồ thị tuyến tính với tập hợp các điểm (x, y). Điều này có thể được giải quyết bằng một công thức toán học. Nhưng Thuật toán học máy cũng có thể giải quyết được vấn đề này.

Đây là những gì ví dụ trên làm.

Nó bắt đầu với một biểu đồ phân tán và một mô hình tuyến tính (y = wx + b).

Sau đó, nó huấn luyện mô hình để tìm ra một đường phù hợp với cốt truyện. Điều này được thực hiện bằng cách thay đổi trọng lượng (độ dốc) và độ lệch (điểm chặn) của đường.

Dưới đây là mã dành cho Đối tượng huấn luyện viên có thể giải quyết vấn đề này (và nhiều vấn đề khác).


Đối tượng huấn luyện viên

Tạo một đối tượng Trainer có thể nhận bất kỳ số lượng giá trị (x,y) nào trong hai mảng (xArr,yArr).

Đặt trọng số thành 0 và độ lệch thành 1.

Một hằng số học (learnc) phải được thiết lập và một biến chi phí phải được xác định:

Ví dụ

function Trainer(xArray, yArray) {
  this.xArr = xArray;
  this.yArr = yArray;
  this.points = this.xArr.length;
  this.learnc = 0.00001;
  this.weight = 0;
  this.bias = 1;
  this.cost;


Chức năng ước lượng

Một cách tiêu chuẩn để giải quyết vấn đề hồi quy là sử dụng "Hàm chi phí" để đo lường mức độ tốt của giải pháp.

Hàm này sử dụng trọng số và độ lệch từ mô hình (y = wx + b) và trả về lỗi, dựa trên mức độ phù hợp của đường thẳng với biểu đồ.

Cách tính lỗi này là lặp qua tất cả các điểm (x, y) trong biểu đồ và tính tổng khoảng cách bình phương giữa giá trị y của mỗi điểm và đường thẳng.

Cách thông thường nhất là bình phương các khoảng cách (để đảm bảo các giá trị dương) và làm cho hàm sai số khả vi.

this.costError = function() {
  total = 0;
  for (let i = 0; i < this.points; i++) {
    total += (this.yArr[i] - (this.weight * this.xArr[i] + this.bias)) **2;
  }
  return total / this.points;
}

Tên gọi khác của Hàm chi phíHàm lỗi .

Công thức được sử dụng trong hàm thực sự là thế này:

Công thức
  • E là lỗi (chi phí)
  • N là tổng số quan sát (điểm)
  • y là giá trị (nhãn) của mỗi quan sát
  • x là giá trị (đặc điểm) của mỗi quan sát
  • m là độ dốc (trọng lượng)
  • b là đánh chặn (thiên vị)
  • mx + b là dự đoán
  • 1/N * N∑1 là giá trị trung bình bình phương

Chức năng tàu hỏa

Bây giờ chúng ta sẽ chạy giảm dần độ dốc.

Thuật toán giảm độ dốc sẽ đưa hàm chi phí về phía đường tốt nhất.

Mỗi lần lặp lại sẽ cập nhật cả m và b về một dòng có chi phí (lỗi) thấp hơn.

Để làm điều đó, chúng tôi thêm một hàm train lặp lại tất cả dữ liệu nhiều lần:

this.train = function(iter) {
  for (let i = 0; i < iter; i++) {
    this.updateWeights();
  }
  this.cost = this.costError();
}

Chức năng cập nhật trọng số

Hàm train ở trên sẽ cập nhật trọng số và độ lệch trong mỗi lần lặp.

Hướng di chuyển được tính bằng hai đạo hàm riêng:

this.updateWeights = function() {
  let wx;
  let w_deriv = 0;
  let b_deriv = 0;
  for (let i = 0; i < this.points; i++) {
    wx = this.yArr[i] - (this.weight * this.xArr[i] + this.bias);
    w_deriv += -2 * wx * this.xArr[i];
    b_deriv += -2 * wx;
  }
  this.weight -= (w_deriv / this.points) * this.learnc;
  this.bias -= (b_deriv / this.points) * this.learnc;
}

Tạo thư viện của riêng bạn

Mã thư viện

function Trainer(xArray, yArray) {
  this.xArr = xArray;
  this.yArr = yArray;
  this.points = this.xArr.length;
  this.learnc = 0.000001;
  this.weight = 0;
  this.bias = 1;
  this.cost;

// Cost Function
this.costError = function() {
  total = 0;
  for (let i = 0; i < this.points; i++) {
    total += (this.yArr[i] - (this.weight * this.xArr[i] + this.bias)) **2;
  }
  return total / this.points;
}

// Train Function
this.train = function(iter) {
  for (let i = 0; i < iter; i++) {
    this.updateWeights();
  }
  this.cost = this.costError();
}

// Update Weights Function
this.updateWeights = function() {
  let wx;
  let w_deriv = 0;
  let b_deriv = 0;
  for (let i = 0; i < this.points; i++) {
    wx = this.yArr[i] - (this.weight * this.xArr[i] + this.bias);
    w_deriv += -2 * wx * this.xArr[i];
    b_deriv += -2 * wx;
  }
  this.weight -= (w_deriv / this.points) * this.learnc;
  this.bias -= (b_deriv / this.points) * this.learnc;
}

} // End Trainer Object

Bây giờ bạn có thể đưa thư viện vào HTML:

<script src="myailib.js"></script>

Hãy tự mình thử »


×

Liên hệ bán hàng

Nếu bạn muốn sử dụng dịch vụ của Example.com.vn với tư cách là một tổ chức giáo dục, nhóm hoặc doanh nghiệp, hãy gửi email cho chúng tôi:
[email được bảo vệ]

Báo cáo lỗi

Nếu bạn muốn báo cáo lỗi hoặc nếu bạn muốn đưa ra đề xuất, hãy gửi email cho chúng tôi:
[email được bảo vệ]

Example.com.vn được tối ưu hóa cho việc học tập và đào tạo. Các ví dụ có thể được đơn giản hóa để cải thiện khả năng đọc và học. Các hướng dẫn, tài liệu tham khảo và ví dụ liên tục được xem xét để tránh sai sót, nhưng chúng tôi không thể đảm bảo tính chính xác hoàn toàn của mọi nội dung. Trong khi sử dụng W3Schools, bạn đồng ý đã đọc và chấp nhận các điều khoản sử dụng , chính sách cookie và quyền riêng tư của chúng tôi.

Bản quyền 1999-2024 của Refsnes Data. Đã đăng ký Bản quyền. Example.com.vn được cung cấp bởi W3.CSS .