top_indices
будет индексировать только по последней оси, вам нужно добавить индексы и для остальных осей. Это легко с tf.meshgrid
:
import tensorflow as tf
# Example input data
I = 4
B = 3
J = 5
top_k = 2
x = tf.reshape(tf.range(I * B * J), (I, B, 1, J)) % 7
# Top K
top_values, top_indices = tf.nn.top_k(x, k=top_k)
# Make indices for the rest of axes
ii, jj, kk, _ = tf.meshgrid(
tf.range(I),
tf.range(B),
tf.range(1),
tf.range(top_k),
indexing='ij')
# Stack complete index
index = tf.stack([ii, jj, kk, top_indices], axis=-1)
# Get the same values again
top_values_2 = tf.gather_nd(x, index)
# Test
with tf.Session() as sess:
v1, v2 = sess.run([top_values, top_values_2])
print((v1 == v2).all())
# True
Я предполагаю, что Вы имеете dowloaded банки сами и сослались на них в Вашем проекте. Если так, можно щелкнуть правой кнопкой по банке в проводнике проекта (в узле 'Ссылочных библиотек') и нажать 'Properties'. Окно, которое появляется, можно определить местоположение JavaDoc банки и источника, если Вы имеете их в наличии.
Можно также достигнуть этого путем нажатия на Project> Properties> Java Build Path> Libraries и расширения узла для банки, к которой Вы хотите добавить javadoc/source.
Также стоящий упоминания то, что, если Вы используете Знатока (http://maven.apache.org/) для того, чтобы разработать Ваш проект, это - система управления зависимости, будет заботиться о нахождении источников и javadocs для Вас. Но это - другая тема entirly. Также могло бы стоить посмотреть на Ivy (http://ant.apache.org/ivy/) - подобная система управления зависимости, но может использоваться, не продавая Вашу душу Знатоку, мне говорят.
Вы могли бы также подразумевать, что не можете на самом деле видеть javadocs: Окно> Выставочное Представление> Другой...> Java> JavaDoc. Это представление покажет Вам javadoc для того, что в настоящее время находится в фокусе. Или просто мышь по методу для наблюдения javadoc во всплывающем окне.
Следуя совету от укулеле, я смог щелкнуть правой кнопкой по банке и установить javadoc местоположение. В этом случае местоположение для javadoc онлайн было:
http://help.eclipse.org/stable/nftopic/org.eclipse.platform.doc.isv/reference/api/
Найденный с веб-сайта SWT:
http://www.eclipse.org/swt/docs.php
Спасибо!
Если Вы используете "Сменный Проект", они там по умолчанию. Тот тип проекта доступен в "Eclipse Разработчикам RCP/плагина" или "Классику Eclipse". Если у Вас есть другая версия, необходимо смочь настроить такой проект после установки функции "Eclipse SDK" через менеджера по обновлению (в 3,4 в соответствии с Доступным программным обеспечением-> Обновления Проекта Eclipse).
Я часто нахожу, что javadoc на eclipse.org очень медленно загружается. Документация javadocs может быть включена в вашу установку eclipse и, таким образом, доступна локально; попробуйте меню Help-> Help Contents и найдите «SWT», чтобы узнать, верно ли это для вашей установки.