Graph representation learning & application?1 số lý thuyết đồ thị cơ bản1 số bài toán nổi bật của Graph Neural Network vào thực tếLink Prediction
Node Classification
Community Detection
Node Embedding - Graph Representation Learning
Deep
Walk
Node2Vec
Spectral vs Spatial Graph Neural Network
GCNGraph
Sage (an inductive learning method)1 số áp dụng trong thực tế1 số việc và hướng phát triển khác
Hạn chế cùng lưu ý1 số paper cùng nguồn tài liệu xứng đáng chú ýTài liệu tham khảo
Graph representation learning & application?

Chắc hẳn đối với những bạn đã tiếp xúc với ML, DL thì thân quen gì cùng với những bài xích toán điển hình nổi bật như:

Computer Vision: cùng với dữ liệu chính là ảnh, video. Những bài toán như: Image Classification, Object Detection, Image Segmentation,...NLP: với dữ liệu chính là từ (word), thường được màn biểu diễn dưới dạng sequence. Các bài toán như: Neural Machine Translation, Text Classification, Text Summarization, Topic Modeling,...Sound: tài liệu là những nguồn âm thanh, thuận tiện biểu diễn bên dưới dạng 1D hoặc 2D. Những bài toán như: TTS, STT, Sound Recognition, ...... Cùng còn không ít các loại tài liệu khác nữa

Tuy nhiên, cũng có nhiều bài toán và kiểu tài liệu khác, bọn họ khó có thể biểu diễn tài liệu với dạng 1D, 2 chiều như thông thường, hay các dạng dữ liệu Non-Euclidean. Lấy một ví dụ như:

Dữ liệu social - social network
Liên kết bên trên mạng internet
Tương tác giữa những phân tử, nguyên tử - protein-protein interaction (PPI)....

Bạn đang xem: Giải mã hình ảnh bằng mô hình mạng học sâu sử dụng dữ liệu không đồng nhất (Image decoding using deep learning models with heterogeneous data)

*

Với mọi dạng dữ liệu tính chất như vậy, cũng yêu cầu hồ hết mục tiêu không giống nhau tùy nhu yếu của bài toán, lấy một ví dụ như:Phân tích dữ liệu mạng xã hội để thâu tóm được các xu thế của xã hội hiện tại, các nhóm đối tượng người dùng khách hàng
Các nhắc nhở kết bạn, follow những page bên trên nền tảng thân quen là facebook
Phân tích sự liên hệ ở lever phân tử, nguyên tử nhằm mục tiêu mục đích phục vụ cho những vấn đề về y sinh học, ví dụ phân tích tác dụng phụ của thuốc
Xây dựng các hệ thống gợi nhắc sản phẩm cho các trang web thương mại điện tử từ dữ liệu tương tác của bạn dùng....

*

Lấy 1 lấy một ví dụ trong Computer Vision, giả dụ với việc phân loại ảnh chó mèo - Cat-Dog classification

*

1 quy mô đã rất phổ cập là CNN được sử dụng. CNN gồm những kernel (hoặc filter) với size cố định, có tác dụng giống như một cửa sổ trượt, từ bỏ trái quý phái phải, từ bên trên xuống dưới, nhằm mục tiêu mục đích trích rút ra được các đặc trưng từ một bức ảnh. Những kernel (filter) thực chất chính là trọng số của quy mô CNN sẽ được cập nhật dần trong quá trính training cùng với backpropagation. Mỗi kernel có một giá trị riêng, học tập được các feature khác nhau từ bức ảnh, có kernel thì làm nổi bật các đường biên giới của đối tượng, bao gồm kernel thì làm cho nổi rõ từng vùng lẻ tẻ của bức ảnh, ...

*

Trong thực tế tồn tại rất nhiều dạng dữ liệu non-euclidean data. Trường hợp như trong bài toán xử lý hình ảnh dùng CNN, bọn họ sử dụng những filter thắt chặt và cố định tổng hợp giá trị của những điểm pixel ở kề bên nhau thì vào graph neural network cũng tương tự như vậy. Cũng là tổng phù hợp giá trị của các nút ở bên cạnh nhau. Tuy nhiên các nút trên đồ vật thị là không có thứ tự với số degree (hay số cạnh link với từng nút) là không giống nhau!

*

Tương tự các bài toán về ML, DL khác, biện pháp biểu diễn đơn giản nhất cho các nút cùng cạnh trên thứ thị là việc biểu diễn các nút / cạnh kia dưới dạng các vector embedding, tiếp kia sử dụng các embedding này cho những downstream task khác ví như node classification, graph clustering, ...

*

Với ví dụ với 1 đồ thị như hình dưới, những nút trên đồ dùng thị được ánh xạ sang trọng 1 không khí vector mới sang một hàm f(x). 2 nút uuu và vvv trên trang bị thị được xem như là tương đồng cùng nhau nếu khoảng cách giữa 2 vector embedding zuz_uzu​ cùng zvz_vzv​ trên không khí mới là nhỏ

*

1 số kim chỉ nan đồ thị cơ bản

Trước lúc đi sâu phân tích các bài toán với vấn đề đặc thù của GNN, họ cùng ôn lại 1 chút kỹ năng về lí thuyết trang bị thị đã!

1 thứ thị được màn biểu diễn dưới dạng G = (V, E) với:

G là vật dụng thị được cấu thành
V là tập hợp những nút của đồ dùng thì (vertices / node)E là tập hợp các cạnh kết nối những nút của đồ gia dụng thị (edge)eij=(vi,vj)∈Ee_ij = (v_i, v_j) in Eeij​=(vi​,vj​)∈E là biểu diễn các cạnh e∈Ee in Ee∈E nối từ bỏ nút viv_ivi​ cho tới nút vjv_jvj​ của trang bị thị
Kí hiệu N(v)=u∈V∣(v,u)∈EN(v) = (v, u) in EN(v)=u∈V∣(v,u)∈E là những nút kề uuu (nút xóm giềng tất cả chung cạnh) cùng với nút vvv

*

Các thuật ngữ này là tương đương nhau khi biểu diễn các bài toán về đồ gia dụng thị:

G(V, E) ~ System (Object, Interaction)System ~ Network, Graph
Object ~ Node, vertices
Interaction ~ Link, Edges

Adjacency matrix (ma trận kề) A, là 1 trong những ma trận vuông form size nxn (với n là tổng cộng nút của đồ dùng thị)

