{"id":3122,"date":"2023-01-20T21:43:09","date_gmt":"2023-01-20T12:43:09","guid":{"rendered":"https:\/\/blog.since2020.jp\/?p=3122"},"modified":"2023-01-20T21:47:34","modified_gmt":"2023-01-20T12:47:34","slug":"k-shape","status":"publish","type":"post","link":"https:\/\/since2020.jp\/media\/k-shape\/","title":{"rendered":"K-Shape\u3092\u7528\u3044\u305f\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u5206\u6790\u3092Python\u3067\u5b9f\u88c5"},"content":{"rendered":"\n<p>K-Shape\u3092\u7528\u3044\u305f\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u5206\u6790\u3092Python\u3067\u5b9f\u88c5<\/p>\n\n\n<h2>K-Shape\u3068\u306f\uff1f<\/h2>\nK-Shape\u3068\u306f\u3001\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u3092\u6642\u7cfb\u5217\u306e\u5f62\u72b6\u3067\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u3092\u884c\u3046\u5206\u6790\u624b\u6cd5\u3067\u3059\u3002K-Shape\u306e\u7279\u5fb4\u3068\u3057\u3066\u306f\u3001\r\n<ul>\r\n \t<li><strong>\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u5f62\u72b6\u306b\u7740\u76ee\u3057\u305fshape-based\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0<\/strong><\/li>\r\n \t<li><strong>\u30c7\u30fc\u30bf\u9593\u306e\u8ddd\u96e2\u5c3a\u5ea6\u3068\u3057\u3066\u3001Shape-based distance(SBD)\u3068\u547c\u3070\u308c\u308b\u3001\uff12\u3064\u306e\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u76f8\u95a2\u95a2\u4fc2\u306e\u6700\u5927\u5024\u3092\u7528\u3044\u3066\u3044\u308b<\/strong><\/li>\r\n \t<li><strong>\u9ad8\u52b9\u7387\u304b\u3064\u9ad8\u7cbe\u5ea6\u3067\u3001\u5e45\u5e83\u3044\u3067\u30c7\u30fc\u30bf\u306b\u9069\u7528\u3067\u304d\u308b<\/strong><\/li>\r\n<\/ul>\r\n\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u3067\u306f\u3001\u6bd4\u8f03\u3059\u308b\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u4f4d\u76f8\u304c\u7570\u306a\u3063\u305f\u308a\u3001\u305d\u306e\u6642\u9593\u8ef8\u306e\u9577\u3055\u304c\u7570\u306a\u3063\u305f\u308a\u3059\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002K-Shape\u3067\u306f\u305d\u308c\u3089\u3092\u88dc\u6b63\u3057\u3001\u30b9\u30b1\u30fc\u30ea\u30f3\u30b0\u306e\u76f8\u9055\u306b\u3064\u3044\u3066\u306fz\u6b63\u898f\u5316\u3057\u305f\u4e0a\u3067\u76f8\u95a2\u95a2\u4fc2\u306e\u8ddd\u96e2\u3092\u6e2c\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002\n\n<h2>Python\u3067\u306e\u5b9f\u88c5_\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u30a4\u30f3\u30dd\u30fc\u30c8<\/h2>\n\u4e0b\u8a18\u3001\u30b3\u30fc\u30c9\u3092\u53c2\u8003\u306b\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u30a4\u30f3\u30dd\u30fc\u30c8\u3092\u884c\u3044\u307e\u3059\u3002\r\n\r\n!pip install kshape\r\n!pip install tslearn\r\n!pip install hdbscan\r\nfrom kshape.core import kshape, zscore\r\nimport tslearn\r\nfrom tslearn.utils import to_time_series_dataset\r\nfrom tslearn.clustering import KShape\r\nfrom tslearn.clustering import TimeSeriesKMeans\r\nimport hdbscan\n\n<h2>Python\u3067\u306e\u5b9f\u88c5_\u5b66\u7fd2\u3068\u51fa\u529b<\/h2>\n\u4eca\u56de\u306f\u30af\u30e9\u30b9\u30bf\u30fc\u6570\u30923\u306b\u8a2d\u5b9a\u3057\u5b9f\u884c\u3057\u3066\u3044\u307e\u3059\u3002DataFrame\u306e\u30c7\u30fc\u30bf\u3092\u5206\u6790\u3059\u308b\u5834\u5408\u3001\uff11\u884c\u306e\u30c7\u30fc\u30bf\u304c\u4e00\u3064\u306e\u6642\u7cfb\u5217\u3068\u3057\u3066\u6271\u308f\u308c\u307e\u3059\u3002\u4f8b\u3048\u3070\u300110\u00d7100\u306eDataFrame\u3092\u5b66\u7fd2\u3055\u305b\u305f\u5834\u5408\u3001\u6642\u7cfb\u5217\u6570\u306f10\u500b\u3068\u8a8d\u8b58\u3057\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u3092\u884c\u3044\u307e\u3059\u3002\r\n\r\nks = KShape(n_clusters=3, random_state=42)\r\nks.fit(nua_df.T)\r\npreds=ks.predict(nua_df.T)\n\n<h2>\u51fa\u529b\u7d50\u679c\u306e\u4f8b<\/h2>\n\u51fa\u529b\u7d50\u679c\u306e\u4f8b\u3092\u4e0b\u8a18\u306b\u793a\u3057\u307e\u3059\u3002\r\n\r\nprint(pred)\r\n&#8212;\r\n#[0 1 0 2 2 0 2 1 0 1]\r\n\r\nK-Shape\u306b\u95a2\u3059\u308b\u30cf\u30a4\u30d1\u30fc\u30d1\u30e9\u30e1\u30fc\u30bf\u306f\u4ed6\u306b\u3082\u3042\u308b\u305f\u3081\u4e0b\u8a18\u30b5\u30a4\u30c8\u3092\u53c2\u8003\u306b\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002\r\n\r\n<a href=\"https:\/\/tslearn.readthedocs.io\/en\/stable\/gen_modules\/clustering\/tslearn.clustering.KShape.html\">tslearn.clustering.KShape<\/a>","protected":false},"excerpt":{"rendered":"<p>K-Shape\u3092\u7528\u3044\u305f\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u5206\u6790\u3092Python\u3067\u5b9f\u88c5 K-Shape\u3068\u306f\uff1f K-Shape\u3068\u306f\u3001\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u3092\u6642\u7cfb\u5217\u306e\u5f62\u72b6\u3067\u30af\u30e9\u30b9\u30bf\u30ea\u30f3\u30b0\u3092\u884c\u3046\u5206\u6790\u624b\u6cd5\u3067\u3059\u3002K-Shape\u306e\u7279\u5fb4\u3068\u3057 [&hellip;]<\/p>\n","protected":false},"author":85,"featured_media":3123,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","swell_btn_cv_data":"","footnotes":"","_wp_rev_ctl_limit":""},"categories":[1246],"tags":[349,331,350,165],"class_list":["post-3122","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-infrastructure","tag-k-shape","tag-python","tag-350","tag-165"],"_links":{"self":[{"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/posts\/3122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/users\/85"}],"replies":[{"embeddable":true,"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/comments?post=3122"}],"version-history":[{"count":1,"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/posts\/3122\/revisions"}],"predecessor-version":[{"id":3124,"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/posts\/3122\/revisions\/3124"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/media\/3123"}],"wp:attachment":[{"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/media?parent=3122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/categories?post=3122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/since2020.jp\/media\/wp-json\/wp\/v2\/tags?post=3122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}