papermill × Jupyter Notebook에서 문서화된 분석 워크플로 만들기

어제 기사 하지만 쓴 것처럼, 워크플로우에 문장이나 이미지를 관련짓게 하고 싶은데, Papermill 라는 Jupyter Notebook을 배치 실행하기 위한 Python 패키지가 있었으므로, 이것을 사용해 워크플로우를 구축했다.

여기에서는 1세포 RNA-Seq의 데이터 data/input.csv와 라벨 정보 data/label.csv라는 파일에 대해, 복수의 차원 압축을 시험하는 작업을 한번에 실시했다.

또한 R을 Jupyter notebook에서 사용할 수 있도록하기 위해 IRkernel 설치와 .ipynb 파일의 kernelspec 부분을 다음과 같이 다시 쓴다.
  "kernelspec": {
   "display_name": "R",
   "language": "R",
   "name": "ir"
  },

그 후,
jupyter notebook workflow.ipynb

그리고, 노트북을 기동해, 위로부터 순서대로 오로지 차원 압축을 시험하는 노트북을 만들어 넣은 후에, 입력, 출력 파일의 장소나, 압축 차원수를 나중에 Papermill의 인수로서 건네줄 수 있도록 쓰면, 이하 처럼 Papermill을 실행했다.
papermill workflow.ipynb output/papermill/output.ipynb \
-p infile data/input.csv -p infile2 data/label.csv -p  \
outdir output/papermill -p pca_ndim 3 -p nmf_ndim 4  \
-p mds_ndim 4 -p lda_ndim 3 -p som_ndim 2 -p isomap_ndim 2 \
-p lle_ndim 2 -p dmap_ndim 4 -p tsne_ndim 2 -p umap_ndim 2 \
-p tumap_ndim 2 -p fatlas2_ndim 2

이것에 의해, output/papermill의 곳에, 차원 압축의 결과 파일이나 output.ipynb라고 하는 노트북이 출력되게 된다. papermill에 지정된 매개변수가 노트북에 내장되어 있음을 알 수 있습니다.

htps : // 기주 b. 코 m/코키츠 유자키/ 이 pyn b
htps : // 코 b. 레세아 rch. 오, ぇ. 코 m/기테우b/코키츠 유자키/를 rkfぉw_벤 ch마 rk/bぉb/마s테 r/오우 t프 t/파페r미르l/오우 t푸 t. 이 pyn b







아래와 같이 출력된 쪽의 노트북을 기동해 두면, 실행 도중의 모습을 확인할 수 있는 것도 편리.
jupyter notebook output/papermill/output.ipynb

다만, 어제 기사 에서도 썼듯이, 실 데이터에서는 파라미터 튜닝하고 싶은 것과, 파라미터의 값에 따라서는 이기기 때문에, 이 쓰는 방법이라고 전 계산을 다시 할 필요가 나오므로, 각 차원 압축 수법마다 노트 북화&Docker 컨테이너화해, 복수의 파라미터 마다 분산 처리하는 것 같은 사용법이 좋을지도 모른다.

참고



htps : // 이 m / h 라푸시 / ms / d4961 에에 42c82c52에 f64
htps : // 코 m/노코_쿠이이/있어 ms/62 아 7f70f세 b6153620f4

좋은 웹페이지 즐겨찾기