我在我的智能設備上實現k-最近鄰算法,以便從識別數據識別人類活動。我將解釋我將如何實施它。你們能否告訴我我正在採取的措施有什麼改進,並回答我可能會在途中詢問的任何問題?k-最近鄰算法
這些步驟如下:
- 我下載一個labelled dataset它們一起由來自加速度計的三軸加速度的與描述性的標籤。我將選擇這些數據集中的一些數據,僅記錄那些我希望認識的活動(在我的例子中是走路,坐着,站立)。
- 然後,我將從每個加速度計數據窗口(即從包含128個加速度計數據的數據集中的每個單個記錄)中提取特徵(來自我的情況的幅度加速度的平均值,最小值,最大值,標準偏差)數據集,我會將這些特徵與JSON格式的窗口標籤(作爲一條記錄)一起存儲在設備上的文本文件中。因此,訓練數據集中的一個記錄/樣本將由以下組成:平均值,最小值,最大值,標準偏差和標籤在分類步驟中,從收集的數據中,我還將獲得一個加速度計數據窗口,上面提到的4個功能。因此,我需要將收集的數據的4個特徵與訓練數據中的每個樣本進行比較。我應該如何找到它們之間的相似性,因爲一個記錄將包含4個特徵?
作爲第(3)點問題的一個解決方案,我想通過計算它們之間的差異,然後從每個特徵中挑出大多數來考慮每個特徵的k-最近鄰。你覺得怎麼樣?你可以提出任何優化?謝謝:)
特徵空間是4維,你可能想要在4D中採用歐幾里得距離之前對每個軸進行歸一化。不是每個維度的距離。 – Memming 2013-03-22 14:21:26
你是什麼意思?@Memming – user1135357 2013-03-22 14:26:01
也許你可以'zscore'。 (或者,您可以使用Mahalanobis距離而不是標準化)。 – Memming 2013-03-22 16:36:05