- import tensorflow as tf
- my_graph = tf.Graph()
- with tf.Session(graph=my_graph) as sess:
- x = tf.constant([1,3,6])
- y = tf.constant([1,1,1])
- op = tf.add(x,y)
- input values: x
- weights: w
- bias: b
- output values: z
- expected values: expected
为了知道收集是否正在进修,你须要比较一下输出值(Z)和期望值(expected)。我们要怎么计算这个的不合(损耗)呢?有很多办法去解决这个问题。因为我们正在进行分类义务,测量损耗的最好的方法是 交叉熵误差。
James D. McCaffrey 写了一个出色的解释,解释为什么这是这种类型义务的最佳办法。
经由过程 TensorFlow 你将应用 tf.nn.softmax_cross_entropy_with_logits() 办法计算交叉熵误差(这个是 softmax 激活函数)并寂?娼均误差 (tf.reduced_mean())。
你也须要定义第一个隐蔽层会有若干节点。这些节点也被称为特点或神经元,在膳绫擎的例子中我们用每一个圆圈表示一个节点。
你欲望经由过程权重和误差的最佳值,以便最小化输出误差(实际获得的值和精确的值之间的差别)。要做到这一点,将需应用 梯度降低法。更具体些是,须要应用 随机梯度降低。
(梯度降低。源: https://sebastianraschka.com/faq/docs/closed-form-vs-gd.html)
为了计算梯度降低,将要应用 Adaptive Moment Estimation (Adam)。要在 TensorFlow 中应用此算法,须要传递 learning_rate 值,该值可肯定值的增量步长以找到最佳权重值。
办法 tf.train.AdamOptimizer(learning_rate).minimize(loss) 是一个 语法糖,它做了两件工作:
- # Construct model
- prediction = multilayer_perceptron(input_tensor, weights, biases)
- # Define loss
- entropy_loss = tf.nn.softmax_cross_entropy_with_logits(logits=prediction, labels=output_tensor)
- loss = tf.reduce_mean(entropy_loss)
- compute_gradients(loss, )
- apply_gradients()
这个办法用新的值更新了所有的 tf.Variables ,是以我们不须要传递变量列表。如今你有了练习收集的代码:
- learning_rate = 0.001
- # Construct model
- prediction = multilayer_perceptron(input_tensor, weights, biases)
- # Define loss
- entropy_loss = tf.nn.softmax_cross_entropy_with_logits(logits=prediction, labels=output_tensor)
- loss = tf.reduce_mean(entropy_loss)
- optimizer = tf.train.AdamOptimizer(learning_rate=learning_rate).minimize(loss)
数据操作
将要应用的数据集有很多英文文本,我们须要操作这些数据将其传递给神经收集。要做到这一点,须要做两件事:
- 为每一个工作创建索引
- 为每一个文本创建矩阵,在矩阵里,如不雅单词在文本中则值为 1,不然值为 0
让我们看着代率攀来懂得这个过程:
- import numpy as np #numpy is a package for scientific computing
- from collections import Counter
- vocab = Counter()
- text = "Hi from Brazil"
推荐阅读
【引自IamOkay的博客】 iOS在Apple公司的强迫请求下,数据传输必须按照ATS(App Transefer Security)条目。关于AFNetworking框架传输HTTPS数据。一.AllowsArbitraryLoads 白名单机制NSAll>>>详细阅读
本文标题:图解机器学习:神经网络和TensorFlow的文本分类
地址:http://www.17bianji.com/lsqh/34909.html
1/2 1