Machine Morning

機械学習やWebについて学んだことを記録しています。

purgeとは

purgeコマンドはMacのメモリを解放するコマンドである。 buffer cacheとpage cache page cacheはデータの読み書きを高速化するためにデータをページとして一時的にメインメモリ上に保存することである。 buffer cacheは記憶階層やデータをやり取りする装置や…

パーティションとは

パーティションはハードディスクのストレージを分割したもので、実際には一つのハードディスクが2つ、3つあるように使うことができる。それぞれのパーティションは他のパーティションに影響を与えない。すなわち、いずれかのパーティションに障害が生じても…

Google ColaboratryでGoogle Driveからデータセットをインポートする

Google ColaboratoryにはPythonでGoogle Driveを扱うためのPyDriveが標準で入っていないので、初めに!pip install -U PyDriveする。 そしたら必要なライブラリを読み込む。 !pip install -U PyDrive from pydrive.auth import GoogleAuth from pydrive.drive…

kaggle apiの使い方(入門)

GitHub - Kaggle/kaggle-api: Official Kaggle APIの簡単な要約。 pip install kaggleでkaggleのコマンドを使えるようにする。 https://www.kaggle.com/<username>/accountにアクセスし、'Create New API Token'を選ぶ。 すると、kaggle.jsonがダウンロードされる。こ</username>…

ttyとは

psを叩いて表示されるプロセス一覧の項目にTTYが存在する。 ちなみにttyというコマンドも存在し、これはteletypewriterの略で、man ttyで内容を確認してみると、 The tty utility writes the name of the terminal attached to standard input to standard o…

はてなで二重線の白抜き文字を書く

実数Rや整数Zなどをやのように書く方法は、 \mathbb{白抜きにしたい文字} である。文字と数字だけを白抜き文字にしてくれる。 例 [tex: \mathbb{R}] [tex: \mathbb{Z}] [tex: \mathbb{0}] [tex: \mathbb{\pi = 3.14}]

Multinoulli distribution

Murphyを読んでいたらMultinoulli distributionという言葉が出てきた。ベルヌーイ分布の多次元版かなと思ったら大正解。カテゴリカル分布の別名ということである。Multinoulli distributionに相当する日本語がなかったので、カテゴリ分布と読み替えておけば…

webサイトパフォーマンスのテストサイト

次の2つのサイトがwebサイトのパフォーマンスをテストするのに使える。 PageSpeed Insights www.webpagetest.org 1つ目はGoogleが公開しているwebサイトの表示速度を測るサイト。 2つ目は様々なデバイス上でのパフォーマンスを測定できる。

DOMContentLoadedとload

