「クライオ電顕備忘録」の版間の差分

提供: Eospedia
移動: 案内検索
(よく使うプログラム)
(Eospedia内リンク)
 
(同じ利用者による、間の38版が非表示)
行1: 行1:
 
* 本ページの情報、および本ページからリンクされている先の情報に関して、それを利用して生じた損害については一切の責任を負いません。
 
* 本ページの情報、および本ページからリンクされている先の情報に関して、それを利用して生じた損害については一切の責任を負いません。
 
* 参考にされる場合は自己責任にてお願いいたします。
 
* 参考にされる場合は自己責任にてお願いいたします。
 +
 +
== 更新履歴 ==
 +
(2019/08/23) 更新履歴つけを開始
 +
 +
(2019/08/23) EMAN2の環境構築について書いた → [[MacOSでAnaconda3を用いてEMAN2仮想環境を構築する]]
 +
 +
(2019/08/26) リモートでtmux使ったときにリモート⇔ローカル間でのコピペを可能にする方法について書いた → [[ssh先のUbuntuのtmuxでコピーしたテキストをローカルのMacOSのクリップボードに転送する]]
 +
 +
(2019/08/26) EMAN2の環境構築をUbuntuでもやってみた。 → [[UbuntuでAnaconda3を用いてEMAN2仮想環境を構築する]]
 +
 +
(2019/09/04) MacOSの項目追加。 → [[MacOSでsshセッションが途切れる問題]]
 +
 +
(2019/09/04) GNU parallelでテキストファイルに記述したコマンドを並列処理する方法を書いた。 → [[GNU parallel]]
 +
 +
(2019/09/06) リモートのDockerデーモンにローカルのDockerクライアントからアクセスする方法を知った。 → [[リモートサーバーの中のDockerにローカルから接続する]]
 +
 +
(2019/09/20) sshについての覚書を追加 → [[ssh備忘録]]
 +
 +
(2019/10/04) 確率モデル推論関係のベンキョー素材を増やした。 → [[#機械学習]]
 +
 +
(2020/03/19) pyenvでEMAN2環境作った。 → [[pyenv内のMinicondaでEMAN2仮想環境を構築する]]
 +
 +
(2020/03/25) Windowsに改宗しましたから、WSL(Windows Subsystem for Linux)でEMAN2環境作りました。 → [[WSLでEMAN2]]
 +
 +
(2020/04/19) RELIONのDockerイメージにEMAN2も追加しました。 → https://github.com/kttn8769/cryoem-docker
 +
 +
(2020/05/08) 備忘録というよりは研究室内での情報共有ということで、Eospedia内のほかのページでいろいろ書き進めようとしてます → [[#Eospedia内リンク]]
  
 
== 開発環境 ==
 
== 開発環境 ==
 
=== <u>TurboVNC, VirtualGL</u> ===
 
=== <u>TurboVNC, VirtualGL</u> ===
==== [[VNCでリモートデスクトップ]] ====
+
==== VNCでリモートデスクトップ ====
* TurboVNCとVirtualGLを使用
+
[[VNCでリモートデスクトップ(CentOS-MacOS編)]]
* リモートのUbuntuマシンのデスクトップをローカルのMacマシンに飛ばして作業
+
 
* OpenGLで描画するアプリなどもサクサク動作
+
[[VNCでリモートデスクトップ(Ubuntu-MacOS編)]]
* <span style="color:orange">のはずでしたが、現状まだ成功しておりません。読んでも意味はありません。</span>
+
* こちらのUbuntuの方はまだ成功していません。
  
 
==== [[VirtualGLでリモートのOpenGLアプリをぬるぬる動かす]] ====
 
==== [[VirtualGLでリモートのOpenGLアプリをぬるぬる動かす]] ====
行17: 行44:
 
* [https://jupyter.org Project Jupyter]
 
* [https://jupyter.org Project Jupyter]
 
==== [[JupyterLab]] ====
 
==== [[JupyterLab]] ====
 +
 +
==== [[ipyvolumeでインタラクティブ3Dプロット]] ====
 +
* 3Dプロットをマウスでぐりぐり動かしたり
  
 
=== <u>Docker</u> ===
 
=== <u>Docker</u> ===
行23: 行53:
 
==== [[DockerとNVIDIA Dockerのインストール]] ====
 
==== [[DockerとNVIDIA Dockerのインストール]] ====
  
==== [[DockerでPythonによるデータ分析環境を作る]] ====
+
==== [[リモートサーバーの中のDockerコンテナの中のJupyterサーバーを使う]] ====
* ワークステーション内のアカウントはクライオ電顕関係の処理がメインのため、pythonはEMAN2のものにしてある(miniconda2でビルド)
+
 
* それとは別に、自分の好きなpython環境でデータ分析などをするため、Dockerを使うことにする
+
==== [[リモートサーバーの中のDockerにローカルから接続する]] ====
  
 
==== [[DockerでRELION]] ====
 
==== [[DockerでRELION]] ====
行47: 行77:
 
=== <u>ターミナルマルチプレクサ</u> ===
 
=== <u>ターミナルマルチプレクサ</u> ===
 
==== [[tmux]] ====
 
==== [[tmux]] ====
 +
 +
=== <u>[[GNU parallel]]</u> ===
 +
色々なコマンドの並列実行を可能にしてくれる超便利ツール
 +
 +
=== <u>ssh</u> ===
 +
==== [[ssh備忘録]] ====
  
 
=== <u>Linux</u> ===
 
=== <u>Linux</u> ===
 
==== [[Linuxコマンド備忘録]] ====
 
==== [[Linuxコマンド備忘録]] ====
 +
 +
=== <u>MacOS</u>===
 +
==== [[MacOSでsshセッションが途切れる問題]]====
 +
==== [[MacOSのzsh設定]] ====
  
 
== 言語 ==
 
== 言語 ==
行55: 行95:
 
==== 管理 ====
 
==== 管理 ====
 
* [[pipでパッケージ管理]]  
 
* [[pipでパッケージ管理]]  
* [[Anaconda]]
 
 
* [[pyenv/pyenv-virtualenv]]
 
* [[pyenv/pyenv-virtualenv]]
  
行74: 行113:
 
* RELIONであらかじめ定義されているメタデータのラベル名の一覧です。
 
* RELIONであらかじめ定義されているメタデータのラベル名の一覧です。
  
=== <u>EMAN2</u>===
+
=== <u>EMAN2/SPARX</u>===
 +
==== 環境構築 ====
 +
===== [[MacOSでAnaconda3を用いてEMAN2仮想環境を構築する]] =====
 +
===== [[UbuntuでAnaconda3を用いてEMAN2仮想環境を構築する]] =====
 +
* [[MacOSでAnaconda3を用いてEMAN2仮想環境を構築する|MacOS]]でやったやつをUbuntuでもやってみる試み。
 +
===== [[pyenv内のMinicondaでEMAN2仮想環境を構築する]] =====
 +
===== [[WSLでEMAN2]] =====
 +
 
 
==== よく使うプログラム ====
 
==== よく使うプログラム ====
===== [[e2display.py]] =====
 
 
===== [[e2boxer.py]] =====
 
===== [[e2boxer.py]] =====
===== [[e2helixboxer.py]] =====
 
  
 
== CTF推定 ==
 
== CTF推定 ==
 
=== <u>[[Gctf]]</u> ===
 
=== <u>[[Gctf]]</u> ===
  
== EMPIAR構造決定チャレンジ ==
+
== EMPIAR ==
 +
===<u>[[EMPIARからのデータダウンロード方法]]</u> ===
 +
=== <u>[[EMPIAR構造決定チャレンジ]]</u> ===
 
* [https://www.ebi.ac.uk/pdbe/emdb/empiar/ EMPIAR]で公開されているデータの構造決定にひたすら挑戦していきます。
 
* [https://www.ebi.ac.uk/pdbe/emdb/empiar/ EMPIAR]で公開されているデータの構造決定にひたすら挑戦していきます。
  
行99: 行145:
 
** Lecture3, 16, 17, 18, 19, 26, 27は確率分布によるモデリング、最尤推定、MAP推定などについて学べる。
 
** Lecture3, 16, 17, 18, 19, 26, 27は確率分布によるモデリング、最尤推定、MAP推定などについて学べる。
 
** 無料。
 
** 無料。
 +
 +
==== 確率論と確率過程 ====
 +
* [https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-041-probabilistic-systems-analysis-and-applied-probability-fall-2010/index.htm Probabilistic Systems Analysis and Applied Probability]
 +
** MITの Prof. John Tsitsiklisによる学部生、大学院生向け講義。MIT Open Coursewareでビデオ、講義資料、補足資料など無料公開されている。
 +
** 簡単な例を使うところから始めて確率論と確率過程について勉強できる。
 +
 +
==== ハッカーのためのベイズ推定法 ====
 +
* [https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers Probabilistic-Programming-and-Bayesian-Methods-for-Hackers]
 +
** IPython Notebook形式で書かれた、プログラマ向けのベイズ推定理解、実践向け教材。無料。
 +
** もともとPyMCというライブラリを使って書かれていたが、新たにTensorFlow Probabilityを使ったバージョンも公開されている。
 +
** Googleの[https://www.youtube.com/watch?time_continue=3&v=BrwKURU-wpk TensorFlow Probability紹介動画@TF Dev Summit'19]の中でテキストとして紹介されている。
  
 
==== 深層学習 ====
 
==== 深層学習 ====
行121: 行178:
 
* wikitableを手打ちするのがあまりに面倒臭いのでcsvファイルからwikitableを自動生成するスクリプト書く。
 
* wikitableを手打ちするのがあまりに面倒臭いのでcsvファイルからwikitableを自動生成するスクリプト書く。
 
* https://github.com/kttn8769/csv2wikitable
 
* https://github.com/kttn8769/csv2wikitable
 +
 +
== Eospedia内リンク ==
 +
Eospedia内で以下の項目も書き進めています。
 +
 +
=== [[MicroED]]===
 +
 +
MicroED(Micro crystal Electron Diffraction:微結晶電子線回折)に関する情報を書き残していきます。
 +
 +
===[[リモートワーク推進]]===
 +
 +
リモートワーク推進のためのツール関連について書き残していきます。
 +
 +
===[[Python]]===
 +
 +
Python関係について書き残していきます。
 +
 +
===[[Linux関連]]===
 +
 +
Linux関連について書き残していきます。
 +
 +
===[[EMAN2関連]]===
 +
 +
EMAN2関連について書き残していきます。
 +
 +
===[[Docker関連]]===
 +
Dockerです。

2020年5月13日 (水) 05:53時点における最新版

  • 本ページの情報、および本ページからリンクされている先の情報に関して、それを利用して生じた損害については一切の責任を負いません。
  • 参考にされる場合は自己責任にてお願いいたします。

目次

更新履歴

(2019/08/23) 更新履歴つけを開始

(2019/08/23) EMAN2の環境構築について書いた → MacOSでAnaconda3を用いてEMAN2仮想環境を構築する

(2019/08/26) リモートでtmux使ったときにリモート⇔ローカル間でのコピペを可能にする方法について書いた → ssh先のUbuntuのtmuxでコピーしたテキストをローカルのMacOSのクリップボードに転送する

(2019/08/26) EMAN2の環境構築をUbuntuでもやってみた。 → UbuntuでAnaconda3を用いてEMAN2仮想環境を構築する

(2019/09/04) MacOSの項目追加。 → MacOSでsshセッションが途切れる問題

(2019/09/04) GNU parallelでテキストファイルに記述したコマンドを並列処理する方法を書いた。 → GNU parallel

(2019/09/06) リモートのDockerデーモンにローカルのDockerクライアントからアクセスする方法を知った。 → リモートサーバーの中のDockerにローカルから接続する

(2019/09/20) sshについての覚書を追加 → ssh備忘録

(2019/10/04) 確率モデル推論関係のベンキョー素材を増やした。 → #機械学習

(2020/03/19) pyenvでEMAN2環境作った。 → pyenv内のMinicondaでEMAN2仮想環境を構築する

(2020/03/25) Windowsに改宗しましたから、WSL(Windows Subsystem for Linux)でEMAN2環境作りました。 → WSLでEMAN2

(2020/04/19) RELIONのDockerイメージにEMAN2も追加しました。 → https://github.com/kttn8769/cryoem-docker

(2020/05/08) 備忘録というよりは研究室内での情報共有ということで、Eospedia内のほかのページでいろいろ書き進めようとしてます → #Eospedia内リンク

開発環境

TurboVNC, VirtualGL

VNCでリモートデスクトップ

VNCでリモートデスクトップ(CentOS-MacOS編)

VNCでリモートデスクトップ(Ubuntu-MacOS編)

  • こちらのUbuntuの方はまだ成功していません。

VirtualGLでリモートのOpenGLアプリをぬるぬる動かす

  • TurboVNCとVirtualGLを使ったリモートデスクトップの試みに失敗したので、代わりにVirtualGL単体でリモートのOpenGLアプリを使ってみる。
  • UCSF Chimeraで、中型程度の電顕マップ+fitted pdbくらいならぬるぬる動いた。

Jupyter

JupyterLab

ipyvolumeでインタラクティブ3Dプロット

  • 3Dプロットをマウスでぐりぐり動かしたり

Docker

Dockerコマンド備忘録

DockerとNVIDIA Dockerのインストール

リモートサーバーの中のDockerコンテナの中のJupyterサーバーを使う

リモートサーバーの中のDockerにローカルから接続する

DockerでRELION

(検証)リモートのDockerコンテナからVirtualGLでOpenGL飛ばせるのか

  • これができればクライオ電顕関係の作業は全部Dockerコンテナ内でやっちゃいたい

Dockerトラブルシューティング

エディタ、IDE

Visual Studio Code

  • Microsoftが開発しているオープンソース、クロスプラットフォームな高機能エディタ

Visual Studio Codeでリモート開発

  • ローカルのVSCodeをリモートのサーバーやDockerコンテナの中で実行しているかのように使える
    • 人類はリモートからX forwardingでVSCodeを飛ばす闇の所業から解放された

Git

Gitコマンド備忘録

ターミナルマルチプレクサ

tmux

GNU parallel

色々なコマンドの並列実行を可能にしてくれる超便利ツール

ssh

ssh備忘録

Linux

Linuxコマンド備忘録

MacOS

MacOSでsshセッションが途切れる問題

MacOSのzsh設定

言語

Python

管理

単粒子解析

RELION

DockerでRELION

  • DockerでRELIONを使う方法(の1つ)を説明します。

RELIONトラブルシューティング

  • RELION使っていて問題的な何かが発生した時はここに書きます。

RELION備忘録

RELIONのSTARファイル

  • STARフォーマットについて説明しています。

RELIONの定義済みラベル

  • RELIONであらかじめ定義されているメタデータのラベル名の一覧です。

EMAN2/SPARX

環境構築

MacOSでAnaconda3を用いてEMAN2仮想環境を構築する
UbuntuでAnaconda3を用いてEMAN2仮想環境を構築する
  • MacOSでやったやつをUbuntuでもやってみる試み。
pyenv内のMinicondaでEMAN2仮想環境を構築する
WSLでEMAN2

よく使うプログラム

e2boxer.py

CTF推定

Gctf

EMPIAR

EMPIARからのデータダウンロード方法

EMPIAR構造決定チャレンジ

  • EMPIARで公開されているデータの構造決定にひたすら挑戦していきます。

勉強

クライオ電子顕微鏡法

  • EM-learning.com
    • カリフォルニア工科大学のGrant Jensen教授とThermo Fischer(FEI)のMatthijn Vos博士によるビデオレクチャー(70時間以上!)。
    • 電子顕微鏡の理論、使い方、クライオ電顕のサンプル作成方法など。必見。
    • 無料。(要ユーザー登録)

機械学習

ベイズ推定

  • FOUNDATIONS OF MACHINE LEARNING
    • BloombergのDavid S. Rosenberg氏による機械学習関連のビデオレクチャー。
    • Lecture3, 16, 17, 18, 19, 26, 27は確率分布によるモデリング、最尤推定、MAP推定などについて学べる。
    • 無料。

確率論と確率過程

  • Probabilistic Systems Analysis and Applied Probability
    • MITの Prof. John Tsitsiklisによる学部生、大学院生向け講義。MIT Open Coursewareでビデオ、講義資料、補足資料など無料公開されている。
    • 簡単な例を使うところから始めて確率論と確率過程について勉強できる。

ハッカーのためのベイズ推定法

深層学習

文献調査

PubMed

  • PubMed Essentials
    • US National Library of Medicine(NLM)が運用している生命科学、医学系の文献検索エンジンPubMedの使い方のビデオレクチャーコース。
    • 無料。(National Network of Libraries of Medicine (NNLM)のアカウント作成と、コースへの登録が必要)
    • 視聴するのが面倒くさい割りにあまり役立つ情報が得られない感があり、微妙。
  • PubMed Tutorial
    • PubMedのホームページにあるPubMed Tutorial。HTML、時々ビデオ説明。
    • 少しとっつきにくい部分もあるが、PubMedをツールとして使うための色々が説明されていて、勉強になった。

MediaWiki

csv2wikitable

Eospedia内リンク

Eospedia内で以下の項目も書き進めています。

MicroED

MicroED(Micro crystal Electron Diffraction:微結晶電子線回折)に関する情報を書き残していきます。

リモートワーク推進

リモートワーク推進のためのツール関連について書き残していきます。

Python

Python関係について書き残していきます。

Linux関連

Linux関連について書き残していきます。

EMAN2関連

EMAN2関連について書き残していきます。

Docker関連

Dockerです。