Apache HttpClient, делающий многослойное сообщение формы

Точная настройка - это способ использовать функции, изученные на некотором большом наборе данных, в нашей задаче, что означает, что вместо повторного обучения всей сети мы freeze выводим веса нижнего уровня сеть и добавить несколько слоев в конце сети, согласно требованию. Теперь мы снова обучаем его на нашем наборе данных. Таким образом, преимущество здесь заключается в том, что нам не нужно обучать all-millions параметров, а только несколько. Другое - нам не нужно large-dataset для тонкой настройки.

Больше вы можете найти здесь . Это еще один полезный ресурс , где автор объяснил это более подробно (с помощью кода).

Примечание : Это также известно как transfer-learning.

70
задан skaffman 18 May 2012 в 18:09
поделиться

2 ответа

Используйте MultipartEntityBuilder из библиотеки HttpMime для выполнения нужного вам запроса.

В моем проекте я делаю это так:

HttpEntity entity = MultipartEntityBuilder
    .create()
    .addTextBody("number", "5555555555")
    .addTextBody("clip", "rickroll")
    .addBinaryBody("upload_file", new File(filePath), ContentType.create("application/octet-stream"), "filename")
    .addTextBody("tos", "agree")
    .build();

HttpPost httpPost = new HttpPost("http://some-web-site");
httpPost.setEntity(entity);
HttpResponse response = httpClient.execute(httpPost);
HttpEntity result = response.getEntity();

Надеюсь, это поможет.

(Обновлен этот пост, чтобы использовать MultipartEntityBuilder вместо устаревшего MultipartEntity, используя в качестве примера код @mtomy)

98
ответ дан 24 November 2019 в 13:28
поделиться

MultipartEntity теперь отображается как устаревшее. Я использую Apache httpclient 4.3.3 - кто-нибудь знает, что мы должны использовать вместо этого? Я нахожу, что поиски в Google настолько полны примеров MultipartEntity, что я ничего не могу найти. - vextorspace 31 марта '14 в 20:36

Вот пример кода в HttpClient 4.3.x

http://hc.apache.org/httpcomponents- client-4.3.x / httpmime / examples / org / apache / http / examples / entity / mime / ClientMultipartFormPost.java

import org.apache.http.entity.mime.MultipartEntityBuilder;

HttpPost httppost = new HttpPost("http://localhost:8080" +
        "/servlets-examples/servlet/RequestInfoExample");

FileBody bin = new FileBody(new File(args[0]));
StringBody comment = new StringBody("A binary file of some kind", ContentType.TEXT_PLAIN);

HttpEntity reqEntity = MultipartEntityBuilder.create()
        .addPart("bin", bin)
        .addPart("comment", comment)
        .build();


httppost.setEntity(reqEntity);

Чтобы использовать класс MultipartEntityBuilder, вам необходимо httpmime , который является подпроектом HttpClient

HttpClient 4.3.x:

http://hc.apache.org/httpcomponents-client- 4.3.x / index.html

httpmime 4.3.x:

http://hc.apache.org/httpcomponents-client-4.3.x/httpmime/ зависимость-info.html

14
ответ дан Li Ying 24 November 2019 в 13:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: