IT男のアジャイルキャリア奮闘記

IT業界でキャリアを築きたい貴方にお役立ち情報を発信していきます

MENU

花生カントリークラブに行ってきました!

先月の話ですが、千葉県花生カントリークラブに行ってきました!

 

場所は千葉県のここです

f:id:hungrycrazyman:20210604074512p:plain

 

神奈川県川崎市から出発したので車で2時間ほどでゴルフ場に到着します

でも意外と遠かったですね笑

 

 

ゴルフ場の景色はこんな感じです

f:id:hungrycrazyman:20210604074826j:plain

とても綺麗なコースでテンション上がりましたね。

また、見ての通り天気が良い!

 

名物ホールはここではないでしょうか。

地続きの左フェアウェイから攻めるか、

下のチャレンジャーのように写真中央池越えの半アイランドフェアウェイを狙うか

f:id:hungrycrazyman:20210604075424p:plain


攻めがいのあるホールですよね

※ちなみに上記チャレンジャーは島に乗せて、PARで上がりました!者ではないです笑

 

今月もラウンドしますのでまたUpします!

 

それでは、また会いましょう

 

 

コロナ禍における在宅ワークの1日

在宅ワークになってから1年以上が経ちました。

 

ルーティン化してきた平日の過ごし方は以下の通り。

 

朝:

6:00起床

6:30朝食

7:00ゴミ出し・洗濯

7:30朝活(勉強など)

8:30筋トレ

9:00始業

通勤がないので空き時間を朝活や筋トレなどに活用できて気分がいいです

 

 

12:00 軽めの軽食

12:10会社の勉強会に参加もしくは散歩

お昼はあまりお腹が空かない日もあり。

食事を取らないこともあります。 

日によって勉強会に参加したり、散歩したりして業務とは異なることをしてリフレッシュするようにしています。

 

18:00終業

19:00買い出し

20:00晩ご飯

21:00勉強

22:00就寝

 

最近寝るのが早いですね。残業がない日はこんな感じです。

 

 

ではまた、会いましょう。

YouTubeで毎日筋トレを続けることができました

ここ半年以上毎日筋トレが続いているのでおすすめの取り組みについて紹介します。

 

目次

 

筋トレの背景

仕事がIT関係ということもあり、在宅ワークが多い昨今ですが仕事だけしていると体がなまり、ベイマックス状態になるのはなんとしても避けたいため、なんとか筋トレで体のシェイプアップができないかと思いました。

筋トレマシンのイラスト | かわいいフリー素材集 いらすとや

 

とはいえ、筋トレにはお金をかけたくないため、自宅で行える自重トレーニングでシェイプアップができないか考えました。

腕立て伏せをする男性のイラスト(筋トレ) | かわいいフリー素材集 いらすとや

 

毎日筋トレを続けることができた理由

目標を達成した人のイラスト(男性) | かわいいフリー素材集 いらすとや

結論から言いますと、好きな時間にYoutubeに流れている筋トレ動画をローテーションで見ることで毎日筋トレを続けられています。

この方法のポイントは以下の通りです。

ポイント1:好きな時間にやる

タイムマシンのイラスト | かわいいフリー素材集 いらすとや

 

1日のうちで筋トレをする時間帯を固定してしまうと「しなければならない」と義務感を覚えてしまい、モチベーションが駄々下りするのでお勧めしません。

筋トレが習慣となるまでは最初のうちは朝の時間帯などとざっくり決めて取り組むのは良いと思います。

 

ポイント2:Youtubeで筋トレを学び、実行する

youtube風アイコン | ゆるくてかわいい無料イラスト素材屋「ぴよたそ」

 

動画の中ではBGMを流しながら、インストラクターさんが筋トレをレクチャーしながら一緒に筋トレを行う形になります。

BGMが流れているので筋トレが楽しくなりますし、テンション上がるのでお勧めです。

 

ポイント3:曜日ごとに筋トレの目的を設定し、動画もローテーション(日替わり)で

曜日イラスト/無料イラストなら「イラストAC」

 

 曜日ごとに筋トレの目的、例えば日によって鍛える部位をかえるなどを決めておくと毎日違うメニューをこなすことができるので飽きることなく、継続性が生まれやすいです。

 

最後におすすめの筋トレ動画(チャンネル)紹介

 特にサクラではありませんので最後におすすめの動画情報を共有します。

興味のある方はみてみてください。

www.youtube.com

 

それではまた会いましょう

 

 

