auの日記

プログラミング初心者の日記。(auはハンドルネームです)

OCamlの再起で用いる「rec」って何の略称?

auです。

OCamlの再起を書く際に「rec」を用いるのですが、これって何の略称なのか気になってしまったので調べることにしました。

recは何の略称?

結論から言うと、再帰的の意味をもつ「recursive」でした。読み方はリカーシブです。以下のOCamlの英語のサイトに書いてありますね。

ocaml.org

関数内で自身を呼び出すコードが含まれていることを「再帰呼び出し(recursive call)」と呼び、結果を保存する変数を用意しないで書けるなど、コード的には短くなるような処理を書くことができます。

しかし、この書き方だと全ての呼び出しが終わってからの計算なので、フィボナッチ数列を求める問題を再帰呼び出して解くと、非常に時間がかかってしまいます。

そこで、計算結果を残しつつ再起呼び出しすることができる、末尾再帰で書いた方が計算量が小さくすみます。

そちらは記事にしてあるのでぜひ読んだり調べたりしてみてください。

program-shoshinsya.hatenablog.com

ネットワーク用語のHubとは

auです。

そういえばHubという用語を深く理解していないなと感じたので調べてみました。

Hubとは

Hubとは、一言でいうと集約装置のことを指し、ネットワークの中継器の役割をします。

Hubに対し、複数のコンピュータを接続し、ネットワークを構成できる装置になっています。

スター型ネットワークで使われるものになっていて、特定の繋がっているノード(コンピュータ)にパケットを送信できたり、マルチキャストを簡単にすることができます。


実物をみた方が想像しやすいと思うので、amazonで実際に販売しているhubを載せておきます。

機械学習でよく聞くハイパーパラメータとは

auです。

ハイパーパラメータといういかにも強そうなう用語を機械学習で学んだので、まとめようと思います。

このサイトがめちゃめちゃ分かりやすかったです。
aizine.ai

ハイパーパラメータとは

ハイパーパラメータとは、人間の手で調整しなければいけないパラメータ(変数)のことです。

機械学習をさせる際に、犬種を判別するためには、「耳が垂れている・垂れていない」「4足・2足」 「体長が80cm以上・以下」と言った風に、人間の手で設定します。これを評価をした、「何か違うなー」となった際に、人間の手で評価基準を追加、修正してあげなくては精度の高い学習をすることができません。つまり、機械学習をするに当たって、あらかじめ人間が値を設定しておき、その精度をみて変更する値のことをハイパーパラメータと言います。

逆にハイパーパラメータの部分を機械側にやらせることを「グリッドサーチ」と言います。

エントリーシートを添削してもらって感じたこと

auです。

大学3年生なので、夏季インターンに向けて色々と行動をしているのですが、本日、大学の事務課の方からエントリーシートを見てもらえる機会があって見てもらったので、アドバイスなどをメモしておこうと思います。


1. 読み返した時にくどくない粒度で書く
自分の伝えたいことが先行し過ぎてしまい、書かなくていいことまで書いてしまうことが多々あります。あとで添削してもった結果、短い文で伝えられるようになりました。

2. 企業の分析は仮定をして、それに合うように書く
就活講座や先輩にも教わったのですが、企業について書くには、色々な情報を収集し、自分なりに分析をしてそれに合うように書くことが重要だということを教わりました。例えば、開発系の企業を分析した結果、技術力よりもコミュニティ能力がもっとも重視されている場合、技術力よりもコミュニティ能力を発揮したエピソードをアピールした方がいいです。まあ、言われてみれば当然なのですが・・・。

3. 同じ言い回しはしない
自分のブログでも散見していると思いますが、同じ表現を多用している場合は短くできるチャンスです。結論から述べ、それに付け足すように書いてみたりするとスッキリすることもありました。

4. 自分はESが苦手だ
なんかもう分かっていたのですが、書き出しからどう入ろうかな〜という段階で10分くらい止まってしまいました。なぜ興味を持ったか聞かれたら、興味を持つに至ったフローを書けばいいのに、途中で軸がぶれてしまって書き直さなければならないということもあったため、注意しなければならないポイントだと思いました。毎日ブログで文章を書いているため、少しずつ訂正されて言ってると思うのですが、まだまだ伝えたいことを短く伝えるということは苦手みたいです・・・。

ネットワーク用語のセルラーとは

auです。

ネットワークの講義を受けている際に、「セルラー」「非セルラー」という用語が出てきて、特に解説もなく進んでしまったので、自分で調べることにしました。

セルラーとは

セルラーとは、基地局をセル(1つの基地局がカバーする範囲)ごとに設置して無線通信を行う方式を言います。

携帯電話やスマホセルラー方式をとっており、これを「cellular phone」というようです。

つまり、基地局と通信する機器を「セルラー」と言います。

逆に、非セルラー基地局と通信しないような機器をいうのですね。

初めてQiitaで記事を書いてみた感想

auです。

今日、初めてQiitaで記事を書いてみました。と言っても、動画編集でやった小ネタみたいなものをまとめた程度ですが・・・

それでも、色々なユーザにみてもらえて嬉しかったです。

書いた記事がこちら↓

qiita.com

感想

書いてみた感想ですが、マークダウン形式で、リアルタイムプレビューみたいになってるのがとてもいいと思いました。

VScodeのHTMLをプレビューする奴にもリアルタイムのようなものがあったのでそんな感じです。

書き始める前に、マークダウンの書き方的なのが右に出ていたので、書き方が分からんって人でもある程度は書けると思います。


そんな感動したエディタでしたが、一つだけ不満に思ったことがあります。

それは、YouTubeの動画を載せられないことです。

と言っても、Qiita自体は、技術的な知識を共有するためのプラットフォームなので、載せられなくてもいいのかなーとも思ったのですが・・・

あの1記事しかまだ書いていませんが、はてブとの違い的な意味の使いにくさで、そんなところがありました。

裏技的な感じで、TwitterYouTubeのリンク入りの投稿をすることで、擬似的に載せる方法があったのでやってみました。

やり方の参考記事
qiita.com

機会があったらまた書いてみようと思います。

IT用語でよく聞くロードマップとは

auです。

ロードマップという用語を度々目にするのですが、道の地図という直訳では道路地図という認識ができなかったので、おそらく違うと思い調べてみました。

ロードマップとは

ロードマップとは、簡単に言えば目的を達成するまでの計画表という意味です。あるいは普通に道路地図という意味もありますが、自分が勉強していた時に出てくるロードマップは違うと思います・・・。

この「目的」には、企業の製品のリリースをどのように展開していくといったことや、達成目標といった本当に最終的な目標になっていることが多いようですね。その中に、こんな機能を実装するといった細かい予定や、発表はいつにするといった情報が入っているようです。

今回出てきたロードマップは、日本語に直すと「行程表」となり、時系列に沿ってやるべきことをまとめた計画表のことになります。

この目的を達成するために、いつまでにこの段階までを終わらせますといったことが書いてある表のことですね。小さい頃に夏休みの宿題の予定などを立てていた人も多いのではないでしょうか。まあ、その通りに行かないことがほとんどなんですけどね・・・。