IRONSOFTWAREHOME
ENTWICKLER-UPDATES

TensorFlow .NET (Funktionsweise für Entwickler)

Jacob Mellor, Chief Technology Officer @ Team Iron
Jacob Mellor
Updated: 21. April 2026

Maschinelles Lernen (ML) hat verschiedene Branchen revolutioniert, von der Gesundheitsversorgung bis zur Finanzwelt, indem es intelligentes Entscheidungsmanagement und Automatisierung ermöglicht. TensorFlow, das Open-Source-ML- und Deep-Learning-Framework von Google, steht an der Spitze dieser Revolution. Mit TensorFlow.NET können .NET-Entwickler die Leistungsfähigkeit von TensorFlow innerhalb des C#-Umfelds nutzen. In diesem Artikel werden wir TensorFlow.NET sowie seine Funktionen, Vorteile und praktischen Anwendungen in der C#-Entwicklung untersuchen. Außerdem werden wir eine PDF-Erstellung-Bibliothek namens IronPDF von Iron Software mit einem praktischen Beispiel kennenlernen.

TensorFlow.NET verstehen

TensorFlow.NET ist eine .NET-Anbindung für TensorFlow, die es Entwicklern ermöglicht, TensorFlow-Funktionalitäten direkt in C#- und .NET-Anwendungs-Ebenen zu nutzen. Entwickelt von der Community und gepflegt von der SciSharp-Organisation bietet TensorFlow.NET eine nahtlose Integration der Fähigkeiten von TensorFlows maschinellem Lernen und neuronalen Netzen mit der Vielseitigkeit der .NET-Plattform. Es ermöglicht C#-Entwicklern, neuronale Netzwerke zu erstellen, Modelle zu trainieren und ML-Modelle mithilfe der umfassenden System-APIs und -Tools von TensorFlow bereitzustellen.

Schlüsselmerkmale von TensorFlow.NET

  1. TensorFlow-Kompatibilität: TensorFlow.NET bietet volle Kompatibilität mit den APIs und Operationen von TensorFlow, einschließlich der Tensor-Manipulation, der neuronalen Netzschichten, der Verlustfunktionen, der Optimierer und der Werkzeuge zur Datenvorverarbeitung und -bewertung.
  2. Hohe Leistung: TensorFlow.NET nutzt TensorFlows effiziente Ausführungsmaschine für Rechenstrukturen und optimierte Kerne zur Bereitstellung leistungsfähiger maschineller Lerninferenz und -training auf CPUs und GPUs.
  3. Einfache Integration: TensorFlow.NET integriert sich nahtlos in bestehende .NET-Anwendungen und -Bibliotheken, sodass Entwickler die Fähigkeiten von TensorFlow nutzen können, ohne die vertraute C#-Entwicklungsumgebung zu verlassen.
  4. Modellportabilität: TensorFlow.NET ermöglicht Entwicklern, vortrainierte TensorFlow-Modelle zu importieren und trainierte Modelle für die Inferenz in anderen TensorFlow-basierten Umgebungen wie Python oder mobilen Geräten zu exportieren.
  5. Flexibilität und Erweiterbarkeit: TensorFlow.NET bietet Flexibilität für die Anpassung und Erweiterung von maschinellen Lernmodellen unter Verwendung von C#-Sprachmerkmalen, wie LINQ (Language Integrated Query) zur Datenmanipulation und funktionale Programmierparadigmen zur Modellkomposition.
  6. Community-Support und Dokumentation: TensorFlow.NET profitiert von einer aktiven Community von Mitwirkenden, die Dokumentationen, Tutorials und Beispiele zur Verfügung stellen, um Entwicklern den Einstieg in das maschinelle Lernen in der C#-Welt mit TensorFlow zu erleichtern.

Praktische Beispiele mit TensorFlow.NET