BERTを爆速でキャッチアップする

自然言語処理分野におけるBERTの利用方法について爆速でキャッチアップしたかったのでUdemyのコース「BERTによる自然言語処理を学ぼう! -Attention、TransformerからBERTへとつながるNLP技術- | Udemy」を受講しました。

 

結論から言うと、このコースおすすめです。

 

 

目次

コースの概要

本コースの概要は以下の通りです。

ディープラーニング(深層学習)を使う自然言語処理技術の中でも、特に注目を集めているBERTを解説するコースです。Google Colaboratory環境でPyTorchを使用し、コードを動かしながらBERTの原理、実装を学びます。

www.udemy.com

 

 

 

実際の受講時間

筆者は毎日朝1時間、昼30分、夜30分程度で4日間継続して受講した結果、おまけのレクチャー以外は受講を終えることができました。合計で8時間くらいです。

 

 

個人的に学んで良かった点

アルゴリズムの詳細イメージを掴むことができた

BERTアルゴリズムの存在自体は知っていましたが、Googleが開発者であり、これまでの深層学習とは少し違ってAttention層と言う新しいタイプの構造を取り入れている点
などわかりやすく開設されていました。

 

実装方法を学べた

知識としてアルゴリズムを理解したところで意味がないと思っていて実際は実装してみてアルゴリズムを動かしてみてなんぼだと思います。その点では動画の中でColaboratoryを利用してハンズオンの講義が組み込まれていたので実装方法まで学べたので良かったです。

 

個人的にはBERTアルゴリズムを扱えるtransformersと言うライブラリの使い方を学びたかったという別の目的もあり、それも達せられたので良かったです。

 

 

おすすめする受講者ターゲット

ターゲット:データ分析中級者向け

機械学習とは?深層学習とは?AIとは?という問いに対して全く答えられない初学者にとっては思い内容かもしれません。

 

また、実装レクチャーもあるため、ある程度Pythonのコーディングに慣れている方出ないと最初から拒絶反応が出て挫折してしまうかもしれません。

 

とはいえ、比較的優しい内容となっているので興味があれば是非受講してみてください。

www.udemy.com

 

Coleridge Initiative - Show US the Dataコンペ ~ 2nd Submission

※Kaggleアクティブコンペの順位(LeaderBoard)に影響しうる情報は掲載しておりません。

 

今回は現在取り組んでいるKaggleコンペ「Coleridge Initiative - Show US the Data」で2nd Submissionを実施するまでに得た学びを発信しようと思います。
Kaggle初心者の方は参考にしていただければと思います。

www.kaggle.com

 

 

目次

 コンペの概要について

本コンペは自然言語処理を利用したコンペになります。

 

訓練データとして膨大な科学論文コーパス(文章の塊)と各論文の分類ラベルが与えられ、参加者は訓練データを利用して別途与えれた論文コーパスデータ(テストデータ)に対し、以下に正確にラベリングできるかを競います。

 

実際はテストデータに対して推論したラベルデータが正解データ(Ground Truthラベル)とどのくらい類似しているかがスコアリングされ、順位に反映されます。

 

また、コンペプラットフォームへ提出するスタイルはcsvではなく、Notebook(コード)そのものを提出します。

2nd Submission(Sub)で得た気づき

結果から言いますと2nd Subを実施した時にスコア計算でエラーが出てしまい、
1st Subからの順位変動というものを見ることができませんでした。

 

しかしながら、Subするまでに得た学びを紹介します。

 

学びその①「Notebook実行時、インターネット接続は禁止」というルールを忘れていた。。。

今回文章コーパスデータに対してラベリングをする際に文章の要約技術を検証するために、PEGASUSという文章要約の事前学習モデルを利用することにしました。

 

PEGASUSについては以下のサイトがわかりやすいです。

qiita.com

 

公式サイトの実装コードを利用してテストデータからラベルを推論するNotebookを作成しました。

f:id:hungrycrazyman:20210531083139p:plain

 

いざ submitしようとした時にSubmissionErrorが出てしまいました。。。

 

コンペのCode Requirementsを見てみると、

 

f:id:hungrycrazyman:20210531083030p:plain

 

Internet access disabledとありますね。。。

 

先程のUsage Exampleにある以下のコードは事前学習モデルをインターネットアクセスでダウンロードするというものなので今回Submission Errorとなっておりました。

>>> tokenizer = PegasusTokenizer.from_pretrained(model_name)
>>> model = PegasusForConditionalGeneration.from_pretrained(model_name).to(device)

 