document.addEventListener("DOMContentLoaded", event => { console.log("DOM fully loaded and parsed"); }); window.addEventListener("load", event => { console.log("All resources finished loading"); }); console.log("script.js finished loading …

表示を高速化するjsファイルの読み込み方

サードパーティスクリプトとは 外部から提供されている機能のスクリプトのこと。例として以下のようなものがあげられる。 TwitterやFacebookなどのSNSでシェアするボタン YouTubeのような動画の埋め込み 広告系のiframe 解析やメトリクスツール A/Bテスト デ…

画像データの最適化

.jpg, .gif, .pngなど様々な画像フォーマットが存在する。これらは用途に応じて使い分けることで、パフォーマンスを落とさず高速にブラウザで表示することが可能である。 画像フォーマットの選び方 透明度を使いたい→PNG アニメーション→GIF 彩豊な写真→JPG …

sshキーのキータイプはなにがいいのか

sshキーを生成するためのコマンド $ ssh-keygen をオプションなしで実行するとデフォルトでキータイプrsaの長さ2048bitのキーペアが生成される。しかしオプションでキータイプやキーの長さを指定することができる。以下にssh-keygenがサポートするキータイプ…

nbytesとgetsizeofの値が違う件について

Pythonのメモリの使用量を調べるためにnumpyのndarrayの.nbytesとsysモジュールのgetsizeof()を使ってみたら返って来る値が違った。 ndarray.nbytes() import sys sys.getsizeof(object) .nbytesはオブジェクトの中身だけ、getsizeof()はオブジェクトそのも…

パスワードなしでsshログインをする

sshログインはデフォルトのまま利用するとユーザー名とパスワードだけでログインできてしまう。 これでは誰でもログイン可能なので、ログイン方法をパスワードではなく、公開鍵認証に変更する。 ローカルのマシンで、 $ cd ~/.ssh $ ssh-keygen -C "" Enter …

pbcopyコマンド

ファイルの内容などをクリップボードにコピーするコマンド $ pbcopy < filename public keyなんかをコピーするときに使う。

ssh-keygenで生成したssh keyにユーザー名とホスト名が入っている

$ ssh-keygen でssh keyを生成するとユーザー名とホスト名が末尾に追加されてしまう。 これを防ぐために、 $ ssh-keygen -C "comment" とすることで、ユーザー名とホスト名の代わりにcommentが挿入される。

rsyncコマンドの使い方

ファイルを同期するためのrsyncコマンド rsync -av コピー元ファイル コピー先 リモート、ローカル両方いける。

apt-getは止めてaptを使おう

apt-get install [package name] は以下と同じである。 apt install [package name] Ubuntu16.04からはaptが推奨されているので、aptを使おう。

言語処理100本ノックを始めた

言語処理100本ノックをやり始めた。 夏が終わるまでにはやり遂げたい。

Google ColaboratoryにTexを記述する

とても簡単、Textセルの中でTexを$2つでくくるだけ。 https://colab.research.google.com/notebooks/basic_features_overview.ipynb#scrollTo=Id6tDF1HQSHD

Homebrewでインストールしたpythonがpython3になっていた。

最近Mac OSをクリーンインストールしたのでHomebrewを使ってpythonを入れ直した。 しかしPATHを通してもpythonのPATHが/usr/local/bin/に向いていない。 どうやら、Homebrewで入れたpythonのコマンドは2系のことを指し、3系はpython3というコマンドが存在す…

sklearnのtransformとfit_transform

fitは与えられたデータセットの統計量を算出し、transformはデータセットの統計量を元にデータを変換(標準化、正規化)する。 fit_transformはfitとtransformを両方順に行う。 訓練用データには統計量を算出するfit_transform、テスト用データには訓練用デ…

層化抽出法(stratified sampling)とは

sklearnのtrain_test_split(sklearn.model_selection.train_test_split — scikit-learn 0.20.2 documentation )に引数stratifyを渡せるがstratifyって何?と思ったので調べてみた。 層化抽出法は簡潔に言うと”母集団の分布と同じになるようにサンプリング…

日本語の文章に用いる括弧は全角か半角か

ブログを書くのに括弧を全角と半角のどちらで書くか悩んだので調べてみた。 結論: 特に理由がなければ全角。半角を利用する場合は前後に半角スペースをいれる。 京都大学が修士論文の作成指導用に公開しているもの(レポートや修士論文の作成に際して)では…

numpyで逆行列(inverse matrix)を求める

from numpy.linalg import inv a = np.array([[1., 2.], [3., 4.]]) ainv = inv(a) 参考 https://docs.scipy.org/doc/numpy-1.14.0/reference/generated/numpy.linalg.inv.html

はてなに数式(TeX)を記述する方法

数式(TeX)を埋め込む ブログ執筆画面で、Edit => "Markdown"を選択し、 [tex: ここにTeXを記述] と書くだけ。 正規分布の例: [tex: f\left( x\right) =\dfrac {1}{\sqrt {2\pi \sigma ^{2}}}e^{-\dfrac {\left( x-\mu \right) ^{2}}{2\sigma ^{2}}}] と記…

ブログ始めました。

機械学習、統計、開発周りの技術ブログ、雑記。 主に勉強記録と休学中の活動報告をしていく予定です。 更新頻度はなるべく多く、最低週1は更新します。まあゆるい感じで。