[ロジスティック回帰]は、類似度を確立によって表現する
→ ”ユークリッド距離”、”コサイン類似度”に比べて、より踏み込んだ情報を得ることが可能
→ 確率pで1、確率1-pで0を取るような離散確率分布ベルヌーイ分布を元に、確率的に1か0の値を取るものと考える
公式
ある入力xを、出力y={1,0}のいずれかに分類することを考え、y=1となる条件付き確率p(y=1|x;θ)を以下のように定義する
p(y=1|x;θ) = 1 / (1 + exp(-θ^Tx)
※p(θ)= 1/(1*exp(-θ)) はロジスティック関数
from sklearn import datasets from sklearn.linear_model import LogisticRegression from sklearn.model_selection import StratifiedKFold from sklearn.model_selection import cross_validate def main(): dataset = datasets.load_breast_cancer() X, y = dataset.data, dataset.target clf = LogisticRegression() skf = StratifiedKFold(shuffle=True) scoring = { 'acc' : 'accuracy', 'auc': 'roc_auc', } scores = cross_validate(clf, X, y, cv=skf, scoring=scoring) print('Accuracy(mean):', scores['test_acc'].mean()) print('AUC(mean):', scores['test_auc'].mean()) if __name__ == '__main__': main()
Accuracy(mean): 0.9490299823633156
AUC(mean): 0.992996071668104