kraina-ai/srai

Spatial Representations for Artificial Intelligence - a Python library toolkit for geospatial machine learning focused on creating embeddings for downstream tasks

解決的問題

SRAI 是一個專為標準化建立機器學習用空間表示而設計的 Python 庫。它簡化了取得地理空間向量資料、將地理區域劃分為可管理的微區域,以及將這些區域轉換為可用於下游 AI 任務的向量嵌入的複雜工作流程。

如何運作

該庫實現了一個包含四個主要階段的流程:

  1. 資料取得:提供 OpenStreetMap (OSM) 和 Overture Maps 的載入器,以及從通用公車時刻表規格 (GTFS) 公共運輸資料中提取特徵的工具。
  2. 區域化:使用各種演算法將目標區域劃分為較小的單位,例如 Uber 的 H3(六邊形)、Google 的 S2(四象限格網)、Voronoi 圖或行政邊界。
  3. 合併:將取得的空間特徵對應到區域化過程中建立的特定微區域。
  4. 嵌入:使用多種方法將合併後的資料轉換為向量空間,包括 Hex2VecGTFS2VecHighway2Vec 和基於計數的嵌入。其中一些方法使用 PyTorch 模型,可進行訓練或載入預訓練模型。

適用對象

專注於地理空間機器學習、城市規劃,或任何需要將原始地理向量資料轉換為機器可學習向量表示的應用的資料科學家與 AI 研究人員。

主要特色

  • 多來源資料載入:整合支援 OSM、Overture Maps 和 GTFS。
  • 彈性區域化:支援多種格網系統(H3、S2)與自訂邊界。
  • 多樣化的嵌入演算法:實作多種研究驗證的方法,如 Hex2Vec 和 Highway2Vec,以捕捉空間上下文。
  • PyTorch 整合:可使用基於 torch 的嵌入器進行資料擬合與轉換。
  • 內建資料集:包含準備好的資料集與基準測試,以供測試下游任務使用。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案