Slide 1

Slide 1 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. D E V D AY J U N 2 3 , 2 0 2 3

Slide 2

Slide 2 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. ӳޠͰಡ΋͏ʂ"84υΩϡϝϯτ සग़ӳ୯ޠूʂͱɺͦͷ࡞Γํ ⽔⾺ 拓也 (Mizuma Takuya) F - 3 - 1 Software Engineer Wealthnavi 株式会社

Slide 3

Slide 3 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. ウェルスナビ株式会社 Software Engineer ⽔⾺ 拓也 (みずま たくや) --- Ø 全⾃動資産運⽤サービス の開発に従事 Ø 前職: アマゾンウェブサービスジャパン合同会社, Solutions Architect Ø 得意な⾔語 : JavaScript / TypeScript Ø 苦⼿な⾔語 : 英語 スピーカーの⾃⼰紹介

Slide 4

Slide 4 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 突然ですが・・

Slide 5

Slide 5 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 突然ですが・・ みなさん、AWSドキュメント英語で読んでいますか︕︖

Slide 6

Slide 6 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 英語でAWSドキュメントを読むことのメリット • ⽇本語に対応していないドキュメントがある • ⽇本語で読んだ場合細かいニュアンスを取りこぼす場合がある • 英語版と翻訳版で不⼀致がある場合、英語版が優先される • そもそも、翻訳精度が怪しいものが・・ • 英語で読めるとかっこいい

Slide 7

Slide 7 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. とはいえ、 • 英語が苦⼿ • チャレンジしてみたが挫折した • 何から始めて良いかわからない • 単語がわからない

Slide 8

Slide 8 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. とはいえ、 • 英語が苦⼿ • チャレンジしてみたが挫折した • 何から始めて良いかわからない • 単語がわからない ← ここにフォーカス ü 頻出順で単語を学んでいきたい ü 例⽂と合わせて単語を覚えたい

Slide 9

Slide 9 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS公式ドキュメント頻出英単語1900作ってみた

Slide 10

Slide 10 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda l AWSドキュメント頻出英単語帳の作り⽅ l 頻出英単語の紹介

Slide 11

Slide 11 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWSドキュメント頻出英単語帳の 作り⽅

Slide 12

Slide 12 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語帳作成の基本⽅針 作成⽅針 • AWS 公式ドキュメントをスクレイピングする • ドキュメント内の単語をカウントし頻出順にソートする • 単語帳としての体裁を整える (単語/⽇本語訳/例⽂/例⽂⽇本語訳) あきらめること • 熟語、句動詞、慣⽤句の集計 : § 単語単位で集計するので複数の単語の組み合わせで意味を持つものは対象として 認識できない • ドキュメントの網羅性 : → sitemap に登録されていないドキュメントもある (Cognito のドキュメント

Slide 13

Slide 13 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. スクレイピングの対象 • sitemap から AWS ドキュメントURLの⼀覧を取得する ※ 英語版のみ § https://docs.aws.amazon.com/sitemap_index.xml → 9,567 pages! as of 2023.5.30 • 単語の集計範囲は #main-col-body > p::text (左図の⾚枠部分) • ノイズ除去のためページの Header や Footer, API Document は対象から外す 対象 対象外

Slide 14

Slide 14 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語の集計⽅法 • Python 製の Scrapy でスクレイピング • { “単語”: 出現数 } のフォーマットで集計 • AWSドキュメント単語帳として不要な⽂字列を除去

Slide 15

Slide 15 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語帳から除去する⽂字列 • 冠詞や前置詞, 助動詞, 主格代名詞 といった基本的な品詞 § 例) a, the, can, I, you • 特定の企業やサービス名 § 例) Amazon, AWS, EC2, Aurora, EKS … • ⼩〜中学校レベルの基本的な単語 § 例) have, get, like, book, some, good, people … • その他 § 数字、記号、その他単体で意味を成さない⽂字列

Slide 16

Slide 16 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語の集計 • Python 製の Scrapy でスクレイピング • { “単語”: 出現数 } のフォーマットで集計 • AWSドキュメント単語帳として不要な⽂字列を除去 the: 定冠詞 you: 代名詞 to: 前置詞 can: 助動詞 be: be 動詞 in: 前置詞、副詞

Slide 17

Slide 17 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語の集計 • Python 製の Scrapy でスクレイピング • { “単語”: 出現数 } のフォーマットで集計 • AWSドキュメント単語帳として不要な⽂字列を除去 aws, acm: サービスや企業の固有名詞 get, what: 基本的な単語

Slide 18

