benriscore Methodology v1.0
概要
benriscore は国土全域の地点について、OpenStreetMap を中心とした複数データ源から施設アクセシビリティを計算し、世帯類型ごとに重み付けした 「便利度スコア」 を返すサービスです。本ページはその算出方法の正本 (v1.0 editorial) を記述します。実装の正本は各 repository 内の TypeScript literal (cohortWeights.ts / subcategoryTaxonomy.ts / cohortRationale.ts) およびdata-pipeline/docs/taxonomy-v2.mdです。
本バージョンは editorial v1.0 (公的統計を参照した判断ベース) です。今後、実利用データに基づく empirical calibration を v1.1 以降で行う予定です。
世帯類型 (9 cohort)
総務省 国勢調査 家族類型 × 年齢区分に準拠して 8 類型、加えて全類型を等加重で集約した general の計 9 類型を提供します。
| slug | 日本語 | 国勢調査 家族類型 | 年齢条件 |
|---|---|---|---|
| general | 一般 | (全類型の等加重 meta) | — |
| single | 単身 | 単独世帯 | 20-64 |
| single_senior | 独居高齢 | 単独世帯 | 65+ |
| dink | 共働き夫婦 | 夫婦のみ | 25-64 |
| senior_couple | 高齢夫婦 | 夫婦のみ | 65+ |
| family_kids | 子育て (乳小期) | 夫婦と未婚の子 | 末子 0-11 |
| family_teens | 子育て (中高期) | 夫婦と未婚の子 | 末子 12-18 |
| single_parent | ひとり親世帯 | ひとり親と未婚の子 | — |
| multigen | 三世代同居 | 三世代世帯 | — |
施設カテゴリ (26 subcategory / 10 parent)
OpenStreetMap のタグを参照して 26 の subcategory に分類し、既 response の互換用に 5 旧 parent (access / health / lifestyle / community / public_service) と、v2 の 10 新 parent の両方に集約します。
mobility交通 (新設)rail_station— 駅OSM: railway=station, halt, tram_stopbus_stop— バス停OSM: highway=bus_stop, amenity=bus_station
daily_shopping日常買い物grocery_daily— 食料・日用品OSM: shop=supermarket, convenience, greengrocer, bakery, butchershopping_durable— 耐久財・総合店OSM: shop=hardware, electronics, department_store, variety_store, general
healthcare医療hospital— 総合病院OSM: amenity=hospitalclinic_primary— 一般診療所OSM: amenity=clinic/doctors (speciality 未指定 / general / internal)clinic_specialty— 専門診療 (小児・産婦人科 等)OSM: amenity=clinic/doctors + healthcare:speciality=paediatrics, gynaecology, dermatology, 等dental— 歯科OSM: amenity=dentistpharmacy— 薬局OSM: shop=pharmacy, amenity=pharmacy
dining_leisure飲食dining_casual— レストラン・カフェOSM: amenity=restaurant, cafedining_quick— ファストフードOSM: amenity=fast_food
personal_services個人向けサービスpersonal_care— 美容・ランドリーOSM: shop=hairdresser, laundry, beautyfuel_vehicle— 給油・洗車OSM: amenity=fuel, car_wash
education教育 (細分化)edu_early— 保育・幼稚園OSM: amenity=kindergarten, childcareedu_primary— 小学校OSM: amenity=school + isced:level=1 (or name literal 小学)edu_secondary— 中・高校OSM: amenity=school + isced:level=2/3 (or name literal 中学/高校)edu_higher— 大学・短大・高専OSM: amenity=university, college
culture_recreation文化・レクリエーションcultural— 図書館・劇場・美術館OSM: amenity=library, theatre, arts_centre, tourism=museumsports— スポーツ施設OSM: leisure=sports_centre, fitness_centre, swimming_poolparks— 公園・広場OSM: leisure=park, playground, garden
senior_care介護・福祉 (旧 community から分離)nursing_home— 介護施設OSM: amenity=nursing_home, social_facility=nursing_home, group_homesocial_facility— 福祉施設 (シニア系)OSM: amenity=social_facility + senior/assisted_living/day_care
civic_service公共サービスgov_admin— 役所・裁判所OSM: amenity=townhall, courthouse, office=governmentsafety— 警察・消防OSM: amenity=police, fire_stationpostal— 郵便局OSM: amenity=post_office
financial金融 (新設)bank_atm— 銀行・ATMOSM: amenity=bank, atm
重み付け matrix (9 cohort × 26 subcategory = 234 weights)
各 cohort 行の合計は 26.0 (= 26 subcategory × 1.00 baseline)。値はすべて 0.50-2.00 の range に収めています。general 行はすべて 1.00 で、これは v1 以前の等加重挙動と一致します。
| subcategory | general | single | single_senior | dink | senior_couple | family_kids | family_teens | single_parent | multigen |
|---|---|---|---|---|---|---|---|---|---|
| rail_station | 1.00 | 1.50 | 1.00 | 1.50 | 1.00 | 1.00 | 1.40 | 1.20 | 1.20 |
| bus_stop | 1.00 | 1.00 | 1.00 | 1.00 | 1.20 | 1.00 | 1.00 | 1.20 | 1.20 |
| grocery_daily | 1.00 | 1.30 | 1.00 | 1.00 | 1.00 | 1.40 | 1.30 | 1.30 | 1.40 |
| shopping_durable | 1.00 | 1.00 | 1.00 | 1.20 | 1.00 | 0.70 | 0.80 | 0.70 | 0.80 |
| hospital | 1.00 | 1.00 | 1.50 | 1.00 | 1.40 | 1.20 | 1.00 | 1.20 | 1.30 |
| clinic_primary | 1.00 | 1.00 | 1.40 | 1.00 | 1.30 | 1.30 | 1.20 | 1.30 | 1.20 |
| clinic_specialty | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.50 | 0.80 | 1.30 | 0.80 |
| dental | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 0.90 | 1.00 | 0.80 | 0.80 |
| pharmacy | 1.00 | 1.00 | 1.50 | 1.00 | 1.40 | 1.20 | 1.00 | 1.20 | 1.20 |
| dining_casual | 1.00 | 1.60 | 0.70 | 1.50 | 0.80 | 0.70 | 1.00 | 0.70 | 0.80 |
| dining_quick | 1.00 | 1.40 | 0.60 | 1.30 | 0.60 | 0.60 | 0.80 | 0.70 | 0.70 |
| personal_care | 1.00 | 1.30 | 0.80 | 1.20 | 0.80 | 0.70 | 0.80 | 0.60 | 0.70 |
| fuel_vehicle | 1.00 | 0.60 | 0.50 | 0.70 | 0.70 | 0.70 | 0.80 | 0.60 | 0.70 |
| edu_early | 1.00 | 0.60 | 0.60 | 0.60 | 0.60 | 1.60 | 0.50 | 1.50 | 1.20 |
| edu_primary | 1.00 | 0.60 | 0.60 | 0.60 | 0.60 | 1.60 | 0.80 | 1.40 | 1.30 |
| edu_secondary | 1.00 | 0.60 | 0.60 | 0.60 | 0.60 | 0.80 | 1.60 | 1.00 | 0.80 |
| edu_higher | 1.00 | 0.80 | 0.70 | 0.80 | 0.70 | 0.60 | 1.20 | 0.60 | 0.80 |
| cultural | 1.00 | 1.20 | 1.00 | 1.30 | 1.20 | 1.20 | 1.50 | 0.70 | 0.90 |
| sports | 1.00 | 1.00 | 0.70 | 1.20 | 0.80 | 0.90 | 1.20 | 0.70 | 0.70 |
| parks | 1.00 | 1.00 | 1.30 | 1.00 | 1.40 | 1.70 | 1.00 | 0.90 | 1.30 |
| nursing_home | 1.00 | 0.60 | 1.50 | 0.60 | 1.30 | 0.50 | 0.60 | 0.50 | 1.30 |
| social_facility | 1.00 | 0.70 | 1.40 | 0.70 | 1.20 | 0.60 | 0.70 | 1.30 | 0.70 |
| gov_admin | 1.00 | 1.00 | 1.30 | 1.00 | 1.20 | 0.80 | 0.90 | 1.40 | 1.20 |
| safety | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.20 | 0.90 | 1.20 | 0.90 |
| postal | 1.00 | 1.00 | 1.30 | 1.00 | 1.20 | 0.80 | 1.00 | 1.20 | 1.20 |
| bank_atm | 1.00 | 1.20 | 1.00 | 1.20 | 1.00 | 0.80 | 1.20 | 0.80 | 0.90 |
青字: 強調 (>=1.20) / 薄字: 抑制 (<=0.80)
cohort 別 rationale
general一般
全世帯類型を等加重で集約した基準スコア。特定の世帯を想定しない中立的な便利度評価として扱います。methodology v1.0 editorial。
single単身
単身世帯 (20-64) にとって重要度が高い傾向として、駅 (rail_station) / 飲食店 (dining_casual / dining_quick) / 美容・パーソナルケア (personal_care) を強調した重み付け。methodology v1.0 editorial。
single_senior独居高齢
独居高齢世帯 (単独 65+) では医療アクセスが重要度が高い傾向として、病院 (hospital) / 一次診療 (clinic_primary) / 薬局 (pharmacy) / 介護施設 (nursing_home) を強調した重み付け。methodology v1.0 editorial。
dink共働き夫婦
夫婦のみ世帯 (25-64 共働き想定) では通勤と生活の両立が重要度が高い傾向として、駅 (rail_station) / 飲食店 (dining_casual) / 文化施設 (cultural) を強調した重み付け。methodology v1.0 editorial。
senior_couple高齢夫婦
高齢夫婦世帯 (夫婦のみ 65+) では日常医療と近隣での活動が重要度が高い傾向として、病院 (hospital) / 薬局 (pharmacy) / 公園 (parks) を強調した重み付け。methodology v1.0 editorial。
family_kids子育て (乳小期)
末子が 0-11 歳の子育て世帯では子ども向け施設が重要度が高い傾向として、小学校 (edu_primary) / 保育園・幼稚園 (edu_early) / 公園 (parks) / 専門診療 (clinic_specialty) を強調した重み付け。methodology v1.0 editorial。
family_teens子育て (中高期)
末子が 12-18 歳の中高生を含む世帯では通学と学習環境が重要度が高い傾向として、中学・高校 (edu_secondary) / 図書館等 (cultural) / 駅 (rail_station) を強調した重み付け。methodology v1.0 editorial。
single_parentひとり親世帯
ひとり親と未婚の子からなる世帯では保育・教育と公的支援が重要度が高い傾向として、保育園 (edu_early) / 小学校 (edu_primary) / 一次診療 (clinic_primary) / 役所等 (gov_admin) を強調した重み付け。methodology v1.0 editorial。
multigen三世代同居
三世代同居世帯では複数世代のニーズをカバーすることが重要度が高い傾向として、病院 (hospital) / 小学校 (edu_primary) / 公園 (parks) / 日用品 (grocery_daily) を幅広く強調した重み付け。methodology v1.0 editorial。
参照した公的統計
重み付けの方向性決定にあたって参照した公的統計。本ページは要約のみを記載し、転載はしません。
利用上の留意
- 本 methodology は v1.0 editorial のスナップショットです。実利用データに基づく empirical calibration を v1.1 以降で予定しており、数値は将来更新される場合があります。
- cohort 別の重み付けは 「その世帯類型にとって相対的に重要度が高い傾向」 を表現するものであり、特定属性の排除や差別的な判定を目的としません。API の response に含まれる
weighting_rationale文もこの前提で読み取る運用を推奨します (API 利用規約 第 4 条「差別助長的スクリーニング禁止」と整合)。 - 世帯類型の 8 分類は総務省 国勢調査 家族類型 × 年齢区分に準拠しています。性別 / identity / relationship form については本 cohort 体系で bucket 化せず、ユーザー側の cohort 選択 / 合成 (multi-cohort query) に委ねる方針です。
- OSM タグの coverage (特に
healthcare:specialityやisced:level) は地域差があるため、fallback として name literal マッチング等の補完を組み込んでいます (詳細はdata-pipeline/docs/taxonomy-v2.md § 2.3 / § 2.6)。