Математический форум Math Help Planet
Обсуждение и решение задач по математике, физике, химии, экономике Теоретический раздел |
Часовой пояс: UTC + 3 часа [ Летнее время ] |
новый онлайн-сервис число, сумма и дата прописью |
|
Часовой пояс: UTC + 3 часа [ Летнее время ] |
Страница 1 из 2 |
[ Сообщений: 20 ] | На страницу 1, 2 След. |
|
Автор | Сообщение | |
---|---|---|
Fireman |
|
|
Сразу извиняюсь за то, что тему выложил в данный раздел - не знаю в каком именно разделе её лучше разместить, поэтому, модераторы, надежда на вас. Столкнулся со следующей проблемой: У меня есть набор точек на плоскости [math]\left\{ p_{i} \right\}[/math] и есть некоторая непрерывная функция [math]f(x, \left\{ a_{j} \right\} )[/math] (в моём случае это была функция логнормального распределения [math]y=a_{1} \times \frac{e^{-\frac{(x-a_{2})^{2} }{ 2 a_{3}^{2} } }}{ x \times a_{3} \times \sqrt{2 \pi }}[/math]). Необходимо методом наименьших квадратов вычислить эти коэффициенты. Есть ли какой-то удобоваримый универсальный способ вычисления коэффициентов? Пусть с вычислением производных и т.д., но чтобы можно было выразить как [math]a_{i}=g_{i}(f, \left\{ a_{j} \right\})[/math] Учитывая, что задача прикладная, сделал методом подбора: 1) вычисляется отклонение от кривой для всех совокупностях параметров [math]a(i)=a_{min}(i)...a_{max}(i)[/math] 2) когда значения найдено, изменяются [math]a_{min)(i)[/math] и [math]a_{max}(i)[/math] приближаясь к вычисленному значению [math]a(i)[/math] методом бинарного поиска 3) после нескольких итераций считается, что коэффициенты вычислены для ускорения могут анализироваться не все точки на плоскости, а только более менее отличные в результате метод даёт хорошие результаты для 3 параметров, 10 итераций (более-менее точный результат уже на 1-2 итерации возникает, если кол-во разбиений параметров большое), разбиение каждого из параметров на 10-100 частей но если надо проанализировать более сложные кривые (например, сумму логнормальных распределений, т.е. уже 6 параметров), то кол-во вычислений становится неприемлимо большим и приходится извращаться (вычислить 3 коэффициента для первого распределения, 3 коэффициента для второго распределения, потом итерационное менять то 3 первых, то 3 вторых коэффициента) -- Поэтому такой вопрос - можно ли снизить использование таких численных методов и попробовать хотя бы частично решить задачу аналитически? |
||
Вернуться к началу | ||
Avgust |
|
|
Fireman, я такие задачи щелкаю методом Монте-Карло. Ничего более лучшего не видел.
Покажите Ваши точки и попробую оптимизировать Ваши параметры. |
||
Вернуться к началу | ||
Fireman |
|
|
Avgust
Цитата: Покажите Ваши точки и попробую оптимизировать Ваши параметры. Для суммы двух логнормальных распределений получил следующие коэффициенты: a1 = 1,0000 mu1 = 3,8306 sigma1 = 0,6941 a2 = 0,0950 mu2 = 4,5450 sigma2 = 0,0750 [math]p=a_{1} \frac{e^{\frac{-(ln(x) - \mu _{1})^{2}}{2 \sigma_{1}^{2}} } }{\sqrt{2 \pi } \sigma_{1} x} + a_{2} \frac{e^{\frac{-(ln(x) - \mu _{2})^{2}}{2 \sigma_{2}^{2} } } } {\sqrt{2 \pi } \sigma_{2} x}[/math] Точность: e-4 Вот какие данные (не могу присоединить файл, запрещено администратором): 0 0.00000563657342169289 1 0.00001814814604766820 2 0.00003684027351385720 3 0.00006918980680673530 4 0.00012275461542191900 5 0.00023127312138042500 6 0.00044159717111143800 7 0.00080253462933626900 8 0.00137863409969512000 9 0.00221277752166926000 10 0.00327017323261883000 11 0.00457942076627074000 12 0.00603720994939699000 13 0.00755273060732284000 14 0.00905154987829283000 15 0.01046247564091710000 16 0.01170152642343440000 17 0.01275693139387360000 18 0.01363207018147330000 19 0.01433286871147350000 20 0.01483623670876890000 21 0.01522385240464670000 22 0.01551046116777070000 23 0.01570489401563720000 24 0.01583872501866600000 25 0.01589996343750420000 26 0.01592627130482970000 27 0.01589686158601130000 28 0.01584211622197720000 29 0.01574909539941020000 30 0.01563532226443020000 31 0.01553130607276550000 32 0.01533972044679160000 33 0.01519141027877190000 34 0.01502240566870300000 35 0.01484307698575490000 36 0.01457341266511420000 37 0.01437901453946590000 38 0.01416482474944150000 39 0.01395496366261990000 40 0.01371476693116120000 41 0.01345169983197910000 42 0.01317491745660670000 43 0.01292354017088650000 44 0.01265029946177090000 45 0.01239524162092110000 46 0.01210575091368620000 47 0.01183031113075100000 48 0.01153629496107690000 49 0.01124529962438660000 50 0.01098098252534920000 51 0.01071322792670970000 52 0.01043154971857060000 53 0.01017363308175540000 54 0.00990285765013221000 55 0.00962718638574231000 56 0.00939132993155903000 57 0.00912510311052047000 58 0.00888234850898744000 59 0.00866470964528823000 60 0.00842783467270432000 61 0.00821107543853293000 62 0.00799693194479954000 63 0.00779369122758203000 64 0.00758270745570515000 65 0.00740043895828252000 66 0.00722396907129987000 67 0.00705492973901276000 68 0.00687036957518870000 69 0.00672459412909790000 70 0.00656960572111044000 71 0.00643994138426604000 72 0.00629557797504884000 73 0.00621249928096073000 74 0.00611215207035277000 75 0.00603089050568396000 76 0.00594513820079418000 77 0.00591599468564876000 78 0.00589467524367184000 79 0.00590989514931769000 80 0.00597227940135655000 81 0.00609531179452409000 82 0.00628326316165935000 83 0.00654959414935252000 84 0.00683747606047730000 85 0.00712455936058340000 86 0.00748055468975061000 87 0.00783212872313325000 88 0.00816378377733984000 89 0.00847086707513112000 90 0.00878781148289218000 91 0.00902160775212873000 92 0.00918536930724892000 93 0.00923401513495195000 94 0.00916914245727517000 95 0.00899899201400555000 96 0.00873571658151428000 97 0.00840996430440228000 98 0.00801940879404990000 99 0.00759464032469440000 100 0.00712177000905439000 101 0.00662323997416204000 102 0.00616263817562058000 103 0.00566883036240389000 104 0.00519031189926945000 105 0.00473935130331582000 106 0.00430130737253386000 107 0.00388789306853089000 108 0.00349033524417416000 109 0.00313480287791633000 110 0.00281694411840924000 111 0.00252980294793947000 112 0.00225756918315171000 113 0.00201347198918148000 114 0.00179701368090119000 115 0.00159299750081047000 116 0.00142927066790848000 117 0.00126931698271794000 118 0.00113607625739858000 119 0.00101769664147029000 120 0.00090606470994621400 121 0.00081240731337878300 122 0.00072581010117938600 123 0.00065343742437066800 124 0.00058517354338269100 125 0.00052886567952943500 126 0.00047679392629699900 127 0.00043103004270485600 128 0.00038834486246008500 129 0.00035547449589415500 130 0.00032202542569150100 131 0.00029393515116491300 132 0.00026729163573013400 133 0.00024592589746228000 134 0.00022733793665070100 135 0.00020857636474810500 136 0.00019127312601005400 137 0.00017914349778431700 138 0.00016144674057329300 139 0.00014702544594612800 140 0.00013953702088691800 141 0.00012728007786110200 142 0.00011877313440125700 143 0.00011089119086907500 144 0.00010276619180946800 145 0.00009586804445971700 146 0.00008781248983651730 147 0.00008262730525146930 148 0.00007549767644702810 149 0.00007015045484369730 150 0.00006766202920578360 151 0.00006214119651143550 152 0.00006031249301938730 153 0.00005576388243473580 154 0.00005175925326860490 155 0.00004872684621217050 156 0.00004767360559333260 157 0.00004356480977259140 158 0.00004207175438984320 159 0.00003802082893277440 160 0.00003679397722291930 161 0.00003534721813110900 162 0.00003266203325670910 163 0.00003072916311005050 164 0.00002805555230838510 165 0.00002857638558143680 166 0.00002605323772531970 167 0.00002491897859734040 168 0.00002415508979686460 169 0.00002315971954169910 170 0.00002194444190457840 171 0.00002094907164941300 172 0.00001945601626666470 173 0.00001855323859337510 174 0.00001744212761086480 175 0.00001675925731953040 176 0.00001659722030124760 177 0.00001521990564584420 178 0.00001489583160927870 179 0.00001449073906357180 180 0.00001366897989942360 181 0.00001300925775355810 182 0.00001178240604370300 183 0.00001218749858940980 184 0.00001158564680721680 185 0.00001115740611604090 186 0.00001053240618837890 187 0.00000974536924243411 188 0.00000990740626071686 189 0.00001010416549720300 190 0.00000905092487836517 191 0.00000962962851508929 192 0.00000879629527820656 193 0.00000841435087796864 194 0.00000792823982312039 195 0.00000825231385968589 196 0.00000769675836843074 197 0.00000696759178615835 198 0.00000719907324084800 199 0.00000751157320467902 200 0.00000649305480404458 201 0.00000606481411286873 202 0.00000629629556755838 203 0.00000592592524005494 204 0.00000553240676708255 205 0.00000575231414903771 206 0.00000579861043997564 207 0.00000519675865778256 208 0.00000454861058465155 209 0.00000471064760293430 210 0.00000482638833027912 211 0.00000420138840261708 212 0.00000421296247535156 213 0.00000431712912996190 214 0.00000429398098449294 215 0.00000438657356636880 216 0.00000403935138433433 217 0.00000371527734776882 218 0.00000369212920229986 219 0.00000359953662042400 220 0.00000361111069315848 221 0.00000324074036565505 222 0.00000318287000198263 223 0.00000333333294753090 224 0.00000341435145667228 225 0.00000332175887479642 226 0.00000289351818362058 227 0.00000311342556557574 228 0.00000284722189268265 229 0.00000283564781994816 230 0.00000282407374721368 231 0.00000248842563791369 232 0.00000266203672893093 233 0.00000252314785611714 234 0.00000223379603775508 235 0.00000232638861963094 236 0.00000221064789228612 237 0.00000269675894713438 238 0.00000238425898330335 239 0.00000234953676509991 240 0.00000210648123767578 241 0.00000222222196502060 242 0.00000221064789228612 243 0.00000186342571025165 244 0.00000178240720111027 245 0.00000206018494673785 246 0.00000159722203735856 247 0.00000172453683743786 248 0.00000185185163751717 249 0.00000165509240103097 250 0.00000188657385572061 251 0.00000188657385572061 252 0.00000155092574642063 253 0.00000142361094634132 254 0.00000152777760095166 255 0.00000143518501907580 256 0.00000173611091017234 257 0.00000155092574642063 258 0.00000151620352821718 259 0.00000160879611009304 260 0.00000128472207352753 261 0.00000133101836446546 262 0.00000128472207352753 263 0.00000129629614626202 264 0.00000127314800079305 265 0.00000112268505524478 266 0.00000097222210969652 267 0.00000112268505524478 268 0.00000118055541891719 269 0.00000119212949165167 270 0.00000113425912797926 271 0.00000105324061883789 272 0.00000107638876430685 273 0.00000106481469157237 274 0.00000086805545508617 275 0.00000097222210969652 276 0.00000104166654610340 277 0.00000091435174602410 278 0.00000109953690977582 279 0.00000092592581875859 280 0.00000089120360055514 281 0.00000081018509141376 282 0.00000090277767328962 283 0.00000092592581875859 284 0.00000093749989149307 285 0.00000084490730961721 286 0.00000079861101867928 287 0.00000077546287321032 288 0.00000084490730961721 289 0.00000060185178219308 290 0.00000068287029133446 291 0.00000078703694594480 292 0.00000068287029133446 293 0.00000061342585492756 294 0.00000075231472774135 295 0.00000075231472774135 296 0.00000067129621859997 297 0.00000046296290937929 298 0.00000061342585492756 299 0.00000059027770945860 300 0.00000064814807313101 |
||
Вернуться к началу | ||
Talanov |
|
|
Fireman, сумма весовых коэффициентов должна давать единицу.
|
||
Вернуться к началу | ||
Fireman |
|
|
Talanov, не совсем понял
В приведённой таблице сумма значений равна 0,999965984 Я мог привести все 2000 и тогда было бы ровно 1,00000000, но думаю и такого значения достаточно |
||
Вернуться к началу | ||
Talanov |
|
|
Для смеси должно быть [math]a_1+a_2=1[/math]. А у вас?
|
||
Вернуться к началу | ||
Avgust |
|
|
Я нашел наилучшую формулу (безо всяких смесей) которая дала сумму квадратов отклонений 0.000481
Если такое годится, то завтра могу показать. |
||
Вернуться к началу | ||
Fireman |
|
|
Avgust
конечно показывай Но как без смешивания? 2 явных пика и одной функцией логнормального распределения не описываются |
||
Вернуться к началу | ||
Fireman |
|
|
|
||
Вернуться к началу | ||
Fireman |
|
|
картинки не прикрепились
У меня получилась вот такая ситуация (рассчёт по 5-10 минут) когда a1 + a2 <> 1 sigma1: 0,63508900 sigma2: 0,09061826 mu1: 3,74665072 mu2: 4,54467276 a1: 0,90000000 a2: 0,13520600 ols 0,00003478 delta 0,00589770 когда a1 + a2 = 1 sigma1: 0,61450755 sigma2: 0,09881236 mu1: 3,72040373 mu2: 4,54260960 a1: 0,85555383 a2: 0,14444617 ols 0,00004189 delta 0,00647251 |
||
Вернуться к началу | ||
На страницу 1, 2 След. | [ Сообщений: 20 ] |
Похожие темы | Автор | Ответы | Просмотры | Последнее сообщение |
---|---|---|---|---|
Метод наименьших квадратов; почему именно квадратов?
в форуме Численные методы |
17 |
3038 |
04 апр 2015, 15:19 |
|
Метод наименьших квадратов | 4 |
348 |
26 окт 2018, 19:06 |
|
Метод наименьших квадратов
в форуме Численные методы |
9 |
913 |
09 янв 2016, 16:06 |
|
Метод наименьших квадратов
в форуме Дифференциальное исчисление |
9 |
288 |
02 авг 2020, 12:30 |
|
Метод наименьших квадратов
в форуме Численные методы |
9 |
500 |
18 июн 2017, 15:27 |
|
Метод наименьших квадратов
в форуме Численные методы |
2 |
486 |
16 окт 2015, 19:07 |
|
Метод наименьших квадратов
в форуме Численные методы |
6 |
539 |
12 дек 2018, 14:58 |
|
Полином Чебышева, метод наименьших квадратов
в форуме Численные методы |
1 |
474 |
08 мар 2016, 17:48 |
|
Аппроксимация данных. Метод наименьших квадратов
в форуме Maple |
34 |
2716 |
19 мар 2016, 12:18 |
|
Найти по методу наименьших квадратов
в форуме Теория вероятностей |
1 |
696 |
28 апр 2015, 23:31 |
Часовой пояс: UTC + 3 часа [ Летнее время ] |
Кто сейчас на конференции |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7 |
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения |