开源 企业版 高校版 私有云 模力方舟 AI 队友
代码拉取完成,页面将自动刷新
加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
已有帐号? 立即登录
文件
master
分支 (6)
标签 (1)
master
mnist-GAN
tf.keras-0.3.image-classification
tf.keras-0.2
tf.net-2.3
tf.net-1.15
Keras_v0.3.0
master
分支 (6)
标签 (1)
master
mnist-GAN
tf.keras-0.3.image-classification
tf.keras-0.2
tf.net-2.3
tf.net-1.15
Keras_v0.3.0
克隆/下载
克隆/下载
提示
下载代码请复制以下命令到终端执行
为确保你提交的代码身份被 Gitee 正确识别,请执行以下命令完成配置
初次使用 SSH 协议进行代码克隆、推送等操作时,需按下述提示完成 SSH 配置
1 生成 RSA 密钥
2 获取 RSA 公钥内容,并配置到 SSH公钥
在 Gitee 上使用 SVN,请访问 使用指南
使用 HTTPS 协议时,命令行会出现如下账号密码验证步骤。基于安全考虑,Gitee 建议 配置并使用私人令牌 替代登录密码进行克隆、推送等操作
Username for 'https://gitee.com': userName
Password for 'https://userName@gitee.com': # 私人令牌
master
分支 (6)
标签 (1)
master
mnist-GAN
tf.keras-0.3.image-classification
tf.keras-0.2
tf.net-2.3
tf.net-1.15
Keras_v0.3.0
BinaryTextClassification.cs 4.55 KB
一键复制 编辑 原始数据 按行查看 历史
一剑 提交于 2021年03月14日 09:59 +08:00 . BinaryTextClassification
using NumSharp;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Tensorflow;
using static Tensorflow.Binding;
using static Tensorflow.KerasApi;
namespace TensorFlowNET.Examples
{
/// <summary>
/// This tutorial demonstrates text classification starting from plain text files stored on disk.
/// You'll train a binary classifier to perform sentiment analysis on an IMDB dataset.
/// At the end of the notebook, there is an exercise for you to try, in which you'll train a
/// multiclass classifier to predict the tag for a programming question on Stack Overflow.
/// https://www.tensorflow.org/tutorials/keras/text_classification
/// </summary>
public class BinaryTextClassification : SciSharpExample, IExample
{
NDArray train_data, train_labels, test_data, test_labels;
public ExampleConfig InitConfig()
=> Config = new ExampleConfig
{
Name = "Binary Text Classification",
Enabled = true
};
public bool Run()
{
PrepareData();
Console.WriteLine($"Training entries: {train_data.shape[0]}, labels: {train_labels.shape[0]}");
// A dictionary mapping words to an integer index
/*train_data = keras.preprocessing.sequence.pad_sequences(train_data,
value: word_index["<PAD>"],
padding: "post",
maxlen: 256);
test_data = keras.preprocessing.sequence.pad_sequences(test_data,
value: word_index["<PAD>"],
padding: "post",
maxlen: 256);*/
// input shape is the vocabulary count used for the movie reviews (10,000 words)
var model = keras.Sequential();
//var layer = tf.keras.layers.Embedding(vocab_size, 16);
//model.add(layer);
return false;
}
public override void PrepareData()
{
tf.debugging.set_log_device_placement(true);
string url = "https://ai.stanford.edu/~amaas/data/sentiment/aclImdb_v1.tar.gz";
var dataset = keras.utils.get_file("aclImdb_v1.tar.gz", url,
untar: true,
cache_dir: Path.GetTempPath(),
cache_subdir: "aclImdb_v1");
var data_dir = Path.Combine(dataset, "aclImdb");
var train_dir = Path.Combine(data_dir, "train");
int batch_size = 32;
int seed = 42;
var raw_train_ds = keras.preprocessing.text_dataset_from_directory(
train_dir,
batch_size: batch_size,
validation_split: 0.2f,
subset: "training",
seed: seed);
foreach (var (text_batch, label_batch) in raw_train_ds.take(1))
{
foreach (var i in range(3))
{
print("Review", text_batch.StringData()[i]);
print("Label", label_batch.numpy()[i]);
}
}
print("Label 0 corresponds to", raw_train_ds.class_names[0]);
print("Label 1 corresponds to", raw_train_ds.class_names[1]);
var raw_val_ds = keras.preprocessing.text_dataset_from_directory(
train_dir,
batch_size: batch_size,
validation_split: 0.2f,
subset: "validation",
seed: seed);
var test_dir = Path.Combine(data_dir, "test");
var raw_test_ds = keras.preprocessing.text_dataset_from_directory(
test_dir,
batch_size: batch_size);
var max_features = 10000;
var sequence_length = 250;
Func<Tensor, Tensor> custom_standardization = input_data =>
{
var lowercase = tf.strings.lower(input_data);
var stripped_html = tf.strings.regex_replace(lowercase, "<br />", " ");
return tf.strings.regex_replace(stripped_html,
"'[!\"\\#\\$%\\&\'\\(\\)\\*\\+,\\-\\./:;<=>\\?@\\[\\\\\\]\\^_`\\{\\|\\}\\~]'",
"");
};
var vectorize_layer = keras.layers.preprocessing.TextVectorization(standardize: custom_standardization,
max_tokens: max_features,
output_mode: "int",
output_sequence_length: sequence_length);
var train_text = raw_train_ds.map(inputs => inputs[0]);
vectorize_layer.adapt(train_text);
}
}
}
Loading...
举报
举报成功
我们将于2个工作日内通过站内信反馈结果给你!
请认真填写举报原因,尽可能描述详细。
请选择举报类型
取消
发送
误判申诉

此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。

如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。

取消
提交

简介

Practical examples written in SciSharp's machine learning libraries
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
编辑仓库简介
简介内容
主页
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/scisharp/SciSharp-Stack-Examples.git
git@gitee.com:scisharp/SciSharp-Stack-Examples.git
scisharp
SciSharp-Stack-Examples
SciSharp-Stack-Examples
master
点此查找更多帮助

搜索帮助

评论
仓库举报
回到顶部
登录提示
该操作需登录 Gitee 帐号,请先登录后再操作。
立即登录
没有帐号,去注册

AltStyle によって変換されたページ (->オリジナル) /