Python Academy · leksjon

Ikke-veiledet læring

Forstå klyngeteknikker som K-Means og hierarkisk klynging.

Leksjon 3 av 611 trinn

Ikke-veiledet læring er en gratis leksjon i Python Academy på CoddyKit. Dette er leksjon 3 av 6. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Python Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Python Academy inneholder totalt 6 leksjoner.

Ikke-overvåket læring

Ikke-overvåket læring er en type maskinlæring der algoritmen lærer mønstre fra umerkede data. Den brukes ofte til klynging, dimensjonsreduksjon og deteksjon av avvik.

I denne leksjonen utforsker du klyngingsteknikker som K-Means og hierarkisk klynging.

Ikke-veiledet læring — illustrasjon 1

Hva er ikke-overvåket læring?

Ikke-overvåket læring innebærer å analysere og gruppere data uten forhåndsdefinerte etiketter. Målet er å identifisere skjulte strukturer eller mønstre i dataene.

Viktige oppgaver omfatter:

  • Klynging: Gruppere lignende datapunkter.
  • Dimensjonsreduksjon: Redusere antallet egenskaper samtidig som viktig informasjon bevares.

K-Means-klynging

K-Means er en populær klyngealgoritme som deler data inn i K klynger basert på likhet mellom egenskapene. La oss se hvordan den fungerer:

# Example: K-Means Clustering
from sklearn.cluster import KMeans
import numpy as np

# Sample data
X = np.array([[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]])

kmeans = KMeans(n_clusters=2, random_state=0)
kmeans.fit(X)
print("Cluster Centers:", kmeans.cluster_centers_)
print("Labels:", kmeans.labels_)

Hierarkisk klynging

Hierarkisk klynging bygger en trelignende struktur (dendrogram) for å gruppere lignende datapunkter. Den krever ikke et forhåndsdefinert antall klynger.

# Example: Hierarchical Clustering
from scipy.cluster.hierarchy import dendrogram, linkage
import matplotlib.pyplot as plt

# Sample data
X = [[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]

linked = linkage(X, 'single')
dendrogram(linked)
plt.show()

Dimensjonsreduksjon

Dimensjonsreduksjon forenkler data ved å redusere antallet egenskaper samtidig som viktig informasjon bevares. Principal Component Analysis (PCA) er en vanlig teknikk for denne oppgaven.

# Example: PCA
from sklearn.decomposition import PCA
import numpy as np

# Sample data
X = np.array([[1, 2], [3, 4], [5, 6], [7, 8]])

pca = PCA(n_components=1)
X_reduced = pca.fit_transform(X)
print("Reduced Data:", X_reduced)

Bruksområder for ikke-overvåket læring

Ikke-overvåket læring brukes til:

  • Kundesegmentering: Gruppere kunder basert på atferd.
  • Avviksdeteksjon: Identifisere uvanlige mønstre i data.
  • Bildekomprimering: Redusere bildestørrelsen samtidig som kvaliteten bevares.

Visualisering av klynger

Visualisering av klynger gjør det enklere å forstå hvordan datapunkter grupperes. Matplotlib og Seaborn er nyttige til dette:

# Example: Visualizing clusters
import matplotlib.pyplot as plt

# Sample data and labels
X = [[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]
labels = [0, 0, 0, 1, 1, 1]

for i in range(len(X)):
    plt.scatter(X[i][0], X[i][1], c='r' if labels[i] == 0 else 'b')
plt.show()

Utfordringer ved ikke-overvåket læring

Ikke-overvåket læring har flere utfordringer, blant annet:

  • Fastsette antallet klynger: K-Means krever at De angir antallet klynger på forhånd.
  • Tolkbarhet: Klynger har ikke alltid en tydelig betydning.
  • Skalerbarhet: Håndtering av store datasett kan være beregningskrevende.

Vanlige feil ved ikke-overvåket læring

Her er noen feil De bør unngå:

  • Å velge feil antall klynger i K-Means.
  • Å unnlate å forhåndsbehandle data, for eksempel ved å skalere egenskaper.
  • Å overtolke klynger uten validering.

Hva har De lært?

I denne leksjonen har De lært:

  • Grunnleggende om ikke-overvåket læring og de viktigste oppgavene.
  • Hvordan De implementerer K-Means og hierarkisk klynging.
  • Konseptet dimensjonsreduksjon ved hjelp av PCA.
  • Bruksområder, utfordringer og vanlige feil ved ikke-overvåket læring.

Godt jobbet! La oss gå videre til neste tema.

Ikke-veiledet læring — illustrasjon 11
Gratis å komme i gang

Lær deg Python med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
76
Leksjoner
320

Ofte stilte spørsmål

Er leksjonen «Ikke-veiledet læring» gratis?

Ja – hele teksten i «Ikke-veiledet læring» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Python Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Python Academy inneholder totalt 6 leksjoner.

Hva lærer jeg i «Ikke-veiledet læring»?

Forstå klyngeteknikker som K-Means og hierarkisk klynging. Du øver på Python Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Python Academy?

Ingen tidligere erfaring er nødvendig. Python Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 6.

Hvor lang tid tar leksjonen «Ikke-veiledet læring»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Python Academy-leksjonen?

Ja. Alle Python Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Introduksjon til maskinlæring
  2. Veiledet læring med Scikit-Learn
  3. Ikke-veiledet læring
  4. Funksjonsutvikling og -utvelging
  5. Introduksjon til nevrale nettverk
  6. Introduksjon til TensorFlow og Keras
← Tilbake til Python Academy