Aij=1A_ij = 1Aij​=1 nếu eij∈Ee_ij in Eeij​∈EAij=0A_ij = 0Aij​=0 ví như eij∉Ee_ij otin Eeij​∈/EAdjacency matrix (A) cũng khá được gọi là một trong những weighted-matrix, biểu hiện trọng số những cạnh của vật dụng thị. Cùng với hình minh họa Adjacency matrix trên thì các cạnh có trọng số tương đồng nhưng gồm thể biến đổi lại tùy vấn đề và dữ liệu

Degree matrix (ma trận bậc) D, là 1 trong những ma trận đường chéo vuông nxn, chứa thông tin bậc của mỗi đỉnh, với

Dii=∑i=1n
Aij
D_ii = sum^n_i = 1 A_ijDii​=∑i=1n​Aij​Chú ý rằng với đồ dùng thị có hướng (direct matrix) thì bậc của từng nút chỉ tính các cạnh nối bao gồm chiều cho tới nút đó

Identity matrix (ma trận solo vị) I, là một trong những ma trận đường chéo nxn, với những giá trên đường chéo cánh chính = 1, còn sót lại = 0

Iij=1I_ij = 1Iij​=1 trường hợp i==ji == ji==j, ngược lại = 0

Laplacian matrix tốt ma trận dẫn nạp L, cùng với L=D−AL = D - AL=D−A

Directed graph cùng undirect graph

Undirect graph giỏi ma trận vô hướng, khi cạnh nối thân 2 đỉnh i với j là như nhau, xuất xắc eij=ejie_ij = e_jieij​=eji​Direct graph tuyệt ma trận có hướng, gồm chiều xác định từ đỉnh viv_ivi​ tới vjv_jvj​ cùng tồn tại link cạnh eije_ijeij​

Self-loop: nút tất cả cạnh nối từ bỏ nó tới chủ yếu nó

*

Multi-graph: là các đồ thị với các cặp đỉnh kề nhau có tương đối nhiều hơn 1 cạnh nối liên kết giữa chúng

Heterogeneous với homogeneous graph

Homogeneous graph: hoàn toàn có thể hiểu là các đồ thị đơn, khi những nút cùng cạnh của đồ dùng thị chỉ màn biểu diễn duy duy nhất 1 đối tượng, lấy ví dụ như nút trình diễn con bạn và cạnh biểu diễn những người dân là bạn bè với nhauHeterogeneous graph: xuất xắc multi-model graph, là các đồ thị bao gồm nút với cạnh biểu lộ nhiều mối links giữa các đối tượng người tiêu dùng với nhau, liên quan mật thiết cho tới 1 định nghĩa rộng hơn là knowledge graph

*

Bi-partite graph (đồ thị 2 phía): là một trong những đồ thị khá đặc biệt, rất có thể phân những đỉnh thành 2 tập ko giao nhau, tức không có cạnh nối 2 đỉnh bất kỳ thuộc cùng 1 tập.

*

Mỗi nút trên đồ thị, tùy bài xích toán cũng biến thành có nhãn (label) ứng cùng với từng nút. Ví dụ ai đang xây dựng 1 việc phân các loại thể nhiều loại của paper dựa trên các citation giữa những paper cùng với nhau. Những nút là các paper, những cạnh thể hiện các paper có links (citation) với nhau thì nhãn của nút có thể là: Computer Vision, NLP, Reinforcement Learning,...

Node feature: những nút của vật thị cũng có thể có thể bao gồm các đặc trưng (hoặc feature) riêng của từng nút. Những đặc tính này trả toàn hoàn toàn có thể được trích rút thêm từ các thông tin của nút đó. Ví dụ:

Với 1 câu hỏi social network, những nút vào mạng biểu thị 1 người, node feature là những đặc trưng như tuổi, giới tính, công việc, trình độ chuyên môn học vấn,...Với 1 việc về phân các loại topic cho document, những nút của vật dụng thị là các document, node feature hoàn toàn có thể được biểu diễn đơn giản và dễ dàng bằng 1 binary vector cùng với số chiều bằng con số từ trong từ điển (hay vocab), ví dụ là 50.000 từ, với mức giá trị 1 miêu tả từ có xuất hiện trong trường đoản cú điển với ngược lại. Hoặc hoàn toàn có thể biểu diễn dễ dàng hơn bằng phương pháp sử dụng các mô hình language model hoặc word embedding để sinh được 1 feature vector ứng cùng với từng từ bỏ hoặc từng đoạn, lấy ví dụ mình rất có thể sử dụng 1 mô hình doc2vec để ánh xạ 1 document thành 1 vector 300D....

Với ma trận adjacency matrix (A) mặt trên, 1 số ít điểm dễ nhận biết rằng:

Ma trận A cũng miêu tả trọng số những cạnh của thiết bị thị
Đa số những trường hợp là một trong những ma trận thưa (hay sparse matrix), tuyệt tỉ lệ 1/0 trên toàn vật dụng thị là rất bé
Trong nhiều bài bác toán, nhằm thuận tiện, không tính việc thực hiện adjacency matrix thì bạn ta cũng áp dụng adjacency list để biểu hiện cạnh nối giữa 2 đỉnh mang đến thuận tiện

Reference: https://towardsdatascience.com/graph-theory-and-deep-learning-know-hows-6556b0e9891b

1 số câu hỏi điển hình

Link Prediction

*

Là bài bác toán dự kiến xem 2 nút trong mạng gồm mối liên hệ hoặc tất cả cạnh nối new giữa 2 nút giỏi không.

Node classification

*

Là bài toán phân nhiều loại từng nút (node) trên vật dụng thị ứng với các nhãn (label) tương ứng, đây cũng là việc khá thông dụng nhất vào GNN

*

Clustering và Community detection

*

Là vấn đề phân cụm cộng đồng hay graph clustering
Node Embedding

Nói về Graph-based Learning, thứ 1 ta cần nói đến Graph-based Embedding, bao hàm 2 phân nhóm chính:

Vertex Embedding (Node embedding): hay việc ánh xạ 1 nút trong thứ thị lịch sự 1 không gian latent space khác với D-dims. Ta hoàn toàn hoàn toàn có thể sử dụng các latent space này nhằm mục tiêu mục đích visualization, hay vận dụng vào những downstream task như: node classifition, graph clustering, ...Graph Embedding: giống như như trên, cơ mà là việc ánh xạ cả 1 đồ thị / graph hoặc sub-graph thành 1 vector duy nhất, ví dụ như việc ánh xạ sang latent space của các cấu tạo phân tử để đối chiếu với nhau. Việc ánh xạ này sẽ tương quan nhiều tới các bài toán về graph/sub-graph classification

