ページ

2020年12月7日月曜日

東大・計数学科の「 AWSによるクラウド入門」について

はじめに

 東大・計数学科の講義及びAmazon Web Service(AWS)を使ったハンズオンの内容がWebで公開されていたので、それを実際に体験してみた際のメモになります。
公開されているウェブページ:https://tomomano.gitlab.io/intro-aws/

講義の概要

 全3回(90分 x 3回)の講義の概要は下記です。
  1. クラウドの基礎
     クラウド及びAWSの概要(AWS CLIによるS3、CDKによるEC2立上げ)
  2. クラウドで行う機械学習
     Jupyter notebook/PyTorchによる機械学習。コンテナ(Docker/ECS)
  3. Serverless Architecture入門
     LambdaによるServerlessの実現、簡易SNSの構築
 講師自身が、
本講義のフィロソフィーを一言で表すなら, "ロケットで宇宙まで飛んでいって一度地球を眺めてみよう!" である.

と書かれているのですが、クラウドコンピューティングの全体像を、AWSに触りながら、具体的に手っ取りばやくつかむのが目的でその目的は十分に達成できる内容です。この分野に興味がある人であれば誰もが体験すべき素晴らしい内容だと思います。

気になった点メモ

 以下に幾つか気になった点をメモします。
  1. 実際にいくらかかったか?
     講義資料によると、「数百円程度のコスト」と言う書き方がされていますが、実際には下記にあるように、1.16USD = 121円程度でした。











  2. うまく動かなかった点(Windows 10 HomeでWSLを利用しない場合
     講義資料の1.4.必要な計算機環境に「UNIX系コンソール」とあり、Windowsのユーザは、Windows Subsystem for Linux(WSL)のインストールが推奨されています。が、私は、Windows 10 Home上のPythonの環境を利用してハンズオンを行いました(結論として、Dockerを利用するハンズオン(7.3等)以外は問題なく行うことができました。)その際に、うまく動かなくて注意が必要だった点を以下にまとめておきます。

    a. 変数の設定について(P16。以下、ページ数は講義資料のPDFのページ数)
     講義資料中でシェル変数にパス名等を登録し、その直後で利用する例が見られます。この際に、Windows上で動かないコマンド等がありエラーが出ることがあります。
     <例>
    $ bucketName="mybucket-$(openssl rand -hex 12)"
    $ echo $bucketName
    $ aws s3 mb "s3://${bucketName}"

     上記では、1行目で作成されたbucketName変数の中身が、3行目で${bucketName}として利用されているだけです。Windowsのプロンプトで1行目でエラーがでる場合は、上記をの1行目、2行目を入力せず、講義資料を基に、

     <例>
    $ aws s3 mb "s3://mybucket-c6f93855550a72b5b66f5efe"  
     等と置き換えてしまえばエラーが消えるはずです。

    b. 4.1準備(P.20)
     Windows 10 Home上で、下記のそれぞれのリンクに従いインストールしました。2020年11月現在は全て最新版をインストールすることで問題なく講義資料の内容を確認できました。
     -Python:https://www.python.jp/install/anaconda/windows/install.html
     -Node.js:https://nodejs.org/ja/
     -AWS CLI:https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-windows.html
     -AWS CDK: https://docs.aws.amazon.com/cdk/latest/guide/getting_started.html
     -講義のソースコード:https://gitlab.com/tomomano/intro-aws/-/tree/master/handson

    c. SSH(P.21)
     上記でインストールしたanaconda3のプロンプト(下記d参照)からSSHを利用

    d. プログラムの実行(P.26)
     以下、プログラムの実行時には、anacondaでインストールしたプロンプトから実行しました(画面左下「スタートアイコン」 -> Anaconda3(64-bit) -> Anaconda Prompt(anaconda 3)を選択)

    e. 仮想環境の作成(Windows環境)(P.26)
      以下、ダウンロードしてきた講義のソースコードのhandson/01-ec2のフォルダで実行しました。
    $ python -m venv .env
    $ .env/Scripts/activate
    $ pip install -r requirements.txt

      Anacondaで3系のpythonをインストールした場合にコマンドを入力する場合は、上記のように"python"のみで良いことに注意(python3としない)

    f. 環境変数の設定(P.27)
     Linuxではexportコマンドで環境変数を設定しますが、Windowsではsetxコマンドで設定します(コマンド入力後、プロンプトを一旦終了、再起動することで設定完了)

    $ setx AWS_ACCESS_KEY_ID=XXXXXX
    $ setx AWS_SECRET_ACCESS_KEY=YYYYYY
    $ setx AWS_DEFAULT_REGION=ap-northeast-1

    なお、上記設定後、setコマンドで、3つの環境変数が正しく登録されているかを確認すると良いと思います(Linuxの場合はprintenvを利用)

    g. SSH鍵を生成(P.27)
     オプションの一部が既に廃止されているようで、以下のコマンドで実行しました。
     なお、以下のコマンドでは、EC2KEY.pemと言うSSH鍵が生成されます。

    $ aws ec2 create-key-pair --key-name EC2KEY --output text > EC2KEY.pem
    

    この生成されたEC2KEY.pemですが、私の環境ではそのまま利用することが出来ませんでした。一旦、メモ帳等で開き、先頭と末尾の不要な行を整形し、以下のような書式とする必要がありました。

     
    -----BEGIN RSA PRIVATE KEY-----
    <文字列>
    -----END RSA PRIVATE KEY-----
    


    h. デプロイを実行(P.27)
     cdk deployのコマンドでcdk.jsonファイルが実行されるのですが、ファイル中に記載されているコマンドでpython3となっているためエラーとなります。事前にcdk.jsonのファイルをメモ帳等で開き、python3となっている個所をpythonに修正しておきます。

上記までで、第1回講義分(P32)まではカバーできたと思います。長くなってきたので、続きは別途記載します。

2020年11月23日月曜日

復習の方法(応用編その2)

はじめに

英英辞典の通読の復習について、応用編の続きです。


 Weblioのメニューで「英単語帳」⇒(左側の)「単語帳の復習」とたどると3つの形式で単語帳の復習が可能になっています。以前、記載した復習の応用的な方法の続きとして、以下の3つのを説明します。
  • 4択の選択問題として復習(点数で理解度を測る)
  • フラッシュカードで復習(手早く、音声を聞きながら眺める)
  • ディクテーションで復習(音声を聞き、書き取りを行う)



  • 4択の選択問題として復習










 「選択式の問題での復習を開始する」を選ぶと、4択の選択問題として復習が可能です。この時、4択の問題は自分で作成した単語帳から出題されます。出題されるフォルダを選択することで「今日はAの単語を復習する」等が可能です。
 私は、この機能を用いて、主に前日や少し前に登録した単語をテストする形で復習していました。最大50問までのテストが可能なのですが、私の場合は50問を、回答に6,7分、確認に3分程度(主に間違った単語を眺め音声を聞く程度)の、合計10分程度で行っています
 パソコンの場合は、(デフォルトの設定ですが)「出題ページの設定」で「1ページにすべての問題を表示する」を選び、画面のスクロールはスペースで行うと、一気に次の未回答の問題に飛ぶので便利です。

 この4択問題ですが、(選択肢に時々意味不明な語句が出てくること等、不具合もありますが)、「50問中何問正解できた」と言うゲーム感覚で復習出来て良い気がします。

 なお、Weblioには、これとは別に「英語力診断」という25問の英単語のテストがあるのですが、そちらは意味を選ぶ4択に加えて「1~4に正解無」と言う5つ目の選択肢があり難易度がぐっと上がります。それに比べて、この4択問題の場合は、4つの選択肢の中に必ず回答があるので、分からない場合でもじっくり考えて(語源や接頭・接尾語を見ながら)思い出す事や、間違えた場合の見直しで、暗記に大きな効果があると思います

 なお、「出題の設定」で英和、和英、英英と選択できるのですが、私は、英単語が出てきてその意味を日本語の4つの選択肢から選ぶ英和で行っています。英英辞典の通読を行っていた訳で英英で復習すべきかもしれませんが、やはり負荷が高いです。そこで、まずは日本語でしっかり意味を確認するためにも英和から始めるのが良いと思います。因みに、和英はうまく動かないようです。

  • フラッシュカードで復習








 
 「フラッシュカードで復習する」を選択すると、選択した単語帳のフォルダについて1単語ずつ単語の意味が隠れている状態で、その意味を思い出す復習ができます。所謂、単語カード(表に英単語、裏に意味が書かれたカード)での復習に近い復習法だと思います。
 この復習方法は(パソコンの場合ですが)画面下の方にあるキーボードショートカットを使う事でぱっ、ぱっとと素早く復習することがポイントだと思います。
 具体的には、キーボードのスペースキーに左の親指、矢印キー右手を置いて、単語を覚えていたら、すぐに右→で意味を表示しチラッと確認し、すぐにもう1回右→で素早く次の英単語に進む(1秒以下)。もし覚えていなければ、スペースキーで音を聞いたりしながら思い出しつつ、右→で意味を確認する、その後次の単語に進むの繰り返しです。またもう覚えたと自信が持てた段階で上↑で、学習状況を「覚えた」へ変更させます。

 なお、4択、フラッシュカードとも「覚えた」「学習中」の区別で出題される単語を選ぶ事ができるのですが、もともとが英英辞典のかなり難易度が高い単語だけを単語帳に登録している訳で、その中から「学習中」だけで出題されると厳しいです。そこで、まずは全単語を出題するようにし、その中で「覚えた」単語を増やしていくのが良いと思います。

  • ディクテーションで復習











 



 「ディクテーションで復習する」を選択すると、音声を聞き単語の綴りをキーボードで入力する復習となります。このディクテーションは効果のある学習法だとは思うのですが、英英辞典の覚えきれてない単語向けとしては、難易度が高くあまり利用出来ていません。
 しかし、何度も聞いて綴りを頑張って書いてみる、間違った場合でも自分の書いたものと正解を比較する事ができるという点は効果があると思っており、余力があれば、もしくは、もう少し難易度の低い単語を集めて練習すると良いと思います。
 具体的には、上記の図にあるようなaccomplice(共犯者)と言う単語について、音を頼りにacompoliceと聞き取ったとして間違いな訳ですが、正しいスペルの気づきになるとともに、次に文脈の中でaccompliceに出会った際に、共犯者と思い出せる確率があがると思っています。また、flank(側面)、frank(率直な、フランクな)と言ったLとRの区別等は、見て覚えるのに加えて、ディクテーションで音での区別もしておくと良いのかと思っています。


    2020年11月8日日曜日

    復習の方法(応用編その1)

    はじめに

    英英辞典の通読の復習について、その応用的な方法を説明します。


     以前、記載したように復習の基本的な方法では、Weblioの「単語帳」のフォルダを使って復習を進めていきます。

    1. フォルダの数と単語数
       復習に関係する項目として、私が英英辞典を1回通読して作成した単語帳フォルダはA-Zまでで61個。登録した単語数はA-Zまでの総計で5,273個でした。
       ここで1フォルダの単語数は最大100語で作成しました。当初は、登録できる最大数の1フォルダ200語で作っていたのですが、復習で単語を確認する際に200語だと上から下まで一覧で確認中に辛くなることが多く、(私にとって)「一覧でき、かつ、一度に復習できる適切な量」として100語で作成することにしました。頭文字毎に作成したフォルダ数と、登録した単語数は下記です。














    2. 様々な方法での復習
       私がWeblioに毎月300円払っても元が取れると考えているのは、この様々な方法で復習ができるという点です。具体的には、
      • アルファベット順に復習(基本編で紹介しました)
      • レベル順に復習(例:難しい単語は後回し 等)
      • 学習状況別に復習(例:覚えた単語のみ復習 等)
      • 4択の選択問題として復習(点数で理解度を測る)
      • フラッシュカードで復習(手早く、音声を聞きながら眺める)
      • ディクテーションで復習(音声を聞き、書き取りを行う)

    3. 具体的な方法
      それぞれの復習の方法を具体的に見ていきましょう。
    • レベル順に復習










     


     Weblioの単語帳には各単語ごとに1-30までのレベルがふられています。Weblioの解説によると、「英単語やフレーズを独自の基準で分類し「レベルの目安」を表示しています。」とのことで、「Weblio独自の基準で分類したものですので、単語によっては、必ずしも一般的な単語のレベル分類と一致しない可能性もあります。」と注釈がついています。

     30段階とかなり細かいのですが、1,2レベルの差はそれほど大きくないと思います。中にはレベルが低い語でも分からなかったり、レベルの高い語でも分かるものがあったりします(例:ad libはレベル25で難しい語に分類されているのですが、即興的にと言う意味の、アドリブだと言えば分かる人は多いのではないでしょうか?)

     と言う訳で、あまり細かくこだわるよりは3段階くらいに分けて、

     ・レベル1-10までは優先して覚えるべき語

     ・レベル11-20までは手ごわいが覚えるべき語

     ・レベル20-30までは優先順位を下げる語

    とするのが良いのかもしれません(この辺りの分類は各自の単語力によりますが)。ここで、単語帳のページの「レベル」の部分をクリックすると、このレベルの昇順、降順を切り替えることができます。ですので、基本編のアルファベット順に慣れてきたら、レベル順に切り替えまずはレベル20位までの単語を優先して覚えるというのが良いと思っています。


    • 学習状況別に復習

     レベル順と似た考え方ですが、単語帳のページの「学習状況」の部分をクリックすると、覚えたと勉強中の単語を並び変えることができます。これを使って、覚えた単語を集中的に復習することや、勉強中の単語のみを復習することができます。 


     長くなったので、以下は別のページに記載します。


    2020年11月2日月曜日

    復習の方法(基本編)

    はじめに

    英英辞典の通読の復習について、その基本的な方法を説明します。


    復習作業の概要

    以前、記載したように、復習作業の手順は下記となります。1、2については説明済ですので、以下、3の具体的な復習の方法について説明します。
    1. 頭文字毎の単語帳フォルダの作成
    2. 閲覧履歴の単語の単語帳フォルダへの登録
    3. 様々な方法で復習

    復習の基本的な方法

     weblioの画面上部の「単語帳」のタブを選択し、画面左側の「フォルダの管理」を選択するとフォルダの一覧が表示されます。この中から復習を行う、フォルダ名を選択します。
    ここでは、例として、私の4つあるAの単語のフォルダのうち1番最初の「Longman A1」フォルダを選択してみます。以下のような画面となります。
















     閲覧履歴から登録された単語が(デフォルトでは)アルファベット順に並んでいますので、上から順に「主な意味」、「発音」、「例文」等を確認しながら何度も繰り返し眺めていきます。この際に、スピーカーのようなアイコンをクリックすると発音を聞くことも出来るので何度も聞きながら覚えていきます。

     何度か繰り返し、数日後等、記憶が定着してきたら、「主な意味」や「例文」等の下にある「表示」の部分をクリックするとそれぞれの表示・非表示を選択できます。「主な意味」を非表示にして、単語だけを見て「主な意味」が浮かぶようになれば、一番右の「学習状況」を勉強中から覚えたに切り替えると良いと思います。これで学習状況が把握でき、(復習の)全体像と進捗率が把握できるようになります。

     なお、非表示にしていても、その非表示の部分にマウスをあてると「主な意味」や「例文」が表示されるので、分からない場合でもすぐに確認ができます。

    --
     完全に覚えたと思える単語については、削除しても良いと思いますが私はあまり削除はせずに「学習状況」を覚えたにして、そのままにしています。理由は、既に確認作業を得て選別された(確認作業時には覚えていなかった)単語になる訳で、そのような単語を記録しておき、(覚えた後でも)何度も見直すことで、忘れずに、そして、使える単語にしていくのが重要だと思っています。
    (逆に言うと、何度復習しても、勉強中に残ってしまう単語はどこかで諦めるのも大切だと思っています。)

    英英辞典を1回通読した結果・効果

    はじめに

    英英辞典の通読を1回終えた時点での効果や気づいたことについてまとめます



    1.単語力の目安(通読前)

    以前、紹介した以下の2つで英英辞典の通読を開始した時点の英語力を測定していました
     -Weblioの語彙診断テストは、10回の平均が68.0点
     -Test Your Vocabularyは、6780語
    となっていました。

    2.単語力の目安(通読後)

    2020/8/17の中間地点で、
     -Weblioの語彙診断テストは、10回の平均が110.3点
       -Test Your Vocabularyは、8660語
    となっており、数字の上でも効果があったようでした。

    最終的に、2020/9/30に終わった後の
     -Weblioの語彙診断テストは、10回の平均が104.75点
       -Test Your Vocabularyは、9760語
    となっています。

    以前まとめた内容から判断すると、
     (通読前)は英検準1級、TOEIC700点レベル
     (通読後)は英検1級、TOEIC950点のレベルに近づいた
    と言えるのかもしれません。

    3.その他、通読後気づいたこと

    • 単語力について
       今回通読した英英辞典「Longman Handy Learner's Dictionary of American English」は、表紙に28,000語収録とあるのですが、これは子見出し含めた総数と思われます(例えば、大見出しargueの項目に、品詞の異なるarguableとかarguablyとかも小見出しとして記載されていて、これが3語とカウントされるはずです)こういう品詞の異なり等々も含めて28,000語だと思われます。

       ざっくりなのですが1ページに「大見出し=独立した1つの単語」は、30-40語位です。30-40語 x 全512ページなので、凡そ15000から20000語の大見出しを含む辞書だと言えると思います。
       その中で、初見の際に「分からない、ちょっと難しい」と言う単語は電子的に記録していてAからZで総計5,275語になりました。全体のざっくり1/3から1/4。それらは何回か見返していて、その1/3は理解したと思います。

      という具合でまとめると、現時点で、
       ・全15000語から20000語のうち
       ・3000-4000語位は分からない
      という具合です。
      逆に言うと10,000語超は覚えているという結果なので、そっちをより使えるようにしつつ、もう少し単語力を増やしていこうと思います。

    • 読解力・速読力について
       この通読を行っていた凡そ半年間、毎日辞書を数ページ読んでいました。私は、
      業務で英語を使う環境にいますが、辞書の通読のような様々な単語(単語の意味の短文)が出てきて、それを大量に速く読むような機会は初めてでした。
       結果として速読力が上がった気がします。何か数値でどのくらい早くなった等と表すことができないのですが、その差が明らかに分かる位、読解力・速読力があがったと感じています。
      ⇒(読解力・速読力を高めるために英英辞典の通読をお勧めすることはできませんが)、英英辞典の通読の効果として、単語力の強化以外に、読解力・速読力の向上も期待できると思います。

    • その他の英語力について
      読解以外の力、聞く力、書く力、話す力についてですが、これは少しずつ効果があったという具合だと思います。
      -聞く力については、Weblioで音声を聞くことで少しは伸ばせたと思います。
      -書く力については、多く短文を読んだことによる英語のリズム・語呂のようなものはつかめたかもしれません。
      -最後に話す力ですが、これについては、今回覚えたような単語は難しすぎ使えない気がします。ここを伸ばすには別の方法が良いと思います。

    • その他、気づいたこと
      1.通読にかかる時間について
       以前、この辞書の通読にかかる時間について「平日1日1時間弱、週末2日合計で3時間程度取れるとして半年で1回目が完了」と書き、概ね、その通りになったと思います。
       具体的には、確認作業の際の辞書を引きながらWeblioに登録をする場合で、1ページ10分位はかかると思います。その上で復習作業も行うとすると、平日1時間弱の勉強時間だと慣れた場合で1日4ページ位の確認作業が限界だと思います。(仮に1日3ページだとすると。512ページ ÷ 3ページ/日 = 170日 凡そ6か月)
       これをもっと早く、例えば1日10ページ等で進められるかと言う話ですが、かなり単語力のある人でないと単語の理解や暗記が難しいのではと思います。

      2.復習と更なる単語力強化について
       1回読み切った後に、更に復習を続けていくことで更に単語力を伸ばしていくことができると思うのですが、このモチベーションを持ち続けるのはなかなか厳しいかもしれません(同じ英英辞典を何度も繰り返すのが良いのか、他の英英辞典を読んでみるのが良いのか、他の方法はあるのか)

      最後に、細かい字を眺め続ける作業になりますので、目は適宜休ませながら行わないと目が悪くなるかもしれません。



    2020年10月25日日曜日

    英英辞典通読開始時点の単語力

    はじめに

     1.英単語力向上・ボキャビルの一般的な方法では、単語力の目安・目標感を確認しました。今、私は10000語を超える単語の勉強法として英英辞典の通読を行っているのですが、その開始時の英語力についてまとめてみます。



    1.英語勉強・利用の略歴

    1. 地方の高校を卒業。1年浪人(英語の成績は普通)
    2. 大学に入学、学士・修士を取得し卒業(大学の1年時に英検準1級不合格)
    3. 一般企業に就職(就職時のTOEICは600点程度。その後840点程度まで独学)
    4. 1年間、米国に駐在(技術営業)
    5. 帰国後、英検準1級取得。TOEICは凡そ900点台(リスニングは概ね満点)
    6. 仕事は技術系、グローバル関係の業務も経験
    7. 英検1級取得
    8. ドイツ駐在、3年経過(←いまここ)

    2.単語力の目安

    以前、紹介した以下の2つで目安を示しておくと、
    英英辞典の通読を開始した2020年の5月に測定したところ、
     -Weblioの語彙診断テストは、10回の平均が68.0点
     -Test Your Vocabularyは、6780語
    となっていました。

    一応、しばらく前から英検1級、TOEIC900点台を所持しているのですが、以前まとめた内容から判断すると、スタート時点では英検準1級、TOEIC700点レベルだったようです。

    2020年9月30日水曜日

    英英辞典通読20200930

    2020年9月30日

    進捗:
     4ページ通読:P477(unnatural)-490(U-turn)まで
     所要時間:41分07秒 
     進捗度:512/512(100.00%) 1周目完了!!
     登録した単語数:56語
     特に重要な単語:use
     雑感等:unscathed:無傷の
         unsung:賞賛されていない
         ★最後の最後の単語がU-trun
          ⇒U-turnしてもう1周し暗記を定着させると良いのかも、、、
         とりあえず終わりました。近々にまとめを書きます。

    --
    復習:Gの後半(93語)について復習