20230509
- オブジェクト指向設計実践ガイド Rubyでわかる進化し続ける柔軟なアプリケーションの育て方
- 5.1 残り / 5.2 ダックを信頼するコードを書く
- Effective SQL
- 第1章 データモデルの設計
- 項目1 すべてのテーブルに主キーが定義されていることを確認する
- 関数型プログラミングの基礎
- 1.2 チューリング機械、命令型モデルの特徴
自分での学習の時間のような頭構成を、どう仕事で使うのがいいか、ということを、休暇明けから考えている。
20230508
- オブジェクト指向設計実践ガイド Rubyでわかる進化し続ける柔軟なアプリケーションの育て方:5.1 ダックタイピングを理解する(途中まで)
- Effective SQL:概要だけさらっと
- 関数型プログラミングの基礎:1.1 計算のモデル + α
休暇明け、うまく頭で構成しながら仕事に向かえている気がする。 自分の勉強の時間が少しでも取れたのでよし。
20230507
- Codewars:Count by X
- Ruby or Rails6 実践ガイド:16-1 単一テーブル継承
- ブログ:1つ書いた
- AWS認定ソリューションアーキテクト - アソシエイト問題集:4問
- SQL実践入門:ウィンドウ関数
9連休最終日ということで、マリオの映画を見に行った。1年半住んで最寄りの映画館に初めて行った(すごい迷った)。
明日から仕事再開ということで、調子を崩さないように、徐々に慣らしていこう。
2023年のGWと5月の平日について
このGWは訳あって制約のある休暇だったのだが、将来振り返ったときにある種のターニングポイントとなりうる連休であった。ピンチはチャンスである、という言葉があるが、それが味に沁みた期間だった。
プログラミングの勉強と多少向き合い、やり方についても軌道に乗り始めている気がする。この辺りは今後記事になるかもしれない。
正確にいうと半分軌道に乗った、という表現が正しいと思う。もう半分は2023年2Qの残り、もっと言えば5月の過ごし方次第だろう。
そんなこんなで、5月の休日はGWやったことを継続する予定。平日については、以下の本を少しずつ読めたらと考え中:
- オブジェクト指向設計実践ガイド Rubyでわかる進化し続ける柔軟なアプリケーションの育て方
- Effective SQL
- 関数型プログラミングの基礎
ゆっくり頑張ろう。
20230506
- codewars : Find the odd int
- Ruby or Rails6 実践ガイド:Chapter 4 RSpec
- SQL実践入門:第7章 サブクエリ
- 7.1 サブクエリが引き起こす弊害 / 7.2 サブクエリの積極的意味
- AWS認定ソリューションアーキテクト - アソシエイト問題集
- から派生してAmazon Aurora とはらへん
- Microsoft Azure Machine Learning Studio
- 色々ここをいじってた
- Azure Machine Learning で自動機械学習を使用するは完了
- LangChain
- 20:30〜 前職繋がりの人とオンラインで話す
AWS本、深掘りするためのきっかけを与えてくれるに過ぎない。
20230505
ここまで引きこもっているGWは人生初と思う。電車に乗っていない。
✅ codewars 1問
- Sum of Pairs
- リストの中から和が特定の値になる最小のindexのpairを返す問題
- 通過しないケースがありunlockしてしまったが、solutionを見るとJavaで以前やった問題と同じ考え方であった
- 繰り返して和が特定の値になるのを見つけるのではなく、特定の値との差が既出を検証する
- そうすることで、indexが最小のpairを自然に取得できる
select
やfind
を使用してしまうと、そこが満たせない
- 簡単にいうと、Setを用意しておいて、配列の各要素とtargetとなる値との差分がそのSetにinclude?かを確認していく
✅ Ruby or Rails6 実践ガイド
- Chapter 13 モデル間の関連付け
- 13-1️ モデル間の関連付け
- 職員のログイン/ログアウト情報を記録するため、
staff_members
テーブルと1対多になる新規テーブルを作成する - migration scriptにおける重要箇所は以下:
t.reference :staff_member, null: false, index: false, foreign_key: true
- モデル間の関連付けの実装にて、
class_name
オプションが書かれていないときは、省略されていたということ dependent: :destroy
は親に書くhas_many
で関連付けたメソッドは、ActiveRecord::Association::CollectionProxy
クラスの子孫クラスのインスタンスを返却
- 職員のログイン/ログアウト情報を記録するため、
- 13-1️ モデル間の関連付け
- しかしこの本、痒い所に手が届く感じがする。最初の方は飛ばしていたが、そのうち読んでも勉強になりそう
- Chapter 13 モデル間の関連付け
✅ SQL実践入門
- 5.3 SQLではループをどう表現するか
SIGN
関数- ポイントは以下のウィンドウ関数
ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING
- ある郵便番号に一番近いカラムの値を持つレコードを取得せよと言われると、手続き型脳だと、1行ずつ比較しようとするが、そうではなく「近さ」という概念を導入する
- CASE式の
WHEN
は短絡評価 100回近く繰り返す葛飾北斎のような引越しマニアも
- 葛飾北斎について知っているので、これが理解できる(こういうのが知識を持っていることの喜び)
- 再帰共通表式
- MySQLだと13.2.15 WITH (共通テーブル式)かな、読んでみても?
- 入れ子集合モデル、多分めちゃくちゃ面白いアイデアだと思うのだけど、すぐ理解できていない
- 5.3 SQLではループをどう表現するか
✅ AWS認定ソリューションアーキテクト - アソシエイト問題集
- 第4章 レジリエントアーキテクチャの設計
- 4.1 多層アーキテクチャソリューションの設計
- AWS Global Acceleratorについての説明:AWS再入門ブログリレー2022 AWS Global Accelerator 編
- ネットワークの可用性やパフォーマンスを向上させる
- EFS(Elastic File System)
- EC2フリート
- OAI(Origin Access Identity):CloudFront経由のみでファイルにアクセスできる
- AWS Global Acceleratorについての説明:AWS再入門ブログリレー2022 AWS Global Accelerator 編
- 4.1 多層アーキテクチャソリューションの設計
- 5問やったが、これ、1日1問にして、じっくり深く調べるほうが勉強になる気がしてきた
- 第4章 レジリエントアーキテクチャの設計
✅ Microsoft Azure AI Fundamentals: 機械学習用のビジュアル ツールについて調べる
- Azure Machine Learning で自動機械学習を使用する
- Azure 自動機械学習とは
- Azure Machine Learning のワークスペースを作成した
- サービスの中に、Bonsaiってのある
- AutoMLプロセスを理解する
- Azure Portalから行こうと思っていたが、違うようだった
- Microsoft Azure Machine Learning Studio
- あまり進まなかったが見るべきサイトが明らかになったのでOKとする
- Azure 自動機械学習とは
- Azure Machine Learning で自動機械学習を使用する
✅ LangChain
- 【2023/04/20】プロンプトエンジニアリングから始めるLangChain入門
- この辺りを深掘るといいかも:Vector Store, Embeddings, Agents(MRKL, ReAct)
- あとはAPI使えるようにそろそろするべきか
✅ ブログ
- Azureの記事を投稿した
徹底攻略データベーススペシャリスト教科書
- 第2章 データベース基礎理論
- 2-1-1 正規化とは
- p75まで
本の中にすごいアイデアや面白い情報があるので、出かけなくてもいいじゃん、となる。 広さより深さを求めるようにしないと。章ごとに読んでいくだけだったら簡単にできる。作業として。資格もただ受かるだけなら、もっと効率のいい方法がある。
細かくやったことを書いてみた。すごそうには見えてしまうが、これは良くない。ここらへんの考えたことは別の記事として整理する予定。
Microsoft Learnの「AzureでAIの使用を開始する」を読んだ
昨今の急速な流れに乗り遅れないように...とは実は考えていないんだけど、とはいうものの、何も知らないと支障を来したり可能性も狭まるというわけで、以下を読んだ:
Twitter見ていれば一定情報は流れてくるし、そこでのリンクの記事を読んでいくことも考えたけれど、1週間で状況がガラッと変わる今、目先の情報を追っていくのも大変そうだなぁと思い。あんまりそういうタイプでもないし。それならば、体系的に基礎から学ぼうということで選択。
Azureは弊社でも今後選択肢に上がる(上がっている)かもしれない。そういや前職の最後は、AzureでOCRについて調査していたのだった。
上記は、AI-900というMicrosoft Azureの資格のための知識という面もある:
本試験では、ML/AIの概念と関連するAzureサービスについて問われる。
ということで、本モジュールの内容:
内容だけ見ると盛り沢山に感じるけど、全部で34分の所要時間を想定ということもあり、概要の説明がなされるのみ。でも結構勉強になった。
感想
機械学習で何をしますか?と言われたら、うーん、困りそうだけど、でもなんらかのデータを集めて世の中の役に立ちそうなことを予測したりします!と答えてしまいそう。それはそうなんだけど、ポジティブな何かを生み出すだけでなく、(当然だけど)ネガティブな予測を行うユースケースもある。それが項目の1つにもなっている異常検出。Anomaly Detectorというサービスがあり、異常検出のためのAPIを提供してくれる。
コンピュータビジョンタスクに関しては解像度が粗かったなと感じた。
- 画像分類
- 物体検出
- セマンティックセグメンテーション
- 画像解析
- 顔検出、分析、認識
- OCR
視覚処理を扱うAIといっても、これだけあるわけだ。
AIの課題とリスクについて。LLMに関連するβ版のアプリが色々なところから出てきているということで、色々な人がAIを使い始めるわけだけど、全ての会社が、(おそらく現段階で)ここに書いてあるようなことを考え切れているわけでもないかもしれず、今後の開発者の必須科目となるんだろうなぁと妄想したりなど。インシデントの(Webアプリを作っているだけだと出会わなかった)新分類も出てくるのだろう。
全体的に英語から翻訳してるなーという記載であるが、ギリギリ気にならずに読んでいけている。