Hazy Ideas

日々の勉強の気づきを書き出しています

ベイズ勉強編

ベイズ統計の勉強。初級編としてRとRstanから入る。

 

RStanのインストール

RStan Getting Started · stan-dev/rstan Wiki · GitHub

サポート情報ページ

RとStanではじめる ベイズ統計モデリングによるデータ分析入門:サポートページ | Logics of Blue

使用するデータ

GitHub - logics-of-blue/book-r-stan-bayesian-model-intro

brmsパッケージ参考

brmsパッケージを用いたベイズモデリング入門 - nora_goes_far

データサイエンス100本ノック、最初の環境設定(とVmmem対処法)

100本ノックに挑戦したい(再)。

GitHub - The-Japan-DataScientist-Society/100knocks-preprocess: データサイエンス100本ノック(構造化データ加工編)

参考にしたサイト

https://www.cresco.co.jp/blog/entry/14446/

 

はじめてにはハードルが高く、環境設定に手間取ったので、記録しておく。

OS: Windows 10 home

 

1.Docker Desktopのインストール

Windows Home editionでもDocker Desktopが使えるようになった。WSLというLinuxWindows用サブシステムのインストールが必要になる(案内に従えばOK)。

https://www.docker.com/products/docker-desktop

インストール後、WSL 2が不完全という案内が出るので、リンク先の、「手順 4 - Linux カーネル更新プログラム パッケージをダウンロードする」からダウンロード、インストール、そしてPC再起動。

https://docs.microsoft.com/ja-jp/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package

 

2.Gitのインストール

Git - Downloads

Windows用の最新版をダウンロードすればよい。

 

3.環境構築(コンテナ稼働、というらしい)

方法1:Gitから複製する

PowerShellを通常起動、以下のコマンドを順番に入力する。

git config --global core.autocrlf false

git clone https://github.com/The-Japan-DataScientist-Society/100knocks-preprocess

cd 100knocks-preprocess

docker-compose up -d --build

* PowerShellを管理者権限で起動すると、ディレクトリがSystemとなり、うまくいかなかった。通常起動でUserディレクトリからはじめる必要あり?

* 1行目は、core.autocrlfをtrueではなくfalseにする設定変更のため。前者がWindows環境では正しいが、今回はDocker上のLinux環境で使用するため、らしい。

* 最後の4行目を実行すると、環境構築に10分以上かかる。

 

方法2:GithubからZipをダウンロードする

githubのサイト上で、Code、Download Zipをクリックする。ダウンロードしたフォルダを解凍(普通に開けるだけ、念のため)し、Userフォルダなどに移す。

あとは方法1と同様に、PowerShell上で該当フォルダに移動し、docker-composeする。

この方法では試してはいないけど、たぶんできるはず。

 

4.勉強環境の起動

以下をブラウザに入力

http://localhost:8888

するとJupyter notebookが開き、100本ノックが始められる!

 

5.終了と再開

Docker Desktopアプリ上のアイコンから、開始・終了を制御できる。

もしくはPowerShellで以下を入力

終了
docker-compose stop
docker-machine stop default

再開

cd 100knocks-preprocess
docker-compose start

 

ひとまず環境は整えられた。しかし、メモリサイズの小さいPCだWebサイトの閲覧が難しくなるくらい動きが遅くなる。

タスクマネージャーを見たところ、Vmmemというプロセスがメモリのほとんどすべて(95%)を使っていた。調べたところ、暫定的に「.wslconfig」の設定を書き換えて、最大メモリ使用量を小さくすればいいらしい。

 

設定方法

1. フォルダから、C:\Users\(user名)、まで行く。PowerShell上でなくとも、GUIでよい。

* この場所のことをホームディレクトリというらしい。%USERPROFILE% とも書かれる。

 

2. ファイル「.wslconfig」を探す。なければ作成する。自分の場合、「.gitconfig」をコピーした。

 

3. テキストファイルとして開き、中身を消して、以下をコピペ。1GBまでしか使わないように設定するという意味。

[wsl2]
memory=1GB

4. WSLを再起動。調べたとおりのコマンドでエラーが出たので、OS再起動した。

 

その結果、メモリ使用率が70%前後まで下がった!Vmmem単体では1,500MBまで低下(なんで1GB超えてるの?1.5GBが下限か?)

 

今回試したPCは8GBしかないので、100本ノックの勉強には厳しいな。とりあえずmemory=0.5GBに再設定したけども、このPCからはDockerごとアンインストールしよう。ローカルでPython使うほうがいいのかも。

 

データサイエンス100本ノックをDockerなしSQLなしで動かす(Python, R) - Qiita

 

アンインストールは、

Windowsボタン、設定、Appsから、

・Docker Desktop

Windows Subsystem for Linux

をアンインストールした(1つめを消した時点でTask maneger上から、Vmmemも消えた)。消した状態のメモリ使用率は50%だった(Chrome開いてブログ書いてるだけでもこのくらいか)。

Python独学勉強 基礎統計 最初のメモ

先が見えないので、Pythonの勉強を進めることにした。ある程度は前もやったけど、環境が変わると動かし方忘れるし、コードもShellやRとこんがらがってる。。

 

今回使うのは、技術評論社Pythonで理解する統計解析の基礎」。まずは統計の基本を復習しながら、Pythonで基礎統計を一通りできるようにする。

 

ソースコードは以下。今回は簡単に、ZipでダウンロードしてローカルDocumentに格納して使う。

https://github.com/ghmagazine/python_stat_sample

緑色の「Code」をクリックし、「Zownload ZIP」で指定場所に落とせる。

 

PythonはAnacondaをローカルにインストールして使用。Dockerは使わない。

 

癖があるのは日本語のあるデータ。ダウンロードしたcsvファイルには日本語が含まれ、Excelで開くと文字化けするし、Jupyter Notebook上でも日本語を認識してくれない。

 

1. csvファイルを右クリック、「プログラムから開く」、「メモ帳」で開く。

2. この時は日本語が正しく表示されていること、右下の文字コード表記がUFT-8などになっていることを確認。

3. 「ファイル」、「名前を付けて保存」、文字コードを「UFT-8(ROM)付き」に変更。

 *ファイルの種類は変えなくてもよい

 *文字コードを「ANSI」にしてもうまくいかなかった

 *他のWindowsだと、「UFT-8 with BOM」しか表示されなかったのでこれに変更

4. Excelで開いて、日本語が正しく表示できることを確認。

5. Jupyter Notebook上でファイル内を確認。

 *この方法は簡単だけど、ファイル1つずつ変換なので数が多いと大変

 

意外と、こういう最初のセットアップが面倒で、すぐ忘れる。

いい顔をする

とりあえず人と話して、口に出すことで、少しだけストレスが緩和された気がする。

 

うまくいかないことの方が多いし、妨害されることもしばしば。

みんな、人のことなんて気にせずに研究に専念してればいいのにと思う。

 

でもいい。上長に、組織に迎合することにした。元社会人や、なめるなよ、と。自分のために、与えられた環境を使い倒す。

 

冷静に考えてみれば、元社会人としては、別に特別なことじゃない。ただ周りに、精神が未熟だったり、性格濃い人は多いが。

 

以前、コンサルの人に、社内にメンターとなるべき人がいないこと(これは私の我儘ではなく、他の若手や、人事部にも共通の認識であった)について、「無い物ねだりをしても仕方ないので、できることを考えよう」ということを言われたことがある。

 

今できることに集中しよう。他人はどうでもいい、自分のこともどうでもいい。人生は短い、命懸けで仕事する。

備忘録 Primer BLAST使い方

存在は知っていたけど、使い方がいまいちわからんかった(どこにも載ってなかった)のでメモ。

 

Primer Parameters

・作成したプライマーのフォワード・リバースをコピペ

 

Primer Pair Specificity Checking Parameters

・Database;nr

Non-redundant protein database のことらしいが、nt (nucleotide database)も表示してくれるみたい。

・Organism;必要なら分類群のグループをいれる(ないと検索結果が出せないことがある)

 

とりあえずこれで動いた。Databaseが肝で、RefSeqとかを選ぶと、代表的な生物のみのデータを参照するのでダメ。

 

備忘録:WindowsのPowerPointで300dpiで出力する

以下2つをよく読んだらできた。

【完全保存版】パワーポイントで画像を300dpi化する方法: Windows and Mac | EUS channel

How to export high-resolution (high-dpi) slides from PowerPoint - Office | Microsoft Docs

 

Windows11版

1.左下検索窓で「Registry Editor」と検索し、appを開く

2.次の順番でフォルダをクリックして行く。HKEY_CURRENT_USER→Software→Microsoft→Office→16.0→Powerpoint→Options

3.上部のメニューから、Edit編集→New新規→DWORD(32bit)Valueを選択

4.新規ファイル名を「ExportBitmapResolution」に変更する

5.右クリックしてModify編集

6.Decimal 10進法にチェックを入れ、数値を300とする

7.Registry Editorを閉じる。PowerPointで出力してみて確認する。

 

注意点はMicrosoftの次にPowerPointがあること(紛らわしい)。これではなく現状のOfficeのバージョン番号を選択すること、ここでは16.0。

 

設定が面倒だが、EPSよりはましか。

備忘録:WindowsでEPSファイルを扱うには

Windows PCでEPSファイルを扱う必要が出てきたのでメモ。

 

EPSファイルを見るには

フリーソフトXnViewをインストール

・Ghostscriptをインストール

・XnViewのツール→オプションから、Ghostscriptをアクティベートさせる

 

らしいけども、うまくいかない!なぜ?

バージョンとかソフトの種類とかよく確認する必要あり。

 

 

EPSファイルを作成するには

PScriptプリンターソフトをインストールするらしい。これがmicrosoft製のものや、EpsonFujitsuのようなプリンターメーカーからも出ていて、何を使えばいいかわからん。

結局一番楽なのは、LibreOffice Drawで最初から図を作って、EPS形式で出力することみたい。

 

Macなら、普通にPreviewとかで見れたし、出力もterminalからコマンドで作れたので、Windowsの手間が半端ない。

 

 

2022/03/01追記

フリーの画像処理ソフト使えば、普通にできた。かつてお世話になった高性能ソフトでである。

dpiだけ設定に注意が必要。pptなどでの画像出力時に高解像度にしておいて、画像処理ソフト側の出力時に300dpiなどにするはず。

MacLinuxでは、色々とソフトを入れるのに抵抗あったけど、Windowsは使えるパッケージやアプリはどんどん使う、と考えたほうがいいのかも。

Draw Freely | Inkscape

GIMP - GNU Image Manipulation Program