我正在嘗試使用藍牙適配器來實現室內位置跟蹤系統。我們的想法是使用Android設備走動,並根據房間周圍藍牙適配器的信號強度計算您在一個房間中的位置。 爲了做到這一點,我決定使用機器學習來儘可能逼近RSSI作爲距離,例如米。 我的大學裏有一位講師告訴我,LibSVM是我正在尋找的東西,所以我一直在做一些閱讀。 我看了一下這個tutorial,似乎無法擺脫訓練系統所需的數據。 ,我將擁有的數據是:保存在數據庫中,x和y如何在Java中使用LibSVM?
- 每個收發器的位置(與MAC地址一起)座標
- 接收信號強度指示器(RSSI)的加密狗最近我的Android設備
- 的MAC地址將被用於查詢某些加密狗
我瞭解的數據必須是在SVM格式的數據庫,但我有點不能確定它應該是什麼輸入數據和輸出數據的術語。下面的例子,從我剛纔提到的教程中可以看出,男人是班級,女人是班級。所以在我的情況下,我只有一個類「加密狗」?並且所有值加密狗應該反映我存儲在我的數據庫中的值嗎?
男人的聲音:小圖:大收入:好
女人的聲音:高身材:纖細 收入:票價
- 轉換的特徵值其數值表示形式。比方說,最好的薪水是5和最差的薪水1(或沒有薪水= 0),與其他激勵變量相同。
- 我們有2個班,男人和女人。類轉換爲數值:人= 1,女人= -1
- 保存它在LIBSVM數據格式:
[類/目標] 1:[firstFeatureValue] 2:[secondFeatureValue]等離。 : 一個婦女以極大的工資,低的聲音和小數字將被編碼 像: -1 1:5 2:1.5 3:1.8
一般而言SVM的輸入文件格式是
[標號] [index1]:[value1] [index2]:[value2] ... [label] [index1]:[valu e1] [index2]:[value2] ...
有人能給我一個我應該瞄準的例子嗎?
這對我來說都是全新的,所以任何有幫助的提示或技巧都可以幫助我。 在此先感謝
我認爲這是我的目標。因此,我並沒有獲得準確的位置(即(x,y)座標),而是將房間分成不同的區域,根據這些RSSI值獲取人們站在哪個區域...?我認爲這就是您的意思。這就是我在與今天在這方面工作的一些人交談後被建議做的事 – 2013-03-08 17:30:06
是的,這是一個正確的理解,如果你在房間裏創建區域,你將能夠將你的位置分類到其中一個區域。但請注意,藍牙無線電的數量和配置以及區域之間的大小和距離會影響分類的準確性 – stackoverflowuser2010 2013-03-08 18:45:01
這正是我剛纔在嘗試解釋它時向朋友說的東西。爲了得到準確的結果必須要有策略地放置,謝謝你的回答,很好的幫助,我還可以問,我現在只用3個加密狗創建了一個小的train.txt和test.txt文件房子周圍。我把樓上分成3個區(3個不同的房間)。我爲train.txt文件(總共30個)獲得了每個區域的10個RSSI讀數,以及每個區域的test.txt文件(共12個)的4個RSSI讀數。我是否將標籤/班級值留空在測試文件中? – 2013-03-08 19:07:21