Rất nhiều những giải thuật về graph-based learning (graph-based embedding, graph neural network) nói chung đều dựa trên giả định rằng những nút ở ngay sát nhau sẽ có được các đặc thù về feature là tương tự nhau. Ví dụ việc bạn follow ai làm việc trên twitter cũng trở thành phần nào hỗ trợ chúng ta đoán được rằng user đó lưu ý đến vấn đề gì trên mạng buôn bản hội, hoàn toàn có thể là các vấn đề tương quan đến học tập thuật như: machine learning, deep learning; hay những vấn đề về bao gồm trị, tôn giáo, sắc đẹp tộc bằng việc follow những user liên quan,... Tự đó, những nhà phát triển sẽ dựa vào những mối tương tác đó để thi công mô hình cho những mục tiêu riêng, ví dụ như như: social network analysis, recommender engine,...

2 nút không kết nối trực tiếp với nhau vẫn rất có thể có những điểm lưu ý giống nhau, ví dụ điển hình nhất là trong việc về colaborative filtering vào recommender system. Khi 2 user A, B trọn vẹn không liên quan đến nhau, user A ham mê các thành phầm P1, P2, P3, P4; user B đam mê các thành phầm P1, P3, P4. Vậy nhiều kỹ năng rằng thói quen tải đồ của 2 user là khá kiểu như nhau và hệ thống tiến hành lưu ý thêm mang lại user B thành phầm P2, ... Hay ví như hình dưới, nút 5 và 6 không connect trực tiếp với nhau nhưng gồm chung các nút "làng giềng" nên giả định rằng 2 nút này sẽ tương đối giống nhau, tương đồng với nhau về mặt context

*

Random Walk là gì?

Về Vertex Embedding (Node Embedding), thứ nhất ta đề xuất xem xét tư tưởng Random-Walk là gì?

Nếu các bạn đã từng thao tác làm việc với các bài toán về NLP trong ML, DL nói chung, chắc hẳn hẳn các bạn cũng biết tới 1 mô hình word embedding rất phổ cập và không còn xa lạ là Word2Vec. Về mặt định hướng mình xin phép không nói kĩ trong bài blog này, các bạn có thể xem thêm tại các bài blog khác trên viblo như:

*

Ý tưởng đơn giản của Word2Vec là gây ra 1 mô hình có chức năng ánh xạ các từ quý phái 1 không gian vector mới và trả định rằng những từ thường xuất hiện cùng nhau, cùng 1 context sẽ sở hữu được các embedding vector gần nhau (euclide distance, cosine distance,..). Word2Vec tất cả 2 mô hình chính:CBOW: sử dụng các context word để predict target word ở giữa (các từ vào ô xanh tự target word, ô white là context word)Skip-gram: áp dụng target word nhằm predict các context word xung quanh

Deep
Walk

Deep
Walk là 1 quy mô Node Embedding khá đối chọi giản, dựa trên ý tưởng chủ đạo tự Word2Vec, mà ví dụ là từ mô hình Skip-gram. Vào paper của Deep
Walk có kể đến 1 thuật ngữ là Graph Sampling sử dụng random walk hay bước đi ngẫu nhiên trên đồ dùng thị. Random walk dễ dàng là việc chọn đi ngẫu nhiên tới những nút trơn giềng trong vật dụng thị, nói cả bước tiến tiếp theo rất có thể quay lại nút trước đó. Bằng bài toán sampling áp dụng random walk, ta đã chuyển dữ liệu từ một dạng cấu trúc phức tạp rộng là thiết bị thị (với không ít nút với cạnh nối với nhau) quý phái dạng màn trình diễn sequence 1D, giống như như những chữ cái liên tiếp nhau trong một câu vậy. Các nút bây giờ được màn trình diễn như các từ trong quy mô word2vec cùng với độ dài câu (hay số cách nhảy của random walk) không nạm định. Và ta rất có thể sử dụng luôn luôn được mô hình Word2Vec để áp dụng trực tiếp lên dạng dữ liệu đồ thị này!

*

Ví dụ như hình ảnh trên, trường đoản cú 2 đỉnh A với F, bước đi ngẫu nhiên với cách nhảy = 3 vẫn sinh ra những sequence như: A -> C -> F -> G, F -> G -> E -> D, ...

*

Bằng phương pháp đó, sau thời điểm thực hiện training mô hình, từng nút trên mạng sẽ tiến hành biểu diễn bằng 1 embedding vector (ví dụ 128 chiều). Ta có thể sử dụng phần embedding này triển khai visualize để xem đối sánh giữa những nút cùng với nhau, bằng các thuật toán giảm chiều tài liệu như: t-SNE, UMAP, ... Hoặc sử dụng cho các downstream task cho những bài toán con, ví dụ như việc áp dụng SVM để thực hiện phân loại những embedding vector vào những nhãn khớp ứng (node classification). Lấy ví dụ với quy mô Deep
Walk trên tập dữ liệu karate club bao gồm 4 nhãn. Sau thời điểm tiến hành visualize, có thể thấy các phân tách bóc khá cụ thể qua màu sắc

*

Node2Vec

Node2Vec cũng là 1 mô hình Node Embedding dựa trên ý tưởng phát minh của Deep
Walk với Word2Vec. Điểm khác hoàn toàn của Node2Vec là ngoại trừ việc sử dụng random walk như thông thường, tế bào hình trình làng thêm 2 thông số kỹ thuật P cùng Q để kiểm soát và điều chỉnh lại bước tiến ngẫu nhiên trên đồ thị.

*

Với ppp (hay sót lại là return parameter) quy định kỹ năng quay lại 1 nút trước đó trên bước đi ngẫu nhiên. Cùng với ppp khủng thì ít có tác dụng quay lại nút trước đó và ngược lại.

Với qqq (hay sót lại là in-out parameter) quy định khả năng bước đi "gần" hay "xa" đối với nút ban đầu. Với q>1q > 1q>1 thì bước tiến ngẫu nhiên có xu hướng đi quanh lẩn quất nút ban sơ và ngược lại, rời khỏi xa ngoài nút ban đầu.

Ví dụ với việc áp dụng node2vec trước và sau khoản thời gian áp dụng lên tập tài liệu về persona data

*

1 số các mô hình về Vertex Embedding các bạn có thể bài viết liên quan như: LINE (Line Large-scale Information Network Embedding), HOPE, ....

Điểm hạn chế những các quy mô Vertex/Node Embedding nói chung

Nhìn chung, các quy mô Node Embedding đều đào bới việc ánh xạ những nút trong vật dụng thị thanh lịch 1 không khí vector mới, với những nút sát bên nhau, gồm context như là nhau sẽ ở sát nhau.

Tuy nhiên, có một số vấn đề như sau:

Giả dụ với 2 mô hình Deep
Walk cùng Node2Vec mặt trên, phần đông dựa trên phát minh của Word2Vec. Nếu trong 1 bài toán tất cả domain khiêm tốn và ít tất cả sự update trong mô hình thì không vấn đề gì nhưng so với các nút new (bao gồm các liên kết mới) trong vật dụng thị thì chúng sẽ được ánh xạ như thế nào? bản thân mã sản phẩm Word2Vec với đông đảo từ không tồn tại trong trường đoản cú điển sẽ không có embedding vector trình diễn cho trường đoản cú đó.Thứ hai, như ta sẽ bàn về 1 số những khái niệm bình thường trong thiết bị thị như bên trên. Hiện tại tại, ta mới chỉ sử dụng tin tức là các nút ở bên cạnh nhau để thành lập mô hình, còn chưa sử dụng các thông tin khác ví như node feature tuyệt thuộc tính của từng nút trong đồ gia dụng thị. Ví dụ, với 1 bài toán về social network analytic, ngoài các kết nối thân người với những người thì các thông tin bản thân của từng fan như: giới tính, độ tuổi, trình trạng hiện tại, ... Cũng vô cùng buộc phải thiết. Các mô hình không có chức năng adapt, generalization giỏi trên những unseen data được điện thoại tư vấn là tranductive learning method, trái lại là inductive learning method

Trong phần tiếp, ta đang đề cập tới các quy mô thuở ban đầu của GNN cũng tương tự các mô hình liên quan đến 2 định nghĩa tranductive cùng inductive learning trên và phía cải thiện

Spectral vs Spatial Graph Neural Network
Thực tế, các quy mô về graph neural network cũng đã được tìm hiểu từ tương đối lâu, trong khoảng thời hạn 2014 tới thời điểm này thì mới dành được sự quan liêu tâm nhiều hơn từ cộng đồng và được phân chia khá rõ ràng thành 2 phân lớp chính:Spectral Graph Neural Network: liên quan đến những khái niệm về phân tách ma trận eigen-decomposition, eigenvector, eigenvalues,... Mặc dù nhiên, các cách thức về spectral-based thường xuyên có ngân sách chi tiêu tính toán khá lớn và dần bị thay thế bởi các phương thức spatial-basedSpatial Graph Neural Network: là 1 phương thức đơn giản hơn cả về mặt toán học cùng mô hình. Spatial-based method dựa trên ý tưởng phát minh việc xây dựng những node embedding phụ thuộc vào vào những node lân cận.

*

Reference https://ai.stackexchange.com/questions/14003/

GCN

Để đơn giản dễ dàng và dễ dàng hiểu, ta tư tưởng 1 mô hình GCN như sau:

1 đồ dùng thị G=(V,E)G = (V, E)G=(V,E)1 ma trận adjacency matrix A nxn
X∈Rnxd
X in R^n x dX∈Rnxd là ma trận feature ứng với các nút của vật dụng thị, cùng với nnn là tổng số lượng nút cùng ddd là số chiều của node feature. Node embedding như ta đã và đang đề cập sống trên, liên quan đến các thông tin của nút đó.

Để dễ hình dung, họ hãy làm một số ít ví dụ nhỏ như sau:

Ví dụ 1

Với 1 thiết bị thị vô hướng như hình dưới

*

Đồ thị tất cả 6 nút từ A -> F. Để đối kháng giản, với từng nút sẽ được biểu diễn bởi 1 trọng số (hay ví dụ như node embedding lúc này của nút A = <0.1>)

Với trả định từ trên đầu rằng những nút lân cận nhau là tương tự nhau. Trường đoản cú đó, ta tiến hành 1 phép toán đơn giản dễ dàng để tổng vừa lòng lại thông tin của các nút ở bên cạnh của nút viv_ivi​ nắm thể, bằng cách lấy trung bình các giá trị của những nút lận cận + giá trị của nút viv_ivi​, ta thu được giá trị mới ppp, gắn thêm giá trị bắt đầu ppp này cho nút viv_ivi​. Đối với các nút không giống cũng triển khai tương tự trong 1 step. Những step tiếp đến cũng tiếp tục thực hiện phép toán vừa nêu với tất cả các nút vào mạng. Sau step 1, ta thu được những giá trị bắt đầu cho vật dụng thị như sau:

*

*

Thực hiện tương tự như cho toàn bộ các nút trong step 2

*

Có thể thấy rằng, giá trị hiện tại của những nút trong mạng vẫn được kiểm soát và điều chỉnh lại cùng san hầu hết hơn giữa những nút, phần nhiều nút sát nhau sẽ sở hữu được giá trị gần nhau hơn, đa số nút có cấu tạo liên kết như là nhau như nút E với F đầy đủ nhận quý hiếm là như thể nhau.

Nếu điện thoại tư vấn A0A^0A0 là cực hiếm nút A tại step 0, giống như các với nút khác thì ta gồm công thức

*

Bằng phép thế, ta có

*

Có thể thấy rằng, với 2 step, giá chỉ trị lúc này của nút A bị ảnh hưởng bởi những nút nằm trong phạm vi 2 bước nhảy tính từ bỏ nút A, bao gồm cả 5 nút còn lại. Tuy nhiên nếu trả sử có một nút G nối chủ quyền với nút F ví dụ điển hình thì giá trị bây giờ của A không bị tác động bởi nút G (vì 3 bước nhảy)

Với phép toán tính trung bình (mean) bên trên, ta trả toàn hoàn toàn có thể thay gắng bằng 1 số ít phép toán khác, được gọi là aggregation function (sẽ được đề cập kĩ hơn tại quy mô Graph
Sage). Tóm lại, giá trị của A1A_1A1​ sẽ được biểu diễn tóm gọn gàng như sau

*

*

*

Với N(v)N(v)N(v) là tập hợp các nút lân cận của nút vvv

Ví dụ 2

*

Kèm từ đó là node feature xi∀x∈Xx_i forall x in Xxi​∀x∈X ứng cùng với từng nút trong đồ dùng thị. Ở đây, bản thân định nghĩa ngẫu nhiên 1 ma trận X như bên dưới

*

Và giờ đồng hồ hãy triển khai phép nhân ma trận đơn giản và dễ dàng AX, ta thu được

*

