Skip to content

g0tt/pfn_2019summer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

README

作業ディレクトリは全て本README.mdと同一階層である前提で書いています。

テスト

cargo test

実行方法

cargo run --release [タスク名]

の形式になっています。以下に各タスク名を記載します。

課題1

  • task_01 $h_G$を計算します。計算するグラフはsrc/main.rstask_01()で定義されています。

課題2

  • task_02 固定されたグラフ(task_02()内で定義)を学習します。

課題3

いずれも2000のデータのうち1600を学習,400を検定に使っています。

  • task_03_sgd SGDでdatasets/train/内のデータを学習します。
  • task_03_msgd Momentum SGDでdatasets/train/内のデータを学習します。

課題4

Adamによるパラメータ更新を実装しました。ハイパーパラメータは論文の推奨値に従っています。

  • task_04 課題3と同様にtrainを1600/400に分けて更新アルゴリズムをテストするためのタスクです。
  • task_04_test すべてのtrainデータを使って学習した後,datasets/test/内のグラフを分類し,標準出力に書き出します。

テストデータの分類

cargo run --release task_04_test | tee output_raw.txt
tail -n +102 output_raw.txt > prediction.txt

コードの構成について

src/main.rs

実行起点です。簡単なユニットテストもこのファイル内に書いてあります。

gnn::GNN

GNNの主要な操作はこの中で定義しています。

gnn::optimizer::{ SGD, MomentumSGD, Adam }

更新アルゴリズムのみ別ファイルで定義してします。

trait gnn::optimizer::Optimizer

更新アルゴリズムは全てこのトレイトを実装しています。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages