กลยุทธ์สำหรับการปรับฟังก์ชั่นที่ไม่ใช่เชิงเส้นอย่างเหมาะสม


12

สำหรับการวิเคราะห์ข้อมูลจากการทดลองด้านชีวฟิสิกส์ตอนนี้ฉันกำลังพยายามทำเส้นโค้งที่เหมาะสมกับตัวแบบที่ไม่ใช่เชิงเส้น ฟังก์ชั่นโมเดลดูเหมือนจะเป็น:

y=ax+bx1/2

ที่นี่โดยเฉพาะอย่างยิ่งคุณค่าของเป็นที่น่าสนใจอย่างยิ่งb

พล็อตสำหรับฟังก์ชั่นนี้:

พล็อตฟังก์ชั่น

(โปรดทราบว่าฟังก์ชั่นแบบจำลองนั้นมีพื้นฐานมาจากคำอธิบายทางคณิตศาสตร์อย่างละเอียดของระบบและดูเหมือนว่าจะทำงานได้ดีมาก --- เป็นเพียงแค่อุปกรณ์อัตโนมัติเท่านั้นที่มีความยุ่งยาก)

แน่นอนฟังก์ชั่นแบบจำลองนั้นมีปัญหา: กลยุทธ์ที่เหมาะสมที่ฉันได้ลองมาจนถึงตอนนี้ล้มเหลวเนื่องจากเส้นกำกับที่คมชัดที่โดยเฉพาะกับข้อมูลที่มีเสียงดังx=0

ความเข้าใจของฉันของปัญหาที่นี่เป็นที่เรียบง่ายอย่างน้อยสี่เหลี่ยมกระชับ (ผมเคยเล่นกับทั้งเชิงเส้นและการถดถอยที่ไม่ใช่เชิงเส้นใน MATLAB; ส่วนใหญ่ Levenberg-Marquardt) เป็นมากไวต่อสิ้นสุดแนวตั้งเพราะข้อผิดพลาดเล็ก ๆ ใน x จะขยายอย่างมหาศาล .

ใครช่วยชี้ให้ฉันเห็นกลยุทธ์ที่เหมาะสมที่สามารถแก้ไขได้?

ฉันมีความรู้พื้นฐานเกี่ยวกับสถิติ แต่ก็ยังค่อนข้าง จำกัด ฉันกระตือรือร้นที่จะเรียนรู้ถ้าเพียง แต่ฉันรู้ว่าจะเริ่มมองหาที่ไหน :)

ขอบคุณมากสำหรับคำแนะนำของคุณ!

แก้ไขการขออภัยโทษจากที่ลืมพูดถึงข้อผิดพลาด เสียงรบกวนที่สำคัญเพียงอย่างเดียวคือในและมันเป็นสารเติมแต่งx

แก้ไข 2ข้อมูลเพิ่มเติมบางอย่างเกี่ยวกับพื้นหลังของคำถามนี้ กราฟด้านบนเป็นแบบจำลองพฤติกรรมการยืดของโพลีเมอร์ @whuber ชี้ให้เห็นในความคิดเห็นคุณจะต้องเพื่อให้ได้กราฟดังด้านบนb200a

สำหรับวิธีที่ผู้คนปรับโค้งนี้จนถึงจุดนี้: ดูเหมือนว่าคนทั่วไปจะตัดเส้นกำกับแนวดิ่งจนกว่าพวกเขาจะเจอแบบที่ดี ตัวเลือกการตัดออกยังคงเป็นกฎเกณฑ์ทำให้กระบวนการที่เหมาะสมไม่น่าเชื่อถือและไม่สามารถพิสูจน์ได้

แก้ไขกราฟ3 และ 4คงที่


3
ข้อผิดพลาดเกิดขึ้นในหรือในหรือทั้งสองอย่าง? คุณคาดหวังว่าจะมีสัญญาณรบกวนในรูปแบบใด (หลายค่า, สารเติมแต่ง ฯลฯ )? yxy
ความน่าจะเป็นของระบบ

2
@onnodb: ความกังวลของฉันคือสิ่งนี้อาจไม่ถามคำถามพื้นฐานว่าแบบจำลองของคุณแข็งแกร่งแค่ไหน? ไม่ว่ากลยุทธ์ที่เหมาะสมที่คุณใช้จะไม่มีความไวสูง ? คุณเคยมีความมั่นใจสูงในการประมาณค่าหรือไม่? bb
อยากรู้อยากเห็น _cat

1
น่าเสียดายที่มันยังใช้งานไม่ได้ ไม่มีการผสมผสานที่เป็นไปได้ของและที่จะทำให้กราฟที่คุณวาดออกมามีคุณภาพ (เห็นได้ชัดว่าเป็นลบ. ต้องน้อยกว่าความชันน้อยที่สุดในกราฟ, แต่เป็นบวก, ซึ่งทำให้มันอยู่ในช่วงแคบ ๆ แต่เมื่ออยู่ในช่วงเวลานั้น, มันก็ไม่ใหญ่พอที่จะเอาชนะเข็มลบขนาดใหญ่ที่ ต้นกำเนิดที่นำมาใช้โดยคำว่า ) คุณได้อะไรมา ข้อมูล? ฟังก์ชั่นอื่น ๆ ? x 1 / 2abbaabx1/2
whuber

1
ขอบคุณ แต่มันก็ยังผิด ขยายส่วนสัมผัสไปที่กราฟนี้ย้อนกลับจากจุดใด ๆโดยที่คุณจะตัดแกน y ที่)) เนื่องจากเข็มลงที่แสดงเป็นลบดังนั้นค่าตัดแกน y นี้จึงต้องเป็นลบเช่นกัน แต่ในรูปของคุณมันเป็นพรืดชัดเจนว่าส่วนใหญ่ดักดังกล่าวเป็นบวกการขยายสูงที่สุดเท่าที่15.5ดังนั้นจึงเป็นไปไม่ได้ในทางคณิตศาสตร์ที่สมการเช่นสามารถอธิบายเส้นโค้งของคุณ , ไม่ได้ประมาณ อย่างน้อยคุณจะต้องมีอะไรบางอย่างพอดีเช่น Cx > 0 ( 0 , 3 / ( 2 x 1 / 2 ) ) 0 15.5 Y = x + x 1 / 2 Y = x + x 1 / 2 + c(x,ax+bx1/2)x>0(0,3b/(2x1/2))0b15.5y=ax+bx1/2y=ax+bx1/2+c
whuber

1
ก่อนที่ฉันจะทำงานเกี่ยวกับเรื่องนี้ฉันต้องการที่จะทำให้แน่ใจว่าคำสั่งของคำถาม: นั่นเป็นเหตุผลที่มันเป็นสิ่งสำคัญที่จะได้รับฟังก์ชั่นที่ถูกต้อง ฉันยังไม่มีเวลาที่จะให้คำตอบอย่างเต็มรูปแบบในตอนนี้ แต่อยากจะกล่าวว่า "คนอื่น" อาจผิด - แต่ขึ้นอยู่กับรายละเอียดเพิ่มเติมอนิจจา หากความผิดพลาดของคุณเพิ่มขึ้นอย่างแท้จริงดูเหมือนว่าฉันจะต้องยังคง heteroscedastic อย่างยิ่งสำหรับมิฉะนั้นความแปรปรวนที่ค่าน้อย ๆ ของจะเล็กมากอย่างแท้จริง คุณบอกอะไรเราได้บ้างเกี่ยวกับข้อผิดพลาดเชิงปริมาณ xxx
whuber

คำตอบ:


10

วิธีการที่เราจะใช้ให้เหมาะกับสิ่งนี้ด้วยตนเอง (นั่นคือจากการวิเคราะห์ข้อมูลเชิงสำรวจ) สามารถทำงานได้ดีกับข้อมูลดังกล่าว

ฉันต้องการที่จะแก้ไขรูปแบบพารามิเตอร์เล็กน้อยเพื่อให้พารามิเตอร์เป็นบวก:

y=axb/x.

สำหรับกำหนดลองสมมุติว่ามีจริงที่ไม่ซ้ำกันซึ่งทำให้สมการนี้เป็นที่พอใจ เรียกสิ่งนี้ว่าหรือเพื่อความกระชับเมื่อเข้าใจyxf(y;a,b)f(y)(a,b)

เราสังเกตการสะสมของคู่ที่ได้รับคำสั่งโดยที่เบี่ยงเบนจากโดยตัวแปรสุ่มอิสระที่มีค่าศูนย์เป็นศูนย์ ในการสนทนานี้ฉันจะสมมติว่าพวกเขาทุกคนมีความแปรปรวนร่วมกัน แต่ส่วนขยายของผลลัพธ์เหล่านี้ (โดยใช้กำลังสองน้อยที่สุด) เป็นไปได้ชัดเจนและง่ายต่อการใช้งาน นี่เป็นตัวอย่างของการจำลองเช่นคอลเลกชันของค่ากับ ,และความแปรปรวนที่พบบ่อยของ 4(xi,yi)xif(yi;a,b)100a=0.0001b=0.1σ2=4

พล็อตข้อมูล

นี่เป็นตัวอย่างที่ยาก (จงใจ) ซึ่งสามารถชื่นชมได้โดยค่าไม่ใช่ทางกายภาพ (เชิงลบ) และการแพร่กระจายพิเศษของพวกเขา (ซึ่งโดยทั่วไปคือหน่วยแนวนอนแต่สามารถอยู่ในแนวแกนหรือบนแกน ) หากเราสามารถรับข้อมูลที่เหมาะสมกับข้อมูลเหล่านี้ซึ่งใกล้เคียงกับการประเมินการ ,และเราจะทำได้ดีมากx±2 56xabσ2

กระชับสำรวจเป็นซ้ำแล้วซ้ำอีก แต่ละขั้นตอนประกอบด้วยสองขั้นตอน: ประมาณ (ขึ้นอยู่กับข้อมูลและการประมาณการก่อนหน้าและของและซึ่งค่าที่คาดการณ์ไว้ก่อนหน้านี้สามารถรับได้สำหรับ ) และจากนั้นประมาณการขเนื่องจากข้อผิดพลาดอยู่ในxความพอดีจะประมาณจากแทนที่จะเป็นวิธีอื่น หากต้องการอันดับแรกในข้อผิดพลาดในเมื่อมีขนาดใหญ่พอaa^b^abx^ixibxi(yi)xx

xi1a(yi+b^x^i).

ดังนั้นเราจึงอาจมีการปรับปรุงโดยการปรับรูปแบบนี้มีน้อยสแควร์ (แจ้งให้ทราบว่ามีเพียงหนึ่งพารามิเตอร์ - ลาด, --and ไม่มีตัด) และการกลับของค่าสัมประสิทธิ์เป็นประมาณการปรับปรุงของa^aa

ต่อไปเมื่อมีขนาดเล็กพอคำอินเวอร์สกำลังสองจะมีค่าและเราพบ (อีกครั้งเพื่อเรียงลำดับแรกในข้อผิดพลาด) ที่x

xib212a^b^x^3/2yi2.

อีกครั้งโดยใช้กำลังสองน้อยที่สุด (มีเพียงความชัน ) เราได้รับการประมาณการที่ปรับปรุงแล้วผ่านทางสแควร์รูทของความชันที่ติดตั้งbb^

เพื่อดูว่าทำไมงานนี้ประมาณสำรวจน้ำมันดิบจะพอดีนี้สามารถหาได้โดยการวางแผนกับสำหรับขนาดเล็กx_iยังดีกว่าเพราะจะถูกวัดด้วยข้อผิดพลาดและ monotonically การเปลี่ยนแปลงกับเราควรให้ความสำคัญกับข้อมูลที่มีขนาดใหญ่กว่าค่าของ 2 นี่คือตัวอย่างจากชุดข้อมูลจำลองของเราแสดงครึ่งที่ใหญ่ที่สุดของสีแดงครึ่งที่เล็กที่สุดในสีน้ำเงินและเส้นผ่านจุดกำเนิดพอดีกับจุดสีแดงxi1/yi2xixiyixi1/yi2yi

รูป

จุดประมาณบรรทัดขึ้นถึงแม้จะมีบิตของความโค้งที่ค่าเล็ก ๆ ของและy ที่(สังเกตการเลือกแกน: เนื่องจากคือการวัดมันเป็นเรื่องธรรมดาที่จะพล็อตมันบนแกนตั้ง ) โดยการโฟกัสให้พอดีกับจุดสีแดงซึ่งความโค้งควรน้อยที่สุดเราควรได้ค่าประมาณเหมาะสม ค่าแสดงในชื่อเป็นรากที่สองของความชันของเส้นนี้: มันมีค่าน้อยกว่าค่าจริงเพียง %!xyxb0.0964

ณ จุดนี้ค่าที่คาดการณ์สามารถอัปเดตผ่านทาง

x^i=f(yi;a^,b^).

ทำซ้ำจนกระทั่งทั้งการประมาณค่าเสถียร (ซึ่งไม่รับประกัน) หรือวนรอบผ่านค่าเล็ก ๆ (ซึ่งยังไม่สามารถรับประกันได้)

ปรากฎว่าเป็นเรื่องยากที่จะประมาณว่าเรามีค่าที่ดีมากแต่ซึ่งกำหนดเส้นกำกับแนวดิ่งในพล็อตดั้งเดิม (ในคำถาม) และเป็นจุดสำคัญของคำถาม - สามารถปักหมุดได้ค่อนข้างแม่นยำหากมีข้อมูลบางอย่างภายในเส้นกำกับแนวดิ่ง ในตัวอย่างการรันของเราการวนซ้ำจะรวมกันเป็น (ซึ่งเกือบสองเท่าของค่าที่ถูกต้องคือ ) และ (ซึ่งใกล้เคียงกับค่าที่ถูกต้อง ) พล็อตนี้แสดงข้อมูลอีกครั้งซึ่งมีการทับ (a) จริงaxba^=0.0001960.0001b^=0.10730.1โค้งเป็นสีเทา (ประ) และ (b) โค้งโดยประมาณเป็นสีแดง (ทึบ):

พอดี

ความพอดีนี้ดีมากจนยากที่จะแยกแยะความแตกต่างของเส้นโค้งที่แท้จริงจากส่วนโค้งที่ประกอบเข้าด้วยกัน อนึ่งความแปรปรวนข้อผิดพลาดประมาณอยู่ใกล้กับมูลค่าที่แท้จริงของ43.734

มีปัญหาบางอย่างเกี่ยวกับวิธีการนี้:

  • การประมาณการมีอคติ อคติจะปรากฏเมื่อชุดข้อมูลมีขนาดเล็กและค่าค่อนข้างน้อยอยู่ใกล้กับแกน x พอดีค่อนข้างเป็นระบบต่ำเล็กน้อย

  • ขั้นตอนการประมาณค่าต้องใช้วิธีการที่จะบอก "ใหญ่" จาก "เล็ก" ค่าของy_iฉันสามารถเสนอวิธีการสำรวจเพื่อระบุคำจำกัดความที่ดีที่สุด แต่ในทางปฏิบัติคุณสามารถปล่อยให้สิ่งเหล่านี้เป็นค่าคงที่ "ปรับแต่ง" และปรับเปลี่ยนเพื่อตรวจสอบความอ่อนไหวของผลลัพธ์ ฉันได้ตั้งค่าโดยพลการโดยแบ่งข้อมูลออกเป็นสามกลุ่มเท่ากันตามค่าของและใช้กลุ่มนอกทั้งสองyiyi

  • กระบวนการนี้จะไม่ทำงานสำหรับการรวมและเป็นไปได้ทั้งหมดหรือช่วงของข้อมูลที่เป็นไปได้ทั้งหมด อย่างไรก็ตามมันควรจะทำงานได้ดีเมื่อใดก็ตามที่มีการโค้งมากพอในชุดข้อมูลเพื่อสะท้อนถึงเส้นกำกับทั้งสอง: แนวตั้งที่ปลายด้านหนึ่งและปลายเอียงอีกด้านหนึ่งab


รหัส

ต่อไปนี้จะถูกเขียนในMathematica

estimate[{a_, b_, xHat_}, {x_, y_}] := 
  Module[{n = Length[x], k0, k1, yLarge, xLarge, xHatLarge, ySmall, 
    xSmall, xHatSmall, a1, b1, xHat1, u, fr},
   fr[y_, {a_, b_}] := Root[-b^2 + y^2 #1 - 2 a y #1^2 + a^2 #1^3 &, 1];
   k0 = Floor[1 n/3]; k1 = Ceiling[2 n/3];(* The tuning constants *)
   yLarge = y[[k1 + 1 ;;]]; xLarge = x[[k1 + 1 ;;]]; xHatLarge = xHat[[k1 + 1 ;;]];
   ySmall = y[[;; k0]]; xSmall = x[[;; k0]]; xHatSmall = xHat[[;; k0]];
   a1 = 1/
     Last[LinearModelFit[{yLarge + b/Sqrt[xHatLarge], 
          xLarge}\[Transpose], u, u]["BestFitParameters"]];
   b1 = Sqrt[
     Last[LinearModelFit[{(1 - 2 a1 b  xHatSmall^(3/2)) / ySmall^2, 
          xSmall}\[Transpose], u, u]["BestFitParameters"]]];
   xHat1 = fr[#, {a1, b1}] & /@ y;
   {a1, b1, xHat1}
   ];

ใช้สิ่งนี้กับข้อมูล (ให้โดยเวกเตอร์ขนานxและyกลายเป็นเมทริกซ์สองคอลัมน์data = {x,y}) จนกระทั่งการบรรจบกันเริ่มต้นด้วยการประมาณ :a=b=0

{a, b, xHat} = NestWhile[estimate[##, data] &, {0, 0, data[[1]]}, 
                Norm[Most[#1] - Most[#2]] >= 0.001 &,  2, 100]

3
นี่คือคำตอบที่น่าอัศจรรย์ ฉันจำเป็นต้องมีมาก! ฉันเล่นกับสิ่งนี้มาแล้วและผลลัพธ์ก็ดูดีมาก ฉันจะต้องใช้เวลาอีกเล็กน้อยเพื่อให้เข้าใจเหตุผลอย่างถ่องแท้ถึงอย่างนั้น :) นอกจากนี้: ฉันสามารถติดต่อคุณผ่านเว็บไซต์ของคุณสำหรับคำถามเพิ่มเติม (ส่วนตัว) อีกหนึ่งคำถามเกี่ยวกับการตอบรับหรือไม่?
onnodb

3

ดูคำถามสำคัญที่ @probabilityislogic โพสต์

หากคุณมีข้อผิดพลาดใน y เท่านั้นและพวกมันเป็นสารเติมแต่งและคุณมีความแปรปรวนคงที่ (เช่นสมมุติว่าคุณพอดีกับที่คุณทำ) ถ้าคุณให้คุณอาจลอง แบบเชิงเส้นถ่วงน้ำหนักของบนซึ่งน้ำหนักนั้นจะเป็นสัดส่วนกับ ... (และใช่สิ่งนี้อาจเปลี่ยนปัญหาได้ อาจยังมีปัญหาอยู่ - แต่อย่างน้อยคุณควรพบว่าการทำให้เป็นปกติง่ายขึ้นด้วยการเปลี่ยนแปลงของปัญหานี้)y=yxyx=x3/21/x

โปรดทราบว่าด้วยการจัดการนี้ของคุณจะกลายเป็นจุดตัดของสมการใหม่b

หากความแปรปรวนของคุณไม่คงที่หรือข้อผิดพลาดของคุณไม่ได้เพิ่มหรือคุณมีข้อผิดพลาดในนี้จะเปลี่ยนสิ่งx

-

แก้ไขเพื่อพิจารณาข้อมูลเพิ่มเติม:

เราได้รูปแบบของรูปแบบ:y=b+ax

เรามีข้อผิดพลาดอยู่ใน x และสารเติมแต่ง เรายังไม่รู้ว่าความแปรปรวนนั้นคงที่ในสเกลนั้นหรือไม่

เขียนซ้ำเป็นx=y/ab/a=my+c

ให้โดยที่ข้อผิดพลาดนี้อาจเป็น heteroskedastic (ถ้าต้นฉบับมีการแพร่กระจายคงที่มันจะเป็น heteroskedastic แต่เป็นรูปแบบที่รู้จัก)xo=x+ηx

(โดยที่ในย่อมาจาก 'สังเกต')oxo

จากนั้น โดยที่ดูดี แต่ตอนนี้มีข้อผิดพลาดที่สัมพันธ์กันในตัวแปรและ ; ดังนั้นมันจึงเป็นโมเดลเชิงเส้นของข้อผิดพลาดในตัวแปรพร้อมด้วย heteroskedasticity และรูปแบบการพึ่งพาที่รู้จักในข้อผิดพลาด xo=c+my+ϵϵ=ζxy

ฉันไม่แน่ใจว่าจะปรับปรุงสิ่งต่าง ๆ ! ฉันเชื่อว่ามีวิธีการต่าง ๆ สำหรับสิ่งนั้น แต่มันไม่ใช่พื้นที่ของฉันเลย

ฉันพูดถึงในความคิดเห็นที่คุณอาจต้องการดูการถดถอยแบบผกผัน แต่รูปแบบเฉพาะของฟังก์ชั่นของคุณอาจขัดขวางการเดินทางไกลด้วย

คุณอาจติดอยู่กับการลองใช้วิธีที่มีประสิทธิภาพต่อข้อผิดพลาดในรูปแบบเชิงเส้น

-

ตอนนี้เป็นคำถามที่ใหญ่มาก: ถ้าความผิดพลาดอยู่ในxคุณเป็นคนแบบไหนแบบไม่เชิงเส้นล่ะ? คุณเพียงแค่ลดผลรวมของความคลาดเคลื่อนกำลังสองเป็นไม่ชัดในหรือไม่ นั่นอาจเป็นปัญหาของคุณy

ฉันคิดว่าคน ๆ หนึ่งอาจลองเขียนสิ่งดั้งเดิมเป็นแบบจำลองที่มีข้อผิดพลาดในและลองปรับให้เหมาะสม แต่ฉันไม่แน่ใจว่าฉันเห็นวิธีการตั้งค่านั้นถูกต้องหรือไม่x


ขอบคุณ! มันเป็นการแปลงรูปแบบที่น่าสนใจไม่เคยคิดมาก่อน --- แม้ว่าความผิดพลาดจะอยู่ในฉันจะเล่นกับมันต่อไป! x
onnodb

2
" แม้ว่าข้อผิดพลาดจะอยู่ในรูป x " - yikes นั่นเป็นสิ่งที่สำคัญ คุณอาจต้องการตรวจสอบการถดถอยแบบผกผัน
Glen_b -Reinstate Monica

3
... หรือคุณสามารถปรับโมเดลได้โดยตรง :-) x=13(2ya+21/3y2(27a4b22a3y3+3327a8b44a7b2y3)1/3+(27a4b22a3y3+3327a8b44a7b2y3)1/321/3a2)
whuber

@whuber อืม การหาลูกบาศก์, ฉลาด ถ้าเราเขียนต้นฉบับในรูปของโดยที่คือสิ่งนี้จะทำให้เรามี ,, (อีกครั้งด้วย ) ซึ่งอย่างน้อย notionally สามารถทำได้ด้วยกำลังสองน้อยไม่เชิงเส้น เพื่อให้ดูเหมือนว่าจะดูแลการเผยแพร่ข้อผิดพลาดอย่างถูกต้อง มันอาจใช้งานได้จริงถ้า OP ใช้รูปแบบเชิงเส้นที่ฉันกำลังเล่นด้วย (ใช้การประมาณค่าที่มีข้อผิดพลาดในรูปแบบ IV และ hetero) เพื่อรับค่าเริ่มต้นที่ดีสำหรับพารามิเตอร์จากนั้นลองใช้ LS ที่ไม่เป็นเชิงเส้นนี้ก่อตัวเป็นเงา x o x + ζ x = ( t h a txoxox+ζx=(thatmonster)+ϵϵ=ζ
Glen_b -Reinstate Monica

ผมเชื่อว่าเป็นเส้นตรงฟังก์ชั่นและ (แดกดัน) ใช้การไม่เชิงเส้น (ถ่วงน้ำหนัก) น้อยสแควร์จะทำงานโดยเฉพาะอย่างยิ่งหากข้อมูลที่ถูก จำกัด ให้เป็นค่าที่ค่อนข้างเล็กของที่โค้งจะกำหนดโดยขy bx(y)yb
whuber

0

หลังจากสัปดาห์บางส่วนของการทดลองเทคนิคที่แตกต่างกันดูเหมือนว่าการทำงานที่ดีที่สุดในกรณีนี้โดยเฉพาะอย่างยิ่ง: รวมสแควน้อยที่เหมาะสม มันเป็นตัวแปรของอุปกรณ์เสริมกำลังสองน้อยที่สุด (ไม่ใช่เชิงเส้น) แต่แทนที่การวัดข้อผิดพลาดแบบพอดีตามแกนใดแกนหนึ่ง (ซึ่งทำให้เกิดปัญหาในกรณีที่ไม่เป็นเชิงเส้นสูงเช่นนี้) จะพิจารณาทั้งสองแกน

มีบทความบทแนะนำและหนังสือมากมายที่มีให้เลือกในหัวข้อแม้ว่ากรณีที่ไม่เป็นเชิงเส้นจะเข้าใจยากกว่านี้มาก มีแม้แต่รหัส MATLAB ที่มีอยู่


ขอขอบคุณที่แบ่งปันสิ่งนี้ ฉันยอมรับว่ามันอาจให้ผลลัพธ์ที่ดูดีในกรณีของคุณ แต่ฉันมีข้อกังวลสองประการ ครั้งแรกที่คุณพูดถึง: วิธีการหนึ่งที่นำไปใช้อย่างน้อยรวมสี่เหลี่ยม / ข้อผิดพลาดในตัวแปรถดถอย / ถดถอย orthogonal / การถดถอย Deming เพื่อไม่เชิงเส้นพอดี? อย่างที่สองก็คือวิธีการนี้ดูเหมือนจะไม่เหมาะสมกับข้อมูลของคุณซึ่งนั้นวัดได้โดยไม่มีข้อผิดพลาด ในกรณีนี้คุณไม่ควรปล่อยให้เหลืออยู่ในตัวแปรและควรทำผลลัพธ์ที่ไม่น่าเชื่อถือและมีอคติ Yyy
whuber

@whuber ขอบคุณสำหรับการแสดงความกังวลของคุณ! ตอนนี้ฉันยังคงทำงานกับการจำลองเพื่อตรวจสอบความน่าเชื่อถือของ TLS ที่เหมาะสมสำหรับปัญหานี้ อย่างไรก็ตามสิ่งที่ฉันได้เห็นในตอนนี้ก็คือการพิจารณา TLS ทั้งสองตัวแปรช่วยอย่างมากในการเอาชนะความไม่เชิงเส้นตรงสูงของแบบจำลอง พอดีกับข้อมูลจำลองมีความน่าเชื่อถือและมาบรรจบกันเป็นอย่างดี จำเป็นต้องทำมากกว่านี้และฉันจะต้องซ้อนวิธีการของคุณกับสิ่งนี้แน่นอนเมื่อเรามีข้อมูลจริงมากขึ้น --- และดูรายละเอียดเกี่ยวกับข้อกังวลของคุณ
onnodb

ตกลง - อย่าลืมว่าฉันมีข้อกังวลที่เปรียบเทียบได้กับวิธีที่ฉันเสนอ!
whuber
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.