Có thể hay thấy rằng, quý giá ma trận 6x2 thu được hiện nay tại, cùng với mỗi giá trị tại từng loại là tổng toàn bộ các trọng số của các nút lân cận. Lấy một ví dụ với nút 0 link với 3 nút 0, 1, 2 thì vector representation lúc này của nút 0 ứng với cùng 1 vector 1x2 = <6, -6> (với 1 * 1 + 1 * 2 + 1 * 3 = 6 cùng 1 * -1 + 1 * -2 + 1 * -3 = -6)

GCN

1 hidden layer của GCN có thể được màn biểu diễn như sau: Hi=f(Hi−1,A)H^i = f(H^i - 1, A)Hi=f(Hi−1,A), vào đó:

Hi
H^iHi trình diễn đầu ra của layer máy i + 1, mỗi layer Hi
H^iHi tương ứng với một ma trận có kích cỡ NNN x Fi
F^iFi. Cùng với Fi
F^iFi mô tả số feature đầu ra output của từng nút trên layer Hi
H^iHi
H0=XH^0 = XH0=X, bao gồm trọng số được khởi tạo luôn là node feature của từng nút

Trong đó, hàm f rất có thể được biểu diễn đơn giản bằng 1 bí quyết sau: Hi+1=f(Hi,A)=σ(AHi
Wi)H^i + 1 = f(H^i, A) = sigma(A H^i W^i)Hi+1=f(Hi,A)=σ(AHi
Wi), với:

Wi
W^iWi là ma trận trọng số ứng cùng với layer lắp thêm iiiσsigmaσ là 1 trong những hàm kích hoạt phi con đường tính (activation function), lấy ví dụ hàm Re
LU

Nhưng với cách làm hiện tại, tất cả 2 điểm tiêu giảm như sau:

Dễ thấy rằng, bằng câu hỏi nhân thêm ma trận A, cùng với từng nút, cực hiếm mà các nút cạnh bên contribute đến nút viv_ivi​ lúc này đúng bằng tổng số feature của những nút đó tuy thế chưa bao hàm nút viv_ivi​. Ta hoàn toàn có thể khắc phục điều đó bằng cách "cộng thêm" identity matrix vào ma trận A, tức A = A + IVới hầu như nút tất cả degree béo (tức hầu hết nút liên kết với nhiều nút khác) thì bọn chúng gây ảnh hưởng lớn hơn trong vượt trình update trọng số của tế bào hình. Một điểm nữa, những khoảng giá bán trị hiện tại của A không hề được normalize, tức trả toàn rất có thể dẫn tới việc vanishing / exploding gradient trong quy trình backprop. Vày đó, ta rất có thể normalize A bằng cách D−1AD^-1AD−1A, với D là degree matrix. Điều đó đồng nghĩa với bài toán lấy mức độ vừa phải feature của những nút lấn cận.

Từ đó, công thức thuở đầu được biến đổi thành

Hi+1=f(Hi,A)=σ(AHi
Wi)=σ(D−1AHi
Wi)H^i + 1 = f(H^i, A) = sigma(A H^i W^i) = sigma(D^-1A H^i W^i)Hi+1=f(Hi,A)=σ(AHi
Wi)=σ(D−1AHi
Wi)

Trong paper, người sáng tác sử dụng Symmetric Normalization, đổi phương pháp thành

σ(D−1AHi
Wi)=σ(D−1/2AD−1/2Hi
Wi)sigma(D^-1A H^i W^i) = sigma(D^-1/2A D^-1/2 H^i W^i)σ(D−1AHi
Wi)=σ(D−1/2AD−1/2Hi
Wi)

với H0=XH^0 = XH0=X

Reference http://web.stanford.edu/class/cs224w/slides/08-GNN.pdf

Những điểm yếu kém / hạn chế của quy mô GCN truyền thống lâu đời và hướng cải thiện

Nhìn chung, mô hình GCN trong paper Semi-Supervised Classification with Graph Convolutional Networks - năm nhâm thìn được xây dựng khá 1-1 giản, tuy nhiên còn 1 vài tinh giảm như sau:Memory requirement: trọng số của mô hình vẫn được cập nhật qua từng epoch, tuy nhiên với mỗi epoch được update theo full-batch gradient descent, chưa hẳn mini-batch gradient descent, tức việc update trên tổng thể điểm dữ liệu cùng 1 lúc. Điều kia cũng trọn vẹn dễ hiểu bởi vì trong công thức update bên trên, mô hình vừa phải giữ toàn cục trọng số cùng ma trận adjacency matrix A. Với cùng 1 tập dữ liệu nhỏ như CORA dataset (2708 paper~node cùng 5429 citation / edge) thì không hẳn vấn đề tuy nhiên với 1 tập dữ liệu to hơn với hàng nghìn node cùng dense-adjacency matrix thì bí quyết tiếp cận này trọn vẹn không cân xứng khi memory requirement là siêu lớn!Directed edges & edge features: quy mô hiện trên về GCN được chào làng tại paper đã chưa thực hiện thêm những yếu tố khác như edge feature (adj matrix A lúc này chỉ là binary matrix) và directed graph (tức ma trận gồm hướng). Hướng cách xử trí trong paper hiện giờ đang bị giới hạn với undirected graph (ma trận vô hướng).Limiting assumption: câu hỏi cộng adjacency matrix A cùng với identity matrix I để có thêm feature của thiết yếu nút đó. Bí quyết làm này sẽ giả định rằng nút viv_ivi​ và các nút cạnh bên của viv_ivi​ sẽ contribute cho tới viv_ivi​ là như nhau, ta có thể nhân thêm 1 tham số λlambdaλ để điều chỉnh lại trọng số của nút viv_ivi​: A=A+λIA = A + lambda IA=A+λI. λlambdaλ thực chất rất có thể là 1 trainable parameter, hiện nay trong paper fix cứng = 1 và tác giả cũng đều có đề cập thêm về thông số này trên mục 7.2 (limitations và future work).Transductive setting: với rất nhiều nút new thêm vào trang bị thị (kèm theo những liên kết mới), quy mô GCN có chức năng tổng quan tiền hóa (generalization) siêu kém với phần đông nút mới đó với yêu cầu nên re-training để cập nhật lại tế bào hình!Graph
Sage (an inductive learning method)Vào năm 2017, 1 paper bắt đầu với tên thường gọi Inductive Representation Learning on Large Graphs - 2017 xuất xắc Graph
Sage được đề xuất, với tương đối nhiều cải tiến về mặt mô hình so với paper GCN - 2016. Hoàn toàn có thể tóm gọn gàng trong 1 số ý như sau:An inductive learning method, tức Graph
Sage có công dụng tổng quát lác hóa xuất sắc hơn với các unseen data
Vẫn dựa trên ý tưởng sinh những node embedding dựa trên các node lấn cận. Vào paper Graph
Sage, tác giả đề cập tới việc kiến tạo các hàm aggrerate nhằm tổng hợp lại thông tin từ các nút ở bên cạnh và khuyến cáo 3 hàm aggrerate tương ứng.Mini-batch update gradient descent và là một trong những spatial gnn method, khắc phục được hạn chế lớn số 1 của GCN là việc update theo full-batch gradient descent

