คำถามติดแท็ก clustering

การวิเคราะห์กลุ่มหรือการจัดกลุ่มเป็นงานของการจัดกลุ่มชุดของวัตถุในลักษณะที่วัตถุในกลุ่มเดียวกัน (เรียกว่ากลุ่ม) มีความคล้ายคลึงกันมากขึ้น (ในบางแง่มุมหรืออื่น ๆ ) ซึ่งกันและกันมากกว่ากลุ่มอื่น ๆ (กลุ่ม) . มันเป็นภารกิจหลักของการขุดข้อมูลเชิงสำรวจและเทคนิคทั่วไปสำหรับการวิเคราะห์ข้อมูลทางสถิติที่ใช้ในหลายสาขารวมถึงการเรียนรู้ของเครื่องการจดจำรูปแบบการวิเคราะห์ภาพการดึงข้อมูล ฯลฯ

13
K-หมายถึงการจัดกลุ่มสำหรับข้อมูลตัวเลขและหมวดหมู่ผสม
ชุดข้อมูลของฉันมีแอตทริบิวต์ตัวเลขจำนวนหนึ่งและหนึ่งหมวดหมู่ พูดว่าNumericAttr1, NumericAttr2, ..., NumericAttrN, CategoricalAttr, ที่CategoricalAttrจะใช้เวลาหนึ่งของค่าที่เป็นไปได้ที่สาม: CategoricalAttrValue1, หรือCategoricalAttrValue2CategoricalAttrValue3 ฉันใช้ค่าเริ่มต้น k หมายถึงการจัดกลุ่มการดำเนินการขั้นตอนวิธีสำหรับคู่https://blog.west.uni-koblenz.de/2012-07-14/a-working-k-means-code-for-octave/ ใช้งานได้กับข้อมูลตัวเลขเท่านั้น ดังนั้นคำถามของฉัน: มันเป็นที่ถูกต้องในการแยกแอตทริบิวต์เด็ดขาดCategoricalAttrเป็นสามตัวเลข (binary) ตัวแปรเช่นIsCategoricalAttrValue1, IsCategoricalAttrValue2, IsCategoricalAttrValue3?

8
การรวมกลุ่มพิกัดตำแหน่งทางภูมิศาสตร์ (lat, long long)
วิธีการที่เหมาะสมและอัลกอริทึมการจัดกลุ่มสำหรับการจัดกลุ่มตำแหน่งทางภูมิศาสตร์คืออะไร? ฉันใช้รหัสต่อไปนี้เพื่อประสานพิกัดตำแหน่งทางภูมิศาสตร์: import numpy as np import matplotlib.pyplot as plt from scipy.cluster.vq import kmeans2, whiten coordinates= np.array([ [lat, long], [lat, long], ... [lat, long] ]) x, y = kmeans2(whiten(coordinates), 3, iter = 20) plt.scatter(coordinates[:,0], coordinates[:,1], c=y); plt.show() ถูกต้องหรือไม่ที่จะใช้ K- meanสำหรับการจัดกลุ่มตำแหน่งทางภูมิศาสตร์เนื่องจากใช้ระยะทางแบบยุคลิดไม่ใช่สูตรฮาร์ไซน์เป็นฟังก์ชันระยะทาง

1
Keras รุ่นที่ดีที่สุดสำหรับการจำแนกประเภทหลายประเภทคืออะไร?
ฉันกำลังทำงานวิจัยที่จำเป็นที่จะต้องเป็นหนึ่งในประเภทของผู้ชนะสามเหตุการณ์ = ( win, draw, lose) WINNER LEAGUE HOME AWAY MATCH_HOME MATCH_DRAW MATCH_AWAY MATCH_U2_50 MATCH_O2_50 3 13 550 571 1.86 3.34 4.23 1.66 2.11 3 7 322 334 7.55 4.1 1.4 2.17 1.61 รุ่นปัจจุบันของฉันคือ: def build_model(input_dim, output_classes): model = Sequential() model.add(Dense(input_dim=input_dim, output_dim=12, activation=relu)) model.add(Dropout(0.5)) model.add(Dense(output_dim=output_classes, activation='softmax')) model.compile(loss='categorical_crossentropy', optimizer='adadelta') return model …

