auの日記

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

2019-11-01から1ヶ月間の記事一覧

プログラミングで使うアタッチとデタッチとは

auです。久しぶりに用語について調べてみました。今回はアタッチとデタッチです。 アタッチとは アタッチとは、結びつける、取り付ける、接続するという意味があります。調べてみると、仮想化やクラウドで使うことが多いようです。仮想化する際に、ボリュー…

誕生日のパラドックスをPythonで書いてみた

auです。きのう誕生日のパラドックスについて感想的なものを書きました。ですので、今回は誕生日のパラドックスのコードをPython書きました。 import random import sys def rand_birthday(m): ret = [] for i in range(10000): birthday_list = [] for j in…

誕生日のパラドックスについて調べてみた

auです。今日は時間がないので軽くにします。誕生日のパラドックスというものを知りました。大体23人いると50%になるみたいで、セキュリティにも同じような考え方があるみたいです。誕生日攻撃という、暗号システムへの攻撃になっていて、あるハッシュ値を…

1日1題Paizaを解いて新しい解き方を探す有効性

auです。就活などをしてエンジニア職を探していると、高確率でプログラミングの問題を受けることになります。ですが、対策をしようにも、問題を解けるところってあまりないよなということを、友人と話していたのですが、いいものがありました。それがPaizaで…

ハッシュの暗号性の「第2原像計算困難性・衝突困難性」の違いを調べた

auです。ハッシュについて勉強してみて、理想的なハッシュ関数の性質として、3つあることが分かりました。 Wikipediaにはそれぞれ、こう書いてあります。(強衝突耐性は衝突困難性に変更してます) 原像計算困難性: ハッシュ値 h が与えられたとき、そこから h…

ベクトルを学んだおかげでone-hotベクトルが理解できた

auです。最近数学を学んでいることを書いています。最近ベクトルを学んだのですが、ディープラーニングを学ぶ時にめちゃめちゃ役立ったので、書いておこうと思います。 one-hot ベクトルとは まず、one-hotベクトルとは、カラムの1つだけが1で、他のあたいは…

直線の方程式をYouTubeを使って勉強してみた

auです。独学で数学を勉強している最中です。今日は直線の方程式をやってみたのですが、どのサイトをみても、なんだかパッとしない・・・。勉強法変えてみるかということで、今日はYouTubeで授業風の動画を見てやってみました。動画のリンクとか貼っていいの…

17Liveでゲーム配信を2ヶ月続けて見つけた視聴者を獲得する方法3選

auです。 17Liveで公認ゲームライバーとして、ゲーム配信をやり初めて2ヶ月が経ちました。最初は、何となく恥ずかしかったり、配信しても人が来なくてすぐに辞めてしまうのだろうなと思っている自分がいました。↓自分の17アカウント 17.liveしかし、ブログと…

DH鍵共有アルゴリズムとは

auです。暗号化の方法として、共有鍵暗号化方式や公開鍵暗号化方式が有名です。ですが、最近の講義でもう一つの鍵共有アルゴリズムを学んだので、記事にしていこうと思います。 DH鍵共有アルゴリズムとは DH(Diffie-Hellman)鍵共有アルゴリズムとは、共通鍵…

データベースの考え方が日常で使えそうな気がする

auです。データベースの考え方で、物理的な部分と物理的に存在しない、関係スキーマで分ける箇所があります。会議などで決めることも、関係スキーマ(ターゲットやタイムスケジュールなど)なのか、物理的なことなのか(場所や時間)を何となく頭で振り分けて、…

パソコンはリュックか肩掛けか

auです。パソコンを毎日持ち歩いているからこそ言えることを書こうと思います。最初の1年半くらいはトートバッグを肩にかけて使ってました。感想としては、見た目は大学生っぽくていい。取り出しやすくて使い勝手もそこそこ。ただ、パソコンが入ってるからか…

1日にテストを被せてはいけない

auです。Webテストの期限と大学のテストがバッティングしました。Webテストは期間内ならいつでも受けられるので、最後まで勉強してからだなと思い、今までの記事の通り、ギリギリまでやっていました。その結果、今日という日に両方ともきてしまったわけです…

数学嫌いが克服するために勉強する:ベクトル編

auです。ベクトルまじベクトルということで、簡単な計算を勉強しました。足し算と引き算、掛け算など、四則演算をやりましたが、考え方が多少変わるだけで、大きな変化は無いように感じました。まだ難しいとこに触れてないだけだと思いますが、やれることが…

数学嫌いが克服するために勉強する: 数Ⅱ編その1

auです。数ⅠAは色々な人の力を借りて、一通り終わらせることができました。めちゃめちゃ苦手なのが組み合わせの計算でした。問題文読んではてなマークになることしかできなかった・・・そんなこんなで数Ⅱに入りました。やったぜその中で複素数・虚数という用…

今更コマンドラインから呼び出されたか判定する「__name__」について調べてみた