*

Tổng quan, quy mô Graph
Sage được xây đắp cũng dựa trên ý tưởng là tổng hợp thông tin từ các nút lạm cận. Chi tiết giải thuật như sau:Input: đồ thị G=(V,E)G = (V, E)G=(V,E), các cảnh báo feature xv∈X,∀v∈Vx_v in X, forall v in Vxv​∈X,∀v∈V, ∀k∈1,...,Kforall k in 1, ..., K∀k∈1,...,K, cùng với KKK là số aggregator function được áp dụng tiếp tục nhau
Output: embedding vector zv∀v∈Vz_v forall v in Vzv​∀v∈V

*

Ta có, hv0=xvh^0_v = x_vhv0​=xv​, và với từng aggre function sản phẩm công nghệ k, trên từng nút v∈Vv in Vv∈V, ta tổng hợp tin tức từ các nút ở kề bên u,∀u∈N(v)u, forall u in N(v)u,∀u∈N(v), thu được 1 vector trình diễn h
N(v)kh^k_N(v)h
N(v)k​. Các hàm aggre biểu diễn hoàn toàn có thể sử dụng 1 số các hàm đơn giản như mean, pooling, ... Tuyệt thậm chí những mạng như lstm

Với thông tin thu được tổng đúng theo từ những nút ở kề bên h
N(v)kh^k_N(v)h
N(v)k​, ta triển khai concat h
N(v)kh^k_N(v)h
N(v)k​ với thông tin của nút vvv tại step trước đó (k - 1).

Với vector mới vừa được concat, ta đưa qua một fully connected layer dễ dàng với 1 hàm kích hoạt phi con đường tính làm việc cuối, lấy một ví dụ Re
LU. Đồng thời normalize hvk,k∈Kh^k_v, k in Khvk​,k∈K

Sau lúc thực hiện thống kê giám sát qua K lần (K aggre function), ta chiếm được feature vector zv≡hv
K,∀v∈Vz_v equiv h^K_v, forall v in Vzv​≡hv
K​,∀v∈V

Ta có thể stack những aggre function liên tiếp nhau với ao ước muốn quy mô sẽ sâu hơn cùng học được rất nhiều các abstract feature. Tuy nhiên, với dữ liệu đồ thị, bài toán stack không ít aggre function cũng không rước lại khác biệt quá các về phương diện kết quả, thậm chỉ ảnh hưởng đến performance của tế bào hình. Thường xuyên ta sử dụng 1, 2 aggre function là đủ.

Bằng việc kiến thiết các hàm aggre function như vậy, trọng số của mô hình dần được update dựa bên trên thông tin các nút cạnh bên u,∀u∈N(v)u, forall u in N(v)u,∀u∈N(v) của nút vvv. Lúc đó, tế bào hình có khả năng tổng quát lác hóa xuất sắc hơn (better generalization) với những điểm dữ liệu mới (unseen node). Với các unseen node mới như vậy, embedding vector được tạo nên dựa trên tin tức từ các nút ở bên cạnh của unseen node và từ chính node feature của nút đó. Giải thuật này có tính ứng dụng cao hơn, cân xứng với nhiều việc mà dữ liệu lớn hơn và chuyển đổi thường xuyên như: tài liệu mạng xạ hội, dữ liệu những trang wikipedia được liên kết, tài liệu từ các paper bắt đầu khi cite / reference tới những paper trước đó, tuyệt dữ liệu người tiêu dùng upvote, đoạn clip hay follow user bao gồm trên website Viblo này đây

*

Aggregator functions

Dữ liệu dạng đồ gia dụng thị không tồn tại tính vật dụng tự, kha khá về địa điểm như những dạng tài liệu như sequence, image, ... Yêu cầu giả định rằng các aggregator function được tư tưởng cũng cần có tính chất là symmetric (tức không nhiều bị ảnh hưởng bởi hoán vị của các nút lân cận). Vào paper tất cả đề cập cho tới việc sử dụng 3 aggregator function là mean, pooling cùng LSTM

Mean aggregator, là một trong những non-parametric function với symmetric, đơn giản và dễ dàng là bài toán lấy vừa đủ vector của các nút kề bên tại từng vị trí, xuất xắc element-wise mean operation. Việc thực hiện concat 2 vector trên đoạn pseudo code bên trên gần tương tự như một "skip connection" trong mạng redidual network.

LSTM aggregator, là một trong những parametric function. LSTM có thiết kế cho các bài toán dạng sequence, tức không hẳn symmetric. Tuy nhiên, trong paper bao gồm đề cập tới việc sử dụng những hoán vị bất chợt từ input đầu vào là những nút lấn cận. Hiệu quả thu được cũng rất khả quan lại so với những aggregator function khác

Pooling aggregator, vừa là 1 parametric function với symmetric, được thiết kế với theo công thức. Cùng với σsigmaσ là activation function, maxmaxmax là toán tử element-wise max-pooling operation

*

Loss function

Với câu hỏi supervised learning, áp ra output gồm những feature embedding zvz_vzv​, ta hoàn toàn có thể thiết kế thêm những layer, dễ dàng như 1 mạng fully connected layer nghỉ ngơi cuối, cùng với số node đầu ra output bằng số class, hàm loss function sử dụng là cross entropy

Với câu hỏi un-supervised learnig, mang dù không có label, tuy nhiên với cách xây cất từ mô hình, những node embedding thu được sau khi training trả toàn hoàn toàn có thể được thực hiện lại ở những downstream task.

Từ đó, hàm loss function được có mang cho việc un-supervised learning như sau:

*

Trong đó, uuu cùng vvv là 2 nút kề bên nhau, ở bên cạnh trong số bước đi ngẫu nhiên thắt chặt và cố định đã khẳng định từ trước. QQQ là tập hợp các cặp negative sample, tức 2 nút không lận cận nhau. σsigmaσ là sigmoid function.

