วิทยาศาสตร์ข้อมูล

ถามตอบสำหรับผู้เชี่ยวชาญด้านข้อมูลวิทยาศาสตร์ผู้เชี่ยวชาญด้านการเรียนรู้ของเครื่องจักรและผู้ที่สนใจเรียนรู้เพิ่มเติมเกี่ยวกับสาขานี้

4
ฉันควรใช้แบบจำลองทางสถิติใดในการวิเคราะห์ความน่าจะเป็นที่เหตุการณ์เดียวมีผลต่อข้อมูลระยะยาว
ฉันกำลังพยายามค้นหาสูตรวิธีการหรือแบบจำลองเพื่อใช้ในการวิเคราะห์ความน่าจะเป็นที่เหตุการณ์เฉพาะนั้นมีผลต่อข้อมูลระยะยาว ฉันกำลังหาสิ่งที่จะค้นหาใน Google ได้ยาก นี่คือสถานการณ์ตัวอย่าง: ภาพที่คุณเป็นเจ้าของธุรกิจที่มีลูกค้าโดยเฉลี่ย 100 คนต่อวัน อยู่มาวันหนึ่งคุณตัดสินใจว่าคุณต้องการเพิ่มจำนวนลูกค้าที่เดินเข้ามาในร้านของคุณในแต่ละวันดังนั้นคุณจึงดึงการแสดงความสามารถออกไปข้างนอกร้านเพื่อรับความสนใจ ในสัปดาห์หน้าคุณจะเห็นลูกค้าโดยเฉลี่ย 125 คนต่อวัน ในอีกไม่กี่เดือนข้างหน้าคุณตัดสินใจอีกครั้งว่าคุณต้องการทำธุรกิจเพิ่มและอาจต้องใช้เวลานานกว่านี้ดังนั้นคุณลองทำสิ่งสุ่มอื่น ๆ เพื่อรับลูกค้าในร้านของคุณ แต่น่าเสียดายที่คุณไม่ใช่นักการตลาดที่ดีที่สุดและกลยุทธ์บางอย่างของคุณมีผลเพียงเล็กน้อยหรือไม่มีเลยและอื่น ๆ ก็มีผลกระทบด้านลบ ฉันสามารถใช้วิธีการใดในการพิจารณาความน่าจะเป็นที่เหตุการณ์ใดเหตุการณ์หนึ่งในเชิงบวกหรือเชิงลบส่งผลกระทบต่อจำนวนลูกค้าที่เดินเข้ามา? ฉันตระหนักดีว่าความสัมพันธ์ไม่จำเป็นต้องมีสาเหตุที่เท่าเทียมกัน แต่ฉันจะใช้วิธีการใดในการพิจารณาว่าการเพิ่มหรือลดของการเดินในชีวิตประจำวันของธุรกิจของคุณในการติดตามเหตุการณ์เฉพาะของลูกค้าเป็นอย่างไร ฉันไม่ได้สนใจที่จะวิเคราะห์ว่ามีความสัมพันธ์ระหว่างความพยายามของคุณในการเพิ่มจำนวนลูกค้าที่เดินเข้ามาหรือไม่ แต่จะมีเหตุการณ์ใดเหตุการณ์หนึ่งที่เป็นอิสระจากผู้อื่นหรือไม่ ฉันรู้ว่าตัวอย่างนี้มีการวางแผนและค่อนข้างง่ายดังนั้นฉันจะให้คำอธิบายสั้น ๆ เกี่ยวกับข้อมูลจริงที่ฉันใช้: ฉันพยายามกำหนดผลกระทบที่เอเจนซี่การตลาดหนึ่ง ๆ มีต่อเว็บไซต์ของลูกค้าเมื่อพวกเขาเผยแพร่เนื้อหาใหม่ดำเนินการแคมเปญโซเชียลมีเดีย ฯลฯ สำหรับเอเจนซี่หนึ่ง ๆ พวกเขาอาจมีลูกค้าตั้งแต่ 1 ถึง 500 ลูกค้าแต่ละรายมีเว็บไซต์ตั้งแต่ขนาด 5 หน้าไปจนถึงมากกว่า 1 ล้านหน้า ตลอดระยะเวลา 5 ปีที่ผ่านมาแต่ละหน่วยงานมีคำอธิบายประกอบทั้งหมดสำหรับลูกค้าแต่ละรายรวมถึงประเภทของงานที่ทำจำนวนหน้าเว็บในเว็บไซต์ที่ได้รับอิทธิพลจำนวนชั่วโมงที่ใช้ ฯลฯ การใช้ข้อมูลข้างต้นซึ่งฉันได้รวบรวมไว้ในคลังข้อมูล (วางลงในพวงของสตาร์ / เกล็ดหิมะ) ฉันต้องพิจารณาว่ามีความเป็นไปได้ที่งานชิ้นใดชิ้นหนึ่ง …