auです。Pythonのコードをみていると、頻繁に if __name__ = '__main__' という文を見かけます。そういえばこれってなんだ・・・という状態だったので調べてみました。参考になった記事 azuuun-memorandum.hatenablog.com __name__とは __name__は、コマンド…

killで殺せないプロセスに出会った

auです。bashを作ってバックグラウンドで実行するPythonファイルを作ったのですが、満足して終了させようとする際にkillできなかったので調べてみました。こちらの記事を参考にさせていただきました。aqua-nora.hatenadiary.org Pythonファイルをhogehoge.sh…

OSの例外処理で使われるフォールトとは

auです。最近ARM Coretex-M3についての本を読む機会があって読んでみたのですが、「フォールト」について調べてみました。 フォールトとは フォールトとは、人為的なミスにより正常に動作できなくなった場合に起こる例外処理のことです。バス・フォールト、…

意味はないが意味を持たせるサロゲートキー

auです。データベースを学んでいるときに、「サロゲートキー」という用語に出会いました。見ても全くイメージができなかったので調べてみました。 サロゲートキーとは サロゲートキーとは、これ自体に意味のないキーだけど、別のキーに意味を持たせるための…

第3正規形とボイス・コッド正規形の違い

auです。データベースの勉強をしていると、スキーマを整理するための正規形を学ぶことになります。そこで、結構似ていて複雑になるのが、第3正規形とボイス・コッド正規形です。簡単にまとめると、自由度は「ボイス・コッドボイス・コッド正規形は、関係スキ…

Pythonでディープラーニングやるの便利すぎる

auです。Pythonでディープラーニングを学んでいるのですが、学習する際のパラメータの設定がとても楽だと感じたので、感想みたいな感じで書いていこうと思います。例えば、ニューラルネットワークの手法を使いたいと思った際に、TensorFlowのKerasを使うと、…

shaderの基礎について調べてみた

auです。グラフィックスの領域の勉強も少しずつ始めているので書いていこうと思います。とりあえず計算などは置いておいて、shaderの概念についてです。 shaderとは shaderとは、ディスプレイに表示するためのプログラムのことです。OpenGLやDirectXといった…

今更数学をガチで復習しています

auです。ついに数学の知識が必須な用事が多数存在するようになってしまいました。今まではPythonのライブラリなどにまとまっていたので、調べて公式に当てはめてなんとか突破していたのですが、テスト形式なので今回は調べることができません。そこで、大学…

並列化処理・分散処理を勉強した感想

auです。並列化と分散処理を勉強しました。やってみた感想をつらつらと書いていこうと思います。勉強したのは、OpenMP、OpenACC、MPI、Hadoop、Sparkでした。なんというかイメージがしにくいことと、コードで書いても実感があまり湧かないことが辛かったです…

NISTについて調べてみた

auです。NISTというものは知っていますか?僕は知りませんでした。調べてみます。 NISTとは NISTとは、National Institute of Standards and Technologyの頭文字を撮ったものであり、日本ではアメリカ国立標準技術研究所と称しています。1901~1988までは国立…

Apache Hadoopについて調べてみた

auです。課題をやったらHadoopについて理解が深まったのでまとめようと思います。 Hadoopとは Apache Hadoopは、複数のサーバ上で分散処理を行います。スケールアウトが可能なため、サーバの台数に比例して処理能力が向上します。また、冗長性が高く、一つの…

interfaceとabstractsの違い

auです。Javaをやってると必ず引っかかる(であろう)インターフェースと抽象をやったのでまとめます。 インターフェース インターフェースは、処理内容を書かずに宣言して、あとで具体的な処理を書く場合に使います。こうすることで、スーパークラスが一つと…

初めて学祭に出店した

auです。いろんな大学で学祭をやっていますね。自分の大学も例外ではありませんでした。多くの人が来場してくれて、いい感じに盛り上がっていたと思います。その中でも、自分たちのグループは有機野菜について発表していたのですが、多くの人に興味を持った…

ブートローダについて調べてみた

auです。今回は、「ブートローダ」について調べてみました。 ブートローダとは ブートローダ(boot loader)とは、OSに関する用語の一つです。コンピュータを起動した際に呼び出されるプログラムのことです。BIOSがブートローダを呼び出し、ブートローダがカー…

データベースで用いられるER図について調べてみた

auです。データベースでER図を用いた作図をするのですが、途中で色々忘れてしまったので、ER図の基礎ついてまとめてみようと思い、まとめることにします。 ER図とは ER図とは、実体関係図と言われ、学生やオブジェクトといった、実体のある、識別可能な物体…

ITで用いられるハイパーバイザとは

auです。ハイパーバイザの意味について調べました。 ハイパーバイザとは ハイパーバイザとは、コンピュータを仮想化するためのソフトウェアのことです。ハードウェアの中の仮想環境を実行する際に使うソフトで、異なるOSを使うことができます。大学の講義で…