2022-06-01から1ヶ月間の記事一覧
Tanaka, Masahiro, et al. "Automatic graph partitioning for very large-scale deep learning." 2021 IEEE International Parallel and Distributed Processing Symposium (IPDPS). IEEE, 2021. @inproceedings{tanaka2021automatic, title={Automatic gra…
Wang, Minjie, Chien-chin Huang, and Jinyang Li. "Supporting very large models using automatic dataflow graph partitioning." Proceedings of the Fourteenth EuroSys Conference 2019. 2019. @inproceedings{wang2019supporting, title={Supporting v…
本稿ではEncoderとDecoderをmulti-block化します。これでTransformerの基本的な構造は実装できたことになります。 Encoderでは、Attention → FeedForwardを一つのブロックとして、これを複数個積み上げます。このブロックでは入力と出力の次元は同じなので、…
本稿ではFeedForward層とResidual connection(残差接続)、正規化層を導入します。Transformerはattention機構とFeedForward機構から構成されており、それぞれに対して残差接続が行われています。 実装 FeedForward FeedForwardとは循環構造を持たないニュ…
本稿ではMulti-head Attentionについて実装を行います。 Multi-head Attention Q, K, Vを分割してそれぞれでscaled dot-product attentionを実行、結果を集約(concat) こちらの方が精度が良い(理由は分からんけども; 複数の文脈を取り出せるという効果も) そ…
本稿では翻訳モデルのプロトタイプとして簡易化したTransformerを作成します。英語→日本語の翻訳モデルを下図の構成で作成します。 上図は"dog is cute"をencoder、"犬はかわいい。"をdecoderに入力して"犬はかわいい。"を推論させるように学習させている様…
本稿では翻訳モデルを作成するにあたり必須な自然言語の事前処理について整理します。 用語集 コーパス (Corpus) コーパスとは "言語学において、自然言語処理の研究に用いるため、自然言語の文章を構造化し大規模に集積したもの" 「コーパス」(2022年6月2…
Transformer構造(の一部)を用いた深層学習アーキテクチャは自然言語処理におけるデファクトスタンダードになっています。 そこで、その心は何たるかを知るためにTransformerによる日英翻訳モデル作成をできるだけ自作することを目指します。 以降複数の記事…
@article{shoeybi2019megatron, title={Megatron-lm: Training multi-billion parameter language models using model parallelism}, author={Shoeybi, Mohammad and Patwary, Mostofa and Puri, Raul and LeGresley, Patrick and Casper, Jared and Catanza…
pythonでwarningをデバッグする際にpdbのソースコードデバッガでcatchしてくれると、とても便利ですよね。 例えば下記のコードを実行すると import numpy as np x = np.ones((2, 2), dtype=np.float16) x[0, 0] = 1e4 y = x ** 2 $ python tmp.py /Users/tat…
マイクロサービス 超離散 マイクロサービス 小さな独立したコンポーネント(機能)からソフトウェアを構成することをマイクロサービスと呼ぶ。 機能が分割している分開発をミクロに独立して行えたり、 負荷に応じた動的な計算資源の割り当てが可能になっている…
オープンソースなど他人の書いたコードを読むのに Sourcetrail 便利ですよね! (フリーとは思えないクオリティだ) 久々にインストールして使ってみたらエラー起きてました エラー内容 エラーが起きたバージョン: 2021.4.19 Release 2021.4.19 · CoatiSoftware…
田中コーパス python, pytorchによるサンプルコード pytorchでの使用を前提にして、 torchtext.vocab.Vocab (vocabulary)の作成 DatasetとDataLoaderの作成例 を紹介しています。