前回記事では入力された患者情報から母集団PKパラメータを用いてバンコマイシン(VCM)の血中濃度推移をシミュレーションするプログラムを作りました。今回はベイジアン法により対象患者のPKパラメータを推定し、算出されたAUCを基にして推奨投与量を求める…
日本化学療法学会がホームページで公開しているバンコマイシンTDMソフトウェアで PAT(Practical AUC-guided TDM for vancomycin)というWebアプリケーションがあります。名前が示すように、AUCガイドによる投与設計を実践するためのTDMソフトです。ソフトの…
認定薬剤師の単位を取ることができるMPラーニングの動画を私はスマホで見ているのですが、続きを視聴するために1コンテンツ中に何度もタップを要求されます。(短いときには数十秒おきに!) 今回の記事では、このスマホのタップをPythonで自動化して、最後…
CNNといえば画像の分類問題でよく目にしますが、回帰問題にも用いることができます。分類問題ではデータがどのクラスに属するか、という問題を扱いますが、回帰問題では入力データから連続的な数値の予測を行います。 そこで、回転した画像からその回転角度…
前回はとりあえずオリジナルのデータセット(錠剤とカプセルの画像)で学習して、実際にそれらが検出できるかというところまでやってみました。しかし、Lossの落ちやモデル評価までは踏み込めていなかったので、今回はこれらについて少し掘り下げてみようと…
前回は錠剤画像の刻印を強調してみましたが、今度は物体検出モデルを使って薬が写った画像から錠剤(またはカプセル)を検出してみます。 Windows10でkeras版のYOLOv3を使用しました。 環境を構築し、自分で写真を撮ってオリジナルのデータセットを作成して…
薬剤師をしていると調剤された薬の監査や持ち込まれた薬の鑑別を毎日のようにしますが、現在はこれらの業務の支援システムがいろんなメーカーから出ているようです。 共通してみられる機能に、撮影した錠剤の画像から薬がどの薬であるかを推定できる、あるい…
指定したExcelファイル内を検索して、特定のワード(語句)があるかどうかを確認するPythonプログラムを定期的に自動実行するようにしました。共有フォルダなど自分の管理外にあるようなExcelファイルが不定期に更新される場合、自分に必要な情報が載ってい…
あらかじめMNISTで学習しておいたCNNモデルを自分で集めた手書き数字画像データセットに対して精度が高くなるよう再学習しました。 事前学習済みCNNモデルの重みを微調整する 手書き数字画像データセットを可視化する グレースケール画像でデータを描画 PCA…
自分で集めた手書きの数字画像からデータセットを作りました。MNISTのように、手軽に自分のモデルの学習に使うことができるようにプログラムを書きました。 数字画像データを人手でラベル付けする データ拡張(Data Augmentation) 画像を水増ししてラベル間…
自分で用意した画像から手書き数字の切り出し→前処理と行なってきました。今度はこれらの手書き数字をMNISTデータセットで学習させた畳み込みニューラルネットワーク(convolutional neural network:CNN)に読ませるということをやってみます。また、モデル…
前回「画像から手書き数字を切り出す - 薬剤師のプログラミング学習日記」で自分で用意した画像データから手書き数字の部分だけを切り出すことができました。あとはこの手書き数字を画像識別モデルに読ませて数字認識をさせたいところですが、切り出した画像…
手書き数字をコンピュータに読ませて入力作業を自動化するため、画像から特定の領域にある数字を切り出すプログラムを書きました。 なお、本記事の内容は「数字認識を使って棚卸を自動化するアプリケーションを作る」で行った処理のひとつとなっています。 …
コピー機等でスキャンした画像データをよく見ると、ほんのわずかに傾いているものがあります。Windowsだと標準ソフトのフォトあたりを使うと、スライダーをマウスで動かしながら画像の回転を行うことができますが、角度の最小単位が1度ずつとなっていて微妙…
機械学習ライブラリにおける画像分類のチュートリアルなどで目にすることが多い手書き数字認識ですが、実際の業務で行う棚卸で利用することができそうだと考え、あれこれ試行錯誤してやってみました。とりあえず実用で使えるレベルで形になったので、書いて…
薬剤師が重要な役割を果たすことで算定できる施設基準は数多くありますが、今回は病棟薬剤業務実施加算の届出をしている病院について、病床数やその他の施設基準との関係をPythonを使って調べてみました。記事の前半は主にデータの概要やプログラムのデータ…
調剤薬局に勤めている友人から、「納品価格が更新された在庫薬のCSVファイルを新たにレセコンに取り込みたいが、うまくいかない」との相談を受け、Pythonプログラムを書いて実現することにしました。わざわざPythonを持ち出さなくても他にも方法はありますが…
主成分分析(PCA:Principal Component Analysis)では、データの本質的な部分に注目して重要な部分を保持し、あまり重要でない部分を削る、一言でいえばデータの要約(=次元削減)を行います。いろいろな分野で使われている手法ですが、機械学習においては与え…
k-meansはデータを自動的にクラスタリング(グループ化)する手法で、k平均法ともいわれます。同じクラスタ内のデータは類似するように、別のクラスタのデータは異なるようにデータを分類します。ナイーブベイズなどでは正解を与えて「教師あり」で分類を行い…
テキストの特徴抽出の手法として文書を単語の集合としてみるBag of Words(BoW)表現について前に書きましたが、今回は単語を数値ベクトルに変換する手法についてです。 単語の分散表現とは Word2Vec CBOWモデル Skip-gramモデル Wikipediaの特定カテゴリの記…
自然言語処理に関する機械学習の手法を試す際には大量のテキストデータが必要になることがあります。そこで、手軽に使えるテキストデータとしてWikipediaの記事データを使うことにしたのですが、全データを対象にしてアルゴリズムを学習させるのは時間がかか…
前回は2値分類でしたが、今回はロジスティック回帰モデルにおける多クラス分類のコードを書きます*1。今までの流れだと、モデルの表現と目的関数、その偏微分がわかれば勾配降下法でモデルのパラメータを求め分類器を作ることができたので、それを目指します…
今回はロジスティック回帰を使ってデータを分類してみようと思います。「回帰」とありますが、分類タスクで使用されるアルゴリズムです。なお、この記事はCourseraのMachine Learning(機械学習)講座『Logistic Regression』の内容を基に書いています。また…
以前薬歴文書の分類にナイーブベイズ分類器を使いました。この分類器は迷惑メールのフィルタやWebニュース記事の分類等で使用されているそうです。特徴として、性能はやや劣ることがあるものの、高速に訓練でき実装も比較的容易だということで、今回はこのナ…
文書データを数値表現に変換する手法の1つであるBag of Wordsを一からPythonで書いてみました。 Bag of Words(BoW)とは BoWの問題点 nグラムによるBoW sklearnのCountVectorizerのパラメータについて tokenizer preprocessor analyzer stop_words max_dfとm…
自然言語である文書データを機械学習プログラムで扱えるようにするためには、文を構成する要素である単語に分解(分かち書き)する必要があります。今回はPythonで分かち書きをするために必要なソフトのインストールとその設定について書こうと思います。 分…
少し前まで自然言語データを用いた様々な機械学習の手法について勉強していました。しばらくはこれについて書いていこうと思います。今回のプログラムでは、次のような入力された文章に対してあらかじめ作成しておいたカテゴリに分類させる、ということをや…
Outlookで受信したメールを特定のフォルダにHTMLファイルとして出力するプログラムです。私の職場では医薬品医療機器情報配信サービス(PMDAメディナビ)を利用していますが、このメールをネットワーク内の共有フォルダにHTML形式で保存することで、ネットワ…
これまでに何度か片対数プロットした血中濃度データから直線のパラメータを求めるということをしましたが、これは線形回帰の中でも説明変数が一つの単回帰に当たります。 今まではnumpyやscipyといったライブラリから既成のモジュールを呼び出してデータを与…
前回記事「eGFRとクレアチニンクリアランスの計算式をグラフ描画する」の続きです。 ウィジェット(スライダーなどの部品)を配置する ウィジェットの値変更時の処理を書く グラフにテキストを表示する 体重一点における体表面積、CCr、個別eGFRを求める 実…