คำถามติดแท็ก machine-learning

คำถามการนำไปใช้เกี่ยวกับอัลกอริทึมการเรียนรู้ของเครื่อง คำถามทั่วไปเกี่ยวกับการเรียนรู้ของเครื่องควรโพสต์ในชุมชนเฉพาะของพวกเขา

21
ความแตกต่างระหว่างการจำแนกและการทำคลัสเตอร์ใน data mining? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดเมื่อปีที่แล้ว ปรับปรุงคำถามนี้ บางคนสามารถอธิบายความแตกต่างระหว่างการจำแนกและการทำคลัสเตอร์ในการขุดข้อมูลได้อย่างไร หากเป็นไปได้โปรดยกตัวอย่างทั้งคู่เพื่อทำความเข้าใจแนวคิดหลัก

7
มีกฎง่ายๆสำหรับวิธีการแบ่งชุดข้อมูลเป็นการฝึกอบรมและการตรวจสอบชุด?
มีกฎง่ายๆสำหรับวิธีการแบ่งข้อมูลที่ดีที่สุดในชุดการฝึกอบรมและการตรวจสอบ? ขอแนะนำให้แบ่ง 50/50 หรือไม่ หรือมีข้อดีที่ชัดเจนของการมีข้อมูลการฝึกอบรมเพิ่มเติมเมื่อเทียบกับข้อมูลการตรวจสอบ (หรือในทางกลับกัน)? หรือแอพพลิเคชั่นนี้ขึ้นอยู่กับทางเลือก ฉันใช้ข้อมูลการฝึกอบรมและการตรวจสอบความถูกต้อง 80% / 20% ตามลำดับ แต่ฉันเลือกแผนกนี้โดยไม่มีเหตุผลใด ๆ คนที่มีประสบการณ์มากขึ้นในการเรียนรู้ของเครื่องสามารถแนะนำฉันได้ไหม

6
บันทึกลักษณนามไปยังดิสก์ใน scikit-Learn
ฉันจะบันทึกลักษณนาม Naive Bayes ที่ผ่านการฝึกอบรมไปยังดิสก์และใช้เพื่อทำนายข้อมูลได้อย่างไร ฉันมีโปรแกรมตัวอย่างต่อไปนี้จากเว็บไซต์ scikit-Learn: from sklearn import datasets iris = datasets.load_iris() from sklearn.naive_bayes import GaussianNB gnb = GaussianNB() y_pred = gnb.fit(iris.data, iris.target).predict(iris.data) print "Number of mislabeled points : %d" % (iris.target != y_pred).sum()


14
เพื่อนบ้านที่ใกล้ที่สุดในข้อมูลมิติสูง?
ฉันได้ถามคำถามสองสามวันย้อนหลังเกี่ยวกับวิธีค้นหาเพื่อนบ้านที่ใกล้ที่สุดสำหรับเวกเตอร์ที่กำหนด เวกเตอร์ของฉันตอนนี้มีขนาด 21 มิติและก่อนที่ฉันจะดำเนินการต่อไปเนื่องจากฉันไม่ได้มาจากโดเมนของการเรียนรู้ของเครื่องจักรและคณิตศาสตร์ฉันเริ่มถามคำถามพื้นฐานบางอย่างกับตัวเอง: ระยะทางแบบยุคลิดเป็นตัวชี้วัดที่ดีสำหรับการค้นหาเพื่อนบ้านที่ใกล้ที่สุดหรือไม่? ถ้าไม่ใช่ตัวเลือกของฉันคืออะไร นอกจากนี้แล้วจะมีวิธีการอย่างไรในการตัดสินใจเลือกขีด จำกัด ที่ถูกต้องในการพิจารณา k-neighbour มีการวิเคราะห์บางอย่างที่สามารถทำได้เพื่อหาค่านี้หรือไม่? ก่อนหน้านี้ฉันได้รับคำแนะนำให้ใช้ kd-Trees แต่หน้าวิกิพีเดียกล่าวอย่างชัดเจนว่าสำหรับมิติสูง kd-Tree นั้นเกือบจะเทียบเท่ากับการค้นหาที่โหดร้าย ในกรณีนั้นวิธีที่ดีที่สุดในการค้นหาเพื่อนบ้านที่ใกล้ที่สุดในชุดข้อมูลจุดล้านอย่างมีประสิทธิภาพคืออะไร? ใครช่วยอธิบายคำถามข้างต้นบางส่วน (หรือทั้งหมด) ได้บ้าง

