【初心者向け】基礎&実践プログラミング

初心者がつまづきやすいところ、最短で実力が身につく方法をお伝えします。

【Python】相関行列 (Correlation Matrix)とヒートマップ (Heat Map)の作り方

目的 Pythonで相関行列 (Correlation Matrix)を作成。 ヒートマップ (Heat Map)で図示。 Better Heatmaps and Correlation Matrix Plots in Pythonを参考にしました。 シンプルなヒートマップ まずは、基本的な相関行列のヒートマップを作成します。 ライブ…

【Python】縦断データの可視化(プロット・箱ひげ図・バイオリン図・信頼区間・ヒストグラム)

目的 Pythonを用いて、縦断データ(beforeとafter)の可視化 主にやることは、 プロット (dot plot) 箱ひげ図 (box plot) バイオリン図 (violin plot) 信頼区間 (CI bar) ヒストグラム (histogram) 最終的には、このような図を作成する。 準備 open-visualizat…

【PyTorch】サンプル⑨ 〜 動的グラフ 〜

目的 PyTorchの特徴の一つである動的グラフに挑戦する。 前準備 PyTorchのインストールはこちらから。 初めて、Google Colaboratoryを使いたい方は、こちらをご覧ください。 コマンドラインの「>>>」の行がPythonで実行するコマンドです。 それ以外の行は、…

Pythonを使った株価の自動収集

はじめに 最近、株価を予想するAIを作って欲しいということで、全くいい精度がでる期待もなかったが作ることにした。 過去にkerasやtensorflowを使ってAIを作ったことがあったが、株価を集めることはしたことがなかったのでやり方をまとめておく。 ビックデ…

【PyTorch】サンプル⑧ 〜 複雑なモデルの構築方法 〜

目的 このチュートリアルに至るまでは、ニューラルネットワークモデルの定義を積み木を積み重ねるように単純なシーケンスtorch.nn.Sequentialで構築していました。 このtorch.nn.Sequentialを用いた方法は、モデルの定義が簡単である反面、ネットワーク構造…

【PyTorch】サンプル⑦ 〜 optim パッケージ 〜

目的 PyTorch: optimを参考にPyTorchのoptimパッケージを使って最適化関数(optimizer)を定義する。 前準備 PyTorchのインストールはこちらから。 初めて、Google Colaboratoryを使いたい方は、こちらをご覧ください。 コマンドラインの「>>>」の行がPythonで…

【PyTorch】サンプル⑥ 〜 nn パッケージ 〜

目的 PyTorch: nnを参考にPyTorchのnnパッケージを扱う。 nnパッケージの便利さを感じる。 前準備 PyTorchのインストールはこちらから。 初めて、Google Colaboratoryを使いたい方は、こちらをご覧ください。 コマンドラインの「>>>」の行がPythonで実行する…

【Python】DICOMからPNGやCSVに変換

はじめに AIを作成するために、MRI画像をDICOM形式からPNG形式あるいはCSV形式に変換する必要があった。 件数は1700件ほど。 有名なものとしてはDICOM Cenverterがあるが、大量のDICOMをInputすると固まってしまう。 (199.99$で買わなきゃいけないのか??) …

【FSL】Atlas(アトラス)を1枚1枚はがして別々にする方法

目的 FSLを用いて、atlas(アトラス)のlabel(ラベル)を1枚1枚はがして別々にする。 例として、AAL atlasを用いる。 atlasの用意 今回のターゲットとなるatlasはAAL atlas。 1から116の画素値を持つ。 label listの作成 labelの番号(画素値)ごとの領域名を一列…

【Linux】DICOMから被験者の情報を一括自動収集

はじめに 200件ちかいMRIのDICOMから被験者の - 名前 - ID - 生年月日 - 性別 - 年齢 - 検査日 を表にまとめる。 手作業では、いつまで経っても終わらないのとコピペのミス等のHuman Errorが出る可能性があるのでPCにまかせるプログラムを作成した。 dcmdump…

【Python】MAEとRMSEの計算方法

目的 Pythonを使って平均絶対誤差(Mean Absolute Error:MAE)と二乗平均平方根誤差(Root Mean Squared Error:RMSE)を計算する。 準備 CSVファイルに2変数のデータを書き込む。 1列目はLabel、2列目はAIの予測値(Predicted)。 今回はdata.csvとして保存する。 …

【機械学習】ランダムフォレスト (Random Forest)で疾患分類

(Credit: Decision tree icon Royalty Free Vector Image - VectorStock ) 目的 自分のメモ用。 ランダムフォレスト (Random Forest)を使って疾患Aと疾患Bを分ける。 プログラミング言語はPythonで、ライブラリはscikit-learnを用いる。 入力したバイオマー…

【PyTorch】サンプル⑤ 〜Static Graphs(静的グラフ)〜

目的 Deep Learning(ディープラーニング)で、よく使われるTensorFlowを使って計算グラフの設計からニューラルネットワークの学習をする。 PyTorchが採用している動的グラフを理解するために、静的グラフの代表であるTensorFlowに触れる。 前準備 PyTorchのイ…

【PyTorch】サンプル④ 〜Defining New autograd Functions(自動微分関数の定義)〜

目的 PyTorchのチュートリアルPyTorch: Defining New autograd Functionsを参考にPyTorchテンソル(tensor)と自動微分(autograd)を使って、損失(loss)や重み(weight)の計算をする。 前回の、【PyTorch】サンプル③ 〜TENSORS AND AUTOGRAD(テンソルと自動微分…

【PyTorch】サンプル③ 〜TENSORS AND AUTOGRAD(テンソルと自動微分)〜

目的 PyTorchのチュートリアルPyTorch: Tensors and autogradを参考にPyTorchテンソル(tensor)と自動微分(autograd)を使って、損失(loss)や重み(weight)の計算をする。 これまでは、PyTorchに実装されている自動微分機能を使わずにニューラルネットワークの…