Dễ thấy rằng, câu hỏi tính loss là phụ thuộc các nút lân cận, tùy số cách trong bước tiến ngẫu nhiên yêu cầu giúp mô hình có công dụng tổng quát tháo hóa hơn trên toàn dữ liệu, cùng khi áp dụng cho những unseen node; khác hoàn toàn với việc giảng dạy embedding cố định cho từng node như các mô hình node embedding như Deep
Walk hoặc Node2Vec. Đó đó là sự khác hoàn toàn lớn nhất giữa các quy mô tranductive learning (Deep
Walk, Node2Vec) với các quy mô inductive learning như Graph
Sage.

How to lớn apply?

*

1 số vận dụng trong thực tế

Pin
Sage - Pinterest Recommender Engine

Pinterest là một trong những mạng xóm hội share hình ảnh rất phổ biến. Nguồn tin tức trên Pinterest được thành lập dựa trên những thông tin về pins với boards. Cùng với pins tựa như như công dụng lưu / yêu thích ảnh từ người dùng, còn boards là tổng thích hợp các hình ảnh cùng 1 công ty đề, có tương quan đến nhau, được xây dựng do cộng đồng. Bài toán đặt ra với những kĩ sư Pinterest là làm sao để tăng thêm lượng xúc tiến từ tín đồ dùng, bằng phương pháp recommend các boards có tương quan khi người tiêu dùng thực hiện nay pin / save 1 bức hình ảnh nào đó

Tập tài liệu mà mặt Pinterest lưu giữ trữ tương đối lớn, khoảng 2 tỉ lượt pins và 1 tỉ các boards, với khoảng 18 tỉ connection (edge) giữa những pin với board. Nhiệm vụ của việc recommend là xây dựng được bộ node embedding cho các pins để từ đó tiến hành recommend các hình ảnh tương đồng hoặc những board bao gồm liên quan. Và mặt Pinterest có thừa kế từ mô hình Graph
Sage
ta vừa luận bàn bên trên bằng cách xây dựng 1 bi-partite graph (đồ thị 2 phía) với một bên là những pins, một bên là những boards và links giữa pins-boards

*

Với Node Embedding được khởi tạo ra ban đầu, các nhà cải cách và phát triển bên Pinterest tận dụng các metadata từ không ít kiểu dữ liệu khác nhau, từ cả ảnh và text để tạo các node embedding xix_ixi​ ban đầu ứng cùng với từng node. Bên cạnh đó, trong paper Pin
Sage còn đề cập tới những hướng improve khác như: Producer consumer mini-batch construction, Efficient Map
Reduce Inference
, Negetive Sampling Mining, Curriculum Training, ...

Trong quá trình thực hiện A/B test, team ngũ bên Pinterest cũng thấy rằng tính năng của hệ thống được tạo thêm đáng kể

*

Chi tiết về hướng vận dụng và nâng cấp của Pin
Sage, chúng ta có thể đọc thêm tại các nguồn sau:

Uber
Eat - user-based recommender engine

Mỗi bipartite graph sẽ được xây dựng để phục vụ cho 1 mục đích recommend riêng, ví dụ như hình ảnh gif mặt dưới

*

*

Có 1 điểm chú ý trong bí quyết xây dựng node embedding ban đầu. Vì những nút hiện tại tại bao hàm 3 thực thể khác biệt (user-dish-restaurant, còn lấy ví dụ như của pinterest trên là 2 thực thể pin-board) nên các nút sẽ sở hữu các initial embedding với số chiều khác nhau. Ta tiến hành thiết đặt thêm 1 mạng MLP ứng cùng với từng nút thực thể nhằm quy về 1 node embedding cùng với số chiều là núm định.

Vì 1 user rất có thể đặt 1 món ăn uống nhiều lần hoặc để món ăn thường xuyên từ là 1 số bên hàng, nên trong phần loss function cũng thực hiện sửa đổi để re-ranking lại các nút trong vật dụng thị

Bên Uber cũng tiến hành triển khai A/B testing cùng cũng nhận được những nâng cấp rất giỏi từ hệ thống.

Decagon - Heterogeneous Drug Side-Effect

Drug Side-Effect có thể hiểu là những chức năng phụ (tác dụng ngược) có tác động thêm, không tốt đối với người sử dụng khi thực hiện thuốc hoặc nhiều phương thuốc kết hợp với nhau mà không có chỉ định rõ ràng từ bác bỏ sĩ. Vì cấu trúc thành phần những các bài thuốc rất tinh vi về cấu tạo phân tử cần sẽ gây trở ngại trong câu hỏi điều chế và áp dụng nhiều phương thuốc khác nhau.

*

Với dạng dữ liệu kiểu này, ta cũng trả toàn hoàn toàn có thể sử dụng các quy mô GNN mang lại từng câu hỏi nhất định, ví dụ việc về chuẩn đoán chức năng phụ khi áp dụng chung nhiều nhiều loại thuốc.

*

Về khía cạnh graph cũng được xây dựng tinh vi hơn 1 chút. Với các nút xanh là tên thuốc, các nút cam là thành phần kết cấu kèm theo node embedding ứng với từng thành phần. Các cạnh bao gồm các tương tác giữa drug-gene, gene-gene và những side-effect giữa những loại thuốc với nhau

1 số những website về drug side effect information

GCPN - Goal-directed generation

Là việc graph generation hay vấn đề sinh / hình thành các nút cùng cạnh new trên vật thị để tạo ra các kiến trúc mới. 1 việc dễ hình sử dụng là hiện ra các cấu tạo phân tử dựa trên 1 số phương châm và điều kiện / quy tắc mang lại trước.

*

*

Từ đó, 1 hướng nghiên cứu và phân tích mới là hoàn toàn có thể áp dụng Reinforcement Learning với Graph Neural Network để về tối ưu hóa các kim chỉ nam và đk cho trước.

*

*

Chi tiết chúng ta có thể đọc thêm tại các đường liên kết sau

Reference http://web.stanford.edu/class/cs224w/slides/19-applications.pdf

1 số bài toán và hướng cải tiến và phát triển khác

3D Object Detection

OCR / Scene Text Detection

NLP / Text Classification

GAN

VAE

Feature Matching

Action Recognition

Pose Estimation

Document Information Extraction

Scene Graph Generation

Recommender System

And many more...

Reference https://github.com/nnzhan/Awesome-Graph-Neural-Networks

Hạn chế cùng lưu ý

Non-injective neightbor aggregation và injective neightbor aggregation

*

Adversarial Attack

Là việc tiến công vào các nút hoặc cạnh của thứ thị để gia công sai lệch tác dụng dự đoán của mô hình. 1 số dữ liệu dạng đồ vật thị rất có thể dễ dàng bị tấn công như: credit card fraud detection, social recommendation, product recommendation, ....