2
ทำไม ReLU ถูกใช้เป็นฟังก์ชั่นเปิดใช้งาน
ฟังก์ชั่นการเปิดใช้งานถูกใช้เพื่อแนะนำแบบไม่เชิงเส้นในเอาต์พุตเชิงเส้นของประเภทw * x + bในเครือข่ายประสาท ซึ่งฉันสามารถเข้าใจอย่างสังหรณ์ใจสำหรับฟังก์ชั่นการเปิดใช้งานเช่น sigmoid ฉันเข้าใจถึงข้อดีของ ReLU ที่หลีกเลี่ยงเซลล์ประสาทที่ตายแล้วในระหว่างการแพร่กระจาย อย่างไรก็ตามฉันไม่สามารถเข้าใจได้ว่าเหตุใด ReLU จึงถูกใช้เป็นฟังก์ชั่นการเปิดใช้งานหากเอาต์พุตของมันเป็นเส้นตรง จุดทั้งหมดของการเป็นฟังก์ชั่นการเปิดใช้งานไม่ได้รับการพ่ายแพ้หรือไม่หากไม่ได้นำมาซึ่งความไม่เชิงเส้น

1
“ การเล่นซ้ำประสบการณ์” คืออะไรและมีประโยชน์อย่างไร
ฉันได้อ่าน DeepMind Atari ของ Google กระดาษและฉันพยายามที่จะเข้าใจแนวคิดของ "ประสบการณ์การเล่นใหม่ที่" การเล่นซ้ำประสบการณ์เกิดขึ้นในเอกสารการเรียนรู้เสริมอื่น ๆ จำนวนมาก (โดยเฉพาะกระดาษ AlphaGo) ดังนั้นฉันจึงต้องการเข้าใจวิธีการทำงาน ด้านล่างเป็นข้อความที่ตัดตอนมาบางส่วน อันดับแรกเราใช้กลไกที่ได้รับแรงบันดาลใจทางชีววิทยาเรียกว่าการเล่นซ้ำที่สุ่มข้อมูลผ่านซึ่งจะเป็นการลบความสัมพันธ์ในลำดับการสังเกตและทำให้การเปลี่ยนแปลงการกระจายข้อมูลราบรื่นขึ้น กระดาษจะทำอย่างละเอียดดังนี้: ขณะที่วิธีการที่มั่นคงอื่น ๆ ที่มีอยู่สำหรับการฝึกอบรมเครือข่ายประสาทในการตั้งค่าการเรียนรู้การเสริมแรงเช่นประสาทติดตั้ง Q-ย้ำวิธีการเหล่านี้เกี่ยวข้องกับการฝึกอบรมการทำซ้ำของเครือข่ายเดอโนโวหลายร้อยซ้ำ ดังนั้นวิธีการเหล่านี้ซึ่งแตกต่างจากอัลกอริทึมของเราจึงไม่มีประสิทธิภาพเกินกว่าที่จะใช้กับเครือข่ายประสาทขนาดใหญ่ได้สำเร็จ เรา parameterize ค่าตัวอย่างฟังก์ชั่นQ(s,a;θi)Q(s,a;θi)Q(s, a; \theta_i) . โดยใช้เครือข่ายประสาทลึกสับสนแสดงในรูปที่ 1 ซึ่งในθiθi\theta_iมีพารามิเตอร์ (นั่นคือน้ำหนัก) ของ Q-เครือข่ายที่ซ้ำฉันiiiในการเล่นซ้ำประสบการณ์เราเก็บประสบการณ์ของตัวแทนไว้et=(st,at,rt,st+1)et=(st,at,rt,st+1)e_t = (s_t, a_t, r_t, s_{t+1})ในแต่ละครั้งขั้นตอนtttในชุดข้อมูลDt={e1,…,et}Dt={e1,…,et}D_t = \{e_1, \dots, e_t \} } ในระหว่างการเรียนรู้เราใช้การปรับปรุง Q-learning กับตัวอย่าง (หรือชุดเล็ก ๆ ) …

4
ความหมายของ“ จำนวนหน่วยในเซลล์ LSTM” คืออะไร?
จากรหัสTensorflow : Tensorflow RnnCell num_units: int, The number of units in the LSTM cell. ไม่สามารถแยกแยะและหมายความว่าอะไร หน่วยของเซลล์ LSTM คืออะไร อินพุตเอาต์พุตและลืมประตู? นี่หมายถึง "จำนวนหน่วยในเลเยอร์การฉายซ้ำสำหรับ Deep LSTM" หรือไม่ แล้วเหตุใดจึงเรียกว่า "จำนวนหน่วยในเซลล์ LSTM" เซลล์ LSTM คืออะไรและอะไรคือความแตกต่างกับ VS LSTM block อะไรคือหน่วย LSTM ขั้นต่ำถ้าไม่ใช่เซลล์

4
จะเติมค่าที่ขาดหายไปตามคอลัมน์อื่น ๆ ใน Pandas dataframe ได้อย่างไร?
สมมติว่าฉันมีกรอบข้อมูล 5 * 3 ซึ่งคอลัมน์ที่สามมีค่าที่ขาดหายไป 1 2 3 4 5 NaN 7 8 9 3 2 NaN 5 6 NaN ฉันหวังว่าจะสร้างมูลค่าสำหรับกฎตามมูลค่าที่ขาดหายไปซึ่งคอลัมน์ที่สองของผลิตภัณฑ์แรก 1 2 3 4 5 20 <--4*5 7 8 9 3 2 6 <-- 3*2 5 6 30 <-- 5*6 ฉันจะใช้ data frame ได้อย่างไร? ขอบคุณ วิธีเพิ่มเงื่อนไขในการคำนวณมูลค่าที่ขาดหายไปเช่นนี้? if 1st % …
19 pandas 

4
วิธีการเพิ่มความคิดเห็นเอกสารข้อความด้วย meta-data
มีเอกสารข้อความจำนวนมาก (ในภาษาธรรมชาติไม่มีโครงสร้าง) อะไรคือวิธีที่เป็นไปได้ในการเพิ่มความน่าเชื่อถือด้วย meta-data แบบ semantic ตัวอย่างเช่นพิจารณาเอกสารสั้น ๆ : I saw the company's manager last day. เพื่อให้สามารถดึงข้อมูลจากข้อมูลนั้นจะต้องมีคำอธิบายประกอบพร้อมด้วยข้อมูลเพิ่มเติมเพื่อให้มีความคลุมเครือน้อยลง กระบวนการค้นหาข้อมูลเมตาดังกล่าวไม่ได้เป็นปัญหาดังนั้นให้ถือว่ามีการทำด้วยตนเอง คำถามคือวิธีการจัดเก็บข้อมูลเหล่านี้ในลักษณะที่การวิเคราะห์เพิ่มเติมสามารถทำได้สะดวก / มีประสิทธิภาพมากขึ้น? แนวทางที่เป็นไปได้คือการใช้แท็ก XML (ดูด้านล่าง) แต่ดูเหมือนว่าละเอียดเกินไปและอาจมีแนวทาง / แนวทางที่ดีกว่าสำหรับการจัดเก็บเมตาดาต้าในเอกสารข้อความ <Person name="John">I</Person> saw the <Organization name="ACME">company</Organization>'s manager <Time value="2014-5-29">last day</Time>.

3
จะขยายการพัฒนาอัลกอริทึมได้อย่างไร
ในการทำงานเกี่ยวกับการวิเคราะห์ข้อมูลเชิงสำรวจและการพัฒนาอัลกอริธึมฉันพบว่าเวลาส่วนใหญ่ของฉันใช้เวลาในวงจรของการมองเห็นเขียนรหัสบางชุดบนชุดข้อมูลขนาดเล็กทำซ้ำ ข้อมูลที่ฉันมีแนวโน้มที่จะเป็นคอมพิวเตอร์ประเภทฟิวชั่นวิชันซิสเต็ม / เซ็นเซอร์และอัลกอริทึมนั้นหนักมาก (ตัวอย่างเช่นการตรวจจับวัตถุและการติดตาม ฯลฯ ) และอัลกอริธึมชั้นวางไม่ทำงานในบริบทนี้ ฉันพบว่าต้องใช้การวนซ้ำหลายครั้ง (ตัวอย่างเช่นการหมุนในชนิดของอัลกอริทึมหรือปรับพารามิเตอร์ในอัลกอริทึมหรือเพื่อให้ได้ภาพที่ถูกต้อง) และเวลาที่ใช้แม้ในชุดข้อมูลขนาดเล็กนั้นค่อนข้างยาว ทั้งหมดเข้าด้วยกันจะใช้เวลาสักครู่ การพัฒนาอัลกอริธึมจะเร่งและปรับขนาดได้อย่างไร ความท้าทายเฉพาะบางประการ: จำนวนการวนซ้ำจะลดลงได้อย่างไร? (โดยเฉพาะอย่างยิ่งเมื่ออัลกอริธึมประเภทใดที่เฉพาะเจาะจงของมันดูเหมือนจะไม่สามารถมองเห็นได้ง่ายโดยไม่ต้องลองรุ่นอื่นและตรวจสอบพฤติกรรมของพวกเขา) วิธีการเรียกใช้บนชุดข้อมูลขนาดใหญ่ในระหว่างการพัฒนา? (มักเกิดจากชุดข้อมูลขนาดเล็กถึงใหญ่คือเมื่อมีพฤติกรรมใหม่ ๆ และมีปัญหาใหม่ ๆ เกิดขึ้น) พารามิเตอร์ของอัลกอริทึมสามารถปรับได้เร็วขึ้นอย่างไร วิธีการใช้เครื่องมือประเภทการเรียนรู้ของเครื่องกับการพัฒนาอัลกอริทึมเอง? (ตัวอย่างเช่นแทนที่จะเขียนอัลกอริธึมด้วยมือเขียนแบบเอกสารสำเร็จรูปง่ายๆและรวมสิ่งเหล่านั้นเข้าด้วยกันในแบบที่เรียนรู้จากปัญหา ฯลฯ )
18 algorithms 

3
ชุดข้อมูลสำหรับการจดจำเอนทิตีที่มีชื่อในข้อความที่ไม่เป็นทางการ
ขณะนี้ฉันกำลังค้นหาชุดข้อมูลที่มีป้ายกำกับเพื่อฝึกโมเดลเพื่อแยกเอนทิตีที่มีชื่อออกจากข้อความที่ไม่เป็นทางการ (คล้ายกับทวีต) เนื่องจากการใช้ตัวพิมพ์ใหญ่และไวยากรณ์มักขาดเอกสารในชุดข้อมูลของฉันฉันจึงมองหาข้อมูลในโดเมนที่ค่อนข้าง "ไม่เป็นทางการ" มากกว่าบทความข่าวและรายการบันทึกประจำวันที่ระบบการรู้จำชื่อนิติบุคคลที่ทันสมัยในปัจจุบันหลายแห่ง ได้รับการฝึกฝน คำแนะนำใด ๆ จนถึงตอนนี้ฉันสามารถค้นหาโทเค็น 50k จาก twitter ที่เผยแพร่ที่นี่เท่านั้น
18 dataset  nlp 

1
Word2Vec กับ Sentence2Vec กับ Doc2Vec
ฉันเพิ่งเจอคำศัพท์Word2Vec , Sentence2VecและDoc2Vecและสับสนเพราะฉันยังใหม่กับซีแมนทิกส์เวกเตอร์ ใครช่วยได้โปรดอธิบายความแตกต่างของวิธีการเหล่านี้ด้วยคำพูดง่ายๆ งานที่เหมาะสมที่สุดสำหรับแต่ละวิธีคืออะไร


3
การใช้งาน Python ของฟังก์ชั่นต้นทุนในการถดถอยโลจิสติก: เหตุใดการคูณดอทในนิพจน์หนึ่ง แต่การคูณองค์ประกอบที่ชาญฉลาดในอีกอันหนึ่ง
ฉันมีคำถามพื้นฐานที่เกี่ยวข้องกับ Python จำนวน numpy และการคูณเมทริกซ์ในการตั้งค่าของการถดถอยโลจิสติก ก่อนอื่นให้ฉันขอโทษที่ไม่ได้ใช้สัญกรณ์คณิตศาสตร์ ฉันสับสนเกี่ยวกับการใช้การคูณเมทริกซ์ดอทกับการแบ่งส่วนที่ชาญฉลาด ฟังก์ชันต้นทุนได้รับจาก: และในไพ ธ อนฉันได้เขียนสิ่งนี้เป็น cost = -1/m * np.sum(Y * np.log(A) + (1-Y) * (np.log(1-A))) แต่สำหรับตัวอย่างการแสดงออกนี้ (อันแรก - อนุพันธ์ของ J เทียบกับ w) คือ dw = 1/m * np.dot(X, dz.T) ฉันไม่เข้าใจว่าทำไมมันถูกต้องที่จะใช้การคูณดอทในข้างต้น แต่ใช้การคูณองค์ประกอบที่ชาญฉลาดในฟังก์ชั่นค่าใช้จ่ายเช่นทำไมไม่: cost = -1/m * np.sum(np.dot(Y,np.log(A)) + np.dot(1-Y, np.log(1-A))) ฉันเข้าใจอย่างเต็มที่ว่านี่ไม่ได้อธิบายอย่างละเอียด แต่ฉันเดาว่าคำถามง่ายมากที่ทุกคนที่มีประสบการณ์การถดถอยโลจิสติกขั้นพื้นฐานจะเข้าใจปัญหาของฉัน

1
ขนาดของ t-sne มีความหมายไหม?
มีความหมายใด ๆ กับขนาดของการฝังตัวที - เอ็นหรือไม่? เช่นเดียวกับ PCA เรามีความรู้สึกถึงการแปรปรวนเชิงเส้นแปรปรวนสูงสุด แต่สำหรับ t-sne นั้นมีสัญชาตญาณนอกเหนือจากพื้นที่ที่เรากำหนดไว้สำหรับการจับคู่และลดระยะทาง KL

1
วิธีจัดการกับคุณลักษณะลองจิจูด / ละติจูด [ปิด]
ปิด คำถามนี้ต้องการรายละเอียดหรือความคมชัด ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ เพิ่มรายละเอียดและชี้แจงปัญหาโดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ฉันกำลังทำงานกับชุดข้อมูลที่มีตัวละคร 25 ตัว คุณลักษณะสองอย่างคือละติจูดและลองจิจูดของสถานที่และอื่น ๆ คือค่า pH, ระดับความสูง, windSpeed ​​และอื่น ๆ ที่มีช่วงที่แตกต่างกัน ฉันสามารถทำการปรับสภาพให้เป็นมาตรฐานสำหรับคุณสมบัติอื่น ๆ ได้ แต่ฉันจะเข้าสู่คุณสมบัติละติจูด / ลองจิจูดได้อย่างไร แก้ไข: นี่เป็นปัญหาในการทำนายผลผลิตทางการเกษตร ฉันคิดว่า lat / long นั้นมีความสำคัญมากเนื่องจากตำแหน่งสามารถมีความสำคัญในการทำนายและด้วยเหตุนี้ภาวะที่กลืนไม่เข้าคายไม่ออก

1
วิธีการจัดการกับฉลากสตริงในการจำแนกหลายระดับกับ keras?
ฉันเป็นมือใหม่เกี่ยวกับการเรียนรู้ของเครื่องและ keras และตอนนี้ทำงานกับปัญหาการจำแนกภาพหลายระดับโดยใช้ keras อินพุตถูกติดแท็กรูปภาพ หลังจากการประมวลผลล่วงหน้าข้อมูลการฝึกอบรมจะถูกแสดงในรายการ Python ดังนี้ [["dog", "path/to/dog/imageX.jpg"],["cat", "path/to/cat/imageX.jpg"], ["bird", "path/to/cat/imageX.jpg"]] "สุนัข", "แมว" และ "นก" เป็นป้ายกำกับของชั้นเรียน ฉันคิดว่าควรใช้การเข้ารหัสแบบร้อนแรงสำหรับปัญหานี้ แต่ฉันไม่ชัดเจนเกี่ยวกับวิธีจัดการกับฉลากสตริงเหล่านี้ ฉันได้ลอง LabelEncoder ของ sklearn ด้วยวิธีนี้: encoder = LabelEncoder() trafomed_label = encoder.fit_transform(["dog", "cat", "bird"]) print(trafomed_label) และผลลัพธ์คือ [2 1 0] ซึ่งแตกต่างจากผลลัพธ์ที่คาดหวังของฉันที่เป็น [[1,0,0], [0,1,0], [0,0,1] มันสามารถทำได้ด้วยการเข้ารหัสบางอย่าง แต่ฉันต้องการที่จะรู้ว่ามีวิธี "มาตรฐาน" หรือ "ดั้งเดิม" ที่จะจัดการกับมัน?

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

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