例如,我想在https://huggingface.co/modelsbert-base-uncased
上下载,但找不到“下载”链接。或者说不能下载?
我有一个XML文件存储为DOM文档,我想将它打印到控制台,最好不使用外部库.我知道这个问题已在本网站上被多次询问,但以前的答案都没有对我有用.我正在使用java 8,所以也许这是我的代码与以前的问题不同的地方?我还尝试使用从网络上找到的代码手动设置变换器,但这只是导致not found
错误.
这是我的代码,它当前只是在控制台左侧的新行上输出每个xml元素.
import java.io.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
public class Test {
public Test(){
try {
//java.lang.System.setProperty("javax.xml.transform.TransformerFactory", "org.apache.xalan.xsltc.trax.TransformerFactoryImpl");
DocumentBuilderFactory dbFactory;
DocumentBuilder dBuilder;
Document original = null;
try {
dbFactory = DocumentBuilderFactory.newInstance();
dBuilder = dbFactory.newDocumentBuilder();
original = dBuilder.parse(new InputSource(new InputStreamReader(new FileInputStream("xml Store - Copy.xml"))));
} catch (SAXException | IOException | ParserConfigurationException e) {
e.printStackTrace();
}
StringWriter stringWriter = new StringWriter();
StreamResult xmlOutput = new StreamResult(stringWriter); …
Run Code Online (Sandbox Code Playgroud) 我目前正在研究transformer的代码,但我无法理解解码器的屏蔽多头。论文上说是为了不让你看到生成词,但是我无法理解生成词后的词如果没有生成,怎么能看到呢?
我尝试阅读变压器的代码(链接:https : //github.com/Kyubyong/transformer)。代码实现掩码如下所示。它使用下三角矩阵来屏蔽,我不明白为什么。
padding_num = -2 ** 32 + 1
diag_vals = tf.ones_like(inputs[0, :, :]) # (T_q, T_k)
tril = tf.linalg.LinearOperatorLowerTriangular(diag_vals).to_dense() # (T_q, T_k)
masks = tf.tile(tf.expand_dims(tril, 0), [tf.shape(inputs)[0], 1, 1]) # (N, T_q, T_k)
paddings = tf.ones_like(masks) * padding_num
outputs = tf.where(tf.equal(masks, 0), paddings, inputs)
Run Code Online (Sandbox Code Playgroud) 我正在学习变形金刚。这是MultiheadAttention的 pytorch 文档。在他们的实现中,我发现有一个限制:
\n assert self.head_dim * num_heads == self.embed_dim, "embed_dim must be divisible by num_heads"\n
Run Code Online (Sandbox Code Playgroud)\n为什么需要约束:embed_dim must be divisible by num_heads?
如果我们回到方程
假设:\n Q
, K
,V
是n x emded_dim
矩阵;所有权重矩阵W
是emded_dim x head_dim
那么,concat[head_i, ..., head_h]
将是一个n x (num_heads*head_dim)
矩阵;
W^O
有尺寸(num_heads*head_dim) x embed_dim
[head_i, ..., head_h] * W^O
将成为n x embed_dim
输出
我不知道为什么我们需要embed_dim must be divisible …
我刚买了一台EEE垫变压器.像我拥有的任何硬件一样,我想在它上面有一个C编译器.我知道我可以交叉编译,但我想在设备上进行开发.我搜索过谷歌,我似乎找到了关于如何为x86/64 Linux构建arm工具链的页面.思考?
我正在尝试理解 Synthesizer 论文 ( https://arxiv.org/pdf/2005.00743.pdf 1) 并且有对密集合成器机制的描述,该机制应该取代 Transformer 架构中描述的传统注意力模型。
所述致密合成被描述为这样的:
所以我试图实现这个层,它看起来像这样,但我不确定我是否做对了:
class DenseSynthesizer(nn.Module):
def __init__(self, l, d):
super(DenseSynthesizer, self).__init__()
self.linear1 = nn.Linear(d, l)
self.linear2 = nn.Linear(l, l)
def forward(self, x, v):
# Equation (1) and (2)
# Shape: l x l
b = self.linear2(F.relu(self.linear1(x)))
# Equation (3)
# [l x l] x [l x d] -> [l x d]
return torch.matmul(F.softmax(b), v)
Run Code Online (Sandbox Code Playgroud)
用法:
l, d = 4, 5
x, v = torch.rand(l, d), torch.rand(l, d)
synthesis = DenseSynthesizer(l, …
Run Code Online (Sandbox Code Playgroud) python transformer-model neural-network deep-learning pytorch
我正在研究Transformer Pad并开发一个绘图板.我使用PhoneGap(javascript)编写代码而不是JAVA.
但触摸移动事件非常奇怪.
我想当我将手指放在垫子上时,它会不断地收集我在画布上触摸的坐标.但它没有!这很荒谬,它只收集"1"坐标:我的手指移动到画布上的第一个点.
以下是关于"Touch && Move事件"的代码:
function touchStart(event){
if (event.targetTouches.length == 1) {
var touch = event.targetTouches[0];
if (event.type == "touchstart") {
line_start_x= touch.pageX- canvas_org_x;
line_start_y= touch.pageY- canvas_org_y;
context.beginPath();
context.moveTo(line_start_x, line_start_y);
}//if
}//if 1
}//function.
function Touch_Move(event){
line_end_x= event.touches[0].pageX- canvas_org_x;
line_end_y= event.touches[0].pageY- canvas_org_y;
context.lineTo(line_end_x, line_end_y);
context.stroke();
test++;
}
Run Code Online (Sandbox Code Playgroud)
我不知道为什么每次我把手指放在垫子上,试图绘制线条,曲线或任何我想要的东西.当手指移动时,仅出现非常短的片段.所以我在这个js文件的开头声明了一个变量:"var test = 0".我发现虽然我在没有离开或停止的情况下将手指放在垫上,但"测试"的值仍为1.这意味着我将手指放在它上面.但它不会持续触发事件:"Touch_Move".
我现在能做什么?我需要一个相应的事件来触摸板上的"mousemove".至少,必须不断触发事件.
Thank you!
Run Code Online (Sandbox Code Playgroud) 我有以下方法将XMLDom写入流:
public void writeToOutputStream(Document fDoc, OutputStream out) throws Exception {
fDoc.setXmlStandalone(true);
DOMSource docSource = new DOMSource(fDoc);
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
transformer.setOutputProperty(OutputKeys.INDENT, "no");
transformer.transform(docSource, new StreamResult(out));
}
Run Code Online (Sandbox Code Playgroud)
我正在测试其他一些XML功能,这只是我用来写入文件的方法.我的测试程序生成了33个测试用例,其中写出了文件.其中28个具有以下标题:
<?xml version="1.0" encoding="UTF-8"?>...
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,现在有一个测试用例产生:
<?xml version="1.0" encoding="ISO-8859-1"?>...
Run Code Online (Sandbox Code Playgroud)
还有四种产品:
<?xml version="1.0" encoding="Windows-1252"?>...
Run Code Online (Sandbox Code Playgroud)
您可以清楚地看到,我将ENCODING输出键设置为UTF-8.这些测试曾用于早期版本的Java.我有一段时间(超过一年)没有运行测试,但今天在"Java(TM)SE运行时环境(版本1.6.0_22-b04)"上运行我得到了这个有趣的行为.
我已经验证导致问题的文档是从最初具有这些编码的文件中读取的.似乎新版本的库试图保留已读取的源文件的编码.但这不是我想要的......我真的希望输出为UTF-8.
有没有人知道可能导致变压器忽略UTF-8编码设置的任何其他因素?还有什么必须在文档上设置,以忘记最初读取的文件的编码?
更新:
我在另一台机器上检查了同一个项目,在那里构建并运行了测试.在那台机器上,所有测试都通过了!所有文件的标题中都有"UTF-8".该机器具有"Java(TM)SE运行时环境(版本1.6.0_29-b11)"两台机器都运行Windows 7.在新机器上运行正常,jdk1.5.0_11用于进行构建,但是在旧机器上运行机器jdk1.6.0_26用于构建.用于两个版本的库完全相同.在构建时是否可能与1.5的JDK 1.6不兼容?
更新:
4.5年后,Java库仍然被打破,但由于Vyrx的建议,我终于有了一个合适的解决方案!
public void writeToOutputStream(Document fDoc, OutputStream out) throws Exception {
fDoc.setXmlStandalone(true);
DOMSource docSource = new DOMSource(fDoc);
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
transformer.setOutputProperty(OutputKeys.INDENT, "no");
out.write("<?xml version=\"1.0\" …
Run Code Online (Sandbox Code Playgroud) 我正在尝试将ResultSet转换为XML文件.我首先使用这个例子进行序列化.
import org.w3c.dom.bootstrap.DOMImplementationRegistry;
import org.w3c.dom.Document;
import org.w3c.dom.ls.DOMImplementationLS;
import org.w3c.dom.ls.LSSerializer;
...
DOMImplementationRegistry registry = DOMImplementationRegistry.newInstance();
DOMImplementationLS impl =
(DOMImplementationLS)registry.getDOMImplementation("LS");
...
LSSerializer writer = impl.createLSSerializer();
String str = writer.writeToString(document);
Run Code Online (Sandbox Code Playgroud)
在我完成这项工作后,我尝试验证我的XML文件,有几个警告.一个关于没有doctype的人.所以我尝试了另一种方法来实现它.我遇到了Transformer课程.这个类让我设置编码,doctype等.
以前的实现支持自动命名空间修复.以下不是.
private static Document toDocument(ResultSet rs) throws Exception {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.newDocument();
URL namespaceURL = new URL("http://www.w3.org/2001/XMLSchema-instance");
String namespace = "xmlns:xsi="+namespaceURL.toString();
Element messages = doc.createElementNS(namespace, "messages");
doc.appendChild(messages);
ResultSetMetaData rsmd = rs.getMetaData();
int colCount = rsmd.getColumnCount();
String attributeValue = "true";
String attribute = …
Run Code Online (Sandbox Code Playgroud) 我\xe2\x80\x99m 尝试使用我自己的数据集和 HuggingFace 库从头开始训练 BERT 模型。我想以一种与原始 BERT 模型完全相同的架构来训练模型。
\n在原始论文中,它指出:\xe2\x80\x9cBERT 在两个任务上进行训练:预测随机掩码标记(MLM)和预测两个句子是否相互跟随(NSP)。SCIBERT 遵循与 BERT 相同的架构,但在科学文本上进行了预训练。\xe2\x80\x9d
\nI\xe2\x80\x99m 试图了解如何在上述两个任务上训练模型。目前,我初始化模型如下:
\nfrom transformers import BertForMaskedLM\nmodel = BertForMaskedLM(config=config)\n
Run Code Online (Sandbox Code Playgroud)\n然而,它仅适用于 MLM,而不适用于 NSP。我怎样才能用 NSP 初始化和训练模型,或者也许我原来的方法就很好?
\n我的假设是
\n初始化BertForPreTraining
(对于 MLM 和 NSP),或者
完成训练后BertForMaskedLM
,初始化相同的模型并再次训练BertForNextSentencePrediction
(但这种方法\xe2\x80\x99s计算和\n资源将花费两倍\xe2\x80\xa6)
I\xe2\x80\x99m 不确定哪一个是正确的方法。任何见解或建议将不胜感激。
\nnlp transformer-model deep-learning bert-language-model huggingface-transformers
java ×3
xml ×3
android ×2
pytorch ×2
arm ×1
cordova ×1
dom ×1
gcc ×1
javascript ×1
nlp ×1
pretty-print ×1
python ×1
python-3.x ×1
tensorflow ×1
touch ×1