*

1 số kiểu tấn công thường gặp như
Thêm / xóa / biến đổi các mối links trên vật dụng thị (modify edge)Thêm / xóa các nút trên vật thị (node injection)Thay đổi các feature tuyệt node embedding của nút (modify feature)

*

Reference: http://web.stanford.edu/class/cs224w/slides/18-limitations.pdf

1 số paper cùng nguồn tư liệu đáng chú ý khác

1 số paper bản thân nghĩ là nên / đề nghị đọc sau khoản thời gian đã nạm được các phần về Node Embedding (Random Walk, Deep
Walk, Node2Vec, ..) với GNN (GCN, Graph
Sage, ..) đang đề cập nghỉ ngơi trên

GAT (Graph Attention Network)

Áp dụng thêm attention mechanism vào GNN

Cluster
GCN: An Efficient Algorithm for Training Deep & Large Graph Convolutional Networks

Cải thiện việc training trên các tập dữ liệu lớn bằng bài toán chia nhỏ graph thành các cluster và triển khai node sampling trên tập các sub-graph đó

Graph
Saint: Graph Sampling Based Inductive Learning Method

Là 1 cách thức graph sampling based inductive learning, cũng liên quan đến việc cải thiện việc training trên những tập tài liệu lớn

GIN (Graph Isomorphism Network) - HOW POWERFUL ARE GRAPH NEURAL NETWORKS?

Thiết kế các injective aggre function vào GNN

1 số những nguồn tài liệu là các khóa học tập và bài giảng hữu ích

Deep Learning là gì? mô hình deep learning - học sâu là 1 nhánh bé dại của AI - artificial intelligence (trí tuệ nhân tạo). Nó hoạt động dựa bên trên mạng nơ-ron tự tạo (neural networks) nhằm phân tích, xử lý dữ liệu và mô phỏng khối óc của con người. Cùng fips.edu.vn tò mò về ưu nhược điểm, ứng dụng của mô hình học sâu qua nội dung bài viết sau.

Deep Learning là gì?

*

Deep Learning là gì? Deep Learning (học sâu) cũng rất có thể được coi là một nghành thuộc Machine Learning – nơi máy vi tính tự học tập và cải thiện thông qua các thuật toán. Thay nhưng, Deep Learning được xây dựng dựa trên những khái niệm phức hợp hơn.

Chủ yếu vận động với mạng thần kinh nhân tạo để bắt chước khả năng tư duy và suy nghĩ của cỗ não bé người. Thực chất các khái niệm tương quan đến mạng nơ-ron nhân tạo và Deep Learning đã được cách tân và phát triển những năm 1960. Nhưng nó bị giới hạn do lượng dữ liệu cùng khả năng giám sát tại thời gian đó.

Trong trong thời gian gần đây, những tân tiến trong đối chiếu big data đã mang đến phép họ tận dụng về tối đa năng lực của mạng lưới thần ghê nhân tạo. Mạng nơ-ron nhân tạo (neural networks) là cồn lực chính phía sau sự phát triển của Deep Learning.

Mạng lưới thần gớm sâu (DNN - Deep neural networks) bao hàm nhiều lớp tế bào thần ghê khác nhau, có khả năng thực hiện nay các giám sát rất phức tạp. Deep Learning hiện đang phát triển rất nhanh và được coi là một một trong những bước nâng tầm lớn nhất trong Machine Learning.

Cách thức hoạt động vui chơi của mô hình học tập sâu - deep learning

*

Mạng thần kinh tự tạo trong Deep Learning được desgin để tế bào phỏng kỹ năng tư duy của bộ não nhỏ người. Phương pháp hoạt cồn như sau:

Một mạng nơ-ron bao hàm nhiều lớp (layer) không giống nhau, càng nhiều lớp thì mạng vẫn càng “sâu”. Trong những lớp là những node (nút mạng) và được link với các lớp khác mặt cạnh.Mỗi liên kết giữa các nút sẽ có được một trọng số tương ứng, trọng số càng cao thì nấc độ tác động của kết nối này mang lại mạng nơ-ron càng lớn.Mỗi nơ-ron sẽ sở hữu một tính năng kích hoạt, về cơ bản chịu trách nhiệm "chuẩn hóa" cổng đầu ra từ nơ-ron này.Dữ liệu được người tiêu dùng nhập vào mạng thần tởm đi qua toàn bộ các lớp với trả về kết quả ở layer cuối cùng, được hotline là lớp đầu ra output (output layer).Trong quy trình đào tạo quy mô mạng nơ-ron, những trọng số đang được chuyển đổi và nhiệm vụ của quy mô là tra cứu tập giá chỉ trị của những trọng số thế nào cho phán đoán đúng nhất.

Các khối hệ thống Deep Learning yêu mong phần cứng rất mạnh khỏe để rất có thể xử lý lượng lớn tài liệu và tiến hành các phép tính phức tạp. Nhiều quy mô Deep Learning có thể mất hàng tuần hoặc thậm chí còn hàng mon để xúc tiến trên phần cứng tiên tiến nhất hiện nay nay.

Xem thêm: Top 30+ Bài Hát Mừng Đám Cưới Hay Nhất Hiện Nay, Top 24 Bài Hát Cho Đám Cưới Hay Và Lãng Mạn

Ưu điểm yếu kém học sâu (deep learning)

*

Deep Learning là 1 trong những bước ngoặt to trong nghành nghề trí tuệ tự tạo - artificial intelligence. Nó chất nhận được các công ty khoa học dữ liệu khác gây ra nhiều quy mô có độ đúng chuẩn cao vào các nghành nhận ngoại hình ảnh, xử lý ngữ điệu tự nhiên, data…

Một số ưu thế nổi nhảy của Deep Learning bao gồm:

Cấu trúc neural networks linh hoạt, dễ dàng dàng đổi khác để phù hợp với nhiều thuật toán không giống nhau.Có tài năng giải các vấn đề phức hợp với độ đúng mực rất cao.Khả năng tự động hóa cao, tự điều chỉnh và tự về tối ưu hóa.Có khả năng thực hiện đo lường và tính toán song song, tính năng tốt, giải pháp xử lý lượng tài liệu lớn.

Bên cạnh ưu điểm, Deep Learning vẫn tồn tại tồn tại những hạn chế:

Cần trọng lượng dữ liệu to con để khai quật tối đa năng lực của Deep Learning.Chi phí thống kê giám sát cao vì phải xử lý n