vào ngành kỹ thuật máy tính, Reinforcement Learning là một nghành con của Machine Learning, nghiên cứu phương pháp một trang bị (agent) trong một môi trường nên chọn lựa thực hiện tại các hành vi nào để buổi tối đa hóa một khoản thưởng nào kia về lâu dài.

Reinforcement Learning là gì?

Reinforcement Learning (RL), Học tăng cường đề cập mang đến một nghành nghề dịch vụ phụ của học sản phẩm (Machine Learning) cho phép các hệ thống dựa bên trên AI thực hiện hành động thử và sai để mang ra chiến thuật vấn đề. Để khiến máy làm điều thiết kế viên muốn, những máy sẽ cảm nhận phần thưởng hoặc hình phạt mang lại những hành vi mà nó thực hiện. Phương châm của nó là tối đa tổng phần thưởng.

Bạn đang xem: Học tăng cường (Reinforcement Learning)

Học bức tốc tối ưu hóa các khối hệ thống do AI điều khiển bằng cách bắt chước trí thông minh mô phỏng nhận thức của bé người. Biện pháp tiếp cận học do vậy giúp xây dựng viên gửi ra những quyết định quan trọng nhằm đạt được tác dụng đáng bỡ ngỡ trong các nhiệm vụ dự loài kiến ​​mà không đề xuất sự tham gia của con người hoặc không bắt buộc lập trình rõ ràng các khối hệ thống AI.

Ví dụ minh họa: trong đợt đông, một đứa trẻ thấy ấm khi đến gần lửa, vậy đề nghị nó sẽ có được xu tìm hiểu gần lửa rộng (để nhận thấy phần thưởng là sự việc ấm áp), dẫu vậy khi chạm buộc phải lửa, đứa trẻ sẽ có được xu hướng tránh va (để không sở hữu và nhận hình phát là rộp tay).



Trí tuệ nhân tạo trong marketing ngày ni

cùng rất sự cải cách và phát triển của công nghệ, trí tuệ tự tạo từng cách được áp dụng trong các lĩnh vực khác biệt như đồ vật sức khỏe,...


Trong lấy ví dụ trên, phần thưởng mở ra ngay lập tức nên việc điều chỉnh hành động tương đối dễ dàng dàng. Tuy nhiên, trong số trường hợp tinh vi hơn khi phần thưởng làm việc xa vào tương lai, vấn đề điều chỉnh hành động trở nên phức hợp hơn. Vậy làm sao để giành được phần thưởng cao nhất trong suốt vượt trình? Reinforcement Learning là những thuật toán để giải câu hỏi tối ưu này.

Environment, môi trường là không gian máy tương tác
Agent, máy, quan liêu sát môi trường thiên nhiên và tạo thành ra hành vi tương ứng (action)Policy, chiến thuật, vì máy tạo ra để dành được mục đích
Reward, phần thưởng, từ môi trường xung quanh mà máy nhận ra khi thực hiện hành động
State, trạng thái, của môi trường thiên nhiên máy nhấn được.Episode, tập, là một trong những chuỗi những trạng thái cùng hành động cho tới trạng thái kết thúc

Phấn các loại Reinforcement Learning

Về phương diện kỹ thuật, việc thực hiện học bức tốc có thể được phân thành ba loại:

Dựa trên chính sách: cách tiếp cận RL này nhằm mục đích về tối đa hóa quà tặng của hệ thống bằng phương pháp sử dụng những chính sách, chiến lược và kỹ thuật xác định.Dựa trên giá bán trị: Việc thực hiện RL dựa trên giá trị nhằm mục tiêu tối ưu hóa tính năng giá trị tùy ý liên quan đến vấn đề học.Dựa trên tế bào hình: cách thức dựa trên mô hình chất nhận được tạo ra một thiết lập cấu hình ảo mang đến một môi trường thiên nhiên cụ thể. Rộng nữa, những tác nhân hệ thống tham gia triển khai nhiệm vụ của chúng trong các thông số kỹ thuật kỹ ảo ảnh thuật này.

Reinforcement Learning vận động như vậy nào?

Nguyên tắc buổi giao lưu của học tăng tốc dựa trên chức năng khen thưởng. Qui định của RL được phát âm cơ bạn dạng như sau:

Giả sử các bạn có ý định dạy thú nuôi (chó) của chính bản thân mình một số thủ thuật. Do thú cưng của người sử dụng không thể dịch ngôn từ của con tín đồ nên chúng ta cần vận dụng một chiến lược khác.

Chiến lược là nhằm thú cưng thực hiện một nhiệm vụ cụ thể và chỉ dẫn phần thưởng (chẳng hạn như 1 món ăn) mang đến nó. Bây giờ, bất cứ lúc nào thú cưng gặp mặt phải trường hợp tương tự, nó sẽ nỗ lực thực hiện hành động tương tự mà lại trước đó đã làm để tìm kiếm được phần thưởng một cách thân yêu hơn.

Do đó, thú nuôi đã “học” từ những kinh nghiệm tay nghề của nó và lặp lại các hành động vì hiện giờ nó biết "phải có tác dụng gì" lúc một tình huống cụ thể phát sinh. Tương tự, con vật cũng thừa nhận thức được số đông điều nên tránh nếu nó chạm chán phải một trường hợp cụ thể.

Quy trình:

Thú cưng của bạn hoạt động như một máy di chuyển xung quanh nhà, đó là môi trường. Ở đây, trạng thái đề cập đến bốn thế ngồi của bé chó, hoàn toàn có thể được đổi khác thành quốc bộ khi các bạn nói một từ cầm cố thể.Quá trình đổi khác từ ngồi thanh lịch đi xẩy ra khi sản phẩm công nghệ phản ứng cùng với lời nói của công ty khi làm việc trong môi trường. Ở đây, chủ yếu sách cho phép các đồ vật thực hiện hành động trong một trạng thái rõ ràng và hy vọng đợi một công dụng tốt hơn.Sau khi trang bị nuôi gửi sang trạng thái thiết bị hai (đi bộ), nó sẽ nhận ra phần thưởng (thức ăn cho chó).

Ứng dụng

Học bức tốc được thi công để tối đa hóa quà biếu mà những máy kiếm được khi chúng hoàn thành một trách nhiệm cụ thể. RL hữu dụng cho một số trong những kịch bạn dạng và áp dụng trong đời thực, bao hàm ô đánh tự hành, robot, chưng sĩ phẫu thuật mổ xoang và thậm chí còn cả AI bots.

Dưới đó là những ứng dụng quan trọng của câu hỏi học bức tốc trong cuộc sống thường ngày hàng ngày của bọn họ để định hình lĩnh vực AI.

Reinforcement Learning quản lý xe ô tô tự lái

Để những phương tiện quản lý và vận hành tự nhà trong môi trường thiên nhiên đô thị, chúng yêu cầu sự hỗ trợ đáng tính từ lúc các quy mô học máy để mô phỏng tất cả các trường hợp hoặc viễn tượng mà xe bao gồm thể chạm mặt phải. RL mang đến để xử lý một trong những trường hợp vậy nên vì các mô hình này được giảng dạy trong một môi trường năng động, trong đó toàn bộ các con phố khả thi những được phân tích và bố trí thông qua quy trình học.

Khả năng rút ghê nghiệm khiến RL biến lựa chọn tốt nhất cho các chiếc xe từ lái phải đưa ra quyết định tối ưu khi sẽ di chuyển. Một vài biến, chẳng hạn như làm chủ vùng lái xe, cách xử lý giao thông, giám sát và đo lường tốc độ xe pháo và kiểm soát và điều hành tai nạn, được xử lý giỏi thông qua các cách thức Học tăng cường.

Một nhóm những nhà nghiên cứu và phân tích đã phát triển kĩ năng mô phỏng đó cho các đơn vị tự trị tự động bay không người lái xe và ô tô tại MIT, được đặt tên là "Deep
Traffic". Dự án công trình là một môi trường thiên nhiên mã nguồn mở cải cách và phát triển các thuật toán bằng phương pháp kết phù hợp Reinforcement Learning, học tập sâu (Deep Learning) và các ràng buộc về thị giác laptop (Computer Vision).

Reinforcement Learning giải quyết và xử lý vấn đề tiêu hao năng lượng

Với sự ngày càng tăng vượt bậc trong phát triển AI, những chính quyền có thể xử lý những vấn đề cực kỳ nghiêm trọng như tiêu thụ tích điện ngày nay. Rộng nữa, con số thiết bị Io
T với các hệ thống thương mại, công nghiệp và doanh nghiệp tăng thêm đã khiến cho các sever buộc phải luôn luôn đứng vững.

Khi những thuật toán học tăng tốc trở phải phổ biến, người ta đã xác định được rằng các tác nhân Reinforcement Learning mà không có ngẫu nhiên kiến ​​thức trước như thế nào về đk máy chủ hoàn toàn có thể kiểm rà soát các thông số kỹ thuật vật lý xung quanh máy chủ. Dữ liệu cho việc này được thu thập thông qua nhiều cảm ứng nhiệt độ, năng lượng điện năng và các dữ liệu khác, góp đào tạo những mạng thần gớm sâu, bởi vì đó đóng góp thêm phần làm mát những trung tâm dữ liệu và điều chỉnh mức tiêu thụ năng lượng. Thông thường, những thuật toán mạng Q-learning (DQN) được sử dụng trong những trường thích hợp như vậy.

Reinforcement Learning điều khiển tín hiệu giao thông

Đô thị hóa và nhu cầu tăng cao đối với các phương tiện giao thông vận tải ở các thành phố đô thị đã nổi lên báo động cho những nhà chức trách, khi họ cần vật lộn trong việc làm chủ tình trạng tắc nghẽn giao thông môi trường xung quanh đô thị. Một phương án cho vụ việc này là Reinforcement Learning, bởi các quy mô học tăng cường có thể điều khiển và tinh chỉnh đèn giao thông vận tải dựa bên trên tình trạng giao thông trong một địa phương.

Điều này ngụ ý rằng mô hình xem xét lưu lại lượng từ không ít hướng và sau đó học hỏi, kiểm soát và điều chỉnh và kiểm soát và điều chỉnh tín hiệu đèn giao thông trong mạng lưới giao thông vận tải đô thị.

Reinforcement Learning trong chăm lo sức khỏe

RLđóng một vai trò đặc biệt trong lĩnh vực chăm lo sức khỏe vày DTRs (Dynamic Treatment Regimes - chế độ điều trị động) đã hỗ trợ các chuyên viên y tế trong việc xử lý sức khỏe của dịch nhân. DTR thực hiện một chuỗi những quyết định để mang ra giải pháp cuối cùng. Các bước tuần tự này có thể bao gồm các cách sau:

Xác định tình trạng sống của căn bệnh nhân
Quyết định một số loại điều trị
Đưa ra liều lượng thuốc tương xứng dựa trên tình trạng của căn bệnh nhân
Quyết định thời hạn liều lượng, v.v.

Với chuỗi quyết định này, chưng sĩ có thể tinh chỉnh kế hoạch điều trị của mình và chẩn đoán những bệnh phức tạp như mệt mỏi về tinh thần, tiểu đường, ung thư, v.v. Rộng nữa, DTR có thể giúp đưa ra phương pháp điều trị vào đúng thời gian mà ko có bất kỳ biến chứng nào phạt sinh vì chưng sự chậm chạp gây ra.

Reinforcement Learning trong cải tiến và phát triển người máy

Robotics là một lĩnh vực đào chế tạo robot để nhại lại hành vi của con bạn khi nó triển khai một nhiệm vụ. Mặc dù nhiên, các người thiết bị ngày nay ngoài ra không tất cả đạo đức, tính xã hội hoặc ý thức thường thì trong khi kết thúc mục tiêu. Trong số những trường phù hợp như vậy, các lĩnh vực phụ của người nào như Deep Learning cùng Reinforcement Learning hoàn toàn có thể được kết hợp, tại thành Deep Reinforcement Learning (Học tăng cường sâu) để có được hiệu quả tốt hơn.

Deep RL rất đặc biệt đối với robot trong điều phối kho hàng khi hỗ trợ các phần tử sản phẩm thiết yếu, đóng gói sản phẩm, đính ráp sản phẩm, kiểm soát lỗi, v.v. Ví dụ: các quy mô RL sâu được huấn luyện trên tài liệu đa phương thức, chiếc chìa khóa để xác minh các phần tử bị thiếu, dấu nứt, vệt xước, hoặc thiệt hại tổng thể và toàn diện cho trang thiết bị trong kho vì chưng quét hình hình ảnh với hàng tỷ điểm dữ liệu.

Hơn nữa, học tăng cường sâu cũng giúp quản lý hàng tồn kho vì những máy được đào tạo và huấn luyện để khu vực các container trống rỗng và bổ sung cập nhật chúng ngay lập tức lập tức.

Reinforcement Learning trong marketing

RL giúp những tổ chức về tối đa hóa sự tăng trưởng của công ty và phải chăng hóa các chiến lược marketing để giành được các mục tiêu dài hạn. Trong lĩnh vực tiếp thị, Reinforcement Learning cung ứng đưa ra các lời khuyên được cá thể hóa cho tất cả những người dùng bằng cách dự đoán những lựa chọn, bội phản ứng cùng hành vi của họ đối với các sản phẩm hoặc dịch vụ thương mại cụ thể.

Reinforcement Learning vào game

Các trang bị học bức tốc học hỏi và thích nghi với môi trường xung quanh chơi trò chơi khi chúng liên tiếp áp dụng logic trải qua kinh nghiệm cùng đạt được hiệu quả mong muốn bằng phương pháp thực hiện nay một chuỗi các bước.

Ví dụ, Alpha
Go bởi Deep
Mind tạo ra của Google sẽ vượt trội so với khiếu nại tướng cờ vây hồi tháng 10 năm 2015. Đó là một bước tiến lớn so với các quy mô AI vào thời khắc đó.

Bên cạnh việc xây đắp các trò đùa như Alpha
Go áp dụng mạng thần kinh sâu, các máy RL được áp dụng để bình chọn trò đùa và phát hiện nay lỗi trong môi trường xung quanh trò chơi. Những lỗi tiềm ẩn có thể dễ dàng xác minh khi RL chạy những lần mà không có sự can thiệp từ mặt ngoài. Ví dụ, những công ty game như Ubisoft thực hiện Reinforcement Learning nhằm phát hiện tại lỗi.

Kết luận

Reinforcement Learning giúp tự động hóa hóa quá trình ra quyết định và học tập tập. Những máy RL giao lưu và học hỏi từ môi trường và kinh nghiệm của bọn chúng mà không đề xuất phải nhờ vào sự đo lường trực tiếp hoặc sự can thiệp của bé người.

Học tăng cường là một tập hòa hợp con đặc trưng của AI và Machine Learning. Nó thường có ích cho việc trở nên tân tiến rô bốt từ bỏ động, máy cất cánh không người điều khiển hoặc thậm chí là mô phỏng, vị nó tế bào phỏng các quy trình học tập tập y như con tín đồ để hiểu môi trường xung quanh.

Giới thiệu

Học tăng tốc (Reinforcement Learning-RL) là 1 trong bố kiểu học thứ chính sát bên học giám sát và đo lường (Supervised Learning) với học không thống kê giám sát (Unsupervised Learning). Thực chất của RL là trial-and-error, nghĩa là thử đi thử lại và rút ra kinh nghiệm sau những lần thử như vậy. Gần đây, RL đã đạt được những thành tích đáng đề cập khi các thuật toán của Deep
Mind (Alpha
Go, Alpha
Zero, Alpha
Star,...) đã chiến thắng áp đảo các tuyển thủ cố kỉnh giới một trong những trò chơi mà con người đã từng có lần nghĩ rằng vật dụng móc đã không khi nào có thể vượt mặt như cờ vây xuất xắc Star
Craft. Vậy bên phía trong RL có gì mà khiến nó "kinh khủng" như vậy? bài viết này bản thân xin được reviews tổng quan tiền về RL và huấn luyện một mạng Deep Q-Learning cơ bạn dạng để đùa trò Cart
Pole.

1. Các khái niệm cơ bản

Gồm 7 quan niệm chính: Agent, Environment, State, Action, Reward, Episode, Policy. Để dễ nắm bắt hơn, mình đã lấy ví dụ về một bé robot tìm mặt đường như hình dưới:

*
Nhiệm vụ của bé robot - Agent - là đi cho ô đích color xanh, kị ô phạt red color và ô xám là chướng ngại vật vật không được phép đi vào. Agent can hệ với Environment bằng những Actions trái/phải/lên/xuống. Sau mỗi action, environment trả lại mang lại agent một State (ở ví dụ này là địa điểm của robot) cùng Reward tương ứng với state kia (+1 nếu lấn sân vào xanh, -1 nếu lấn sân vào ô đỏ cùng 0 nếu như ở ô trắng). Khi agent mang đến ô xanh hoặc đỏ trò đùa kết thúc; một loạt các tương tác thân agent cùng environment từ thời điểm bắt đầu đến lúc này được gọi là 1 Episode. Vào một episode, agent sẽ cố gắng chọn ra các actions về tối ưu để buổi tối đa hóa reward nhận được sau mỗi episode. Cách mà agent chọn mọi actions sẽ là Policy; ví dụ: "đi ngẫu nhiên", "đi men theo rìa" hoặc "hướng về ô đích". Có thể thấy policy cũng có thể có policy này cùng policy kia; mục tiêu của RL là tìm thấy policy xuất sắc nhất. Hình dưới đây mô tả ảnh hưởng giữa Agent - Environment:
*

2. Markov Decision Process (MDP)

MDP là một trong framework góp agent chuyển ra ra quyết định tại một state làm sao đó. Để áp dụng được framework này, ta giả sử những states tất cả thuộc tính Markov (Markov Property): từng state chỉ dựa vào vào state trước nó vào xác suất thay đổi giữa 2 states này. Nghe hơi cực nhọc hiểu nhưng thực ra rất đối chọi giản. Đầu tiên, sao lại sở hữu "xác suất biến hóa giữa 2 states"? trong một "thế giới hoàn hảo", giả dụ ta tái diễn một hành động thì sẽ đã cho ra 2 hiệu quả giống hệt nhau. Tuy vậy mọi bài toán không đơn giản và dễ dàng như vậy vì đa số mọi vụ việc đều là các tiến trình bỗng nhiên (stochastic process)

*

Tuy nhiên, vẫn còn thiếu phần quan trọng đặc biệt nhất của NN. Đó đó là hàm Loss. Mục tiêu của ta là bắt NN học được cách ước lượng Q-Value cho những actions một cách chính xác nên tất nhiên hàm Loss buộc phải tính được sai số thân Q-value thực tế và dự đoán. Hóa ra hàm Loss này ta đã tư tưởng từ trước rồi chúng ta ạ. Nó đó là TD2(a,s)TD^2(a,s)TD2(a,s). Viết dưới dạng đầy đủ:

*

Bước 1: thiết đặt các tủ sách liên quan

Mình sẽ áp dụng keras-rl cho những module bởi vì api của chính nó rất trực quan. Sau đó là gym, cung ứng cho ta Environment của không ít bài toán không giống nhau, trong những số đó có Cart
Pole. Việc cài đặt rất đơn giản dễ dàng như sau:

pip install h5pypip install gympip install keras-rl

Bước 2: Implement thuật toán

Import mudule liên quan:

import numpy as npimport gymfrom keras.models import Sequentialfrom keras.layers import Dense, Activation, Flattenfrom keras.optimizers import Adamfrom rl.agents.dqn import DQNAgentfrom rl.policy import Eps
Greedy
QPolicyfrom rl.memory import Sequential
MemoryKhởi tạo environment:

ENV_NAME = "Cart
Pole-v0"env = gym.make(ENV_NAME)np.random.seed(123)env.seed(123)nb_actions = env.action_space.n #Trong trò chơi này nb_actions = 2 ứng với lịch sự trái/phảiXây dựng một Neural Network:

model = Sequential()model.add(Flatten(input_shape=(10,) + env.observation_space.shape))model.add(Dense(32))model.add(Activation("relu"))model.add(Dense(16))model.add(Activation("relu"))model.add(Dense(nb_actions))model.add(Activation("linear"))print(model.summary())Vì vấn đề này khá dễ dàng và đơn giản nên NN của chúng ta không cần quá phức tạp; cùng mình thấy mạng trên cho kết quả tương đối tốt.

Phần chính: Agent, Policy với training

Mình chọn 1 policy dễ dàng và đơn giản là ϵepsilonϵ-greedy. Policy này chọn ra action có Q-value lớn nhất với tỷ lệ (1−ϵ)(1- epsilon)(1−ϵ) và chọn 1 action tự dưng với tỷ lệ ϵepsilonϵ. Vấn đề này bảo đảm agent có "mở rộng" (explorarion) bên cạnh "khai thác" (exploitation).

Với Experience trả lời mình số lượng giới hạn số replays lưu giữ là 50000 với mỗi lần lôi ra 10 replays liên tiếp để mang vào training.

Xem thêm: Bao lâu thì người nước ngoài học tiếng việt như thế nào, tiếng việt cho người nước ngoài

policy = Eps
Greedy
QPolicy()memory = Sequential
Memory(limit=50000, window_length=10) # window_length phải bằng input_shape nghỉ ngơi trên nhédqn = DQNAgent(model=model, nb_actions=nb_actions, memory=memory, nb_steps_warmup=10, target_model_update=1e-2, policy=policy)dqn.compile(Adam(lr=1e-3), metrics=<"mae">)dqn.fit(env, nb_steps=20000, visualize=True, verbose=2)Thử nghiệm

Chúng ta cùng chạy thử thử coi reward mức độ vừa phải là bao nhiêu, liệu gồm "thắng cuộc" (195 điểm) ko nhé.

his = dqn.test(env, nb_episodes=100, visualize=True).history<"episode_reward">print("Average reward over", len(his), "episodes:", np.sum(his)/len(his))

*

*

200 điểm!

*
ko tệ một chút nào!

Tổng kết

Trong bài bác này bản thân đã trình làng với các bạn tổng quan về Reinforcement Learning và với mọi người trong nhà xây dựng một thuật toán RL cơ bạn dạng nhưng rất phổ cập là Deep Q-Learning. Thông qua ví dụ này ta tìm tòi RL hữu dụng thế nào trong việc giải quyết bài toán điều khiển, khi cơ mà Supervised learning tỏ ra bất lợi vì khó hoàn toàn có thể tạo ra cỗ dữ liệu phù hợp để mô hình hóa vấn đề. Đây là bài xích hra.edu.vn đầu tiên của mình, nếu tất cả sai sót gì mình xin được làm lơ

*
. Còn nếu khách hàng thấy tốt thì không tự tin ngần gì nhưng ko cho chính mình một upvote để mình tất cả động lực viết bài bác sau
*
*

Tài liệu tham khảo: https://www.analyticsvidhya.com/blog/2019/04/introduction-deep-q-learning-python/