Reverse Engineering Walk Score Algorithm

, Author

Heatmap of Predicted Walk Score throughout Seattle, WA

Seattle で暮らし、最近別の地域に引っ越しをした者です。 Walk Scoreの独自のアルゴリズムによると、私はシアトルで9番目に歩きやすい地域から30番目に引っ越しました。 このような状況下、私は、このような「痒いところに手が届く」ような生活を送っています。 かなり歩きにくい地域に移動したことはわかりますが、その大きさを定量化する方法や、歩きやすさのスコアに何が含まれるかは不明です。

私は以前、電動スクーターの場所のクラスタリングを予測するためのデータ ソースとして Walk Score API を使用しました。 Walk Score は、住所を取得し、独自のアルゴリズムとさまざまなデータ ストリームを使用して、0 ~ 100 のスケールで歩きやすさの指標を計算する Web サイトです。

ある場所に行くために歩くことを楽しむ者として(そしてハイキングも!)、歩きやすさのスコアを生成するこれらの独自のアルゴリズムが何を促進するかについて興味を持つようになりました。

  1. Can the proprietary Walk Score algorithms be reverse engineered?

2. What features are important in building a walkability score?

To answer these questions, I built a custom data set by collecting a diverse set of granular Seattle city data and Walk Score API data to train machine learning models to predict a walkability score.

  • 1)… 私は、テストセットのデータで0.95のR²を達成するモデルを訓練することができました。 R2 は、特徴セットの分散が歩行スコアの分散を説明する程度を説明します。

    要するに、私は歩行スコアの手法をリバース エンジニアし、歩行スコアに力を与える独自のアルゴリズムを再現することができたのです。 その場所の歩きやすさにとって最も重要な特徴は、1000メートル以内のレストランの数、その国勢調査区内の人口密度、1000メートル以内のスーパーマーケットの数、そして最も近い商業区画までのメートル単位での近さです。

    The Full Data Pipeline for Reverse Engineering the Walk Score Methodology

    Data

    Greater Seattle area でランダムに緯度と経度の座標を作成することから開始しました。 7800 のユニークな地理的位置のリストを入手したら、Walk Score API を活用して、各ユニークな地理的位置の歩きやすさのスコアを返しました。 8068>

    Data Sources:

    • OSMnx: OpenStreetMapのAPIから空間ジオメトリをダウンロードし、ストリートネットワークをモデル化、投影、視覚化、分析することができるPythonパッケージ。 任意の場所の歩きやすさのスコアを返します。
    • LocationIQ API: 任意の場所の歩きやすさのスコアを返します。 Nearby Points of Interest (PoI) API は、指定された座標周辺の指定された PoI や場所を返します。
    • Seattle City Zoning:
    • Seattle City Zoning: 用途のカテゴリを指定します(一戸建て住宅、多世帯住宅、商業、工業など)
    • Seattle Census Data: シアトル国勢調査データ。 Census Tracts and Geographic Identifiers
    • U.S. Census Geocoder API に含まれる国勢調査地区の人口および面積(平方マイル)を提供します。 指定された地理的位置に対して、国勢調査トラクトと一意の地理的識別子を返すAPIです。 これは、Zoning と Census のデータを正しくマージするために重要でした。

    Feature Engineering

    LocationIQ API の毎日のリクエストの制限により、データ収集フェーズを 2 週間延長しました。 これにより、シアトル全域の歩きやすさを予測するために、機械学習モデルを訓練するための 27 の特徴を設計しました。

    Full Feature Set

    特徴は、4 つのカテゴリに分類されます:

    1. Amenity-based: 指定した半径内のバス停、公園、レストラン、学校の数、アメニティの合計(ほとんどのアメニティに半径 1000 メートルが使用された)

    2) Census Derived: ゾーニングカテゴリーと人口密度

    Geolocation Observations Grouped by Zoning Category

    3) 距離ベース(距離)。 最も近い高速道路、最も近い一次道路、最も近い二次道路、最も近い住宅地、最も近い工業地帯への近さ

    4) 歩行者ネットワーク構造: 交差点数、平均循環数、通りの長さの平均、ノードあたりの平均道路

    OSMnx library の上に描かれた単一のジオロケーションは Walk Network Structure feature generation

    Model Development

    3つの機械学習モデルのトレーニングを行いました。 ランダムフォレスト回帰、gradient boosting回帰、extreme gradient boosting回帰である。 8068>

    Extreme gradient boosting model predictions (R² of 0.0).2756>

    The extreme gradient boosting regression did a great job of predicting the Walk Score, achieving a R² of 0.95 on the one-third test set (~2300 samples).The extreme gradient boosting regression was a great job of predicting the Walk Score.) このモデルは、テストセットの精度 (RMSE) が最も優れていました。

    What’s in the Black Box?

    Walk Score 手法のリバース エンジニアリングの目的は、そのアルゴリズムに入る主要な機能を理解することでした。 私たちは、スコアだけでなく、何がその場所を本当に歩きやすくしているのかを知りたいのです。 極端な勾配ブースティング・モデルの特徴の重要性を検討した結果、1000m以内にあるレストランの数が最も重要な特徴として支配的でした。 その他の重要な特徴は、国勢調査区の人口密度、アメニティの数、1000m以内のスーパーマーケットの数、最も近い商業地区までの距離(m)であった。

    1000m以内のレストラン、スーパーマーケット、アメニティの総数、人口密度、商業区画に近いことが、場所のウォークスコアを予測する上で最も重要な特徴である。

    Conclusion

    Walk Score はすでに、徒歩や自転車、交通機関の好みに基づいて、どこに住み、どこに不動産を開発するかという意思決定ツールとして有用である。 現在では、Walk Score の方法論と、そのアルゴリズムを構築するためにどのような機能があるのかを理解するのに役立っています。 8068>

    現在のモデルは、都市の特性が似ているシアトル市内でトレーニングされています。 地形的な測定や最も近いアメニティの距離計算など、Walk Scoreの予測力を高めるために収集できる追加の機能があります。 モデルの予測は、Walk Score API と特徴を生成するための基礎となるデータ ソース (US Census, OSMnx, City Zoning, LocationIQ) が広く利用できるため、他の地域に簡単に拡大することが可能です。

  • コメントを残す

    メールアドレスが公開されることはありません。