На запитання вище все сказано. В основному моє запитання стосується загальної функції підгонки (може бути довільно складною), яка буде нелінійною в параметрах, які я намагаюся оцінити, як вибирати початкові значення для ініціалізації пристосування? Я намагаюся робити нелінійні найменші квадрати. Чи є якась стратегія чи метод? Це було вивчено? Будь-які посилання? Щось, крім спеціальних здогадок? Зокрема, зараз одна з придатних форм, з якою я працюю, - це гауссова плюс лінійна форма з п'ятьма параметрами, які я намагаюся оцінити, як
де (дані абсцис) та (дані ординати), що означає, що в просторі журналу мої дані виглядають як пряма лінія плюс удар, який я наближаю до гаусса. Я не маю ніякої теорії, нічого, що б мене наводило на те, як ініціалізувати нелінійне прилягання, за винятком, можливо, графіки та очного яблука, як нахил лінії та що таке центр / ширина шишки. Але я маю понад сто таких підходів для цього, а не для графіки та здогадок, я б вважав за краще деякий підхід, який можна автоматизувати.
Я не можу знайти посилання в бібліотеці чи в Інтернеті. Єдине, про що я можу придумати - це лише випадковим чином вибрати початкові значення. MATLAB пропонує вибрати значення випадковим чином з [0,1], рівномірно розподілених. Отже, з кожним набором даних я запускаю випадкову ініціалізовану підгонку тисячу разів, а потім вибираю ту, що має найвищий ? Будь-які інші (кращі) ідеї?
Додаток №1
По-перше, ось декілька візуальних зображень наборів даних, щоб просто показати вам, хлопці, про які дані я говорю. Я розміщую обидва дані в їх первісному вигляді без будь-якого перетворення, а потім його візуальне представлення в просторі журналу, оскільки він з'ясовує деякі особливості даних, спотворюючи інші. Я розміщую зразок і хороших, і поганих даних.
Кожна з шести панелей на кожному малюнку показує чотири набори даних, побудовані разом, червоний, зелений, синій та блакитний, і кожен набір даних має рівно 20 точок даних. Я намагаюся встановити кожен з них прямою лінією плюс гауссом через пошкодження, помічені в даних.
Перша цифра - це деякі хороші дані. Друга фігура - це лог-журнальний графік з тих же хороших даних з фігури перший. Третя цифра - це деякі погані дані. Четверта фігура - це лог-журнальний графік фігури три. Даних набагато більше, це лише дві підмножини. Більшість даних (приблизно 3/4) є хорошими, схожими на хороші дані, які я показав тут.
Тепер кілька коментарів, будь ласка, майте на увазі мене, оскільки це може затягнутися, але я думаю, що всі ці деталі необхідні. Я постараюся бути максимально стислим.
Я спочатку очікував простого силового закону (маючи на увазі пряму лінію в просторі журналу). Коли я побудував усе в просторі журналу, я побачив несподіваний удар на рівні приблизно 4,8 мГц. Шишка була ретельно досліджена і виявлена в інших роботах, так що це не те, що ми зіпсували. Це фізично є, і інші опубліковані праці також згадують про це. Тож я просто додав термін гаусса до своєї лінійної форми. Зауважте, що цю підгонку потрібно було зробити в просторі журналу (звідси два мої питання, включаючи це).
Тепер, прочитавши відповідь Ступпі Джо Піта на інше моє питання (зовсім не пов’язане з цими даними) та прочитавши це та це та посилання на нього (речі Клаузета), я розумію, що мені не слід вписуватися в журнал журналу журналів простір. Тож тепер я хочу зробити все у попередньо перетвореному просторі.
Питання 1: Дивлячись на хороші дані, я все ще думаю, що лінійний плюс гаусс у попередньо трансформованому просторі все ще є гарною формою. Мені б хотілося почути від інших, хто має більше досвіду даних, що вони думають. Чи розумна гауссова + лінійна? Чи варто робити лише гаусса? Або зовсім інша форма?
Запитання 2: Якою б не була відповідь на питання 1, мені все одно знадобиться (швидше за все) нелінійні найменші квадрати, тому все ще потрібна допомога з ініціалізацією.
Дані, де ми бачимо два набори, ми дуже віддаємо перевагу захопленню першої шишки приблизно на 4-5 мГц. Тому я не хочу додавати більше гауссових термінів, і наш гауссовий термін повинен бути зосереджений на першому ударі, який майже завжди є більшим. Ми хочемо "більшої точності" між 0,8 і 5 МГц. Ми не надто піклуємося про більш високі частоти, але також не хочемо їх повністю ігнорувати. То, може, якесь зважування? Або B можна завжди ініціалізувати близько 4,8 МГц?
Дані абсцис є частотою в одиницях мілігерца, позначають його . Дані осі ординат коефіцієнт ми обчислюємо, позначимо його через L . Тож не перетворення журналу, а форма є
- частота, завжди позитивна.
- - позитивний коефіцієнт. Тож ми працюємо в першому квадранті.
- ) було б
Я знаю, що екстраполяція важче / небезпечніше, ніж інтерполяція, але використання прямої лінії плюс гаусса (сподіваючись, що вона швидко розпадається) здається мені розумною. Наче природні кубічні сплайси з природними граничними умовами, нахил в лівій кінцевій точці, просто продовжте лінію і побачите, де вона перетинає
Запитання 3: Як ви думаєте, хлопці, екстраполяція у цьому випадку? Якісь плюси / мінуси? Будь-які інші ідеї для екстраполяції? Знову ми дбаємо лише про нижчі частоти, тому екстраполюючи між 0 і 1 МГц ... іноді дуже маленькі частоти, близькі до нуля. Я знаю, що ця публікація вже запакована. Я поставив це питання тут, тому що відповіді можуть бути пов’язані, але якщо ви хочете, хлопці, я можу відокремити це питання і задати інший пізніше.
Нарешті, ось два набір вибіркових даних на запит.
0.813010000000000 0.091178000000000 0.012728000000000
1.626000000000000 0.103120000000000 0.019204000000000
2.439000000000000 0.114060000000000 0.063494000000000
3.252000000000000 0.123130000000000 0.071107000000000
4.065000000000000 0.128540000000000 0.073293000000000
4.878000000000000 0.137040000000000 0.074329000000000
5.691100000000000 0.124660000000000 0.071992000000000
6.504099999999999 0.104480000000000 0.071463000000000
7.317100000000000 0.088040000000000 0.070336000000000
8.130099999999999 0.080532000000000 0.036453000000000
8.943100000000001 0.070902000000000 0.024649000000000
9.756100000000000 0.061444000000000 0.024397000000000
10.569000000000001 0.056583000000000 0.025222000000000
11.382000000000000 0.052836000000000 0.024576000000000
12.194999999999999 0.048727000000000 0.026598000000000
13.008000000000001 0.045870000000000 0.029321000000000
13.821000000000000 0.041454000000000 0.067300000000000
14.633999999999999 0.039596000000000 0.081800000000000
15.447000000000001 0.038365000000000 0.076443000000000
16.260000000000002 0.036425000000000 0.075912000000000
Перший стовпець - це частоти в мГц, однакові у кожному наборі даних. Другий стовпець - це хороший набір даних (хороша цифра даних один і два, панель 5, червоний маркер), а третій стовпець - це неправильний набір даних (неправильна фігура даних три і чотири, панель 5, червоний маркер).
Сподіваюся, цього достатньо, щоб стимулювати ще якусь освічену дискусію. Дякую всім