Hugging Faceを使った自作モデル作成の事始め

はじめに Hugging FaceにはBertForClassificationなどの既存のモデルが定義されていますが,自作のアーキテクチャでモデルを定義・学習したいこともあります.本記事では,ある程度ちゃんとした形式で実装をするための事始めについて書きます. 本記事はpyth…

GECToR:系列ラベリングによる文法誤り訂正

GECToRは文法誤り訂正を系列ラベリングとして解くモデルです.既存の系列変換モデルに基づくモデルでは,入力文に対する訂正文をleft-to-rightに生成することで解かれてきました.一方,GECToRは系列ラベリングに基づいており,入力文を編集するような訂正方…

#NAIST定点観測部

NAIST Advent Calendar 2022の20日目の記事です. #NAIST定点観測部は,NAISTの敷地を特定のポイントから撮影し,Twitterに投稿するときに使うハッシュタグです.部活としての実体はありませんが(ないですよね...?),代々有志により投稿が続けられていま…

ポエム:発表練習は3回くらいがちょうどいい

NAIST Advent Calendar 2022の7日目が空いていたので書きました. スライドを使った口頭発表の練習は,3回くらいがちょうどいい.それより少ないと,「つなぎ」の発話がうまくできない.それより多いと,口が慣れ過ぎてしまう. 発表練習が少ないと,「つな…

NAIST周辺のスーパーマーケット

はじめに NAIST Advent Calendar 2022の5日目の記事です. NAIST(広義?)周辺のスーパーマーケットを適当に紹介します. はじめに スーパーヤオヒコ 北大和店 イオン登美ヶ丘店 スーパーセンターオークワ 生駒上町店 ラ・ムー 奈良二名店 ラ・ムー 精華店 …

論文メモ:ACL2022, Adjusting the Precision-Recall Trade-Off with Align-and-Predict Decoding for Grammatical Error Correction

概要 背景 Align-and-Predict Decoding (APD) 直感 式 実験と結果 分析 感想 関連研究 Reference @inproceedings{sun-wang-2022-adjusting, title = "Adjusting the Precision-Recall Trade-Off with Align-and-Predict Decoding for Grammatical Error Corr…

GPT-2を使って文のパープレキシティを計算する

とある手法の再現実装をするために学んだので覚え書き. transformersのGPT-2を使って文のパープレキシティ(perplexity)を計算するための実装について書きます. フレームワークはPyTorch,python3.8.10で試しています. インストール 一文のパープレキシ…

文法誤り訂正の可視化ツールを作ってみた

本記事は,GEC (Grammatical Error Correction) Advent Calendar 2021 の22日目の記事です. はじめに 何ができればいいのか 何ができたか 使い方 展望 おわりに はじめに Gold / システム出力に含まれる訂正としてどんなものがあるか,実例をボーッと眺めた…

評価手法としてではない評価手法

本記事は,GEC (Grammatical Error Correction) Advent Calendar 2021 の18日目の記事です. はじめに 評価手法は,基本的に「評価手法を提案した」ことをメインに発表されることが多いです.一方で,それ以外の主張をメインとするときでも,評価手法(とみ…

GECの論文紹介:EMNLP2021

本記事は,GEC (Grammatical Error Correction) Advent Calendar 2021 の11日目の記事です. はじめに 国際会議EMNLP2021にフォーカスし,GEC(Grammatical Error Correction,文法誤り訂正)に関する論文で特に気になったものを3件紹介します.本当はGEC関係…

Gramformerを動かしてみた

本記事は,GEC (Grammatical Error Correction) Advent Calendar 2021 の9日目の記事です. はじめに 2021/11月末にGramformerというリポジトリを見つけました. github.com 特に何かの論文の実装というわけではなさそうで,プロジェクトを立ち上げたという…

文法誤り訂正タスクの情報源

本記事は,GEC (Grammatical Error Correction) Advent Calendar 2021 の7日目の記事です. はじめに 文法誤り訂正タスク(GEC, Grammatical Error Correction)は翻訳や情報抽出などのタスクに比べるとマイナータスクですが,最近は研究する人が増えている…

cLang-8データセット:ツールの動かし方の備忘録

ACL2021,"A Simple Recipe for Multilingual Grammatical Error Correction"の論文[Rothe+ 2021]で,cLang-8データセットが報告されました.cLang-8データセットはCleaned LANG-8 Corpusの呼称で,既に公開されているLang-8コーパス[Mizumoto+ 2011]のノイ…

論文メモ:ACL2017, Automatic Annotation and Evaluation of Error Types for Grammatical Error Correction

@inproceedings{bryant-etal-2017-automatic, title = "Automatic Annotation and Evaluation of Error Types for Grammatical Error Correction", author = "Bryant, Christopher and Felice, Mariano and Briscoe, Ted", booktitle = "Proceedings of the …

論文メモ:COLING2016, Automatic Extraction of Learner Errors in ESL Sentences Using Linguistically Enhanced Alignments

@inproceedings{felice-etal-2016-automatic, title = "Automatic Extraction of Learner Errors in {ESL} Sentences Using Linguistically Enhanced Alignments", author = "Felice, Mariano and Bryant, Christopher and Briscoe, Ted", booktitle = "Proc…

論文メモ:EMNLP2020, Improving the Efficiency of Grammatical Error Correction with Erroneous Span Detection and Correction

EMNLP2020,Improving the Efficiency of Grammatical Error Correction with Erroneous Span Detection and Correctionの論文メモです. @inproceedings{chen-etal-2020-improving, title = "Improving the Efficiency of Grammatical Error Correction wit…

論文メモ:ACl2021, Instantaneous Grammatical Error Correction with Shallow Aggressive Decoding

ACL 2021 long paper, Instantaneous Grammatical Error Correction with Shallow Aggressive Decodingの論文メモです. @inproceedings{sun-etal-2021-instantaneous, title = "Instantaneous Grammatical Error Correction with Shallow Aggressive Decodi…

論文メモ:BEA2021, Document-level grammatical error correction

@inproceedings{yuan-bryant-2021-document, title = "Document-level grammatical error correction", author = "Yuan, Zheng and Bryant, Christopher", booktitle = "Proceedings of the 16th Workshop on Innovative Use of NLP for Building Educationa…

論文メモ:NAACL2021, Comparison of Grammatical Error Correction Using Back-Translation Models

NAACL2021,Comparison of Grammatical Error Correction Using Back-Translation Modelsの論文メモです. @inproceedings{koyama-etal-2021-comparison, title = "Comparison of Grammatical Error Correction Using Back-Translation Models", author = "K…

論文メモ:EACL2021, How Good (really) are Grammatical Error Correction Systems?

EACL2021,How Good (really) are Grammatical Error Correction Systems? の論文を紹介してみます. @inproceedings{rozovskaya-roth-2021-good, title = "How Good (really) are Grammatical Error Correction Systems?", author = "Rozovskaya, Alla and …

【Pytorch】 EarlyStoppingを実装する

はじめに 本記事ではpytorchでEarlyStoppingを実装する方法を紹介します.EarlyStoppingはいくつか実装方法がありますので,そのうちの一つを扱います. おさらい: EarlyStoppingとは 深層学習における教師あり学習では,訓練データを用いて学習を行いますが…

【python】gensimモジュールで分散表現を獲得・保存・読み込む方法を丁寧に

はじめに 本記事では,gensimモジュールを用いてWord2Vecで分散表現を獲得・保存・読み込む方法を紹介します. 公式リファレンス: radimrehurek.com 目次 はじめに 目次 分散表現の学習 各種オプション 学習済み分散表現の機能 分散表現の保存 分散表現の読…

【Processing】シグモイド関数でイージングを実装する

はじめに 本記事では,Processingによるアート制作において,シグモイド関数を使ってイージングを実装する方法を紹介します.非常にお手軽にイージングを実装できるので,ぜひ使ってみてください. はじめに シグモイド関数とは 最も簡単な適用例 イージング…

2020年振り返り

昨年の自分も書いてましたんで(以下リンク),今年の自分も今年やったこと,成し遂げたことを書こうと思います(僕の好きな食べ物の一つはイカリング). gotutiyan.hatenablog.com 言語処理学会2020に参加した COLING2020に参加した IVRC2020で企画がSEED …

アートを切り替えて不思議に魅せる技法について(Processing Advent Calendar 2020 Day1)

本記事は,Processing Advent Calendar 2020の1日目の記事です.10周年だそうで,おめでとうございます! 目次 目次 2020振り返り・Processingコミュニティについて はじめに 雛形 簡単な実例で! 市松模様で作るアート 前準備 「黒タイル側」の実装 「白タ…

ICPC アジア地区予選2016-A Rearranging a Sequence 解説

問題: http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1367 C++で解説しています. 問題の概要 数列(1,2,...,n)があります.その後,の順で,を数列の先頭に出します.最終的な数列を出力してください. 例えばsample1では, 1,2,3,4,5 4,1,2,3,…

ICPC 2020-B 接触追跡 解説

問題: https://onlinejudge.u-aizu.ac.jp/challenges/sources/ICPC/Prelim/1641?year=2020 問題の概要 解法(一般論) 実装(C/C++) 実装(python) 別解: boolのOR演算 問題の概要 人がm人います.最初,そのうちの一人がウイルスに感染しています.その後…

ICPC 2020-A カウントダウンアップ2020 解説

問題: https://onlinejudge.u-aizu.ac.jp/challenges/sources/ICPC/Prelim/1640?year=2020 問題の概要 解法(一般論) 実装(C/C++) 実装(C++の別解) 実装(python) 問題の概要 0から9までの整数で構築された配列があります。この配列の部分列として2,0,2,…

【python】xlsxwriterの使い方を丁寧に

はじめに 本記事では,xlsxwriterでエクセルに数値や文字列を書き込む方法を紹介します.また,文字列の一部を色付けする,セルを結合後に書き込む,リスト形式のデータを書き込む,列の幅を調整するようなことも記載しています. 目次 はじめに 目次 xlsxwr…

【Processing】当たり判定を”色”で検出するテクニック

はじめに Processingによる当たり判定の検出は,座標を用いて行われることがほとんどだと思います.しかし,座標の当たり判定を書くのは結構大変です.大変さの要因として, 「当たる側」と「当てられる側」の座標を両方考慮しないといけないこと 座標の大小…