11
ทำไม binary_crossentropy และ categorical_crossentropy ให้การแสดงต่างกันสำหรับปัญหาเดียวกัน?
ฉันพยายามฝึก CNN เพื่อจัดหมวดหมู่ข้อความตามหัวข้อ เมื่อฉันใช้ไบนารีข้ามเอนโทรปีฉันจะได้รับความแม่นยำประมาณ 80% และจากการข้ามเอนโทรปีอย่างเด็ดขาดฉันจะได้รับความแม่นยำ 50% ฉันไม่เข้าใจว่าทำไมถึงเป็นเช่นนี้ มันเป็นปัญหามัลติคลาสนั่นไม่ได้หมายความว่าฉันต้องใช้การข้ามเอนโทรปีแบบเด็ดขาดและผลลัพธ์ที่ได้จากการข้ามเอนโทรปีแบบไบนารีนั้นไร้ความหมาย? model.add(embedding_layer) model.add(Dropout(0.25)) # convolution layers model.add(Conv1D(nb_filter=32, filter_length=4, border_mode='valid', activation='relu')) model.add(MaxPooling1D(pool_length=2)) # dense layers model.add(Flatten()) model.add(Dense(256)) model.add(Dropout(0.25)) model.add(Activation('relu')) # output layer model.add(Dense(len(class_id_index))) model.add(Activation('softmax')) จากนั้นฉันก็คอมไพล์มันแบบนี้โดยใช้categorical_crossentropyเป็นฟังก์ชันการสูญเสีย: model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy']) หรือ model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy']) โดยสัญชาตญาณมันสมเหตุสมผลแล้วว่าทำไมฉันถึงต้องการใช้เอนโทรปีแบบข้ามหมวดหมู่ฉันไม่เข้าใจว่าทำไมฉันถึงได้ผลลัพธ์ที่ดีด้วยเลขฐานสองและผลลัพธ์ที่ไม่ดีกับการจัดหมวดหมู่

21
วิธีการแยกกฎการตัดสินใจจากต้นไม้ตัดสินใจเรียนรู้?
ฉันสามารถแยกกฎการตัดสินใจพื้นฐาน (หรือ 'เส้นทางการตัดสินใจ') จากต้นไม้ที่ผ่านการฝึกอบรมในต้นไม้การตัดสินใจเป็นรายการที่เป็นข้อความได้หรือไม่? สิ่งที่ต้องการ: if A>0.4 then if B<0.2 then if C>0.8 then class='X' ขอบคุณสำหรับความช่วยเหลือของคุณ.

6
วิธีการแบ่งข้อมูลออกเป็น 3 ชุด (การฝึกอบรมการตรวจสอบความถูกต้องและการทดสอบ)?
ฉันมีดาต้าเฟรมแพนด้าและฉันต้องการแบ่งเป็น 3 ชุดแยกกัน ฉันรู้ว่าการใช้train_test_splitจากsklearn.cross_validationหนึ่งสามารถแบ่งข้อมูลออกเป็นสองชุด (ฝึกและทดสอบ) อย่างไรก็ตามฉันไม่พบวิธีแก้ปัญหาเกี่ยวกับการแบ่งข้อมูลออกเป็นสามชุด โดยเฉพาะอย่างยิ่งฉันต้องการมีดัชนีของข้อมูลต้นฉบับ ฉันรู้ว่าวิธีแก้ปัญหาคือต้องใช้train_test_splitสองครั้งและปรับดัชนี แต่มีวิธีมาตรฐาน / ในตัวมากกว่าในการแบ่งข้อมูลออกเป็น 3 ชุดแทนที่จะเป็น 2 หรือไม่?

6
จะทำความเข้าใจกับ Hashing Sensitive ท้องถิ่นได้อย่างไร?
ฉันสังเกตเห็นว่า LSH ดูเหมือนจะเป็นวิธีที่ดีในการค้นหารายการที่คล้ายกันที่มีคุณสมบัติมิติสูง หลังจากอ่านกระดาษhttp://www.slaney.org/malcolm/yahoo/Slaney2008-LSHTutorial.pdfฉันยังคงสับสนกับสูตรเหล่านั้น ไม่มีใครรู้บล็อกหรือบทความที่อธิบายว่าเป็นวิธีที่ง่าย?

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

4
TensorFlow ทำไมไพ ธ อนถึงภาษาที่เลือก?
ฉันเพิ่งเริ่มศึกษาการเรียนรู้อย่างลึกซึ้งและเทคนิค ML อื่น ๆ และฉันเริ่มค้นหากรอบที่ทำให้กระบวนการสร้างเน็ตและการฝึกอบรมนั้นง่ายขึ้นจากนั้นฉันพบ TensorFlow ซึ่งมีประสบการณ์น้อยในสนามสำหรับฉันดูเหมือนว่าความเร็วนั้นเป็น ปัจจัยใหญ่สำหรับการสร้างระบบ ML ที่ยิ่งใหญ่กว่าหากทำงานกับการเรียนรู้อย่างลึกซึ้งดังนั้นทำไม Google จึงเลือก python ให้สร้าง TensorFlow มันจะดีกว่าไหมถ้าจะทำให้มันเหนือภาษาที่สามารถรวบรวมและไม่ตีความ? ข้อดีของการใช้ Python เหนือภาษาอย่าง C ++ สำหรับการเรียนรู้ของเครื่องคืออะไร

8
ฉันควรใช้อัลกอริธึมทางพันธุกรรมเมื่อเทียบกับเครือข่ายประสาท [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา มีกฎง่ายๆ (หรือชุดตัวอย่าง) เพื่อตรวจสอบว่าเมื่อใดจะใช้อัลกอริทึมทางพันธุกรรมเมื่อเทียบกับเครือข่ายประสาท (และในทางกลับกัน) เพื่อแก้ปัญหา? ฉันรู้ว่ามีหลายกรณีที่คุณสามารถผสมทั้งสองวิธีได้ แต่ฉันกำลังมองหาการเปรียบเทียบระดับสูงระหว่างสองวิธี

7
วิธีการฝึกอบรมเครือข่ายประสาทเทียมเพื่อเล่น Diablo 2 โดยใช้การป้อนข้อมูลด้วยภาพ
ฉันกำลังพยายามรับ ANN เพื่อเล่นวิดีโอเกมและฉันหวังว่าจะได้รับความช่วยเหลือจากชุมชนที่ยอดเยี่ยมที่นี่ ฉันได้ตัดสินจาก Diablo 2 แล้วการเล่นเกมจึงเป็นแบบเรียลไทม์และจากมุมมองภาพวาดสามมิติโดยผู้เล่นสามารถควบคุมอวาตาร์ตัวเดียวที่กล้องมีศูนย์กลางอยู่ ในการสร้างสิ่งที่เป็นรูปธรรมภารกิจคือการได้รับคะแนนประสบการณ์ x โดยไม่ทำให้สุขภาพลดลงเหลือ 0 ซึ่งจะได้รับค่าประสบการณ์จากการฆ่ามอนสเตอร์ นี่คือตัวอย่างของการเล่นเกม: ตอนนี้เนื่องจากฉันต้องการให้เน็ตทำงานโดยอาศัยข้อมูลที่ได้รับจากพิกเซลบนหน้าจอเท่านั้นจึงต้องเรียนรู้การแสดงที่หลากหลายเพื่อที่จะเล่นได้อย่างมีประสิทธิภาพเนื่องจากสิ่งนี้น่าจะต้องการให้รู้ (โดยปริยาย) แบ่งโลกของเกมออกเป็นวัตถุและวิธีการโต้ตอบกับพวกเขา และข้อมูลทั้งหมดนี้จะต้องถูกสอนให้กับเครือข่ายอย่างใด ฉันทำไม่ได้สำหรับชีวิตของฉันคิดว่าจะฝึกเรื่องนี้อย่างไร ความคิดเดียวของฉันคือมีโปรแกรมแยกสิ่งที่มองเห็นสิ่งที่ดี / ไม่ดีโดยธรรมชาติในเกม (เช่นสุขภาพ, ทอง, ประสบการณ์) จากหน้าจอจากนั้นใช้สถิตินั้นในกระบวนการเรียนรู้การเสริมแรง ฉันคิดว่ามันจะเป็นส่วนหนึ่งของคำตอบ แต่ฉันคิดว่ามันจะไม่เพียงพอ มีเพียงนามธรรมในระดับที่มากเกินไปจากการป้อนข้อมูลแบบวิชวลไปจนถึงพฤติกรรมที่มุ่งเน้นเป้าหมายสำหรับข้อเสนอแนะที่ จำกัด เช่นนี้เพื่อฝึกฝนเน็ตภายในชีวิตของฉัน ดังนั้นคำถามของฉัน: คุณมีวิธีอื่นอย่างไรในการฝึกอบรมให้ทำอย่างน้อยส่วนหนึ่งของงานนี้ โดยไม่ต้องทำตัวอย่างหลายพันรายการ ขอทิศทางอีกเล็กน้อย: ฉันกำลังมองหาแหล่งการเรียนรู้การเสริมแรงอื่น ๆ และ / หรือวิธีการที่ไม่ได้รับการสนับสนุนสำหรับการดึงข้อมูลที่เป็นประโยชน์ในการตั้งค่านี้ หรืออัลกอริทึมการดูแลถ้าคุณสามารถคิดหาวิธีที่จะติดป้ายกำกับข้อมูลจากโลกของเกมโดยไม่ต้องติดป้ายกำกับด้วยตนเอง UPDATE (04/27/12): แปลกฉันยังคงทำงานนี้และดูเหมือนจะก้าวหน้า ความลับที่ใหญ่ที่สุดในการทำให้คอนโทรลเลอร์ ANN ทำงานได้คือใช้สถาปัตยกรรม ANN ที่ทันสมัยที่สุดที่เหมาะสมกับงาน ดังนั้นผมเคยใช้สุทธิความเชื่อลึกประกอบด้วยเอาเรื่องเงื่อนไข จำกัด …

12
ทำไมต้องเปิดใช้งานฟังก์ชั่นแบบไม่เชิงเส้นในเครือข่ายนิวรัล backpropagation
ฉันได้อ่านบางอย่างเกี่ยวกับโครงข่ายประสาทและฉันเข้าใจหลักการทั่วไปของโครงข่ายประสาทชั้นเดียว ฉันเข้าใจความต้องการเลเยอร์ aditional แล้ว แต่ทำไมจึงใช้ฟังก์ชั่นเปิดใช้งานแบบไม่เชิงเส้น คำถามนี้ตามมาด้วยคำถามนี้: อะไรคืออนุพันธ์ของฟังก์ชั่นการเปิดใช้งานที่ใช้ในการแพร่กระจายย้อนหลัง?

20
ฉันจะเข้ารหัสร้อนใน Python ได้อย่างไร
ฉันมีปัญหาการจัดหมวดหมู่แมชชีนเลิร์นนิงที่มีตัวแปรตามหมวดหมู่ 80% ฉันต้องใช้การเข้ารหัสแบบร้อนครั้งเดียวหรือไม่หากฉันต้องการใช้ลักษณนามสำหรับการจัดประเภท ฉันสามารถส่งข้อมูลไปยังลักษณนามโดยไม่ต้องเข้ารหัสได้หรือไม่ ฉันพยายามทำสิ่งต่อไปนี้เพื่อเลือกคุณสมบัติ: ฉันอ่านไฟล์รถไฟ: num_rows_to_read = 10000 train_small = pd.read_csv("../../dataset/train.csv", nrows=num_rows_to_read) ฉันเปลี่ยนประเภทของคุณสมบัติหมวดหมู่เป็น 'หมวดหมู่': non_categorial_features = ['orig_destination_distance', 'srch_adults_cnt', 'srch_children_cnt', 'srch_rm_cnt', 'cnt'] for categorical_feature in list(train_small.columns): if categorical_feature not in non_categorial_features: train_small[categorical_feature] = train_small[categorical_feature].astype('category') ฉันใช้การเข้ารหัสร้อนหนึ่งรายการ: train_small_with_dummies = pd.get_dummies(train_small, sparse=True) ปัญหาคือส่วนที่ 3 มักจะติดขัดแม้ว่าฉันจะใช้เครื่องแรง ดังนั้นหากไม่มีการเข้ารหัสที่ร้อนแรงฉันไม่สามารถทำการเลือกคุณสมบัติใด ๆ เพื่อกำหนดความสำคัญของคุณสมบัติได้ คุณแนะนำเมนูใด?

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