27,1,2025
Die wahre Herausforderung bei der Entwicklung der KI liegt
letzten Endes im Bereich von - geeigneten - Daten,
etwa die Erkennung von Anomalien.
Damit beschäftige ich mich derzeit.
Besondes geeignet schedint mir Isolation Forest ,
ein Algorithmus zur Datenanomalieerkennung
mithilfe von Binärbäumen .
Dazu ein erstes Beispiel:
Gute Zeit OSWALD
27.1.2025
hier ein umfangreicheres Progamm.
mit Isolation Forestselbsterklärend.
Die besten Ergebnise lassen sich mit großen
Datenmengen erzielen und umgekehrt-
Gute Zeit OSWALD
29.1.2025
hier zeige ich 2 weitere Programme , von denen
ich mir tiefefe Einblicke in das Thema LKI zu erhalten.
Ich würde gerne wissen , wo genau die Unterschiede
zwischen ' KI CH' und ' KI USA' liegen.
Meine Vermutung.(als Laie)
Hier USA: Mehr Datengewinnung aus Bildern(zB.MNIST) Ergebnisse sehr genau ,aber sehr aufwendig
China Mehr Daten aus Zahlenmaterial ( z.B. Isolation Forest) Ergebnisse weniger genau , dafür weniger aufwendig
Aus den vielen Fachartikeln ist jedenfalls kaum Konkretes zu erfehren.
Gute Zeit OSWALD
import numpy as np
import math
import pandas as pd
import matplotlib.pyplot as plt
from pyod.utils.data import generate_data, get_outliers_inliers
import seaborn as sns
from sklearn.ensemble import IsolationForest
plt.rcParams["figure.figsize"] = (9,7)
np.random.seed(12335)
data, is_anomaly = generate_data(
n_features=2,
train_only=True,
random_state=42 )
data = pd.DataFrame(data, columns = ['x','y'])
print(data)
data['is_really_anomaly'] = is_anomaly
print(data)
sns.scatterplot(
data = data,
x = 'x',
y = 'y',
hue = 'is_really_anomaly'
)
plt.grid()
plt.title("Synthetisch erzeugte zufällige Daten")
plt.show()
###################
Nummer 2
####################
rom sklearn.model_selection import train_test_split
# Example of dummy data for X (features) and y (labels)
X = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(X)
y = [0, 1, 0]
print(y)
# Use train_test_split to split the data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
# Display training and testing data
print("1. Training data X:", X_train)
print()
print("2. Training labels y:", y_train)
print()
print("3.Testing data X:", X_test)
print()
print("4. Testing data y:", y_test)
print()
# Was ist random_state?
#random_state ist ein Parameter - train_test_split- , der den Zufallszahlengenerator steuert,
#der zum Mischen der Daten vor dem Aufteilen verwendet wird.
# Mit anderen Worten stellt er sicher, dass bei jeder Ausführung des Codes dieselbe Zufallsverteilung verwendet wird,
#was zu denselben Aufteilungen der Daten führt.
#Schauen wir uns ein Beispiel an, um dies zu demonstrieren. Angenommen, Sie haben einen Datensatz mit 1000 Proben und möchten ihn in einen Trainingssatz mit 700 Proben und einen Testsatz mit 300 Proben aufteilen. So geht's:
from sklearn.model_selection import train_test_split
import numpy as np
# Generate data for the example (values from 0 to 99)
data = np.arange(100)
# Split the data into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(data, data, test_size=0.3, random_state=42)
# Display the training and testing sets
print("Training set X:", X_train)
print()
print("Testing set X:", X_test)
print()
print("Training labels y:", y_train)
print()
print("Testing labels y:", y_test)
print()
30.1.2025
Hier ein ?rogramm, das demonstriert,
wie man sythetische Daten praxisnah erzeugen kann.
Dazu bekannte Statitiken auswerten und aus scipy mittels
Verteilungen die besten Modelle ausprobieren, trainieren ujsw
1.2.2025
Ich habe jetzt nmal ein kleines Programm im Ansatz
zur Erzeugung von synthetischen Daten zusammen zu schreiben,
etwa so wie ich mir als Anfänger so vorstelle könnte.
(Fehler nicht ausgechlossen, bitte melden)
Gleiches kann man natrlich mit anderen Verteilungen auch machen.
Gute Zeit OSWALD
#Bernullie BAYESTest
from sklearn.datasets import make_classification
import numpy as np
# Model evaluation by using Bernoulli Naïve Bayes algorithm.
# Import Bernoulli Naive bayes from sklearn
from sklearn.naive_bayes import BernoulliNB
# Organizing dataset into training and testing set
# by using train_test_split() function
from sklearn.model_selection import train_test_split
# Creating the classification dataset with one informative feature and one cluster per class
nb_samples = 300
X, Y = make_classification(n_samples = nb_samples, n_features=2, n_informative=2, n_redundant=0)
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.01)
print(" X_train " ,X_train )
print(" X_test" , X_test )
print(" Y_train" , Y_train )
print(" Y_test" , Y_test )
# Let's initializing the model
B_NaiveBayes = BernoulliNB(binarize=0.0)
# Train the model
B_NaiveBayes.fit(X_train, Y_train)
# Making predictions by using pred() function
data = np.array([[1., 1.],
[1., 1.],
[1., 0.],
[2., 1.]])
Preds=B_NaiveBayes.predict(data)
print(Preds)
# uswusw
4.2.25
Auf der Suche nach brauchbaren sythetischen Daten
kann man nicht nur bei Isolation Forest, sondern auch
bei Clustern beliebig viele Daten abschöpfen. Hier ist sogar
eine 'Vorauswahl' aus mehreren Bereichen möglich.
Hier zwei Beispiele
Gute Zeit OSWALD
[code
mport numpy as np
from sklearn.model_selection import train_test_split
5.2.2025
Das Beispiel eines Clusters zeigt , wie manipulativ
die hieraus gewinnbaren Daten sind.
Das ist ein Problem mit beliebig vielen Parametern.
Gibt es eine ID-KI ?.
Wieviel Wahrscheinlicheit steckt in der KI ?
Gut oder böse ?
Oder per se nur eine Geschäftsidee?
Scio nescio
Ich warte gespannt auf kommende Erfolgsmeldungen.
Es ist Fasching
OSWALD
6.2.2025
Mein Veertrauen in die 'omnipotente KI ' ist inzwischen 'leicht angezählt'
Warum?
Ki iist definitiv nicht in der Lage, sehr viele alte bekannte
Probleme aus der Mathematik oder aus der Logik zu lösen.
Hingegen tauchen immer neue Probleeme auf, etwa Datenmangel, oder mehr
Energie (Atomkraft) und Kosten .Das alles mmutet mich an wie in Zeiten der Alchemie.
Hier stelle ich als Beispiel den einfachen Algorithmus des Collatz - Problemes ein.
Kann oder darf man demnach KI eher in der Stochastik oder gar der Philosophie
ansiedeln ? Bisher habe ich noch keine Antwort aus der
Wissenschaft gefunden.
Ein ähnliches Problem könnte immer mehr in der Quantenphysik
oder der Kernfusion erkennbar werden.
PYTHON ist Open Source.
def collatz(n):
while n > 1:
#Anderung : print(n) eingesetzt
print(n, end=' ') #Änderung : print(n,end= ' ') "
if (n % 2):
# n is odd
n = 3*n + 1.
else:
# n is even
n = n//2
print(1, end=' ') #Änderung:print(n,end= ' ')
n = int(input('Enter n: '))
print('Sequence: ', end='')
collatz(n)