対応策として事前学習モデルを事前にKaggleプラットフォームにアップロードし、

f:id:hungrycrazyman:20210531083508p:plain

 

Kaggleプラットフォーム内で事前学習モデルをダウンロードするようにし、インターネット通信することなく、Notebookを実行できるようにしました。

 

tokenizer = PegasusTokenizer.from_pretrained('/kaggle/input/huggingfacepegasusmodel/')
model = PegasusForConditionalGeneration.from_pretrained('/kaggle/input/huggingfacepegasusmodel').to(device)

 

学びその② 推論中にメモリが足りず、セッションがクラッシュする。。。

今回事前学習したモデル(サイズ2.0GB)を利用して推論を実行するため、モデルをキャッシュ(RAM・メモリに該当)にダウンロードします。

 

メモリを使用した処理が非常に重くなるため、Notebook上で処理の仕方を工夫しないとRAM使用量が上限に来てセッションがクラッシュしてしまいます。

 

RAMの表示はNotebookの右上に表示されます。

f:id:hungrycrazyman:20210531122239p:plain

 

今回4つの推論処理をfor文で回していたため、RAMのキャパが足りず、セッションがクラッシュしてしまいました。。。

 

対策としては重い処理の後に必ず今後使用しない変数の削除とメモリ解放を行いました。

 

変数の削除は以下の通り、"del"を利用します

 

del train_df

 

メモリ解放はgarbage collectionというライブラリを利用して以下のようにdel文の後に記述します。

import gc
del train_df
gc.collect()

 

このような対策でNotebookのスペック制約がある中で最後までコードを実行させることができ、 submitを実施することができました。

 

最後までお読みいただきありがとうございました!

 


 

AWS Certified Machine Learning - Specialtyに無事合格しました!

こんにちは。

最近Flair Espresso Maker使って自宅でエスプレッソを入れるのにハマってます。

 

今回はAWS Certified Machine Learning - Specialtyの合格体験記を綴ります。
同資格の合格を目指す皆様にとって参考になれば幸いです。

 

目次

 AWS Certified Machine Learning - Specialtyとは?

本認定資格の求められるレベルについてはAWSの公式サイトから引用すると以下の通りです。

AWS 認定 機械学習 – 専門知識は、開発あるいはデータサイエンスの業務を行っている方を対象としています。この試験では、与えられたビジネス上の問題に対する機械学習ソリューションを設計、実装、デプロイ、維持する受験者の能力が検証されます。

出典:https://aws.amazon.com/jp/certification/certified-machine-learning-specialty/

筆者の前提知識

データサイエンススキル

基礎知識とPythonを使った基本的なデータ分析の経験はあるが、NN(ニューラルネットワーク)のカスタマイズやAWS SagemakerのSDKを利用した応用チックな開発レベルではない。

  • JDLAのG検定を2年前に取得していたのでデータサイエンスにおける一般的な知識はある。
  • 「0から始める深層学習」の輪読を勉強会で実施していたのでディープラーニングの基礎知識はある。
  • Kaggleコンペに定期的に参加し、参加者のCodeを眺めて基本的な機械学習・深層学習を学んでいます。※入賞経験なし

AWSスキル(クラウドスキル)

アーキテクチャ設計に関する理解はあるが、AIサービスなどAWSが提供する機械学習・深層学習ソリューションに関する理解・経験はほぼ0。

  • AWS Certified Solutions Architect Professionalを取得しているのでアーキテクチャに関する理解はあり。
  • AWS Sagemaker(機械学習開発ソリューション)は名前を知っている程度。

 試験準備で実施したこと

オンライントレーニン

自主学習

学習以外の受験ノウハウ

  • 偽陽性・再現率・精度・F1スコアなどの評価指標を計算する問題も出題されるため、試験会場はなるべくテストセンターとし、試験中にメモできる環境が良いです。

試験の結果・感想

  • 試験(※2021年5月7日受験)は894点でした。我ながら安心できるスコアでした。
  • 試験はデータ分析系の基礎知識から機械学習モデルのパフォーマンスチューニング・AIサービス・Sagamekerの使い方まで意外に幅広く問われる印象です。
  • 個人的にはModellingの分野で模擬試験の点数が取れていなかったので学習に苦しみましたが、Sagemakerのチュートリアルを実施したり、Udemyのアルゴリズム解説動画などから繰り返し学習を継続した結果、無事合格できました。

最後までお読みいただきありがとうございました!