Skip to content

suzuhiki/LabNLPCompetitions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LabNLPCompetitions

研究室の新人研修のコンペの記録

コンペに利用したデータは念のため削除しています

Twitter感情極性分析

  • タスク
    • 日本語のTwitterテキストについての感情極性分類
    • 書き手の感情極性を5クラス分類(-2, -1, 0, 1, 2)
    • 評価指標は Quadratic Weighted Kappa
  • データセット
    • 訓練用が3万件、検証用が1,250件、評価用が1,250件、提出用が2,500件
    • Train/Dev/Testの分割変更は禁止
  • リーダーボードのスコアで評価

コード共有

第1回 ※ニューラルネットワークを使用しない

最終提出で利用した実行ファイル

stopword辞書の変更で少しスコアが下がっていますが、この実行ファイルでも同じようなスコアがでます。 StepEstimatorが一番スコアが出たので簡単に概要を書いておきます。

StepEstimator

StepEstimatorというのは勝手に命名したモデルを複数使って推論する方法のことです。 以下の図のような構造をしています。

B3コンペ_5クラス分類図_whiteback

3クラス分類器でpositive、neutral、negativeの3クラスに分類した後、positiveとnegativeはそれぞれ2クラス分類したあと結果を出力します。

3クラス分類にLogisticRegression、2クラス分類にLightGBMを使ったときにBestスコアが出ました。その時devデータについての結果は以下の2枚のようになりました。

1000

1000

第2回 ※外部データを使用しない(事前学習も不可)

v.0.0.1_selfattention.ipynbを実装しました。 参考にしたページ:PyTorchでSelf Attentionによる文章分類を実装してみた

第3回 制限なし

Transformersライブラリ(hugging face)を用いて学習済みモデルを5クラス分類にファインチューニングしました。 事前学習モデルはcl-tohoku/bert-base-japanese-whole-word-maskingです。

early stoppingを実装したコードで5epochの学習した結果、testデータのQuadratic Weighted Kappaの値が0.501でした。

About

研究室の新人研修の機械学習コンペ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published