✨Torch (học máy)

Torch (học máy)

Torch là một thư viện học máy mã nguồn mở, một framework tính toán khoa học và là một ngôn ngữ kịch bản dựa trên ngôn ngữ lập trình Lua. Nó cung cấp một lượng lớn các thuật toán về học sâu, sử dụng ngôn ngữ kịch bản LuaJIT và ngôn ngữ thực thi C được tạo ra tại IDIAP ở EPFL. Từ năm 2018, Torch không còn được phát triển nữa. Tuy vậy, PyTorch - vốn dựa trên thư viện Torch, thì đang được phát triển từ tháng 10 năm 2022.

torch

Gói cốt lõi của Torch là torch. Nó cung cấp một mảng hay tensor n chiều một cách linh hoạt, hỗ trợ các quy trình cơ bản để index, chuyển vị, truyền, thay đổi kích thước, chia sẻ kho lưu trữ và tạo bản sao (cloning). Tensor cũng hỗ trợ các phép toán như max, min, sum; phân phối thống kê như phân phối đều, phân phối chuẩn và phân phối đa thức; các phép toán BLAS như tích vô hướng, phép nhân ma trận với vector, phép nhân 2 ma trận.

Ví dụ sau đây sử dụng torch thông qua trình biên dịch REPL:

> a = torch.randn(3,4)

=a -0.2381 -0.3401 -1.7844 -0.2615 0.1411 1.6249 0.1708 0.8299 -1.0434 2.2291 1.0525 0.8465 [torch.DoubleTensor of dimension 3x4]

a[1][2] -0.34010116549482

a:narrow(1,1,2) -0.2381 -0.3401 -1.7844 -0.2615 0.1411 1.6249 0.1708 0.8299 [torch.DoubleTensor of dimension 2x4]

a:index(1, torch.LongTensor{1,2}) -0.2381 -0.3401 -1.7844 -0.2615 0.1411 1.6249 0.1708 0.8299 [torch.DoubleTensor of dimension 2x4]

a:min() -1.7844365427828

Gói torch cũng đơn giản hóa việc lập trình hướng đối tượng và tuần tự hóa bằng cách cung cấp các chức năng tiện lợi khác nhau. Hàm torch.class(classname, parentclass) có thể sử dụng để tạo (lớp) factory method. Khi hàm tạo được gọi, torch khởi tạo và lập một table dạng Lua với metatable do người dùng định nghĩa qua đó table đó trở thành một đối tượng.

Các đối tượng sử dụng torch factory cũng được tuần tự hóa, miễn là chúng không chứa tham chiếu đến các đối tượng không thể tuần tự hóa, như các coroutine dạng Lua và userdata dạng Lua. Tuy nhiên, userdata có thể tuần tự hóa nếu nằm trong một kiểu table (hay metatable) cung cấp các phương thức read()write().

nn

Gói nn được sử dụng để xây dựng các mạng neuron. Nó được chia thành các đối tượng module dùng chung một Module giao diện chung. Các module có phương thức forward()backward() cho phép chúng truyền thẳng (feedforward) và truyền ngược (backpropagate) tương ứng. Các module có thể được nối với nhau bằng cách sử dụng module hợp tử, như Sequential, ParallelConcat để tạo các biểu đồ phức tạp phù hợp. Các module đơn giản như Linear, TanhMax tạo thành các module có các thành phần cơ bản. Giao diện module này cung cấp phép vi phân gradient tự động. Sau đây là một ví dụ về trường hợp sử dụng để xây dựng một tri giác đa lớp (MLP) bằng cách sử dụng module:

> mlp = nn.Sequential() > mlp:add( nn.Linear(10, 25) ) -- 10 input, 25 unit ẩn > mlp:add( nn.Tanh() ) -- một số hàm truyền tiếp tuyến hyperbol > mlp:add( nn.Linear(25, 1) ) -- 1 output > =mlp:forward(torch.randn(10)) -0.1815 [torch.Tensor of dimension 1]

Các hàm mất mát được thực thi như các lớp con của Criterion, có giao diện tương tự như Module. Nó cũng có phương thức forward()backward() để tính toán gradient mất mát và truyền ngược. Hữu ích để đào tạo mạng neuron đối với các yêu cầu không cao cấp. Các mất mát thường được tính qua Sai số toàn phương trung bình (MSE) thực thi trong MSECriterion và entropy chéo thực thi trong ClassNLLCriterion. Dưới đây là một ví dụ về hàm Lua gọi ra để huấn luyện một module mlp khi input tensor x, tensor mục tiêu y với một biến vô hướng learningRate:

function gradUpdate(mlp, x, y, learningRate) local criterion = nn.ClassNLLCriterion() pred = mlp:forward(x) local err = criterion:forward(pred, y); mlp:zeroGradParameters(); local t = criterion:backward(pred, y); mlp:backward(x, t); mlp:updateParameters(learningRate); end

Ngoài ra, nó cũng có lớp StochasticGradient để đào tạo một mạng neuron bằng cách sử dụng thuật Giảm gradient ngẫu nhiên, mặc dù gói optim cung cấp nhiều lựa chọn hơn, như động lượng và phân rã trọng lượng chính quy hóa.

Các gói khác

Nhiều gói khác với các gói đã nêu ở trên được Torch cung cấp. Chúng được liệt kê trong cheetsheet của torch. Các gói bổ sung này cung cấp một loạt các tiện ích như tính song song, đầu vào/đầu ra không đồng bộ, xử lý ảnh, v.v. Dùng LuaRocks để cài đặt, trình quản lý gói Lua cũng được bao gồm trong Torch.

Ứng dụng

Torch được sử dụng bởi Nhóm nghiên cứu AI của Facebook, IBM, Yandex và Viện nghiên cứu Idiap. Torch cho phép sử dụng rộng rãi trên Android và iOS. Nó được sử dụng để tạo nên các phương pháp thực thi phần cứng cho luồng dữ liệu giống như mạng neuron.

Facebook đã phát hành một bộ module mở rộng dưới dạng phần mềm mã nguồn mở.

👁️ 2 | 🔗 | 💖 | ✨ | 🌍 | ⌚
**Torch** là một thư viện học máy mã nguồn mở, một framework tính toán khoa học và là một ngôn ngữ kịch bản dựa trên ngôn ngữ lập trình Lua. Nó cung cấp một lượng
**PyTorch** là một framework học máy dựa trên thư viện Torch, được sử dụng trong lĩnh vực thị giác máy tính và xử lý ngôn ngữ tự nhiên, do Meta AI phát triển và ngày
**Seq2seq** (viết tắt của từ tiếng Anh: **sequence to sequence**) là một họ của các cách tiếp cận học máy được dùng cho xử lý ngôn ngữ. Các ứng dụng của seq2seq gồm các mô
**Curtiss P-36 Hawk**, còn được gọi là **Curtiss Hawk Kiểu 75**, là máy bay tiêm kích do Mỹ chế tạo trong thập niên 1930. Cùng thời với Hawker Hurricane và Messerschmitt Bf 109, nó là
**Lockheed P-38 Lightning** (Tia Chớp) là máy bay tiêm kích trong Chiến tranh thế giới thứ hai của Hoa Kỳ. Được phát triển theo yêu cầu của Không lực Lục quân Hoa Kỳ, P-38 có
là một visual novel do hãng phần mềm Key phát triển, công ty này cũng cho ra đời hai tác phẩm nổi tiếng khác là _Kanon_ và _AIR_. Key phát hành phiên bản giới hạn
**_Captain America: Kẻ báo thù đầu tiên_** (tựa gốc tiếng Anh: **_Captain America: The First Avenger_**) là một bộ phim siêu anh hùng của Mỹ năm 2011 dựa trên nhân vật Captain America của Marvel
**_Half-Life: Opposing Force_** là một bản mở rộng cho trò chơi bắn súng góc nhìn thứ nhất _Half-Life_ của Valve Software. Trò chơi được phát triển bởi Gearbox Software và Valve và công bố bởi
**Lê Duy Loan** (sinh 1962) tại Nha Trang, Việt Nam, là một kỹ sư người Mỹ gốc Việt. Bà là người châu Á đầu tiên và là người nữ duy nhất được chọn vào ban
**Não úng thủy** hay **mềm nhũ não** không phải là một bệnh lý riêng biệt mà đúng hơn đó là hậu quả của một nhóm các bệnh lý khác nhau nhưng cùng có chung một
**Thảm hoạ Chernobyl** (Tiếng Ukraina: _Чорнобильська катастрофа_; Tiếng Nga: _Чернобыльская катастрофа_) là một vụ tai nạn hạt nhân xảy ra vào Thứ bảy ngày 25 tháng 4 năm 1986 khi nhà máy điện hạt nhân
**Shakugan no Shana** (灼眼のシャナ) là một bộ light novel được viết bởi tiểu thuyết gia Takahashi Yashichiro và được minh họa bởi Ito Noizi, cốt truyện xoay quanh Sakai Yuji một anh chàng đang học
**Captain America** () là một siêu anh hùng hư cấu xuất hiện trong truyện tranh của Hoa Kỳ được xuất bản bởi Marvel Comics. Được tạo bởi họa sĩ truyện tranh Joe Simon và Jack
**Novosibirsk** (phiên âm tiếng Việt: **Nô-vô-xi-biếc**; , ) là thành phố lớn thứ ba của Nga về dân số, sau Moskva và Saint Petersburg, xếp thứ 13 về diện tích và là thành phố lớn
**Hải quân Pháp** (tiếng Pháp: _Marine nationale_), tên gọi không chính thức là **La Royale**, là lực lượng hải quân của Lực lượng Vũ trang Pháp. Được thành lập từ năm 1624, Hải quân Pháp
**Alexander von Schlippenbach** (đôi khi được biết đến với tên **Alex von Schlippenbach**) (sinh ngày 7 tháng 4 năm 1938 tại Berlin) là một nhạc công piano và nhà soạn nhạc jazz. ## Tiểu sử
Phi cơ [[B-17 Flying Fortress đang bay trên bầu trời châu Âu]] Các giới chức quân sự quan trọng của Mỹ tại châu Âu năm 1945 **Lịch sử quân sự Hoa Kỳ trong Chiến tranh
**Marvel Comics** (hay đơn giản là **Marvel**) là nhà xuất bản truyện tranh của Mỹ và là chi nhánh chính của **Marvel Worldwide Inc.** (trước đây là **Marvel Publishing, Inc.** và **Marvel Comics Group**), một
**M4 Sherman,** tên chính thức là **Xe tăng hạng trung M4** (Medium Tank M4), là loại xe tăng hạng trung được quân đội Hoa Kỳ và các nước Đồng minh Tây Âu sử dụng rộng
**Chiến dịch Sa mạc Tây** hay **Chiến tranh Sa mạc** diễn ra tại Sa mạc Tây thuộc Ai Cập và Libya là giai đoạn đầu của Mặt trận Bắc Phi thuộc Chiến tranh thế giới
**Lớp thiết giáp hạm _Richelieu**_ là những thiết giáp hạm lớn nhất cũng là cuối cùng của Hải quân Pháp. Có nguồn gốc từ lớp thiết giáp hạm _Dunkerque_, lớp tàu này dự định trang
**Lớp thiết giáp hạm _South Dakota**_ là một nhóm bốn thiết giáp hạm nhanh được chế tạo cho Hải quân Hoa Kỳ ngay trước Chiến tranh Thế giới thứ hai. Chúng là lớp thiết giáp
**Juan Pujol García** (; 14 tháng 2 năm 1912 – 10 tháng 10 năm 1988), còn được gọi là **Joan Pujol i García** (), là một điệp viên hai mang người Tây Ban Nha làm
**Richard Jordan Gatling** (12/09/1818 - 26/02/1903) là nhà khoa học, quân sự người Mỹ, được mọi người biết đến với phát minh lịch sử Gatling Gun (chính là tiền thân của khẩu Hỏa thần M61
**USS _Tuscaloosa_ (CA-37)** là một tàu tuần dương hạng nặng của Hải quân Hoa Kỳ thuộc lớp _New Orleans_, tên của nó được đặt theo thành phố Tuscaloosa thuộc tiểu bang Alabama. Trong Chiến tranh
**USS _Wainwright_ (DD-419)** là một tàu khu trục lớp _Sims_ được Hải quân Hoa Kỳ chế tạo ngay trước Chiến tranh Thế giới thứ hai; nó là chiếc tàu chiến thứ hai của Hải quân
**Grace Patricia Kelly** (12 tháng 11 năm 1929 – 14 tháng 9 năm 1982), hay **Thân vương phi Grace**, là một nữ diễn viên người Mỹ, sau này bà trở thành Thân vương phi xứ
Thống chế Anh Quốc **Bernard Law Montgomery, Tử tước Montgomery thứ 1 xứ Alamein**, còn được gọi là "Monty" (17 tháng 11 1887 - 24 tháng 3 1976) là một tướng lĩnh quân đội Anh,
Thống tướng Hoa Kỳ **Omar Nelson Bradley** (sinh ngày 12 tháng 2 năm 1893 - mất ngày 8 tháng 4 năm 1981) là một trong những vị tướng chỉ huy mặt trận Bắc Phi và
**HMS _Charybdis_ (88)** là một tàu tuần dương hạng nhẹ thuộc lớp _Dido_ của Hải quân Hoàng gia Anh Quốc, được đưa ra hoạt động trong Chiến tranh Thế giới thứ hai, và đã bị
**Người Kiến** (Scott Lang) là một siêu anh hùng hư cấu xuất hiện trong truyện tranh Mỹ do Marvel Comics xuất bản. Được sáng tạo bởi David Michelinie và John Byrne, Scott Lang xuất hiện
**_Jean Bart_** là một thiết giáp hạm của Hải quân Pháp thuộc lớp _Richelieu_. Được đặt tên theo nhà hàng hải và hải quân thế kỷ 17 Jean Bart, nó chỉ mới hoàn tất được
thumb|right|upright=1.35|[[Trận Little Bighorn được biết đến với cái tên Cuộc tử thủ của Custer]] Thảm họa quân sự là một bên thất bại trong trận chiến hoặc chiến tranh dẫn đến việc bên thua cuộc
**USS _Ellyson_ (DD-454/DMS-19)** là một tàu khu trục lớp _Gleaves_ được Hải quân Hoa Kỳ chế tạo trong Chiến tranh Thế giới thứ hai. Nó đã tham gia suốt Thế Chiến II, cải biến thành
**USS _Massachusetts_ (BB-59)**, tên lóng mà thủy thủ đoàn thường gọi "Big Mamie" trong Thế Chiến II, là một thiết giáp hạm thuộc lớp _South Dakota_. Nó là chiếc tàu chiến thứ bảy của Hải
**USS _Tillman_ (DD–135)** là một tàu khu trục thuộc lớp _Wickes_ được Hải quân Hoa Kỳ chế tạo trong giai đoạn Chiến tranh Thế giới thứ nhất. Nó được chuyển cho Hải quân Hoàng Gia
**Jan Palach** (sinh ngày 11 tháng 8 năm 1948 – 19 tháng 1 năm 1969; ) là sinh viên người Séc đã tự thiêu như một hành động phản kháng chính trị. Tháng 8 năm
**_Phillip Jack Brooks_** (sinh ngày 26/10/1978) được biết với cái tên trên võ đài là **CM Punk**, là một đô vật chuyên nghiệp. Hiện đã dừng sự nghiệp thi đấu tại AEW và UFC, anh
**Whitney Elizabeth Houston** (9 tháng 8 năm 1963 – 11 tháng 2 năm 2012) là một nữ ca sĩ, diễn viên, nhà sản xuất phim và nhà từ thiện người Mỹ. Được biết đến là "Định
**Châu Hoa Kiện** hay **Chu Hoa Kiện** (chữ Hán giản thể: _周华健_, chữ Hán phồn thể: _周華健_, , sinh ngày 22 tháng 12 năm 1960) là nam ca sĩ-nhạc sĩ, nhà sản xuất âm nhạc
**Safi** (tiếng Pháp: Safi, tiếng Ả Rập: آسفي) là một thành phố ở phía tây Maroc bên Đại Tây Dương. Thành phố là thủ phủ của khu vực Doukkala-Abda, có dân số 282.227 người (điều