Slide 18 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語帳としての体裁を整える 単語帳に必要な要素 § 英単語 § ⽇本語訳 § 例⽂(英) § 例⽂⽇本語訳 OpenAI (Model: GPT-4) を使⽤して例⽂を作成 § 1900個の単語の例⽂と⽇本語訳の⽣成

Slide 19

Slide 19 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. OpenAI を⽤いた例⽂, 例⽂⽇本語訳の⽣成 ChatGPT (⼿作業) の場合 § token制限により⼀度のやり取りで10~15単語程度しか作成できない § GPT-4の利⽤制限 (25 requests / 3 hours) § レスポンスが安定しない LangChain を使ってOpenAIへのリクエストを⾃動化 ← 採⽤︕ § LangChain: ⼤規模⾔語モデルを拡張するライブラリ (Python/Typescript) § API呼び出しの場合、時間単位の利⽤制限なし § temperature (ランダム性) = 0 を指定してレスポンスが安定 § 1900語の単語を複数のchunkに分けて並列して実⾏ → (続く)

Slide 20

Slide 20 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. OpenAI を⽤いた例⽂, 例⽂⽇本語訳の⽣成 (イメージ) 英単語1900 No.1~10 ・ ・ ・ No.11~20 No.21~30 No.1890 ~1900 No.1~10 英単語1900 + 例⽂ No.10~20 No.20~30 No.1890 ~1900 OpenAI (例⽂作成処理) chunk chunk chunk chunk

Slide 21

Slide 21 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pythonスクリプト (⼀部抜粋) OpenAPI の API_KEYの指定 LangChain, OpenAI ライブラリのインストール モデル(GPT-4), temperatureの指定 GPT-4を指定 temperature=0 を指定することで決定論的になる (inputが変わらなければ結果が変わらない)

Slide 22

Slide 22 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pythonスクリプト (⼀部抜粋) 各チャンクに渡すプロンプトのテンプレートを指定 テンプレートに変数を埋め込む 三単現や複数形による揺らぎを 除去 (例. goes → go

Slide 23

Slide 23 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pythonスクリプト (⼀部抜粋) チャンクごとにOpenAIに対してリクエストを送信 テンプレートに埋め込む 単語⼀覧

Slide 24

Slide 24 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. Pythonスクリプト (⼀部抜粋) チャンクごとにOpenAIに対してリクエストを送信 結果: (chunk No.2968~2980 テンプレートに埋め込む 単語⼀覧

Slide 25

Slide 25 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 完成したもの (⼀部抜粋)

Slide 26

Slide 26 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 完成したもの (⼀部抜粋) AWSの⽂脈で例⽂が作成されている︕

Slide 27

Slide 27 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 結果 最後は⽬視で品質チェック: § どうしても想定外のノイズが残る。最後は⼈間の⽬でチェック & 除去 – youʼre , weʼre のような短縮系 – 三単現の s,es を除去した結果⽣じる単語の重複 • 例) OpenAIが 「goes」 を 「go」 と変換した結果、元々あった「go」と重 複する コスト(時間/お⾦): § スクレイピング: 15分くらい § 例⽂作成(OpenAI): 5並列で2時間くらい (Top: 3000まで算出) § OpenAIの⾦銭的コスト: $15.96

Slide 28

Slide 28 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 頻出英単語の紹介

Slide 29

Slide 29 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 頻出英単語 Top10 → 栄えある1位は「following」

Slide 30

Slide 30 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 頻出英単語 Top20 → 簡単な単語も例⽂を⽤いて正しく意味を理解できるかチェックすると良い

Slide 31

Slide 31 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 頻出英単語 Top500〜

Slide 32

Slide 32 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 頻出英単語 Top〜1900

Slide 33

Slide 33 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語学習量とドキュメントのカバー率 1900単語をマスターすればドキュメントの 91.77% の単語をカバー ※1 ※1 集計から除去した単語もあるため実際の値はもう少し⾼い

Slide 34

Slide 34 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 単語帳はウェルスナビテックブログで公開︕ 公開形式 § CSV § JSON § Markdown 英語で読もう︕ AWSドキュメント頻出英単語集1900︕ https://tech.wealthnavi.com/entry/20230 623/1687480819

Slide 35

Slide 35 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. まとめ l 英語で読むと最新の情報を正確に得ることができる l 頻出英単語1900をマスターすれば 90% 以上の単語が読める l 例⽂も合わせて学習することで AWS の⽂脈に沿って単語を学ぶこと ができる

Slide 36

Slide 36 text

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thank you! © 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. Takuya Mizuma @mizuma_t