薬剤師のプログラミング学習日記

プログラミングやコンピュータに関する記事を書いていきます

Pythonで画像の傾きを補正して水平にする

コピー機等でスキャンした画像データをよく見ると、ほんのわずかに傾いているものがあります。Windowsだと標準ソフトのフォトあたりを使うと、スライダーをマウスで動かしながら画像の回転を行うことができますが、角度の最小単位が1度ずつとなっていて微妙…

数字認識を使って棚卸を自動化するアプリケーションを作る

機械学習ライブラリにおける画像分類のチュートリアルなどで目にすることが多い手書き数字認識ですが、実際の業務で行う棚卸で利用することができそうだと考え、あれこれ試行錯誤してやってみました。とりあえず実用で使えるレベルで形になったので、書いて…

病棟薬剤業務実施加算を届出している病院について調べる

薬剤師が重要な役割を果たすことで算定できる施設基準は数多くありますが、今回は病棟薬剤業務実施加算の届出をしている病院について、病床数やその他の施設基準との関係をPythonを使って調べてみました。記事の前半は主にデータの概要やプログラムのデータ…

Pythonでダブルクォーテーション囲いのCSVファイルを作成する

調剤薬局に勤めている友人から、「納品価格が更新された在庫薬のCSVファイルを新たにレセコンに取り込みたいが、うまくいかない」との相談を受け、Pythonプログラムを書いて実現することにしました。わざわざPythonを持ち出さなくても他にも方法はありますが…

主成分分析(PCA)による次元削減

主成分分析(PCA:Principal Component Analysis)では、データの本質的な部分に注目して重要な部分を保持し、あまり重要でない部分を削る、一言でいえばデータの要約(=次元削減)を行います。いろいろな分野で使われている手法ですが、機械学習においては与え…

k-meansによるクラスタリング

k-meansはデータを自動的にクラスタリング(グループ化)する手法で、k平均法ともいわれます。同じクラスタ内のデータは類似するように、別のクラスタのデータは異なるようにデータを分類します。ナイーブベイズなどでは正解を与えて「教師あり」で分類を行い…

Word2Vecを使って特定カテゴリで使われる単語の分散表現を得る

テキストの特徴抽出の手法として文書を単語の集合としてみるBag of Words(BoW)表現について前に書きましたが、今回は単語を数値ベクトルに変換する手法についてです。 単語の分散表現とは Word2Vec CBOWモデル Skip-gramモデル Wikipediaの特定カテゴリの記…

Wikipediaの特定カテゴリの記事のみを取得する

自然言語処理に関する機械学習の手法を試す際には大量のテキストデータが必要になることがあります。そこで、手軽に使えるテキストデータとしてWikipediaの記事データを使うことにしたのですが、全データを対象にしてアルゴリズムを学習させるのは時間がかか…

ロジスティック回帰による多クラス分類

前回は2値分類でしたが、今回はロジスティック回帰モデルにおける多クラス分類のコードを書きます*1。今までの流れだと、モデルの表現と目的関数、その偏微分がわかれば勾配降下法でモデルのパラメータを求め分類器を作ることができたので、それを目指します…

ロジスティック回帰による2値分類

今回はロジスティック回帰を使ってデータを分類してみようと思います。「回帰」とありますが、分類タスクで使用されるアルゴリズムです。なお、この記事はCourseraのMachine Learning(機械学習)講座『Logistic Regression』の内容を基に書いています。また…