Lassen Sie uns einige praktische Szenarien erkunden, in denen TensorFlow.NET verwendet werden kann, um maschinelle Lernmodelle in C# zu erstellen und bereitzustellen:

  1. Laden und Verwenden vortrainierter Modelle:

    // Load a pre-trained TensorFlow model
    var model = TensorFlowModel.LoadModel("model.pb");
    // Perform inference on input data
    var input = new float[,] { { 1.0f, 2.0f, 3.0f } };
    var output = model.Predict(input);
  2. Schulung benutzerdefinierter Modelle:

    // Create a neural network model using TensorFlow.NET APIs
    var input = new Input(Shape.Scalar);
    var output = new Dense(1, Activation.ReLU).Forward(input);
    // Compile the model with loss function and optimizer algorithms
    var model = new Model(input, output);
    model.Compile(optimizer: new SGD(), loss: Losses.MeanSquaredError);
    // Train the model with training data
    model.Fit(x_train, y_train, epochs: 10, batchSize: 32);
  3. Evaluierung und Implementierung:

    // Evaluate the trained model on test data
    var evaluation = model.Evaluate(x_test, y_test);
    // Export the trained model for deployment
    model.SaveModel("trained_model.pb");

Weitere Beispiele für TensorFlow finden Sie auf der TensorFlow.NET-Beispielseite.

// Use static TensorFlow
using static Tensorflow.Binding;

namespace IronPdfDemos
{
    public class TensorFlow
    {
        public static void Execute()
        {
            // Create a TensorFlow constant
            var hello = tf.constant("Hello, TensorFlow!");
            Console.WriteLine(hello);
        }
    }
}

Beispiel der TensorFlow- Ausgabe

TensorFlow .NET (Wie es für Entwickler funktioniert): Abbildung 1 - Konsolen-App-Ausgabe

Vorteile der Verwendung von TensorFlow.NET

  1. Nahtlose Integration: TensorFlow.NET bringt die Leistungsfähigkeit von TensorFlow in das .NET-Ökosystem, sodass C#-Entwickler modernste maschinelle Lerntechniken und -algorithmen in ihren Anwendungen nutzen können.
  2. Leistung und Skalierbarkeit: TensorFlow.NET nutzt die optimierte Ausführungsmaschine von TensorFlow, um leistungsstarke maschinelle Lernberechnungen bereitzustellen, was es geeignet macht, große Datensätze und komplexe Modelle zu verarbeiten.
  3. Vertraute Entwicklungsumgebung: Die TensorFlow.NET-API ermöglicht es Entwicklern, maschinelle Lernmodelle mit vertrauten C#-Sprachmerkmalen und Entwicklungswerkzeugen zu erstellen und bereitzustellen, wodurch die Lernkurve für die Einführung von maschinellem Lernen in C#-Anwendungen reduziert wird.
  4. Interoperabilität und Portabilität: TensorFlow.NET erleichtert die Interoperabilität mit anderen TensorFlow-basierten Umgebungen, wodurch eine nahtlose Integration von C#-basierten maschinellen Lernmodellen mit Python, TensorFlow Serving und TensorFlow Lite ermöglicht wird.
  5. Community-getriebene Entwicklung: TensorFlow.NET profitiert von einer aktiven Community von Mitwirkenden und Nutzern, die Unterstützung, Feedback und Beiträge zum Projekt leisten, um dessen kontinuierliches Wachstum und Verbesserung sicherzustellen.

TensorFlow.NET Lizenz

Es ist ein Open-Source-Paket unter Apache-Lizenz, das frei verwendet werden kann. Weitere Informationen zur Lizenzierung finden Sie auf der TensorFlow.NET-Lizenzseite.

Einführung in IronPDF

TensorFlow .NET (Wie es für Entwickler funktioniert): Abbildung 2 - IronPDF

IronPDF ist eine leistungsstarke C# PDF-Bibliothek, die es Entwicklern ermöglicht, PDFs direkt aus HTML, CSS, Bildern und JavaScript-Eingaben zu erstellen, zu bearbeiten und zu signieren. Es ist eine handelsübliche Lösung mit hoher Leistung und geringem Speicherbedarf. Hier sind einige wichtige Funktionen:

  1. HTML zu PDF Konvertierung: IronPDF kann HTML-Dateien, HTML-Zeichenfolgen und URLs in PDFs konvertieren. Zum Beispiel können Sie eine Webseite mit dem Chrome-PDF-Renderer als PDF darstellen.
  2. Plattformübergreifende Unterstützung: IronPDF funktioniert auf verschiedenen .NET-Plattformen, einschließlich .NET Core, .NET Standard und .NET Framework. Es ist mit Windows, Linux und macOS kompatibel.
  3. Bearbeiten und Signieren: Sie können Eigenschaften festlegen, Sicherheitsmaßnahmen (Passwörter und Berechtigungen) hinzufügen und sogar digitale Signaturen auf Ihre PDFs anwenden.
  4. Seitenvorlagen und Einstellungen: Passen Sie Ihre PDFs individuell an, indem Sie Kopf- und Fußzeilen sowie Seitenzahlen hinzufügen und die Ränder anpassen. IronPDF unterstützt auch responsive Layouts und benutzerdefinierte Papiergrößen.
  5. Standardkonformität: IronPDF hält PDF-Standards wie PDF/A und PDF/UA ein. Es unterstützt die UTF-8-Zeichenkodierung und verarbeitet Assets wie Bilder, CSS und Schriftarten.

