圖論
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note No publishing access yet

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.

      Your account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

      Your team account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

      Explore these features while you wait
      Complete general settings
      Bookmark and like published notes
      Write a few more notes
      Complete general settings
      Write a few more notes
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Help
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note No publishing access yet

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.

    Your account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

    Your team account was recently created. Publishing will be available soon, allowing you to share notes on your public page and in search results.

    Explore these features while you wait
    Complete general settings
    Bookmark and like published notes
    Write a few more notes
    Complete general settings
    Write a few more notes
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # [Semi-supervised classification with Graph Convolutional Networks](https://openreview.net/pdf?id=SJU4ayYgl) ###### tags: `paper` [PPT]( https://onedrive.live.com/view.aspx?resid=110098534F5A2124!180&ithint=file%2cpptx&authkey=!AHsDdxUxJwNHlEk) [Word]( https://onedrive.live.com/view.aspx?resid=110098534F5A2124!182&ithint=file%2cdocx&authkey=!AL8UOcKAy8-EIpI) ## Abstract 1. Scalable approach(graph edges) for semi supervised learning 2. graph structured data 3. efficient varient of CNN 4. localized first-order aproximation of spectral graph convolution 5. local graph structure & nodes ## Introduction 問題: graph中分類node $\to$ 在引用文件的網絡中分類文件 且 label 只會存在在某些小的子集合中(某小部分的文件會有標註分類) $\to$ graph based semi supervised learning 基於圖的半監督學習大致分為兩類,分別是基於graph-based regularization以及基於graph embedding的。 * 前者是假設相連結點有類似的label graph Laplacian regulation in loss function: ![](https://i.imgur.com/W8X9qvW.png) 由(1)中的鄰接矩陣可以發現本損失函數是假設相鄰的點會有類似的性質,所以有相同的label,但是這個損失函數在某種程度上降低了模型的彈性。 * 後者是embedding-based embedding-based的模型在訓練的時候有兩個stage,首先要先訓練embedding接著是classifier,每個stage要分別Optimize,無法達成end-to-end。 本論文的目標便是將捲積應用在圖的結構上,並排除掉graph Laplacian regulation的假設,以及避免mult-step pipeline的使用。 ## Graph Convolutional Network ![](https://i.imgur.com/DhQDGE0.png) (2)式是GCN的順向傳遞方式。在GCN的網路裡,可訓練的參數只有每一層的W(在論文第三節的範例裡面用的是梯度下降法),同時每一層的大小是固定的,而H0則是指每個node的原始的特徵(feature X)。 :::info <font color=#000000> $\color{black}{Def}$ $\color{black}{\tilde{A} = A + I_N}$ $L = D - A$ $L^{\text{sym}}:=D^{-{\frac {1}{2}}}LD^{-{\frac {1}{2}}}=I-D^{-{\frac {1}{2}}}AD^{-{\frac {1}{2}}}$ </font> ::: >[color=#ff00ff] > >$\tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}}$是~~標準化~~正規化的Laplacian Matrix,如果從一般的Laplacian Matrix (L=D-A)的角度來看,那GCN每一層在做的事情就像是在計算每個節點自身要增加多少資料並且往其他節點流出多少資料。 > >純粹個人見解,請不吝指教。 >[name=Neko] >[color=#00A000] > >參照[wiki](https://en.wikipedia.org/wiki/Laplacian_matrix)中的資料: >$L^{\text{sym}}:=D^{-{\frac {1}{2}}}LD^{-{\frac {1}{2}}}=I-D^{-{\frac {1}{2}}}AD^{-{\frac {1}{2}}}$ >是正則化(Normalized)的Laplacian Matrix > >[算詳細的介紹?](https://zhuanlan.zhihu.com/p/81502804) >[name=Omnom] ### Origin of (2) 1. **Spectral Graph Convolution** Graph的Spectral相當於對圖的Laplacian做特徵值分解 ![](https://i.imgur.com/qGJoaZI.png) 把圖的Laplacian想成是對鄰接矩陣A的某種正則化的話,特徵值分解就好比是在拆解graph。 在這裡我們把Spectral想成是把signal、graph之類的東西拆解成小成分就可以了。 >[color=#00a000] > >有關[Laplacian Matrix](http://www.csie.ntnu.edu.tw/~u91029/Graph3.html#2)的介紹 >有種Kirchoff law的感覺 >[name=Omnom] 2. **Chebyshev graph convolution** Spectral Graph Convolution的缺陷在於速度,因為要計算出Matrix的特徵分解是相當耗時的,而且占用記憶體,因此Defferrard跟Hammond就使用了Chebyshev graph convolution來改善這個問題。 * Chebyshev polynomials (First kind): <font color=#000000> $T_0(x) = 1$ $T_1(x) = x$ $T_{n+1}(x) = 2xT_n(x)-T_{n-1}(x)$ </font> * $$g_{\theta~'}\star x \approx \sum_{k=0}^K \theta~'_kT_k(\tilde L)x ~~~~~~~~~~~(5)$$ * $$\tilde L=\frac{2}{\lambda_{max}}L-I_N$$ >[color=#00a000] > >關於$\tilde L$的長相⋯⋯ > >Connected Graph 的 Normalized Laplacian Matrix有一個特性:$0 ≤ \lambda ≤ 2$ > >$\tilde \Lambda$形式如同上式,是為了將所有$\lambda$ scaling 至 $[-1, 1]$之間,以符合Chebyshev polynomials approximation的值域範圍。 >[name=Omnom] 定K為1的話相當於將X當作參數丟進網路,K=2相當於將$LX+X$,K=3則為$L^2X+LX+X$,而鄰接矩陣的次方剛好有這個[特性](https://en.wikipedia.org/wiki/Adjacency_matrix#Matrix_powers) 3.**GCN** Chebyshev graph convolution還是有其問題,就是訓練參數過多,比較前述的K=1,K=2,K=3就可以發現,而通常Graph的資料大小並不大,所以不當的設計容易造成過擬合。 使用stacking multiple convolutional layer來取代K=1時的Chebyshev graph convolution,讓整體function可以保持線性(不過實際上還是會加上ReLU等activation function讓model能保有非線性的性質) * **Renormalization trick**: alleviate numerical instability and gradient vanishing ![](https://i.imgur.com/Woq4fcL.png) * general formula ![](https://i.imgur.com/xUVDEy1.png) ![](https://i.imgur.com/emzRfy5.png) >[color=#00A000] > > >[name=Omnom] >[color=#00a000] > >[摘](https://archive.siam.org/books/ot99/OT99SampleChapter.pdf) >Chebyshev polynomials form a special class of polynomials especially suited for approximating other functions. They are widely used in many areas of numerical analysis: uniform approximation, least-squares approximation, numerical solution of ordinary and partial differential equations (the so-called spectral or pseudospectral methods), and so on. >[name=Omnom] >[color=#00a000] > >[摘](https://zh.wikipedia.org/wiki/切比雪夫多项式) >第一類切比雪夫多項式的根(被稱為切比雪夫節點)可以用於多項式插值。相應的插值多項式能最大限度地降低龍格現象,並且提供多項式在連續函數的最佳一致逼近。 > >[龍格現象](https://blog.csdn.net/qq_39521554/article/details/79835492) >[name=Omnom] ## Experiments ### Datasets ![](https://i.imgur.com/Lppwbsa.png) :::danger empty ::: ### Baselines * label propagation(LP) * semi-supervised embedding(SemiEmb) * manifold regularization(ManiReg) * skip-gram based graph embeddings(DeepWalk) * iterative classification algorithm(ICA) * Planetoid :::danger empty ::: ### Result ![](https://i.imgur.com/OCmyTge.png) * comparison of diffferent propagation models ![](https://i.imgur.com/8714TWi.png) * influence of model depth ![](https://i.imgur.com/eI4GEv0.png) ## Discussion ### Limitations & Possible Future work #### Memory requirement * Limits 1. setup with full-batch gradient descent, memory requirement grows linearly in the size of the dataset 2. For very large and densely connected graph datasets, further approximations might be necessary. * Future 1. #### Directed edges and edge features * Limits 1. does not naturally support edge features 2. limited to undirected graphs * Future 1. possible to handle both directed edges and edge features by representing the original directed graph as an undirected bipartite graph with additional nodes that represent edges in the original graph #### Assumptions * Limits 1. locality 2. equal importance of self-connections vs. edges to neighboring nodes * Future 1. introduce a trade-off parameter $\lambda$ in the definition of $A^{}$, plays a similar role as the trade-off parameter between supervised and unsupervised loss in the typical semi-supervised setting ## Conclusion 1. novel approach for semi-supervised classification on graph-structured data 2. efficient layer-wise propagation rule --- based on a first-order approximation of spectral convolutions on graph 3. capable of encoding both graph structure and node feature in a way useful for semi-supervised classification

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password
    or
    Sign in via Google Sign in via Facebook Sign in via X(Twitter) Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    By signing in, you agree to our terms of service.

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully