Ftrl-proximal 체계에 따라 '*var'의 관련 항목을 업데이트합니다.
이는 grad가 있는 행에 대해 다음과 같이 var, accum 및 선형을 업데이트합니다. grad_with_shrinkage = grad + 2 * l2_shrinkage * var accum_new = accum + grad * grad 선형 += grad_with_shrinkage - (accum_new^(-lr_power) - accum^ (-lr_power)) / lr * var 2차 = 1.0 / (accum_new^(lr_power) * lr) + 2 * l2 var = (sign(linear) * l1 - 선형) / 2차 if |linear| > l1 else 0.0 accum = accum_new
중첩 클래스
수업 | SparseApplyFtrl.Options | SparseApplyFtrl 의 선택적 속성 |
상수
끈 | OP_NAME | TensorFlow 코어 엔진에서 알려진 이 작업의 이름 |
공개 방법
출력 <T> | 출력 () 텐서의 기호 핸들을 반환합니다. |
static <T는 TType을 확장합니다. > SparseApplyFtrl <T> | |
정적 SparseApplyFtrl.Options | MultiplyLinearByLr (부울 MultiplyLinearByLr) |
출력 <T> | 밖으로 () "var"와 동일합니다. |
정적 SparseApplyFtrl.Options | useLocking (부울 useLocking) |
상속된 메서드
상수
공개 정적 최종 문자열 OP_NAME
TensorFlow 코어 엔진에서 알려진 이 작업의 이름
공개 방법
공개 출력 <T> asOutput ()
텐서의 기호 핸들을 반환합니다.
TensorFlow 작업에 대한 입력은 다른 TensorFlow 작업의 출력입니다. 이 메서드는 입력 계산을 나타내는 기호 핸들을 얻는 데 사용됩니다.
public static SparseApplyFtrl <T> create ( 범위 범위, 피연산자 <T> var, 피연산자 <T> accum, 피연산자 <T> 선형, 피연산자 <T> grad, 피연산자 <? 확장 TNumber > 인덱스, 피연산자 <T> lr, 피연산자 <T> l1, 피연산자 <T> l2, 피연산자 <T> l2Shrinkage, 피연산자 <T> lrPower, 옵션... 옵션)
새로운 SparseApplyFtrl 작업을 래핑하는 클래스를 생성하는 팩토리 메서드입니다.
매개변수
범위 | 현재 범위 |
---|---|
var | Variable()에서 가져와야 합니다. |
축적 | Variable()에서 가져와야 합니다. |
선의 | Variable()에서 가져와야 합니다. |
졸업생 | 그라데이션입니다. |
지수 | var 및 accum의 첫 번째 차원에 대한 인덱스 벡터입니다. |
난 | 배율 인수. 스칼라여야 합니다. |
l1 | L1 정규화. 스칼라여야 합니다. |
l2 | L2 수축 정규화. 스칼라여야 합니다. |
lr파워 | 배율 인수. 스칼라여야 합니다. |
옵션 | 선택적 속성 값을 전달합니다. |
보고
- SparseApplyFtrl의 새 인스턴스
공개 정적 SparseApplyFtrl.Options useLocking (부울 useLocking)
매개변수
사용잠금 | 'True'인 경우 var 및 accum 텐서 업데이트는 잠금으로 보호됩니다. 그렇지 않으면 동작이 정의되지 않지만 경합이 덜 나타날 수 있습니다. |
---|