Erzeugen von PDF-Dokumenten mit TensorFlow.NET und IronPDF

Erstellen Sie zuerst ein Visual Studio-Projekt und wählen Sie die folgende Konsolenanwendungsvorlage aus.

TensorFlow .NET (Wie es für Entwickler funktioniert): Abbildung 3 - Visual Studio Projekt

Geben Sie den Projektnamen und den Speicherort ein.

TensorFlow .NET (Wie es für Entwickler funktioniert): Abbildung 4 - Projektkonfiguration

Wählen Sie im nächsten Schritt die erforderliche .NET-Version aus und klicken Sie auf die Schaltfläche Erstellen.

Installieren Sie IronPDF aus dem NuGet-Paket aus dem Visual Studio-Paket-Manager.

TensorFlow .NET (Wie es für Entwickler funktioniert): Abbildung 5 - TensorFlow.NET

Installieren Sie die Pakete TensorFlow.NET und TensorFlow.Keras, ein unabhängiges Paket, das verwendet wird, um Modelle auszuführen.

TensorFlow .NET (Wie es für Entwickler funktioniert): Abbildung 6 - Paket TensorFlow.Keras installieren

using IronPdf;
using static Tensorflow.Binding;

namespace IronPdfDemos
{
    public class Program
    {
        public static void Main()
        {
            // Instantiate Cache and ChromePdfRenderer
            var renderer = new ChromePdfRenderer();

            // Prepare HTML content for the PDF
            var content = "<h1>Demonstrate TensorFlow with IronPDF</h1>";
            content += "<h2>Enable Eager Execution</h2>";
            content += "<p>tf.enable_eager_execution();</p>";

            // Enable eager execution mode in TensorFlow
            tf.enable_eager_execution();

            // Define tensor constants
            content += "<h2>Define Tensor Constants</h2>";
            var a = tf.constant(5);
            var b = tf.constant(6);
            var c = tf.constant(7);

            // Perform various tensor operations
            content += "<h2>Various Tensor Operations</h2>";
            var add = tf.add(a, b);
            var sub = tf.subtract(a, b);
            var mul = tf.multiply(a, b);
            var div = tf.divide(a, b);

            content += $"<p>var add = tf.add(a, b);</p>";
            content += $"<p>var sub = tf.subtract(a, b);</p>";
            content += $"<p>var mul = tf.multiply(a, b);</p>";
            content += $"<p>var div = tf.divide(a, b);</p>";

            // Output tensor values to HTML content
            content += "<h2>Access Tensor Values</h2>";
            content += $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>";
            content += $"<p>{a.numpy()} - {b.numpy()} = {sub.numpy()}</p>";
            content += $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>";
            content += $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>";

            // Perform additional operations
            var mean = tf.reduce_mean(tf.constant(new[] { a, b, c }));
            var sum = tf.reduce_sum(tf.constant(new[] { a, b, c }));

            content += "<h2>Additional Operations</h2>";
            content += $"<p>mean = {mean.numpy()}</p>";
            content += $"<p>sum = {sum.numpy()}</p>";

            // Perform matrix multiplication
            var matrix1 = tf.constant(new float[,] { { 1, 2 }, { 3, 4 } });
            var matrix2 = tf.constant(new float[,] { { 5, 6 }, { 7, 8 } });
            var product = tf.matmul(matrix1, matrix2);

            content += "<h2>Matrix Multiplications</h2>";
            content += "<p>Multiplication Result:</p>";
            content += $"<p>product = {product.numpy()}</p>";

            // Render HTML content to PDF
            var pdf = renderer.RenderHtmlAsPdf(content);
            // Save PDF to file
            pdf.SaveAs("tensorflow.pdf");
        }
    }
}

Code-Erklärung

Lassen Sie uns den Codeschnipsel aufschlüsseln:

  1. Importanweisungen:

    Der Code beginnt mit dem Import der notwendigen Bibliotheken. Insbesondere:

    using IronPdf; // This imports the IronPDF package, which is used for working with PDF files.
    using static Tensorflow.Binding; // This imports the TensorFlow library, specifically the .NET standard binding.
  2. Eifrige Ausführung:

    Die Zeile tf.enable_eager_execution(); ermöglicht den Eager Execution-Modus von TensorFlow. Im Eager-Execution-Modus werden Operationen sofort ausgewertet, was Debugging und Interaktion mit Tensors erleichtert.

  3. Tensorkonstanten definieren:

    Der Code definiert drei Tensor-Konstanten: a, b und c. Diese werden mit den Werten 5, 6 bzw. 7 initialisiert.

  4. Verschiedene Tensoroperationen:

    Die folgenden Tensor-Operationen werden durchgeführt:

    var add = tf.add(a, b); // Adds a and b.
    var sub = tf.subtract(a, b); // Subtracts b from a.
    var mul = tf.multiply(a, b); // Multiplies a and b.
    var div = tf.divide(a, b); // Divides a by b.
  5. Zugriff auf Tensorwerte:

    Die Ergebnisse der Tensor-Operationen sind im HTML-Inhalt enthalten:

    content += $"<p>{a.numpy()} + {b.numpy()} = {add.numpy()}</p>";
    content += $"<p>{a.numpy()} - {b.numpy()} = {sub.numpy()}</p>";
    content += $"<p>{a.numpy()} * {b.numpy()} = {mul.numpy()}</p>";
    content += $"<p>{a.numpy()} / {b.numpy()} = {div.numpy()}</p>";
  6. Zusätzliche Operationen:

    Der Code berechnet den Mittelwert und die Summe der Konstanten [a, b, c].

  7. Matrizenmultiplikationen:

    Es führt eine Matrixmultiplikation zwischen matrix1 und matrix2 durch und zeigt das Ergebnis an.

  8. PDF-Generierung:

    ChromePdfRenderer und RenderHtmlAsPdf von IronPDF werden verwendet, um den HTML-String in ein PDF-Dokument zu rendern.

Ausgabe

TensorFlow .NET (Wie es für Entwickler funktioniert): Abbildung 7 - PDF-Ausgabe

IronPDF-Lizenz

IronPDF benötigt eine Lizenz zum Ausführen. Weitere Informationen zur Lizenzierung finden Sie auf der IronPDF-Lizenzierungsseite. Platzieren Sie den Schlüssel in der appSettings.json-Datei wie unten gezeigt.

{
  "IronPdf.License.LicenseKey": "The Key Here"
}
JSON

Abschluss

Abschließend ermöglicht TensorFlow.NET C#-Entwicklern, die Welt des maschinellen Lernens und der künstlichen Intelligenz mit der Vielseitigkeit und Produktivität des .NET-Ökosystems zu erkunden. Egal, ob Sie intelligente Anwendungen, Vorhersage-Analyse-Tools oder automatisierte Entscheidungsfindungssysteme erstellen, bietet TensorFlow.NET ein leistungsstarkes und flexibles Framework, um das Potenzial des maschinellen Lernens in C# zu entfalten. Zusammen mit der IronPDF-Bibliothek von Iron Software können Entwickler fortgeschrittene Fähigkeiten erwerben, um moderne Anwendungen zu entwickeln.

Jacob Mellor, Chief Technology Officer @ Team Iron
Chief Technology Officer

Jacob Mellor is Chief Technology Officer at Iron Software and a visionary engineer pioneering C# PDF technology. As the original developer behind Iron Software's core codebase, he has shaped the company's product architecture since its inception, transforming it alongside CEO Cameron Rimington into a 50+ person company serving NASA, Tesla, and global government agencies.

...
Read More

Related Articles

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Buchen Sie Ihre kostenlose Live-Demo
Booking Badge related to IronPDF Product Demo

Von Millionen von Ingenieur*innen weltweit vertraut

Kundenlogos von Iron Software
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.