1
ทำไม xgboost จึงเร็วกว่า GradientBoostingClassifier ของ sklearn มาก?
ฉันพยายามที่จะฝึกอบรมการยกระดับความลาดชันของตัวอย่างมากกว่า 50k ด้วยคุณสมบัติตัวเลข 100 ตัว XGBClassifierจัดการ 500 ต้นภายใน 43 วินาทีบนเครื่องของฉันในขณะที่GradientBoostingClassifierจัดการเพียง 10 ต้น (!) ใน 1 นาทีและ 2 วินาที :( ฉันไม่ได้พยายามที่จะเติบโต 500 ต้นเพราะจะใช้เวลาหลายชั่วโมงฉันใช้แบบเดียวกันlearning_rateและmax_depthการตั้งค่า ดูด้านล่าง อะไรทำให้ XGBoost เร็วขึ้นมาก? มันใช้การปรับแต่งแบบใหม่เพื่อส่งเสริมการไล่ระดับสีที่พวก sklearn ไม่รู้หรือไม่? หรือว่า "ตัดมุม" และปลูกต้นไม้ที่ตื้นขึ้น? ป.ล. ฉันตระหนักถึงการสนทนานี้: https://www.kaggle.com/c/higgs-boson/forums/t/10335/xgboost-post-competition-surveyแต่ไม่สามารถหาคำตอบได้ที่นั่น ... XGBClassifier(base_score=0.5, colsample_bylevel=1, colsample_bytree=1, gamma=0, learning_rate=0.05, max_delta_step=0, max_depth=10, min_child_weight=1, missing=None, n_estimators=500, nthread=-1, objective='binary:logistic', reg_alpha=0, reg_lambda=1, …
29 scikit-learn  xgboost  gbm  data-mining  classification  data-cleaning  machine-learning  reinforcement-learning  data-mining  bigdata  dataset  nlp  language-model  stanford-nlp  machine-learning  neural-network  deep-learning  randomized-algorithms  machine-learning  beginner  career  xgboost  loss-function  neural-network  software-recommendation  naive-bayes-classifier  classification  scikit-learn  feature-selection  r  random-forest  cross-validation  data-mining  python  scikit-learn  random-forest  churn  python  clustering  k-means  machine-learning  nlp  sentiment-analysis  machine-learning  programming  python  scikit-learn  nltk  gensim  visualization  data  csv  neural-network  deep-learning  descriptive-statistics  machine-learning  supervised-learning  text-mining  orange  data  parameter-estimation  python  pandas  scraping  r  clustering  k-means  unsupervised-learning 

4
จำเป็นหรือไม่ที่จะต้องทำให้ข้อมูลของคุณเป็นมาตรฐานก่อนการทำคลัสเตอร์
จำเป็นหรือไม่ที่จะต้องทำให้ข้อมูลของคุณเป็นมาตรฐานก่อนคลัสเตอร์ ในตัวอย่างจากscikit learnเกี่ยวกับ DBSCAN ที่นี่พวกเขาทำสิ่งนี้ในบรรทัด: X = StandardScaler().fit_transform(X) แต่ฉันไม่เข้าใจว่าทำไมจึงมีความจำเป็น ท้ายที่สุดการจัดกลุ่มไม่ถือว่าเป็นการกระจายข้อมูลโดยเฉพาะ - มันเป็นวิธีการเรียนรู้ที่ไม่มีผู้ดูแลดังนั้นวัตถุประสงค์ของมันก็คือการสำรวจข้อมูล ทำไมจึงจำเป็นต้องแปลงข้อมูล?

3
K- หมายถึงพฤติกรรมที่ไม่ต่อเนื่องกันเลือก K ด้วยวิธี Elbow, BIC, อธิบายความแปรปรวนและภาพเงา
ฉันพยายามจัดกลุ่มเวกเตอร์บางส่วนด้วย 90 ฟีเจอร์ด้วย K-mean เนื่องจากอัลกอริทึมนี้ถามจำนวนกลุ่มฉันจึงต้องการตรวจสอบตัวเลือกของฉันกับคณิตศาสตร์ที่ดี ฉันคาดว่าจะมี 8-10 กลุ่ม คุณสมบัติดังกล่าวได้รับการปรับอัตราส่วนคะแนน Z อธิบายวิธีและความแปรปรวนของข้อศอก from scipy.spatial.distance import cdist, pdist from sklearn.cluster import KMeans K = range(1,50) KM = [KMeans(n_clusters=k).fit(dt_trans) for k in K] centroids = [k.cluster_centers_ for k in KM] D_k = [cdist(dt_trans, cent, 'euclidean') for cent in centroids] cIdx = [np.argmin(D,axis=1) for …

5
การคำนวณ KL Divergence ใน Python
ฉันค่อนข้างใหม่สำหรับสิ่งนี้และไม่สามารถพูดได้ว่าฉันมีความเข้าใจที่สมบูรณ์เกี่ยวกับแนวคิดทางทฤษฎีที่อยู่เบื้องหลังสิ่งนี้ ฉันกำลังพยายามคำนวณ KL Divergence ระหว่างรายการหลายจุดใน Python ฉันใช้http://scikit-learn.org/stable/modules/generated/sklearn.metrics.mutual_info_score.htmlเพื่อลองทำสิ่งนี้ ปัญหาที่ฉันพบคือค่าที่ส่งคืนนั้นเหมือนกันสำหรับ 2 หมายเลขรายการใด ๆ (1.3862943611198906) ฉันมีความรู้สึกว่าฉันทำผิดทางทฤษฎีบางอย่างที่นี่ แต่มองไม่เห็น values1 = [1.346112,1.337432,1.246655] values2 = [1.033836,1.082015,1.117323] metrics.mutual_info_score(values1,values2) นี่คือตัวอย่างของสิ่งที่ฉันกำลังทำงาน - เพียงแค่ฉันได้รับผลลัพธ์เดียวกันสำหรับ 2 อินพุทใด ๆ คำแนะนำใด ๆ / ความช่วยเหลือจะได้รับการชื่นชม!

2
วิธีการจัดการกับอนุกรมเวลาที่เปลี่ยนแปลงในฤดูกาลหรือรูปแบบอื่น ๆ ?
พื้นหลัง ฉันกำลังทำงานเกี่ยวกับชุดข้อมูลเวลาของการอ่านมาตรวัดพลังงาน ความยาวของซีรีย์แตกต่างกันไปตามเมตร - สำหรับบางคนที่ฉันมีหลายปีอื่น ๆ เพียงไม่กี่เดือน ฯลฯ หลายคนแสดงฤดูกาลที่สำคัญและมักจะหลายชั้น - ภายในวันสัปดาห์หรือปี หนึ่งในสิ่งที่ฉันได้ทำคือการจัดกลุ่มของอนุกรมเวลาเหล่านี้ งานของฉันเป็นงานวิชาการในขณะนี้และในขณะที่ฉันทำการวิเคราะห์ข้อมูลอื่น ๆ เช่นกันฉันมีเป้าหมายที่เฉพาะเจาะจงในการทำคลัสเตอร์บางอย่าง ฉันเริ่มงานแรกโดยที่ฉันคำนวณคุณสมบัติต่าง ๆ (เปอร์เซ็นต์ที่ใช้ในวันหยุดสุดสัปดาห์กับวันทำงานเปอร์เซ็นต์ที่ใช้ในช่วงเวลาต่าง ๆ เป็นต้น) จากนั้นฉันก็ไปดูที่การใช้ Dynamic Time Warping (DTW) เพื่อให้ได้ระยะห่างระหว่างซีรีย์ที่แตกต่างกันและการจัดกลุ่มตามค่าที่แตกต่างกันและฉันก็พบเอกสารหลายฉบับที่เกี่ยวข้องกับเรื่องนี้ คำถาม การเปลี่ยนแปลงตามฤดูกาลในซีรีส์ที่ระบุจะทำให้การจัดกลุ่มของฉันไม่ถูกต้องหรือไม่ และถ้าเป็นเช่นนั้นฉันจะจัดการกับมันได้อย่างไร ความกังวลของฉันคือระยะทางที่ได้รับจาก DTW อาจทำให้เข้าใจผิดในกรณีที่รูปแบบในอนุกรมเวลาเปลี่ยนไป สิ่งนี้อาจนำไปสู่การทำคลัสเตอร์ที่ไม่ถูกต้อง ในกรณีที่ข้างต้นไม่ชัดเจนให้พิจารณาตัวอย่างเหล่านี้: ตัวอย่างที่ 1 มาตรวัดมีการอ่านค่าต่ำตั้งแต่เที่ยงคืนจนถึง 8 โมงเช้าการอ่านเพิ่มขึ้นอย่างรวดเร็วในชั่วโมงถัดไปและอยู่สูงจาก 9.00 น. ถึง 17.00 น. จากนั้นลดลงอย่างรวดเร็วในชั่วโมงถัดไปจากนั้นพักต่ำจาก 18.00 น. จนถึงเที่ยงคืน มิเตอร์ยังคงรูปแบบนี้อย่างต่อเนื่องทุกวันเป็นเวลาหลายเดือน แต่จากนั้นเปลี่ยนเป็นรูปแบบที่การอ่านอยู่ในระดับสม่ำเสมอตลอดทั้งวัน …

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

5
ขั้นตอนวิธีปฏิบัติที่ดีที่สุดสำหรับความคล้ายคลึงของประโยค
ฉันมีสองประโยคคือ S1 และ S2 ซึ่งทั้งคู่มีจำนวนคำ (ปกติ) ต่ำกว่า 15 อะไรคืออัลกอริทึมที่มีประโยชน์และประสบความสำเร็จมากที่สุด (การเรียนรู้ของเครื่อง) ซึ่งอาจง่ายต่อการติดตั้ง (เครือข่ายประสาทเทียมก็โอเคยกเว้นว่าสถาปัตยกรรมนั้นซับซ้อนพอ ๆ กับ Google Inception เป็นต้น) ฉันกำลังมองหาอัลกอริทึมที่จะทำงานได้ดีโดยไม่ต้องใช้เวลามากเกินไป มีอัลกอริทึมใดบ้างที่คุณประสบความสำเร็จและใช้งานง่าย? สิ่งนี้สามารถทำได้ แต่ไม่จำเป็นต้องอยู่ในหมวดหมู่ของการทำคลัสเตอร์ พื้นหลังของฉันมาจากการเรียนรู้ของเครื่องดังนั้นคำแนะนำใด ๆ ยินดีต้อนรับ :)

4
K- หมายถึง: อะไรคือวิธีที่ดีในการเลือกชุดเซนทรอยด์เริ่มต้นที่มีประสิทธิภาพ
เมื่อมีการใช้งานการเริ่มต้นแบบสุ่มของ centroids การวิ่งที่ต่างกันของ K-mean จะสร้าง SSE รวมที่แตกต่างกัน และเป็นสิ่งสำคัญในประสิทธิภาพของอัลกอริทึม อะไรคือแนวทางที่มีประสิทธิภาพในการแก้ไขปัญหานี้? แนวทางล่าสุดได้รับการชื่นชม

1
อัลกอริทึมสำหรับการจัดกลุ่มข้อความ
ฉันมีปัญหาในการจัดกลุ่มประโยคจำนวนมากเป็นความหมายของกลุ่ม สิ่งนี้คล้ายกับปัญหาเมื่อคุณมีประโยคจำนวนมากและต้องการจัดกลุ่มตามความหมาย ขั้นตอนวิธีใดที่แนะนำให้ทำเช่นนี้? ฉันไม่ทราบจำนวนกลุ่มล่วงหน้า (และเมื่อข้อมูลเพิ่มเติมมาถึงกลุ่มสามารถเปลี่ยนแปลงได้เช่นกัน) โดยปกติคุณสมบัติใดที่ใช้เพื่อแสดงถึงแต่ละประโยค ตอนนี้ฉันกำลังลองใช้ฟีเจอร์ที่ง่ายที่สุดเพียงแค่ใส่คำและระยะห่างระหว่างประโยคที่กำหนดเป็น: (A และ B เป็นชุดคำที่สอดคล้องกันในประโยค A และ B) มันสมเหตุสมผลหรือไม่ ฉันกำลังพยายามใช้อัลกอริทึมMean-Shiftจาก scikit ไลบรารี่กับระยะทางนี้เนื่องจากไม่จำเป็นต้องใช้จำนวนคลัสเตอร์ล่วงหน้า หากใครจะแนะนำวิธีการ / แนวทางที่ดีกว่าสำหรับปัญหา - มันจะได้รับการชื่นชมอย่างมากเพราะฉันยังใหม่กับหัวข้อ

4
การจัดกลุ่มตามคะแนนความคล้ายคลึงกัน
สมมติว่าเรามีชุดขององค์ประกอบEและความคล้ายคลึงกัน ( ไม่ใช่ระยะทาง ) ฟังก์ชั่นซิม (EI, EJ)ระหว่างสององค์ประกอบEI, EJ ∈ E เราจะจัดองค์ประกอบของEโดยใช้ซิมได้อย่างไร(อย่างมีประสิทธิภาพ) ตัวอย่างเช่นk -means ต้องการk ที่ให้มา, Canopy Clustering ต้องการค่าสองค่า ถ้าเราไม่ต้องการพารามิเตอร์ที่กำหนดไว้ล่วงหน้า โปรดทราบว่าซิมนั้นไม่จำเป็นต้องมีการวัด (เช่นความไม่เท่าเทียมกันของสามเหลี่ยมอาจหรืออาจไม่ถือ) ยิ่งกว่านั้นมันไม่สำคัญว่ากลุ่มจะแยกจากกัน (พาร์ติชันของE )

5
ทำให้แผนที่ความร้อนของทะเลใหญ่ขึ้น
ฉันสร้างcorr()df จาก df ดั้งเดิม corr()DF ออก 70 X 70 มาและมันเป็นไปไม่ได้ที่จะเห็นภาพ heatmap ส sns.heatmap(df)... ถ้าฉันพยายามที่จะแสดงcorr = df.corr()ตารางที่ไม่พอดีกับหน้าจอและฉันสามารถดูความสัมพันธ์ทั้งหมด มันเป็นวิธีที่จะพิมพ์ทั้งdfโดยไม่คำนึงถึงขนาดของมันหรือเพื่อควบคุมขนาดของ heatmap หรือไม่?
17 visualization  pandas  plotting  machine-learning  neural-network  svm  decision-trees  svm  efficiency  python  linear-regression  machine-learning  nlp  topic-model  lda  named-entity-recognition  naive-bayes-classifier  association-rules  fuzzy-logic  kaggle  deep-learning  tensorflow  inception  classification  feature-selection  feature-engineering  machine-learning  scikit-learn  tensorflow  keras  encoding  nlp  text-mining  nlp  rnn  python  neural-network  feature-extraction  machine-learning  predictive-modeling  python  r  linear-regression  clustering  r  ggplot2  neural-network  neural-network  training  python  neural-network  deep-learning  rnn  predictive-modeling  databases  sql  programming  distribution  dataset  cross-validation  neural-network  deep-learning  rnn  machine-learning  machine-learning  python  deep-learning  data-mining  tensorflow  visualization  tools  sql  embeddings  orange  feature-extraction  unsupervised-learning  gan  machine-learning  python  data-mining  pandas  machine-learning  data-mining  bigdata  apache-spark  apache-hadoop  deep-learning  python  convnet  keras  aggregation  clustering  k-means  r  random-forest  decision-trees  reference-request  visualization  data  pandas  plotting  neural-network  keras  rnn  theano  deep-learning  tensorflow  inception  predictive-modeling  deep-learning  regression  sentiment-analysis  nlp  encoding  deep-learning  python  scikit-learn  lda  convnet  keras  predictive-modeling  regression  overfitting  regression  svm  prediction  machine-learning  similarity  word2vec  information-retrieval  word-embeddings  neural-network  deep-learning  rnn 

2
K-หมายถึง vs. K-หมายถึงออนไลน์
K-หมายความว่าเป็นอัลกอริทึมที่รู้จักกันดีสำหรับการจัดกลุ่ม แต่ยังมีการเปลี่ยนแปลงออนไลน์ของอัลกอริทึมดังกล่าว (ออนไลน์ K- หมายถึง) อะไรคือข้อดีข้อเสียของวิธีการเหล่านี้และแต่ละคนควรได้รับความนิยมเมื่อใด?

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